@lovrabet/rabetbase-cli 2.5.0-beta.6 → 2.5.1-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- 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/api/generate-sdk-config-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.d.ts +7 -0
- 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.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.d.ts +1 -1
- package/lib/commands/config/init.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/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/table-diff-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/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/domain-config.d.ts +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/project-routing.d.ts +30 -0
- package/lib/config/project-routing.js +1 -0
- package/lib/config/schema.d.ts +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.d.ts +7 -2
- 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/region.d.ts +2 -2
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/routing-profile.d.ts +115 -0
- package/lib/constant/routing-profile.js +1 -0
- 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.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- 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/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 +1 -2
- package/skills/rabetbase/SKILL.md +10 -5
- package/skills/rabetbase/guides/frontend-development.md +2 -0
- package/skills/rabetbase/guides/sdk-client-generation.md +3 -2
- package/skills/rabetbase/guides/typescript-sdk.md +42 -0
- package/skills/rabetbase/references/rabetbase-api-pull.md +5 -3
- package/skills/rabetbase/references/rabetbase-config.md +9 -5
- package/skills/rabetbase/references/rabetbase-init.md +11 -5
- package/skills/rabetbase/references/rabetbase-project-create.md +6 -5
- package/skills/rabetbase.manifest.json +3 -3
- package/templates/README.md +13 -17
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a232_0x32e057=a232_0x5d2e;(function(_0x42c91b,_0x1bca47){const _0x3b379c=a232_0x5d2e,_0x2f91e8=_0x42c91b();while(!![]){try{const _0x2db92b=parseInt(_0x3b379c(0x1af))/0x1+parseInt(_0x3b379c(0x1ad))/0x2*(parseInt(_0x3b379c(0x1b4))/0x3)+parseInt(_0x3b379c(0x1ae))/0x4*(parseInt(_0x3b379c(0x1ab))/0x5)+parseInt(_0x3b379c(0x1ac))/0x6+parseInt(_0x3b379c(0x1a4))/0x7*(-parseInt(_0x3b379c(0x1a5))/0x8)+parseInt(_0x3b379c(0x1b1))/0x9*(-parseInt(_0x3b379c(0x1b0))/0xa)+-parseInt(_0x3b379c(0x1b2))/0xb;if(_0x2db92b===_0x1bca47)break;else _0x2f91e8['push'](_0x2f91e8['shift']());}catch(_0x24efac){_0x2f91e8['push'](_0x2f91e8['shift']());}}}(a232_0x378e,0x776ea));import{constants}from'node:fs';import{access,mkdir}from'node:fs/promises';import{dirname,join,resolve}from'node:path';export function loadPageProjectConfig(_0x2dcf2c,_0x113e00=process[a232_0x32e057(0x1b3)]()){const _0x205729=a232_0x32e057,_0x4997b8=resolve(_0x113e00),_0xb9b656=join(_0x4997b8,_0x205729(0x1a8),_0x205729(0x1b5));return{'projectRoot':_0x4997b8,'pagesBaseDir':_0xb9b656,'appPagesDir':join(_0xb9b656,_0x2dcf2c),'lockFilePath':join(_0x4997b8,_0x205729(0x1a8),_0x205729(0x1a6))};}function a232_0x378e(){const _0x4d52f7=['.json','.rabetbase','appPagesDir','F_OK','723655uKehnf','2639454JCBZed','2tHFvVV','4boVoFo','777352jyAJRJ','30hmmKJm','953919qleBml','6210424IJxQHp','cwd','1325658sVNCsA','page','7KEdzbM','3457016MBVjOQ','page.lock.json'];a232_0x378e=function(){return _0x4d52f7;};return a232_0x378e();}export function buildPageFileName(_0x1ae113,_0x3ba226){const _0x38db86=a232_0x32e057;return _0x1ae113+'-'+String(_0x3ba226)['toUpperCase']()+_0x38db86(0x1a7);}export function resolvePageFilePath(_0x40389a,_0x34e7d4,_0x5f1525){const _0x219648=a232_0x32e057;return join(_0x40389a[_0x219648(0x1a9)],buildPageFileName(_0x34e7d4,_0x5f1525));}function a232_0x5d2e(_0x58c901,_0x49790c){_0x58c901=_0x58c901-0x1a4;const _0x378ef7=a232_0x378e();let _0x5d2e4f=_0x378ef7[_0x58c901];return _0x5d2e4f;}export async function ensureParentDirectory(_0xf13c87){await mkdir(dirname(_0xf13c87),{'recursive':!![]});}export async function fileExists(_0x570e40){const _0x480752=a232_0x32e057;try{return await access(_0x570e40,constants[_0x480752(0x1aa)]),!![];}catch{return![];}}
|
package/lib/core/page/hash.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4a99b4,_0x381c16){const _0x5ec280=a233_0x5462,_0x10ef1f=_0x4a99b4();while(!![]){try{const _0x571e56=parseInt(_0x5ec280(0xfe))/0x1*(parseInt(_0x5ec280(0x100))/0x2)+parseInt(_0x5ec280(0x101))/0x3+parseInt(_0x5ec280(0x109))/0x4+-parseInt(_0x5ec280(0x103))/0x5+parseInt(_0x5ec280(0x108))/0x6+parseInt(_0x5ec280(0x102))/0x7+-parseInt(_0x5ec280(0x106))/0x8;if(_0x571e56===_0x381c16)break;else _0x10ef1f['push'](_0x10ef1f['shift']());}catch(_0x24ad1d){_0x10ef1f['push'](_0x10ef1f['shift']());}}}(a233_0x53d7,0xc83ca));import a233_0x5c7c7b from'node:crypto';function a233_0x5462(_0x78cd99,_0x448755){_0x78cd99=_0x78cd99-0xfe;const _0x53d729=a233_0x53d7();let _0x546203=_0x53d729[_0x78cd99];return _0x546203;}import{readFile}from'node:fs/promises';export function serializePageSchemaForFile(_0x5176bd){const _0x1c2232=a233_0x5462;return JSON['stringify'](JSON[_0x1c2232(0x105)](_0x5176bd),null,0x2)+'\x0a';}export function computePageContentHash(_0x4034f7){const _0x1267bb=a233_0x5462;return a233_0x5c7c7b[_0x1267bb(0x104)](_0x1267bb(0x107))['update'](_0x4034f7)[_0x1267bb(0x10a)]('hex');}function a233_0x53d7(){const _0x184ff9=['9721504fIpWxf','md5','6931890kkgsyN','2292492hGydET','digest','1126FFIBHf','utf8','858GEmVlo','382044NbGhqG','3427977SdXcpi','3965965OgGAtH','createHash','parse'];a233_0x53d7=function(){return _0x184ff9;};return a233_0x53d7();}export function computeSerializedSchemaHash(_0x490928){return computePageContentHash(serializePageSchemaForFile(_0x490928));}export async function computePageFileHash(_0x32a3f5){const _0x5c507b=a233_0x5462,_0x315b3c=await readFile(_0x32a3f5,_0x5c507b(0xff));return computePageContentHash(_0x315b3c);}
|
package/lib/core/page/lock.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x5e5787,_0x5de113){const _0x26585f=a234_0x41da,_0x5e53b9=_0x5e5787();while(!![]){try{const _0x1b2d7f=-parseInt(_0x26585f(0xc7))/0x1+-parseInt(_0x26585f(0xb7))/0x2*(-parseInt(_0x26585f(0xb6))/0x3)+parseInt(_0x26585f(0xc2))/0x4+parseInt(_0x26585f(0xc3))/0x5+-parseInt(_0x26585f(0xc5))/0x6*(-parseInt(_0x26585f(0xbf))/0x7)+parseInt(_0x26585f(0xc4))/0x8*(-parseInt(_0x26585f(0xc0))/0x9)+parseInt(_0x26585f(0xb9))/0xa;if(_0x1b2d7f===_0x5de113)break;else _0x5e53b9['push'](_0x5e53b9['shift']());}catch(_0x36bb4b){_0x5e53b9['push'](_0x5e53b9['shift']());}}}(a234_0x4630,0x5a298));import{mkdir,readFile,writeFile}from'node:fs/promises';function a234_0x4630(){const _0x45e51a=['27BOVlKw','stringify','671864owCDSD','574255SOjhec','1739520owBoJh','6bQGYVc','ENOENT','37819acbger','13899xCWNNh','142wlTIQO','parse','1726000cDiZUE','lastSync','object','pages','Failed\x20to\x20read\x20page\x20lock\x20file:\x20','apps','1925581DziNJL'];a234_0x4630=function(){return _0x45e51a;};return a234_0x4630();}import{dirname}from'node:path';export function createEmptyPageLock(){return{'apps':{}};}export function ensurePageLockScope(_0x2db201,_0x11852a){const _0x374f13=a234_0x41da,_0x172d7d={'apps':_0x2db201['apps']&&typeof _0x2db201[_0x374f13(0xbe)]===_0x374f13(0xbb)?_0x2db201[_0x374f13(0xbe)]:{}};let _0x29dbcc=_0x172d7d['apps'][_0x11852a];if(!_0x29dbcc)return _0x29dbcc={'lastSync':'','pages':{}},_0x172d7d[_0x374f13(0xbe)][_0x11852a]=_0x29dbcc,{'lockData':_0x172d7d,'appLock':_0x29dbcc};return!_0x29dbcc[_0x374f13(0xba)]&&(_0x29dbcc[_0x374f13(0xba)]=''),(!_0x29dbcc[_0x374f13(0xbc)]||typeof _0x29dbcc['pages']!==_0x374f13(0xbb))&&(_0x29dbcc[_0x374f13(0xbc)]={}),{'lockData':_0x172d7d,'appLock':_0x29dbcc};}export async function readPageLockFile(_0x3f0d91){const _0x1acc1c=a234_0x41da;try{const _0x25bf8f=await readFile(_0x3f0d91,'utf8'),_0x2de9d4=JSON[_0x1acc1c(0xb8)](_0x25bf8f);return{'apps':_0x2de9d4[_0x1acc1c(0xbe)]&&typeof _0x2de9d4[_0x1acc1c(0xbe)]===_0x1acc1c(0xbb)?_0x2de9d4['apps']:{}};}catch(_0x3b3612){if(_0x3b3612['code']===_0x1acc1c(0xc6))return null;throw new Error(_0x1acc1c(0xbd)+String(_0x3b3612));}}function a234_0x41da(_0x139126,_0xbe10a4){_0x139126=_0x139126-0xb6;const _0x46306d=a234_0x4630();let _0x41da32=_0x46306d[_0x139126];return _0x41da32;}export async function writePageLockFile(_0x2076fa,_0x50fdcc){const _0x463e04=a234_0x41da;await mkdir(dirname(_0x2076fa),{'recursive':!![]}),await writeFile(_0x2076fa,JSON[_0x463e04(0xc1)](_0x50fdcc,null,0x2),'utf8');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x2435cc,_0x169ad7){const _0x41f643=a234_0x54c5,_0x53084e=_0x2435cc();while(!![]){try{const _0x2aaeff=parseInt(_0x41f643(0x8d))/0x1*(parseInt(_0x41f643(0x92))/0x2)+parseInt(_0x41f643(0x8f))/0x3*(parseInt(_0x41f643(0xbe))/0x4)+-parseInt(_0x41f643(0xb2))/0x5+parseInt(_0x41f643(0x8a))/0x6+parseInt(_0x41f643(0x9a))/0x7*(-parseInt(_0x41f643(0x82))/0x8)+parseInt(_0x41f643(0x84))/0x9+parseInt(_0x41f643(0xb5))/0xa*(-parseInt(_0x41f643(0x7c))/0xb);if(_0x2aaeff===_0x169ad7)break;else _0x53084e['push'](_0x53084e['shift']());}catch(_0x73f9e8){_0x53084e['push'](_0x53084e['shift']());}}}(a234_0x25ad,0x8095a));import{MYBATIS_DYNAMIC_END_MARKER,MYBATIS_DYNAMIC_START_MARKER,MYBATIS_INCLUDE_MARKER,normalizeSqlForStaticAnalysis}from'./sql-validator.js';function a234_0x25ad(){const _0x27a388=['includes','error','toUpperCase','INDEX_METADATA_UNAVAILABLE','has','reduce','3997750pWdEKU','where','Only\x20explicit\x20table\x20JOIN\x20clauses\x20with\x20an\x20ON\x20predicate\x20are\x20supported.','311480OvKhwm','filter','sort','replace','max','split','containsUnresolvedInclude','min','__sq__','3388qAzyac','add','right','indexOf','MyBatis\x20<include>\x20JOIN\x20fragments\x20cannot\x20be\x20expanded\x20statically.','exec','index','\x20JOIN\x20direction\x20is\x20not\x20supported\x20by\x20static\x20index\x20auditing.','OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.','429CQpbKF','trim','cross','JOIN_INDEX_MISSING','replaceAll','matchAll','8svoBth','Not\x20every\x20JOIN\x20target\x20predicate\x20could\x20be\x20audited\x20safely.','8374572KUbImp','join','full','position','INNER','search','1245624CrlJzi','natural','warning','2282hMzNFt','test','3177OZyofZ','JOIN_PREDICATE_UNSUPPORTED','unknown','838lrBNrP','metadataAvailable','unsupportedPredicate','MyBatis\x20<include>\x20fragments\x20cannot\x20be\x20expanded\x20for\x20JOIN\x20auditing.','slice','indexes','covered','Derived-table\x20JOIN\x20targets\x20are\x20not\x20supported.','3151673EasBKC','match','endsWith','from','unavailable','push','MyBatis\x20dynamic\x20JOIN\x20predicates\x20cannot\x20be\x20audited\x20deterministically.','alias','JOIN_INDEX_NOT_USABLE','map','table','No\x20dataset\x20metadata\x20matched\x20the\x20JOIN\x20table.','toLowerCase','matchedPrefix','length','tableName','The\x20dataset\x20returned\x20no\x20distinguishable\x20index\x20metadata.','columns'];a234_0x25ad=function(){return _0x27a388;};return a234_0x25ad();}export function auditSqlJoinIndexes(_0x18fd6f,_0x35f09a){const _0x3f723e=a234_0x54c5,_0x481a19=[],_0x2ef329=normalizeSqlForStaticAnalysis(_0x18fd6f),_0x39ff18=(_0x2ef329[_0x3f723e(0xad)]?[]:extractJoinFacts(_0x2ef329['sql']))['map'](_0x2cf13a=>{const _0x254902=_0x3f723e;if(_0x2cf13a[_0x254902(0x94)]||_0x2cf13a['columns'][_0x254902(0xa8)]===0x0)return _0x481a19[_0x254902(0x9f)]({'code':_0x254902(0x90),'table':_0x2cf13a[_0x254902(0xa4)],'alias':_0x2cf13a[_0x254902(0xa1)],'columns':_0x2cf13a[_0x254902(0xab)],'reason':_0x2cf13a['unsupportedReason']??_0x254902(0x83)}),{'table':_0x2cf13a[_0x254902(0xa4)],'alias':_0x2cf13a[_0x254902(0xa1)],'columns':_0x2cf13a['columns'],'status':_0x254902(0x9e)};const _0x4e5906=resolveTableMetadata(_0x35f09a,_0x2cf13a['table']),_0x1432cf=(_0x4e5906?.['indexes']??[])[_0x254902(0xa3)](_0x2a73d4=>({'index':_0x2a73d4,'matchedPrefix':findEqualityPrefix(_0x2a73d4[_0x254902(0xab)],_0x2cf13a[_0x254902(0xab)])}))[_0x254902(0xb6)](_0x1beae1=>_0x1beae1[_0x254902(0xa7)][_0x254902(0xa8)]>0x0),_0x3abe6b=_0x1432cf[_0x254902(0xb1)]((_0x4fd02f,_0x310e2e)=>!_0x4fd02f||_0x310e2e['matchedPrefix'][_0x254902(0xa8)]>_0x4fd02f['matchedPrefix']['length']?_0x310e2e:_0x4fd02f,_0x1432cf[0x0]);if(_0x3abe6b)return{'table':_0x2cf13a[_0x254902(0xa4)],'alias':_0x2cf13a['alias'],'columns':_0x2cf13a[_0x254902(0xab)],'status':_0x254902(0x98),'matchedIndex':{..._0x3abe6b[_0x254902(0xc4)],'matchedPrefix':_0x3abe6b[_0x254902(0xa7)]}};const _0x3ce066=_0x4e5906?.[_0x254902(0x97)][_0x254902(0xb6)](_0xd8e392=>_0xd8e392['columns']['some'](_0x140ea5=>_0x2cf13a['columns']['some'](_0x38dc19=>columnNamesMatch(_0x140ea5,_0x38dc19))))??[];if(_0x3ce066[_0x254902(0xa8)]>0x0)return _0x481a19[_0x254902(0x9f)]({'code':_0x254902(0xa2),'table':_0x2cf13a['table'],'alias':_0x2cf13a[_0x254902(0xa1)],'columns':_0x2cf13a[_0x254902(0xab)],'reason':'Relevant\x20columns\x20do\x20not\x20form\x20a\x20complete\x20leftmost\x20index\x20prefix.'}),{'table':_0x2cf13a[_0x254902(0xa4)],'alias':_0x2cf13a['alias'],'columns':_0x2cf13a[_0x254902(0xab)],'status':_0x254902(0x8c),'candidateIndexes':_0x3ce066};if(_0x4e5906&&_0x4e5906[_0x254902(0x93)]!==![]&&_0x4e5906['indexes'][_0x254902(0xa8)]>0x0&&_0x2cf13a[_0x254902(0xab)][_0x254902(0xa8)]>0x0)return _0x481a19[_0x254902(0x9f)]({'code':_0x254902(0x7f),'table':_0x2cf13a[_0x254902(0xa4)],'alias':_0x2cf13a[_0x254902(0xa1)],'columns':_0x2cf13a[_0x254902(0xab)],'reason':'No\x20reported\x20index\x20contains\x20the\x20JOIN\x20access\x20columns.'}),{'table':_0x2cf13a['table'],'alias':_0x2cf13a[_0x254902(0xa1)],'columns':_0x2cf13a['columns'],'status':_0x254902(0x8c)};return _0x481a19['push']({'code':_0x254902(0xaf),'table':_0x2cf13a[_0x254902(0xa4)],'alias':_0x2cf13a[_0x254902(0xa1)],'columns':_0x2cf13a[_0x254902(0xab)],'reason':_0x4e5906?_0x254902(0xaa):_0x254902(0xa5)}),{'table':_0x2cf13a['table'],'alias':_0x2cf13a['alias'],'columns':_0x2cf13a[_0x254902(0xab)],'status':'unavailable'};});return{'checked':_0x39ff18[_0x3f723e(0xa8)]>0x0,'joins':_0x39ff18,'warnings':_0x481a19};}function extractJoinFacts(_0xe77f59){const _0x383b58=a234_0x54c5,_0x53cdd5=maskNestedQueries(stripSqlNoise(_0xe77f59)),_0x1fede5=maskQuotedIdentifiers(_0x53cdd5),_0x48a9bd=[],_0x5a1050=new Set(),_0xbcd5a1=/\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 _0x40df43 of _0x53cdd5[_0x383b58(0x81)](_0xbcd5a1)){const _0x10f0b0=_0x40df43[_0x383b58(0xc4)]??0x0,_0x193863=_0x40df43[0x0][_0x383b58(0x89)](/\bJOIN\b/i),_0x5ca126=_0x10f0b0+Math[_0x383b58(0xb9)](0x0,_0x193863);if(!/^JOIN\b/i[_0x383b58(0x8e)](_0x1fede5[_0x383b58(0x96)](_0x5ca126)))continue;_0x5a1050[_0x383b58(0xbf)](_0x5ca126);const _0x54bd21=normalizeIdentifier(_0x40df43[0x1]||_0x383b58(0x88)),_0x2eeea0=normalizeIdentifier(_0x40df43[0x2]??''),_0x123a83=normalizeIdentifier(_0x40df43[0x3]||_0x2eeea0[_0x383b58(0xba)]('.')['at'](-0x1)||_0x2eeea0),_0x13dfa=[],_0xa6cdb5=_0x2eeea0===_0x383b58(0xbd);let _0x377111=_0x54bd21==='right'||_0x54bd21===_0x383b58(0x86)||_0xa6cdb5,_0x4f4a92=_0x377111?_0xa6cdb5?_0x383b58(0x99):_0x54bd21['toUpperCase']()+_0x383b58(0x7a):undefined;const _0x3dcd02=stripOuterParentheses(_0x40df43[0x4]??''),_0x386f42=_0x3dcd02[_0x383b58(0xac)](MYBATIS_DYNAMIC_START_MARKER)||_0x3dcd02[_0x383b58(0xac)](MYBATIS_DYNAMIC_END_MARKER),_0x15f877=_0x3dcd02[_0x383b58(0xac)](MYBATIS_INCLUDE_MARKER);_0x386f42&&(_0x377111=!![],_0x4f4a92??=_0x383b58(0xa0));_0x15f877&&(_0x377111=!![],_0x4f4a92??=_0x383b58(0xc2));const _0x14b2d6=_0x3dcd02[_0x383b58(0x80)](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x383b58(0x80)](MYBATIS_DYNAMIC_END_MARKER,'\x20')[_0x383b58(0x80)](MYBATIS_INCLUDE_MARKER,'\x20');hasTopLevelKeyword(_0x14b2d6,'OR')&&(_0x377111=!![],_0x4f4a92??=_0x383b58(0x7b));for(const _0x120f64 of splitTopLevelAnd(_0x14b2d6)){const _0x77c88=stripOuterParentheses(_0x120f64);if(hasTopLevelKeyword(_0x77c88,'OR')){_0x377111=!![],_0x4f4a92??='OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.';continue;}const _0x18dc04=splitEquality(_0x77c88);if(!_0x18dc04){containsColumnReference(_0x120f64,_0x123a83)&&(_0x377111=!![]);continue;}const _0x5c63fe=parseDirectColumnReference(_0x18dc04[0x0],_0x123a83),_0x4bff0a=parseDirectColumnReference(_0x18dc04[0x1],_0x123a83),_0x5cb94c=containsColumnReference(_0x18dc04[0x0],_0x123a83),_0x3b7b0b=containsColumnReference(_0x18dc04[0x1],_0x123a83),_0x9d533d=_0x5c63fe&&!_0x3b7b0b?_0x5c63fe:_0x4bff0a&&!_0x5cb94c?_0x4bff0a:null;if(_0x9d533d&&!_0x13dfa[_0x383b58(0xac)](_0x9d533d))_0x13dfa['push'](_0x9d533d);else!_0x9d533d&&containsColumnReference(_0x120f64,_0x123a83)&&(_0x377111=!![]);}_0x48a9bd[_0x383b58(0x9f)]({'table':_0x2eeea0,'alias':_0x123a83,'columns':_0x13dfa,'unsupportedPredicate':_0x377111,'unsupportedReason':_0x4f4a92,'containsUnresolvedInclude':_0x15f877,'position':_0x5ca126});}for(const _0x3815e4 of _0x1fede5['matchAll'](/\bJOIN\b/gi)){const _0x4a0d5d=_0x3815e4['index']??0x0;if(_0x5a1050['has'](_0x4a0d5d))continue;const _0xbf7715=/^\s+([`"\w$.]+)(?:\s+(?:AS\s+)?([`"\w$]+))?/['exec'](_0x53cdd5[_0x383b58(0x96)](_0x4a0d5d+_0x3815e4[0x0]['length'])),_0x459fdd=normalizeIdentifier(_0xbf7715?.[0x1]||_0x383b58(0x91)),_0x1f9f00=normalizeIdentifier(_0xbf7715?.[0x2]||''),_0x587ddb=isSqlClauseKeyword(_0x1f9f00)?_0x459fdd[_0x383b58(0xba)]('.')['at'](-0x1)||_0x459fdd:_0x1f9f00||_0x459fdd['split']('.')['at'](-0x1)||_0x459fdd;_0x48a9bd[_0x383b58(0x9f)]({'table':_0x459fdd,'alias':_0x587ddb,'columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x383b58(0xb4),'position':_0x4a0d5d});}const _0x4acbfe=_0x1fede5[_0x383b58(0xc1)](MYBATIS_INCLUDE_MARKER);return _0x4acbfe>=0x0&&!_0x48a9bd['some'](_0xfd191=>_0xfd191[_0x383b58(0xbb)])&&_0x48a9bd[_0x383b58(0x9f)]({'table':'unknown','alias':'unknown','columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x383b58(0x95),'containsUnresolvedInclude':!![],'position':_0x4acbfe}),_0x48a9bd[_0x383b58(0xb7)]((_0x20ce54,_0x318449)=>_0x20ce54[_0x383b58(0x87)]-_0x318449[_0x383b58(0x87)]);}function stripSqlNoise(_0x2455fe){const _0x2504c7=a234_0x54c5,_0x1ac54f=Array['from'](_0x2455fe),_0x59b877=(_0x396928,_0x3365fb)=>{for(let _0x5c5683=_0x396928;_0x5c5683<_0x3365fb;_0x5c5683+=0x1){_0x1ac54f[_0x5c5683]!=='\x0a'&&_0x1ac54f[_0x5c5683]!=='\x0d'&&(_0x1ac54f[_0x5c5683]='\x20');}};for(let _0x315491=0x0;_0x315491<_0x1ac54f[_0x2504c7(0xa8)];_0x315491+=0x1){const _0x2da1e5=_0x1ac54f[_0x315491],_0x19bebb=_0x1ac54f[_0x315491+0x1];if(_0x2da1e5==='\x27'||_0x2da1e5==='\x22'||_0x2da1e5==='`'){const _0x34eb2f=_0x2da1e5,_0x3aedeb=_0x315491;_0x315491+=0x1;while(_0x315491<_0x1ac54f[_0x2504c7(0xa8)]){if(_0x1ac54f[_0x315491]==='\x5c'&&_0x315491+0x1<_0x1ac54f[_0x2504c7(0xa8)]){_0x315491+=0x2;continue;}if(_0x1ac54f[_0x315491]!==_0x34eb2f){_0x315491+=0x1;continue;}if(_0x1ac54f[_0x315491+0x1]===_0x34eb2f){_0x315491+=0x2;continue;}break;}if(_0x34eb2f==='\x27')_0x59b877(_0x3aedeb,Math[_0x2504c7(0xbc)](_0x315491+0x1,_0x1ac54f[_0x2504c7(0xa8)]));continue;}if(_0x2da1e5==='-'&&_0x19bebb==='-'){const _0x2e5a5d=_0x315491;while(_0x315491<_0x1ac54f['length']&&_0x1ac54f[_0x315491]!=='\x0a')_0x315491+=0x1;_0x59b877(_0x2e5a5d,_0x315491);continue;}if(_0x2da1e5==='/'&&_0x19bebb==='*'){const _0x5ea7d2=_0x315491;_0x315491+=0x2;while(_0x315491<_0x1ac54f['length']&&!(_0x1ac54f[_0x315491]==='*'&&_0x1ac54f[_0x315491+0x1]==='/')){_0x315491+=0x1;}_0x315491=Math[_0x2504c7(0xbc)](_0x315491+0x1,_0x1ac54f[_0x2504c7(0xa8)]-0x1),_0x59b877(_0x5ea7d2,_0x315491+0x1);continue;}if(_0x2da1e5==='#'&&_0x19bebb!=='{'){const _0x3b7e67=_0x315491;while(_0x315491<_0x1ac54f[_0x2504c7(0xa8)]&&_0x1ac54f[_0x315491]!=='\x0a')_0x315491+=0x1;_0x59b877(_0x3b7e67,_0x315491);continue;}if((_0x2da1e5==='#'||_0x2da1e5==='$')&&_0x19bebb==='{'){const _0x3ca134=_0x315491;_0x315491+=0x2;while(_0x315491<_0x1ac54f[_0x2504c7(0xa8)]&&_0x1ac54f[_0x315491]!=='}')_0x315491+=0x1;_0x59b877(_0x3ca134,Math['min'](_0x315491+0x1,_0x1ac54f['length']));}}return _0x1ac54f[_0x2504c7(0x85)]('');}function maskQuotedIdentifiers(_0x552962){const _0x5463a8=a234_0x54c5,_0x33677b=Array[_0x5463a8(0x9d)](_0x552962);for(let _0x3cc954=0x0;_0x3cc954<_0x33677b[_0x5463a8(0xa8)];_0x3cc954+=0x1){const _0x124060=_0x33677b[_0x3cc954];if(_0x124060!=='\x22'&&_0x124060!=='`')continue;_0x3cc954+=0x1;while(_0x3cc954<_0x33677b[_0x5463a8(0xa8)]){if(_0x33677b[_0x3cc954]===_0x124060){if(_0x33677b[_0x3cc954+0x1]===_0x124060){_0x33677b[_0x3cc954]='\x20',_0x33677b[_0x3cc954+0x1]='\x20',_0x3cc954+=0x2;continue;}break;}_0x33677b[_0x3cc954]='\x20',_0x3cc954+=0x1;}}return _0x33677b[_0x5463a8(0x85)]('');}function a234_0x54c5(_0x57fe6e,_0x298beb){_0x57fe6e=_0x57fe6e-0x7a;const _0x25ad84=a234_0x25ad();let _0x54c5ea=_0x25ad84[_0x57fe6e];return _0x54c5ea;}function maskNestedQueries(_0x588bb4){const _0x1809a1=a234_0x54c5,_0x3f4644=Array[_0x1809a1(0x9d)](_0x588bb4);for(let _0x5f9507=0x0;_0x5f9507<_0x3f4644[_0x1809a1(0xa8)];_0x5f9507+=0x1){if(_0x3f4644[_0x5f9507]!=='(')continue;const _0x1b694e=_0x588bb4[_0x1809a1(0x96)](_0x5f9507+0x1);if(!/^\s*(?:SELECT|WITH)\b/i[_0x1809a1(0x8e)](_0x1b694e))continue;let _0x3f97f9=0x1,_0x4603e2=_0x5f9507+0x1;for(;_0x4603e2<_0x3f4644[_0x1809a1(0xa8)]&&_0x3f97f9>0x0;_0x4603e2+=0x1){if(_0x3f4644[_0x4603e2]==='(')_0x3f97f9+=0x1;if(_0x3f4644[_0x4603e2]===')')_0x3f97f9-=0x1;}if(_0x3f97f9!==0x0)continue;for(let _0x251b72=_0x5f9507;_0x251b72<_0x4603e2;_0x251b72+=0x1){_0x3f4644[_0x251b72]='\x20';}const _0x5bf74f=_0x1809a1(0xbd);for(let _0x597007=0x0;_0x597007<_0x5bf74f['length']&&_0x5f9507+_0x597007<_0x4603e2;_0x597007+=0x1){_0x3f4644[_0x5f9507+_0x597007]=_0x5bf74f[_0x597007];}_0x5f9507=_0x4603e2-0x1;}return _0x3f4644[_0x1809a1(0x85)]('');}function splitTopLevelAnd(_0x30c49d){const _0x54cb37=a234_0x54c5,_0x25b031=[];let _0x41f326=0x0,_0x5ce9a6=0x0;for(let _0x2dd6a3=0x0;_0x2dd6a3<_0x30c49d[_0x54cb37(0xa8)];_0x2dd6a3+=0x1){const _0x3b9dd6=_0x30c49d[_0x2dd6a3];if(_0x3b9dd6==='(')_0x41f326+=0x1;if(_0x3b9dd6===')')_0x41f326=Math[_0x54cb37(0xb9)](0x0,_0x41f326-0x1);_0x41f326===0x0&&_0x30c49d['slice'](_0x2dd6a3)[_0x54cb37(0x9b)](/^AND\b/i)&&(_0x2dd6a3===0x0||/\s/['test'](_0x30c49d[_0x2dd6a3-0x1]??''))&&(_0x25b031['push'](_0x30c49d[_0x54cb37(0x96)](_0x5ce9a6,_0x2dd6a3)[_0x54cb37(0x7d)]()),_0x2dd6a3+=0x2,_0x5ce9a6=_0x2dd6a3+0x1);}const _0x387a4f=_0x30c49d[_0x54cb37(0x96)](_0x5ce9a6)[_0x54cb37(0x7d)]();if(_0x387a4f)_0x25b031['push'](_0x387a4f);return _0x25b031;}function hasTopLevelKeyword(_0x47dfc3,_0x332546){const _0x3ba43e=a234_0x54c5;let _0x24287e=0x0;for(let _0x9736d=0x0;_0x9736d<_0x47dfc3[_0x3ba43e(0xa8)];_0x9736d+=0x1){const _0x1b6271=_0x47dfc3[_0x9736d];if(_0x1b6271==='(')_0x24287e+=0x1;if(_0x1b6271===')')_0x24287e=Math[_0x3ba43e(0xb9)](0x0,_0x24287e-0x1);if(_0x24287e!==0x0)continue;const _0x135792=_0x47dfc3[_0x3ba43e(0x96)](_0x9736d,_0x9736d+_0x332546[_0x3ba43e(0xa8)]),_0x292d71=_0x47dfc3[_0x9736d-0x1]??'\x20',_0x362268=_0x47dfc3[_0x9736d+_0x332546['length']]??'\x20';if(_0x135792[_0x3ba43e(0xae)]()===_0x332546[_0x3ba43e(0xae)]()&&!/[\w$]/[_0x3ba43e(0x8e)](_0x292d71)&&!/[\w$]/[_0x3ba43e(0x8e)](_0x362268))return!![];}return![];}function splitEquality(_0x32a9d1){const _0xf2527d=a234_0x54c5,_0x1b9595=stripOuterParentheses(_0x32a9d1);let _0x337860=0x0,_0x3c586b;for(let _0x297104=0x0;_0x297104<_0x1b9595[_0xf2527d(0xa8)];_0x297104+=0x1){const _0x4c7bf8=_0x1b9595[_0x297104];if(_0x4c7bf8==='(')_0x337860+=0x1;if(_0x4c7bf8===')')_0x337860=Math[_0xf2527d(0xb9)](0x0,_0x337860-0x1);const _0x19471a=_0x1b9595[_0x297104-0x1]??'',_0x5c5d6d=_0x1b9595[_0x297104+0x1]??'';if(_0x4c7bf8==='='&&_0x337860===0x0&&!/[!<>=:]/['test'](_0x19471a)&&_0x5c5d6d!=='='){if(_0x3c586b!==undefined)return null;_0x3c586b=_0x297104;}}return _0x3c586b===undefined?null:[_0x1b9595[_0xf2527d(0x96)](0x0,_0x3c586b)[_0xf2527d(0x7d)](),_0x1b9595['slice'](_0x3c586b+0x1)[_0xf2527d(0x7d)]()];}function parseDirectColumnReference(_0x4b86dd,_0x637dfd){const _0x32268b=a234_0x54c5,_0x48409a=/^([`"]?[\w$]+[`"]?)\s*\.\s*([`"]?[\w$]+[`"]?)$/[_0x32268b(0xc3)](stripOuterParentheses(_0x4b86dd));if(!_0x48409a)return null;if(normalizeIdentifier(_0x48409a[0x1]??'')!==normalizeIdentifier(_0x637dfd))return null;return normalizeIdentifier(_0x48409a[0x2]??'');}function containsColumnReference(_0x47408f,_0x257f44){const _0x33fdef=a234_0x54c5,_0x484a6f=_0x47408f[_0x33fdef(0xb8)](/[`"]/g,''),_0x4f01c4=_0x257f44[_0x33fdef(0xb8)](/[.*+?^${}()|[\]\\]/g,'\x5c$&');return new RegExp('(?:^|[^\x5cw$])'+_0x4f01c4+'\x5cs*\x5c.\x5cs*[\x5cw$]+','i')[_0x33fdef(0x8e)](_0x484a6f);}function findEqualityPrefix(_0x1e9e0a,_0x48d682){const _0x50e3a7=a234_0x54c5,_0x9be9c8=new Set(_0x48d682[_0x50e3a7(0xa3)](normalizeIdentifier)),_0x4469bc=[];for(const _0x28b21d of _0x1e9e0a){if(!_0x9be9c8[_0x50e3a7(0xb0)](normalizeIdentifier(_0x28b21d)))break;_0x4469bc[_0x50e3a7(0x9f)](_0x28b21d);}return _0x4469bc;}function resolveTableMetadata(_0x2026f6,_0x1bb005){const _0x1ad886=a234_0x54c5,_0x12b8b=normalizeIdentifier(_0x1bb005),_0x449ae=_0x2026f6['filter'](_0x3bd816=>normalizeIdentifier(_0x3bd816['tableName'])===_0x12b8b);if(_0x449ae[_0x1ad886(0xa8)]===0x1)return _0x449ae[0x0];const _0x4b5902=_0x12b8b[_0x1ad886(0xac)]('.'),_0x224502=_0x12b8b['split']('.')['at'](-0x1),_0x49a553=_0x2026f6[_0x1ad886(0xb6)](_0x39e295=>{const _0x1b8bce=_0x1ad886,_0x5e6a3f=normalizeIdentifier(_0x39e295[_0x1b8bce(0xa9)]);if(_0x4b5902&&_0x5e6a3f[_0x1b8bce(0xac)]('.'))return![];return _0x5e6a3f[_0x1b8bce(0xba)]('.')['at'](-0x1)===_0x224502;});return _0x49a553['length']===0x1?_0x49a553[0x0]:undefined;}function columnNamesMatch(_0x41c843,_0x351f04){return normalizeIdentifier(_0x41c843)===normalizeIdentifier(_0x351f04);}function normalizeIdentifier(_0x3d569d){const _0x4ab32a=a234_0x54c5;return _0x3d569d[_0x4ab32a(0xb8)](/[`"]/g,'')['trim']()[_0x4ab32a(0xa6)]();}function isSqlClauseKeyword(_0x2bfc5f){const _0x201dc8=a234_0x54c5;return new Set(['on','using',_0x201dc8(0xb3),'join','inner','left',_0x201dc8(0xc0),_0x201dc8(0x86),_0x201dc8(0x7e),_0x201dc8(0x8b)])[_0x201dc8(0xb0)](_0x2bfc5f);}function stripOuterParentheses(_0x1ef262){const _0x378630=a234_0x54c5;let _0x4c74e3=_0x1ef262[_0x378630(0x7d)]();while(_0x4c74e3['startsWith']('(')&&_0x4c74e3[_0x378630(0x9c)](')')){let _0x2df653=0x0,_0x5adbda=!![];for(let _0xdea046=0x0;_0xdea046<_0x4c74e3['length'];_0xdea046+=0x1){if(_0x4c74e3[_0xdea046]==='(')_0x2df653+=0x1;if(_0x4c74e3[_0xdea046]===')')_0x2df653-=0x1;if(_0x2df653===0x0&&_0xdea046<_0x4c74e3[_0x378630(0xa8)]-0x1){_0x5adbda=![];break;}}if(!_0x5adbda||_0x2df653!==0x0)break;_0x4c74e3=_0x4c74e3[_0x378630(0x96)](0x1,-0x1)['trim']();}return _0x4c74e3;}
|
|
1
|
+
(function(_0x5232b6,_0x114bf0){const _0xc8735f=a236_0xd9d9,_0x460914=_0x5232b6();while(!![]){try{const _0x44d541=-parseInt(_0xc8735f(0x1dd))/0x1*(-parseInt(_0xc8735f(0x20b))/0x2)+parseInt(_0xc8735f(0x200))/0x3+parseInt(_0xc8735f(0x212))/0x4*(parseInt(_0xc8735f(0x21e))/0x5)+-parseInt(_0xc8735f(0x1df))/0x6+parseInt(_0xc8735f(0x1e1))/0x7+parseInt(_0xc8735f(0x21a))/0x8*(parseInt(_0xc8735f(0x1e3))/0x9)+-parseInt(_0xc8735f(0x1fa))/0xa*(parseInt(_0xc8735f(0x1ef))/0xb);if(_0x44d541===_0x114bf0)break;else _0x460914['push'](_0x460914['shift']());}catch(_0x343525){_0x460914['push'](_0x460914['shift']());}}}(a236_0x3c25,0x2cac5));import{MYBATIS_DYNAMIC_END_MARKER,MYBATIS_DYNAMIC_START_MARKER,MYBATIS_INCLUDE_MARKER,normalizeSqlForStaticAnalysis}from'./sql-validator.js';export function auditSqlJoinIndexes(_0x583db3,_0x3f9883){const _0x1137cd=a236_0xd9d9,_0x45cf20=[],_0x12e173=normalizeSqlForStaticAnalysis(_0x583db3),_0x309cf2=(_0x12e173[_0x1137cd(0x208)]?[]:extractJoinFacts(_0x12e173[_0x1137cd(0x1f4)]))[_0x1137cd(0x21b)](_0xcfbfe0=>{const _0x4c3d43=_0x1137cd;if(_0xcfbfe0[_0x4c3d43(0x206)]||_0xcfbfe0[_0x4c3d43(0x1e9)][_0x4c3d43(0x1ee)]===0x0)return _0x45cf20[_0x4c3d43(0x1da)]({'code':_0x4c3d43(0x224),'table':_0xcfbfe0['table'],'alias':_0xcfbfe0['alias'],'columns':_0xcfbfe0[_0x4c3d43(0x1e9)],'reason':_0xcfbfe0[_0x4c3d43(0x1ed)]??_0x4c3d43(0x1eb)}),{'table':_0xcfbfe0[_0x4c3d43(0x221)],'alias':_0xcfbfe0['alias'],'columns':_0xcfbfe0['columns'],'status':_0x4c3d43(0x1d9)};const _0x70bb4f=resolveTableMetadata(_0x3f9883,_0xcfbfe0['table']),_0x4b6392=(_0x70bb4f?.['indexes']??[])['map'](_0x22f60d=>({'index':_0x22f60d,'matchedPrefix':findEqualityPrefix(_0x22f60d[_0x4c3d43(0x1e9)],_0xcfbfe0[_0x4c3d43(0x1e9)])}))[_0x4c3d43(0x223)](_0x3eb775=>_0x3eb775[_0x4c3d43(0x21c)][_0x4c3d43(0x1ee)]>0x0),_0x4ccec0=_0x4b6392[_0x4c3d43(0x1f9)]((_0x42ff91,_0x5667fa)=>!_0x42ff91||_0x5667fa[_0x4c3d43(0x21c)][_0x4c3d43(0x1ee)]>_0x42ff91[_0x4c3d43(0x21c)][_0x4c3d43(0x1ee)]?_0x5667fa:_0x42ff91,_0x4b6392[0x0]);if(_0x4ccec0)return{'table':_0xcfbfe0[_0x4c3d43(0x221)],'alias':_0xcfbfe0[_0x4c3d43(0x1fd)],'columns':_0xcfbfe0[_0x4c3d43(0x1e9)],'status':_0x4c3d43(0x1fe),'matchedIndex':{..._0x4ccec0[_0x4c3d43(0x1fc)],'matchedPrefix':_0x4ccec0[_0x4c3d43(0x21c)]}};const _0x5f7b23=_0x70bb4f?.['indexes'][_0x4c3d43(0x223)](_0x3267ea=>_0x3267ea[_0x4c3d43(0x1e9)][_0x4c3d43(0x1e5)](_0x19cad3=>_0xcfbfe0[_0x4c3d43(0x1e9)][_0x4c3d43(0x1e5)](_0x3bbaae=>columnNamesMatch(_0x19cad3,_0x3bbaae))))??[];if(_0x5f7b23[_0x4c3d43(0x1ee)]>0x0)return _0x45cf20[_0x4c3d43(0x1da)]({'code':'JOIN_INDEX_NOT_USABLE','table':_0xcfbfe0[_0x4c3d43(0x221)],'alias':_0xcfbfe0[_0x4c3d43(0x1fd)],'columns':_0xcfbfe0[_0x4c3d43(0x1e9)],'reason':'Relevant\x20columns\x20do\x20not\x20form\x20a\x20complete\x20leftmost\x20index\x20prefix.'}),{'table':_0xcfbfe0[_0x4c3d43(0x221)],'alias':_0xcfbfe0['alias'],'columns':_0xcfbfe0['columns'],'status':_0x4c3d43(0x220),'candidateIndexes':_0x5f7b23};if(_0x70bb4f&&_0x70bb4f['metadataAvailable']!==![]&&_0x70bb4f[_0x4c3d43(0x21d)][_0x4c3d43(0x1ee)]>0x0&&_0xcfbfe0[_0x4c3d43(0x1e9)][_0x4c3d43(0x1ee)]>0x0)return _0x45cf20[_0x4c3d43(0x1da)]({'code':_0x4c3d43(0x1db),'table':_0xcfbfe0['table'],'alias':_0xcfbfe0[_0x4c3d43(0x1fd)],'columns':_0xcfbfe0[_0x4c3d43(0x1e9)],'reason':'No\x20reported\x20index\x20contains\x20the\x20JOIN\x20access\x20columns.'}),{'table':_0xcfbfe0[_0x4c3d43(0x221)],'alias':_0xcfbfe0[_0x4c3d43(0x1fd)],'columns':_0xcfbfe0[_0x4c3d43(0x1e9)],'status':_0x4c3d43(0x220)};return _0x45cf20[_0x4c3d43(0x1da)]({'code':_0x4c3d43(0x215),'table':_0xcfbfe0['table'],'alias':_0xcfbfe0[_0x4c3d43(0x1fd)],'columns':_0xcfbfe0['columns'],'reason':_0x70bb4f?_0x4c3d43(0x217):'No\x20dataset\x20metadata\x20matched\x20the\x20JOIN\x20table.'}),{'table':_0xcfbfe0['table'],'alias':_0xcfbfe0[_0x4c3d43(0x1fd)],'columns':_0xcfbfe0['columns'],'status':_0x4c3d43(0x1d9)};});return{'checked':_0x309cf2[_0x1137cd(0x1ee)]>0x0,'joins':_0x309cf2,'warnings':_0x45cf20};}function extractJoinFacts(_0x220dd1){const _0x89edd0=a236_0xd9d9,_0x416160=maskNestedQueries(stripSqlNoise(_0x220dd1)),_0x460ccd=maskQuotedIdentifiers(_0x416160),_0x25b7a8=[],_0x5740dc=new Set(),_0x4bac46=/\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 _0x4f4cf2 of _0x416160[_0x89edd0(0x216)](_0x4bac46)){const _0x1d6f96=_0x4f4cf2[_0x89edd0(0x1fc)]??0x0,_0xf60c1c=_0x4f4cf2[0x0][_0x89edd0(0x213)](/\bJOIN\b/i),_0x580a05=_0x1d6f96+Math[_0x89edd0(0x1e4)](0x0,_0xf60c1c);if(!/^JOIN\b/i[_0x89edd0(0x1e0)](_0x460ccd[_0x89edd0(0x211)](_0x580a05)))continue;_0x5740dc[_0x89edd0(0x21f)](_0x580a05);const _0x486715=normalizeIdentifier(_0x4f4cf2[0x1]||'INNER'),_0x439491=normalizeIdentifier(_0x4f4cf2[0x2]??''),_0x1f8bb1=normalizeIdentifier(_0x4f4cf2[0x3]||_0x439491[_0x89edd0(0x207)]('.')['at'](-0x1)||_0x439491),_0x3e55f2=[],_0x5a9da7=_0x439491===_0x89edd0(0x1f1);let _0x10c79f=_0x486715===_0x89edd0(0x1ea)||_0x486715==='full'||_0x5a9da7,_0x475f2d=_0x10c79f?_0x5a9da7?_0x89edd0(0x1de):_0x486715['toUpperCase']()+_0x89edd0(0x219):undefined;const _0x382095=stripOuterParentheses(_0x4f4cf2[0x4]??''),_0x555126=_0x382095[_0x89edd0(0x20d)](MYBATIS_DYNAMIC_START_MARKER)||_0x382095[_0x89edd0(0x20d)](MYBATIS_DYNAMIC_END_MARKER),_0x18b6f0=_0x382095[_0x89edd0(0x20d)](MYBATIS_INCLUDE_MARKER);_0x555126&&(_0x10c79f=!![],_0x475f2d??=_0x89edd0(0x1f0));_0x18b6f0&&(_0x10c79f=!![],_0x475f2d??='MyBatis\x20<include>\x20JOIN\x20fragments\x20cannot\x20be\x20expanded\x20statically.');const _0x123a4b=_0x382095[_0x89edd0(0x1f5)](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x89edd0(0x1f5)](MYBATIS_DYNAMIC_END_MARKER,'\x20')['replaceAll'](MYBATIS_INCLUDE_MARKER,'\x20');hasTopLevelKeyword(_0x123a4b,'OR')&&(_0x10c79f=!![],_0x475f2d??=_0x89edd0(0x20a));for(const _0x44f8df of splitTopLevelAnd(_0x123a4b)){const _0x5b55e9=stripOuterParentheses(_0x44f8df);if(hasTopLevelKeyword(_0x5b55e9,'OR')){_0x10c79f=!![],_0x475f2d??=_0x89edd0(0x20a);continue;}const _0x1c79e3=splitEquality(_0x5b55e9);if(!_0x1c79e3){containsColumnReference(_0x44f8df,_0x1f8bb1)&&(_0x10c79f=!![]);continue;}const _0x532863=parseDirectColumnReference(_0x1c79e3[0x0],_0x1f8bb1),_0x30baec=parseDirectColumnReference(_0x1c79e3[0x1],_0x1f8bb1),_0x5c652b=containsColumnReference(_0x1c79e3[0x0],_0x1f8bb1),_0xb9c64d=containsColumnReference(_0x1c79e3[0x1],_0x1f8bb1),_0x1ad73a=_0x532863&&!_0xb9c64d?_0x532863:_0x30baec&&!_0x5c652b?_0x30baec:null;if(_0x1ad73a&&!_0x3e55f2['includes'](_0x1ad73a))_0x3e55f2['push'](_0x1ad73a);else!_0x1ad73a&&containsColumnReference(_0x44f8df,_0x1f8bb1)&&(_0x10c79f=!![]);}_0x25b7a8[_0x89edd0(0x1da)]({'table':_0x439491,'alias':_0x1f8bb1,'columns':_0x3e55f2,'unsupportedPredicate':_0x10c79f,'unsupportedReason':_0x475f2d,'containsUnresolvedInclude':_0x18b6f0,'position':_0x580a05});}for(const _0x1800a2 of _0x460ccd[_0x89edd0(0x216)](/\bJOIN\b/gi)){const _0x190663=_0x1800a2['index']??0x0;if(_0x5740dc[_0x89edd0(0x1e2)](_0x190663))continue;const _0x14cadb=/^\s+([`"\w$.]+)(?:\s+(?:AS\s+)?([`"\w$]+))?/[_0x89edd0(0x222)](_0x416160[_0x89edd0(0x211)](_0x190663+_0x1800a2[0x0]['length'])),_0x3bbd2a=normalizeIdentifier(_0x14cadb?.[0x1]||_0x89edd0(0x202)),_0x1a50d4=normalizeIdentifier(_0x14cadb?.[0x2]||''),_0x38ef4f=isSqlClauseKeyword(_0x1a50d4)?_0x3bbd2a['split']('.')['at'](-0x1)||_0x3bbd2a:_0x1a50d4||_0x3bbd2a[_0x89edd0(0x207)]('.')['at'](-0x1)||_0x3bbd2a;_0x25b7a8[_0x89edd0(0x1da)]({'table':_0x3bbd2a,'alias':_0x38ef4f,'columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x89edd0(0x1ff),'position':_0x190663});}const _0x23c8da=_0x460ccd['indexOf'](MYBATIS_INCLUDE_MARKER);return _0x23c8da>=0x0&&!_0x25b7a8[_0x89edd0(0x1e5)](_0x1e5973=>_0x1e5973[_0x89edd0(0x1e8)])&&_0x25b7a8[_0x89edd0(0x1da)]({'table':_0x89edd0(0x202),'alias':_0x89edd0(0x202),'columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x89edd0(0x1ec),'containsUnresolvedInclude':!![],'position':_0x23c8da}),_0x25b7a8['sort']((_0x9d5bf3,_0x578624)=>_0x9d5bf3['position']-_0x578624['position']);}function a236_0xd9d9(_0x5e7ac7,_0x7340d7){_0x5e7ac7=_0x5e7ac7-0x1d9;const _0x3c25a8=a236_0x3c25();let _0xd9d95e=_0x3c25a8[_0x5e7ac7];return _0xd9d95e;}function stripSqlNoise(_0x6e704f){const _0x47062e=a236_0xd9d9,_0x395aa8=Array[_0x47062e(0x1e6)](_0x6e704f),_0x2f1e5c=(_0x48f5c6,_0x2e2c67)=>{for(let _0x25433c=_0x48f5c6;_0x25433c<_0x2e2c67;_0x25433c+=0x1){_0x395aa8[_0x25433c]!=='\x0a'&&_0x395aa8[_0x25433c]!=='\x0d'&&(_0x395aa8[_0x25433c]='\x20');}};for(let _0x10c9d7=0x0;_0x10c9d7<_0x395aa8['length'];_0x10c9d7+=0x1){const _0x27b284=_0x395aa8[_0x10c9d7],_0x36e059=_0x395aa8[_0x10c9d7+0x1];if(_0x27b284==='\x27'||_0x27b284==='\x22'||_0x27b284==='`'){const _0x9de15=_0x27b284,_0x151e37=_0x10c9d7;_0x10c9d7+=0x1;while(_0x10c9d7<_0x395aa8[_0x47062e(0x1ee)]){if(_0x395aa8[_0x10c9d7]==='\x5c'&&_0x10c9d7+0x1<_0x395aa8[_0x47062e(0x1ee)]){_0x10c9d7+=0x2;continue;}if(_0x395aa8[_0x10c9d7]!==_0x9de15){_0x10c9d7+=0x1;continue;}if(_0x395aa8[_0x10c9d7+0x1]===_0x9de15){_0x10c9d7+=0x2;continue;}break;}if(_0x9de15==='\x27')_0x2f1e5c(_0x151e37,Math['min'](_0x10c9d7+0x1,_0x395aa8['length']));continue;}if(_0x27b284==='-'&&_0x36e059==='-'){const _0x160a82=_0x10c9d7;while(_0x10c9d7<_0x395aa8[_0x47062e(0x1ee)]&&_0x395aa8[_0x10c9d7]!=='\x0a')_0x10c9d7+=0x1;_0x2f1e5c(_0x160a82,_0x10c9d7);continue;}if(_0x27b284==='/'&&_0x36e059==='*'){const _0x167887=_0x10c9d7;_0x10c9d7+=0x2;while(_0x10c9d7<_0x395aa8[_0x47062e(0x1ee)]&&!(_0x395aa8[_0x10c9d7]==='*'&&_0x395aa8[_0x10c9d7+0x1]==='/')){_0x10c9d7+=0x1;}_0x10c9d7=Math[_0x47062e(0x1f6)](_0x10c9d7+0x1,_0x395aa8[_0x47062e(0x1ee)]-0x1),_0x2f1e5c(_0x167887,_0x10c9d7+0x1);continue;}if(_0x27b284==='#'&&_0x36e059!=='{'){const _0x216ee3=_0x10c9d7;while(_0x10c9d7<_0x395aa8['length']&&_0x395aa8[_0x10c9d7]!=='\x0a')_0x10c9d7+=0x1;_0x2f1e5c(_0x216ee3,_0x10c9d7);continue;}if((_0x27b284==='#'||_0x27b284==='$')&&_0x36e059==='{'){const _0xf3288f=_0x10c9d7;_0x10c9d7+=0x2;while(_0x10c9d7<_0x395aa8['length']&&_0x395aa8[_0x10c9d7]!=='}')_0x10c9d7+=0x1;_0x2f1e5c(_0xf3288f,Math[_0x47062e(0x1f6)](_0x10c9d7+0x1,_0x395aa8[_0x47062e(0x1ee)]));}}return _0x395aa8[_0x47062e(0x1fb)]('');}function maskQuotedIdentifiers(_0x56426f){const _0x3d08c4=a236_0xd9d9,_0x55aeae=Array['from'](_0x56426f);for(let _0x3ff277=0x0;_0x3ff277<_0x55aeae[_0x3d08c4(0x1ee)];_0x3ff277+=0x1){const _0x1ad87d=_0x55aeae[_0x3ff277];if(_0x1ad87d!=='\x22'&&_0x1ad87d!=='`')continue;_0x3ff277+=0x1;while(_0x3ff277<_0x55aeae['length']){if(_0x55aeae[_0x3ff277]===_0x1ad87d){if(_0x55aeae[_0x3ff277+0x1]===_0x1ad87d){_0x55aeae[_0x3ff277]='\x20',_0x55aeae[_0x3ff277+0x1]='\x20',_0x3ff277+=0x2;continue;}break;}_0x55aeae[_0x3ff277]='\x20',_0x3ff277+=0x1;}}return _0x55aeae[_0x3d08c4(0x1fb)]('');}function maskNestedQueries(_0x377845){const _0x5f580d=a236_0xd9d9,_0xab69e7=Array['from'](_0x377845);for(let _0x42ab79=0x0;_0x42ab79<_0xab69e7['length'];_0x42ab79+=0x1){if(_0xab69e7[_0x42ab79]!=='(')continue;const _0xdc69cf=_0x377845[_0x5f580d(0x211)](_0x42ab79+0x1);if(!/^\s*(?:SELECT|WITH)\b/i['test'](_0xdc69cf))continue;let _0x4728d9=0x1,_0x39102e=_0x42ab79+0x1;for(;_0x39102e<_0xab69e7[_0x5f580d(0x1ee)]&&_0x4728d9>0x0;_0x39102e+=0x1){if(_0xab69e7[_0x39102e]==='(')_0x4728d9+=0x1;if(_0xab69e7[_0x39102e]===')')_0x4728d9-=0x1;}if(_0x4728d9!==0x0)continue;for(let _0x501f1e=_0x42ab79;_0x501f1e<_0x39102e;_0x501f1e+=0x1){_0xab69e7[_0x501f1e]='\x20';}const _0x3f3fc1=_0x5f580d(0x1f1);for(let _0x3cb1e8=0x0;_0x3cb1e8<_0x3f3fc1['length']&&_0x42ab79+_0x3cb1e8<_0x39102e;_0x3cb1e8+=0x1){_0xab69e7[_0x42ab79+_0x3cb1e8]=_0x3f3fc1[_0x3cb1e8];}_0x42ab79=_0x39102e-0x1;}return _0xab69e7[_0x5f580d(0x1fb)]('');}function splitTopLevelAnd(_0x15c341){const _0x4666a2=a236_0xd9d9,_0x18e84c=[];let _0x194e83=0x0,_0xce13e=0x0;for(let _0x475e6f=0x0;_0x475e6f<_0x15c341[_0x4666a2(0x1ee)];_0x475e6f+=0x1){const _0x13bb4b=_0x15c341[_0x475e6f];if(_0x13bb4b==='(')_0x194e83+=0x1;if(_0x13bb4b===')')_0x194e83=Math[_0x4666a2(0x1e4)](0x0,_0x194e83-0x1);_0x194e83===0x0&&_0x15c341[_0x4666a2(0x211)](_0x475e6f)[_0x4666a2(0x20e)](/^AND\b/i)&&(_0x475e6f===0x0||/\s/[_0x4666a2(0x1e0)](_0x15c341[_0x475e6f-0x1]??''))&&(_0x18e84c[_0x4666a2(0x1da)](_0x15c341['slice'](_0xce13e,_0x475e6f)[_0x4666a2(0x1f7)]()),_0x475e6f+=0x2,_0xce13e=_0x475e6f+0x1);}const _0x378c24=_0x15c341['slice'](_0xce13e)[_0x4666a2(0x1f7)]();if(_0x378c24)_0x18e84c[_0x4666a2(0x1da)](_0x378c24);return _0x18e84c;}function hasTopLevelKeyword(_0x19937e,_0x25a845){const _0x3fe009=a236_0xd9d9;let _0xb97b24=0x0;for(let _0x4e2d43=0x0;_0x4e2d43<_0x19937e[_0x3fe009(0x1ee)];_0x4e2d43+=0x1){const _0x5512c1=_0x19937e[_0x4e2d43];if(_0x5512c1==='(')_0xb97b24+=0x1;if(_0x5512c1===')')_0xb97b24=Math[_0x3fe009(0x1e4)](0x0,_0xb97b24-0x1);if(_0xb97b24!==0x0)continue;const _0x1e9063=_0x19937e[_0x3fe009(0x211)](_0x4e2d43,_0x4e2d43+_0x25a845[_0x3fe009(0x1ee)]),_0x73d7bb=_0x19937e[_0x4e2d43-0x1]??'\x20',_0x1eaa27=_0x19937e[_0x4e2d43+_0x25a845[_0x3fe009(0x1ee)]]??'\x20';if(_0x1e9063['toUpperCase']()===_0x25a845[_0x3fe009(0x209)]()&&!/[\w$]/[_0x3fe009(0x1e0)](_0x73d7bb)&&!/[\w$]/[_0x3fe009(0x1e0)](_0x1eaa27))return!![];}return![];}function splitEquality(_0x3b3bc2){const _0x276c8=a236_0xd9d9,_0x3acda1=stripOuterParentheses(_0x3b3bc2);let _0x2160b3=0x0,_0x19186a;for(let _0x4b5913=0x0;_0x4b5913<_0x3acda1[_0x276c8(0x1ee)];_0x4b5913+=0x1){const _0x3c1be6=_0x3acda1[_0x4b5913];if(_0x3c1be6==='(')_0x2160b3+=0x1;if(_0x3c1be6===')')_0x2160b3=Math['max'](0x0,_0x2160b3-0x1);const _0x340545=_0x3acda1[_0x4b5913-0x1]??'',_0x441d4c=_0x3acda1[_0x4b5913+0x1]??'';if(_0x3c1be6==='='&&_0x2160b3===0x0&&!/[!<>=:]/[_0x276c8(0x1e0)](_0x340545)&&_0x441d4c!=='='){if(_0x19186a!==undefined)return null;_0x19186a=_0x4b5913;}}return _0x19186a===undefined?null:[_0x3acda1[_0x276c8(0x211)](0x0,_0x19186a)[_0x276c8(0x1f7)](),_0x3acda1[_0x276c8(0x211)](_0x19186a+0x1)[_0x276c8(0x1f7)]()];}function parseDirectColumnReference(_0x8c6cb3,_0x55aaba){const _0x30ac1e=/^([`"]?[\w$]+[`"]?)\s*\.\s*([`"]?[\w$]+[`"]?)$/['exec'](stripOuterParentheses(_0x8c6cb3));if(!_0x30ac1e)return null;if(normalizeIdentifier(_0x30ac1e[0x1]??'')!==normalizeIdentifier(_0x55aaba))return null;return normalizeIdentifier(_0x30ac1e[0x2]??'');}function a236_0x3c25(){const _0x7f6733=['join','index','alias','covered','Only\x20explicit\x20table\x20JOIN\x20clauses\x20with\x20an\x20ON\x20predicate\x20are\x20supported.','7839ZRzFKx','\x5cs*\x5c.\x5cs*[\x5cw$]+','unknown','toLowerCase','replace','tableName','unsupportedPredicate','split','error','toUpperCase','OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.','29482fkBPmX','endsWith','includes','match','\x5c$&','inner','slice','4YNKDpu','search','full','INDEX_METADATA_UNAVAILABLE','matchAll','The\x20dataset\x20returned\x20no\x20distinguishable\x20index\x20metadata.','where','\x20JOIN\x20direction\x20is\x20not\x20supported\x20by\x20static\x20index\x20auditing.','8PYKvyc','map','matchedPrefix','indexes','1585215WIkYFA','add','warning','table','exec','filter','JOIN_PREDICATE_UNSUPPORTED','unavailable','push','JOIN_INDEX_MISSING','left','21fBwEep','Derived-table\x20JOIN\x20targets\x20are\x20not\x20supported.','2015022RCOECf','test','2076515VTQLsb','has','1337787txslsv','max','some','from','cross','containsUnresolvedInclude','columns','right','Not\x20every\x20JOIN\x20target\x20predicate\x20could\x20be\x20audited\x20safely.','MyBatis\x20<include>\x20fragments\x20cannot\x20be\x20expanded\x20for\x20JOIN\x20auditing.','unsupportedReason','length','3267LMWbup','MyBatis\x20dynamic\x20JOIN\x20predicates\x20cannot\x20be\x20audited\x20deterministically.','__sq__','natural','(?:^|[^\x5cw$])','sql','replaceAll','min','trim','using','reduce','18710NGlJXR'];a236_0x3c25=function(){return _0x7f6733;};return a236_0x3c25();}function containsColumnReference(_0x274f7f,_0x232e1b){const _0x447739=a236_0xd9d9,_0x468408=_0x274f7f[_0x447739(0x204)](/[`"]/g,''),_0x1e2e41=_0x232e1b[_0x447739(0x204)](/[.*+?^${}()|[\]\\]/g,_0x447739(0x20f));return new RegExp(_0x447739(0x1f3)+_0x1e2e41+_0x447739(0x201),'i')['test'](_0x468408);}function findEqualityPrefix(_0x427429,_0x5c127d){const _0x4ca0ce=a236_0xd9d9,_0x58f425=new Set(_0x5c127d[_0x4ca0ce(0x21b)](normalizeIdentifier)),_0x682910=[];for(const _0x4bf021 of _0x427429){if(!_0x58f425[_0x4ca0ce(0x1e2)](normalizeIdentifier(_0x4bf021)))break;_0x682910[_0x4ca0ce(0x1da)](_0x4bf021);}return _0x682910;}function resolveTableMetadata(_0x7bf1a6,_0x57c6a3){const _0x49517e=a236_0xd9d9,_0x3bf9d7=normalizeIdentifier(_0x57c6a3),_0x5bb772=_0x7bf1a6['filter'](_0x4e5ced=>normalizeIdentifier(_0x4e5ced[_0x49517e(0x205)])===_0x3bf9d7);if(_0x5bb772[_0x49517e(0x1ee)]===0x1)return _0x5bb772[0x0];const _0x4f6d1c=_0x3bf9d7[_0x49517e(0x20d)]('.'),_0x515b62=_0x3bf9d7[_0x49517e(0x207)]('.')['at'](-0x1),_0x1b2940=_0x7bf1a6[_0x49517e(0x223)](_0x5994de=>{const _0x3f7060=_0x49517e,_0x4383f5=normalizeIdentifier(_0x5994de[_0x3f7060(0x205)]);if(_0x4f6d1c&&_0x4383f5[_0x3f7060(0x20d)]('.'))return![];return _0x4383f5[_0x3f7060(0x207)]('.')['at'](-0x1)===_0x515b62;});return _0x1b2940['length']===0x1?_0x1b2940[0x0]:undefined;}function columnNamesMatch(_0x35073b,_0x33d72f){return normalizeIdentifier(_0x35073b)===normalizeIdentifier(_0x33d72f);}function normalizeIdentifier(_0x13965b){const _0x522a3f=a236_0xd9d9;return _0x13965b[_0x522a3f(0x204)](/[`"]/g,'')['trim']()[_0x522a3f(0x203)]();}function isSqlClauseKeyword(_0x461ba5){const _0x529b99=a236_0xd9d9;return new Set(['on',_0x529b99(0x1f8),_0x529b99(0x218),_0x529b99(0x1fb),_0x529b99(0x210),_0x529b99(0x1dc),_0x529b99(0x1ea),_0x529b99(0x214),_0x529b99(0x1e7),_0x529b99(0x1f2)])[_0x529b99(0x1e2)](_0x461ba5);}function stripOuterParentheses(_0x15664b){const _0x185af1=a236_0xd9d9;let _0x39bb9c=_0x15664b[_0x185af1(0x1f7)]();while(_0x39bb9c['startsWith']('(')&&_0x39bb9c[_0x185af1(0x20c)](')')){let _0x59ea1f=0x0,_0x37e179=!![];for(let _0x38a2f1=0x0;_0x38a2f1<_0x39bb9c[_0x185af1(0x1ee)];_0x38a2f1+=0x1){if(_0x39bb9c[_0x38a2f1]==='(')_0x59ea1f+=0x1;if(_0x39bb9c[_0x38a2f1]===')')_0x59ea1f-=0x1;if(_0x59ea1f===0x0&&_0x38a2f1<_0x39bb9c[_0x185af1(0x1ee)]-0x1){_0x37e179=![];break;}}if(!_0x37e179||_0x59ea1f!==0x0)break;_0x39bb9c=_0x39bb9c[_0x185af1(0x211)](0x1,-0x1)[_0x185af1(0x1f7)]();}return _0x39bb9c;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a237_0x35cf(){const _0x3b7117=['2385560SXHfxy','675076vnJqPe','284615DJLJOT','902058oJyyjd','12WfwgyS','sql-trash','92rfsVII','12529jYLQnq','sql','45010VPkdqa','1227821PJzXwv','80PxLBiq','1043505GuPYtW','/sql'];a237_0x35cf=function(){return _0x3b7117;};return a237_0x35cf();}const a237_0x120025=a237_0x1e69;(function(_0x4a7cfe,_0x1d44a8){const _0x46e579=a237_0x1e69,_0x5a75f6=_0x4a7cfe();while(!![]){try{const _0x4770a7=-parseInt(_0x46e579(0xef))/0x1+-parseInt(_0x46e579(0xee))/0x2+-parseInt(_0x46e579(0xf1))/0x3+-parseInt(_0x46e579(0xe6))/0x4*(parseInt(_0x46e579(0xf0))/0x5)+-parseInt(_0x46e579(0xf2))/0x6*(-parseInt(_0x46e579(0xea))/0x7)+parseInt(_0x46e579(0xeb))/0x8*(-parseInt(_0x46e579(0xec))/0x9)+-parseInt(_0x46e579(0xe9))/0xa*(-parseInt(_0x46e579(0xe7))/0xb);if(_0x4770a7===_0x1d44a8)break;else _0x5a75f6['push'](_0x5a75f6['shift']());}catch(_0x467e9b){_0x5a75f6['push'](_0x5a75f6['shift']());}}}(a237_0x35cf,0xcd220));import{resolve}from'node:path';function a237_0x1e69(_0xa95326,_0x4b014a){_0xa95326=_0xa95326-0xe5;const _0x35cff4=a237_0x35cf();let _0x1e6942=_0x35cff4[_0xa95326];return _0x1e6942;}import{findProjectRootDirectory}from'../../context.js';const DOT_DIR='.rabetbase',LOCK_FILE_NAME='sql.lock.json',TRASH_DIR_NAME=a237_0x120025(0xe5);export function loadSqlProjectConfig(_0x2efe3e,_0x20d7e1){const _0xafb52f=a237_0x120025,_0x1d94f9=resolve(_0x20d7e1??findProjectRootDirectory()),_0x523ac8=DOT_DIR+_0xafb52f(0xed),_0x43545d=_0x523ac8+'/'+_0x2efe3e;return{'projectRoot':_0x1d94f9,'appCode':_0x2efe3e,'sqlWorkspaceRoot':_0x523ac8,'sqlRoot':_0x43545d,'sqlRootDir':resolve(_0x1d94f9,DOT_DIR,_0xafb52f(0xe8),_0x2efe3e),'lockFilePath':resolve(_0x1d94f9,DOT_DIR,LOCK_FILE_NAME),'trashDir':resolve(_0x1d94f9,DOT_DIR,TRASH_DIR_NAME)};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x14a93f,_0x13ba0b){const _0x284393=a238_0x43dd,_0x34e972=_0x14a93f();while(!![]){try{const _0x34d236=parseInt(_0x284393(0x19a))/0x1+parseInt(_0x284393(0x1a9))/0x2*(-parseInt(_0x284393(0x199))/0x3)+parseInt(_0x284393(0x19d))/0x4+-parseInt(_0x284393(0x1aa))/0x5*(parseInt(_0x284393(0x1ad))/0x6)+parseInt(_0x284393(0x1b0))/0x7+parseInt(_0x284393(0x1a8))/0x8*(-parseInt(_0x284393(0x1b8))/0x9)+-parseInt(_0x284393(0x1b6))/0xa*(-parseInt(_0x284393(0x1b3))/0xb);if(_0x34d236===_0x13ba0b)break;else _0x34e972['push'](_0x34e972['shift']());}catch(_0x3b09f2){_0x34e972['push'](_0x34e972['shift']());}}}(a238_0x2f95,0x22ed2));function a238_0x43dd(_0x196f91,_0xb5578a){_0x196f91=_0x196f91-0x199;const _0x2f95c7=a238_0x2f95();let _0x43dd1f=_0x2f95c7[_0x196f91];return _0x43dd1f;}import{readdir,stat}from'node:fs/promises';import{extname,join,relative}from'node:path';import{buildDefaultSqlFileName,buildSqlRelativePath}from'./utils.js';function extensionToMode(_0x36465a){const _0x1800a4=a238_0x43dd;if(_0x36465a===_0x1800a4(0x1a0))return'sql';if(_0x36465a===_0x1800a4(0x1b4))return _0x1800a4(0x1b7);return undefined;}function a238_0x2f95(){const _0x3d23fd=['431412RRMFGA','filter','sql','1328026cbrRtA','code','test','121NytBjP','.xml','sqlCode','251110XfWTjY','mybatisXml','94806iVTBsM','1866LkrkLG','12800EjwfTE','isDirectory','replace','750420faMwqb','push','indexOf','.sql','sqlRootDir','split','length','dbName','sqlName','toLowerCase','slice','112HOjcJL','746IxBSNl','10irjIAb','name','mode'];a238_0x2f95=function(){return _0x3d23fd;};return a238_0x2f95();}async function scanSqlFilesRecursively(_0x5d8548,_0x102b2e){const _0xcbf0bc=a238_0x43dd,_0x5062af=[];try{const _0x3f5651=await readdir(_0x5d8548,{'withFileTypes':!![]});for(const _0x48bc3a of _0x3f5651){const _0x44a874=join(_0x5d8548,_0x48bc3a[_0xcbf0bc(0x1ab)]);if(_0x48bc3a['isDirectory']()){_0x5062af[_0xcbf0bc(0x19e)](...await scanSqlFilesRecursively(_0x44a874,_0x102b2e));continue;}if(!_0x48bc3a['isFile']())continue;const _0x26807e=extname(_0x48bc3a['name'])[_0xcbf0bc(0x1a6)](),_0x130e5b=extensionToMode(_0x26807e);if(!_0x130e5b)continue;const _0x35dd8a=relative(_0x102b2e,_0x44a874)[_0xcbf0bc(0x19c)](/\\/g,'/'),_0x4e127a=_0x35dd8a[_0xcbf0bc(0x1a2)]('/')[_0xcbf0bc(0x1ae)](Boolean),_0x8e3b2e=parseSqlPath(_0x4e127a,_0x48bc3a['name'],_0x26807e);if(!_0x8e3b2e)continue;_0x5062af[_0xcbf0bc(0x19e)]({'sqlCode':_0x8e3b2e[_0xcbf0bc(0x1b5)],'sqlName':_0x8e3b2e[_0xcbf0bc(0x1a5)],'dbDirectory':_0x4e127a[0x0],'filePath':_0x44a874,'relativePath':_0x35dd8a,'lockKey':_0x8e3b2e[_0xcbf0bc(0x1b5)],'mode':_0x130e5b});}}catch(_0x1ea804){if(_0x1ea804[_0xcbf0bc(0x1b1)]!=='ENOENT')throw _0x1ea804;}return _0x5062af;}export async function scanLocalSqlQueries(_0x28dfb1){const _0x130ed7=a238_0x43dd;return scanSqlFilesRecursively(_0x28dfb1['sqlRootDir'],_0x28dfb1[_0x130ed7(0x1a1)]);}export function resolveLocalSqlFilePath(_0x24ade5,_0x4fe2f3,_0x2203a7){const _0x1d0470=a238_0x43dd,_0x28a027=_0x2203a7?.['path']||(_0x2203a7?.[_0x1d0470(0x1a5)]||_0x2203a7?.[_0x1d0470(0x1a4)]?buildSqlRelativePath(_0x4fe2f3,_0x2203a7?.[_0x1d0470(0x1a5)],_0x2203a7?.[_0x1d0470(0x1a4)],_0x2203a7?.[_0x1d0470(0x1ac)]||_0x1d0470(0x1af),_0x2203a7?.['dbId']):buildDefaultSqlFileName(_0x4fe2f3,_0x2203a7?.[_0x1d0470(0x1ac)]||_0x1d0470(0x1af)));return join(_0x24ade5[_0x1d0470(0x1a1)],_0x28a027);}export async function directoryExists(_0x2c1cbd){const _0x572ff7=a238_0x43dd;try{const _0x523c3a=await stat(_0x2c1cbd);return _0x523c3a[_0x572ff7(0x19b)]();}catch{return![];}}function parseSqlPath(_0x37e05d,_0x3fa91d,_0x38c8b0){const _0xf67565=a238_0x43dd,_0x4a75fe=_0x3fa91d[_0xf67565(0x1a7)](0x0,-_0x38c8b0[_0xf67565(0x1a3)]);if(_0x37e05d[_0xf67565(0x1a3)]<0x2)return null;const _0x4d7be2=_0x4a75fe[_0xf67565(0x19f)]('_');if(_0x4d7be2<=0x0||_0x4d7be2>=_0x4a75fe[_0xf67565(0x1a3)]-0x1)return null;const _0x31fab1=_0x4a75fe[_0xf67565(0x1a7)](0x0,_0x4d7be2);if(!isLikelySqlCode(_0x31fab1))return null;return{'sqlCode':_0x31fab1,'sqlName':_0x4a75fe['slice'](_0x4d7be2+0x1)};}function isLikelySqlCode(_0x4ba05a){const _0x45c846=a238_0x43dd;return/^[A-Za-z0-9-]+-[A-Za-z0-9-]+$/[_0x45c846(0x1b2)](_0x4ba05a);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x131d64,_0x446422){const _0x4fcb84=a239_0x5c4a,_0x165490=_0x131d64();while(!![]){try{const _0x53882f=parseInt(_0x4fcb84(0x1bb))/0x1*(parseInt(_0x4fcb84(0x1b1))/0x2)+-parseInt(_0x4fcb84(0x1b2))/0x3+-parseInt(_0x4fcb84(0x1be))/0x4*(parseInt(_0x4fcb84(0x1b8))/0x5)+-parseInt(_0x4fcb84(0x1b6))/0x6*(parseInt(_0x4fcb84(0x1ba))/0x7)+-parseInt(_0x4fcb84(0x1bd))/0x8*(parseInt(_0x4fcb84(0x1b0))/0x9)+-parseInt(_0x4fcb84(0x1b9))/0xa*(parseInt(_0x4fcb84(0x1b5))/0xb)+parseInt(_0x4fcb84(0x1b7))/0xc;if(_0x53882f===_0x446422)break;else _0x165490['push'](_0x165490['shift']());}catch(_0x59e494){_0x165490['push'](_0x165490['shift']());}}}(a239_0x2dbe,0xdec84));function a239_0x2dbe(){const _0x41de54=['44hEhLZh','752562uwkIDx','52624728MMRTFq','1835sdWmLG','3310850mdZTYH','42RxUqql','235aaMuCv','md5','16QJsdsV','4876lYBRUM','1441116emeJYh','6962lEsGIJ','4339170AcQzQc','createHash','utf8'];a239_0x2dbe=function(){return _0x41de54;};return a239_0x2dbe();}import{readFile}from'node:fs/promises';import a239_0x5b2a4d from'node:crypto';export function computeSqlContentHash(_0x40f2ca){const _0x495439=a239_0x5c4a;return a239_0x5b2a4d[_0x495439(0x1b3)](_0x495439(0x1bc))['update'](_0x40f2ca)['digest']('hex');}function a239_0x5c4a(_0x3faaa0,_0x52804b){_0x3faaa0=_0x3faaa0-0x1b0;const _0x2dbec1=a239_0x2dbe();let _0x5c4a61=_0x2dbec1[_0x3faaa0];return _0x5c4a61;}export async function computeSqlFileHash(_0x3f466c){const _0x1b9cdc=a239_0x5c4a,_0x2cd377=await readFile(_0x3f466c,_0x1b9cdc(0x1b4));return computeSqlContentHash(_0x2cd377);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a240_0x290e(_0x988e54,_0x2d5e0e){_0x988e54=_0x988e54-0x1cb;const _0x181c85=a240_0x181c();let _0x290e44=_0x181c85[_0x988e54];return _0x290e44;}(function(_0x1d8efc,_0x3ddce5){const _0x4f05bb=a240_0x290e,_0x499539=_0x1d8efc();while(!![]){try{const _0x3b34f1=parseInt(_0x4f05bb(0x1d7))/0x1+parseInt(_0x4f05bb(0x1da))/0x2+-parseInt(_0x4f05bb(0x1d5))/0x3*(-parseInt(_0x4f05bb(0x1d8))/0x4)+-parseInt(_0x4f05bb(0x1d6))/0x5+parseInt(_0x4f05bb(0x1d9))/0x6+-parseInt(_0x4f05bb(0x1dc))/0x7+-parseInt(_0x4f05bb(0x1d0))/0x8*(-parseInt(_0x4f05bb(0x1dd))/0x9);if(_0x3b34f1===_0x3ddce5)break;else _0x499539['push'](_0x499539['shift']());}catch(_0x566721){_0x499539['push'](_0x499539['shift']());}}}(a240_0x181c,0x1a062));import{mkdir,readFile,writeFile}from'node:fs/promises';import{dirname}from'node:path';export function createEmptySqlLock(){return{'apps':{}};}function a240_0x181c(){const _0x4fa6f3=['870678BnzXqx','24286AqocBP','Failed\x20to\x20read\x20SQL\x20lock\x20file:\x20','1282778rtkpMN','22743kmvvde','sqlRoot','code','utf8','\x22.\x20','sqls',':\x20sqlRoot\x20mismatch\x20—\x20current\x20\x22','parse','lastSync','104MrjVsR','stringify','Check\x20.rabetbase/sql.lock.json\x20or\x20operate\x20from\x20the\x20correct\x20project\x20directory.','\x22\x20vs\x20lock\x20\x22','apps','6hIFkvM','457460FLbMDV','85255lgYQSE','211956BJSvSW'];a240_0x181c=function(){return _0x4fa6f3;};return a240_0x181c();}export function ensureSqlLockScope(_0x28a045,_0x260cb6,_0x456574,_0xa0ba31){const _0x3e9caf=a240_0x290e,_0x15e8c4=_0x28a045??createEmptySqlLock();let _0x38c07e=_0x15e8c4['apps'][_0x260cb6];if(!_0x38c07e)return _0x38c07e={'sqlRoot':_0x456574,'lastSync':'','sqls':{}},_0x15e8c4[_0x3e9caf(0x1d4)][_0x260cb6]=_0x38c07e,{'lockData':_0x15e8c4,'appLock':_0x38c07e};if(!_0x38c07e['sqlRoot'])_0x38c07e[_0x3e9caf(0x1de)]=_0x456574;else{if(_0x38c07e[_0x3e9caf(0x1de)]!==_0x456574)throw new Error(_0xa0ba31+_0x3e9caf(0x1cd)+_0x456574+_0x3e9caf(0x1d3)+_0x38c07e['sqlRoot']+_0x3e9caf(0x1cb)+_0x3e9caf(0x1d2));}return!_0x38c07e[_0x3e9caf(0x1cc)]&&(_0x38c07e[_0x3e9caf(0x1cc)]={}),!_0x38c07e[_0x3e9caf(0x1cf)]&&(_0x38c07e[_0x3e9caf(0x1cf)]=''),{'lockData':_0x15e8c4,'appLock':_0x38c07e};}export async function readSqlLockFile(_0x428dd0){const _0x360ec4=a240_0x290e;try{const _0x3ce5b0=await readFile(_0x428dd0,_0x360ec4(0x1e0));return JSON[_0x360ec4(0x1ce)](_0x3ce5b0);}catch(_0x7b2f29){if(_0x7b2f29[_0x360ec4(0x1df)]==='ENOENT')return null;throw new Error(_0x360ec4(0x1db)+String(_0x7b2f29));}}export async function writeSqlLockFile(_0x4c56c3,_0x5757f4){const _0x5402fb=a240_0x290e;await mkdir(dirname(_0x4c56c3),{'recursive':!![]}),await writeFile(_0x4c56c3,JSON[_0x5402fb(0x1d1)](_0x5757f4,null,0x2),'utf8');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x18a9eb,_0xebc4b5){const _0x2b3cea=a242_0x2c47,_0x1f50be=_0x18a9eb();while(!![]){try{const _0x40775f=-parseInt(_0x2b3cea(0x8c))/0x1+-parseInt(_0x2b3cea(0x7e))/0x2*(parseInt(_0x2b3cea(0x85))/0x3)+parseInt(_0x2b3cea(0x8d))/0x4+-parseInt(_0x2b3cea(0x86))/0x5*(-parseInt(_0x2b3cea(0x83))/0x6)+-parseInt(_0x2b3cea(0x8e))/0x7+parseInt(_0x2b3cea(0x7f))/0x8+parseInt(_0x2b3cea(0x7c))/0x9;if(_0x40775f===_0xebc4b5)break;else _0x1f50be['push'](_0x1f50be['shift']());}catch(_0x3f1f67){_0x1f50be['push'](_0x1f50be['shift']());}}}(a242_0x668d,0xe22de));export function detectSqlMode(_0x6c4fac){const _0x366ce3=a242_0x2c47,_0x31241d=_0x6c4fac[_0x366ce3(0x82)]();if(/^<(select|insert|update|delete)\b/i[_0x366ce3(0x89)](_0x31241d))return _0x366ce3(0x7d);return _0x366ce3(0x8a);}export function getSqlFileExtension(_0xbcee1c){const _0x381171=a242_0x2c47;return _0xbcee1c===_0x381171(0x7d)?_0x381171(0x80):_0x381171(0x81);}function a242_0x2c47(_0x2d9ce1,_0x56bcc0){_0x2d9ce1=_0x2d9ce1-0x7c;const _0x668db8=a242_0x668d();let _0x2c4704=_0x668db8[_0x2d9ce1];return _0x2c4704;}export function buildDefaultSqlFileName(_0x53b319,_0x417e73){return''+_0x53b319+getSqlFileExtension(_0x417e73);}function a242_0x668d(){const _0x57334c=['38HCTnFi','11016760gUVvai','.xml','.sql','trimStart','3010818vXRzUG','unknown-db','221514vzIhhP','15PPWBdg','unknown-sql','db-','test','sql','replace','826403mMOEzX','511236CZpXiP','2297533sWvBrQ','4262949rseRdX','mybatisXml'];a242_0x668d=function(){return _0x57334c;};return a242_0x668d();}export function sanitizeSqlPathSegment(_0x3e57bb,_0x3922b4){const _0x3ecd0b=a242_0x2c47,_0x4cdc8a=String(_0x3e57bb??'')['trim'](),_0x3c1477=_0x4cdc8a['replace'](/[<>:"/\\|?*\u0000-\u001F]/g,'-')['replace'](/\s+/g,'-')[_0x3ecd0b(0x8b)](/-+/g,'-')[_0x3ecd0b(0x8b)](/^\.+/,'')[_0x3ecd0b(0x8b)](/\.+$/,'')[_0x3ecd0b(0x8b)](/^-+/,'')[_0x3ecd0b(0x8b)](/-+$/,'');return _0x3c1477||_0x3922b4;}export function buildDbDirectoryName(_0x35a7aa,_0x52f769){const _0x47eb62=a242_0x2c47;return sanitizeSqlPathSegment(_0x35a7aa,_0x52f769!=null?_0x47eb62(0x88)+_0x52f769:_0x47eb62(0x84));}export function buildSqlRelativePath(_0x1e205e,_0x4465ff,_0x48757c,_0x179a1c,_0x2ab072){const _0x1ce82a=a242_0x2c47,_0x1c3624=buildDbDirectoryName(_0x48757c,_0x2ab072),_0x20e858=sanitizeSqlPathSegment(_0x1e205e,_0x1ce82a(0x87)),_0x3570aa=sanitizeSqlPathSegment(_0x4465ff,_0x20e858);return _0x1c3624+'/'+_0x20e858+'_'+_0x3570aa+getSqlFileExtension(_0x179a1c);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a241_0x32208e=a241_0x1fb9;(function(_0x3ca7bc,_0x49da92){const _0x5dc98c=a241_0x1fb9,_0x501180=_0x3ca7bc();while(!![]){try{const _0x12ba0c=parseInt(_0x5dc98c(0x1d6))/0x1+parseInt(_0x5dc98c(0x1f3))/0x2*(-parseInt(_0x5dc98c(0x200))/0x3)+-parseInt(_0x5dc98c(0x1ef))/0x4+parseInt(_0x5dc98c(0x1e7))/0x5+parseInt(_0x5dc98c(0x20c))/0x6*(parseInt(_0x5dc98c(0x1ee))/0x7)+parseInt(_0x5dc98c(0x1c3))/0x8*(-parseInt(_0x5dc98c(0x1ce))/0x9)+parseInt(_0x5dc98c(0x1f4))/0xa;if(_0x12ba0c===_0x49da92)break;else _0x501180['push'](_0x501180['shift']());}catch(_0x232d87){_0x501180['push'](_0x501180['shift']());}}}(a241_0xd297,0x979af));const MYBATIS_OUTER_TAGS=new Map([[a241_0x32208e(0x210),a241_0x32208e(0x1ba)],[a241_0x32208e(0x1d3),a241_0x32208e(0x1ca)],[a241_0x32208e(0x214),a241_0x32208e(0x1bc)],[a241_0x32208e(0x1dc),a241_0x32208e(0x1b7)]]),MYBATIS_DYNAMIC_TAGS=new Set(['if',a241_0x32208e(0x1f6),'foreach','choose',a241_0x32208e(0x1cc),a241_0x32208e(0x1c6),a241_0x32208e(0x1f0),a241_0x32208e(0x1e6),a241_0x32208e(0x1e1),a241_0x32208e(0x1f1),a241_0x32208e(0x1d0)]),MYBATIS_BRANCH_TAGS=new Set(['if','foreach',a241_0x32208e(0x1e2),a241_0x32208e(0x1cc),a241_0x32208e(0x1c6)]);export const MYBATIS_DYNAMIC_START_MARKER=a241_0x32208e(0x1cb);export const MYBATIS_DYNAMIC_END_MARKER=a241_0x32208e(0x212);function a241_0xd297(){const _0x389158=['SQL\x20contains\x20modification\x20statements\x20alongside\x20SELECT','has','bind','choose','Unterminated\x20XML\x20declaration.','MyBatis\x20<property>\x20must\x20be\x20a\x20self-closing\x20direct\x20child\x20of\x20<include>.','string','set','1578355LAafVn','push','rawName','Unclosed\x20MyBatis\x20XML\x20tag:\x20<','MyBatis\x20dynamic\x20tag\x20names\x20must\x20be\x20lowercase:\x20<','Invalid\x20MyBatis\x20XML\x20tag.','__RABETBASE_UNRESOLVED_SQL_FRAGMENT__','568127KkirUN','3772632yABLvQ','trim','include','join','62sCQqhx','5404380ZrqOpL','add','where','exec','\x20SET\x20','replace','\x20with\x20parameters:\x20','Multiple\x20MyBatis\x20statement\x20wrappers\x20are\x20not\x20supported.','WITH','\x20WHERE\x20','&','toLowerCase','31083yCqSuf','tagName','startsWith','\x20query\x20targeting\x20','includes','parseInt','type','replaceAll','Unterminated\x20XML\x20comment.','length','UNKNOWN','match','30lGVUOO','Unable\x20to\x20detect\x20SQL\x20type.\x20','SQL\x20text\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.','test','select','MyBatis\x20XML\x20must\x20contain\x20exactly\x20one\x20complete\x20statement\x20wrapper.','__RABETBASE_MYBATIS_DYNAMIC_END__',''','update','^<\x5cs*(?:','sql','DELETE','>','indexOf','SELECT','Invalid\x20attributes\x20on\x20MyBatis\x20XML\x20tag:\x20<','UPDATE','<![CDATA[','<!--','SQL\x20contains\x20blocked\x20DELETE\x20or\x20DDL\x20statements','unknown\x20table(s)','slice','SQL\x20content\x20is\x20empty','1658920ciqWOp','statementType','fromCodePoint','otherwise','DDL\x20statements\x20are\x20blocked\x20from\x20auto-save','DDL','-->','INSERT','__RABETBASE_MYBATIS_DYNAMIC_START__','when','split','9AFKshq','XML\x20declarations\x20must\x20precede\x20the\x20MyBatis\x20statement\x20wrapper.','property','reason','Invalid\x20MyBatis\x20XML\x20closing\x20tag:\x20</','insert','"','<','830775Uxblvw','Unterminated\x20CDATA\x20section.','outer','matchAll','CDATA\x20sections\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.','isDangerous','delete','error','mybatisXml'];a241_0xd297=function(){return _0x389158;};return a241_0xd297();}export const MYBATIS_INCLUDE_MARKER='__RABETBASE_MYBATIS_INCLUDE_UNRESOLVED__';const UNRESOLVED_SQL_FRAGMENT=a241_0x32208e(0x1ed),MYBATIS_OUTER_TAG_PATTERN=new RegExp(a241_0x32208e(0x215)+[...MYBATIS_OUTER_TAGS['keys']()][a241_0x32208e(0x1f2)]('|')+')\x5cb','i');export function normalizeSqlForStaticAnalysis(_0x30cb65){const _0x1f86db=a241_0x32208e,_0x56fc57=typeof _0x30cb65===_0x1f86db(0x1e5)?_0x30cb65:'';if(!startsWithMybatisStatementWrapper(_0x56fc57))return{'sql':_0x56fc57,'mode':_0x1f86db(0x216)};let _0x44c66e=0x0,_0x442a85='',_0x138d11,_0x45dd0f=![],_0x5dc76b=![];const _0x49d3eb=[];while(_0x44c66e<_0x56fc57['length']){if(_0x56fc57[_0x1f86db(0x202)](_0x1f86db(0x1be),_0x44c66e)){const _0x48dedc=_0x56fc57[_0x1f86db(0x1b9)](_0x1f86db(0x1c9),_0x44c66e+0x4);if(_0x48dedc<0x0)return invalidMybatisSource(_0x1f86db(0x208));_0x442a85+='\x20',_0x44c66e=_0x48dedc+0x3;continue;}if(_0x56fc57[_0x1f86db(0x202)](_0x1f86db(0x1bd),_0x44c66e)){if(!_0x45dd0f||_0x5dc76b)return invalidMybatisSource(_0x1f86db(0x1da));const _0x32d04f=_0x56fc57[_0x1f86db(0x1b9)](']]>',_0x44c66e+0x9);if(_0x32d04f<0x0)return invalidMybatisSource(_0x1f86db(0x1d7));_0x442a85+=_0x56fc57[_0x1f86db(0x1c1)](_0x44c66e+0x9,_0x32d04f),_0x44c66e=_0x32d04f+0x3;continue;}if(_0x56fc57[_0x1f86db(0x202)]('<?',_0x44c66e)){if(_0x45dd0f)return invalidMybatisSource(_0x1f86db(0x1cf));const _0x3b3f67=_0x56fc57[_0x1f86db(0x1b9)]('?>',_0x44c66e+0x2);if(_0x3b3f67<0x0)return invalidMybatisSource(_0x1f86db(0x1e3));_0x442a85+='\x20',_0x44c66e=_0x3b3f67+0x2;continue;}if(_0x56fc57[_0x44c66e]!=='<'){const _0x5cdf06=_0x56fc57[_0x1f86db(0x1b9)]('<',_0x44c66e),_0x15984d=_0x5cdf06<0x0?_0x56fc57[_0x1f86db(0x209)]:_0x5cdf06,_0x40b364=_0x56fc57[_0x1f86db(0x1c1)](_0x44c66e,_0x15984d);if((!_0x45dd0f||_0x5dc76b)&&_0x40b364[_0x1f86db(0x1f0)]())return invalidMybatisSource(_0x1f86db(0x20e));if(_0x45dd0f&&!_0x5dc76b){const _0x3bb06f=decodeXmlEntities(_0x40b364);if(_0x3bb06f===null)return invalidMybatisSource('Invalid\x20XML\x20entity\x20reference.');_0x442a85+=_0x3bb06f;}else _0x442a85+='\x20';_0x44c66e=_0x15984d;continue;}const _0x4ff802=findXmlTagEnd(_0x56fc57,_0x44c66e);if(_0x4ff802<0x0)return invalidMybatisSource('Unterminated\x20MyBatis\x20XML\x20tag.');const _0x2e7287=_0x56fc57[_0x1f86db(0x1c1)](_0x44c66e,_0x4ff802+0x1),_0x225b7a=/^<\s*(\/?)\s*([A-Za-z][\w:-]*)([\s\S]*?)(\/?)\s*>$/[_0x1f86db(0x1f7)](_0x2e7287);if(!_0x225b7a)return invalidMybatisSource(_0x1f86db(0x1ec));const _0x509467=_0x225b7a[0x1]==='/',_0x1d3075=_0x225b7a[0x2]??'',_0x40a876=_0x1d3075[_0x1f86db(0x1ff)](),_0x381bfe=_0x225b7a[0x3]??'',_0xcae6cd=_0x225b7a[0x4]==='/',_0x49ea06=MYBATIS_OUTER_TAGS['get'](_0x40a876);if(!_0x49ea06&&!MYBATIS_DYNAMIC_TAGS['has'](_0x40a876))return invalidMybatisSource('Unsupported\x20MyBatis\x20XML\x20tag:\x20<'+_0x40a876+'>.');if(!_0x49ea06&&_0x1d3075!==_0x40a876)return invalidMybatisSource(_0x1f86db(0x1eb)+_0x1d3075+'>.');if(_0x509467){if(_0x381bfe[_0x1f86db(0x1f0)]()||_0xcae6cd)return invalidMybatisSource(_0x1f86db(0x1d2)+_0x1d3075+'>.');const _0x47e6ee=_0x49d3eb['at'](-0x1);if(!_0x47e6ee||(_0x47e6ee[_0x1f86db(0x1d8)]?_0x47e6ee[_0x1f86db(0x201)]!==_0x40a876:_0x47e6ee[_0x1f86db(0x1e9)]!==_0x1d3075))return invalidMybatisSource('Mismatched\x20MyBatis\x20XML\x20closing\x20tag:\x20</'+_0x1d3075+'>.');_0x49d3eb['pop']();if(_0x47e6ee[_0x1f86db(0x1d8)])_0x5dc76b=!![];_0x442a85+=MYBATIS_BRANCH_TAGS[_0x1f86db(0x1e0)](_0x40a876)?'\x20'+MYBATIS_DYNAMIC_END_MARKER+'\x20':'\x20';}else{if(!hasWellFormedXmlAttributes(_0x381bfe))return invalidMybatisSource(_0x1f86db(0x1bb)+_0x1d3075+'>.');if(_0x40a876===_0x1f86db(0x1d0)&&(!_0xcae6cd||_0x49d3eb['at'](-0x1)?.[_0x1f86db(0x201)]!==_0x1f86db(0x1f1)))return invalidMybatisSource(_0x1f86db(0x1e4));if(_0x49ea06){if(_0x45dd0f||_0x49d3eb[_0x1f86db(0x209)]>0x0)return invalidMybatisSource(_0x1f86db(0x1fb));_0x45dd0f=!![],_0x5dc76b=_0xcae6cd,_0x138d11=_0x49ea06;}else{if(!_0x45dd0f||_0x5dc76b)return invalidMybatisSource('MyBatis\x20dynamic\x20tag\x20must\x20be\x20inside\x20the\x20statement\x20wrapper:\x20<'+_0x1d3075+'>.');}_0x442a85+=_0x40a876==='where'?_0x1f86db(0x1fd):_0x40a876===_0x1f86db(0x1e6)?_0x1f86db(0x1f8):_0x40a876===_0x1f86db(0x1f1)?'\x20'+MYBATIS_INCLUDE_MARKER+'\x20':MYBATIS_BRANCH_TAGS[_0x1f86db(0x1e0)](_0x40a876)&&!_0xcae6cd?'\x20'+MYBATIS_DYNAMIC_START_MARKER+'\x20':'\x20',!_0xcae6cd&&_0x49d3eb['push']({'rawName':_0x1d3075,'tagName':_0x40a876,'outer':!!_0x49ea06});}_0x44c66e=_0x4ff802+0x1;}if(_0x49d3eb['length']>0x0)return invalidMybatisSource(_0x1f86db(0x1ea)+_0x49d3eb['at'](-0x1)?.[_0x1f86db(0x1e9)]+'>.');if(!_0x45dd0f||!_0x5dc76b)return invalidMybatisSource(_0x1f86db(0x211));return{'sql':_0x442a85[_0x1f86db(0x1f0)](),'mode':_0x1f86db(0x1de),..._0x138d11?{'statementType':_0x138d11}:{}};}function a241_0x1fb9(_0x5b87d8,_0x321511){_0x5b87d8=_0x5b87d8-0x1b7;const _0xd297cf=a241_0xd297();let _0x1fb975=_0xd297cf[_0x5b87d8];return _0x1fb975;}function hasWellFormedXmlAttributes(_0x143518){const _0x1c6004=a241_0x32208e;let _0x481a01=0x0;const _0xa03312=new Set();while(_0x481a01<_0x143518[_0x1c6004(0x209)]){while(_0x481a01<_0x143518['length']&&/\s/['test'](_0x143518[_0x481a01]??''))_0x481a01+=0x1;if(_0x481a01>=_0x143518[_0x1c6004(0x209)])return!![];const _0x36ccfd=/^[A-Za-z_:][\w:.-]*/[_0x1c6004(0x1f7)](_0x143518[_0x1c6004(0x1c1)](_0x481a01)),_0x31f355=_0x36ccfd?.[0x0];if(!_0x31f355||_0xa03312[_0x1c6004(0x1e0)](_0x31f355))return![];_0xa03312[_0x1c6004(0x1f5)](_0x31f355),_0x481a01+=_0x31f355[_0x1c6004(0x209)];while(_0x481a01<_0x143518[_0x1c6004(0x209)]&&/\s/[_0x1c6004(0x20f)](_0x143518[_0x481a01]??''))_0x481a01+=0x1;if(_0x143518[_0x481a01]!=='=')return![];_0x481a01+=0x1;while(_0x481a01<_0x143518['length']&&/\s/[_0x1c6004(0x20f)](_0x143518[_0x481a01]??''))_0x481a01+=0x1;const _0x3f9f38=_0x143518[_0x481a01];if(_0x3f9f38!=='\x22'&&_0x3f9f38!=='\x27')return![];_0x481a01+=0x1;const _0x598c69=_0x143518['indexOf'](_0x3f9f38,_0x481a01);if(_0x598c69<0x0)return![];if(decodeXmlEntities(_0x143518['slice'](_0x481a01,_0x598c69))===null)return![];_0x481a01=_0x598c69+0x1;}return!![];}function startsWithMybatisStatementWrapper(_0x326b17){const _0x31c970=a241_0x32208e;let _0x382782=0x0;const _0x32f6c5=()=>{const _0x1654ad=a241_0x1fb9;while(_0x382782<_0x326b17[_0x1654ad(0x209)]&&/\s/[_0x1654ad(0x20f)](_0x326b17[_0x382782]??''))_0x382782+=0x1;};_0x32f6c5();while(_0x382782<_0x326b17['length']){if(_0x326b17[_0x31c970(0x202)](_0x31c970(0x1be),_0x382782)){const _0x58ab9d=_0x326b17[_0x31c970(0x1b9)](_0x31c970(0x1c9),_0x382782+0x4);if(_0x58ab9d<0x0)return!![];_0x382782=_0x58ab9d+0x3,_0x32f6c5();continue;}if(_0x326b17[_0x31c970(0x202)]('<?',_0x382782)){const _0xa89323=_0x326b17[_0x31c970(0x1b9)]('?>',_0x382782+0x2);if(_0xa89323<0x0)return!![];_0x382782=_0xa89323+0x2,_0x32f6c5();continue;}break;}return MYBATIS_OUTER_TAG_PATTERN[_0x31c970(0x20f)](_0x326b17[_0x31c970(0x1c1)](_0x382782));}function invalidMybatisSource(_0x43e19e){const _0x22ff5d=a241_0x32208e;return{'sql':'','mode':_0x22ff5d(0x1de),'error':_0x43e19e};}function findXmlTagEnd(_0x39b034,_0x3e1cb0){const _0x189c64=a241_0x32208e;let _0x24ae87;for(let _0xdf28d=_0x3e1cb0+0x1;_0xdf28d<_0x39b034[_0x189c64(0x209)];_0xdf28d+=0x1){const _0x1e5d95=_0x39b034[_0xdf28d];if(_0x24ae87){if(_0x1e5d95===_0x24ae87)_0x24ae87=undefined;continue;}if(_0x1e5d95==='\x22'||_0x1e5d95==='\x27'){_0x24ae87=_0x1e5d95;continue;}if(_0x1e5d95==='>')return _0xdf28d;}return-0x1;}function decodeXmlEntities(_0x386901){const _0x51aff7=a241_0x32208e;let _0x262c03=![];const _0xcf767b=_0x386901[_0x51aff7(0x1f9)](/&(?:#x[0-9a-f]+;|#[0-9]+;|[A-Za-z_:][\w:.-]*;)?/g,_0x289dec=>{const _0x216eec=_0x51aff7;if(_0x289dec===_0x216eec(0x1d5))return'<';if(_0x289dec===_0x216eec(0x1b8))return'>';if(_0x289dec===_0x216eec(0x1d4))return'\x22';if(_0x289dec===_0x216eec(0x213))return'\x27';if(_0x289dec===_0x216eec(0x1fe))return'&';const _0x5babea=/^&#(?:x([0-9a-f]+)|([0-9]+));$/[_0x216eec(0x1f7)](_0x289dec);if(_0x5babea){const _0x157f35=_0x5babea[0x1],_0x2925bc=_0x5babea[0x2],_0x337ae3=Number[_0x216eec(0x205)](_0x157f35??_0x2925bc??'',_0x157f35?0x10:0xa);if(isValidXmlCharacter(_0x337ae3))return String[_0x216eec(0x1c5)](_0x337ae3);}return _0x262c03=!![],'';});return _0x262c03?null:_0xcf767b;}function isValidXmlCharacter(_0xdd22c9){return _0xdd22c9===0x9||_0xdd22c9===0xa||_0xdd22c9===0xd||_0xdd22c9>=0x20&&_0xdd22c9<=0xd7ff||_0xdd22c9>=0xe000&&_0xdd22c9<=0xfffd||_0xdd22c9>=0x10000&&_0xdd22c9<=0x10ffff;}export function detectSqlType(_0x5bb60b){return detectNormalizedSqlType(normalizeSqlForStaticAnalysis(_0x5bb60b));}function detectNormalizedSqlType(_0x5d59b1){const _0xd8364=a241_0x32208e;if(_0x5d59b1['error'])return{'type':'UNKNOWN','isSelectOnly':![],'isDangerous':![],'reason':_0x5d59b1[_0xd8364(0x1dd)]};if(!_0x5d59b1[_0xd8364(0x216)][_0xd8364(0x1f0)]())return{'type':_0xd8364(0x20a),'isSelectOnly':![],'isDangerous':![],'reason':_0xd8364(0x1c2)};const _0x15d0c8=stripStaticAnalysisMarkers(_0x5d59b1[_0xd8364(0x216)])[_0xd8364(0x1f9)](/#\{[^}]*\}/g,'?')['replace'](/\$\{[^}]*\}/g,'?')[_0xd8364(0x1f9)](/@[^(\s]+(\([^)]*\))?/g,'')[_0xd8364(0x1f9)](/\/\*[\s\S]*?\*\//g,'')[_0xd8364(0x1f0)](),_0x48b080=_0x15d0c8[_0xd8364(0x1cd)]('\x0a');let _0x205c92='';for(const _0x437f9a of _0x48b080){const _0x5b0715=_0x437f9a[_0xd8364(0x1f0)]();if(!_0x5b0715||_0x5b0715[_0xd8364(0x202)]('--')||_0x5b0715[_0xd8364(0x202)]('/*'))continue;_0x205c92=_0x5b0715;break;}const _0x379363=_0x205c92['toUpperCase'](),_0x9d0671=_0x5d59b1[_0xd8364(0x1c4)],_0x5811ff=maskSqlTextForBlockedKeywordScan(_0x15d0c8),_0x34fe86=/\b(DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i[_0xd8364(0x20f)](_0x5811ff);if(_0x9d0671===_0xd8364(0x1ba)||!_0x9d0671&&(_0x379363[_0xd8364(0x202)]('SELECT')||_0x379363['startsWith'](_0xd8364(0x1fc)))){const _0x4e8020=/\b(INSERT|UPDATE|DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i['test'](_0x15d0c8);return{'type':_0xd8364(0x1ba),'isSelectOnly':!_0x4e8020,'isDangerous':_0x4e8020,'reason':_0x4e8020?_0xd8364(0x1df):undefined};}if(_0x9d0671===_0xd8364(0x1ca)||!_0x9d0671&&_0x379363[_0xd8364(0x202)](_0xd8364(0x1ca)))return{'type':_0xd8364(0x1ca),'isSelectOnly':![],'isDangerous':_0x34fe86,'reason':_0x34fe86?'SQL\x20contains\x20blocked\x20DELETE\x20or\x20DDL\x20statements':undefined};if(_0x9d0671===_0xd8364(0x1bc)||!_0x9d0671&&_0x379363[_0xd8364(0x202)](_0xd8364(0x1bc)))return{'type':_0xd8364(0x1bc),'isSelectOnly':![],'isDangerous':_0x34fe86,'reason':_0x34fe86?_0xd8364(0x1bf):undefined};if(_0x9d0671==='DELETE'||!_0x9d0671&&_0x379363[_0xd8364(0x202)](_0xd8364(0x1b7)))return{'type':'DELETE','isSelectOnly':![],'isDangerous':!![],'reason':'DELETE\x20statements\x20are\x20blocked\x20from\x20auto-save'};if(/^(CREATE|ALTER|DROP|TRUNCATE)/i[_0xd8364(0x20f)](_0x379363))return{'type':_0xd8364(0x1c8),'isSelectOnly':![],'isDangerous':!![],'reason':_0xd8364(0x1c7)};return{'type':'UNKNOWN','isSelectOnly':![],'isDangerous':![]};}function stripStaticAnalysisMarkers(_0x1b12ad){const _0x4bfbbb=a241_0x32208e;return _0x1b12ad['replaceAll'](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x4bfbbb(0x207)](MYBATIS_DYNAMIC_END_MARKER,'\x20')['replaceAll'](MYBATIS_INCLUDE_MARKER,'\x20'+UNRESOLVED_SQL_FRAGMENT+'\x20');}function maskSqlTextForBlockedKeywordScan(_0x2afd3e){const _0x201bb2=a241_0x32208e;return _0x2afd3e[_0x201bb2(0x1f9)](/'(?:''|\\.|[^'])*'/g,'\x20')[_0x201bb2(0x1f9)](/"(?:""|\\.|[^"])*"/g,'\x20')['replace'](/`(?:``|\\.|[^`])*`/g,'\x20')[_0x201bb2(0x1f9)](/--.*$/gm,'\x20')['replace'](/#.*$/gm,'\x20')[_0x201bb2(0x1f9)](/\/\*[\s\S]*?\*\//g,'\x20');}function extractTables(_0x4fb261){const _0x454b7d=a241_0x32208e,_0x30579a=_0x4fb261[_0x454b7d(0x1f9)](/#\{[^}]*\}/g,'?')['replace'](/\$\{[^}]*\}/g,'?')[_0x454b7d(0x1f9)](/'[^']*'/g,'\x27\x27')[_0x454b7d(0x1f9)](/--.*$/gm,'')['replace'](/\/\*[\s\S]*?\*\//g,''),_0x4487f5=[],_0x221c5e=_0x30579a[_0x454b7d(0x20b)](/FROM\s+([^\s,)(]+)/i);addTable(_0x4487f5,_0x221c5e?.[0x1]);for(const _0x5cdd98 of _0x30579a[_0x454b7d(0x1d9)](/(?:INNER|LEFT|RIGHT|FULL|CROSS)?\s*JOIN\s+([^\s,)(]+)/gi)){addTable(_0x4487f5,_0x5cdd98[0x1]);}const _0x30c189=_0x30579a[_0x454b7d(0x20b)](/INTO\s+([^\s(]+)/i);addTable(_0x4487f5,_0x30c189?.[0x1]);const _0x440c0e=_0x30579a[_0x454b7d(0x20b)](/UPDATE\s+([^\s,)(]+)/i);return addTable(_0x4487f5,_0x440c0e?.[0x1]),_0x4487f5;}function addTable(_0x305b7f,_0x98aaa4){const _0x16c750=a241_0x32208e,_0x436c8d=_0x98aaa4?.[_0x16c750(0x1f9)](/[`"]/g,'');_0x436c8d&&_0x436c8d!==UNRESOLVED_SQL_FRAGMENT&&!_0x305b7f[_0x16c750(0x204)](_0x436c8d)&&_0x305b7f[_0x16c750(0x1e8)](_0x436c8d);}function extractParameters(_0x84b8d3){const _0x297667=new Set();for(const _0x4ffa26 of _0x84b8d3['matchAll'](/[#$]\{\s*([A-Za-z_][\w.]*)\s*(?=[,}])/g)){if(_0x4ffa26[0x1])_0x297667['add'](_0x4ffa26[0x1]);}return Array['from'](_0x297667);}export function validateSql(_0x250faa){const _0x2b9493=a241_0x32208e,_0x3cbcbe=normalizeSqlForStaticAnalysis(_0x250faa),_0x42bbd3=detectNormalizedSqlType(_0x3cbcbe),_0xad71fc=stripStaticAnalysisMarkers(_0x3cbcbe[_0x2b9493(0x216)]),_0x5f06c8=_0x3cbcbe[_0x2b9493(0x1dd)]?[]:extractTables(_0xad71fc),_0x6fb5ef=_0x3cbcbe[_0x2b9493(0x1dd)]?[]:extractParameters(_0xad71fc);if(_0x42bbd3[_0x2b9493(0x1db)])return{'valid':![],'sqlType':_0x42bbd3,'tables':_0x5f06c8,'parameters':_0x6fb5ef,'message':_0x42bbd3[_0x2b9493(0x1d1)]||_0x42bbd3[_0x2b9493(0x206)]+'\x20statements\x20cannot\x20be\x20auto-saved.\x20Please\x20operate\x20manually\x20on\x20the\x20platform.'};if(_0x42bbd3[_0x2b9493(0x206)]==='UNKNOWN')return{'valid':![],'sqlType':_0x42bbd3,'tables':_0x5f06c8,'parameters':_0x6fb5ef,'message':_0x3cbcbe[_0x2b9493(0x1dd)]?_0x2b9493(0x20d)+_0x3cbcbe[_0x2b9493(0x1dd)]:'Unable\x20to\x20detect\x20SQL\x20type.\x20Please\x20check\x20the\x20SQL\x20content.'};return{'valid':!![],'sqlType':_0x42bbd3,'tables':_0x5f06c8,'parameters':_0x6fb5ef,'message':_0x42bbd3['type']+_0x2b9493(0x203)+(_0x5f06c8[_0x2b9493(0x209)]?_0x5f06c8[_0x2b9493(0x1f2)](',\x20'):_0x2b9493(0x1c0))+(_0x6fb5ef['length']?_0x2b9493(0x1fa)+_0x6fb5ef[_0x2b9493(0x1f2)](',\x20'):'')};}
|
|
1
|
+
const a243_0x4d64fe=a243_0x3628;(function(_0x546171,_0x35c77e){const _0x3ed1a7=a243_0x3628,_0x596242=_0x546171();while(!![]){try{const _0x23da79=-parseInt(_0x3ed1a7(0xd0))/0x1*(-parseInt(_0x3ed1a7(0x82))/0x2)+-parseInt(_0x3ed1a7(0x7c))/0x3+parseInt(_0x3ed1a7(0x81))/0x4+-parseInt(_0x3ed1a7(0xd2))/0x5*(parseInt(_0x3ed1a7(0xb4))/0x6)+parseInt(_0x3ed1a7(0xaa))/0x7+parseInt(_0x3ed1a7(0x79))/0x8*(parseInt(_0x3ed1a7(0x87))/0x9)+-parseInt(_0x3ed1a7(0x7b))/0xa;if(_0x23da79===_0x35c77e)break;else _0x596242['push'](_0x596242['shift']());}catch(_0x3b2260){_0x596242['push'](_0x596242['shift']());}}}(a243_0x2456,0xcd450));const MYBATIS_OUTER_TAGS=new Map([['select','SELECT'],[a243_0x4d64fe(0xc3),a243_0x4d64fe(0x90)],['update','UPDATE'],[a243_0x4d64fe(0xa8),a243_0x4d64fe(0xd5)]]),MYBATIS_DYNAMIC_TAGS=new Set(['if',a243_0x4d64fe(0x91),a243_0x4d64fe(0xc5),a243_0x4d64fe(0xc2),a243_0x4d64fe(0xa1),a243_0x4d64fe(0xaf),'trim',a243_0x4d64fe(0x93),a243_0x4d64fe(0xd1),'include',a243_0x4d64fe(0x92)]),MYBATIS_BRANCH_TAGS=new Set(['if',a243_0x4d64fe(0xc5),a243_0x4d64fe(0xc2),a243_0x4d64fe(0xa1),a243_0x4d64fe(0xaf)]);export const MYBATIS_DYNAMIC_START_MARKER=a243_0x4d64fe(0x88);export const MYBATIS_DYNAMIC_END_MARKER='__RABETBASE_MYBATIS_DYNAMIC_END__';export const MYBATIS_INCLUDE_MARKER=a243_0x4d64fe(0xcd);const UNRESOLVED_SQL_FRAGMENT=a243_0x4d64fe(0xa7),MYBATIS_OUTER_TAG_PATTERN=new RegExp(a243_0x4d64fe(0xbd)+[...MYBATIS_OUTER_TAGS[a243_0x4d64fe(0x95)]()]['join']('|')+a243_0x4d64fe(0xc8),'i');function a243_0x3628(_0x4ad137,_0x4f7bab){_0x4ad137=_0x4ad137-0x76;const _0x2456a5=a243_0x2456();let _0x3628d6=_0x2456a5[_0x4ad137];return _0x3628d6;}export function normalizeSqlForStaticAnalysis(_0x4a2729){const _0x21089f=a243_0x4d64fe,_0x510afa=typeof _0x4a2729===_0x21089f(0xb8)?_0x4a2729:'';if(!startsWithMybatisStatementWrapper(_0x510afa))return{'sql':_0x510afa,'mode':_0x21089f(0x9a)};let _0x417812=0x0,_0x3790ae='',_0x28a09f,_0x5465ed=![],_0x1815d2=![];const _0x5d189f=[];while(_0x417812<_0x510afa[_0x21089f(0xa4)]){if(_0x510afa['startsWith'](_0x21089f(0xab),_0x417812)){const _0x513f63=_0x510afa[_0x21089f(0xbf)]('-->',_0x417812+0x4);if(_0x513f63<0x0)return invalidMybatisSource('Unterminated\x20XML\x20comment.');_0x3790ae+='\x20',_0x417812=_0x513f63+0x3;continue;}if(_0x510afa[_0x21089f(0xd4)](_0x21089f(0xbb),_0x417812)){if(!_0x5465ed||_0x1815d2)return invalidMybatisSource('CDATA\x20sections\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.');const _0x4e2490=_0x510afa[_0x21089f(0xbf)](_0x21089f(0xce),_0x417812+0x9);if(_0x4e2490<0x0)return invalidMybatisSource('Unterminated\x20CDATA\x20section.');_0x3790ae+=_0x510afa['slice'](_0x417812+0x9,_0x4e2490),_0x417812=_0x4e2490+0x3;continue;}if(_0x510afa[_0x21089f(0xd4)]('<?',_0x417812)){if(_0x5465ed)return invalidMybatisSource(_0x21089f(0xb6));const _0x4240fb=_0x510afa[_0x21089f(0xbf)]('?>',_0x417812+0x2);if(_0x4240fb<0x0)return invalidMybatisSource(_0x21089f(0xa0));_0x3790ae+='\x20',_0x417812=_0x4240fb+0x2;continue;}if(_0x510afa[_0x417812]!=='<'){const _0x36c9ad=_0x510afa[_0x21089f(0xbf)]('<',_0x417812),_0x35612f=_0x36c9ad<0x0?_0x510afa[_0x21089f(0xa4)]:_0x36c9ad,_0x45af2a=_0x510afa[_0x21089f(0xb2)](_0x417812,_0x35612f);if((!_0x5465ed||_0x1815d2)&&_0x45af2a[_0x21089f(0xc0)]())return invalidMybatisSource(_0x21089f(0xb9));if(_0x5465ed&&!_0x1815d2){const _0x57e581=decodeXmlEntities(_0x45af2a);if(_0x57e581===null)return invalidMybatisSource('Invalid\x20XML\x20entity\x20reference.');_0x3790ae+=_0x57e581;}else _0x3790ae+='\x20';_0x417812=_0x35612f;continue;}const _0x1b31c5=findXmlTagEnd(_0x510afa,_0x417812);if(_0x1b31c5<0x0)return invalidMybatisSource(_0x21089f(0xa9));const _0x11b065=_0x510afa['slice'](_0x417812,_0x1b31c5+0x1),_0x2451c3=/^<\s*(\/?)\s*([A-Za-z][\w:-]*)([\s\S]*?)(\/?)\s*>$/[_0x21089f(0xb0)](_0x11b065);if(!_0x2451c3)return invalidMybatisSource(_0x21089f(0x8e));const _0x5048cf=_0x2451c3[0x1]==='/',_0x4374b8=_0x2451c3[0x2]??'',_0x2871e3=_0x4374b8[_0x21089f(0x7d)](),_0x599884=_0x2451c3[0x3]??'',_0x29b33d=_0x2451c3[0x4]==='/',_0x1a748c=MYBATIS_OUTER_TAGS['get'](_0x2871e3);if(!_0x1a748c&&!MYBATIS_DYNAMIC_TAGS[_0x21089f(0x76)](_0x2871e3))return invalidMybatisSource(_0x21089f(0xc1)+_0x2871e3+'>.');if(!_0x1a748c&&_0x4374b8!==_0x2871e3)return invalidMybatisSource(_0x21089f(0x78)+_0x4374b8+'>.');if(_0x5048cf){if(_0x599884[_0x21089f(0xc0)]()||_0x29b33d)return invalidMybatisSource(_0x21089f(0x96)+_0x4374b8+'>.');const _0x1ee3dd=_0x5d189f['at'](-0x1);if(!_0x1ee3dd||(_0x1ee3dd[_0x21089f(0xc9)]?_0x1ee3dd[_0x21089f(0xae)]!==_0x2871e3:_0x1ee3dd[_0x21089f(0x80)]!==_0x4374b8))return invalidMybatisSource(_0x21089f(0xcb)+_0x4374b8+'>.');_0x5d189f[_0x21089f(0xb5)]();if(_0x1ee3dd[_0x21089f(0xc9)])_0x1815d2=!![];_0x3790ae+=MYBATIS_BRANCH_TAGS[_0x21089f(0x76)](_0x2871e3)?'\x20'+MYBATIS_DYNAMIC_END_MARKER+'\x20':'\x20';}else{if(!hasWellFormedXmlAttributes(_0x599884))return invalidMybatisSource(_0x21089f(0xbe)+_0x4374b8+'>.');if(_0x2871e3===_0x21089f(0x92)&&(!_0x29b33d||_0x5d189f['at'](-0x1)?.[_0x21089f(0xae)]!==_0x21089f(0xca)))return invalidMybatisSource('MyBatis\x20<property>\x20must\x20be\x20a\x20self-closing\x20direct\x20child\x20of\x20<include>.');if(_0x1a748c){if(_0x5465ed||_0x5d189f[_0x21089f(0xa4)]>0x0)return invalidMybatisSource(_0x21089f(0x94));_0x5465ed=!![],_0x1815d2=_0x29b33d,_0x28a09f=_0x1a748c;}else{if(!_0x5465ed||_0x1815d2)return invalidMybatisSource(_0x21089f(0xcf)+_0x4374b8+'>.');}_0x3790ae+=_0x2871e3===_0x21089f(0x91)?_0x21089f(0x83):_0x2871e3===_0x21089f(0x93)?_0x21089f(0xad):_0x2871e3===_0x21089f(0xca)?'\x20'+MYBATIS_INCLUDE_MARKER+'\x20':MYBATIS_BRANCH_TAGS['has'](_0x2871e3)&&!_0x29b33d?'\x20'+MYBATIS_DYNAMIC_START_MARKER+'\x20':'\x20',!_0x29b33d&&_0x5d189f[_0x21089f(0x89)]({'rawName':_0x4374b8,'tagName':_0x2871e3,'outer':!!_0x1a748c});}_0x417812=_0x1b31c5+0x1;}if(_0x5d189f['length']>0x0)return invalidMybatisSource(_0x21089f(0x9b)+_0x5d189f['at'](-0x1)?.['rawName']+'>.');if(!_0x5465ed||!_0x1815d2)return invalidMybatisSource('MyBatis\x20XML\x20must\x20contain\x20exactly\x20one\x20complete\x20statement\x20wrapper.');return{'sql':_0x3790ae[_0x21089f(0xc0)](),'mode':_0x21089f(0x77),..._0x28a09f?{'statementType':_0x28a09f}:{}};}function hasWellFormedXmlAttributes(_0x54b7c0){const _0x2bcdbf=a243_0x4d64fe;let _0x9c8596=0x0;const _0x6c0bde=new Set();while(_0x9c8596<_0x54b7c0['length']){while(_0x9c8596<_0x54b7c0[_0x2bcdbf(0xa4)]&&/\s/[_0x2bcdbf(0xc7)](_0x54b7c0[_0x9c8596]??''))_0x9c8596+=0x1;if(_0x9c8596>=_0x54b7c0[_0x2bcdbf(0xa4)])return!![];const _0x28f602=/^[A-Za-z_:][\w:.-]*/[_0x2bcdbf(0xb0)](_0x54b7c0[_0x2bcdbf(0xb2)](_0x9c8596)),_0x3ec2fe=_0x28f602?.[0x0];if(!_0x3ec2fe||_0x6c0bde['has'](_0x3ec2fe))return![];_0x6c0bde['add'](_0x3ec2fe),_0x9c8596+=_0x3ec2fe[_0x2bcdbf(0xa4)];while(_0x9c8596<_0x54b7c0[_0x2bcdbf(0xa4)]&&/\s/[_0x2bcdbf(0xc7)](_0x54b7c0[_0x9c8596]??''))_0x9c8596+=0x1;if(_0x54b7c0[_0x9c8596]!=='=')return![];_0x9c8596+=0x1;while(_0x9c8596<_0x54b7c0[_0x2bcdbf(0xa4)]&&/\s/['test'](_0x54b7c0[_0x9c8596]??''))_0x9c8596+=0x1;const _0x502b29=_0x54b7c0[_0x9c8596];if(_0x502b29!=='\x22'&&_0x502b29!=='\x27')return![];_0x9c8596+=0x1;const _0x2e3448=_0x54b7c0[_0x2bcdbf(0xbf)](_0x502b29,_0x9c8596);if(_0x2e3448<0x0)return![];if(decodeXmlEntities(_0x54b7c0['slice'](_0x9c8596,_0x2e3448))===null)return![];_0x9c8596=_0x2e3448+0x1;}return!![];}function startsWithMybatisStatementWrapper(_0x276376){const _0x24c7ee=a243_0x4d64fe;let _0x52119d=0x0;const _0x543621=()=>{while(_0x52119d<_0x276376['length']&&/\s/['test'](_0x276376[_0x52119d]??''))_0x52119d+=0x1;};_0x543621();while(_0x52119d<_0x276376['length']){if(_0x276376[_0x24c7ee(0xd4)]('<!--',_0x52119d)){const _0x43a6a9=_0x276376[_0x24c7ee(0xbf)](_0x24c7ee(0x9d),_0x52119d+0x4);if(_0x43a6a9<0x0)return!![];_0x52119d=_0x43a6a9+0x3,_0x543621();continue;}if(_0x276376[_0x24c7ee(0xd4)]('<?',_0x52119d)){const _0x4b6bcf=_0x276376[_0x24c7ee(0xbf)]('?>',_0x52119d+0x2);if(_0x4b6bcf<0x0)return!![];_0x52119d=_0x4b6bcf+0x2,_0x543621();continue;}break;}return MYBATIS_OUTER_TAG_PATTERN[_0x24c7ee(0xc7)](_0x276376[_0x24c7ee(0xb2)](_0x52119d));}function invalidMybatisSource(_0x59743a){return{'sql':'','mode':'mybatisXml','error':_0x59743a};}function findXmlTagEnd(_0xad012e,_0x5dac77){const _0x334c58=a243_0x4d64fe;let _0x17a347;for(let _0x2e1d0f=_0x5dac77+0x1;_0x2e1d0f<_0xad012e[_0x334c58(0xa4)];_0x2e1d0f+=0x1){const _0x18cccf=_0xad012e[_0x2e1d0f];if(_0x17a347){if(_0x18cccf===_0x17a347)_0x17a347=undefined;continue;}if(_0x18cccf==='\x22'||_0x18cccf==='\x27'){_0x17a347=_0x18cccf;continue;}if(_0x18cccf==='>')return _0x2e1d0f;}return-0x1;}function a243_0x2456(){const _0x31f907=['SQL\x20content\x20is\x20empty','slice','from','602124qUNHgd','pop','XML\x20declarations\x20must\x20precede\x20the\x20MyBatis\x20statement\x20wrapper.','SELECT','string','SQL\x20text\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.','SQL\x20contains\x20blocked\x20DELETE\x20or\x20DDL\x20statements','<![CDATA[','fromCodePoint','^<\x5cs*(?:','Invalid\x20attributes\x20on\x20MyBatis\x20XML\x20tag:\x20<','indexOf','trim','Unsupported\x20MyBatis\x20XML\x20tag:\x20<','choose','insert','"','foreach','\x20statements\x20cannot\x20be\x20auto-saved.\x20Please\x20operate\x20manually\x20on\x20the\x20platform.','test',')\x5cb','outer','include','Mismatched\x20MyBatis\x20XML\x20closing\x20tag:\x20</','UPDATE','__RABETBASE_MYBATIS_INCLUDE_UNRESOLVED__',']]>','MyBatis\x20dynamic\x20tag\x20must\x20be\x20inside\x20the\x20statement\x20wrapper:\x20<','6059VRFnTt','bind','70ikOitP','>','startsWith','DELETE','has','mybatisXml','MyBatis\x20dynamic\x20tag\x20names\x20must\x20be\x20lowercase:\x20<','1480OQpWeb','error','12490980ALPkHp','204165XOtFTF','toLowerCase','DELETE\x20statements\x20are\x20blocked\x20from\x20auto-save','\x20with\x20parameters:\x20','rawName','2755300UhSZir','444qzIqUD','\x20WHERE\x20','<','WITH','\x20query\x20targeting\x20','37944Gliroe','__RABETBASE_MYBATIS_DYNAMIC_START__','push','statementType','DDL\x20statements\x20are\x20blocked\x20from\x20auto-save','join','match','Invalid\x20MyBatis\x20XML\x20tag.','replace','INSERT','where','property','set','Multiple\x20MyBatis\x20statement\x20wrappers\x20are\x20not\x20supported.','keys','Invalid\x20MyBatis\x20XML\x20closing\x20tag:\x20</','toUpperCase','matchAll','&','sql','Unclosed\x20MyBatis\x20XML\x20tag:\x20<',''','-->','type','UNKNOWN','Unterminated\x20XML\x20declaration.','when','DDL','Unable\x20to\x20detect\x20SQL\x20type.\x20','length','split','includes','__RABETBASE_UNRESOLVED_SQL_FRAGMENT__','delete','Unterminated\x20MyBatis\x20XML\x20tag.','5243070WyzcuQ','<!--','isDangerous','\x20SET\x20','tagName','otherwise','exec'];a243_0x2456=function(){return _0x31f907;};return a243_0x2456();}function decodeXmlEntities(_0x4deb27){const _0x46a869=a243_0x4d64fe;let _0x1ef705=![];const _0xbbf344=_0x4deb27[_0x46a869(0x8f)](/&(?:#x[0-9a-f]+;|#[0-9]+;|[A-Za-z_:][\w:.-]*;)?/g,_0x20d19a=>{const _0x2836f3=_0x46a869;if(_0x20d19a===_0x2836f3(0x84))return'<';if(_0x20d19a===_0x2836f3(0xd3))return'>';if(_0x20d19a===_0x2836f3(0xc4))return'\x22';if(_0x20d19a===_0x2836f3(0x9c))return'\x27';if(_0x20d19a===_0x2836f3(0x99))return'&';const _0x3f6b74=/^&#(?:x([0-9a-f]+)|([0-9]+));$/['exec'](_0x20d19a);if(_0x3f6b74){const _0x339271=_0x3f6b74[0x1],_0x134856=_0x3f6b74[0x2],_0x15e97f=Number['parseInt'](_0x339271??_0x134856??'',_0x339271?0x10:0xa);if(isValidXmlCharacter(_0x15e97f))return String[_0x2836f3(0xbc)](_0x15e97f);}return _0x1ef705=!![],'';});return _0x1ef705?null:_0xbbf344;}function isValidXmlCharacter(_0x1d4782){return _0x1d4782===0x9||_0x1d4782===0xa||_0x1d4782===0xd||_0x1d4782>=0x20&&_0x1d4782<=0xd7ff||_0x1d4782>=0xe000&&_0x1d4782<=0xfffd||_0x1d4782>=0x10000&&_0x1d4782<=0x10ffff;}export function detectSqlType(_0x55b29b){return detectNormalizedSqlType(normalizeSqlForStaticAnalysis(_0x55b29b));}function detectNormalizedSqlType(_0x35eb41){const _0x232333=a243_0x4d64fe;if(_0x35eb41[_0x232333(0x7a)])return{'type':_0x232333(0x9f),'isSelectOnly':![],'isDangerous':![],'reason':_0x35eb41[_0x232333(0x7a)]};if(!_0x35eb41['sql'][_0x232333(0xc0)]())return{'type':_0x232333(0x9f),'isSelectOnly':![],'isDangerous':![],'reason':_0x232333(0xb1)};const _0x43a2df=stripStaticAnalysisMarkers(_0x35eb41[_0x232333(0x9a)])[_0x232333(0x8f)](/#\{[^}]*\}/g,'?')[_0x232333(0x8f)](/\$\{[^}]*\}/g,'?')['replace'](/@[^(\s]+(\([^)]*\))?/g,'')['replace'](/\/\*[\s\S]*?\*\//g,'')[_0x232333(0xc0)](),_0x5d193f=_0x43a2df[_0x232333(0xa5)]('\x0a');let _0x2530fe='';for(const _0x470743 of _0x5d193f){const _0x1e792c=_0x470743['trim']();if(!_0x1e792c||_0x1e792c[_0x232333(0xd4)]('--')||_0x1e792c['startsWith']('/*'))continue;_0x2530fe=_0x1e792c;break;}const _0x4e681b=_0x2530fe[_0x232333(0x97)](),_0xed2b52=_0x35eb41[_0x232333(0x8a)],_0xf6f03d=maskSqlTextForBlockedKeywordScan(_0x43a2df),_0x3153e4=/\b(DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i[_0x232333(0xc7)](_0xf6f03d);if(_0xed2b52===_0x232333(0xb7)||!_0xed2b52&&(_0x4e681b[_0x232333(0xd4)](_0x232333(0xb7))||_0x4e681b[_0x232333(0xd4)](_0x232333(0x85)))){const _0x3b5d0d=/\b(INSERT|UPDATE|DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i[_0x232333(0xc7)](_0x43a2df);return{'type':_0x232333(0xb7),'isSelectOnly':!_0x3b5d0d,'isDangerous':_0x3b5d0d,'reason':_0x3b5d0d?'SQL\x20contains\x20modification\x20statements\x20alongside\x20SELECT':undefined};}if(_0xed2b52===_0x232333(0x90)||!_0xed2b52&&_0x4e681b[_0x232333(0xd4)](_0x232333(0x90)))return{'type':_0x232333(0x90),'isSelectOnly':![],'isDangerous':_0x3153e4,'reason':_0x3153e4?_0x232333(0xba):undefined};if(_0xed2b52===_0x232333(0xcc)||!_0xed2b52&&_0x4e681b['startsWith'](_0x232333(0xcc)))return{'type':'UPDATE','isSelectOnly':![],'isDangerous':_0x3153e4,'reason':_0x3153e4?_0x232333(0xba):undefined};if(_0xed2b52===_0x232333(0xd5)||!_0xed2b52&&_0x4e681b[_0x232333(0xd4)](_0x232333(0xd5)))return{'type':_0x232333(0xd5),'isSelectOnly':![],'isDangerous':!![],'reason':_0x232333(0x7e)};if(/^(CREATE|ALTER|DROP|TRUNCATE)/i['test'](_0x4e681b))return{'type':_0x232333(0xa2),'isSelectOnly':![],'isDangerous':!![],'reason':_0x232333(0x8b)};return{'type':_0x232333(0x9f),'isSelectOnly':![],'isDangerous':![]};}function stripStaticAnalysisMarkers(_0x5c7e31){return _0x5c7e31['replaceAll'](MYBATIS_DYNAMIC_START_MARKER,'\x20')['replaceAll'](MYBATIS_DYNAMIC_END_MARKER,'\x20')['replaceAll'](MYBATIS_INCLUDE_MARKER,'\x20'+UNRESOLVED_SQL_FRAGMENT+'\x20');}function maskSqlTextForBlockedKeywordScan(_0x2398d0){const _0x1832f0=a243_0x4d64fe;return _0x2398d0[_0x1832f0(0x8f)](/'(?:''|\\.|[^'])*'/g,'\x20')['replace'](/"(?:""|\\.|[^"])*"/g,'\x20')['replace'](/`(?:``|\\.|[^`])*`/g,'\x20')[_0x1832f0(0x8f)](/--.*$/gm,'\x20')['replace'](/#.*$/gm,'\x20')['replace'](/\/\*[\s\S]*?\*\//g,'\x20');}function extractTables(_0x399443){const _0x42a440=a243_0x4d64fe,_0x27ccfd=_0x399443[_0x42a440(0x8f)](/#\{[^}]*\}/g,'?')[_0x42a440(0x8f)](/\$\{[^}]*\}/g,'?')[_0x42a440(0x8f)](/'[^']*'/g,'\x27\x27')['replace'](/--.*$/gm,'')[_0x42a440(0x8f)](/\/\*[\s\S]*?\*\//g,''),_0x199a50=[],_0x4f3929=_0x27ccfd[_0x42a440(0x8d)](/FROM\s+([^\s,)(]+)/i);addTable(_0x199a50,_0x4f3929?.[0x1]);for(const _0x12da23 of _0x27ccfd[_0x42a440(0x98)](/(?:INNER|LEFT|RIGHT|FULL|CROSS)?\s*JOIN\s+([^\s,)(]+)/gi)){addTable(_0x199a50,_0x12da23[0x1]);}const _0x431747=_0x27ccfd[_0x42a440(0x8d)](/INTO\s+([^\s(]+)/i);addTable(_0x199a50,_0x431747?.[0x1]);const _0x1970d6=_0x27ccfd['match'](/UPDATE\s+([^\s,)(]+)/i);return addTable(_0x199a50,_0x1970d6?.[0x1]),_0x199a50;}function addTable(_0x2ea67f,_0x19ddef){const _0x3d7181=a243_0x4d64fe,_0x50b9b1=_0x19ddef?.['replace'](/[`"]/g,'');_0x50b9b1&&_0x50b9b1!==UNRESOLVED_SQL_FRAGMENT&&!_0x2ea67f[_0x3d7181(0xa6)](_0x50b9b1)&&_0x2ea67f['push'](_0x50b9b1);}function extractParameters(_0x1c43ad){const _0x2e3151=a243_0x4d64fe,_0x1cc05a=new Set();for(const _0x12c005 of _0x1c43ad[_0x2e3151(0x98)](/[#$]\{\s*([A-Za-z_][\w.]*)\s*(?=[,}])/g)){if(_0x12c005[0x1])_0x1cc05a['add'](_0x12c005[0x1]);}return Array[_0x2e3151(0xb3)](_0x1cc05a);}export function validateSql(_0xd8336f){const _0x1d2b27=a243_0x4d64fe,_0xfd080a=normalizeSqlForStaticAnalysis(_0xd8336f),_0x439230=detectNormalizedSqlType(_0xfd080a),_0x108df4=stripStaticAnalysisMarkers(_0xfd080a[_0x1d2b27(0x9a)]),_0x836cdb=_0xfd080a['error']?[]:extractTables(_0x108df4),_0x3ae3cf=_0xfd080a['error']?[]:extractParameters(_0x108df4);if(_0x439230[_0x1d2b27(0xac)])return{'valid':![],'sqlType':_0x439230,'tables':_0x836cdb,'parameters':_0x3ae3cf,'message':_0x439230['reason']||_0x439230[_0x1d2b27(0x9e)]+_0x1d2b27(0xc6)};if(_0x439230['type']===_0x1d2b27(0x9f))return{'valid':![],'sqlType':_0x439230,'tables':_0x836cdb,'parameters':_0x3ae3cf,'message':_0xfd080a[_0x1d2b27(0x7a)]?_0x1d2b27(0xa3)+_0xfd080a['error']:'Unable\x20to\x20detect\x20SQL\x20type.\x20Please\x20check\x20the\x20SQL\x20content.'};return{'valid':!![],'sqlType':_0x439230,'tables':_0x836cdb,'parameters':_0x3ae3cf,'message':_0x439230[_0x1d2b27(0x9e)]+_0x1d2b27(0x86)+(_0x836cdb[_0x1d2b27(0xa4)]?_0x836cdb[_0x1d2b27(0x8c)](',\x20'):'unknown\x20table(s)')+(_0x3ae3cf[_0x1d2b27(0xa4)]?_0x1d2b27(0x7f)+_0x3ae3cf['join'](',\x20'):'')};}
|
package/lib/errors.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a244_0x5b0069=a244_0x8e99;function a244_0x1dbc(){const _0x3b01d6=['\x20project\x20directory','9UvVFtm','4LQChAN','Network\x20error:\x20','\x20workspace\x20init\x20--appcode\x20<code>`\x20or\x20pass\x20--appcode.\x0a\x20\x20\x20\x20\x20\x20\x20Tip:\x20`','5132485tviUro','11717486UJGnlh','Run\x20this\x20command\x20inside\x20a\x20project\x20with\x20.rabetbase.json\x20file.','Run\x20`','\x20--help`\x20to\x20see\x20available\x20commands.','3013PrHTPf','Missing\x20required\x20flag:\x20--','flag_missing','apiError','3655120okSIgu','Check\x20your\x20internet\x20connection\x20and\x20try\x20again.','1958148njmRWB','7096704KorOrW','unknown_command','6lRBlUv','network_error','\x20auth`\x20to\x20login\x20first.','Configuration\x20file\x20not\x20found','12MLsePN','258yzuHQa','Authentication\x20required','2188921ISSPko'];a244_0x1dbc=function(){return _0x3b01d6;};return a244_0x1dbc();}function a244_0x8e99(_0x3133c1,_0x14555a){_0x3133c1=_0x3133c1-0x1d6;const _0x1dbc29=a244_0x1dbc();let _0x8e995a=_0x1dbc29[_0x3133c1];return _0x8e995a;}(function(_0x3c82e2,_0x3dba14){const _0x1cb05a=a244_0x8e99,_0x17f700=_0x3c82e2();while(!![]){try{const _0x2e7084=-parseInt(_0x1cb05a(0x1e7))/0x1*(-parseInt(_0x1cb05a(0x1da))/0x2)+-parseInt(_0x1cb05a(0x1ed))/0x3+-parseInt(_0x1cb05a(0x1df))/0x4*(parseInt(_0x1cb05a(0x1e2))/0x5)+-parseInt(_0x1cb05a(0x1f0))/0x6*(-parseInt(_0x1cb05a(0x1dc))/0x7)+parseInt(_0x1cb05a(0x1ee))/0x8+-parseInt(_0x1cb05a(0x1de))/0x9*(parseInt(_0x1cb05a(0x1eb))/0xa)+parseInt(_0x1cb05a(0x1e3))/0xb*(parseInt(_0x1cb05a(0x1d9))/0xc);if(_0x2e7084===_0x3dba14)break;else _0x17f700['push'](_0x17f700['shift']());}catch(_0x5d3f18){_0x17f700['push'](_0x17f700['shift']());}}}(a244_0x1dbc,0x94ac9));import{CliError,createCliErrors}from'@lovrabet/cli-framework';import{CLI_BIN_NAME}from'./constant/cli.js';export{CliError};const baseCliErrors=createCliErrors({'cliBinName':CLI_BIN_NAME,'authRequiredHint':a244_0x5b0069(0x1e5)+CLI_BIN_NAME+a244_0x5b0069(0x1d7),'configMissingHint':'Set\x20appcode\x20via\x20`'+CLI_BIN_NAME+'\x20workspace\x20init\x20--appcode\x20<code>`\x20or\x20pass\x20--appcode.\x0a\x20\x20\x20\x20\x20\x20\x20Tip:\x20`'+CLI_BIN_NAME+'\x20workspace\x20add\x20<name>\x20--appcode\x20<code>\x20--global`\x20registers\x20a\x20reusable\x20global\x20app\x20profile.','notInProjectHint':a244_0x5b0069(0x1e4)});export const CliErrors={'authRequired'(_0x1b657a){const _0x35bbfd=a244_0x5b0069;return new CliError('auth_required',0x1,_0x35bbfd(0x1db),_0x1b657a??'Run\x20`'+CLI_BIN_NAME+'\x20auth`\x20to\x20login\x20first.');},'configMissing'(_0x299885){const _0x55ab9f=a244_0x5b0069;return new CliError('config_missing',0x1,_0x55ab9f(0x1d8),_0x299885??'Set\x20appcode\x20via\x20`'+CLI_BIN_NAME+_0x55ab9f(0x1e1)+CLI_BIN_NAME+'\x20workspace\x20add\x20<name>\x20--appcode\x20<code>\x20--global`\x20registers\x20a\x20reusable\x20global\x20app\x20profile.');},'notInProject'(){const _0x4c8dbb=a244_0x5b0069;return new CliError('not_in_project',0x1,'Not\x20in\x20a\x20'+CLI_BIN_NAME+_0x4c8dbb(0x1dd),_0x4c8dbb(0x1e4));},'apiError'(_0x2491ae,_0x27c84e){const _0x5464ac=a244_0x5b0069;return baseCliErrors[_0x5464ac(0x1ea)](_0x2491ae,_0x27c84e);},'networkError'(_0x3c50b7){const _0x2f2026=a244_0x5b0069;return new CliError(_0x2f2026(0x1d6),0x2,_0x2f2026(0x1e0)+_0x3c50b7,_0x2f2026(0x1ec));},'unknownCommand'(_0x41f04d){const _0x2bdd70=a244_0x5b0069;return new CliError(_0x2bdd70(0x1ef),0x1,'Unknown\x20command:\x20'+_0x41f04d,_0x2bdd70(0x1e5)+CLI_BIN_NAME+_0x2bdd70(0x1e6));},'flagMissing'(_0xef7e2c,_0x5389ac){const _0x5c655d=a244_0x5b0069;return new CliError(_0x5c655d(0x1e9),0x1,_0x5c655d(0x1e8)+_0xef7e2c,_0x5389ac);},'validation'(_0x1b990e,_0x4462ca){return baseCliErrors['validation'](_0x1b990e,_0x4462ca);},'cancelled'(_0x94e8c){return new CliError('cancelled',0x0,_0x94e8c??'Operation\x20cancelled.');}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a245_0x4a5d(){const _0x459c50=['9wonSpy','4057464rOwfnU','10789vwWKIH','map','69515ktDkfc','6515894VvtfIG','238EfIaNK','6675832sPCaSv','10sUvqkE','402PuiGtM','1839309rcVKVL','name','29986kINabe'];a245_0x4a5d=function(){return _0x459c50;};return a245_0x4a5d();}function a245_0x4780(_0x1c1386,_0xd63f33){_0x1c1386=_0x1c1386-0x11e;const _0x4a5d45=a245_0x4a5d();let _0x478015=_0x4a5d45[_0x1c1386];return _0x478015;}(function(_0x2d1f27,_0x246471){const _0x56fea4=a245_0x4780,_0x239196=_0x2d1f27();while(!![]){try{const _0x402611=parseInt(_0x56fea4(0x129))/0x1*(parseInt(_0x56fea4(0x120))/0x2)+-parseInt(_0x56fea4(0x124))/0x3+parseInt(_0x56fea4(0x128))/0x4+parseInt(_0x56fea4(0x11e))/0x5*(parseInt(_0x56fea4(0x123))/0x6)+-parseInt(_0x56fea4(0x11f))/0x7+-parseInt(_0x56fea4(0x121))/0x8*(parseInt(_0x56fea4(0x127))/0x9)+-parseInt(_0x56fea4(0x122))/0xa*(-parseInt(_0x56fea4(0x126))/0xb);if(_0x402611===_0x246471)break;else _0x239196['push'](_0x239196['shift']());}catch(_0x611dd4){_0x239196['push'](_0x239196['shift']());}}}(a245_0x4a5d,0xd082c));import{DEFAULT_COMMAND_OUTPUT_FORMAT}from'../constant/defaults.js';import{buildAllFlags as a245_0x15ccb7}from'@lovrabet/cli-framework';import{EXPLICIT_YES_FLAG_DESCRIPTION,requiresExplicitYes}from'../framework/explicit-yes.js';export function buildAllFlags(_0x22fd43){const _0x467f9d=a245_0x4780,_0x2e4d92=a245_0x15ccb7(_0x22fd43,{'defaultOutputFormat':DEFAULT_COMMAND_OUTPUT_FORMAT});if(!requiresExplicitYes(_0x22fd43))return _0x2e4d92;return _0x2e4d92[_0x467f9d(0x12a)](_0x2b117d=>_0x2b117d[_0x467f9d(0x125)]==='yes'?{..._0x2b117d,'description':EXPLICIT_YES_FLAG_DESCRIPTION}:_0x2b117d);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3a8bd5,_0x1a4e89){var _0x24fb61=a246_0x238b,_0x15e18d=_0x3a8bd5();while(!![]){try{var _0x5603ab=-parseInt(_0x24fb61(0xbf))/0x1*(-parseInt(_0x24fb61(0xc3))/0x2)+-parseInt(_0x24fb61(0xbe))/0x3+parseInt(_0x24fb61(0xc2))/0x4+-parseInt(_0x24fb61(0xc8))/0x5+parseInt(_0x24fb61(0xc5))/0x6*(-parseInt(_0x24fb61(0xc4))/0x7)+-parseInt(_0x24fb61(0xca))/0x8*(parseInt(_0x24fb61(0xc9))/0x9)+parseInt(_0x24fb61(0xbd))/0xa;if(_0x5603ab===_0x1a4e89)break;else _0x15e18d['push'](_0x15e18d['shift']());}catch(_0x316b43){_0x15e18d['push'](_0x15e18d['shift']());}}}(a246_0x310c,0x74a61));import{resolveOutputConfig}from'@lovrabet/cli-framework';export function usesStructuredErrorOutput(_0x2fd435){var _0x15adf7=a246_0x238b;return _0x2fd435?.[_0x15adf7(0xc1)]===!![];}function a246_0x310c(){var _0x294de8=['def','2358435iCevsR','90MxhXUC','244344Mbrxch','defaultFormat','flags','18073780aYNids','1182123GRvKzt','20htlriy','format','structuredErrors','523628QMYKfU','22476SJoTTq','49WPEPzY','440652diHQcH','compress'];a246_0x310c=function(){return _0x294de8;};return a246_0x310c();}function a246_0x238b(_0x18f93a,_0x5a1859){_0x18f93a=_0x18f93a-0xbd;var _0x310c43=a246_0x310c();var _0x238b15=_0x310c43[_0x18f93a];return _0x238b15;}export function resolveErrorOutputFormat(_0x32558c){var _0x10fa0d=a246_0x238b;if(!_0x32558c[_0x10fa0d(0xc7)])return _0x32558c[_0x10fa0d(0xcb)]??_0x10fa0d(0xc6);return resolveOutputConfig({'flags':_0x32558c[_0x10fa0d(0xcc)]??{},'def':_0x32558c[_0x10fa0d(0xc7)],'configDefault':_0x32558c[_0x10fa0d(0xcb)]})[_0x10fa0d(0xc0)];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a247_0x5d1115=a247_0x2504;(function(_0x271cb2,_0x570f52){const _0x1569b2=a247_0x2504,_0x5a6369=_0x271cb2();while(!![]){try{const _0x5d0dca=parseInt(_0x1569b2(0x1bb))/0x1*(parseInt(_0x1569b2(0x1b8))/0x2)+parseInt(_0x1569b2(0x1c6))/0x3+-parseInt(_0x1569b2(0x1c8))/0x4*(-parseInt(_0x1569b2(0x1c5))/0x5)+parseInt(_0x1569b2(0x1c1))/0x6+parseInt(_0x1569b2(0x1b6))/0x7+parseInt(_0x1569b2(0x1c4))/0x8*(-parseInt(_0x1569b2(0x1bf))/0x9)+-parseInt(_0x1569b2(0x1c0))/0xa*(parseInt(_0x1569b2(0x1be))/0xb);if(_0x5d0dca===_0x570f52)break;else _0x5a6369['push'](_0x5a6369['shift']());}catch(_0x437000){_0x5a6369['push'](_0x5a6369['shift']());}}}(a247_0x1a49,0x90194));function a247_0x2504(_0x5508ea,_0x4a95a1){_0x5508ea=_0x5508ea-0x1b6;const _0x1a4909=a247_0x1a49();let _0x2504f1=_0x1a4909[_0x5508ea];return _0x2504f1;}const EXPLICIT_YES_COMMANDS=new Set([a247_0x5d1115(0x1b9),a247_0x5d1115(0x1c7),a247_0x5d1115(0x1ba),a247_0x5d1115(0x1bc)]);function a247_0x1a49(){const _0x2bee27=['10Foiokc','3941448IJAxZO','command','has','56GWJmHn','5uVJwVb','1533978ZQMsVs','kb\x20delete','395996uDaqBb','1263836sbXPBb','Required\x20for\x20execution\x20after\x20reviewing\x20the\x20--dry-run\x20plan','116PLZxPs','menu\x20delete','notification\x20config-update','14959vBpmbJ','notification\x20config-delete','service','10847419QHuqvQ','950202XpRISj'];a247_0x1a49=function(){return _0x2bee27;};return a247_0x1a49();}export const EXPLICIT_YES_FLAG_DESCRIPTION=a247_0x5d1115(0x1b7);export function requiresExplicitYes(_0x448547){const _0x5a0103=a247_0x5d1115;return EXPLICIT_YES_COMMANDS[_0x5a0103(0x1c3)](_0x448547[_0x5a0103(0x1bd)]+'\x20'+_0x448547[_0x5a0103(0x1c2)]);}
|
package/lib/framework/flags.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a248_0x13b588=a248_0x4ecb;function a248_0x4ecb(_0x1a727c,_0x1d6406){_0x1a727c=_0x1a727c-0x133;const _0x381794=a248_0x3817();let _0x4ecb7e=_0x381794[_0x1a727c];return _0x4ecb7e;}function a248_0x3817(){const _0x130941=['parseFlags','227143RWBbzx','18glRuFl','99CHeKdk','validateFlags','146039yNZxNp','188890UoZHMp','4668QjrMgu','535nAhKaD','351084GXFgjf','56wNZvXE','398652GAAQCC','20fZiBEO','44244jGtXrk'];a248_0x3817=function(){return _0x130941;};return a248_0x3817();}(function(_0x4efc24,_0x3d166c){const _0x32116c=a248_0x4ecb,_0x45cbb1=_0x4efc24();while(!![]){try{const _0x4d4f97=parseInt(_0x32116c(0x13d))/0x1+-parseInt(_0x32116c(0x136))/0x2*(parseInt(_0x32116c(0x137))/0x3)+parseInt(_0x32116c(0x133))/0x4+parseInt(_0x32116c(0x140))/0x5*(parseInt(_0x32116c(0x13f))/0x6)+parseInt(_0x32116c(0x139))/0x7*(-parseInt(_0x32116c(0x134))/0x8)+parseInt(_0x32116c(0x13a))/0x9*(-parseInt(_0x32116c(0x13e))/0xa)+-parseInt(_0x32116c(0x13b))/0xb*(-parseInt(_0x32116c(0x135))/0xc);if(_0x4d4f97===_0x3d166c)break;else _0x45cbb1['push'](_0x45cbb1['shift']());}catch(_0x3f5dbb){_0x45cbb1['push'](_0x45cbb1['shift']());}}}(a248_0x3817,0x31b7c));import{createFlagHelpers}from'@lovrabet/cli-framework';import{CliErrors}from'../errors.js';const helpers=createFlagHelpers(CliErrors);export const parseFlags=helpers[a248_0x13b588(0x138)];export const validateFlags=helpers[a248_0x13b588(0x13c)];
|
package/lib/framework/help.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1c5ecf,_0x286979){const _0x2019fb=a249_0x35af,_0x56fdd4=_0x1c5ecf();while(!![]){try{const _0xacc098=-parseInt(_0x2019fb(0x7b))/0x1+parseInt(_0x2019fb(0x6e))/0x2+parseInt(_0x2019fb(0x79))/0x3*(parseInt(_0x2019fb(0x7d))/0x4)+-parseInt(_0x2019fb(0x74))/0x5*(-parseInt(_0x2019fb(0x75))/0x6)+-parseInt(_0x2019fb(0x77))/0x7*(parseInt(_0x2019fb(0x82))/0x8)+-parseInt(_0x2019fb(0x81))/0x9*(parseInt(_0x2019fb(0x7f))/0xa)+-parseInt(_0x2019fb(0x73))/0xb*(parseInt(_0x2019fb(0x6f))/0xc);if(_0xacc098===_0x286979)break;else _0x56fdd4['push'](_0x56fdd4['shift']());}catch(_0x5a6353){_0x56fdd4['push'](_0x56fdd4['shift']());}}}(a249_0xcf50,0x60047));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';function createGenerators(){const _0x4b02eb=a249_0x35af;return createHelpGenerators({'cliBinName':CLI_BIN_NAME,'cliDisplayName':CLI_DISPLAY_NAME,'globalFlags':GLOBAL_FLAGS,'serviceRegistry':serviceRegistry,'getServiceEntry':getServiceEntry,'getServiceDefinitions':_0x237827=>serviceGroups[_0x4b02eb(0x76)](_0x237827),'buildAllFlags':buildAllFlags,'appPrerequisiteText':_0x4b02eb(0x80)+CLI_BIN_NAME+_0x4b02eb(0x7e),'serviceUsageSuffix':_0x4b02eb(0x72)});}function a249_0xcf50(){const _0x413052=['687PLqOxZ','generateFullHelp','306729mFdmjg','Requires\x20--yes\x20to\x20confirm,\x20or\x20interactive\x20prompt.','13504LicdSl','\x20workspace\x20init`\x20or\x20--appcode).','1480ivvhwZ','Requires\x20appcode\x20(set\x20via\x20`','5400PmjWcv','136JUmPKb','644224bgJATv','3905436Lkicyz','generateServiceHelp','replace','\x20[args]\x20[flags]','11sMxIfq','112780CVOZEP','42XOriLy','get','57169KfTLgy','generateCommandHelp'];a249_0xcf50=function(){return _0x413052;};return a249_0xcf50();}export function generateCommandHelp(_0x3b9321){const _0x4309d6=a249_0x35af,_0xfedf6=createGenerators()[_0x4309d6(0x78)](_0x3b9321);if(!requiresExplicitYes(_0x3b9321))return _0xfedf6;return _0xfedf6[_0x4309d6(0x71)](_0x4309d6(0x7c),'Requires\x20explicit\x20--yes\x20for\x20execution;\x20use\x20--dry-run\x20to\x20preview.');}export function generateServiceHelp(_0x39587d){const _0x4f4867=a249_0x35af;return createGenerators()[_0x4f4867(0x70)](_0x39587d);}function a249_0x35af(_0x4a8483,_0x3933a1){_0x4a8483=_0x4a8483-0x6e;const _0xcf504a=a249_0xcf50();let _0x35af66=_0xcf504a[_0x4a8483];return _0x35af66;}export function generateFullHelp(){const _0x32f2a0=a249_0x35af;return createGenerators()[_0x32f2a0(0x7a)]();}
|
package/lib/framework/index.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x35d0c6,_0x454d61){var _0x4ded37=a250_0x29f1,_0x9d0584=_0x35d0c6();while(!![]){try{var _0x5c4dc6=-parseInt(_0x4ded37(0x1b8))/0x1*(parseInt(_0x4ded37(0x1b1))/0x2)+-parseInt(_0x4ded37(0x1b6))/0x3*(parseInt(_0x4ded37(0x1b4))/0x4)+-parseInt(_0x4ded37(0x1b0))/0x5+-parseInt(_0x4ded37(0x1b5))/0x6*(-parseInt(_0x4ded37(0x1ae))/0x7)+parseInt(_0x4ded37(0x1ad))/0x8+-parseInt(_0x4ded37(0x1af))/0x9*(-parseInt(_0x4ded37(0x1b3))/0xa)+parseInt(_0x4ded37(0x1b7))/0xb*(parseInt(_0x4ded37(0x1b2))/0xc);if(_0x5c4dc6===_0x454d61)break;else _0x9d0584['push'](_0x9d0584['shift']());}catch(_0x152c4f){_0x9d0584['push'](_0x9d0584['shift']());}}}(a250_0x6e24,0xeaa7f));function a250_0x6e24(){var _0x36651a=['115560BzLZao','64634gBRGfV','36840qKVOqF','460ibLkDh','788JnxhkM','640632cWjzqb','21630jjMgKW','836ntEKAW','53WlRNiC','14949936rTDWaL','77CLJTsb','164520AFjlOk'];a250_0x6e24=function(){return _0x36651a;};return a250_0x6e24();}export{runCommand}from'../framework/runner.js';function a250_0x29f1(_0x4447bf,_0x172d16){_0x4447bf=_0x4447bf-0x1ad;var _0x6e2443=a250_0x6e24();var _0x29f1f2=_0x6e2443[_0x4447bf];return _0x29f1f2;}export{parseFlags,validateFlags}from'../framework/flags.js';export{formatOutput}from'../framework/output.js';export{generateCommandHelp,generateServiceHelp,generateFullHelp}from'../framework/help.js';export{extractList,extractPaging}from'../framework/response.js';export{riskLevelOrder}from'../framework/types.js';
|
package/lib/framework/output.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x231d64,_0x140aff){const _0x210ad5=a251_0x3e69,_0x4c05ab=_0x231d64();while(!![]){try{const _0x433fa3=parseInt(_0x210ad5(0x1aa))/0x1+parseInt(_0x210ad5(0x19f))/0x2+-parseInt(_0x210ad5(0x1b3))/0x3*(-parseInt(_0x210ad5(0x1a6))/0x4)+-parseInt(_0x210ad5(0x1ae))/0x5+-parseInt(_0x210ad5(0x1b5))/0x6+-parseInt(_0x210ad5(0x1b2))/0x7+parseInt(_0x210ad5(0x1a3))/0x8;if(_0x433fa3===_0x140aff)break;else _0x4c05ab['push'](_0x4c05ab['shift']());}catch(_0x40691a){_0x4c05ab['push'](_0x4c05ab['shift']());}}}(a251_0x6236,0x27c82));import{createFormatOutput,resolveBundledJqPaths}from'@lovrabet/cli-framework';import{CliError,CliErrors}from'../errors.js';function a251_0x6236(){const _0x3b8391=['3195576asFTXA','message','write','463940sdwoxl','jqFilter','update','data','29282jhNzlx','json','_notice','validation','745810jzCcir','pretty','format','jq:\x20','1362956DPRqMg','3TxsrYc','stringify','682500nbnrKc','endsWith','risk','error','command','stdout','151704OzNLCM','trim','code','hint'];a251_0x6236=function(){return _0x3b8391;};return a251_0x6236();}import{applyJqFilter}from'../utils/apply-jq-filter.js';const baseFormatOutput=createFormatOutput({'cliErrors':CliErrors,'jqBinaryResolverOptions':{'bundledJqPaths':resolveBundledJqPaths()}});export function formatOutput(_0x9c5321,_0x3eac4a){const _0x5e5b92=a251_0x3e69,_0x21c33a=_0x9c5321[_0x5e5b92(0x1ac)],{_notice:_0x3c399c,..._0x25d499}=_0x9c5321;void _0x3c399c,baseFormatOutput(_0x25d499,_0x3eac4a),_0x3eac4a['format']===_0x5e5b92(0x1af)&&printPrettyNotice(_0x21c33a);}export function formatCliError(_0x160967,_0x5f1527){const _0x305d68=a251_0x3e69;if(_0x5f1527[_0x305d68(0x1b0)]===_0x305d68(0x1af))return![];const _0x2bac7b=_0x160967[_0x305d68(0x1a9)],_0x458b45={'ok':![],'command':_0x5f1527[_0x305d68(0x19d)],'risk':_0x5f1527[_0x305d68(0x1b7)],'data':_0x2bac7b??null,'error':{'code':_0x160967[_0x305d68(0x1a1)],'message':_0x160967[_0x305d68(0x1a4)],..._0x160967[_0x305d68(0x1a2)]?{'hint':_0x160967[_0x305d68(0x1a2)]}:{}}},_0x1cdff0=_0x5f1527[_0x305d68(0x1b0)]===_0x305d68(0x1ab)?JSON['stringify'](_0x458b45,null,0x2):JSON[_0x305d68(0x1b4)](_0x458b45);let _0x4e062f=_0x1cdff0;if(_0x5f1527[_0x305d68(0x1a7)]?.[_0x305d68(0x1a0)]())try{_0x4e062f=applyJqFilter(_0x1cdff0,_0x5f1527[_0x305d68(0x1a7)]);}catch(_0x5cdf00){const _0x61867e=_0x5cdf00 instanceof CliError?_0x5cdf00:CliErrors[_0x305d68(0x1ad)](_0x305d68(0x1b1)+(_0x5cdf00 instanceof Error?_0x5cdf00[_0x305d68(0x1a4)]:String(_0x5cdf00))),_0x484270={..._0x458b45,'error':{'code':_0x61867e[_0x305d68(0x1a1)],'message':_0x61867e[_0x305d68(0x1a4)],..._0x61867e[_0x305d68(0x1a2)]?{'hint':_0x61867e[_0x305d68(0x1a2)]}:{},'cause':_0x458b45[_0x305d68(0x1b8)]}};_0x4e062f=_0x5f1527[_0x305d68(0x1b0)]===_0x305d68(0x1ab)?JSON[_0x305d68(0x1b4)](_0x484270,null,0x2):JSON[_0x305d68(0x1b4)](_0x484270);}return process[_0x305d68(0x19e)][_0x305d68(0x1a5)](_0x4e062f[_0x305d68(0x1b6)]('\x0a')?_0x4e062f:_0x4e062f+'\x0a'),!![];}function a251_0x3e69(_0x13bac3,_0x5604b1){_0x13bac3=_0x13bac3-0x19d;const _0x6236d8=a251_0x6236();let _0x3e69d6=_0x6236d8[_0x13bac3];return _0x3e69d6;}function printPrettyNotice(_0x4657ee){const _0x307815=a251_0x3e69;if(!_0x4657ee?.[_0x307815(0x1a8)])return;console[_0x307815(0x1b8)](_0x4657ee['update'][_0x307815(0x1a4)]+'\x20('+_0x4657ee[_0x307815(0x1a8)]['url']+')');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x518884,_0x14b57d){var _0x4a42a3=a252_0x1dcc,_0x2f6d22=_0x518884();while(!![]){try{var _0x1d7362=-parseInt(_0x4a42a3(0x9d))/0x1+parseInt(_0x4a42a3(0x9a))/0x2+parseInt(_0x4a42a3(0x9c))/0x3*(-parseInt(_0x4a42a3(0x9e))/0x4)+parseInt(_0x4a42a3(0x9b))/0x5+-parseInt(_0x4a42a3(0x98))/0x6+parseInt(_0x4a42a3(0x99))/0x7*(parseInt(_0x4a42a3(0x97))/0x8)+parseInt(_0x4a42a3(0x96))/0x9;if(_0x1d7362===_0x14b57d)break;else _0x2f6d22['push'](_0x2f6d22['shift']());}catch(_0x2d4b2a){_0x2f6d22['push'](_0x2f6d22['shift']());}}}(a252_0x3d8d,0x79226));export{extractList,extractPaging}from'@lovrabet/cli-framework';function a252_0x1dcc(_0x3fb6bf,_0x3e2de6){_0x3fb6bf=_0x3fb6bf-0x96;var _0x3d8d77=a252_0x3d8d();var _0x1dcc39=_0x3d8d77[_0x3fb6bf];return _0x1dcc39;}function a252_0x3d8d(){var _0x1064ab=['9HNADnQ','672355mRhmzs','134924ZCaInE','7704036xZimRf','5912RIazLB','2452884OtJnVf','434TTdeWN','280418QjMxkP','3182485evwOHN'];a252_0x3d8d=function(){return _0x1064ab;};return a252_0x3d8d();}
|