@lovrabet/rabetbase-cli 2.3.16-beta.5 → 2.3.16-beta.6
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/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/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.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/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/notification/config-list.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/ocr/index.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/standard-page-status.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/permit/index.js +1 -1
- package/lib/commands/permit/page-get.js +1 -1
- package/lib/commands/permit/page-set.js +1 -1
- package/lib/commands/permit/role-apis-set.js +1 -1
- package/lib/commands/permit/role-menus-set.js +1 -1
- package/lib/commands/permit/role-menus.js +1 -1
- package/lib/commands/permit/shared.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/non-interactive.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/create.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/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.d.ts +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/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/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/copy-directory.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a210_0x5126f3=a210_0x28e0;(function(_0x57be52,_0x3bbf9d){const _0x3276bb=a210_0x28e0,_0x1a262e=_0x57be52();while(!![]){try{const _0x19dda6=parseInt(_0x3276bb(0x107))/0x1*(-parseInt(_0x3276bb(0x10a))/0x2)+-parseInt(_0x3276bb(0x104))/0x3+parseInt(_0x3276bb(0xfa))/0x4*(parseInt(_0x3276bb(0x106))/0x5)+parseInt(_0x3276bb(0xed))/0x6*(parseInt(_0x3276bb(0xf3))/0x7)+parseInt(_0x3276bb(0xf8))/0x8+parseInt(_0x3276bb(0xea))/0x9+parseInt(_0x3276bb(0xef))/0xa*(-parseInt(_0x3276bb(0x10d))/0xb);if(_0x19dda6===_0x3bbf9d)break;else _0x1a262e['push'](_0x1a262e['shift']());}catch(_0x5ce50c){_0x1a262e['push'](_0x1a262e['shift']());}}}(a210_0x40f8,0x43f49));import{access,mkdir,readdir,stat}from'node:fs/promises';function a210_0x28e0(_0x5312d2,_0x53c835){_0x5312d2=_0x5312d2-0xe8;const _0x40f803=a210_0x40f8();let _0x28e070=_0x40f803[_0x5312d2];return _0x28e070;}import{constants}from'node:fs';import{dirname,join}from'node:path';import{findHookLocationByRemoteId,snakeToCamel}from'../../core/bff/utils.js';export const SUPPORTED_BFF_TYPES=[a210_0x5126f3(0xe8),a210_0x5126f3(0xf6),'HOOK'];export function normalizeBffType(_0x3afdc4){const _0x43e81c=a210_0x5126f3;if(!_0x3afdc4)return undefined;const _0x2574f9=_0x3afdc4[_0x43e81c(0xf1)]()[_0x43e81c(0xfe)]();return SUPPORTED_BFF_TYPES[_0x43e81c(0xf9)](_0x2574f9)?_0x2574f9:undefined;}async function scanJsFilesRecursively(_0x3e9351,_0x46bad1){const _0x28e418=a210_0x5126f3,_0x3d89b0=[];try{const _0x4de359=await readdir(_0x3e9351,{'withFileTypes':!![]});for(const _0x44b720 of _0x4de359){const _0x177940=join(_0x3e9351,_0x44b720[_0x28e418(0xee)]);if(_0x44b720['isDirectory']())_0x3d89b0[_0x28e418(0xff)](...await scanJsFilesRecursively(_0x177940,_0x46bad1+'/'+_0x44b720[_0x28e418(0xee)]));else _0x44b720[_0x28e418(0x10c)]()&&_0x44b720[_0x28e418(0xee)][_0x28e418(0x10b)](_0x28e418(0xf2))&&_0x3d89b0[_0x28e418(0xff)]({'lockKey':_0x46bad1+'/'+_0x44b720['name']['replace'](/\.js$/,''),'filePath':_0x177940});}}catch(_0x189abe){if(_0x189abe[_0x28e418(0xfc)]!==_0x28e418(0x101))throw _0x189abe;}return _0x3d89b0;}async function scanFlatFunctions(_0x4392ab,_0x255431){const _0x1568d4=a210_0x5126f3,_0x55335b=join(_0x4392ab[_0x1568d4(0x105)],_0x255431),_0x3ae485=await scanJsFilesRecursively(_0x55335b,_0x255431);return _0x3ae485[_0x1568d4(0x110)](({lockKey:_0x5db61d,filePath:_0xc0f267})=>({'type':_0x255431,'name':_0x5db61d[_0x1568d4(0xe9)]('/')['at'](-0x1)??'','filePath':_0xc0f267,'lockKey':_0x5db61d}));}function a210_0x40f8(){const _0x589d12=['scriptsRootDir','2900NgLRJi','6709LTYcYv','functionName','isDirectory','146Vtrnih','endsWith','isFile','30690CNHqmJ','before','all','map','beforeScriptId','COMMON','split','2561616MjObro','scriptType','alias','650718rNGxyV','name','1130qdfDrT','operationType','trim','.js','28pCjgWY','set','HOOK','ENDPOINT','datasetCode','1910592DLvZSG','includes','908jJKkgk','replace','code','get','toUpperCase','push','F_OK','ENOENT','HOOK/','afterScriptId','16644jAqnNc'];a210_0x40f8=function(){return _0x589d12;};return a210_0x40f8();}async function scanHookFunctions(_0x288e62){const _0x59bb9a=a210_0x5126f3,_0x50905d=join(_0x288e62[_0x59bb9a(0x105)],_0x59bb9a(0xf5)),_0x1261da=[];try{const _0x179bf7=await readdir(_0x50905d,{'withFileTypes':!![]});for(const _0x130d6d of _0x179bf7){if(!_0x130d6d[_0x59bb9a(0x109)]())continue;const _0x1efffe=_0x130d6d[_0x59bb9a(0xee)],_0x1b1f08=join(_0x50905d,_0x1efffe),_0x596084=await readdir(_0x1b1f08,{'withFileTypes':!![]});for(const _0x56ed3f of _0x596084){if(!_0x56ed3f[_0x59bb9a(0x109)]())continue;const _0x43ff1d=_0x56ed3f[_0x59bb9a(0xee)],_0x288e36=join(_0x1b1f08,_0x43ff1d),_0x2092de=await readdir(_0x288e36,{'withFileTypes':!![]});for(const _0x335372 of _0x2092de){if(!_0x335372[_0x59bb9a(0x109)]())continue;const _0x4f8760=_0x335372[_0x59bb9a(0xee)],_0x2e9917=join(_0x288e36,_0x4f8760),_0x5d4737=await readdir(_0x2e9917,{'withFileTypes':!![]});for(const _0x22e44d of _0x5d4737){if(!_0x22e44d['isFile']()||!_0x22e44d[_0x59bb9a(0xee)][_0x59bb9a(0x10b)](_0x59bb9a(0xf2)))continue;const _0x3f7649=_0x22e44d[_0x59bb9a(0xee)][_0x59bb9a(0xfb)](/\.js$/,'');_0x1261da[_0x59bb9a(0xff)]({'type':'HOOK','name':_0x3f7649,'filePath':join(_0x2e9917,_0x22e44d['name']),'lockKey':_0x59bb9a(0x102)+_0x1efffe+'/'+_0x43ff1d+'/'+_0x4f8760+'/'+_0x3f7649,'alias':_0x1efffe,'operationType':_0x43ff1d,'functionNode':_0x4f8760});}}}}}catch(_0x237979){if(_0x237979[_0x59bb9a(0xfc)]!==_0x59bb9a(0x101))throw _0x237979;}return _0x1261da;}export async function scanLocalBffFunctions(_0x4c7e01,_0x2b8b6d){const _0x7da7b3=a210_0x5126f3;if(_0x2b8b6d==='COMMON'||_0x2b8b6d===_0x7da7b3(0xf6))return scanFlatFunctions(_0x4c7e01,_0x2b8b6d);if(_0x2b8b6d===_0x7da7b3(0xf5))return scanHookFunctions(_0x4c7e01);const [_0x9e8e88,_0x1a0c5c,_0x4b0364]=await Promise[_0x7da7b3(0x10f)]([scanFlatFunctions(_0x4c7e01,_0x7da7b3(0xe8)),scanFlatFunctions(_0x4c7e01,'ENDPOINT'),scanHookFunctions(_0x4c7e01)]);return[..._0x9e8e88,..._0x1a0c5c,..._0x4b0364];}export function resolveLocalFilePathFromLockKey(_0x4bba57,_0x42265b){const _0x57374a=a210_0x5126f3;return join(_0x4bba57[_0x57374a(0x105)],..._0x42265b['split']('/'))+'.js';}export function createHookLocationMap(_0x400544){const _0x79dcdb=a210_0x5126f3,_0x31fa3a=new Map();for(const _0x39f312 of _0x400544){_0x39f312['beforeScriptId']&&_0x31fa3a[_0x79dcdb(0xf4)](_0x39f312[_0x79dcdb(0x111)],{'datasetCode':_0x39f312['datasetCode'],'operationType':snakeToCamel(_0x39f312[_0x79dcdb(0xf0)]),'functionNode':_0x79dcdb(0x10e)}),_0x39f312[_0x79dcdb(0x103)]&&_0x31fa3a[_0x79dcdb(0xf4)](_0x39f312[_0x79dcdb(0x103)],{'datasetCode':_0x39f312[_0x79dcdb(0xf7)],'operationType':snakeToCamel(_0x39f312[_0x79dcdb(0xf0)]),'functionNode':'after'});}return _0x31fa3a;}export function resolveRemoteScriptTarget(_0x360635,_0x4297a5,_0x352c6c,_0x229da7,_0x37dfc5){const _0x43f80a=a210_0x5126f3,_0x43e39f=normalizeBffType(_0x4297a5[_0x43f80a(0xeb)]);if(!_0x43e39f||!_0x4297a5[_0x43f80a(0x108)])return null;if(_0x43e39f===_0x43f80a(0xf5)){const _0x20083a=(_0x4297a5['id']?_0x352c6c[_0x43f80a(0xfd)](_0x4297a5['id']):undefined)??findHookLocationByRemoteId(_0x229da7,_0x4297a5['id']);if(!_0x20083a)return null;const _0x570745=_0x20083a[_0x43f80a(0xec)]||_0x37dfc5[_0x43f80a(0xfd)](_0x20083a[_0x43f80a(0xf7)]),_0x37a55f=_0x570745??_0x20083a[_0x43f80a(0xf7)],_0x50e2c8={..._0x20083a,'alias':_0x570745},_0x306968=_0x43f80a(0x102)+_0x37a55f+'/'+_0x50e2c8['operationType']+'/'+_0x50e2c8['functionNode']+'/'+_0x4297a5[_0x43f80a(0x108)];return{'lockKey':_0x306968,'filePath':resolveLocalFilePathFromLockKey(_0x360635,_0x306968),'type':_0x43f80a(0xf5),'hookLocation':_0x50e2c8};}const _0x4c1553=_0x43e39f+'/'+_0x4297a5[_0x43f80a(0x108)];return{'lockKey':_0x4c1553,'filePath':resolveLocalFilePathFromLockKey(_0x360635,_0x4c1553),'type':_0x43e39f};}export async function ensureParentDirectory(_0x4edcfa){await mkdir(dirname(_0x4edcfa),{'recursive':!![]});}export async function fileExists(_0x390cc7){const _0x4692ee=a210_0x5126f3;try{return await access(_0x390cc7,constants[_0x4692ee(0x100)]),!![];}catch{return![];}}export async function directoryExists(_0x141d5f){const _0x313fed=a210_0x5126f3;try{const _0x88b90=await stat(_0x141d5f);return _0x88b90[_0x313fed(0x109)]();}catch{return![];}}
|
package/lib/core/bff/hash.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x12ffcd,_0x52c48e){const _0x19104b=a211_0x2c46,_0x2703eb=_0x12ffcd();while(!![]){try{const _0x541e7d=-parseInt(_0x19104b(0x15c))/0x1*(-parseInt(_0x19104b(0x15a))/0x2)+parseInt(_0x19104b(0x154))/0x3*(parseInt(_0x19104b(0x157))/0x4)+-parseInt(_0x19104b(0x159))/0x5+-parseInt(_0x19104b(0x160))/0x6*(parseInt(_0x19104b(0x15e))/0x7)+parseInt(_0x19104b(0x152))/0x8*(-parseInt(_0x19104b(0x155))/0x9)+-parseInt(_0x19104b(0x153))/0xa*(parseInt(_0x19104b(0x158))/0xb)+parseInt(_0x19104b(0x15d))/0xc;if(_0x541e7d===_0x52c48e)break;else _0x2703eb['push'](_0x2703eb['shift']());}catch(_0x1d32cb){_0x2703eb['push'](_0x2703eb['shift']());}}}(a211_0x2d2b,0xa0e64));function a211_0x2c46(_0x46e5d9,_0x4e08f2){_0x46e5d9=_0x46e5d9-0x151;const _0x2d2b73=a211_0x2d2b();let _0x2c4670=_0x2d2b73[_0x46e5d9];return _0x2c4670;}function a211_0x2d2b(){const _0x45a677=['utf8','1yMCiAM','13735344cLAWEE','2732674BrQFwK','update','6YiAezZ','digest','24uAVVTh','3584590QMazMO','573522ATRMRy','26541iXRvox','createHash','4xjcRol','11bZrtzw','6035455RSoVum','2576074mMaHLh'];a211_0x2d2b=function(){return _0x45a677;};return a211_0x2d2b();}import{readFile}from'node:fs/promises';import a211_0x590420 from'node:crypto';export function computeContentHash(_0x5493e7){const _0x16b9a9=a211_0x2c46;return a211_0x590420[_0x16b9a9(0x156)]('md5')[_0x16b9a9(0x15f)](_0x5493e7)[_0x16b9a9(0x151)]('hex');}export async function computeFileHash(_0x483eb5){const _0xeafcf4=a211_0x2c46,_0x8c3cae=await readFile(_0x483eb5,_0xeafcf4(0x15b));return computeContentHash(_0x8c3cae);}
|
package/lib/core/bff/lock.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x6ccfc7,_0x4ca132){const _0x50961d=a212_0x210a,_0x175382=_0x6ccfc7();while(!![]){try{const _0xe2915f=-parseInt(_0x50961d(0x9c))/0x1*(-parseInt(_0x50961d(0xa1))/0x2)+-parseInt(_0x50961d(0x90))/0x3+parseInt(_0x50961d(0xa2))/0x4+-parseInt(_0x50961d(0x8e))/0x5+parseInt(_0x50961d(0x9a))/0x6+parseInt(_0x50961d(0x98))/0x7+-parseInt(_0x50961d(0x9f))/0x8*(parseInt(_0x50961d(0x99))/0x9);if(_0xe2915f===_0x4ca132)break;else _0x175382['push'](_0x175382['shift']());}catch(_0x1408ae){_0x175382['push'](_0x175382['shift']());}}}(a212_0x4724,0xee431));import{mkdir,readFile,writeFile}from'node:fs/promises';function a212_0x210a(_0x48e20c,_0x1e4fee){_0x48e20c=_0x48e20c-0x8d;const _0x472461=a212_0x4724();let _0x210a2a=_0x472461[_0x48e20c];return _0x210a2a;}import{dirname}from'node:path';export function createEmptyBffLock(){return{'apps':{}};}export function ensureLockScope(_0x37500b,_0x1832be,_0x346c3b,_0x1cf031){const _0x1313e0=a212_0x210a,_0x2905ac={'apps':_0x37500b[_0x1313e0(0xa0)]&&typeof _0x37500b['apps']==='object'?_0x37500b[_0x1313e0(0xa0)]:{}};let _0x5a95ac=_0x2905ac['apps'][_0x1832be];if(!_0x5a95ac)return _0x5a95ac={'scriptsRoot':_0x346c3b,'lastSync':'','functions':{}},_0x2905ac['apps'][_0x1832be]=_0x5a95ac,{'lockData':_0x2905ac,'appLock':_0x5a95ac};if(!_0x5a95ac['scriptsRoot'])_0x5a95ac[_0x1313e0(0x9b)]=_0x346c3b;else{if(_0x5a95ac[_0x1313e0(0x9b)]!==_0x346c3b)throw new Error(_0x1cf031+_0x1313e0(0x93)+('current\x20\x22'+_0x346c3b+'\x22\x20vs\x20lock\x20\x22'+_0x5a95ac['scriptsRoot']+_0x1313e0(0x8f))+_0x1313e0(0x95));}return!_0x5a95ac[_0x1313e0(0x97)]&&(_0x5a95ac['functions']={}),!_0x5a95ac['lastSync']&&(_0x5a95ac[_0x1313e0(0x96)]=''),{'lockData':_0x2905ac,'appLock':_0x5a95ac};}function a212_0x4724(){const _0x4254f2=['scriptsRoot','857437RnokHA','utf8','Failed\x20to\x20read\x20BFF\x20lock\x20file:\x20','6652360TillLz','apps','4bGFoud','7457216jfmAqz','parse','9693455MCratW','\x22.\x20','4093452fXJbdn','stringify','object',':\x20scriptsRoot\x20mismatch\x20—\x20','code','Check\x20.rabetbase/bff.lock.json\x20or\x20operate\x20from\x20the\x20correct\x20project\x20directory.','lastSync','functions','2932664HyFBWq','9CMUoGt','6675066XnKKzk'];a212_0x4724=function(){return _0x4254f2;};return a212_0x4724();}export async function readBffLockFile(_0x38e99a){const _0x13657b=a212_0x210a;try{const _0x1047af=await readFile(_0x38e99a,_0x13657b(0x9d)),_0x59977e=JSON[_0x13657b(0x8d)](_0x1047af);return{'apps':_0x59977e[_0x13657b(0xa0)]&&typeof _0x59977e[_0x13657b(0xa0)]===_0x13657b(0x92)?_0x59977e['apps']:{}};}catch(_0xa59d09){if(_0xa59d09[_0x13657b(0x94)]==='ENOENT')return null;throw new Error(_0x13657b(0x9e)+String(_0xa59d09));}}export async function writeBffLockFile(_0x562ade,_0x267fde){const _0x55bb18=a212_0x210a;await mkdir(dirname(_0x562ade),{'recursive':!![]}),await writeFile(_0x562ade,JSON[_0x55bb18(0x91)](_0x267fde,null,0x2),'utf8');}
|
package/lib/core/bff/utils.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x3f91f5,_0x401e10){const _0x165ffb=a214_0x516f,_0x477f2e=_0x3f91f5();while(!![]){try{const _0x204899=-parseInt(_0x165ffb(0x1cd))/0x1+parseInt(_0x165ffb(0x1d6))/0x2+-parseInt(_0x165ffb(0x1c8))/0x3+-parseInt(_0x165ffb(0x1c9))/0x4*(-parseInt(_0x165ffb(0x1cf))/0x5)+parseInt(_0x165ffb(0x1ca))/0x6*(parseInt(_0x165ffb(0x1ce))/0x7)+parseInt(_0x165ffb(0x1d3))/0x8*(parseInt(_0x165ffb(0x1c6))/0x9)+parseInt(_0x165ffb(0x1d1))/0xa*(-parseInt(_0x165ffb(0x1d9))/0xb);if(_0x204899===_0x401e10)break;else _0x477f2e['push'](_0x477f2e['shift']());}catch(_0x3f6ea1){_0x477f2e['push'](_0x477f2e['shift']());}}}(a214_0x5a1f,0xc1a73));function a214_0x5a1f(){const _0x3041ae=['316LXyfXS','828246axpjKx','trim','test','516695zpbTeK','7JssYiv','87440LqqsoP','before','10360wIUPkg','toLowerCase','5481560RjmqAe','values','functionNode','2770810zbOVEs','toUpperCase','remoteId','27698ZNAtJT','replace','datasetCode','18zaDZbX','operationType','1070526Poyyqj'];a214_0x5a1f=function(){return _0x3041ae;};return a214_0x5a1f();}export function snakeToCamel(_0x18bb53){const _0x2f18d1=a214_0x516f;return _0x18bb53[_0x2f18d1(0x1d2)]()[_0x2f18d1(0x1c4)](/_([a-z])/g,(_0x2532b2,_0x30da71)=>_0x30da71[_0x2f18d1(0x1d7)]());}export function findHookLocationByRemoteId(_0x303f04,_0x272216){const _0x48b22d=a214_0x516f;if(!_0x272216)return undefined;for(const _0xfd6bf8 of Object[_0x48b22d(0x1d4)](_0x303f04)){if(_0xfd6bf8[_0x48b22d(0x1d8)]===_0x272216&&_0xfd6bf8[_0x48b22d(0x1c5)]&&_0xfd6bf8[_0x48b22d(0x1c7)]&&_0xfd6bf8[_0x48b22d(0x1d5)])return{'datasetCode':_0xfd6bf8[_0x48b22d(0x1c5)],'operationType':_0xfd6bf8[_0x48b22d(0x1c7)],'functionNode':_0xfd6bf8['functionNode']};}return undefined;}export function extractScriptDescription(_0x53eff3){const _0x31e019=a214_0x516f,_0x569547=_0x53eff3['match'](/\[\s*脚本描述\s*]\s*(.+)/);return _0x569547?.[0x1]?.[_0x31e019(0x1cb)]()||undefined;}function a214_0x516f(_0x5dc404,_0x4b1a32){_0x5dc404=_0x5dc404-0x1c4;const _0x5a1f66=a214_0x5a1f();let _0x516ffa=_0x5a1f66[_0x5dc404];return _0x516ffa;}export function isValidBffFunctionName(_0x29140){const _0xbf2295=a214_0x516f;return/^[A-Za-z_$][A-Za-z0-9_$]*$/[_0xbf2295(0x1cc)](_0x29140);}export function normalizeHookFunctionNode(_0x2693ec){const _0x26ce7d=a214_0x516f;if(!_0x2693ec)return undefined;const _0x310d95=_0x2693ec[_0x26ce7d(0x1cb)]()[_0x26ce7d(0x1d2)]();if(_0x310d95===_0x26ce7d(0x1d0)||_0x310d95==='after')return _0x310d95;return undefined;}
|
package/lib/core/db-resolver.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x21947a,_0x468835){const _0x2fdd31=a215_0x2407,_0xf0c389=_0x21947a();while(!![]){try{const _0x276124=-parseInt(_0x2fdd31(0x1c2))/0x1+parseInt(_0x2fdd31(0x1cb))/0x2+-parseInt(_0x2fdd31(0x1b6))/0x3*(-parseInt(_0x2fdd31(0x1bc))/0x4)+-parseInt(_0x2fdd31(0x1c3))/0x5+-parseInt(_0x2fdd31(0x1b0))/0x6*(-parseInt(_0x2fdd31(0x1bd))/0x7)+-parseInt(_0x2fdd31(0x1bb))/0x8*(-parseInt(_0x2fdd31(0x1cd))/0x9)+parseInt(_0x2fdd31(0x1c7))/0xa;if(_0x276124===_0x468835)break;else _0xf0c389['push'](_0xf0c389['shift']());}catch(_0x24699f){_0xf0c389['push'](_0xf0c389['shift']());}}}(a215_0x3f5d,0x4bc38));import{listDatasets}from'../core/api-client.js';const cache=new Map();export async function listDatabases(_0x39ead7){const _0x5ce69c=a215_0x2407;if(cache[_0x5ce69c(0x1b9)](_0x39ead7))return cache['get'](_0x39ead7);const _0x5be2e8=await listDatasets(_0x39ead7),_0x3329e3=new Map();for(const _0x48ddcc of _0x5be2e8){const _0x26c79a=_0x48ddcc[_0x5ce69c(0x1b5)];_0x26c79a?.[_0x5ce69c(0x1c5)]!=null&&_0x3329e3[_0x5ce69c(0x1b7)](_0x26c79a[_0x5ce69c(0x1c5)],_0x26c79a[_0x5ce69c(0x1b1)]??'db-'+_0x26c79a[_0x5ce69c(0x1c5)]);}const _0x495bec=[..._0x3329e3[_0x5ce69c(0x1b4)]()]['map'](([_0x3824b5,_0x5606c1])=>({'dbId':_0x3824b5,'dbName':_0x5606c1}));return cache['set'](_0x39ead7,_0x495bec),_0x495bec;}export async function resolveDb(_0x4d1a76,_0x5a9cd7){const _0x3fe9c4=a215_0x2407,_0x8aea34=await listDatabases(_0x4d1a76);if(_0x8aea34[_0x3fe9c4(0x1c9)]===0x0)return{'resolved':[],'error':_0x3fe9c4(0x1b3)+_0x4d1a76+_0x3fe9c4(0x1c4)};if(!_0x5a9cd7)return{'resolved':_0x8aea34};const _0x5c42c9=Number(_0x5a9cd7);if(!Number[_0x3fe9c4(0x1ca)](_0x5c42c9)){const _0x181e9c=_0x8aea34[_0x3fe9c4(0x1cc)](_0x17f863=>_0x17f863['dbId']===_0x5c42c9);if(_0x181e9c)return{'resolved':[_0x181e9c]};}const _0xdc20c6=_0x5a9cd7[_0x3fe9c4(0x1c1)](),_0x659c88=_0x8aea34[_0x3fe9c4(0x1b2)](_0x596cca=>_0x596cca[_0x3fe9c4(0x1b1)]['toLowerCase']()[_0x3fe9c4(0x1ba)](_0xdc20c6));if(_0x659c88[_0x3fe9c4(0x1c9)]>0x0)return{'resolved':_0x659c88};const _0x5ee077=_0x8aea34[_0x3fe9c4(0x1c8)](_0x4d3ae5=>_0x4d3ae5[_0x3fe9c4(0x1b1)]+'\x20('+_0x4d3ae5['dbId']+')')['join'](',\x20');return{'resolved':[],'error':_0x3fe9c4(0x1be)+_0x5a9cd7+'\x22\x20under\x20app\x20\x22'+_0x4d1a76+'\x22.\x20Available:\x20'+_0x5ee077+_0x3fe9c4(0x1c0)};}function a215_0x3f5d(){const _0x38aa03=['includes','196376qCquUN','24892WWYyjm','5159GyuZLW','No\x20database\x20matching\x20\x22','.\x20Be\x20more\x20specific.','.\x20If\x20this\x20db\x20belongs\x20to\x20another\x20app,\x20rerun\x20with\x20--appcode\x20<appCode>.','toLowerCase','464177BMyqlD','922975nTzyJt','\x22.\x20Make\x20sure\x20datasets\x20have\x20been\x20created.','dbId','\x22\x20matches\x20multiple\x20databases:\x20','5352780YxYfXQ','map','length','isNaN','354222gYczzr','find','9WXKBWg','1758Imwpgu','dbName','filter','No\x20linked\x20databases\x20found\x20under\x20app\x20\x22','entries','dbtableConfig','3FRXmfz','set','join','has'];a215_0x3f5d=function(){return _0x38aa03;};return a215_0x3f5d();}function a215_0x2407(_0x276afc,_0x2bd86d){_0x276afc=_0x276afc-0x1b0;const _0x3f5d9e=a215_0x3f5d();let _0x2407c3=_0x3f5d9e[_0x276afc];return _0x2407c3;}export async function resolveOneDb(_0x3b8082,_0x5ea99f){const _0xe6f66a=a215_0x2407,{resolved:_0x198511,error:_0x4a3984}=await resolveDb(_0x3b8082,_0x5ea99f);if(_0x4a3984)return{'db':null,'error':_0x4a3984};if(_0x198511[_0xe6f66a(0x1c9)]===0x1)return{'db':_0x198511[0x0]};if(!_0x5ea99f){const _0x220722=_0x198511[_0xe6f66a(0x1c8)](_0x4c2ba0=>_0x4c2ba0[_0xe6f66a(0x1b1)]+'\x20('+_0x4c2ba0['dbId']+')')[_0xe6f66a(0x1b8)](',\x20');return{'db':null,'error':'Multiple\x20databases\x20found.\x20Specify\x20one\x20with\x20--db:\x20'+_0x220722};}const _0xf921e9=_0x198511[_0xe6f66a(0x1c8)](_0x58542f=>_0x58542f[_0xe6f66a(0x1b1)]+'\x20('+_0x58542f[_0xe6f66a(0x1c5)]+')')[_0xe6f66a(0x1b8)](',\x20');return{'db':null,'error':'\x22'+_0x5ea99f+_0xe6f66a(0x1c6)+_0xf921e9+_0xe6f66a(0x1bf)};}export async function getDbName(_0xe85a6d,_0x23d620){const _0x4f5c82=a215_0x2407,_0x1957ef=await listDatabases(_0xe85a6d);return _0x1957ef[_0x4f5c82(0x1cc)](_0x269a12=>_0x269a12[_0x4f5c82(0x1c5)]===_0x23d620)?.[_0x4f5c82(0x1b1)];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a216_0x2244c9=a216_0x589c;(function(_0x1ef302,_0x4657fb){const _0x1abada=a216_0x589c,_0x3310dc=_0x1ef302();while(!![]){try{const _0x89c9f9=parseInt(_0x1abada(0x1f5))/0x1*(parseInt(_0x1abada(0x1ee))/0x2)+parseInt(_0x1abada(0x1e6))/0x3+parseInt(_0x1abada(0x1ea))/0x4*(-parseInt(_0x1abada(0x1f7))/0x5)+-parseInt(_0x1abada(0x1eb))/0x6+parseInt(_0x1abada(0x1f0))/0x7+-parseInt(_0x1abada(0x1e9))/0x8*(-parseInt(_0x1abada(0x1f4))/0x9)+-parseInt(_0x1abada(0x1f1))/0xa*(parseInt(_0x1abada(0x1ef))/0xb);if(_0x89c9f9===_0x4657fb)break;else _0x3310dc['push'](_0x3310dc['shift']());}catch(_0x5ed361){_0x3310dc['push'](_0x3310dc['shift']());}}}(a216_0x3dc9,0x6cf08));import{constants}from'node:fs';import{access,mkdir}from'node:fs/promises';function a216_0x3dc9(){const _0xf3adad=['cwd','2PzrAdt','275jRCrWa','3965388YkhAbC','208410qNfwpE','.rabetbase','.json','9miDOsD','190201yXDbOZ','F_OK','921205XaqPXU','1094478uBpdcj','page','appPagesDir','5077176qoDngT','4JemkHr','3628056wQDGyY','page.lock.json'];a216_0x3dc9=function(){return _0xf3adad;};return a216_0x3dc9();}import{dirname,join,resolve}from'node:path';export function loadPageProjectConfig(_0x9083db,_0x27b2e1=process[a216_0x2244c9(0x1ed)]()){const _0x54726f=a216_0x2244c9,_0x373d67=resolve(_0x27b2e1),_0x26df24=join(_0x373d67,'.rabetbase',_0x54726f(0x1e7));return{'projectRoot':_0x373d67,'pagesBaseDir':_0x26df24,'appPagesDir':join(_0x26df24,_0x9083db),'lockFilePath':join(_0x373d67,_0x54726f(0x1f2),_0x54726f(0x1ec))};}function a216_0x589c(_0x55da52,_0x1ab07f){_0x55da52=_0x55da52-0x1e6;const _0x3dc9ce=a216_0x3dc9();let _0x589c35=_0x3dc9ce[_0x55da52];return _0x589c35;}export function buildPageFileName(_0x4f7ee6,_0x4eb026){const _0x1e9d22=a216_0x2244c9;return _0x4f7ee6+'-'+String(_0x4eb026)['toUpperCase']()+_0x1e9d22(0x1f3);}export function resolvePageFilePath(_0x5887f6,_0x4a742d,_0x27cc7d){const _0x28f5f6=a216_0x2244c9;return join(_0x5887f6[_0x28f5f6(0x1e8)],buildPageFileName(_0x4a742d,_0x27cc7d));}export async function ensureParentDirectory(_0x2433b3){await mkdir(dirname(_0x2433b3),{'recursive':!![]});}export async function fileExists(_0x223b8f){const _0x2619d9=a216_0x2244c9;try{return await access(_0x223b8f,constants[_0x2619d9(0x1f6)]),!![];}catch{return![];}}
|
package/lib/core/page/hash.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a217_0x5903(_0x34de03,_0x1631c2){_0x34de03=_0x34de03-0xd2;const _0x5070ca=a217_0x5070();let _0x59038a=_0x5070ca[_0x34de03];return _0x59038a;}(function(_0x50fc9a,_0x412c9d){const _0x2a459e=a217_0x5903,_0x2a80fc=_0x50fc9a();while(!![]){try{const _0x54f48f=parseInt(_0x2a459e(0xde))/0x1*(parseInt(_0x2a459e(0xd3))/0x2)+-parseInt(_0x2a459e(0xd4))/0x3+-parseInt(_0x2a459e(0xd6))/0x4+parseInt(_0x2a459e(0xd2))/0x5*(-parseInt(_0x2a459e(0xda))/0x6)+parseInt(_0x2a459e(0xd9))/0x7+-parseInt(_0x2a459e(0xdd))/0x8*(parseInt(_0x2a459e(0xdc))/0x9)+parseInt(_0x2a459e(0xe0))/0xa;if(_0x54f48f===_0x412c9d)break;else _0x2a80fc['push'](_0x2a80fc['shift']());}catch(_0x2aee0b){_0x2a80fc['push'](_0x2a80fc['shift']());}}}(a217_0x5070,0xa6322));import a217_0x570e78 from'node:crypto';import{readFile}from'node:fs/promises';export function serializePageSchemaForFile(_0x671992){const _0x2499aa=a217_0x5903;return JSON[_0x2499aa(0xe1)](JSON[_0x2499aa(0xd8)](_0x671992),null,0x2)+'\x0a';}export function computePageContentHash(_0x3dcef6){const _0x7df491=a217_0x5903;return a217_0x570e78[_0x7df491(0xdb)](_0x7df491(0xdf))['update'](_0x3dcef6)[_0x7df491(0xe2)](_0x7df491(0xd7));}export function computeSerializedSchemaHash(_0x5e8145){return computePageContentHash(serializePageSchemaForFile(_0x5e8145));}export async function computePageFileHash(_0x1c19b2){const _0x229d19=a217_0x5903,_0xef1c6c=await readFile(_0x1c19b2,_0x229d19(0xd5));return computePageContentHash(_0xef1c6c);}function a217_0x5070(){const _0x3d6ce2=['createHash','63kOibZm','81688WbfbqC','521243xUkySl','md5','11038250XYCATq','stringify','digest','5RmsTVE','2LCHyMm','424572VUdwzR','utf8','4302380sGCsRP','hex','parse','7979139SVWAxk','4773666yFmLls'];a217_0x5070=function(){return _0x3d6ce2;};return a217_0x5070();}
|
package/lib/core/page/lock.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x21e00d,_0x4709a1){const _0x9f051=a218_0x579e,_0x1565d4=_0x21e00d();while(!![]){try{const _0x199fb4=parseInt(_0x9f051(0x9e))/0x1*(-parseInt(_0x9f051(0x99))/0x2)+parseInt(_0x9f051(0x9c))/0x3*(-parseInt(_0x9f051(0xa2))/0x4)+-parseInt(_0x9f051(0xa5))/0x5*(-parseInt(_0x9f051(0x95))/0x6)+parseInt(_0x9f051(0x9b))/0x7+parseInt(_0x9f051(0xa1))/0x8+-parseInt(_0x9f051(0x96))/0x9+parseInt(_0x9f051(0x9f))/0xa*(parseInt(_0x9f051(0xa3))/0xb);if(_0x199fb4===_0x4709a1)break;else _0x1565d4['push'](_0x1565d4['shift']());}catch(_0x434700){_0x1565d4['push'](_0x1565d4['shift']());}}}(a218_0x19c2,0x72be8));import{mkdir,readFile,writeFile}from'node:fs/promises';function a218_0x579e(_0x1f3ca3,_0x5ad1c4){_0x1f3ca3=_0x1f3ca3-0x92;const _0x19c215=a218_0x19c2();let _0x579ec8=_0x19c215[_0x1f3ca3];return _0x579ec8;}import{dirname}from'node:path';export function createEmptyPageLock(){return{'apps':{}};}export function ensurePageLockScope(_0x30e9ef,_0x2ef32a){const _0x462d41=a218_0x579e,_0x18eb92={'apps':_0x30e9ef[_0x462d41(0x93)]&&typeof _0x30e9ef[_0x462d41(0x93)]===_0x462d41(0x9a)?_0x30e9ef['apps']:{}};let _0x5e34a4=_0x18eb92[_0x462d41(0x93)][_0x2ef32a];if(!_0x5e34a4)return _0x5e34a4={'lastSync':'','pages':{}},_0x18eb92[_0x462d41(0x93)][_0x2ef32a]=_0x5e34a4,{'lockData':_0x18eb92,'appLock':_0x5e34a4};return!_0x5e34a4['lastSync']&&(_0x5e34a4[_0x462d41(0xa0)]=''),(!_0x5e34a4[_0x462d41(0xa4)]||typeof _0x5e34a4['pages']!==_0x462d41(0x9a))&&(_0x5e34a4[_0x462d41(0xa4)]={}),{'lockData':_0x18eb92,'appLock':_0x5e34a4};}export async function readPageLockFile(_0x51fc10){const _0x42d97f=a218_0x579e;try{const _0x59481a=await readFile(_0x51fc10,_0x42d97f(0x97)),_0x3166e4=JSON[_0x42d97f(0x94)](_0x59481a);return{'apps':_0x3166e4[_0x42d97f(0x93)]&&typeof _0x3166e4[_0x42d97f(0x93)]===_0x42d97f(0x9a)?_0x3166e4[_0x42d97f(0x93)]:{}};}catch(_0x2cb82e){if(_0x2cb82e[_0x42d97f(0x9d)]===_0x42d97f(0xa6))return null;throw new Error(_0x42d97f(0x98)+String(_0x2cb82e));}}export async function writePageLockFile(_0x168821,_0x3226a2){const _0x434546=a218_0x579e;await mkdir(dirname(_0x168821),{'recursive':!![]}),await writeFile(_0x168821,JSON[_0x434546(0x92)](_0x3226a2,null,0x2),_0x434546(0x97));}function a218_0x19c2(){const _0x26de52=['object','2649801DTWKOc','226263KqYKJW','code','887263EGUgLK','170tQeuRI','lastSync','1220656uoxEfY','32CcijIw','1001055szKXHm','pages','32925VzHiRB','ENOENT','stringify','apps','parse','426HWtpsc','5266098LyfMsP','utf8','Failed\x20to\x20read\x20page\x20lock\x20file:\x20','2wbOAFQ'];a218_0x19c2=function(){return _0x26de52;};return a218_0x19c2();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x495686,_0xa47759){const _0x4220f0=a220_0x5e71,_0x469fe7=_0x495686();while(!![]){try{const _0x228721=parseInt(_0x4220f0(0x1cd))/0x1+-parseInt(_0x4220f0(0x1b8))/0x2+-parseInt(_0x4220f0(0x1d5))/0x3*(-parseInt(_0x4220f0(0x1c1))/0x4)+-parseInt(_0x4220f0(0x1ab))/0x5+-parseInt(_0x4220f0(0x1f4))/0x6+parseInt(_0x4220f0(0x1ef))/0x7+parseInt(_0x4220f0(0x1e1))/0x8*(parseInt(_0x4220f0(0x1d0))/0x9);if(_0x228721===_0xa47759)break;else _0x469fe7['push'](_0x469fe7['shift']());}catch(_0x5dc2f3){_0x469fe7['push'](_0x469fe7['shift']());}}}(a220_0x1296,0xf002b));import{MYBATIS_DYNAMIC_END_MARKER,MYBATIS_DYNAMIC_START_MARKER,MYBATIS_INCLUDE_MARKER,normalizeSqlForStaticAnalysis}from'./sql-validator.js';export function auditSqlJoinIndexes(_0x9d59e7,_0x4ac8a1){const _0x38a6e7=a220_0x5e71,_0x40ba26=[],_0x15dec4=normalizeSqlForStaticAnalysis(_0x9d59e7),_0x92951e=(_0x15dec4[_0x38a6e7(0x1d4)]?[]:extractJoinFacts(_0x15dec4[_0x38a6e7(0x1cf)]))[_0x38a6e7(0x1dd)](_0x104547=>{const _0x108508=_0x38a6e7;if(_0x104547[_0x108508(0x1b4)]||_0x104547[_0x108508(0x1de)][_0x108508(0x1c6)]===0x0)return _0x40ba26[_0x108508(0x1bc)]({'code':_0x108508(0x1d8),'table':_0x104547['table'],'alias':_0x104547[_0x108508(0x1d9)],'columns':_0x104547['columns'],'reason':_0x104547[_0x108508(0x1ce)]??_0x108508(0x1c4)}),{'table':_0x104547[_0x108508(0x1b2)],'alias':_0x104547['alias'],'columns':_0x104547['columns'],'status':'unavailable'};const _0x4bf7a3=resolveTableMetadata(_0x4ac8a1,_0x104547['table']),_0x5cb36b=(_0x4bf7a3?.['indexes']??[])[_0x108508(0x1dd)](_0x29dfd7=>({'index':_0x29dfd7,'matchedPrefix':findEqualityPrefix(_0x29dfd7[_0x108508(0x1de)],_0x104547[_0x108508(0x1de)])}))[_0x108508(0x1e7)](_0x2f0f78=>_0x2f0f78[_0x108508(0x1bb)][_0x108508(0x1c6)]>0x0),_0x41086e=_0x5cb36b[_0x108508(0x1cc)]((_0x5dd8bc,_0x50b4a3)=>!_0x5dd8bc||_0x50b4a3['matchedPrefix'][_0x108508(0x1c6)]>_0x5dd8bc[_0x108508(0x1bb)][_0x108508(0x1c6)]?_0x50b4a3:_0x5dd8bc,_0x5cb36b[0x0]);if(_0x41086e)return{'table':_0x104547['table'],'alias':_0x104547[_0x108508(0x1d9)],'columns':_0x104547[_0x108508(0x1de)],'status':_0x108508(0x1ee),'matchedIndex':{..._0x41086e[_0x108508(0x1e8)],'matchedPrefix':_0x41086e[_0x108508(0x1bb)]}};const _0xb59fa3=_0x4bf7a3?.['indexes'][_0x108508(0x1e7)](_0x5d7688=>_0x5d7688[_0x108508(0x1de)][_0x108508(0x1f1)](_0x3c2d29=>_0x104547[_0x108508(0x1de)]['some'](_0x41b4df=>columnNamesMatch(_0x3c2d29,_0x41b4df))))??[];if(_0xb59fa3['length']>0x0)return _0x40ba26[_0x108508(0x1bc)]({'code':_0x108508(0x1af),'table':_0x104547[_0x108508(0x1b2)],'alias':_0x104547[_0x108508(0x1d9)],'columns':_0x104547['columns'],'reason':_0x108508(0x1e4)}),{'table':_0x104547[_0x108508(0x1b2)],'alias':_0x104547[_0x108508(0x1d9)],'columns':_0x104547[_0x108508(0x1de)],'status':'warning','candidateIndexes':_0xb59fa3};if(_0x4bf7a3&&_0x4bf7a3[_0x108508(0x1ca)]!==![]&&_0x4bf7a3['indexes'][_0x108508(0x1c6)]>0x0&&_0x104547['columns'][_0x108508(0x1c6)]>0x0)return _0x40ba26[_0x108508(0x1bc)]({'code':_0x108508(0x1ac),'table':_0x104547['table'],'alias':_0x104547['alias'],'columns':_0x104547[_0x108508(0x1de)],'reason':_0x108508(0x1e0)}),{'table':_0x104547['table'],'alias':_0x104547[_0x108508(0x1d9)],'columns':_0x104547[_0x108508(0x1de)],'status':_0x108508(0x1c8)};return _0x40ba26['push']({'code':'INDEX_METADATA_UNAVAILABLE','table':_0x104547[_0x108508(0x1b2)],'alias':_0x104547[_0x108508(0x1d9)],'columns':_0x104547[_0x108508(0x1de)],'reason':_0x4bf7a3?_0x108508(0x1eb):_0x108508(0x1f6)}),{'table':_0x104547['table'],'alias':_0x104547[_0x108508(0x1d9)],'columns':_0x104547[_0x108508(0x1de)],'status':_0x108508(0x1dc)};});return{'checked':_0x92951e['length']>0x0,'joins':_0x92951e,'warnings':_0x40ba26};}function extractJoinFacts(_0x5835af){const _0x3561f6=a220_0x5e71,_0x3e6256=maskNestedQueries(stripSqlNoise(_0x5835af)),_0x54dde1=maskQuotedIdentifiers(_0x3e6256),_0x530f51=[],_0x3a9197=new Set(),_0x219daa=/\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 _0x4b12f7 of _0x3e6256['matchAll'](_0x219daa)){const _0x597c5c=_0x4b12f7[_0x3561f6(0x1e8)]??0x0,_0x11f308=_0x4b12f7[0x0]['search'](/\bJOIN\b/i),_0xddb01c=_0x597c5c+Math[_0x3561f6(0x1d7)](0x0,_0x11f308);if(!/^JOIN\b/i[_0x3561f6(0x1b3)](_0x54dde1['slice'](_0xddb01c)))continue;_0x3a9197[_0x3561f6(0x1d3)](_0xddb01c);const _0x9305df=normalizeIdentifier(_0x4b12f7[0x1]||_0x3561f6(0x1e9)),_0x5d420a=normalizeIdentifier(_0x4b12f7[0x2]??''),_0x19d7ce=normalizeIdentifier(_0x4b12f7[0x3]||_0x5d420a[_0x3561f6(0x1ae)]('.')['at'](-0x1)||_0x5d420a),_0xc8602a=[],_0x330811=_0x5d420a===_0x3561f6(0x1e6);let _0x1f1f7e=_0x9305df===_0x3561f6(0x1f3)||_0x9305df==='full'||_0x330811,_0x2b7d20=_0x1f1f7e?_0x330811?_0x3561f6(0x1ba):_0x9305df[_0x3561f6(0x1be)]()+_0x3561f6(0x1c5):undefined;const _0x95f1eb=stripOuterParentheses(_0x4b12f7[0x4]??''),_0xe1b146=_0x95f1eb['includes'](MYBATIS_DYNAMIC_START_MARKER)||_0x95f1eb[_0x3561f6(0x1ed)](MYBATIS_DYNAMIC_END_MARKER),_0x57869a=_0x95f1eb['includes'](MYBATIS_INCLUDE_MARKER);_0xe1b146&&(_0x1f1f7e=!![],_0x2b7d20??=_0x3561f6(0x1c9));_0x57869a&&(_0x1f1f7e=!![],_0x2b7d20??=_0x3561f6(0x1df));const _0x557a3d=_0x95f1eb[_0x3561f6(0x1a9)](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x3561f6(0x1a9)](MYBATIS_DYNAMIC_END_MARKER,'\x20')[_0x3561f6(0x1a9)](MYBATIS_INCLUDE_MARKER,'\x20');hasTopLevelKeyword(_0x557a3d,'OR')&&(_0x1f1f7e=!![],_0x2b7d20??=_0x3561f6(0x1b6));for(const _0xde90dc of splitTopLevelAnd(_0x557a3d)){const _0x503630=stripOuterParentheses(_0xde90dc);if(hasTopLevelKeyword(_0x503630,'OR')){_0x1f1f7e=!![],_0x2b7d20??='OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.';continue;}const _0x37de4c=splitEquality(_0x503630);if(!_0x37de4c){containsColumnReference(_0xde90dc,_0x19d7ce)&&(_0x1f1f7e=!![]);continue;}const _0xfbb4c=parseDirectColumnReference(_0x37de4c[0x0],_0x19d7ce),_0x272ce0=parseDirectColumnReference(_0x37de4c[0x1],_0x19d7ce),_0x4a8fcc=containsColumnReference(_0x37de4c[0x0],_0x19d7ce),_0x1bdd1b=containsColumnReference(_0x37de4c[0x1],_0x19d7ce),_0x57282f=_0xfbb4c&&!_0x1bdd1b?_0xfbb4c:_0x272ce0&&!_0x4a8fcc?_0x272ce0:null;if(_0x57282f&&!_0xc8602a['includes'](_0x57282f))_0xc8602a[_0x3561f6(0x1bc)](_0x57282f);else!_0x57282f&&containsColumnReference(_0xde90dc,_0x19d7ce)&&(_0x1f1f7e=!![]);}_0x530f51[_0x3561f6(0x1bc)]({'table':_0x5d420a,'alias':_0x19d7ce,'columns':_0xc8602a,'unsupportedPredicate':_0x1f1f7e,'unsupportedReason':_0x2b7d20,'containsUnresolvedInclude':_0x57869a,'position':_0xddb01c});}for(const _0x436d68 of _0x54dde1[_0x3561f6(0x1b1)](/\bJOIN\b/gi)){const _0x70d553=_0x436d68[_0x3561f6(0x1e8)]??0x0;if(_0x3a9197['has'](_0x70d553))continue;const _0x465539=/^\s+([`"\w$.]+)(?:\s+(?:AS\s+)?([`"\w$]+))?/[_0x3561f6(0x1aa)](_0x3e6256['slice'](_0x70d553+_0x436d68[0x0][_0x3561f6(0x1c6)])),_0x12cd27=normalizeIdentifier(_0x465539?.[0x1]||'unknown'),_0x225906=normalizeIdentifier(_0x465539?.[0x2]||''),_0x22df3b=isSqlClauseKeyword(_0x225906)?_0x12cd27[_0x3561f6(0x1ae)]('.')['at'](-0x1)||_0x12cd27:_0x225906||_0x12cd27[_0x3561f6(0x1ae)]('.')['at'](-0x1)||_0x12cd27;_0x530f51[_0x3561f6(0x1bc)]({'table':_0x12cd27,'alias':_0x22df3b,'columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x3561f6(0x1f0),'position':_0x70d553});}const _0x12c8aa=_0x54dde1[_0x3561f6(0x1d2)](MYBATIS_INCLUDE_MARKER);return _0x12c8aa>=0x0&&!_0x530f51[_0x3561f6(0x1f1)](_0xa06776=>_0xa06776['containsUnresolvedInclude'])&&_0x530f51[_0x3561f6(0x1bc)]({'table':_0x3561f6(0x1d6),'alias':_0x3561f6(0x1d6),'columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x3561f6(0x1e2),'containsUnresolvedInclude':!![],'position':_0x12c8aa}),_0x530f51[_0x3561f6(0x1f5)]((_0x21651c,_0x245fff)=>_0x21651c[_0x3561f6(0x1bd)]-_0x245fff[_0x3561f6(0x1bd)]);}function stripSqlNoise(_0x517aba){const _0x293b03=a220_0x5e71,_0x31e2c5=Array[_0x293b03(0x1db)](_0x517aba),_0x1de39b=(_0xa3a979,_0x4ae783)=>{for(let _0x30c31b=_0xa3a979;_0x30c31b<_0x4ae783;_0x30c31b+=0x1){_0x31e2c5[_0x30c31b]!=='\x0a'&&_0x31e2c5[_0x30c31b]!=='\x0d'&&(_0x31e2c5[_0x30c31b]='\x20');}};for(let _0x1f207e=0x0;_0x1f207e<_0x31e2c5['length'];_0x1f207e+=0x1){const _0x312537=_0x31e2c5[_0x1f207e],_0x25996e=_0x31e2c5[_0x1f207e+0x1];if(_0x312537==='\x27'||_0x312537==='\x22'||_0x312537==='`'){const _0x4e8a84=_0x312537,_0x4b63b1=_0x1f207e;_0x1f207e+=0x1;while(_0x1f207e<_0x31e2c5[_0x293b03(0x1c6)]){if(_0x31e2c5[_0x1f207e]==='\x5c'&&_0x1f207e+0x1<_0x31e2c5[_0x293b03(0x1c6)]){_0x1f207e+=0x2;continue;}if(_0x31e2c5[_0x1f207e]!==_0x4e8a84){_0x1f207e+=0x1;continue;}if(_0x31e2c5[_0x1f207e+0x1]===_0x4e8a84){_0x1f207e+=0x2;continue;}break;}if(_0x4e8a84==='\x27')_0x1de39b(_0x4b63b1,Math['min'](_0x1f207e+0x1,_0x31e2c5[_0x293b03(0x1c6)]));continue;}if(_0x312537==='-'&&_0x25996e==='-'){const _0x2ebeef=_0x1f207e;while(_0x1f207e<_0x31e2c5['length']&&_0x31e2c5[_0x1f207e]!=='\x0a')_0x1f207e+=0x1;_0x1de39b(_0x2ebeef,_0x1f207e);continue;}if(_0x312537==='/'&&_0x25996e==='*'){const _0x18dfe0=_0x1f207e;_0x1f207e+=0x2;while(_0x1f207e<_0x31e2c5[_0x293b03(0x1c6)]&&!(_0x31e2c5[_0x1f207e]==='*'&&_0x31e2c5[_0x1f207e+0x1]==='/')){_0x1f207e+=0x1;}_0x1f207e=Math['min'](_0x1f207e+0x1,_0x31e2c5[_0x293b03(0x1c6)]-0x1),_0x1de39b(_0x18dfe0,_0x1f207e+0x1);continue;}if(_0x312537==='#'&&_0x25996e!=='{'){const _0x67e285=_0x1f207e;while(_0x1f207e<_0x31e2c5[_0x293b03(0x1c6)]&&_0x31e2c5[_0x1f207e]!=='\x0a')_0x1f207e+=0x1;_0x1de39b(_0x67e285,_0x1f207e);continue;}if((_0x312537==='#'||_0x312537==='$')&&_0x25996e==='{'){const _0x2fc925=_0x1f207e;_0x1f207e+=0x2;while(_0x1f207e<_0x31e2c5[_0x293b03(0x1c6)]&&_0x31e2c5[_0x1f207e]!=='}')_0x1f207e+=0x1;_0x1de39b(_0x2fc925,Math[_0x293b03(0x1e3)](_0x1f207e+0x1,_0x31e2c5[_0x293b03(0x1c6)]));}}return _0x31e2c5[_0x293b03(0x1ad)]('');}function maskQuotedIdentifiers(_0x1f9ed5){const _0x5c43c6=a220_0x5e71,_0x43d80b=Array[_0x5c43c6(0x1db)](_0x1f9ed5);for(let _0x44de05=0x0;_0x44de05<_0x43d80b['length'];_0x44de05+=0x1){const _0x441ed2=_0x43d80b[_0x44de05];if(_0x441ed2!=='\x22'&&_0x441ed2!=='`')continue;_0x44de05+=0x1;while(_0x44de05<_0x43d80b[_0x5c43c6(0x1c6)]){if(_0x43d80b[_0x44de05]===_0x441ed2){if(_0x43d80b[_0x44de05+0x1]===_0x441ed2){_0x43d80b[_0x44de05]='\x20',_0x43d80b[_0x44de05+0x1]='\x20',_0x44de05+=0x2;continue;}break;}_0x43d80b[_0x44de05]='\x20',_0x44de05+=0x1;}}return _0x43d80b[_0x5c43c6(0x1ad)]('');}function maskNestedQueries(_0x9ddde2){const _0x2838be=a220_0x5e71,_0x515601=Array[_0x2838be(0x1db)](_0x9ddde2);for(let _0x3727cd=0x0;_0x3727cd<_0x515601[_0x2838be(0x1c6)];_0x3727cd+=0x1){if(_0x515601[_0x3727cd]!=='(')continue;const _0x663101=_0x9ddde2[_0x2838be(0x1ea)](_0x3727cd+0x1);if(!/^\s*(?:SELECT|WITH)\b/i['test'](_0x663101))continue;let _0x1a2e45=0x1,_0x1ef440=_0x3727cd+0x1;for(;_0x1ef440<_0x515601['length']&&_0x1a2e45>0x0;_0x1ef440+=0x1){if(_0x515601[_0x1ef440]==='(')_0x1a2e45+=0x1;if(_0x515601[_0x1ef440]===')')_0x1a2e45-=0x1;}if(_0x1a2e45!==0x0)continue;for(let _0xebbc1=_0x3727cd;_0xebbc1<_0x1ef440;_0xebbc1+=0x1){_0x515601[_0xebbc1]='\x20';}const _0x3dea89=_0x2838be(0x1e6);for(let _0x592cec=0x0;_0x592cec<_0x3dea89['length']&&_0x3727cd+_0x592cec<_0x1ef440;_0x592cec+=0x1){_0x515601[_0x3727cd+_0x592cec]=_0x3dea89[_0x592cec];}_0x3727cd=_0x1ef440-0x1;}return _0x515601[_0x2838be(0x1ad)]('');}function splitTopLevelAnd(_0xf85518){const _0x349b97=a220_0x5e71,_0x2fbe89=[];let _0x24fa28=0x0,_0x264a68=0x0;for(let _0x5a2e80=0x0;_0x5a2e80<_0xf85518[_0x349b97(0x1c6)];_0x5a2e80+=0x1){const _0xb21213=_0xf85518[_0x5a2e80];if(_0xb21213==='(')_0x24fa28+=0x1;if(_0xb21213===')')_0x24fa28=Math[_0x349b97(0x1d7)](0x0,_0x24fa28-0x1);_0x24fa28===0x0&&_0xf85518['slice'](_0x5a2e80)['match'](/^AND\b/i)&&(_0x5a2e80===0x0||/\s/[_0x349b97(0x1b3)](_0xf85518[_0x5a2e80-0x1]??''))&&(_0x2fbe89[_0x349b97(0x1bc)](_0xf85518[_0x349b97(0x1ea)](_0x264a68,_0x5a2e80)[_0x349b97(0x1c0)]()),_0x5a2e80+=0x2,_0x264a68=_0x5a2e80+0x1);}const _0x438c0e=_0xf85518['slice'](_0x264a68)[_0x349b97(0x1c0)]();if(_0x438c0e)_0x2fbe89[_0x349b97(0x1bc)](_0x438c0e);return _0x2fbe89;}function hasTopLevelKeyword(_0x31842d,_0x4630ef){const _0x30ca7a=a220_0x5e71;let _0xf94a=0x0;for(let _0x44338d=0x0;_0x44338d<_0x31842d[_0x30ca7a(0x1c6)];_0x44338d+=0x1){const _0x348f74=_0x31842d[_0x44338d];if(_0x348f74==='(')_0xf94a+=0x1;if(_0x348f74===')')_0xf94a=Math['max'](0x0,_0xf94a-0x1);if(_0xf94a!==0x0)continue;const _0x171cf5=_0x31842d[_0x30ca7a(0x1ea)](_0x44338d,_0x44338d+_0x4630ef[_0x30ca7a(0x1c6)]),_0xe66db5=_0x31842d[_0x44338d-0x1]??'\x20',_0x193366=_0x31842d[_0x44338d+_0x4630ef[_0x30ca7a(0x1c6)]]??'\x20';if(_0x171cf5[_0x30ca7a(0x1be)]()===_0x4630ef[_0x30ca7a(0x1be)]()&&!/[\w$]/['test'](_0xe66db5)&&!/[\w$]/['test'](_0x193366))return!![];}return![];}function splitEquality(_0x3869e0){const _0x279646=a220_0x5e71,_0xd7ae1a=stripOuterParentheses(_0x3869e0);let _0x3f3e7d=0x0,_0x323f7c;for(let _0xc1e685=0x0;_0xc1e685<_0xd7ae1a['length'];_0xc1e685+=0x1){const _0x54d7a8=_0xd7ae1a[_0xc1e685];if(_0x54d7a8==='(')_0x3f3e7d+=0x1;if(_0x54d7a8===')')_0x3f3e7d=Math[_0x279646(0x1d7)](0x0,_0x3f3e7d-0x1);const _0x45c6b1=_0xd7ae1a[_0xc1e685-0x1]??'',_0x236b4f=_0xd7ae1a[_0xc1e685+0x1]??'';if(_0x54d7a8==='='&&_0x3f3e7d===0x0&&!/[!<>=:]/[_0x279646(0x1b3)](_0x45c6b1)&&_0x236b4f!=='='){if(_0x323f7c!==undefined)return null;_0x323f7c=_0xc1e685;}}return _0x323f7c===undefined?null:[_0xd7ae1a[_0x279646(0x1ea)](0x0,_0x323f7c)[_0x279646(0x1c0)](),_0xd7ae1a[_0x279646(0x1ea)](_0x323f7c+0x1)['trim']()];}function parseDirectColumnReference(_0x1017a9,_0x436d25){const _0x4db5c1=a220_0x5e71,_0x4e45f0=/^([`"]?[\w$]+[`"]?)\s*\.\s*([`"]?[\w$]+[`"]?)$/[_0x4db5c1(0x1aa)](stripOuterParentheses(_0x1017a9));if(!_0x4e45f0)return null;if(normalizeIdentifier(_0x4e45f0[0x1]??'')!==normalizeIdentifier(_0x436d25))return null;return normalizeIdentifier(_0x4e45f0[0x2]??'');}function containsColumnReference(_0x43f3f6,_0x483a2b){const _0x399afd=a220_0x5e71,_0x1c4ec4=_0x43f3f6[_0x399afd(0x1b9)](/[`"]/g,''),_0xa9a065=_0x483a2b[_0x399afd(0x1b9)](/[.*+?^${}()|[\]\\]/g,_0x399afd(0x1e5));return new RegExp(_0x399afd(0x1bf)+_0xa9a065+_0x399afd(0x1b0),'i')[_0x399afd(0x1b3)](_0x1c4ec4);}function a220_0x5e71(_0x1fc689,_0x2f1dc0){_0x1fc689=_0x1fc689-0x1a9;const _0x129608=a220_0x1296();let _0x5e717c=_0x129608[_0x1fc689];return _0x5e717c;}function findEqualityPrefix(_0x3f9c14,_0x325963){const _0x39af7b=a220_0x5e71,_0x2acd61=new Set(_0x325963[_0x39af7b(0x1dd)](normalizeIdentifier)),_0x1989dd=[];for(const _0x26c19a of _0x3f9c14){if(!_0x2acd61[_0x39af7b(0x1c2)](normalizeIdentifier(_0x26c19a)))break;_0x1989dd[_0x39af7b(0x1bc)](_0x26c19a);}return _0x1989dd;}function resolveTableMetadata(_0x55ae05,_0x4a5dff){const _0x5519d4=a220_0x5e71,_0x537c40=normalizeIdentifier(_0x4a5dff),_0xcdf6ea=_0x55ae05['filter'](_0x4bc6ed=>normalizeIdentifier(_0x4bc6ed[_0x5519d4(0x1c3)])===_0x537c40);if(_0xcdf6ea['length']===0x1)return _0xcdf6ea[0x0];const _0x442ea9=_0x537c40[_0x5519d4(0x1ed)]('.'),_0x4634f4=_0x537c40['split']('.')['at'](-0x1),_0x29800a=_0x55ae05['filter'](_0x2186db=>{const _0x2e3722=_0x5519d4,_0x280f98=normalizeIdentifier(_0x2186db[_0x2e3722(0x1c3)]);if(_0x442ea9&&_0x280f98[_0x2e3722(0x1ed)]('.'))return![];return _0x280f98['split']('.')['at'](-0x1)===_0x4634f4;});return _0x29800a[_0x5519d4(0x1c6)]===0x1?_0x29800a[0x0]:undefined;}function columnNamesMatch(_0xd9dc92,_0x4f84d7){return normalizeIdentifier(_0xd9dc92)===normalizeIdentifier(_0x4f84d7);}function a220_0x1296(){const _0x5e4980=['\x5c$&','__sq__','filter','index','INNER','slice','The\x20dataset\x20returned\x20no\x20distinguishable\x20index\x20metadata.','endsWith','includes','covered','2177574dXcKIN','Only\x20explicit\x20table\x20JOIN\x20clauses\x20with\x20an\x20ON\x20predicate\x20are\x20supported.','some','natural','right','303054bmoJra','sort','No\x20dataset\x20metadata\x20matched\x20the\x20JOIN\x20table.','replaceAll','exec','5220660KgMfnh','JOIN_INDEX_MISSING','join','split','JOIN_INDEX_NOT_USABLE','\x5cs*\x5c.\x5cs*[\x5cw$]+','matchAll','table','test','unsupportedPredicate','startsWith','OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.','full','2596214IdDuVZ','replace','Derived-table\x20JOIN\x20targets\x20are\x20not\x20supported.','matchedPrefix','push','position','toUpperCase','(?:^|[^\x5cw$])','trim','36kFwACD','has','tableName','Not\x20every\x20JOIN\x20target\x20predicate\x20could\x20be\x20audited\x20safely.','\x20JOIN\x20direction\x20is\x20not\x20supported\x20by\x20static\x20index\x20auditing.','length','left','warning','MyBatis\x20dynamic\x20JOIN\x20predicates\x20cannot\x20be\x20audited\x20deterministically.','metadataAvailable','inner','reduce','824721IpAmRN','unsupportedReason','sql','6366141XszmOa','using','indexOf','add','error','39327DMupkB','unknown','max','JOIN_PREDICATE_UNSUPPORTED','alias','cross','from','unavailable','map','columns','MyBatis\x20<include>\x20JOIN\x20fragments\x20cannot\x20be\x20expanded\x20statically.','No\x20reported\x20index\x20contains\x20the\x20JOIN\x20access\x20columns.','24TJfmgy','MyBatis\x20<include>\x20fragments\x20cannot\x20be\x20expanded\x20for\x20JOIN\x20auditing.','min','Relevant\x20columns\x20do\x20not\x20form\x20a\x20complete\x20leftmost\x20index\x20prefix.'];a220_0x1296=function(){return _0x5e4980;};return a220_0x1296();}function normalizeIdentifier(_0x5d36b8){const _0x4ee8c3=a220_0x5e71;return _0x5d36b8[_0x4ee8c3(0x1b9)](/[`"]/g,'')[_0x4ee8c3(0x1c0)]()['toLowerCase']();}function isSqlClauseKeyword(_0x1639a0){const _0x1748d8=a220_0x5e71;return new Set(['on',_0x1748d8(0x1d1),'where',_0x1748d8(0x1ad),_0x1748d8(0x1cb),_0x1748d8(0x1c7),_0x1748d8(0x1f3),_0x1748d8(0x1b7),_0x1748d8(0x1da),_0x1748d8(0x1f2)])[_0x1748d8(0x1c2)](_0x1639a0);}function stripOuterParentheses(_0x1baf27){const _0x5cd00a=a220_0x5e71;let _0x533d5c=_0x1baf27[_0x5cd00a(0x1c0)]();while(_0x533d5c[_0x5cd00a(0x1b5)]('(')&&_0x533d5c[_0x5cd00a(0x1ec)](')')){let _0x3df03d=0x0,_0x105621=!![];for(let _0xba13b2=0x0;_0xba13b2<_0x533d5c[_0x5cd00a(0x1c6)];_0xba13b2+=0x1){if(_0x533d5c[_0xba13b2]==='(')_0x3df03d+=0x1;if(_0x533d5c[_0xba13b2]===')')_0x3df03d-=0x1;if(_0x3df03d===0x0&&_0xba13b2<_0x533d5c['length']-0x1){_0x105621=![];break;}}if(!_0x105621||_0x3df03d!==0x0)break;_0x533d5c=_0x533d5c[_0x5cd00a(0x1ea)](0x1,-0x1)['trim']();}return _0x533d5c;}
|
|
1
|
+
(function(_0x147121,_0x1c776b){const _0x5fa7ed=a220_0x5018,_0x25d69f=_0x147121();while(!![]){try{const _0x50c577=parseInt(_0x5fa7ed(0x215))/0x1*(parseInt(_0x5fa7ed(0x225))/0x2)+-parseInt(_0x5fa7ed(0x1ee))/0x3*(parseInt(_0x5fa7ed(0x203))/0x4)+-parseInt(_0x5fa7ed(0x219))/0x5+-parseInt(_0x5fa7ed(0x205))/0x6*(parseInt(_0x5fa7ed(0x1f0))/0x7)+-parseInt(_0x5fa7ed(0x1e9))/0x8+parseInt(_0x5fa7ed(0x1fe))/0x9*(parseInt(_0x5fa7ed(0x213))/0xa)+-parseInt(_0x5fa7ed(0x21e))/0xb*(-parseInt(_0x5fa7ed(0x1f7))/0xc);if(_0x50c577===_0x1c776b)break;else _0x25d69f['push'](_0x25d69f['shift']());}catch(_0x3a048c){_0x25d69f['push'](_0x25d69f['shift']());}}}(a220_0xbc42,0x4e314));import{MYBATIS_DYNAMIC_END_MARKER,MYBATIS_DYNAMIC_START_MARKER,MYBATIS_INCLUDE_MARKER,normalizeSqlForStaticAnalysis}from'./sql-validator.js';export function auditSqlJoinIndexes(_0x29089b,_0xebc77e){const _0x25e49b=a220_0x5018,_0x33fff3=[],_0x89eb40=normalizeSqlForStaticAnalysis(_0x29089b),_0x5c0306=(_0x89eb40[_0x25e49b(0x1ed)]?[]:extractJoinFacts(_0x89eb40[_0x25e49b(0x22d)]))['map'](_0x3f11da=>{const _0x226537=_0x25e49b;if(_0x3f11da[_0x226537(0x214)]||_0x3f11da[_0x226537(0x228)]['length']===0x0)return _0x33fff3[_0x226537(0x21c)]({'code':_0x226537(0x223),'table':_0x3f11da[_0x226537(0x1e7)],'alias':_0x3f11da[_0x226537(0x229)],'columns':_0x3f11da['columns'],'reason':_0x3f11da[_0x226537(0x1f6)]??_0x226537(0x1ea)}),{'table':_0x3f11da[_0x226537(0x1e7)],'alias':_0x3f11da[_0x226537(0x229)],'columns':_0x3f11da['columns'],'status':_0x226537(0x1ff)};const _0x5f4da8=resolveTableMetadata(_0xebc77e,_0x3f11da[_0x226537(0x1e7)]),_0x1e9302=(_0x5f4da8?.[_0x226537(0x230)]??[])[_0x226537(0x217)](_0x53573a=>({'index':_0x53573a,'matchedPrefix':findEqualityPrefix(_0x53573a[_0x226537(0x228)],_0x3f11da[_0x226537(0x228)])}))['filter'](_0x15805c=>_0x15805c[_0x226537(0x227)][_0x226537(0x222)]>0x0),_0x400feb=_0x1e9302[_0x226537(0x1eb)]((_0x51c8f4,_0x356228)=>!_0x51c8f4||_0x356228[_0x226537(0x227)][_0x226537(0x222)]>_0x51c8f4['matchedPrefix'][_0x226537(0x222)]?_0x356228:_0x51c8f4,_0x1e9302[0x0]);if(_0x400feb)return{'table':_0x3f11da['table'],'alias':_0x3f11da[_0x226537(0x229)],'columns':_0x3f11da[_0x226537(0x228)],'status':_0x226537(0x1f1),'matchedIndex':{..._0x400feb[_0x226537(0x208)],'matchedPrefix':_0x400feb[_0x226537(0x227)]}};const _0x2ac1ea=_0x5f4da8?.[_0x226537(0x230)][_0x226537(0x209)](_0x3188b3=>_0x3188b3['columns'][_0x226537(0x20b)](_0xfe15fe=>_0x3f11da['columns']['some'](_0x227bf3=>columnNamesMatch(_0xfe15fe,_0x227bf3))))??[];if(_0x2ac1ea[_0x226537(0x222)]>0x0)return _0x33fff3['push']({'code':_0x226537(0x21a),'table':_0x3f11da['table'],'alias':_0x3f11da[_0x226537(0x229)],'columns':_0x3f11da[_0x226537(0x228)],'reason':_0x226537(0x20a)}),{'table':_0x3f11da[_0x226537(0x1e7)],'alias':_0x3f11da[_0x226537(0x229)],'columns':_0x3f11da[_0x226537(0x228)],'status':_0x226537(0x1f8),'candidateIndexes':_0x2ac1ea};if(_0x5f4da8&&_0x5f4da8['metadataAvailable']!==![]&&_0x5f4da8[_0x226537(0x230)]['length']>0x0&&_0x3f11da[_0x226537(0x228)]['length']>0x0)return _0x33fff3['push']({'code':_0x226537(0x218),'table':_0x3f11da[_0x226537(0x1e7)],'alias':_0x3f11da[_0x226537(0x229)],'columns':_0x3f11da[_0x226537(0x228)],'reason':_0x226537(0x1f3)}),{'table':_0x3f11da['table'],'alias':_0x3f11da[_0x226537(0x229)],'columns':_0x3f11da[_0x226537(0x228)],'status':_0x226537(0x1f8)};return _0x33fff3[_0x226537(0x21c)]({'code':_0x226537(0x211),'table':_0x3f11da[_0x226537(0x1e7)],'alias':_0x3f11da[_0x226537(0x229)],'columns':_0x3f11da[_0x226537(0x228)],'reason':_0x5f4da8?_0x226537(0x220):_0x226537(0x22f)}),{'table':_0x3f11da[_0x226537(0x1e7)],'alias':_0x3f11da[_0x226537(0x229)],'columns':_0x3f11da[_0x226537(0x228)],'status':_0x226537(0x1ff)};});return{'checked':_0x5c0306[_0x25e49b(0x222)]>0x0,'joins':_0x5c0306,'warnings':_0x33fff3};}function extractJoinFacts(_0xb4ea00){const _0x12a090=a220_0x5018,_0x610a67=maskNestedQueries(stripSqlNoise(_0xb4ea00)),_0x5439a0=maskQuotedIdentifiers(_0x610a67),_0x3d3c0a=[],_0x2e2ca0=new Set(),_0x2279af=/\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 _0x1fa3a3 of _0x610a67['matchAll'](_0x2279af)){const _0x2648b3=_0x1fa3a3[_0x12a090(0x208)]??0x0,_0x26a731=_0x1fa3a3[0x0][_0x12a090(0x1e4)](/\bJOIN\b/i),_0x55a7a4=_0x2648b3+Math[_0x12a090(0x212)](0x0,_0x26a731);if(!/^JOIN\b/i['test'](_0x5439a0[_0x12a090(0x1e3)](_0x55a7a4)))continue;_0x2e2ca0[_0x12a090(0x224)](_0x55a7a4);const _0x570eb2=normalizeIdentifier(_0x1fa3a3[0x1]||'INNER'),_0x13dccc=normalizeIdentifier(_0x1fa3a3[0x2]??''),_0x422f3d=normalizeIdentifier(_0x1fa3a3[0x3]||_0x13dccc[_0x12a090(0x1f9)]('.')['at'](-0x1)||_0x13dccc),_0x9d0b83=[],_0x3af7a8=_0x13dccc===_0x12a090(0x21d);let _0x433baf=_0x570eb2==='right'||_0x570eb2===_0x12a090(0x202)||_0x3af7a8,_0x4aaf2f=_0x433baf?_0x3af7a8?_0x12a090(0x231):_0x570eb2['toUpperCase']()+_0x12a090(0x1fd):undefined;const _0x355785=stripOuterParentheses(_0x1fa3a3[0x4]??''),_0x588381=_0x355785[_0x12a090(0x22b)](MYBATIS_DYNAMIC_START_MARKER)||_0x355785[_0x12a090(0x22b)](MYBATIS_DYNAMIC_END_MARKER),_0x5651dd=_0x355785[_0x12a090(0x22b)](MYBATIS_INCLUDE_MARKER);_0x588381&&(_0x433baf=!![],_0x4aaf2f??=_0x12a090(0x1e2));_0x5651dd&&(_0x433baf=!![],_0x4aaf2f??=_0x12a090(0x207));const _0x3d27e3=_0x355785['replaceAll'](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x12a090(0x22a)](MYBATIS_DYNAMIC_END_MARKER,'\x20')[_0x12a090(0x22a)](MYBATIS_INCLUDE_MARKER,'\x20');hasTopLevelKeyword(_0x3d27e3,'OR')&&(_0x433baf=!![],_0x4aaf2f??=_0x12a090(0x1e6));for(const _0x5055f0 of splitTopLevelAnd(_0x3d27e3)){const _0x481aca=stripOuterParentheses(_0x5055f0);if(hasTopLevelKeyword(_0x481aca,'OR')){_0x433baf=!![],_0x4aaf2f??=_0x12a090(0x1e6);continue;}const _0x8ae821=splitEquality(_0x481aca);if(!_0x8ae821){containsColumnReference(_0x5055f0,_0x422f3d)&&(_0x433baf=!![]);continue;}const _0x46fecb=parseDirectColumnReference(_0x8ae821[0x0],_0x422f3d),_0x10ed5a=parseDirectColumnReference(_0x8ae821[0x1],_0x422f3d),_0x330549=containsColumnReference(_0x8ae821[0x0],_0x422f3d),_0x40d009=containsColumnReference(_0x8ae821[0x1],_0x422f3d),_0x1ae921=_0x46fecb&&!_0x40d009?_0x46fecb:_0x10ed5a&&!_0x330549?_0x10ed5a:null;if(_0x1ae921&&!_0x9d0b83[_0x12a090(0x22b)](_0x1ae921))_0x9d0b83['push'](_0x1ae921);else!_0x1ae921&&containsColumnReference(_0x5055f0,_0x422f3d)&&(_0x433baf=!![]);}_0x3d3c0a[_0x12a090(0x21c)]({'table':_0x13dccc,'alias':_0x422f3d,'columns':_0x9d0b83,'unsupportedPredicate':_0x433baf,'unsupportedReason':_0x4aaf2f,'containsUnresolvedInclude':_0x5651dd,'position':_0x55a7a4});}for(const _0x2191f2 of _0x5439a0[_0x12a090(0x204)](/\bJOIN\b/gi)){const _0x155eab=_0x2191f2[_0x12a090(0x208)]??0x0;if(_0x2e2ca0[_0x12a090(0x1f4)](_0x155eab))continue;const _0x57a054=/^\s+([`"\w$.]+)(?:\s+(?:AS\s+)?([`"\w$]+))?/[_0x12a090(0x1fc)](_0x610a67[_0x12a090(0x1e3)](_0x155eab+_0x2191f2[0x0][_0x12a090(0x222)])),_0x3868d7=normalizeIdentifier(_0x57a054?.[0x1]||_0x12a090(0x1ec)),_0x48d38a=normalizeIdentifier(_0x57a054?.[0x2]||''),_0x564da5=isSqlClauseKeyword(_0x48d38a)?_0x3868d7['split']('.')['at'](-0x1)||_0x3868d7:_0x48d38a||_0x3868d7[_0x12a090(0x1f9)]('.')['at'](-0x1)||_0x3868d7;_0x3d3c0a[_0x12a090(0x21c)]({'table':_0x3868d7,'alias':_0x564da5,'columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x12a090(0x206),'position':_0x155eab});}const _0x4e39f8=_0x5439a0[_0x12a090(0x1e8)](MYBATIS_INCLUDE_MARKER);return _0x4e39f8>=0x0&&!_0x3d3c0a[_0x12a090(0x20b)](_0x1e2769=>_0x1e2769['containsUnresolvedInclude'])&&_0x3d3c0a[_0x12a090(0x21c)]({'table':_0x12a090(0x1ec),'alias':_0x12a090(0x1ec),'columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x12a090(0x21f),'containsUnresolvedInclude':!![],'position':_0x4e39f8}),_0x3d3c0a[_0x12a090(0x20e)]((_0xa48ad9,_0x186322)=>_0xa48ad9[_0x12a090(0x20c)]-_0x186322[_0x12a090(0x20c)]);}function stripSqlNoise(_0x52fa5a){const _0xfa2a16=a220_0x5018,_0x5aa649=Array[_0xfa2a16(0x1fa)](_0x52fa5a),_0x4fb8d5=(_0xb463bb,_0x394830)=>{for(let _0x3c08e0=_0xb463bb;_0x3c08e0<_0x394830;_0x3c08e0+=0x1){_0x5aa649[_0x3c08e0]!=='\x0a'&&_0x5aa649[_0x3c08e0]!=='\x0d'&&(_0x5aa649[_0x3c08e0]='\x20');}};for(let _0x4dc26d=0x0;_0x4dc26d<_0x5aa649[_0xfa2a16(0x222)];_0x4dc26d+=0x1){const _0x1660a3=_0x5aa649[_0x4dc26d],_0x4f33e5=_0x5aa649[_0x4dc26d+0x1];if(_0x1660a3==='\x27'||_0x1660a3==='\x22'||_0x1660a3==='`'){const _0x249395=_0x1660a3,_0x16c8a7=_0x4dc26d;_0x4dc26d+=0x1;while(_0x4dc26d<_0x5aa649['length']){if(_0x5aa649[_0x4dc26d]==='\x5c'&&_0x4dc26d+0x1<_0x5aa649['length']){_0x4dc26d+=0x2;continue;}if(_0x5aa649[_0x4dc26d]!==_0x249395){_0x4dc26d+=0x1;continue;}if(_0x5aa649[_0x4dc26d+0x1]===_0x249395){_0x4dc26d+=0x2;continue;}break;}if(_0x249395==='\x27')_0x4fb8d5(_0x16c8a7,Math[_0xfa2a16(0x200)](_0x4dc26d+0x1,_0x5aa649[_0xfa2a16(0x222)]));continue;}if(_0x1660a3==='-'&&_0x4f33e5==='-'){const _0x522f0c=_0x4dc26d;while(_0x4dc26d<_0x5aa649['length']&&_0x5aa649[_0x4dc26d]!=='\x0a')_0x4dc26d+=0x1;_0x4fb8d5(_0x522f0c,_0x4dc26d);continue;}if(_0x1660a3==='/'&&_0x4f33e5==='*'){const _0x1f89ec=_0x4dc26d;_0x4dc26d+=0x2;while(_0x4dc26d<_0x5aa649[_0xfa2a16(0x222)]&&!(_0x5aa649[_0x4dc26d]==='*'&&_0x5aa649[_0x4dc26d+0x1]==='/')){_0x4dc26d+=0x1;}_0x4dc26d=Math[_0xfa2a16(0x200)](_0x4dc26d+0x1,_0x5aa649['length']-0x1),_0x4fb8d5(_0x1f89ec,_0x4dc26d+0x1);continue;}if(_0x1660a3==='#'&&_0x4f33e5!=='{'){const _0x1c8732=_0x4dc26d;while(_0x4dc26d<_0x5aa649[_0xfa2a16(0x222)]&&_0x5aa649[_0x4dc26d]!=='\x0a')_0x4dc26d+=0x1;_0x4fb8d5(_0x1c8732,_0x4dc26d);continue;}if((_0x1660a3==='#'||_0x1660a3==='$')&&_0x4f33e5==='{'){const _0x321194=_0x4dc26d;_0x4dc26d+=0x2;while(_0x4dc26d<_0x5aa649['length']&&_0x5aa649[_0x4dc26d]!=='}')_0x4dc26d+=0x1;_0x4fb8d5(_0x321194,Math[_0xfa2a16(0x200)](_0x4dc26d+0x1,_0x5aa649[_0xfa2a16(0x222)]));}}return _0x5aa649[_0xfa2a16(0x221)]('');}function maskQuotedIdentifiers(_0x51c245){const _0x15ca32=a220_0x5018,_0x528607=Array['from'](_0x51c245);for(let _0x46d184=0x0;_0x46d184<_0x528607[_0x15ca32(0x222)];_0x46d184+=0x1){const _0xcd5044=_0x528607[_0x46d184];if(_0xcd5044!=='\x22'&&_0xcd5044!=='`')continue;_0x46d184+=0x1;while(_0x46d184<_0x528607[_0x15ca32(0x222)]){if(_0x528607[_0x46d184]===_0xcd5044){if(_0x528607[_0x46d184+0x1]===_0xcd5044){_0x528607[_0x46d184]='\x20',_0x528607[_0x46d184+0x1]='\x20',_0x46d184+=0x2;continue;}break;}_0x528607[_0x46d184]='\x20',_0x46d184+=0x1;}}return _0x528607[_0x15ca32(0x221)]('');}function maskNestedQueries(_0x42d3a5){const _0x27b923=a220_0x5018,_0x549b86=Array[_0x27b923(0x1fa)](_0x42d3a5);for(let _0x1fd805=0x0;_0x1fd805<_0x549b86[_0x27b923(0x222)];_0x1fd805+=0x1){if(_0x549b86[_0x1fd805]!=='(')continue;const _0x558667=_0x42d3a5[_0x27b923(0x1e3)](_0x1fd805+0x1);if(!/^\s*(?:SELECT|WITH)\b/i[_0x27b923(0x21b)](_0x558667))continue;let _0xf98341=0x1,_0x591d43=_0x1fd805+0x1;for(;_0x591d43<_0x549b86['length']&&_0xf98341>0x0;_0x591d43+=0x1){if(_0x549b86[_0x591d43]==='(')_0xf98341+=0x1;if(_0x549b86[_0x591d43]===')')_0xf98341-=0x1;}if(_0xf98341!==0x0)continue;for(let _0x418d07=_0x1fd805;_0x418d07<_0x591d43;_0x418d07+=0x1){_0x549b86[_0x418d07]='\x20';}const _0x2bf6cc=_0x27b923(0x21d);for(let _0x15b862=0x0;_0x15b862<_0x2bf6cc[_0x27b923(0x222)]&&_0x1fd805+_0x15b862<_0x591d43;_0x15b862+=0x1){_0x549b86[_0x1fd805+_0x15b862]=_0x2bf6cc[_0x15b862];}_0x1fd805=_0x591d43-0x1;}return _0x549b86[_0x27b923(0x221)]('');}function splitTopLevelAnd(_0x6f2dd4){const _0x4386f9=a220_0x5018,_0x5a6e82=[];let _0x464c2c=0x0,_0x165f2b=0x0;for(let _0x1ff213=0x0;_0x1ff213<_0x6f2dd4[_0x4386f9(0x222)];_0x1ff213+=0x1){const _0x44ffe7=_0x6f2dd4[_0x1ff213];if(_0x44ffe7==='(')_0x464c2c+=0x1;if(_0x44ffe7===')')_0x464c2c=Math[_0x4386f9(0x212)](0x0,_0x464c2c-0x1);_0x464c2c===0x0&&_0x6f2dd4[_0x4386f9(0x1e3)](_0x1ff213)[_0x4386f9(0x201)](/^AND\b/i)&&(_0x1ff213===0x0||/\s/[_0x4386f9(0x21b)](_0x6f2dd4[_0x1ff213-0x1]??''))&&(_0x5a6e82['push'](_0x6f2dd4[_0x4386f9(0x1e3)](_0x165f2b,_0x1ff213)[_0x4386f9(0x22e)]()),_0x1ff213+=0x2,_0x165f2b=_0x1ff213+0x1);}const _0x51311b=_0x6f2dd4[_0x4386f9(0x1e3)](_0x165f2b)['trim']();if(_0x51311b)_0x5a6e82[_0x4386f9(0x21c)](_0x51311b);return _0x5a6e82;}function hasTopLevelKeyword(_0x4f1015,_0x34df49){const _0x2460db=a220_0x5018;let _0x1a6104=0x0;for(let _0x5d0926=0x0;_0x5d0926<_0x4f1015[_0x2460db(0x222)];_0x5d0926+=0x1){const _0x3a11cf=_0x4f1015[_0x5d0926];if(_0x3a11cf==='(')_0x1a6104+=0x1;if(_0x3a11cf===')')_0x1a6104=Math['max'](0x0,_0x1a6104-0x1);if(_0x1a6104!==0x0)continue;const _0x24479c=_0x4f1015[_0x2460db(0x1e3)](_0x5d0926,_0x5d0926+_0x34df49['length']),_0x2c8920=_0x4f1015[_0x5d0926-0x1]??'\x20',_0x158402=_0x4f1015[_0x5d0926+_0x34df49['length']]??'\x20';if(_0x24479c[_0x2460db(0x20f)]()===_0x34df49[_0x2460db(0x20f)]()&&!/[\w$]/[_0x2460db(0x21b)](_0x2c8920)&&!/[\w$]/[_0x2460db(0x21b)](_0x158402))return!![];}return![];}function splitEquality(_0x4fd2ca){const _0x36ee7d=a220_0x5018,_0x826399=stripOuterParentheses(_0x4fd2ca);let _0xb282d1=0x0,_0x5206e1;for(let _0x1bea24=0x0;_0x1bea24<_0x826399['length'];_0x1bea24+=0x1){const _0x2d89d0=_0x826399[_0x1bea24];if(_0x2d89d0==='(')_0xb282d1+=0x1;if(_0x2d89d0===')')_0xb282d1=Math[_0x36ee7d(0x212)](0x0,_0xb282d1-0x1);const _0x6db659=_0x826399[_0x1bea24-0x1]??'',_0x4016a9=_0x826399[_0x1bea24+0x1]??'';if(_0x2d89d0==='='&&_0xb282d1===0x0&&!/[!<>=:]/[_0x36ee7d(0x21b)](_0x6db659)&&_0x4016a9!=='='){if(_0x5206e1!==undefined)return null;_0x5206e1=_0x1bea24;}}return _0x5206e1===undefined?null:[_0x826399[_0x36ee7d(0x1e3)](0x0,_0x5206e1)[_0x36ee7d(0x22e)](),_0x826399[_0x36ee7d(0x1e3)](_0x5206e1+0x1)[_0x36ee7d(0x22e)]()];}function a220_0xbc42(){const _0x3b7a1a=['replaceAll','includes','(?:^|[^\x5cw$])','sql','trim','No\x20dataset\x20metadata\x20matched\x20the\x20JOIN\x20table.','indexes','Derived-table\x20JOIN\x20targets\x20are\x20not\x20supported.','toLowerCase','MyBatis\x20dynamic\x20JOIN\x20predicates\x20cannot\x20be\x20audited\x20deterministically.','slice','search','natural','OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.','table','indexOf','3122712BVlLMQ','Not\x20every\x20JOIN\x20target\x20predicate\x20could\x20be\x20audited\x20safely.','reduce','unknown','error','5196TRbhaE','\x5cs*\x5c.\x5cs*[\x5cw$]+','646723xVJWrO','covered','tableName','No\x20reported\x20index\x20contains\x20the\x20JOIN\x20access\x20columns.','has','left','unsupportedReason','48CQruJZ','warning','split','from','\x5c$&','exec','\x20JOIN\x20direction\x20is\x20not\x20supported\x20by\x20static\x20index\x20auditing.','910323lrOSnf','unavailable','min','match','full','732wQoJzy','matchAll','24YxiIKP','Only\x20explicit\x20table\x20JOIN\x20clauses\x20with\x20an\x20ON\x20predicate\x20are\x20supported.','MyBatis\x20<include>\x20JOIN\x20fragments\x20cannot\x20be\x20expanded\x20statically.','index','filter','Relevant\x20columns\x20do\x20not\x20form\x20a\x20complete\x20leftmost\x20index\x20prefix.','some','position','cross','sort','toUpperCase','replace','INDEX_METADATA_UNAVAILABLE','max','50qomyXR','unsupportedPredicate','16GxyhCi','startsWith','map','JOIN_INDEX_MISSING','568400sLsXlk','JOIN_INDEX_NOT_USABLE','test','push','__sq__','1955624dUBxat','MyBatis\x20<include>\x20fragments\x20cannot\x20be\x20expanded\x20for\x20JOIN\x20auditing.','The\x20dataset\x20returned\x20no\x20distinguishable\x20index\x20metadata.','join','length','JOIN_PREDICATE_UNSUPPORTED','add','36742idjQUE','where','matchedPrefix','columns','alias'];a220_0xbc42=function(){return _0x3b7a1a;};return a220_0xbc42();}function a220_0x5018(_0x46ee72,_0x499659){_0x46ee72=_0x46ee72-0x1e1;const _0xbc425a=a220_0xbc42();let _0x501854=_0xbc425a[_0x46ee72];return _0x501854;}function parseDirectColumnReference(_0x456bc1,_0x2f0694){const _0x3d3cd4=/^([`"]?[\w$]+[`"]?)\s*\.\s*([`"]?[\w$]+[`"]?)$/['exec'](stripOuterParentheses(_0x456bc1));if(!_0x3d3cd4)return null;if(normalizeIdentifier(_0x3d3cd4[0x1]??'')!==normalizeIdentifier(_0x2f0694))return null;return normalizeIdentifier(_0x3d3cd4[0x2]??'');}function containsColumnReference(_0x18d9f3,_0x48bd39){const _0x6d9c79=a220_0x5018,_0x134664=_0x18d9f3[_0x6d9c79(0x210)](/[`"]/g,''),_0x3f4f73=_0x48bd39['replace'](/[.*+?^${}()|[\]\\]/g,_0x6d9c79(0x1fb));return new RegExp(_0x6d9c79(0x22c)+_0x3f4f73+_0x6d9c79(0x1ef),'i')[_0x6d9c79(0x21b)](_0x134664);}function findEqualityPrefix(_0x5bad50,_0x3ecd93){const _0x11e54c=a220_0x5018,_0x4f4567=new Set(_0x3ecd93[_0x11e54c(0x217)](normalizeIdentifier)),_0x9a8b1d=[];for(const _0x5abeb9 of _0x5bad50){if(!_0x4f4567[_0x11e54c(0x1f4)](normalizeIdentifier(_0x5abeb9)))break;_0x9a8b1d['push'](_0x5abeb9);}return _0x9a8b1d;}function resolveTableMetadata(_0x1bd748,_0x180ae8){const _0x5f4fcc=a220_0x5018,_0x395dc9=normalizeIdentifier(_0x180ae8),_0x273923=_0x1bd748['filter'](_0x221e66=>normalizeIdentifier(_0x221e66[_0x5f4fcc(0x1f2)])===_0x395dc9);if(_0x273923[_0x5f4fcc(0x222)]===0x1)return _0x273923[0x0];const _0x469a6b=_0x395dc9[_0x5f4fcc(0x22b)]('.'),_0x45f8b8=_0x395dc9[_0x5f4fcc(0x1f9)]('.')['at'](-0x1),_0x1a8205=_0x1bd748[_0x5f4fcc(0x209)](_0x1d773f=>{const _0x324ee1=_0x5f4fcc,_0x5ab286=normalizeIdentifier(_0x1d773f[_0x324ee1(0x1f2)]);if(_0x469a6b&&_0x5ab286['includes']('.'))return![];return _0x5ab286[_0x324ee1(0x1f9)]('.')['at'](-0x1)===_0x45f8b8;});return _0x1a8205['length']===0x1?_0x1a8205[0x0]:undefined;}function columnNamesMatch(_0x52c1a4,_0x3d20c8){return normalizeIdentifier(_0x52c1a4)===normalizeIdentifier(_0x3d20c8);}function normalizeIdentifier(_0x28189d){const _0x22cc1b=a220_0x5018;return _0x28189d['replace'](/[`"]/g,'')[_0x22cc1b(0x22e)]()[_0x22cc1b(0x1e1)]();}function isSqlClauseKeyword(_0x5266b3){const _0x47ac72=a220_0x5018;return new Set(['on','using',_0x47ac72(0x226),'join','inner',_0x47ac72(0x1f5),'right','full',_0x47ac72(0x20d),_0x47ac72(0x1e5)])[_0x47ac72(0x1f4)](_0x5266b3);}function stripOuterParentheses(_0x38f85d){const _0x23c891=a220_0x5018;let _0x5a3e91=_0x38f85d['trim']();while(_0x5a3e91[_0x23c891(0x216)]('(')&&_0x5a3e91['endsWith'](')')){let _0x187838=0x0,_0x36fcd3=!![];for(let _0x267265=0x0;_0x267265<_0x5a3e91[_0x23c891(0x222)];_0x267265+=0x1){if(_0x5a3e91[_0x267265]==='(')_0x187838+=0x1;if(_0x5a3e91[_0x267265]===')')_0x187838-=0x1;if(_0x187838===0x0&&_0x267265<_0x5a3e91[_0x23c891(0x222)]-0x1){_0x36fcd3=![];break;}}if(!_0x36fcd3||_0x187838!==0x0)break;_0x5a3e91=_0x5a3e91[_0x23c891(0x1e3)](0x1,-0x1)[_0x23c891(0x22e)]();}return _0x5a3e91;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a221_0x43ce84=a221_0x457b;(function(_0x442b33,_0x56cf35){const _0x1b71f1=a221_0x457b,_0x1fd870=_0x442b33();while(!![]){try{const _0x473b80=-parseInt(_0x1b71f1(0xc3))/0x1+-parseInt(_0x1b71f1(0xc5))/0x2*(parseInt(_0x1b71f1(0xc1))/0x3)+parseInt(_0x1b71f1(0xbf))/0x4+-parseInt(_0x1b71f1(0xc2))/0x5+-parseInt(_0x1b71f1(0xc6))/0x6*(parseInt(_0x1b71f1(0xbd))/0x7)+-parseInt(_0x1b71f1(0xc8))/0x8+parseInt(_0x1b71f1(0xc7))/0x9;if(_0x473b80===_0x56cf35)break;else _0x1fd870['push'](_0x1fd870['shift']());}catch(_0x42f813){_0x1fd870['push'](_0x1fd870['shift']());}}}(a221_0x48c0,0xc3e34));import{resolve}from'node:path';import{findProjectRootDirectory}from'../../context.js';function a221_0x457b(_0x5ec658,_0x4ec900){_0x5ec658=_0x5ec658-0xbc;const _0x48c086=a221_0x48c0();let _0x457bb7=_0x48c086[_0x5ec658];return _0x457bb7;}function a221_0x48c0(){const _0x45ce34=['sql.lock.json','3731zNgwcJ','.rabetbase','300592TKLCPB','sql','699innRjH','2411720AEqaQU','1318126vzOXRP','/sql','3518GJxuZS','2814SEohxz','36662508GiUjDS','7088880xlqSpY'];a221_0x48c0=function(){return _0x45ce34;};return a221_0x48c0();}const DOT_DIR=a221_0x43ce84(0xbe),LOCK_FILE_NAME=a221_0x43ce84(0xbc),TRASH_DIR_NAME='sql-trash';export function loadSqlProjectConfig(_0x27323a,_0x1c0835){const _0x528f43=a221_0x43ce84,_0x5671f4=resolve(_0x1c0835??findProjectRootDirectory()),_0x5d00a8=DOT_DIR+_0x528f43(0xc4),_0x33c613=_0x5d00a8+'/'+_0x27323a;return{'projectRoot':_0x5671f4,'appCode':_0x27323a,'sqlWorkspaceRoot':_0x5d00a8,'sqlRoot':_0x33c613,'sqlRootDir':resolve(_0x5671f4,DOT_DIR,_0x528f43(0xc0),_0x27323a),'lockFilePath':resolve(_0x5671f4,DOT_DIR,LOCK_FILE_NAME),'trashDir':resolve(_0x5671f4,DOT_DIR,TRASH_DIR_NAME)};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x9d4e63,_0x3c2ab8){const _0x13c2ef=a222_0x2833,_0x5983a1=_0x9d4e63();while(!![]){try{const _0x48ca52=-parseInt(_0x13c2ef(0x13f))/0x1+-parseInt(_0x13c2ef(0x130))/0x2*(-parseInt(_0x13c2ef(0x133))/0x3)+parseInt(_0x13c2ef(0x131))/0x4+-parseInt(_0x13c2ef(0x13c))/0x5+-parseInt(_0x13c2ef(0x137))/0x6*(parseInt(_0x13c2ef(0x132))/0x7)+parseInt(_0x13c2ef(0x129))/0x8+parseInt(_0x13c2ef(0x12d))/0x9;if(_0x48ca52===_0x3c2ab8)break;else _0x5983a1['push'](_0x5983a1['shift']());}catch(_0x162571){_0x5983a1['push'](_0x5983a1['shift']());}}}(a222_0x5af5,0x985b2));function a222_0x2833(_0x206118,_0x57d0a6){_0x206118=_0x206118-0x123;const _0x5af5b5=a222_0x5af5();let _0x28336d=_0x5af5b5[_0x206118];return _0x28336d;}import{readdir,stat}from'node:fs/promises';function a222_0x5af5(){const _0x4f9cfe=['.xml','test','replace','64926zCFASi','sql','code','split','dbId','6005665qgZyOd','filter','isDirectory','1027236RsiJuP','dbName','sqlName','name','slice','length','path','mybatisXml','sqlCode','2959368pcVfYH','.sql','sqlRootDir','push','19745226JZriHP','indexOf','mode','114854aEhSGp','1248136dURNCC','721pQMNOm','57pMBQkm'];a222_0x5af5=function(){return _0x4f9cfe;};return a222_0x5af5();}import{extname,join,relative}from'node:path';import{buildDefaultSqlFileName,buildSqlRelativePath}from'./utils.js';function extensionToMode(_0xbcfa31){const _0x3f87db=a222_0x2833;if(_0xbcfa31===_0x3f87db(0x12a))return _0x3f87db(0x138);if(_0xbcfa31===_0x3f87db(0x134))return _0x3f87db(0x127);return undefined;}async function scanSqlFilesRecursively(_0x104dcf,_0x5c1e57){const _0x37506a=a222_0x2833,_0x29e07c=[];try{const _0x18cd9c=await readdir(_0x104dcf,{'withFileTypes':!![]});for(const _0x130798 of _0x18cd9c){const _0xf674d9=join(_0x104dcf,_0x130798[_0x37506a(0x123)]);if(_0x130798[_0x37506a(0x13e)]()){_0x29e07c[_0x37506a(0x12c)](...await scanSqlFilesRecursively(_0xf674d9,_0x5c1e57));continue;}if(!_0x130798['isFile']())continue;const _0x362970=extname(_0x130798[_0x37506a(0x123)])['toLowerCase'](),_0x18ae16=extensionToMode(_0x362970);if(!_0x18ae16)continue;const _0x5b1364=relative(_0x5c1e57,_0xf674d9)[_0x37506a(0x136)](/\\/g,'/'),_0x1d46d0=_0x5b1364[_0x37506a(0x13a)]('/')[_0x37506a(0x13d)](Boolean),_0x583d33=parseSqlPath(_0x1d46d0,_0x130798[_0x37506a(0x123)],_0x362970);if(!_0x583d33)continue;_0x29e07c[_0x37506a(0x12c)]({'sqlCode':_0x583d33[_0x37506a(0x128)],'sqlName':_0x583d33['sqlName'],'dbDirectory':_0x1d46d0[0x0],'filePath':_0xf674d9,'relativePath':_0x5b1364,'lockKey':_0x583d33[_0x37506a(0x128)],'mode':_0x18ae16});}}catch(_0x260fd5){if(_0x260fd5[_0x37506a(0x139)]!=='ENOENT')throw _0x260fd5;}return _0x29e07c;}export async function scanLocalSqlQueries(_0x57f899){const _0x1b4be2=a222_0x2833;return scanSqlFilesRecursively(_0x57f899[_0x1b4be2(0x12b)],_0x57f899[_0x1b4be2(0x12b)]);}export function resolveLocalSqlFilePath(_0x3af655,_0x24cb29,_0x503863){const _0x8560b8=a222_0x2833,_0x32f105=_0x503863?.[_0x8560b8(0x126)]||(_0x503863?.['sqlName']||_0x503863?.[_0x8560b8(0x140)]?buildSqlRelativePath(_0x24cb29,_0x503863?.[_0x8560b8(0x141)],_0x503863?.['dbName'],_0x503863?.[_0x8560b8(0x12f)]||_0x8560b8(0x138),_0x503863?.[_0x8560b8(0x13b)]):buildDefaultSqlFileName(_0x24cb29,_0x503863?.['mode']||_0x8560b8(0x138)));return join(_0x3af655[_0x8560b8(0x12b)],_0x32f105);}export async function directoryExists(_0x59c2d){const _0x32d8d4=a222_0x2833;try{const _0x2c7e64=await stat(_0x59c2d);return _0x2c7e64[_0x32d8d4(0x13e)]();}catch{return![];}}function parseSqlPath(_0x5cbb32,_0x56c9a8,_0x37b308){const _0x470100=a222_0x2833,_0x5daabf=_0x56c9a8[_0x470100(0x124)](0x0,-_0x37b308[_0x470100(0x125)]);if(_0x5cbb32[_0x470100(0x125)]<0x2)return null;const _0x3d1ef8=_0x5daabf[_0x470100(0x12e)]('_');if(_0x3d1ef8<=0x0||_0x3d1ef8>=_0x5daabf[_0x470100(0x125)]-0x1)return null;const _0x368567=_0x5daabf[_0x470100(0x124)](0x0,_0x3d1ef8);if(!isLikelySqlCode(_0x368567))return null;return{'sqlCode':_0x368567,'sqlName':_0x5daabf[_0x470100(0x124)](_0x3d1ef8+0x1)};}function isLikelySqlCode(_0x14e065){const _0x276074=a222_0x2833;return/^[A-Za-z0-9-]+-[A-Za-z0-9-]+$/[_0x276074(0x135)](_0x14e065);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2e22fd,_0x3697ae){const _0x499bbc=a223_0x2373,_0x492ad5=_0x2e22fd();while(!![]){try{const _0x4ec42b=-parseInt(_0x499bbc(0x1f3))/0x1+-parseInt(_0x499bbc(0x1f0))/0x2+parseInt(_0x499bbc(0x1e7))/0x3+-parseInt(_0x499bbc(0x1e8))/0x4*(parseInt(_0x499bbc(0x1ea))/0x5)+-parseInt(_0x499bbc(0x1ee))/0x6*(parseInt(_0x499bbc(0x1ef))/0x7)+parseInt(_0x499bbc(0x1f1))/0x8+parseInt(_0x499bbc(0x1ed))/0x9;if(_0x4ec42b===_0x3697ae)break;else _0x492ad5['push'](_0x492ad5['shift']());}catch(_0x440a62){_0x492ad5['push'](_0x492ad5['shift']());}}}(a223_0x1c00,0x6ffea));import{readFile}from'node:fs/promises';import a223_0x472864 from'node:crypto';export function computeSqlContentHash(_0x2f199d){const _0x2b3788=a223_0x2373;return a223_0x472864['createHash'](_0x2b3788(0x1ec))['update'](_0x2f199d)[_0x2b3788(0x1eb)](_0x2b3788(0x1f2));}function a223_0x2373(_0x4f5d02,_0x3a96e7){_0x4f5d02=_0x4f5d02-0x1e7;const _0x1c00ed=a223_0x1c00();let _0x2373e0=_0x1c00ed[_0x4f5d02];return _0x2373e0;}function a223_0x1c00(){const _0x1d3f1d=['hex','877458WqiuwY','795582KOlAZt','377252YSxFCv','utf8','5LHwcIm','digest','md5','4811166HSxatx','70350dmkWsd','63MpmYye','351586FFXFbB','7296408vnRWZf'];a223_0x1c00=function(){return _0x1d3f1d;};return a223_0x1c00();}export async function computeSqlFileHash(_0x25c93f){const _0x55c13a=a223_0x2373,_0x2e847d=await readFile(_0x25c93f,_0x55c13a(0x1e9));return computeSqlContentHash(_0x2e847d);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x3d16cf,_0xb363e){const _0x3e3089=a224_0x4c37,_0x903bb6=_0x3d16cf();while(!![]){try{const _0x11b0b4=parseInt(_0x3e3089(0x144))/0x1*(-parseInt(_0x3e3089(0x148))/0x2)+-parseInt(_0x3e3089(0x149))/0x3+parseInt(_0x3e3089(0x14e))/0x4*(-parseInt(_0x3e3089(0x13a))/0x5)+-parseInt(_0x3e3089(0x14f))/0x6*(-parseInt(_0x3e3089(0x14b))/0x7)+parseInt(_0x3e3089(0x13d))/0x8*(parseInt(_0x3e3089(0x147))/0x9)+parseInt(_0x3e3089(0x142))/0xa+parseInt(_0x3e3089(0x141))/0xb*(parseInt(_0x3e3089(0x140))/0xc);if(_0x11b0b4===_0xb363e)break;else _0x903bb6['push'](_0x903bb6['shift']());}catch(_0x51eadb){_0x903bb6['push'](_0x903bb6['shift']());}}}(a224_0x3511,0xb1ab2));import{mkdir,readFile,writeFile}from'node:fs/promises';function a224_0x3511(){const _0x479ae0=['code','108hIUNTK','196801fAephC','11249120IYiHTU','apps','290617LegTBw','sqlRoot','Check\x20.rabetbase/sql.lock.json\x20or\x20operate\x20from\x20the\x20correct\x20project\x20directory.','45270hCEwuw','4FKRtEk','3576993LUxrIG',':\x20sqlRoot\x20mismatch\x20—\x20current\x20\x22','14orhYnG','utf8','\x22\x20vs\x20lock\x20\x22','3376QVYeWJ','2510490OvwTxt','4045HifFMf','lastSync','parse','1688UqwxlS','sqls'];a224_0x3511=function(){return _0x479ae0;};return a224_0x3511();}function a224_0x4c37(_0x2c646e,_0x3c9519){_0x2c646e=_0x2c646e-0x13a;const _0x35115b=a224_0x3511();let _0x4c37cd=_0x35115b[_0x2c646e];return _0x4c37cd;}import{dirname}from'node:path';export function createEmptySqlLock(){return{'apps':{}};}export function ensureSqlLockScope(_0x1bef08,_0x19bce0,_0x2d9c26,_0x1416b4){const _0x2c936b=a224_0x4c37,_0x87d98f=_0x1bef08??createEmptySqlLock();let _0x4560f5=_0x87d98f['apps'][_0x19bce0];if(!_0x4560f5)return _0x4560f5={'sqlRoot':_0x2d9c26,'lastSync':'','sqls':{}},_0x87d98f[_0x2c936b(0x143)][_0x19bce0]=_0x4560f5,{'lockData':_0x87d98f,'appLock':_0x4560f5};if(!_0x4560f5[_0x2c936b(0x145)])_0x4560f5['sqlRoot']=_0x2d9c26;else{if(_0x4560f5[_0x2c936b(0x145)]!==_0x2d9c26)throw new Error(_0x1416b4+_0x2c936b(0x14a)+_0x2d9c26+_0x2c936b(0x14d)+_0x4560f5['sqlRoot']+'\x22.\x20'+_0x2c936b(0x146));}return!_0x4560f5[_0x2c936b(0x13e)]&&(_0x4560f5[_0x2c936b(0x13e)]={}),!_0x4560f5[_0x2c936b(0x13b)]&&(_0x4560f5[_0x2c936b(0x13b)]=''),{'lockData':_0x87d98f,'appLock':_0x4560f5};}export async function readSqlLockFile(_0x2dd8e0){const _0x1de1b4=a224_0x4c37;try{const _0x43d845=await readFile(_0x2dd8e0,'utf8');return JSON[_0x1de1b4(0x13c)](_0x43d845);}catch(_0x22f5e9){if(_0x22f5e9[_0x1de1b4(0x13f)]==='ENOENT')return null;throw new Error('Failed\x20to\x20read\x20SQL\x20lock\x20file:\x20'+String(_0x22f5e9));}}export async function writeSqlLockFile(_0xd460dc,_0x25520d){const _0x50fd4d=a224_0x4c37;await mkdir(dirname(_0xd460dc),{'recursive':!![]}),await writeFile(_0xd460dc,JSON['stringify'](_0x25520d,null,0x2),_0x50fd4d(0x14c));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4f02f5,_0x5cf768){const _0x16899e=a226_0x27d7,_0x54c7f5=_0x4f02f5();while(!![]){try{const _0x1fa409=-parseInt(_0x16899e(0x1cb))/0x1*(parseInt(_0x16899e(0x1d1))/0x2)+parseInt(_0x16899e(0x1ce))/0x3*(parseInt(_0x16899e(0x1d8))/0x4)+-parseInt(_0x16899e(0x1dd))/0x5+-parseInt(_0x16899e(0x1d2))/0x6*(-parseInt(_0x16899e(0x1d6))/0x7)+parseInt(_0x16899e(0x1cd))/0x8*(parseInt(_0x16899e(0x1d5))/0x9)+-parseInt(_0x16899e(0x1d3))/0xa+parseInt(_0x16899e(0x1d4))/0xb*(parseInt(_0x16899e(0x1cc))/0xc);if(_0x1fa409===_0x5cf768)break;else _0x54c7f5['push'](_0x54c7f5['shift']());}catch(_0x8c9a58){_0x54c7f5['push'](_0x54c7f5['shift']());}}}(a226_0x49b8,0x97b20));export function detectSqlMode(_0x3cdcc7){const _0xd15e18=a226_0x27d7,_0x5ad706=_0x3cdcc7[_0xd15e18(0x1dc)]();if(/^<(select|insert|update|delete)\b/i['test'](_0x5ad706))return _0xd15e18(0x1d9);return _0xd15e18(0x1d7);}export function getSqlFileExtension(_0x4fa562){const _0x25b814=a226_0x27d7;return _0x4fa562===_0x25b814(0x1d9)?_0x25b814(0x1db):_0x25b814(0x1d0);}export function buildDefaultSqlFileName(_0x46833d,_0x18f1b3){return''+_0x46833d+getSqlFileExtension(_0x18f1b3);}function a226_0x49b8(){const _0xc9a4bc=['unknown-sql','.sql','716322OydJwK','39954tUgkDW','3131420TTWeHl','3387538QYiMsx','9387099HiWPCd','749kAnmlu','sql','12hxWwEw','mybatisXml','replace','.xml','trimStart','5826165oyRRrX','2cTykMi','12DOXnfo','8IzqrFF','752559uYiHuZ'];a226_0x49b8=function(){return _0xc9a4bc;};return a226_0x49b8();}function a226_0x27d7(_0x4e31f9,_0xb51612){_0x4e31f9=_0x4e31f9-0x1cb;const _0x49b86b=a226_0x49b8();let _0x27d735=_0x49b86b[_0x4e31f9];return _0x27d735;}export function sanitizeSqlPathSegment(_0x4cb363,_0x712c25){const _0x4e1c61=a226_0x27d7,_0x30039d=String(_0x4cb363??'')['trim'](),_0x494d94=_0x30039d[_0x4e1c61(0x1da)](/[<>:"/\\|?*\u0000-\u001F]/g,'-')['replace'](/\s+/g,'-')['replace'](/-+/g,'-')[_0x4e1c61(0x1da)](/^\.+/,'')[_0x4e1c61(0x1da)](/\.+$/,'')[_0x4e1c61(0x1da)](/^-+/,'')['replace'](/-+$/,'');return _0x494d94||_0x712c25;}export function buildDbDirectoryName(_0x41b9e7,_0x96d31){return sanitizeSqlPathSegment(_0x41b9e7,_0x96d31!=null?'db-'+_0x96d31:'unknown-db');}export function buildSqlRelativePath(_0x102984,_0xbca553,_0x4970eb,_0x3a456b,_0x1fd635){const _0x5bd999=a226_0x27d7,_0x47a5cd=buildDbDirectoryName(_0x4970eb,_0x1fd635),_0x1033e3=sanitizeSqlPathSegment(_0x102984,_0x5bd999(0x1cf)),_0x35b705=sanitizeSqlPathSegment(_0xbca553,_0x1033e3);return _0x47a5cd+'/'+_0x1033e3+'_'+_0x35b705+getSqlFileExtension(_0x3a456b);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a227_0x492ce4=a227_0x2c20;(function(_0x306490,_0x3e901b){const _0x53dc87=a227_0x2c20,_0x27ec1a=_0x306490();while(!![]){try{const _0x1e86d8=-parseInt(_0x53dc87(0x1a9))/0x1*(parseInt(_0x53dc87(0x1ae))/0x2)+parseInt(_0x53dc87(0x1be))/0x3*(parseInt(_0x53dc87(0x178))/0x4)+-parseInt(_0x53dc87(0x1a4))/0x5*(parseInt(_0x53dc87(0x18d))/0x6)+-parseInt(_0x53dc87(0x170))/0x7*(parseInt(_0x53dc87(0x1af))/0x8)+parseInt(_0x53dc87(0x1b0))/0x9+-parseInt(_0x53dc87(0x166))/0xa+parseInt(_0x53dc87(0x19f))/0xb;if(_0x1e86d8===_0x3e901b)break;else _0x27ec1a['push'](_0x27ec1a['shift']());}catch(_0x2b9e2d){_0x27ec1a['push'](_0x27ec1a['shift']());}}}(a227_0x3545,0x29650));const MYBATIS_OUTER_TAGS=new Map([['select',a227_0x492ce4(0x1b6)],['insert',a227_0x492ce4(0x1ad)],[a227_0x492ce4(0x1a0),a227_0x492ce4(0x181)],['delete',a227_0x492ce4(0x197)]]),MYBATIS_DYNAMIC_TAGS=new Set(['if','where','foreach',a227_0x492ce4(0x1c6),a227_0x492ce4(0x1c8),a227_0x492ce4(0x19b),a227_0x492ce4(0x1ba),a227_0x492ce4(0x19e),a227_0x492ce4(0x18a),a227_0x492ce4(0x18b),a227_0x492ce4(0x1b4)]),MYBATIS_BRANCH_TAGS=new Set(['if',a227_0x492ce4(0x194),a227_0x492ce4(0x1c6),a227_0x492ce4(0x1c8),a227_0x492ce4(0x19b)]);export const MYBATIS_DYNAMIC_START_MARKER=a227_0x492ce4(0x16d);function a227_0x3545(){const _0x20e639=['indexOf','DELETE','MyBatis\x20dynamic\x20tag\x20must\x20be\x20inside\x20the\x20statement\x20wrapper:\x20<','>','__RABETBASE_MYBATIS_INCLUDE_UNRESOLVED__','otherwise','startsWith','^<\x5cs*(?:','set','10390501jykTsF','update','exec','test','sql','23710aPgwKv','string','\x20query\x20targeting\x20','from','replaceAll','217561NLIZtt','MyBatis\x20dynamic\x20tag\x20names\x20must\x20be\x20lowercase:\x20<','<!--','\x20WHERE\x20','INSERT','2umCMbY','16OyerHx','347778QtFQUK','UNKNOWN','has','Invalid\x20XML\x20entity\x20reference.','property','SQL\x20contains\x20blocked\x20DELETE\x20or\x20DDL\x20statements','SELECT',']]>','tagName','<![CDATA[','trim','MyBatis\x20XML\x20must\x20contain\x20exactly\x20one\x20complete\x20statement\x20wrapper.','XML\x20declarations\x20must\x20precede\x20the\x20MyBatis\x20statement\x20wrapper.','split','84939brjseC',')\x5cb','__RABETBASE_MYBATIS_DYNAMIC_END__','Unable\x20to\x20detect\x20SQL\x20type.\x20','parseInt',''','Unsupported\x20MyBatis\x20XML\x20tag:\x20<','Unterminated\x20XML\x20declaration.','choose','statementType','when','994530RiMzno','DELETE\x20statements\x20are\x20blocked\x20from\x20auto-save','length','unknown\x20table(s)','matchAll','MyBatis\x20<property>\x20must\x20be\x20a\x20self-closing\x20direct\x20child\x20of\x20<include>.','isDangerous','__RABETBASE_MYBATIS_DYNAMIC_START__','\x20with\x20parameters:\x20','replace','1140356mEVrCo','WITH','SQL\x20content\x20is\x20empty','DDL','rawName','\x20statements\x20cannot\x20be\x20auto-saved.\x20Please\x20operate\x20manually\x20on\x20the\x20platform.','Unterminated\x20CDATA\x20section.','add','4hfpbEU','Invalid\x20attributes\x20on\x20MyBatis\x20XML\x20tag:\x20<','push','toUpperCase','where','match','&','error','reason','UPDATE','type','get','-->','Unclosed\x20MyBatis\x20XML\x20tag:\x20<','slice','join','Mismatched\x20MyBatis\x20XML\x20closing\x20tag:\x20</','Unable\x20to\x20detect\x20SQL\x20type.\x20Please\x20check\x20the\x20SQL\x20content.','bind','include','"','252bDNNeF','Unterminated\x20MyBatis\x20XML\x20tag.','Invalid\x20MyBatis\x20XML\x20tag.','DDL\x20statements\x20are\x20blocked\x20from\x20auto-save','Unterminated\x20XML\x20comment.','fromCodePoint','includes','foreach','outer'];a227_0x3545=function(){return _0x20e639;};return a227_0x3545();}export const MYBATIS_DYNAMIC_END_MARKER=a227_0x492ce4(0x1c0);export const MYBATIS_INCLUDE_MARKER=a227_0x492ce4(0x19a);const UNRESOLVED_SQL_FRAGMENT='__RABETBASE_UNRESOLVED_SQL_FRAGMENT__',MYBATIS_OUTER_TAG_PATTERN=new RegExp(a227_0x492ce4(0x19d)+[...MYBATIS_OUTER_TAGS['keys']()][a227_0x492ce4(0x187)]('|')+a227_0x492ce4(0x1bf),'i');export function normalizeSqlForStaticAnalysis(_0x5180c8){const _0x1c155a=a227_0x492ce4,_0x1facd3=typeof _0x5180c8===_0x1c155a(0x1a5)?_0x5180c8:'';if(!startsWithMybatisStatementWrapper(_0x1facd3))return{'sql':_0x1facd3,'mode':_0x1c155a(0x1a3)};let _0x49d8f0=0x0,_0x28797d='',_0x4acac6,_0x3fd766=![],_0x5c5bb1=![];const _0x4f49f3=[];while(_0x49d8f0<_0x1facd3[_0x1c155a(0x168)]){if(_0x1facd3[_0x1c155a(0x19c)](_0x1c155a(0x1ab),_0x49d8f0)){const _0x1254ae=_0x1facd3['indexOf'](_0x1c155a(0x184),_0x49d8f0+0x4);if(_0x1254ae<0x0)return invalidMybatisSource(_0x1c155a(0x191));_0x28797d+='\x20',_0x49d8f0=_0x1254ae+0x3;continue;}if(_0x1facd3[_0x1c155a(0x19c)](_0x1c155a(0x1b9),_0x49d8f0)){if(!_0x3fd766||_0x5c5bb1)return invalidMybatisSource('CDATA\x20sections\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.');const _0x197619=_0x1facd3[_0x1c155a(0x196)](_0x1c155a(0x1b7),_0x49d8f0+0x9);if(_0x197619<0x0)return invalidMybatisSource(_0x1c155a(0x176));_0x28797d+=_0x1facd3['slice'](_0x49d8f0+0x9,_0x197619),_0x49d8f0=_0x197619+0x3;continue;}if(_0x1facd3['startsWith']('<?',_0x49d8f0)){if(_0x3fd766)return invalidMybatisSource(_0x1c155a(0x1bc));const _0x54be37=_0x1facd3['indexOf']('?>',_0x49d8f0+0x2);if(_0x54be37<0x0)return invalidMybatisSource(_0x1c155a(0x1c5));_0x28797d+='\x20',_0x49d8f0=_0x54be37+0x2;continue;}if(_0x1facd3[_0x49d8f0]!=='<'){const _0x5afabe=_0x1facd3[_0x1c155a(0x196)]('<',_0x49d8f0),_0x1f2bf0=_0x5afabe<0x0?_0x1facd3[_0x1c155a(0x168)]:_0x5afabe,_0x40f80a=_0x1facd3[_0x1c155a(0x186)](_0x49d8f0,_0x1f2bf0);if((!_0x3fd766||_0x5c5bb1)&&_0x40f80a[_0x1c155a(0x1ba)]())return invalidMybatisSource('SQL\x20text\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.');if(_0x3fd766&&!_0x5c5bb1){const _0x52b8de=decodeXmlEntities(_0x40f80a);if(_0x52b8de===null)return invalidMybatisSource(_0x1c155a(0x1b3));_0x28797d+=_0x52b8de;}else _0x28797d+='\x20';_0x49d8f0=_0x1f2bf0;continue;}const _0xfa0fb4=findXmlTagEnd(_0x1facd3,_0x49d8f0);if(_0xfa0fb4<0x0)return invalidMybatisSource(_0x1c155a(0x18e));const _0x5008f3=_0x1facd3[_0x1c155a(0x186)](_0x49d8f0,_0xfa0fb4+0x1),_0x4fa6eb=/^<\s*(\/?)\s*([A-Za-z][\w:-]*)([\s\S]*?)(\/?)\s*>$/[_0x1c155a(0x1a1)](_0x5008f3);if(!_0x4fa6eb)return invalidMybatisSource(_0x1c155a(0x18f));const _0x2d9e69=_0x4fa6eb[0x1]==='/',_0x550dbf=_0x4fa6eb[0x2]??'',_0x505afc=_0x550dbf['toLowerCase'](),_0x1bc81e=_0x4fa6eb[0x3]??'',_0x23fd4f=_0x4fa6eb[0x4]==='/',_0x24467c=MYBATIS_OUTER_TAGS[_0x1c155a(0x183)](_0x505afc);if(!_0x24467c&&!MYBATIS_DYNAMIC_TAGS['has'](_0x505afc))return invalidMybatisSource(_0x1c155a(0x1c4)+_0x505afc+'>.');if(!_0x24467c&&_0x550dbf!==_0x505afc)return invalidMybatisSource(_0x1c155a(0x1aa)+_0x550dbf+'>.');if(_0x2d9e69){if(_0x1bc81e[_0x1c155a(0x1ba)]()||_0x23fd4f)return invalidMybatisSource('Invalid\x20MyBatis\x20XML\x20closing\x20tag:\x20</'+_0x550dbf+'>.');const _0x126e68=_0x4f49f3['at'](-0x1);if(!_0x126e68||(_0x126e68[_0x1c155a(0x195)]?_0x126e68[_0x1c155a(0x1b8)]!==_0x505afc:_0x126e68[_0x1c155a(0x174)]!==_0x550dbf))return invalidMybatisSource(_0x1c155a(0x188)+_0x550dbf+'>.');_0x4f49f3['pop']();if(_0x126e68[_0x1c155a(0x195)])_0x5c5bb1=!![];_0x28797d+=MYBATIS_BRANCH_TAGS[_0x1c155a(0x1b2)](_0x505afc)?'\x20'+MYBATIS_DYNAMIC_END_MARKER+'\x20':'\x20';}else{if(!hasWellFormedXmlAttributes(_0x1bc81e))return invalidMybatisSource(_0x1c155a(0x179)+_0x550dbf+'>.');if(_0x505afc===_0x1c155a(0x1b4)&&(!_0x23fd4f||_0x4f49f3['at'](-0x1)?.['tagName']!=='include'))return invalidMybatisSource(_0x1c155a(0x16b));if(_0x24467c){if(_0x3fd766||_0x4f49f3[_0x1c155a(0x168)]>0x0)return invalidMybatisSource('Multiple\x20MyBatis\x20statement\x20wrappers\x20are\x20not\x20supported.');_0x3fd766=!![],_0x5c5bb1=_0x23fd4f,_0x4acac6=_0x24467c;}else{if(!_0x3fd766||_0x5c5bb1)return invalidMybatisSource(_0x1c155a(0x198)+_0x550dbf+'>.');}_0x28797d+=_0x505afc===_0x1c155a(0x17c)?_0x1c155a(0x1ac):_0x505afc===_0x1c155a(0x19e)?'\x20SET\x20':_0x505afc===_0x1c155a(0x18b)?'\x20'+MYBATIS_INCLUDE_MARKER+'\x20':MYBATIS_BRANCH_TAGS[_0x1c155a(0x1b2)](_0x505afc)&&!_0x23fd4f?'\x20'+MYBATIS_DYNAMIC_START_MARKER+'\x20':'\x20',!_0x23fd4f&&_0x4f49f3['push']({'rawName':_0x550dbf,'tagName':_0x505afc,'outer':!!_0x24467c});}_0x49d8f0=_0xfa0fb4+0x1;}if(_0x4f49f3[_0x1c155a(0x168)]>0x0)return invalidMybatisSource(_0x1c155a(0x185)+_0x4f49f3['at'](-0x1)?.['rawName']+'>.');if(!_0x3fd766||!_0x5c5bb1)return invalidMybatisSource(_0x1c155a(0x1bb));return{'sql':_0x28797d['trim'](),'mode':'mybatisXml',..._0x4acac6?{'statementType':_0x4acac6}:{}};}function hasWellFormedXmlAttributes(_0x42d9ec){const _0x2ca39a=a227_0x492ce4;let _0x3e995d=0x0;const _0x271679=new Set();while(_0x3e995d<_0x42d9ec[_0x2ca39a(0x168)]){while(_0x3e995d<_0x42d9ec[_0x2ca39a(0x168)]&&/\s/[_0x2ca39a(0x1a2)](_0x42d9ec[_0x3e995d]??''))_0x3e995d+=0x1;if(_0x3e995d>=_0x42d9ec[_0x2ca39a(0x168)])return!![];const _0x220035=/^[A-Za-z_:][\w:.-]*/[_0x2ca39a(0x1a1)](_0x42d9ec[_0x2ca39a(0x186)](_0x3e995d)),_0xc3a2ca=_0x220035?.[0x0];if(!_0xc3a2ca||_0x271679['has'](_0xc3a2ca))return![];_0x271679[_0x2ca39a(0x177)](_0xc3a2ca),_0x3e995d+=_0xc3a2ca[_0x2ca39a(0x168)];while(_0x3e995d<_0x42d9ec[_0x2ca39a(0x168)]&&/\s/['test'](_0x42d9ec[_0x3e995d]??''))_0x3e995d+=0x1;if(_0x42d9ec[_0x3e995d]!=='=')return![];_0x3e995d+=0x1;while(_0x3e995d<_0x42d9ec[_0x2ca39a(0x168)]&&/\s/[_0x2ca39a(0x1a2)](_0x42d9ec[_0x3e995d]??''))_0x3e995d+=0x1;const _0x304870=_0x42d9ec[_0x3e995d];if(_0x304870!=='\x22'&&_0x304870!=='\x27')return![];_0x3e995d+=0x1;const _0x2e9e17=_0x42d9ec['indexOf'](_0x304870,_0x3e995d);if(_0x2e9e17<0x0)return![];if(decodeXmlEntities(_0x42d9ec['slice'](_0x3e995d,_0x2e9e17))===null)return![];_0x3e995d=_0x2e9e17+0x1;}return!![];}function startsWithMybatisStatementWrapper(_0x4cd625){const _0xcdf511=a227_0x492ce4;let _0x167bbc=0x0;const _0x529020=()=>{const _0x3a8403=a227_0x2c20;while(_0x167bbc<_0x4cd625[_0x3a8403(0x168)]&&/\s/[_0x3a8403(0x1a2)](_0x4cd625[_0x167bbc]??''))_0x167bbc+=0x1;};_0x529020();while(_0x167bbc<_0x4cd625['length']){if(_0x4cd625[_0xcdf511(0x19c)]('<!--',_0x167bbc)){const _0x1b18c1=_0x4cd625[_0xcdf511(0x196)](_0xcdf511(0x184),_0x167bbc+0x4);if(_0x1b18c1<0x0)return!![];_0x167bbc=_0x1b18c1+0x3,_0x529020();continue;}if(_0x4cd625['startsWith']('<?',_0x167bbc)){const _0x36e188=_0x4cd625[_0xcdf511(0x196)]('?>',_0x167bbc+0x2);if(_0x36e188<0x0)return!![];_0x167bbc=_0x36e188+0x2,_0x529020();continue;}break;}return MYBATIS_OUTER_TAG_PATTERN[_0xcdf511(0x1a2)](_0x4cd625[_0xcdf511(0x186)](_0x167bbc));}function invalidMybatisSource(_0xeb19bc){return{'sql':'','mode':'mybatisXml','error':_0xeb19bc};}function findXmlTagEnd(_0x18b358,_0x1ef0ba){const _0x3acdcb=a227_0x492ce4;let _0x58e5aa;for(let _0xbb60d8=_0x1ef0ba+0x1;_0xbb60d8<_0x18b358[_0x3acdcb(0x168)];_0xbb60d8+=0x1){const _0x757f4a=_0x18b358[_0xbb60d8];if(_0x58e5aa){if(_0x757f4a===_0x58e5aa)_0x58e5aa=undefined;continue;}if(_0x757f4a==='\x22'||_0x757f4a==='\x27'){_0x58e5aa=_0x757f4a;continue;}if(_0x757f4a==='>')return _0xbb60d8;}return-0x1;}function a227_0x2c20(_0xe8ba6a,_0x53fada){_0xe8ba6a=_0xe8ba6a-0x166;const _0x3545e1=a227_0x3545();let _0x2c2084=_0x3545e1[_0xe8ba6a];return _0x2c2084;}function decodeXmlEntities(_0x122b29){let _0xc1e468=![];const _0xb12de4=_0x122b29['replace'](/&(?:#x[0-9a-f]+;|#[0-9]+;|[A-Za-z_:][\w:.-]*;)?/g,_0x56fe39=>{const _0x4cd681=a227_0x2c20;if(_0x56fe39==='<')return'<';if(_0x56fe39===_0x4cd681(0x199))return'>';if(_0x56fe39===_0x4cd681(0x18c))return'\x22';if(_0x56fe39===_0x4cd681(0x1c3))return'\x27';if(_0x56fe39===_0x4cd681(0x17e))return'&';const _0x44acf7=/^&#(?:x([0-9a-f]+)|([0-9]+));$/[_0x4cd681(0x1a1)](_0x56fe39);if(_0x44acf7){const _0x27d646=_0x44acf7[0x1],_0x5d8524=_0x44acf7[0x2],_0x4d7e7d=Number[_0x4cd681(0x1c2)](_0x27d646??_0x5d8524??'',_0x27d646?0x10:0xa);if(isValidXmlCharacter(_0x4d7e7d))return String[_0x4cd681(0x192)](_0x4d7e7d);}return _0xc1e468=!![],'';});return _0xc1e468?null:_0xb12de4;}function isValidXmlCharacter(_0x41a218){return _0x41a218===0x9||_0x41a218===0xa||_0x41a218===0xd||_0x41a218>=0x20&&_0x41a218<=0xd7ff||_0x41a218>=0xe000&&_0x41a218<=0xfffd||_0x41a218>=0x10000&&_0x41a218<=0x10ffff;}export function detectSqlType(_0x3b5064){return detectNormalizedSqlType(normalizeSqlForStaticAnalysis(_0x3b5064));}function detectNormalizedSqlType(_0x26f8d7){const _0x37ea11=a227_0x492ce4;if(_0x26f8d7[_0x37ea11(0x17f)])return{'type':_0x37ea11(0x1b1),'isSelectOnly':![],'isDangerous':![],'reason':_0x26f8d7[_0x37ea11(0x17f)]};if(!_0x26f8d7[_0x37ea11(0x1a3)][_0x37ea11(0x1ba)]())return{'type':_0x37ea11(0x1b1),'isSelectOnly':![],'isDangerous':![],'reason':_0x37ea11(0x172)};const _0x4d2ae6=stripStaticAnalysisMarkers(_0x26f8d7[_0x37ea11(0x1a3)])[_0x37ea11(0x16f)](/#\{[^}]*\}/g,'?')[_0x37ea11(0x16f)](/\$\{[^}]*\}/g,'?')['replace'](/@[^(\s]+(\([^)]*\))?/g,'')[_0x37ea11(0x16f)](/\/\*[\s\S]*?\*\//g,'')[_0x37ea11(0x1ba)](),_0x88a180=_0x4d2ae6[_0x37ea11(0x1bd)]('\x0a');let _0x43045c='';for(const _0x316092 of _0x88a180){const _0x39188d=_0x316092['trim']();if(!_0x39188d||_0x39188d[_0x37ea11(0x19c)]('--')||_0x39188d['startsWith']('/*'))continue;_0x43045c=_0x39188d;break;}const _0x1f141d=_0x43045c[_0x37ea11(0x17b)](),_0x210f21=_0x26f8d7[_0x37ea11(0x1c7)],_0x3d4de5=maskSqlTextForBlockedKeywordScan(_0x4d2ae6),_0x23b3b7=/\b(DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i['test'](_0x3d4de5);if(_0x210f21===_0x37ea11(0x1b6)||!_0x210f21&&(_0x1f141d[_0x37ea11(0x19c)](_0x37ea11(0x1b6))||_0x1f141d[_0x37ea11(0x19c)](_0x37ea11(0x171)))){const _0x4b2ee5=/\b(INSERT|UPDATE|DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i[_0x37ea11(0x1a2)](_0x4d2ae6);return{'type':'SELECT','isSelectOnly':!_0x4b2ee5,'isDangerous':_0x4b2ee5,'reason':_0x4b2ee5?'SQL\x20contains\x20modification\x20statements\x20alongside\x20SELECT':undefined};}if(_0x210f21===_0x37ea11(0x1ad)||!_0x210f21&&_0x1f141d['startsWith'](_0x37ea11(0x1ad)))return{'type':'INSERT','isSelectOnly':![],'isDangerous':_0x23b3b7,'reason':_0x23b3b7?_0x37ea11(0x1b5):undefined};if(_0x210f21==='UPDATE'||!_0x210f21&&_0x1f141d[_0x37ea11(0x19c)](_0x37ea11(0x181)))return{'type':_0x37ea11(0x181),'isSelectOnly':![],'isDangerous':_0x23b3b7,'reason':_0x23b3b7?_0x37ea11(0x1b5):undefined};if(_0x210f21===_0x37ea11(0x197)||!_0x210f21&&_0x1f141d['startsWith'](_0x37ea11(0x197)))return{'type':'DELETE','isSelectOnly':![],'isDangerous':!![],'reason':_0x37ea11(0x167)};if(/^(CREATE|ALTER|DROP|TRUNCATE)/i[_0x37ea11(0x1a2)](_0x1f141d))return{'type':_0x37ea11(0x173),'isSelectOnly':![],'isDangerous':!![],'reason':_0x37ea11(0x190)};return{'type':_0x37ea11(0x1b1),'isSelectOnly':![],'isDangerous':![]};}function stripStaticAnalysisMarkers(_0x21091e){const _0x542d89=a227_0x492ce4;return _0x21091e[_0x542d89(0x1a8)](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x542d89(0x1a8)](MYBATIS_DYNAMIC_END_MARKER,'\x20')['replaceAll'](MYBATIS_INCLUDE_MARKER,'\x20'+UNRESOLVED_SQL_FRAGMENT+'\x20');}function maskSqlTextForBlockedKeywordScan(_0x15ed67){const _0x5e7ae5=a227_0x492ce4;return _0x15ed67[_0x5e7ae5(0x16f)](/'(?:''|\\.|[^'])*'/g,'\x20')['replace'](/"(?:""|\\.|[^"])*"/g,'\x20')['replace'](/`(?:``|\\.|[^`])*`/g,'\x20')[_0x5e7ae5(0x16f)](/--.*$/gm,'\x20')[_0x5e7ae5(0x16f)](/#.*$/gm,'\x20')['replace'](/\/\*[\s\S]*?\*\//g,'\x20');}function extractTables(_0x52fb23){const _0x136769=a227_0x492ce4,_0x3f1dd3=_0x52fb23[_0x136769(0x16f)](/#\{[^}]*\}/g,'?')[_0x136769(0x16f)](/\$\{[^}]*\}/g,'?')[_0x136769(0x16f)](/'[^']*'/g,'\x27\x27')[_0x136769(0x16f)](/--.*$/gm,'')[_0x136769(0x16f)](/\/\*[\s\S]*?\*\//g,''),_0xb2093d=[],_0xccc4bb=_0x3f1dd3['match'](/FROM\s+([^\s,)(]+)/i);addTable(_0xb2093d,_0xccc4bb?.[0x1]);for(const _0x2ef4fd of _0x3f1dd3['matchAll'](/(?:INNER|LEFT|RIGHT|FULL|CROSS)?\s*JOIN\s+([^\s,)(]+)/gi)){addTable(_0xb2093d,_0x2ef4fd[0x1]);}const _0x48161d=_0x3f1dd3[_0x136769(0x17d)](/INTO\s+([^\s(]+)/i);addTable(_0xb2093d,_0x48161d?.[0x1]);const _0x191f35=_0x3f1dd3[_0x136769(0x17d)](/UPDATE\s+([^\s,)(]+)/i);return addTable(_0xb2093d,_0x191f35?.[0x1]),_0xb2093d;}function addTable(_0x5c09dc,_0x1686b2){const _0x55647a=a227_0x492ce4,_0xfae982=_0x1686b2?.[_0x55647a(0x16f)](/[`"]/g,'');_0xfae982&&_0xfae982!==UNRESOLVED_SQL_FRAGMENT&&!_0x5c09dc[_0x55647a(0x193)](_0xfae982)&&_0x5c09dc[_0x55647a(0x17a)](_0xfae982);}function extractParameters(_0xd02ab2){const _0x531767=a227_0x492ce4,_0x27cef2=new Set();for(const _0x26ab32 of _0xd02ab2[_0x531767(0x16a)](/[#$]\{\s*([A-Za-z_][\w.]*)\s*(?=[,}])/g)){if(_0x26ab32[0x1])_0x27cef2[_0x531767(0x177)](_0x26ab32[0x1]);}return Array[_0x531767(0x1a7)](_0x27cef2);}export function validateSql(_0x1a9ff0){const _0x2117e1=a227_0x492ce4,_0x2a8510=normalizeSqlForStaticAnalysis(_0x1a9ff0),_0x1ed543=detectNormalizedSqlType(_0x2a8510),_0x227abb=stripStaticAnalysisMarkers(_0x2a8510[_0x2117e1(0x1a3)]),_0x5708d6=_0x2a8510['error']?[]:extractTables(_0x227abb),_0xc0b285=_0x2a8510[_0x2117e1(0x17f)]?[]:extractParameters(_0x227abb);if(_0x1ed543[_0x2117e1(0x16c)])return{'valid':![],'sqlType':_0x1ed543,'tables':_0x5708d6,'parameters':_0xc0b285,'message':_0x1ed543[_0x2117e1(0x180)]||_0x1ed543['type']+_0x2117e1(0x175)};if(_0x1ed543[_0x2117e1(0x182)]===_0x2117e1(0x1b1))return{'valid':![],'sqlType':_0x1ed543,'tables':_0x5708d6,'parameters':_0xc0b285,'message':_0x2a8510[_0x2117e1(0x17f)]?_0x2117e1(0x1c1)+_0x2a8510[_0x2117e1(0x17f)]:_0x2117e1(0x189)};return{'valid':!![],'sqlType':_0x1ed543,'tables':_0x5708d6,'parameters':_0xc0b285,'message':_0x1ed543['type']+_0x2117e1(0x1a6)+(_0x5708d6[_0x2117e1(0x168)]?_0x5708d6[_0x2117e1(0x187)](',\x20'):_0x2117e1(0x169))+(_0xc0b285[_0x2117e1(0x168)]?_0x2117e1(0x16e)+_0xc0b285['join'](',\x20'):'')};}
|
|
1
|
+
const a227_0x3e9421=a227_0x560e;(function(_0x230cba,_0x465a09){const _0x93b8db=a227_0x560e,_0xf9c357=_0x230cba();while(!![]){try{const _0x68b54d=parseInt(_0x93b8db(0x113))/0x1+parseInt(_0x93b8db(0x15b))/0x2*(parseInt(_0x93b8db(0x144))/0x3)+parseInt(_0x93b8db(0x109))/0x4*(-parseInt(_0x93b8db(0x11e))/0x5)+parseInt(_0x93b8db(0x15c))/0x6+-parseInt(_0x93b8db(0x145))/0x7*(-parseInt(_0x93b8db(0x142))/0x8)+parseInt(_0x93b8db(0x11f))/0x9+-parseInt(_0x93b8db(0x10f))/0xa;if(_0x68b54d===_0x465a09)break;else _0xf9c357['push'](_0xf9c357['shift']());}catch(_0x18170c){_0xf9c357['push'](_0xf9c357['shift']());}}}(a227_0x213f,0x6ec74));const MYBATIS_OUTER_TAGS=new Map([['select','SELECT'],[a227_0x3e9421(0x120),'INSERT'],[a227_0x3e9421(0x154),'UPDATE'],[a227_0x3e9421(0x14a),'DELETE']]),MYBATIS_DYNAMIC_TAGS=new Set(['if',a227_0x3e9421(0x132),a227_0x3e9421(0x159),'choose',a227_0x3e9421(0x122),a227_0x3e9421(0x13d),a227_0x3e9421(0x158),a227_0x3e9421(0x108),'bind',a227_0x3e9421(0x153),'property']),MYBATIS_BRANCH_TAGS=new Set(['if',a227_0x3e9421(0x159),a227_0x3e9421(0x14f),'when',a227_0x3e9421(0x13d)]);export const MYBATIS_DYNAMIC_START_MARKER=a227_0x3e9421(0x10c);export const MYBATIS_DYNAMIC_END_MARKER=a227_0x3e9421(0x146);export const MYBATIS_INCLUDE_MARKER=a227_0x3e9421(0x14d);const UNRESOLVED_SQL_FRAGMENT=a227_0x3e9421(0x15d),MYBATIS_OUTER_TAG_PATTERN=new RegExp('^<\x5cs*(?:'+[...MYBATIS_OUTER_TAGS[a227_0x3e9421(0x127)]()][a227_0x3e9421(0x125)]('|')+a227_0x3e9421(0x129),'i');function a227_0x213f(){const _0x4b0be5=['Invalid\x20attributes\x20on\x20MyBatis\x20XML\x20tag:\x20<','DDL','mybatisXml','where','\x20with\x20parameters:\x20','Unterminated\x20MyBatis\x20XML\x20tag.','includes','test','<!--','MyBatis\x20<property>\x20must\x20be\x20a\x20self-closing\x20direct\x20child\x20of\x20<include>.','replaceAll','DELETE\x20statements\x20are\x20blocked\x20from\x20auto-save','property','statementType','otherwise','UPDATE','push','Unterminated\x20XML\x20comment.','DELETE','1464KTKuWF','replace','2038263TPHFZp','14147pkwAJS','__RABETBASE_MYBATIS_DYNAMIC_END__','\x20query\x20targeting\x20','match','parseInt','delete','MyBatis\x20XML\x20must\x20contain\x20exactly\x20one\x20complete\x20statement\x20wrapper.',''','__RABETBASE_MYBATIS_INCLUDE_UNRESOLVED__','get','choose','CDATA\x20sections\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.','length','indexOf','include','update','has','Invalid\x20MyBatis\x20XML\x20closing\x20tag:\x20</','SELECT','trim','foreach','Mismatched\x20MyBatis\x20XML\x20closing\x20tag:\x20</','2oSXygi','5136360jraFcy','__RABETBASE_UNRESOLVED_SQL_FRAGMENT__','Invalid\x20XML\x20entity\x20reference.','UNKNOWN','pop','Unable\x20to\x20detect\x20SQL\x20type.\x20','sql','fromCodePoint','add','<![CDATA[','\x20statements\x20cannot\x20be\x20auto-saved.\x20Please\x20operate\x20manually\x20on\x20the\x20platform.','set','62120SgucYs','reason','toUpperCase','__RABETBASE_MYBATIS_DYNAMIC_START__',']]>','rawName','22938000vMBtGC','SQL\x20contains\x20blocked\x20DELETE\x20or\x20DDL\x20statements','Unclosed\x20MyBatis\x20XML\x20tag:\x20<','-->','659103tkBbvU','&','string','Multiple\x20MyBatis\x20statement\x20wrappers\x20are\x20not\x20supported.','split','<','exec','MyBatis\x20dynamic\x20tag\x20must\x20be\x20inside\x20the\x20statement\x20wrapper:\x20<','isDangerous','SQL\x20contains\x20modification\x20statements\x20alongside\x20SELECT','type','110XgGeAY','4723029mLMTUV','insert','DDL\x20statements\x20are\x20blocked\x20from\x20auto-save','when','error','startsWith','join','unknown\x20table(s)','keys','INSERT',')\x5cb','XML\x20declarations\x20must\x20precede\x20the\x20MyBatis\x20statement\x20wrapper.','slice','outer','matchAll','tagName'];a227_0x213f=function(){return _0x4b0be5;};return a227_0x213f();}function a227_0x560e(_0x42594,_0x172f8d){_0x42594=_0x42594-0x100;const _0x213fda=a227_0x213f();let _0x560e42=_0x213fda[_0x42594];return _0x560e42;}export function normalizeSqlForStaticAnalysis(_0x39f26d){const _0x5f47d3=a227_0x3e9421,_0x107a00=typeof _0x39f26d===_0x5f47d3(0x115)?_0x39f26d:'';if(!startsWithMybatisStatementWrapper(_0x107a00))return{'sql':_0x107a00,'mode':_0x5f47d3(0x103)};let _0x2ece38=0x0,_0x1a609d='',_0x4df4b5,_0x53a038=![],_0x4c397d=![];const _0x415ed3=[];while(_0x2ece38<_0x107a00[_0x5f47d3(0x151)]){if(_0x107a00['startsWith'](_0x5f47d3(0x137),_0x2ece38)){const _0x1d26e1=_0x107a00['indexOf'](_0x5f47d3(0x112),_0x2ece38+0x4);if(_0x1d26e1<0x0)return invalidMybatisSource(_0x5f47d3(0x140));_0x1a609d+='\x20',_0x2ece38=_0x1d26e1+0x3;continue;}if(_0x107a00[_0x5f47d3(0x124)](_0x5f47d3(0x106),_0x2ece38)){if(!_0x53a038||_0x4c397d)return invalidMybatisSource(_0x5f47d3(0x150));const _0x3b93ab=_0x107a00['indexOf'](_0x5f47d3(0x10d),_0x2ece38+0x9);if(_0x3b93ab<0x0)return invalidMybatisSource('Unterminated\x20CDATA\x20section.');_0x1a609d+=_0x107a00[_0x5f47d3(0x12b)](_0x2ece38+0x9,_0x3b93ab),_0x2ece38=_0x3b93ab+0x3;continue;}if(_0x107a00[_0x5f47d3(0x124)]('<?',_0x2ece38)){if(_0x53a038)return invalidMybatisSource(_0x5f47d3(0x12a));const _0x314fbd=_0x107a00[_0x5f47d3(0x152)]('?>',_0x2ece38+0x2);if(_0x314fbd<0x0)return invalidMybatisSource('Unterminated\x20XML\x20declaration.');_0x1a609d+='\x20',_0x2ece38=_0x314fbd+0x2;continue;}if(_0x107a00[_0x2ece38]!=='<'){const _0x326472=_0x107a00[_0x5f47d3(0x152)]('<',_0x2ece38),_0xa1c0fa=_0x326472<0x0?_0x107a00[_0x5f47d3(0x151)]:_0x326472,_0xfdc8fd=_0x107a00[_0x5f47d3(0x12b)](_0x2ece38,_0xa1c0fa);if((!_0x53a038||_0x4c397d)&&_0xfdc8fd[_0x5f47d3(0x158)]())return invalidMybatisSource('SQL\x20text\x20must\x20be\x20inside\x20the\x20MyBatis\x20statement\x20wrapper.');if(_0x53a038&&!_0x4c397d){const _0x58560d=decodeXmlEntities(_0xfdc8fd);if(_0x58560d===null)return invalidMybatisSource(_0x5f47d3(0x15e));_0x1a609d+=_0x58560d;}else _0x1a609d+='\x20';_0x2ece38=_0xa1c0fa;continue;}const _0x15f0db=findXmlTagEnd(_0x107a00,_0x2ece38);if(_0x15f0db<0x0)return invalidMybatisSource(_0x5f47d3(0x134));const _0x552a2c=_0x107a00['slice'](_0x2ece38,_0x15f0db+0x1),_0x26e142=/^<\s*(\/?)\s*([A-Za-z][\w:-]*)([\s\S]*?)(\/?)\s*>$/['exec'](_0x552a2c);if(!_0x26e142)return invalidMybatisSource('Invalid\x20MyBatis\x20XML\x20tag.');const _0x4ca10d=_0x26e142[0x1]==='/',_0x2ae7d2=_0x26e142[0x2]??'',_0x349fba=_0x2ae7d2['toLowerCase'](),_0x37fc3d=_0x26e142[0x3]??'',_0xfd099c=_0x26e142[0x4]==='/',_0x1b459c=MYBATIS_OUTER_TAGS[_0x5f47d3(0x14e)](_0x349fba);if(!_0x1b459c&&!MYBATIS_DYNAMIC_TAGS['has'](_0x349fba))return invalidMybatisSource('Unsupported\x20MyBatis\x20XML\x20tag:\x20<'+_0x349fba+'>.');if(!_0x1b459c&&_0x2ae7d2!==_0x349fba)return invalidMybatisSource('MyBatis\x20dynamic\x20tag\x20names\x20must\x20be\x20lowercase:\x20<'+_0x2ae7d2+'>.');if(_0x4ca10d){if(_0x37fc3d[_0x5f47d3(0x158)]()||_0xfd099c)return invalidMybatisSource(_0x5f47d3(0x156)+_0x2ae7d2+'>.');const _0x54a2ab=_0x415ed3['at'](-0x1);if(!_0x54a2ab||(_0x54a2ab[_0x5f47d3(0x12c)]?_0x54a2ab[_0x5f47d3(0x12e)]!==_0x349fba:_0x54a2ab[_0x5f47d3(0x10e)]!==_0x2ae7d2))return invalidMybatisSource(_0x5f47d3(0x15a)+_0x2ae7d2+'>.');_0x415ed3[_0x5f47d3(0x101)]();if(_0x54a2ab[_0x5f47d3(0x12c)])_0x4c397d=!![];_0x1a609d+=MYBATIS_BRANCH_TAGS['has'](_0x349fba)?'\x20'+MYBATIS_DYNAMIC_END_MARKER+'\x20':'\x20';}else{if(!hasWellFormedXmlAttributes(_0x37fc3d))return invalidMybatisSource(_0x5f47d3(0x12f)+_0x2ae7d2+'>.');if(_0x349fba===_0x5f47d3(0x13b)&&(!_0xfd099c||_0x415ed3['at'](-0x1)?.[_0x5f47d3(0x12e)]!==_0x5f47d3(0x153)))return invalidMybatisSource(_0x5f47d3(0x138));if(_0x1b459c){if(_0x53a038||_0x415ed3['length']>0x0)return invalidMybatisSource(_0x5f47d3(0x116));_0x53a038=!![],_0x4c397d=_0xfd099c,_0x4df4b5=_0x1b459c;}else{if(!_0x53a038||_0x4c397d)return invalidMybatisSource(_0x5f47d3(0x11a)+_0x2ae7d2+'>.');}_0x1a609d+=_0x349fba===_0x5f47d3(0x132)?'\x20WHERE\x20':_0x349fba===_0x5f47d3(0x108)?'\x20SET\x20':_0x349fba==='include'?'\x20'+MYBATIS_INCLUDE_MARKER+'\x20':MYBATIS_BRANCH_TAGS['has'](_0x349fba)&&!_0xfd099c?'\x20'+MYBATIS_DYNAMIC_START_MARKER+'\x20':'\x20',!_0xfd099c&&_0x415ed3[_0x5f47d3(0x13f)]({'rawName':_0x2ae7d2,'tagName':_0x349fba,'outer':!!_0x1b459c});}_0x2ece38=_0x15f0db+0x1;}if(_0x415ed3[_0x5f47d3(0x151)]>0x0)return invalidMybatisSource(_0x5f47d3(0x111)+_0x415ed3['at'](-0x1)?.[_0x5f47d3(0x10e)]+'>.');if(!_0x53a038||!_0x4c397d)return invalidMybatisSource(_0x5f47d3(0x14b));return{'sql':_0x1a609d['trim'](),'mode':'mybatisXml',..._0x4df4b5?{'statementType':_0x4df4b5}:{}};}function hasWellFormedXmlAttributes(_0x4d10aa){const _0x3af75d=a227_0x3e9421;let _0x49edd0=0x0;const _0x20cf77=new Set();while(_0x49edd0<_0x4d10aa[_0x3af75d(0x151)]){while(_0x49edd0<_0x4d10aa[_0x3af75d(0x151)]&&/\s/[_0x3af75d(0x136)](_0x4d10aa[_0x49edd0]??''))_0x49edd0+=0x1;if(_0x49edd0>=_0x4d10aa[_0x3af75d(0x151)])return!![];const _0x3416ad=/^[A-Za-z_:][\w:.-]*/[_0x3af75d(0x119)](_0x4d10aa[_0x3af75d(0x12b)](_0x49edd0)),_0x3627ab=_0x3416ad?.[0x0];if(!_0x3627ab||_0x20cf77[_0x3af75d(0x155)](_0x3627ab))return![];_0x20cf77[_0x3af75d(0x105)](_0x3627ab),_0x49edd0+=_0x3627ab[_0x3af75d(0x151)];while(_0x49edd0<_0x4d10aa[_0x3af75d(0x151)]&&/\s/[_0x3af75d(0x136)](_0x4d10aa[_0x49edd0]??''))_0x49edd0+=0x1;if(_0x4d10aa[_0x49edd0]!=='=')return![];_0x49edd0+=0x1;while(_0x49edd0<_0x4d10aa[_0x3af75d(0x151)]&&/\s/[_0x3af75d(0x136)](_0x4d10aa[_0x49edd0]??''))_0x49edd0+=0x1;const _0x35af19=_0x4d10aa[_0x49edd0];if(_0x35af19!=='\x22'&&_0x35af19!=='\x27')return![];_0x49edd0+=0x1;const _0x54f0f9=_0x4d10aa[_0x3af75d(0x152)](_0x35af19,_0x49edd0);if(_0x54f0f9<0x0)return![];if(decodeXmlEntities(_0x4d10aa[_0x3af75d(0x12b)](_0x49edd0,_0x54f0f9))===null)return![];_0x49edd0=_0x54f0f9+0x1;}return!![];}function startsWithMybatisStatementWrapper(_0xc23a4a){const _0x9d8813=a227_0x3e9421;let _0x144ddf=0x0;const _0x5e644a=()=>{const _0x167278=a227_0x560e;while(_0x144ddf<_0xc23a4a[_0x167278(0x151)]&&/\s/[_0x167278(0x136)](_0xc23a4a[_0x144ddf]??''))_0x144ddf+=0x1;};_0x5e644a();while(_0x144ddf<_0xc23a4a[_0x9d8813(0x151)]){if(_0xc23a4a[_0x9d8813(0x124)]('<!--',_0x144ddf)){const _0x2ae536=_0xc23a4a[_0x9d8813(0x152)](_0x9d8813(0x112),_0x144ddf+0x4);if(_0x2ae536<0x0)return!![];_0x144ddf=_0x2ae536+0x3,_0x5e644a();continue;}if(_0xc23a4a[_0x9d8813(0x124)]('<?',_0x144ddf)){const _0x1daf6=_0xc23a4a[_0x9d8813(0x152)]('?>',_0x144ddf+0x2);if(_0x1daf6<0x0)return!![];_0x144ddf=_0x1daf6+0x2,_0x5e644a();continue;}break;}return MYBATIS_OUTER_TAG_PATTERN['test'](_0xc23a4a[_0x9d8813(0x12b)](_0x144ddf));}function invalidMybatisSource(_0x3b096f){const _0x1b2831=a227_0x3e9421;return{'sql':'','mode':_0x1b2831(0x131),'error':_0x3b096f};}function findXmlTagEnd(_0x3dd3c3,_0x37157c){const _0x3f440b=a227_0x3e9421;let _0x5e2be8;for(let _0x715fbe=_0x37157c+0x1;_0x715fbe<_0x3dd3c3[_0x3f440b(0x151)];_0x715fbe+=0x1){const _0x43bb5d=_0x3dd3c3[_0x715fbe];if(_0x5e2be8){if(_0x43bb5d===_0x5e2be8)_0x5e2be8=undefined;continue;}if(_0x43bb5d==='\x22'||_0x43bb5d==='\x27'){_0x5e2be8=_0x43bb5d;continue;}if(_0x43bb5d==='>')return _0x715fbe;}return-0x1;}function decodeXmlEntities(_0x33b543){const _0x28d1c7=a227_0x3e9421;let _0x2d7cce=![];const _0x4702c6=_0x33b543[_0x28d1c7(0x143)](/&(?:#x[0-9a-f]+;|#[0-9]+;|[A-Za-z_:][\w:.-]*;)?/g,_0x523200=>{const _0x4e42b5=_0x28d1c7;if(_0x523200===_0x4e42b5(0x118))return'<';if(_0x523200==='>')return'>';if(_0x523200==='"')return'\x22';if(_0x523200===_0x4e42b5(0x14c))return'\x27';if(_0x523200===_0x4e42b5(0x114))return'&';const _0x43fb36=/^&#(?:x([0-9a-f]+)|([0-9]+));$/[_0x4e42b5(0x119)](_0x523200);if(_0x43fb36){const _0xcbbd78=_0x43fb36[0x1],_0x2ad136=_0x43fb36[0x2],_0x141579=Number[_0x4e42b5(0x149)](_0xcbbd78??_0x2ad136??'',_0xcbbd78?0x10:0xa);if(isValidXmlCharacter(_0x141579))return String[_0x4e42b5(0x104)](_0x141579);}return _0x2d7cce=!![],'';});return _0x2d7cce?null:_0x4702c6;}function isValidXmlCharacter(_0x19cbca){return _0x19cbca===0x9||_0x19cbca===0xa||_0x19cbca===0xd||_0x19cbca>=0x20&&_0x19cbca<=0xd7ff||_0x19cbca>=0xe000&&_0x19cbca<=0xfffd||_0x19cbca>=0x10000&&_0x19cbca<=0x10ffff;}export function detectSqlType(_0x499201){return detectNormalizedSqlType(normalizeSqlForStaticAnalysis(_0x499201));}function detectNormalizedSqlType(_0x48d4e8){const _0x2250c4=a227_0x3e9421;if(_0x48d4e8[_0x2250c4(0x123)])return{'type':_0x2250c4(0x100),'isSelectOnly':![],'isDangerous':![],'reason':_0x48d4e8['error']};if(!_0x48d4e8[_0x2250c4(0x103)][_0x2250c4(0x158)]())return{'type':_0x2250c4(0x100),'isSelectOnly':![],'isDangerous':![],'reason':'SQL\x20content\x20is\x20empty'};const _0x528f86=stripStaticAnalysisMarkers(_0x48d4e8['sql'])['replace'](/#\{[^}]*\}/g,'?')[_0x2250c4(0x143)](/\$\{[^}]*\}/g,'?')[_0x2250c4(0x143)](/@[^(\s]+(\([^)]*\))?/g,'')[_0x2250c4(0x143)](/\/\*[\s\S]*?\*\//g,'')[_0x2250c4(0x158)](),_0x304527=_0x528f86[_0x2250c4(0x117)]('\x0a');let _0x27d544='';for(const _0x17dd56 of _0x304527){const _0x570dda=_0x17dd56['trim']();if(!_0x570dda||_0x570dda[_0x2250c4(0x124)]('--')||_0x570dda[_0x2250c4(0x124)]('/*'))continue;_0x27d544=_0x570dda;break;}const _0x440a5a=_0x27d544[_0x2250c4(0x10b)](),_0x3c5bec=_0x48d4e8[_0x2250c4(0x13c)],_0x347937=maskSqlTextForBlockedKeywordScan(_0x528f86),_0x4c151e=/\b(DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i[_0x2250c4(0x136)](_0x347937);if(_0x3c5bec===_0x2250c4(0x157)||!_0x3c5bec&&(_0x440a5a[_0x2250c4(0x124)]('SELECT')||_0x440a5a[_0x2250c4(0x124)]('WITH'))){const _0x392872=/\b(INSERT|UPDATE|DELETE|DROP|ALTER|CREATE|TRUNCATE)\b/i[_0x2250c4(0x136)](_0x528f86);return{'type':_0x2250c4(0x157),'isSelectOnly':!_0x392872,'isDangerous':_0x392872,'reason':_0x392872?_0x2250c4(0x11c):undefined};}if(_0x3c5bec==='INSERT'||!_0x3c5bec&&_0x440a5a[_0x2250c4(0x124)]('INSERT'))return{'type':_0x2250c4(0x128),'isSelectOnly':![],'isDangerous':_0x4c151e,'reason':_0x4c151e?_0x2250c4(0x110):undefined};if(_0x3c5bec===_0x2250c4(0x13e)||!_0x3c5bec&&_0x440a5a[_0x2250c4(0x124)](_0x2250c4(0x13e)))return{'type':_0x2250c4(0x13e),'isSelectOnly':![],'isDangerous':_0x4c151e,'reason':_0x4c151e?_0x2250c4(0x110):undefined};if(_0x3c5bec===_0x2250c4(0x141)||!_0x3c5bec&&_0x440a5a[_0x2250c4(0x124)](_0x2250c4(0x141)))return{'type':_0x2250c4(0x141),'isSelectOnly':![],'isDangerous':!![],'reason':_0x2250c4(0x13a)};if(/^(CREATE|ALTER|DROP|TRUNCATE)/i['test'](_0x440a5a))return{'type':_0x2250c4(0x130),'isSelectOnly':![],'isDangerous':!![],'reason':_0x2250c4(0x121)};return{'type':'UNKNOWN','isSelectOnly':![],'isDangerous':![]};}function stripStaticAnalysisMarkers(_0x2dee57){const _0x1db751=a227_0x3e9421;return _0x2dee57[_0x1db751(0x139)](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x1db751(0x139)](MYBATIS_DYNAMIC_END_MARKER,'\x20')[_0x1db751(0x139)](MYBATIS_INCLUDE_MARKER,'\x20'+UNRESOLVED_SQL_FRAGMENT+'\x20');}function maskSqlTextForBlockedKeywordScan(_0x3d866b){const _0x335947=a227_0x3e9421;return _0x3d866b[_0x335947(0x143)](/'(?:''|\\.|[^'])*'/g,'\x20')[_0x335947(0x143)](/"(?:""|\\.|[^"])*"/g,'\x20')[_0x335947(0x143)](/`(?:``|\\.|[^`])*`/g,'\x20')['replace'](/--.*$/gm,'\x20')[_0x335947(0x143)](/#.*$/gm,'\x20')['replace'](/\/\*[\s\S]*?\*\//g,'\x20');}function extractTables(_0x596076){const _0x29ea83=a227_0x3e9421,_0x2d505e=_0x596076['replace'](/#\{[^}]*\}/g,'?')[_0x29ea83(0x143)](/\$\{[^}]*\}/g,'?')[_0x29ea83(0x143)](/'[^']*'/g,'\x27\x27')[_0x29ea83(0x143)](/--.*$/gm,'')[_0x29ea83(0x143)](/\/\*[\s\S]*?\*\//g,''),_0x19b16f=[],_0x178889=_0x2d505e['match'](/FROM\s+([^\s,)(]+)/i);addTable(_0x19b16f,_0x178889?.[0x1]);for(const _0x16450c of _0x2d505e[_0x29ea83(0x12d)](/(?:INNER|LEFT|RIGHT|FULL|CROSS)?\s*JOIN\s+([^\s,)(]+)/gi)){addTable(_0x19b16f,_0x16450c[0x1]);}const _0x14a071=_0x2d505e[_0x29ea83(0x148)](/INTO\s+([^\s(]+)/i);addTable(_0x19b16f,_0x14a071?.[0x1]);const _0x18c969=_0x2d505e[_0x29ea83(0x148)](/UPDATE\s+([^\s,)(]+)/i);return addTable(_0x19b16f,_0x18c969?.[0x1]),_0x19b16f;}function addTable(_0x2c7043,_0x4e3451){const _0xf91597=a227_0x3e9421,_0x525c84=_0x4e3451?.[_0xf91597(0x143)](/[`"]/g,'');_0x525c84&&_0x525c84!==UNRESOLVED_SQL_FRAGMENT&&!_0x2c7043[_0xf91597(0x135)](_0x525c84)&&_0x2c7043[_0xf91597(0x13f)](_0x525c84);}function extractParameters(_0x1d459b){const _0x4713bf=a227_0x3e9421,_0x7762d9=new Set();for(const _0xd6451e of _0x1d459b[_0x4713bf(0x12d)](/[#$]\{\s*([A-Za-z_][\w.]*)\s*(?=[,}])/g)){if(_0xd6451e[0x1])_0x7762d9[_0x4713bf(0x105)](_0xd6451e[0x1]);}return Array['from'](_0x7762d9);}export function validateSql(_0x2733cf){const _0x320395=a227_0x3e9421,_0x54eaac=normalizeSqlForStaticAnalysis(_0x2733cf),_0x21893f=detectNormalizedSqlType(_0x54eaac),_0x3a8d81=stripStaticAnalysisMarkers(_0x54eaac[_0x320395(0x103)]),_0x3b23bf=_0x54eaac[_0x320395(0x123)]?[]:extractTables(_0x3a8d81),_0x54b72=_0x54eaac[_0x320395(0x123)]?[]:extractParameters(_0x3a8d81);if(_0x21893f[_0x320395(0x11b)])return{'valid':![],'sqlType':_0x21893f,'tables':_0x3b23bf,'parameters':_0x54b72,'message':_0x21893f[_0x320395(0x10a)]||_0x21893f[_0x320395(0x11d)]+_0x320395(0x107)};if(_0x21893f['type']===_0x320395(0x100))return{'valid':![],'sqlType':_0x21893f,'tables':_0x3b23bf,'parameters':_0x54b72,'message':_0x54eaac[_0x320395(0x123)]?_0x320395(0x102)+_0x54eaac[_0x320395(0x123)]:'Unable\x20to\x20detect\x20SQL\x20type.\x20Please\x20check\x20the\x20SQL\x20content.'};return{'valid':!![],'sqlType':_0x21893f,'tables':_0x3b23bf,'parameters':_0x54b72,'message':_0x21893f[_0x320395(0x11d)]+_0x320395(0x147)+(_0x3b23bf[_0x320395(0x151)]?_0x3b23bf[_0x320395(0x125)](',\x20'):_0x320395(0x126))+(_0x54b72[_0x320395(0x151)]?_0x320395(0x133)+_0x54b72['join'](',\x20'):'')};}
|
package/lib/errors.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a228_0x9fa4b=a228_0x4b1b;(function(_0x3ca4c2,_0x475782){const _0xbfdedb=a228_0x4b1b,_0x5a4696=_0x3ca4c2();while(!![]){try{const _0x51edbc=parseInt(_0xbfdedb(0x115))/0x1*(-parseInt(_0xbfdedb(0x10e))/0x2)+-parseInt(_0xbfdedb(0x108))/0x3*(parseInt(_0xbfdedb(0x119))/0x4)+-parseInt(_0xbfdedb(0x10a))/0x5+-parseInt(_0xbfdedb(0x10d))/0x6*(parseInt(_0xbfdedb(0x117))/0x7)+-parseInt(_0xbfdedb(0x113))/0x8+-parseInt(_0xbfdedb(0x116))/0x9*(parseInt(_0xbfdedb(0x112))/0xa)+parseInt(_0xbfdedb(0x114))/0xb*(parseInt(_0xbfdedb(0x10f))/0xc);if(_0x51edbc===_0x475782)break;else _0x5a4696['push'](_0x5a4696['shift']());}catch(_0x1dbe30){_0x5a4696['push'](_0x5a4696['shift']());}}}(a228_0x2f1b,0xdd0c8));function a228_0x2f1b(){const _0x2ecf27=['\x20init\x20--appcode\x20<code>\x20--global`\x20registers\x20globally\x20so\x20you\x20can\x20use\x20it\x20from\x20anywhere.','290985kfJdvj','\x20auth`\x20to\x20login\x20first.','Run\x20`','19950JFsMWB','6NZYGGj','15165348eZkMxJ','Run\x20this\x20command\x20inside\x20a\x20project\x20with\x20.rabetbase.json\x20file.','Set\x20appcode\x20via\x20`','230qdbvJo','10345184LpXlZZ','55cotNHe','511153PNGMbi','313686IAVCfV','210WdNzRk','\x0a\x20\x20\x20\x20\x20\x20\x20','29996raijiL','join','651oMGOSA'];a228_0x2f1b=function(){return _0x2ecf27;};return a228_0x2f1b();}import{CliError,createCliErrors}from'@lovrabet/cli-framework';import{CLI_BIN_NAME}from'./constant/cli.js';function a228_0x4b1b(_0xb7890b,_0x50974a){_0xb7890b=_0xb7890b-0x107;const _0x2f1b8c=a228_0x2f1b();let _0x4b1bae=_0x2f1b8c[_0xb7890b];return _0x4b1bae;}export{CliError};export const CliErrors=createCliErrors({'cliBinName':CLI_BIN_NAME,'authRequiredHint':a228_0x9fa4b(0x10c)+CLI_BIN_NAME+a228_0x9fa4b(0x10b),'configMissingHint':[a228_0x9fa4b(0x111)+CLI_BIN_NAME+'\x20init\x20--appcode\x20<code>`\x20or\x20pass\x20--appcode.','Tip:\x20`'+CLI_BIN_NAME+a228_0x9fa4b(0x109)][a228_0x9fa4b(0x107)](a228_0x9fa4b(0x118)),'notInProjectHint':a228_0x9fa4b(0x110)});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x2679f7,_0x147f48){const _0x4d6186=a229_0x2996,_0x596223=_0x2679f7();while(!![]){try{const _0x4ce9a9=-parseInt(_0x4d6186(0x1cb))/0x1+parseInt(_0x4d6186(0x1c8))/0x2*(parseInt(_0x4d6186(0x1c2))/0x3)+-parseInt(_0x4d6186(0x1c6))/0x4*(parseInt(_0x4d6186(0x1c1))/0x5)+-parseInt(_0x4d6186(0x1bf))/0x6*(-parseInt(_0x4d6186(0x1c3))/0x7)+-parseInt(_0x4d6186(0x1c9))/0x8*(-parseInt(_0x4d6186(0x1ca))/0x9)+-parseInt(_0x4d6186(0x1c5))/0xa+parseInt(_0x4d6186(0x1c4))/0xb*(-parseInt(_0x4d6186(0x1c0))/0xc);if(_0x4ce9a9===_0x147f48)break;else _0x596223['push'](_0x596223['shift']());}catch(_0x1ee8d1){_0x596223['push'](_0x596223['shift']());}}}(a229_0x4728,0x25180));import{DEFAULT_COMMAND_OUTPUT_FORMAT}from'../constant/defaults.js';import{buildAllFlags as a229_0x5b3443}from'@lovrabet/cli-framework';import{EXPLICIT_YES_FLAG_DESCRIPTION,requiresExplicitYes}from'../framework/explicit-yes.js';function a229_0x2996(_0x325294,_0x52a140){_0x325294=_0x325294-0x1bf;const _0x472860=a229_0x4728();let _0x2996bc=_0x472860[_0x325294];return _0x2996bc;}export function buildAllFlags(_0x4ea788){const _0x345638=a229_0x2996,_0x4b2627=a229_0x5b3443(_0x4ea788,{'defaultOutputFormat':DEFAULT_COMMAND_OUTPUT_FORMAT});if(!requiresExplicitYes(_0x4ea788))return _0x4b2627;return _0x4b2627[_0x345638(0x1c7)](_0x398266=>_0x398266[_0x345638(0x1cc)]==='yes'?{..._0x398266,'description':EXPLICIT_YES_FLAG_DESCRIPTION}:_0x398266);}function a229_0x4728(){const _0xdaa7b0=['12hDZtHM','3339hytdsL','63943gTSemn','915440hqSiuW','8OdyxwK','map','144214nMvhnv','72PXSQPG','196065ksexGL','149027BCueNa','name','1590GJoxEi','12HzIWBT','531445AjYfdE'];a229_0x4728=function(){return _0xdaa7b0;};return a229_0x4728();}
|