@lovrabet/rabetbase-cli 2.5.4-beta.2 → 2.5.4-beta.4
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/api-group.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.js +1 -1
- package/lib/api/legacy-api-file.js +1 -1
- package/lib/api/model-registry-file.js +1 -1
- package/lib/api/model-registry-scaffold.js +1 -1
- package/lib/api/model-source.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/logs.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/batch-design.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/cross-relation-create.js +1 -1
- package/lib/commands/dataset/cross-relation-delete.js +1 -1
- package/lib/commands/dataset/cross-relation-list.js +1 -1
- package/lib/commands/dataset/cross-relation-shared.js +1 -1
- package/lib/commands/dataset/cross-relation-update.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-restore.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/dataset/user-deleted-field-list.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/table-diff-shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/deployment/index.js +1 -1
- package/lib/commands/deployment/sync-all.js +1 -1
- package/lib/commands/deployment/sync-jobs.js +1 -1
- package/lib/commands/deployment/sync-status.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/flow/create.js +1 -1
- package/lib/commands/flow/detail.js +1 -1
- package/lib/commands/flow/index.js +1 -1
- package/lib/commands/flow/list.js +1 -1
- package/lib/commands/flow/publish.js +1 -1
- package/lib/commands/flow/runtime-resources-shared.js +1 -1
- package/lib/commands/flow/runtime-role-list.js +1 -1
- package/lib/commands/flow/runtime-role-user-list.js +1 -1
- package/lib/commands/flow/runtime-user-search.js +1 -1
- package/lib/commands/flow/shared.js +1 -1
- package/lib/commands/flow/update.js +1 -1
- package/lib/commands/flow/validate.js +1 -1
- package/lib/commands/instant-api-policy/current.js +1 -1
- package/lib/commands/instant-api-policy/index.js +1 -1
- package/lib/commands/instant-api-policy/init.js +1 -1
- package/lib/commands/instant-api-policy/publish.js +1 -1
- package/lib/commands/instant-api-policy/pull.js +1 -1
- package/lib/commands/instant-api-policy/revision.js +1 -1
- package/lib/commands/instant-api-policy/revisions.js +1 -1
- package/lib/commands/instant-api-policy/rollback.js +1 -1
- package/lib/commands/instant-api-policy/shared.js +1 -1
- package/lib/commands/instant-api-policy/validate.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/api-architecture-upgrade.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/domain-routing-sync.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/rule/get.js +1 -1
- package/lib/commands/rule/index.js +1 -1
- package/lib/commands/rule/list.js +1 -1
- package/lib/commands/rule/set.js +1 -1
- package/lib/commands/rule/shared.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/feishu-bind.d.ts +2 -0
- package/lib/commands/user-account/feishu-bind.js +1 -0
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/project-domain-routing.js +1 -1
- package/lib/config/region-config.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/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/routing-profile.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.d.ts +2 -0
- 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/hook-directory.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/cross-db-relation.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/flow-config.js +1 -1
- package/lib/core/instant-api-policy/config.js +1 -1
- package/lib/core/kb-search-client.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/page/lr-smart-jsx.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/supported-flags.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/generated/official-routing.js +1 -1
- package/lib/generated/routing-contract.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/rabetbase/SKILL.md +3 -2
- package/skills/rabetbase/references/rabetbase-user-account.md +20 -2
- package/skills/rabetbase.manifest.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a283_0x44e1f6=a283_0xba14;(function(_0x306a11,_0xb8c1cc){const _0x31b4fd=a283_0xba14,_0x103fed=_0x306a11();while(!![]){try{const _0x284456=parseInt(_0x31b4fd(0x1d3))/0x1+-parseInt(_0x31b4fd(0x1ce))/0x2*(-parseInt(_0x31b4fd(0x1e1))/0x3)+-parseInt(_0x31b4fd(0x1ec))/0x4+parseInt(_0x31b4fd(0x1e8))/0x5+-parseInt(_0x31b4fd(0x1c7))/0x6+parseInt(_0x31b4fd(0x1d5))/0x7+-parseInt(_0x31b4fd(0x1c1))/0x8;if(_0x284456===_0xb8c1cc)break;else _0x103fed['push'](_0x103fed['shift']());}catch(_0x5c3bd8){_0x103fed['push'](_0x103fed['shift']());}}}(a283_0x42fe,0x5ec7f));import{randomUUID}from'node:crypto';import{mkdir,readFile,rename,stat,unlink,writeFile}from'node:fs/promises';import{dirname,resolve}from'node:path';import{TextDecoder}from'node:util';function a283_0xba14(_0x333d36,_0x378a4c){_0x333d36=_0x333d36-0x1bf;const _0x42fec9=a283_0x42fe();let _0xba1426=_0x42fec9[_0x333d36];return _0xba1426;}import{findProjectRootDirectory}from'../../context.js';function a283_0x42fe(){const _0x429a07=['includes','byteLength','appCode','force','size','instant_api_policy_version_invalid','1257573vFozdK','instant_api_policy_defaults_invalid','instant_api_policy_file_too_large','Policy\x20defaults.instantApi\x20is\x20required.','stringify','code','instant_api_policy_app_code_mismatch','104190KkbTSV','instant_api_policy_rules_invalid','allow','instant_api_policy_file_exists','2857548JsUQeo','Review\x20the\x20file\x20before\x20retrying.','ENOENT','policy.json','isFile','version','.rabetbase/instant-api-policy','Instant\x20API\x20policy\x20path\x20is\x20not\x20a\x20regular\x20file:\x20','instant_api_policy_file_unreadable','rules','overwritten','utf-8','isArray','pid','Cannot\x20inspect\x20Instant\x20API\x20policy\x20file:\x20','Instant\x20API\x20policy\x20file\x20does\x20not\x20exist:\x20','defaults','appCode\x20cannot\x20be\x20used\x20as\x20the\x20fixed\x20Instant\x20API\x20policy\x20directory\x20name.','Cannot\x20write\x20Instant\x20API\x20policy\x20file:\x20','policyRoot','string','848296bnATxc','Instant\x20API\x20policy\x20file\x20was\x20created\x20concurrently:\x20','Cannot\x20replace\x20Instant\x20API\x20policy\x20file:\x20','Policy\x20appCode\x20must\x20match\x20the\x20selected\x20application\x20','instant_api_policy_app_code_invalid','decode','769386zsEMMQ','instant_api_policy_file_unwritable','Instant\x20API\x20policy\x20file\x20exceeds\x20the\x201\x20MiB\x20CLI\x20limit.','Instant\x20API\x20policy\x20file\x20already\x20exists:\x20','Run\x20`rabetbase\x20instant-api-policy\x20init`\x20or\x20`rabetbase\x20instant-api-policy\x20pull`\x20first.','trim','Review\x20local\x20changes,\x20then\x20rerun\x20with\x20--force\x20--yes\x20if\x20replacement\x20is\x20intended.','2zvBwiN','instant_api_policy_file_invalid','unchanged','Instant\x20API\x20policy\x20JSON\x20root\x20must\x20be\x20an\x20object.','instantApi','251823YrdPFb','policyFilePath','4515182dJoqwG','Instant\x20API\x20policy\x20version\x20must\x20be\x20\x221\x22\x20or\x20\x222\x22.','utf8','instant_api_policy_json_invalid','object','Policy\x20rules\x20must\x20be\x20an\x20array\x20or\x20null.'];a283_0x42fe=function(){return _0x429a07;};return a283_0x42fe();}import{CliError}from'../../errors.js';export const INSTANT_API_POLICY_RELATIVE_ROOT=a283_0x44e1f6(0x1f2);export const INSTANT_API_POLICY_FILE_NAME=a283_0x44e1f6(0x1ef);export const MAX_INSTANT_API_POLICY_BYTES=0x400*0x400;export function instantApiPolicyError(_0x14faa5,_0x144b60,_0x35193d){return new CliError(_0x14faa5,0x1,_0x144b60,_0x35193d);}export function loadInstantApiPolicyLocalConfig(_0x4ddd0b,_0x123d7b){assertSafeAppCode(_0x4ddd0b);const _0x12ba1a=resolve(_0x123d7b??findProjectRootDirectory()),_0xe57e65=INSTANT_API_POLICY_RELATIVE_ROOT+'/'+_0x4ddd0b+'/'+INSTANT_API_POLICY_FILE_NAME,_0x33ba28=resolve(_0x12ba1a,INSTANT_API_POLICY_RELATIVE_ROOT,_0x4ddd0b),_0xbf7be0=resolve(_0x33ba28,INSTANT_API_POLICY_FILE_NAME);return{'projectRoot':_0x12ba1a,'appCode':_0x4ddd0b,'policyRoot':_0x33ba28,'policyFilePath':_0xbf7be0,'policyRelativePath':_0xe57e65};}export function createDefaultInstantApiPolicyConfig(_0x310c8f,_0x164dcc=a283_0x44e1f6(0x1ea)){return assertSafeAppCode(_0x310c8f),{'version':'2','appCode':_0x310c8f,'defaults':{'instantApi':_0x164dcc},'rules':[]};}export async function readInstantApiPolicyConfigFile(_0x4a9105){const _0x2aa2de=a283_0x44e1f6;let _0x3e5208;try{_0x3e5208=await stat(_0x4a9105[_0x2aa2de(0x1d4)]);}catch(_0x3962a9){throw instantApiPolicyError('instant_api_policy_file_missing',_0x2aa2de(0x1fb)+_0x4a9105['policyFilePath'],_0x2aa2de(0x1cb));}if(!_0x3e5208[_0x2aa2de(0x1f0)]())throw instantApiPolicyError(_0x2aa2de(0x1cf),_0x2aa2de(0x1f3)+_0x4a9105[_0x2aa2de(0x1d4)]);if(_0x3e5208[_0x2aa2de(0x1df)]>MAX_INSTANT_API_POLICY_BYTES)throw instantApiPolicyError(_0x2aa2de(0x1e3),'Instant\x20API\x20policy\x20file\x20exceeds\x20the\x201\x20MiB\x20CLI\x20limit.');let _0xc50e96;try{_0xc50e96=await readFile(_0x4a9105[_0x2aa2de(0x1d4)]);}catch{throw instantApiPolicyError(_0x2aa2de(0x1f4),'Cannot\x20read\x20Instant\x20API\x20policy\x20file:\x20'+_0x4a9105[_0x2aa2de(0x1d4)]);}if(_0xc50e96[_0x2aa2de(0x1dc)]>MAX_INSTANT_API_POLICY_BYTES)throw instantApiPolicyError(_0x2aa2de(0x1e3),_0x2aa2de(0x1c9));let _0x5d6e67;try{_0x5d6e67=new TextDecoder(_0x2aa2de(0x1f7),{'fatal':!![],'ignoreBOM':!![]})[_0x2aa2de(0x1c6)](_0xc50e96);}catch{throw instantApiPolicyError(_0x2aa2de(0x1cf),'Instant\x20API\x20policy\x20file\x20is\x20not\x20valid\x20UTF-8:\x20'+_0x4a9105[_0x2aa2de(0x1d4)]);}let _0x2485a5;try{_0x2485a5=JSON['parse'](_0x5d6e67);}catch{throw instantApiPolicyError(_0x2aa2de(0x1d8),'Instant\x20API\x20policy\x20file\x20is\x20not\x20valid\x20JSON:\x20'+_0x4a9105[_0x2aa2de(0x1d4)]);}return assertLocalPolicyContract(_0x2485a5,_0x4a9105[_0x2aa2de(0x1dd)]);}export async function writeInstantApiPolicyConfigFile(_0x582136,_0x1eb6dc,_0x2841bf={}){const _0x40cee5=a283_0x44e1f6,_0x5e85a3=assertLocalPolicyContract(_0x1eb6dc,_0x582136[_0x40cee5(0x1dd)]),_0x236b31=JSON[_0x40cee5(0x1e5)](_0x5e85a3,null,0x2)+'\x0a';if(Buffer['byteLength'](_0x236b31,_0x40cee5(0x1d7))>MAX_INSTANT_API_POLICY_BYTES)throw instantApiPolicyError(_0x40cee5(0x1e3),_0x40cee5(0x1c9));await mkdir(_0x582136[_0x40cee5(0x1bf)],{'recursive':!![]});let _0x36faf6;try{_0x36faf6=await readFile(_0x582136[_0x40cee5(0x1d4)],'utf8');}catch(_0x33a383){if(!isMissingFile(_0x33a383))throw instantApiPolicyError(_0x40cee5(0x1f4),_0x40cee5(0x1fa)+_0x582136[_0x40cee5(0x1d4)]);}if(_0x36faf6===_0x236b31)return{'action':_0x40cee5(0x1d0),'filePath':_0x582136[_0x40cee5(0x1d4)]};if(_0x36faf6!==undefined&&!_0x2841bf[_0x40cee5(0x1de)])throw instantApiPolicyError(_0x40cee5(0x1eb),_0x40cee5(0x1ca)+_0x582136[_0x40cee5(0x1d4)],_0x40cee5(0x1cd));if(_0x36faf6===undefined)try{return await writeFile(_0x582136[_0x40cee5(0x1d4)],_0x236b31,{'encoding':_0x40cee5(0x1d7),'flag':'wx'}),{'action':'created','filePath':_0x582136[_0x40cee5(0x1d4)]};}catch(_0x5ba401){if(!isAlreadyExists(_0x5ba401))throw instantApiPolicyError(_0x40cee5(0x1c8),_0x40cee5(0x1fe)+_0x582136[_0x40cee5(0x1d4)]);if(!_0x2841bf[_0x40cee5(0x1de)])throw instantApiPolicyError('instant_api_policy_file_exists',_0x40cee5(0x1c2)+_0x582136[_0x40cee5(0x1d4)],_0x40cee5(0x1ed));}const _0x56bfe8=resolve(dirname(_0x582136[_0x40cee5(0x1d4)]),'.'+INSTANT_API_POLICY_FILE_NAME+'.'+process[_0x40cee5(0x1f9)]+'.'+randomUUID()+'.tmp');try{await writeFile(_0x56bfe8,_0x236b31,{'encoding':_0x40cee5(0x1d7),'flag':'wx'}),await rename(_0x56bfe8,_0x582136[_0x40cee5(0x1d4)]);}catch{await unlink(_0x56bfe8)['catch'](()=>undefined);throw instantApiPolicyError('instant_api_policy_file_unwritable',_0x40cee5(0x1c3)+_0x582136[_0x40cee5(0x1d4)]);}return{'action':_0x40cee5(0x1f6),'filePath':_0x582136[_0x40cee5(0x1d4)]};}function assertSafeAppCode(_0x4b2d10){const _0x3a6299=a283_0x44e1f6,_0x4053c3=_0x4b2d10[_0x3a6299(0x1cc)]();if(!_0x4053c3||_0x4053c3!==_0x4b2d10||_0x4053c3['length']>0x64||_0x4053c3==='.'||_0x4053c3==='..'||_0x4053c3['includes']('/')||_0x4053c3[_0x3a6299(0x1db)]('\x5c')||_0x4053c3['includes']('\x00'))throw instantApiPolicyError(_0x3a6299(0x1c5),_0x3a6299(0x1fd));}function assertLocalPolicyContract(_0xf6cd61,_0x137f33){const _0x2e5d4e=a283_0x44e1f6;if(!isObject(_0xf6cd61))throw instantApiPolicyError(_0x2e5d4e(0x1d8),_0x2e5d4e(0x1d1));if(_0xf6cd61['version']!=='1'&&_0xf6cd61[_0x2e5d4e(0x1f1)]!=='2')throw instantApiPolicyError(_0x2e5d4e(0x1e0),_0x2e5d4e(0x1d6),'version\x20is\x20the\x20JSON\x20schema\x20version;\x20published\x20history\x20uses\x20the\x20separate\x20revision\x20field.');if(_0xf6cd61[_0x2e5d4e(0x1dd)]!==_0x137f33)throw instantApiPolicyError(_0x2e5d4e(0x1e7),_0x2e5d4e(0x1c4)+_0x137f33+'.');if(!isObject(_0xf6cd61[_0x2e5d4e(0x1fc)])||typeof _0xf6cd61['defaults'][_0x2e5d4e(0x1d2)]!==_0x2e5d4e(0x1c0))throw instantApiPolicyError(_0x2e5d4e(0x1e2),_0x2e5d4e(0x1e4));if(_0xf6cd61['rules']!==undefined&&_0xf6cd61['rules']!==null&&!Array[_0x2e5d4e(0x1f8)](_0xf6cd61[_0x2e5d4e(0x1f5)]))throw instantApiPolicyError(_0x2e5d4e(0x1e9),_0x2e5d4e(0x1da));return _0xf6cd61;}function isObject(_0x2c7e98){const _0x44cb9e=a283_0x44e1f6;return _0x2c7e98!==null&&typeof _0x2c7e98==='object'&&!Array[_0x44cb9e(0x1f8)](_0x2c7e98);}function isMissingFile(_0x570746){const _0x1f200f=a283_0x44e1f6;return Boolean(_0x570746&&typeof _0x570746===_0x1f200f(0x1d9)&&_0x570746[_0x1f200f(0x1e6)]===_0x1f200f(0x1ee));}function isAlreadyExists(_0xcd92ef){const _0x254f9d=a283_0x44e1f6;return Boolean(_0xcd92ef&&typeof _0xcd92ef===_0x254f9d(0x1d9)&&_0xcd92ef[_0x254f9d(0x1e6)]==='EEXIST');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a283_0x2f5a00=a283_0x51f0;(function(_0x3da0e2,_0x5ccd8d){const _0x51009b=a283_0x51f0,_0x26830f=_0x3da0e2();while(!![]){try{const _0x4dc969=parseInt(_0x51009b(0x1cc))/0x1+-parseInt(_0x51009b(0x1a4))/0x2+parseInt(_0x51009b(0x1ca))/0x3*(parseInt(_0x51009b(0x1b9))/0x4)+-parseInt(_0x51009b(0x1d0))/0x5*(-parseInt(_0x51009b(0x18d))/0x6)+parseInt(_0x51009b(0x1aa))/0x7*(-parseInt(_0x51009b(0x1ce))/0x8)+parseInt(_0x51009b(0x1cd))/0x9*(-parseInt(_0x51009b(0x1a2))/0xa)+-parseInt(_0x51009b(0x188))/0xb*(parseInt(_0x51009b(0x1c9))/0xc);if(_0x4dc969===_0x5ccd8d)break;else _0x26830f['push'](_0x26830f['shift']());}catch(_0x228e19){_0x26830f['push'](_0x26830f['shift']());}}}(a283_0x4235,0x9b4af));import{CliError,CliErrors}from'../errors.js';const RESPONSE_KEYS=[a283_0x2f5a00(0x1c5),a283_0x2f5a00(0x196),'total','hits',a283_0x2f5a00(0x1d4),'timingsMs'],HIT_KEYS=['documentId',a283_0x2f5a00(0x1bf),'chunkId',a283_0x2f5a00(0x1b4),a283_0x2f5a00(0x1bd),'text',a283_0x2f5a00(0x195),'rank','rawScore',a283_0x2f5a00(0x1c6),a283_0x2f5a00(0x18e)];export function normalizeKbServiceOrigin(_0x17248b){const _0x38efc1=a283_0x2f5a00,_0x58f522=()=>CliErrors[_0x38efc1(0x1d3)]('Invalid\x20--kb-service-url:\x20expected\x20an\x20HTTPS\x20origin\x20without\x20credentials,\x20path,\x20query,\x20or\x20fragment.'),_0x4d845a=_0x17248b?.[_0x38efc1(0x197)]();if(!_0x4d845a||/[\u0000-\u0020\u007f]/[_0x38efc1(0x1be)](_0x4d845a)||!/^https:\/\/[^/?#@\\]+\/?$/i[_0x38efc1(0x1be)](_0x4d845a))throw _0x58f522();let _0x2bf1f2;try{_0x2bf1f2=new URL(_0x4d845a);}catch{throw _0x58f522();}if(_0x2bf1f2[_0x38efc1(0x1ac)]!=='https:'||!_0x2bf1f2[_0x38efc1(0x192)]||_0x2bf1f2[_0x38efc1(0x199)]||_0x2bf1f2[_0x38efc1(0x198)]||_0x2bf1f2[_0x38efc1(0x19f)]!=='/'||_0x2bf1f2[_0x38efc1(0x1cf)]||_0x2bf1f2['hash'])throw _0x58f522();return _0x2bf1f2['origin'];}function a283_0x4235(){const _0x318451=['hits','response','company','text','Knowledge\x20search\x20appCode\x20is\x20required.','KB\x20Service\x20knowledge\x20search\x20response\x20is\x20missing\x20Cache-Control:\x20no-store.','scope','toLowerCase','name','\x20contract.','serviceUrl','4327436jvWlSc','string','isSafeInteger','apiError','title','test','revision','status','query','application/json','documentId','error','schemaVersion','finalScore','POST','timingsMs','12FpoOQg','3aHUGHR','signal','794385XIbtzZ','63XrQZfa','14704uyKYZw','search','4076210sldxal','object','KB\x20Service\x20knowledge\x20search\x20returned\x20an\x20invalid\x20response\x20contract.','validation','strategyFingerprint','public','TimeoutError','KB\x20Service\x20knowledge\x20search\x20returned\x20invalid\x20JSON.','number','Knowledge\x20search\x20topK\x20must\x20be\x20an\x20integer\x20from\x201\x20through\x2050.','aborted','stringify','isArray','headers','keys','Knowledge\x20search\x20cancelled.','rank','total','map','isFinite','SmartCode\x20knowledge\x20search\x20returned\x20an\x20invalid\x20','length','5602124aHAIGx','entries','rawScore','development','hits[','6BkzQdk','scoreKind','/v2/development/apps/','some','KB\x20Service\x20knowledge\x20search\x20request\x20timed\x20out.','hostname','appCode','topK','tags','profile','trim','password','username','score','no-store','any','sort','KB\x20Service\x20knowledge\x20search\x20was\x20rate\x20limited\x20(HTTP\x20429).','pathname','get','content-type','900130FBLuyI','cookie','644716oQFanO','includes','chunkId','cli:rabetbase','cache-control','AbortError','2261mbAyZV','networkError','protocol','authRequired'];a283_0x4235=function(){return _0x318451;};return a283_0x4235();}export async function searchDirectKnowledge(_0x59abe7){const _0x2855c9=a283_0x2f5a00,_0x5a7818=_0x59abe7[_0x2855c9(0x193)][_0x2855c9(0x197)](),_0x156fdf=_0x59abe7[_0x2855c9(0x1c1)][_0x2855c9(0x197)]();if(!_0x5a7818)throw CliErrors['validation'](_0x2855c9(0x1b2));if(!_0x59abe7[_0x2855c9(0x1a3)][_0x2855c9(0x197)]())throw CliErrors[_0x2855c9(0x1ad)]();if(!_0x156fdf)throw CliErrors[_0x2855c9(0x1d3)]('Knowledge\x20search\x20query\x20is\x20required.');validateTopK(_0x59abe7['topK']);const _0xbf2a5b=normalizeKbServiceOrigin(_0x59abe7[_0x2855c9(0x1b8)]),_0x13f450=AbortSignal['timeout'](0xea60),_0xe5f1f1=_0x59abe7[_0x2855c9(0x1cb)]?AbortSignal[_0x2855c9(0x19c)]([_0x59abe7[_0x2855c9(0x1cb)],_0x13f450]):_0x13f450;let _0x4bf794;try{_0x4bf794=await fetch(_0xbf2a5b+_0x2855c9(0x18f)+encodeURIComponent(_0x5a7818)+'/knowledge/search',{'method':_0x2855c9(0x1c7),'redirect':_0x2855c9(0x1c4),'headers':{'Content-Type':_0x2855c9(0x1c2),'Cookie':_0x59abe7[_0x2855c9(0x1a3)],'X-Invoke-Source':_0x2855c9(0x1a7)},'body':JSON[_0x2855c9(0x1db)]({'query':_0x156fdf,..._0x59abe7[_0x2855c9(0x194)]!==undefined?{'topK':_0x59abe7[_0x2855c9(0x194)]}:{}}),'signal':_0xe5f1f1});}catch(_0x1842b1){if(_0x59abe7[_0x2855c9(0x1cb)]?.[_0x2855c9(0x1da)])throw new DOMException(_0x2855c9(0x181),'AbortError');if(_0x1842b1 instanceof Error&&_0x1842b1[_0x2855c9(0x1b6)]===_0x2855c9(0x1d6))throw CliErrors[_0x2855c9(0x1ab)](_0x2855c9(0x191));throw CliErrors['networkError']('KB\x20Service\x20knowledge\x20search\x20request\x20failed.');}if(_0x4bf794[_0x2855c9(0x1c0)]===0x191)throw CliErrors[_0x2855c9(0x1ad)]();if(_0x4bf794[_0x2855c9(0x1c0)]===0x1ad)throw CliErrors[_0x2855c9(0x1bc)](_0x2855c9(0x19e));if(!_0x4bf794['ok'])throw CliErrors[_0x2855c9(0x1bc)]('KB\x20Service\x20knowledge\x20search\x20failed\x20(HTTP\x20'+_0x4bf794[_0x2855c9(0x1c0)]+').');if(!hasNoStore(_0x4bf794[_0x2855c9(0x17f)]))throw CliErrors[_0x2855c9(0x1bc)](_0x2855c9(0x1b3));if(!(_0x4bf794[_0x2855c9(0x17f)][_0x2855c9(0x1a0)](_0x2855c9(0x1a1))??'')[_0x2855c9(0x1b5)]()[_0x2855c9(0x1a5)](_0x2855c9(0x1c2)))throw CliErrors['apiError']('KB\x20Service\x20knowledge\x20search\x20returned\x20a\x20non-JSON\x20content\x20type.');let _0xd1d367;try{_0xd1d367=await _0x4bf794['json']();}catch(_0x3437c0){if(_0x59abe7[_0x2855c9(0x1cb)]?.[_0x2855c9(0x1da)])throw new DOMException('Knowledge\x20search\x20cancelled.',_0x2855c9(0x1a9));if(_0x13f450['aborted']||_0x3437c0 instanceof Error&&_0x3437c0['name']===_0x2855c9(0x1d6))throw CliErrors[_0x2855c9(0x1ab)](_0x2855c9(0x191));throw CliErrors[_0x2855c9(0x1bc)](_0x2855c9(0x1d7));}try{const _0xb19465=requireExactRecord(_0xd1d367,[_0x2855c9(0x1ae),_0x2855c9(0x1d4),_0x2855c9(0x1c8)],_0x2855c9(0x1af));if(!Array[_0x2855c9(0x17e)](_0xb19465['hits']))throw invalidContract('hits');return parseDevelopmentSearchResponse({'schemaVersion':0x2,'profile':_0x2855c9(0x18b),'total':_0xb19465['hits'][_0x2855c9(0x187)],'hits':_0xb19465[_0x2855c9(0x1ae)],'strategyFingerprint':_0xb19465[_0x2855c9(0x1d4)],'timingsMs':_0xb19465[_0x2855c9(0x1c8)]},_0x59abe7[_0x2855c9(0x194)]??0xa);}catch(_0x5b9053){if(_0x5b9053 instanceof CliError)throw CliErrors[_0x2855c9(0x1bc)](_0x2855c9(0x1d2));throw _0x5b9053;}}function validateTopK(_0x4cb33e){const _0x4e030d=a283_0x2f5a00;if(_0x4cb33e!==undefined&&(!Number[_0x4e030d(0x1bb)](_0x4cb33e)||_0x4cb33e<0x1||_0x4cb33e>0x32))throw CliErrors['validation'](_0x4e030d(0x1d9));}function a283_0x51f0(_0x394298,_0x4be45c){_0x394298=_0x394298-0x17e;const _0x423543=a283_0x4235();let _0x51f0d8=_0x423543[_0x394298];return _0x51f0d8;}function hasNoStore(_0x5c8c30){const _0x1a7575=a283_0x2f5a00;return(_0x5c8c30[_0x1a7575(0x1a0)](_0x1a7575(0x1a8))??'')['split'](',')[_0x1a7575(0x190)](_0xb2c5b5=>_0xb2c5b5['trim']()[_0x1a7575(0x1b5)]()===_0x1a7575(0x19b));}function parseDevelopmentSearchResponse(_0x2d6aaf,_0x3b0188){const _0x3a3ddb=a283_0x2f5a00,_0x52a685=requireExactRecord(_0x2d6aaf,RESPONSE_KEYS,_0x3a3ddb(0x1af));if(_0x52a685[_0x3a3ddb(0x1c5)]!==0x2||_0x52a685[_0x3a3ddb(0x196)]!==_0x3a3ddb(0x18b))throw invalidContract(_0x3a3ddb(0x196));if(!Array[_0x3a3ddb(0x17e)](_0x52a685[_0x3a3ddb(0x1ae)])||_0x52a685['hits']['length']>(_0x3b0188??0x32))throw invalidContract(_0x3a3ddb(0x1ae));if(typeof _0x52a685[_0x3a3ddb(0x1d4)]!==_0x3a3ddb(0x1ba)||!/^sha256:[0-9a-f]{64}$/['test'](_0x52a685[_0x3a3ddb(0x1d4)]))throw invalidContract(_0x3a3ddb(0x1d4));const _0x5280ac=requireRecord(_0x52a685[_0x3a3ddb(0x1c8)],_0x3a3ddb(0x1c8)),_0x2f7ab8={};for(const [_0x413d41,_0x99567b]of Object[_0x3a3ddb(0x189)](_0x5280ac)){if(!/^[A-Za-z][A-Za-z0-9]*$/[_0x3a3ddb(0x1be)](_0x413d41)||typeof _0x99567b!==_0x3a3ddb(0x1d8)||!Number[_0x3a3ddb(0x185)](_0x99567b)||_0x99567b<0x0)throw invalidContract(_0x3a3ddb(0x1c8));_0x2f7ab8[_0x413d41]=_0x99567b;}const _0x244444=_0x52a685['hits'][_0x3a3ddb(0x184)]((_0x3f3196,_0x4c5f8e)=>parseHit(_0x3f3196,_0x4c5f8e));if(!Number[_0x3a3ddb(0x1bb)](_0x52a685[_0x3a3ddb(0x183)])||_0x52a685[_0x3a3ddb(0x183)]!==_0x244444[_0x3a3ddb(0x187)])throw invalidContract(_0x3a3ddb(0x183));return{'schemaVersion':_0x52a685['schemaVersion'],'profile':_0x52a685['profile'],'total':_0x52a685[_0x3a3ddb(0x183)],'strategyFingerprint':_0x52a685[_0x3a3ddb(0x1d4)],'timingsMs':_0x2f7ab8,'hits':_0x244444};}function parseHit(_0x107f44,_0x73cad1){const _0x5912cc=a283_0x2f5a00,_0x119b8a=requireExactRecord(_0x107f44,HIT_KEYS,_0x5912cc(0x18c)+_0x73cad1+']'),_0x41fc02=_0x56feb2=>{const _0x45603c=_0x5912cc,_0xf88c47=_0x119b8a[_0x56feb2];if(typeof _0xf88c47!==_0x45603c(0x1ba)||!_0xf88c47)throw invalidContract(_0x56feb2);return _0xf88c47;};if(!Number[_0x5912cc(0x1bb)](_0x119b8a[_0x5912cc(0x1bf)])||_0x119b8a[_0x5912cc(0x1bf)]<0x1)throw invalidContract('revision');if(_0x119b8a[_0x5912cc(0x1b4)]!==_0x5912cc(0x1d5)&&_0x119b8a[_0x5912cc(0x1b4)]!==_0x5912cc(0x1b0))throw invalidContract(_0x5912cc(0x1b4));if(typeof _0x119b8a[_0x5912cc(0x1bd)]!=='string'||typeof _0x119b8a['text']!==_0x5912cc(0x1ba))throw invalidContract(_0x5912cc(0x1b1));if(!Array[_0x5912cc(0x17e)](_0x119b8a[_0x5912cc(0x195)])||_0x119b8a[_0x5912cc(0x195)][_0x5912cc(0x190)](_0x50da87=>typeof _0x50da87!==_0x5912cc(0x1ba)))throw invalidContract('tags');if(!Number[_0x5912cc(0x1bb)](_0x119b8a[_0x5912cc(0x182)])||_0x119b8a[_0x5912cc(0x182)]!==_0x73cad1+0x1)throw invalidContract(_0x5912cc(0x182));if(!isFiniteNumber(_0x119b8a[_0x5912cc(0x18a)])||!isFiniteNumber(_0x119b8a[_0x5912cc(0x1c6)]))throw invalidContract(_0x5912cc(0x19a));return{'documentId':_0x41fc02(_0x5912cc(0x1c3)),'revision':_0x119b8a['revision'],'chunkId':_0x41fc02(_0x5912cc(0x1a6)),'scope':_0x119b8a[_0x5912cc(0x1b4)],'title':_0x119b8a[_0x5912cc(0x1bd)],'text':_0x119b8a[_0x5912cc(0x1b1)],'tags':[..._0x119b8a[_0x5912cc(0x195)]],'rank':_0x119b8a[_0x5912cc(0x182)],'rawScore':_0x119b8a[_0x5912cc(0x18a)],'finalScore':_0x119b8a[_0x5912cc(0x1c6)],'scoreKind':_0x41fc02(_0x5912cc(0x18e))};}function requireExactRecord(_0x471d28,_0xc70032,_0x4c0457){const _0x91cfce=a283_0x2f5a00,_0x20dcae=requireRecord(_0x471d28,_0x4c0457),_0x2cec8d=Object[_0x91cfce(0x180)](_0x20dcae)[_0x91cfce(0x19d)](),_0x4a81c5=[..._0xc70032][_0x91cfce(0x19d)]();if(_0x2cec8d['length']!==_0x4a81c5['length']||_0x2cec8d[_0x91cfce(0x190)]((_0x362a4c,_0x14d891)=>_0x362a4c!==_0x4a81c5[_0x14d891]))throw invalidContract(_0x4c0457);return _0x20dcae;}function requireRecord(_0x52fe1f,_0x5376f8){const _0x3b52e3=a283_0x2f5a00;if(!_0x52fe1f||typeof _0x52fe1f!==_0x3b52e3(0x1d1)||Array[_0x3b52e3(0x17e)](_0x52fe1f))throw invalidContract(_0x5376f8);return _0x52fe1f;}function isFiniteNumber(_0x32000d){const _0x4343ba=a283_0x2f5a00;return typeof _0x32000d===_0x4343ba(0x1d8)&&Number[_0x4343ba(0x185)](_0x32000d);}function invalidContract(_0x1cfc76){const _0xcf29ea=a283_0x2f5a00;return CliErrors[_0xcf29ea(0x1bc)](_0xcf29ea(0x186)+_0x1cfc76+_0xcf29ea(0x1b7));}
|
|
1
|
+
const a284_0x9d2c59=a284_0x3a85;(function(_0x569b3c,_0x5c1cd5){const _0x250843=a284_0x3a85,_0x1a2334=_0x569b3c();while(!![]){try{const _0x3b26b3=-parseInt(_0x250843(0xf1))/0x1*(parseInt(_0x250843(0xc5))/0x2)+parseInt(_0x250843(0xc7))/0x3*(-parseInt(_0x250843(0xb3))/0x4)+parseInt(_0x250843(0xfb))/0x5+-parseInt(_0x250843(0xc0))/0x6*(-parseInt(_0x250843(0xed))/0x7)+parseInt(_0x250843(0xc9))/0x8*(parseInt(_0x250843(0xf6))/0x9)+-parseInt(_0x250843(0xa7))/0xa*(-parseInt(_0x250843(0xa3))/0xb)+parseInt(_0x250843(0xda))/0xc*(-parseInt(_0x250843(0xd2))/0xd);if(_0x3b26b3===_0x5c1cd5)break;else _0x1a2334['push'](_0x1a2334['shift']());}catch(_0x37f61e){_0x1a2334['push'](_0x1a2334['shift']());}}}(a284_0x3fec,0x67768));function a284_0x3a85(_0x481708,_0x44d3da){_0x481708=_0x481708-0xa3;const _0x3fec19=a284_0x3fec();let _0x3a85b5=_0x3fec19[_0x481708];return _0x3a85b5;}import{CliError,CliErrors}from'../errors.js';const RESPONSE_KEYS=[a284_0x9d2c59(0xb7),'profile',a284_0x9d2c59(0xc1),a284_0x9d2c59(0xf2),a284_0x9d2c59(0xfc),'timingsMs'],HIT_KEYS=[a284_0x9d2c59(0xc3),a284_0x9d2c59(0xb8),a284_0x9d2c59(0xc4),'scope',a284_0x9d2c59(0xe1),a284_0x9d2c59(0xcf),a284_0x9d2c59(0xd7),a284_0x9d2c59(0xb9),a284_0x9d2c59(0xab),'finalScore',a284_0x9d2c59(0xe5)];export function normalizeKbServiceOrigin(_0x39a02e){const _0x2165c1=a284_0x9d2c59,_0x4f9457=()=>CliErrors[_0x2165c1(0xd1)](_0x2165c1(0xdb)),_0x196110=_0x39a02e?.[_0x2165c1(0xd0)]();if(!_0x196110||/[\u0000-\u0020\u007f]/[_0x2165c1(0xfe)](_0x196110)||!/^https:\/\/[^/?#@\\]+\/?$/i[_0x2165c1(0xfe)](_0x196110))throw _0x4f9457();let _0x430a78;try{_0x430a78=new URL(_0x196110);}catch{throw _0x4f9457();}if(_0x430a78['protocol']!==_0x2165c1(0xd8)||!_0x430a78['hostname']||_0x430a78[_0x2165c1(0xdc)]||_0x430a78['password']||_0x430a78[_0x2165c1(0xe8)]!=='/'||_0x430a78[_0x2165c1(0xae)]||_0x430a78[_0x2165c1(0xdf)])throw _0x4f9457();return _0x430a78[_0x2165c1(0xea)];}export async function searchDirectKnowledge(_0x3bab89){const _0x56a339=a284_0x9d2c59,_0x2a82ac=_0x3bab89[_0x56a339(0xb1)][_0x56a339(0xd0)](),_0x471497=_0x3bab89[_0x56a339(0xf4)]['trim']();if(!_0x2a82ac)throw CliErrors[_0x56a339(0xd1)]('Knowledge\x20search\x20appCode\x20is\x20required.');if(!_0x3bab89[_0x56a339(0xe6)]['trim']())throw CliErrors[_0x56a339(0xf9)]();if(!_0x471497)throw CliErrors['validation'](_0x56a339(0xc8));validateTopK(_0x3bab89['topK']);const _0x3a652a=normalizeKbServiceOrigin(_0x3bab89[_0x56a339(0xce)]),_0x2977bb=AbortSignal[_0x56a339(0xac)](0xea60),_0x487092=_0x3bab89['signal']?AbortSignal[_0x56a339(0xe3)]([_0x3bab89[_0x56a339(0xb2)],_0x2977bb]):_0x2977bb;let _0xd49c0c;try{_0xd49c0c=await fetch(_0x3a652a+_0x56a339(0xbd)+encodeURIComponent(_0x2a82ac)+_0x56a339(0xfd),{'method':'POST','redirect':_0x56a339(0xf8),'headers':{'Content-Type':_0x56a339(0xf7),'Cookie':_0x3bab89[_0x56a339(0xe6)],'X-Invoke-Source':_0x56a339(0xeb)},'body':JSON[_0x56a339(0xbe)]({'query':_0x471497,..._0x3bab89[_0x56a339(0xcb)]!==undefined?{'topK':_0x3bab89[_0x56a339(0xcb)]}:{}}),'signal':_0x487092});}catch(_0x4bfa46){if(_0x3bab89[_0x56a339(0xb2)]?.[_0x56a339(0xa8)])throw new DOMException(_0x56a339(0xec),_0x56a339(0xd5));if(_0x4bfa46 instanceof Error&&_0x4bfa46[_0x56a339(0xbb)]===_0x56a339(0xf3))throw CliErrors[_0x56a339(0xef)](_0x56a339(0xaa));throw CliErrors[_0x56a339(0xef)](_0x56a339(0xe2));}if(_0xd49c0c['status']===0x191)throw CliErrors[_0x56a339(0xf9)]();if(_0xd49c0c['status']===0x1ad)throw CliErrors['apiError'](_0x56a339(0xee));if(!_0xd49c0c['ok'])throw CliErrors[_0x56a339(0xff)]('KB\x20Service\x20knowledge\x20search\x20failed\x20(HTTP\x20'+_0xd49c0c[_0x56a339(0xde)]+').');if(!hasNoStore(_0xd49c0c['headers']))throw CliErrors[_0x56a339(0xff)](_0x56a339(0xe9));if(!(_0xd49c0c['headers'][_0x56a339(0xe7)](_0x56a339(0xc2))??'')['toLowerCase']()[_0x56a339(0xa4)](_0x56a339(0xf7)))throw CliErrors[_0x56a339(0xff)](_0x56a339(0xb0));let _0x182411;try{_0x182411=await _0xd49c0c['json']();}catch(_0x1d9c0d){if(_0x3bab89[_0x56a339(0xb2)]?.[_0x56a339(0xa8)])throw new DOMException(_0x56a339(0xec),_0x56a339(0xd5));if(_0x2977bb[_0x56a339(0xa8)]||_0x1d9c0d instanceof Error&&_0x1d9c0d[_0x56a339(0xbb)]===_0x56a339(0xf3))throw CliErrors[_0x56a339(0xef)](_0x56a339(0xaa));throw CliErrors['apiError'](_0x56a339(0xa6));}try{const _0xf1d3a5=requireExactRecord(_0x182411,['hits','strategyFingerprint',_0x56a339(0xb6)],_0x56a339(0xb5));if(!Array['isArray'](_0xf1d3a5[_0x56a339(0xf2)]))throw invalidContract('hits');return parseDevelopmentSearchResponse({'schemaVersion':0x2,'profile':'development','total':_0xf1d3a5['hits'][_0x56a339(0xd6)],'hits':_0xf1d3a5['hits'],'strategyFingerprint':_0xf1d3a5[_0x56a339(0xfc)],'timingsMs':_0xf1d3a5[_0x56a339(0xb6)]},_0x3bab89['topK']??0xa);}catch(_0x5e2859){if(_0x5e2859 instanceof CliError)throw CliErrors['apiError'](_0x56a339(0xf0));throw _0x5e2859;}}function a284_0x3fec(){const _0x3cad23=['Knowledge\x20search\x20topK\x20must\x20be\x20an\x20integer\x20from\x201\x20through\x2050.','2337144nUAqjx','Knowledge\x20search\x20query\x20is\x20required.','24pVQqKG','isArray','topK','toLowerCase','no-store','serviceUrl','text','trim','validation','299HdnGiC','string','finalScore','AbortError','length','tags','https:','number','52788VzKAjz','Invalid\x20--kb-service-url:\x20expected\x20an\x20HTTPS\x20origin\x20without\x20credentials,\x20path,\x20query,\x20or\x20fragment.','username','SmartCode\x20knowledge\x20search\x20returned\x20an\x20invalid\x20','status','hash','sort','title','KB\x20Service\x20knowledge\x20search\x20request\x20failed.','any','keys','scoreKind','cookie','get','pathname','KB\x20Service\x20knowledge\x20search\x20response\x20is\x20missing\x20Cache-Control:\x20no-store.','origin','cli:rabetbase','Knowledge\x20search\x20cancelled.','15981vgpsVl','KB\x20Service\x20knowledge\x20search\x20was\x20rate\x20limited\x20(HTTP\x20429).','networkError','KB\x20Service\x20knowledge\x20search\x20returned\x20an\x20invalid\x20response\x20contract.','146vjEQYM','hits','TimeoutError','query','map','1162899lxhXjz','application/json','error','authRequired','isSafeInteger','1886015zklFYC','strategyFingerprint','/knowledge/search','test','apiError','2211oJTkCL','includes','some','KB\x20Service\x20knowledge\x20search\x20returned\x20invalid\x20JSON.','23020wLtzQO','aborted','public','KB\x20Service\x20knowledge\x20search\x20request\x20timed\x20out.','rawScore','timeout','development','search','scope','KB\x20Service\x20knowledge\x20search\x20returned\x20a\x20non-JSON\x20content\x20type.','appCode','signal','4tEQrpd','profile','response','timingsMs','schemaVersion','revision','rank','object','name','entries','/v2/development/apps/','stringify','company','450MkvUIk','total','content-type','documentId','chunkId','1298mxyRVh'];a284_0x3fec=function(){return _0x3cad23;};return a284_0x3fec();}function validateTopK(_0x2573e0){const _0x1cc1f0=a284_0x9d2c59;if(_0x2573e0!==undefined&&(!Number[_0x1cc1f0(0xfa)](_0x2573e0)||_0x2573e0<0x1||_0x2573e0>0x32))throw CliErrors[_0x1cc1f0(0xd1)](_0x1cc1f0(0xc6));}function hasNoStore(_0x38616f){const _0x9b47ee=a284_0x9d2c59;return(_0x38616f[_0x9b47ee(0xe7)]('cache-control')??'')['split'](',')['some'](_0x3435f3=>_0x3435f3[_0x9b47ee(0xd0)]()[_0x9b47ee(0xcc)]()===_0x9b47ee(0xcd));}function parseDevelopmentSearchResponse(_0xcdd559,_0x38f371){const _0xfd5702=a284_0x9d2c59,_0x45ceb6=requireExactRecord(_0xcdd559,RESPONSE_KEYS,_0xfd5702(0xb5));if(_0x45ceb6['schemaVersion']!==0x2||_0x45ceb6[_0xfd5702(0xb4)]!==_0xfd5702(0xad))throw invalidContract(_0xfd5702(0xb4));if(!Array['isArray'](_0x45ceb6[_0xfd5702(0xf2)])||_0x45ceb6[_0xfd5702(0xf2)][_0xfd5702(0xd6)]>(_0x38f371??0x32))throw invalidContract(_0xfd5702(0xf2));if(typeof _0x45ceb6[_0xfd5702(0xfc)]!==_0xfd5702(0xd3)||!/^sha256:[0-9a-f]{64}$/[_0xfd5702(0xfe)](_0x45ceb6['strategyFingerprint']))throw invalidContract(_0xfd5702(0xfc));const _0x48a1fd=requireRecord(_0x45ceb6['timingsMs'],_0xfd5702(0xb6)),_0x328550={};for(const [_0x1a68cf,_0xf21910]of Object[_0xfd5702(0xbc)](_0x48a1fd)){if(!/^[A-Za-z][A-Za-z0-9]*$/[_0xfd5702(0xfe)](_0x1a68cf)||typeof _0xf21910!==_0xfd5702(0xd9)||!Number['isFinite'](_0xf21910)||_0xf21910<0x0)throw invalidContract(_0xfd5702(0xb6));_0x328550[_0x1a68cf]=_0xf21910;}const _0x5530c6=_0x45ceb6[_0xfd5702(0xf2)][_0xfd5702(0xf5)]((_0x299553,_0x817503)=>parseHit(_0x299553,_0x817503));if(!Number['isSafeInteger'](_0x45ceb6[_0xfd5702(0xc1)])||_0x45ceb6[_0xfd5702(0xc1)]!==_0x5530c6[_0xfd5702(0xd6)])throw invalidContract(_0xfd5702(0xc1));return{'schemaVersion':_0x45ceb6[_0xfd5702(0xb7)],'profile':_0x45ceb6[_0xfd5702(0xb4)],'total':_0x45ceb6[_0xfd5702(0xc1)],'strategyFingerprint':_0x45ceb6[_0xfd5702(0xfc)],'timingsMs':_0x328550,'hits':_0x5530c6};}function parseHit(_0x2e1836,_0x4ca4b4){const _0x501747=a284_0x9d2c59,_0x4f2b79=requireExactRecord(_0x2e1836,HIT_KEYS,'hits['+_0x4ca4b4+']'),_0xb0716=_0x469af7=>{const _0x4eb373=a284_0x3a85,_0x166cd0=_0x4f2b79[_0x469af7];if(typeof _0x166cd0!==_0x4eb373(0xd3)||!_0x166cd0)throw invalidContract(_0x469af7);return _0x166cd0;};if(!Number['isSafeInteger'](_0x4f2b79['revision'])||_0x4f2b79[_0x501747(0xb8)]<0x1)throw invalidContract('revision');if(_0x4f2b79[_0x501747(0xaf)]!==_0x501747(0xa9)&&_0x4f2b79[_0x501747(0xaf)]!==_0x501747(0xbf))throw invalidContract(_0x501747(0xaf));if(typeof _0x4f2b79[_0x501747(0xe1)]!==_0x501747(0xd3)||typeof _0x4f2b79['text']!==_0x501747(0xd3))throw invalidContract(_0x501747(0xcf));if(!Array[_0x501747(0xca)](_0x4f2b79[_0x501747(0xd7)])||_0x4f2b79[_0x501747(0xd7)][_0x501747(0xa5)](_0x11faa6=>typeof _0x11faa6!=='string'))throw invalidContract(_0x501747(0xd7));if(!Number[_0x501747(0xfa)](_0x4f2b79['rank'])||_0x4f2b79[_0x501747(0xb9)]!==_0x4ca4b4+0x1)throw invalidContract(_0x501747(0xb9));if(!isFiniteNumber(_0x4f2b79[_0x501747(0xab)])||!isFiniteNumber(_0x4f2b79[_0x501747(0xd4)]))throw invalidContract('score');return{'documentId':_0xb0716(_0x501747(0xc3)),'revision':_0x4f2b79[_0x501747(0xb8)],'chunkId':_0xb0716(_0x501747(0xc4)),'scope':_0x4f2b79[_0x501747(0xaf)],'title':_0x4f2b79[_0x501747(0xe1)],'text':_0x4f2b79['text'],'tags':[..._0x4f2b79['tags']],'rank':_0x4f2b79[_0x501747(0xb9)],'rawScore':_0x4f2b79['rawScore'],'finalScore':_0x4f2b79[_0x501747(0xd4)],'scoreKind':_0xb0716(_0x501747(0xe5))};}function requireExactRecord(_0x3bc5ec,_0x3f29bd,_0x12e3db){const _0x1b026e=a284_0x9d2c59,_0x2ddbc9=requireRecord(_0x3bc5ec,_0x12e3db),_0x1dd943=Object[_0x1b026e(0xe4)](_0x2ddbc9)[_0x1b026e(0xe0)](),_0x5e1e83=[..._0x3f29bd][_0x1b026e(0xe0)]();if(_0x1dd943[_0x1b026e(0xd6)]!==_0x5e1e83[_0x1b026e(0xd6)]||_0x1dd943[_0x1b026e(0xa5)]((_0x528083,_0x1f4a3f)=>_0x528083!==_0x5e1e83[_0x1f4a3f]))throw invalidContract(_0x12e3db);return _0x2ddbc9;}function requireRecord(_0x3f233d,_0x143d2b){const _0x28ea5a=a284_0x9d2c59;if(!_0x3f233d||typeof _0x3f233d!==_0x28ea5a(0xba)||Array[_0x28ea5a(0xca)](_0x3f233d))throw invalidContract(_0x143d2b);return _0x3f233d;}function isFiniteNumber(_0x339523){return typeof _0x339523==='number'&&Number['isFinite'](_0x339523);}function invalidContract(_0x2cc7a9){const _0x1eed13=a284_0x9d2c59;return CliErrors[_0x1eed13(0xff)](_0x1eed13(0xdd)+_0x2cc7a9+'\x20contract.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1cf186,_0x2894bb){const _0x586757=a285_0x3635,_0x3f795d=_0x1cf186();while(!![]){try{const _0x2257d0=-parseInt(_0x586757(0x194))/0x1+parseInt(_0x586757(0x19a))/0x2+parseInt(_0x586757(0x19d))/0x3+-parseInt(_0x586757(0x1a0))/0x4*(-parseInt(_0x586757(0x1a1))/0x5)+parseInt(_0x586757(0x1a4))/0x6*(parseInt(_0x586757(0x1a2))/0x7)+parseInt(_0x586757(0x196))/0x8+-parseInt(_0x586757(0x195))/0x9;if(_0x2257d0===_0x2894bb)break;else _0x3f795d['push'](_0x3f795d['shift']());}catch(_0x200bcd){_0x3f795d['push'](_0x3f795d['shift']());}}}(a285_0x1ea9,0x460b5));import{constants}from'node:fs';import{access,lstat,mkdir,readFile,readdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{CliErrors}from'../../errors.js';export function loadPageProjectConfig(_0x2022c9,_0x221422=process['cwd']()){const _0x395fd5=a285_0x3635,_0x4faa90=resolve(_0x221422),_0x36671a=join(_0x4faa90,'.rabetbase',_0x395fd5(0x198));return{'projectRoot':_0x4faa90,'pagesBaseDir':_0x36671a,'appPagesDir':join(_0x36671a,_0x2022c9),'lockFilePath':join(_0x4faa90,_0x395fd5(0x199),_0x395fd5(0x1ae))};}export function buildPageFileName(_0x9d7936,_0x265082){const _0x284708=a285_0x3635;return _0x9d7936+'-'+_0x265082[_0x284708(0x197)]()+_0x284708(0x1aa);}function a285_0x3635(_0x52530c,_0x144252){_0x52530c=_0x52530c-0x193;const _0x1ea96f=a285_0x1ea9();let _0x363596=_0x1ea96f[_0x52530c];return _0x363596;}function a285_0x1ea9(){const _0x78102a=['appPagesDir','join','utf8','page.lock.json','split','279687OZEboC','13104054GjzOFw','3903192DozotK','toUpperCase','page','.rabetbase','1067790gxVait','page-dir','isDirectory','453561VCRiLG','sort','name','4lcssXs','1755095ayGuiP','966tIvjyW','localeCompare','21678yXxQwB','validation','Unsupported\x20file\x20in\x20page\x20directory:\x20','isFile','F_OK','Page\x20directory\x20not\x20found:\x20','.json'];a285_0x1ea9=function(){return _0x78102a;};return a285_0x1ea9();}export function resolvePageFilePath(_0x511348,_0xb34691,_0x54dea7){const _0x43afad=a285_0x3635;return join(_0x511348[_0x43afad(0x1ab)],buildPageFileName(_0xb34691,_0x54dea7));}export async function ensureParentDirectory(_0x27ee85){await mkdir(dirname(_0x27ee85),{'recursive':!![]});}export async function fileExists(_0x1aefca){const _0x32db6a=a285_0x3635;try{return await access(_0x1aefca,constants[_0x32db6a(0x1a8)]),!![];}catch{return![];}}export async function readCustomPageDirectory(_0x1ebae8){const _0x226099=a285_0x3635,_0x3534c2=_0x1ebae8['trim']();if(!_0x3534c2)throw CliErrors['flagMissing'](_0x226099(0x19b));const _0x1306a1=resolve(_0x3534c2);let _0x182536;try{_0x182536=await lstat(_0x1306a1);}catch{throw CliErrors[_0x226099(0x1a5)](_0x226099(0x1a9)+_0x3534c2);}if(!_0x182536[_0x226099(0x19c)]())throw CliErrors[_0x226099(0x1a5)]('Page\x20directory\x20is\x20not\x20a\x20directory:\x20'+_0x3534c2);const _0x2bd29b={};return await readDirectory(_0x1306a1,_0x1306a1,_0x2bd29b),_0x2bd29b;}async function readDirectory(_0x3a5ba1,_0x242eac,_0x2831df){const _0x24415a=a285_0x3635,_0x1fc9a3=await readdir(_0x242eac,{'withFileTypes':!![]});for(const _0x10ab4c of _0x1fc9a3[_0x24415a(0x19e)]((_0x2cc7d9,_0xf1168c)=>_0x2cc7d9[_0x24415a(0x19f)][_0x24415a(0x1a3)](_0xf1168c[_0x24415a(0x19f)]))){const _0x5144a6=join(_0x242eac,_0x10ab4c[_0x24415a(0x19f)]);if(_0x10ab4c['isDirectory']()){await readDirectory(_0x3a5ba1,_0x5144a6,_0x2831df);continue;}if(!_0x10ab4c[_0x24415a(0x1a7)]())throw CliErrors[_0x24415a(0x1a5)](_0x24415a(0x1a6)+_0x5144a6);_0x2831df[relative(_0x3a5ba1,_0x5144a6)[_0x24415a(0x193)](sep)[_0x24415a(0x1ac)]('/')]=await readFile(_0x5144a6,_0x24415a(0x1ad));}}
|
package/lib/core/page/hash.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a286_0x1c62(_0xcdf8c8,_0x182af5){_0xcdf8c8=_0xcdf8c8-0x100;const _0x1570a3=a286_0x1570();let _0x1c62d3=_0x1570a3[_0xcdf8c8];return _0x1c62d3;}function a286_0x1570(){const _0x2e934d=['9874440FCRVom','2418450bBQFWE','md5','1197OpeXhz','48YXrbNj','18608fEvDPY','stringify','519906zLcegF','digest','421902Ueejut','125195YoXRTQ','hex','87762icWNQi','createHash','utf8'];a286_0x1570=function(){return _0x2e934d;};return a286_0x1570();}(function(_0x25ca25,_0x29c338){const _0x47a7c2=a286_0x1c62,_0x22e62f=_0x25ca25();while(!![]){try{const _0x7cdd68=parseInt(_0x47a7c2(0x103))/0x1+-parseInt(_0x47a7c2(0x108))/0x2+-parseInt(_0x47a7c2(0x105))/0x3+-parseInt(_0x47a7c2(0x100))/0x4*(parseInt(_0x47a7c2(0x106))/0x5)+-parseInt(_0x47a7c2(0x10c))/0x6+-parseInt(_0x47a7c2(0x10e))/0x7*(parseInt(_0x47a7c2(0x101))/0x8)+parseInt(_0x47a7c2(0x10b))/0x9;if(_0x7cdd68===_0x29c338)break;else _0x22e62f['push'](_0x22e62f['shift']());}catch(_0x17e749){_0x22e62f['push'](_0x22e62f['shift']());}}}(a286_0x1570,0x50dfe));import a286_0x5749a9 from'node:crypto';import{readFile}from'node:fs/promises';export function serializePageSchemaForFile(_0x3bbdd9){const _0x1607f1=a286_0x1c62;return JSON[_0x1607f1(0x102)](JSON['parse'](_0x3bbdd9),null,0x2)+'\x0a';}export function computePageContentHash(_0x1a8ca2){const _0x282039=a286_0x1c62;return a286_0x5749a9[_0x282039(0x109)](_0x282039(0x10d))['update'](_0x1a8ca2)[_0x282039(0x104)](_0x282039(0x107));}export function computeSerializedSchemaHash(_0x56a6d9){return computePageContentHash(serializePageSchemaForFile(_0x56a6d9));}export async function computePageFileHash(_0x4a081b){const _0xaa8203=a286_0x1c62,_0x3df031=await readFile(_0x4a081b,_0xaa8203(0x10a));return computePageContentHash(_0x3df031);}
|
package/lib/core/page/lock.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a287_0x40bf(_0x214293,_0x314bdf){_0x214293=_0x214293-0x1b4;const _0x10ff01=a287_0x10ff();let _0x40bffb=_0x10ff01[_0x214293];return _0x40bffb;}(function(_0xa28ed6,_0x41a6b2){const _0x4c9433=a287_0x40bf,_0x47ea5f=_0xa28ed6();while(!![]){try{const _0x4613b0=-parseInt(_0x4c9433(0x1b5))/0x1+parseInt(_0x4c9433(0x1c8))/0x2+-parseInt(_0x4c9433(0x1c7))/0x3*(parseInt(_0x4c9433(0x1bb))/0x4)+-parseInt(_0x4c9433(0x1bc))/0x5*(parseInt(_0x4c9433(0x1b9))/0x6)+-parseInt(_0x4c9433(0x1b7))/0x7+parseInt(_0x4c9433(0x1b4))/0x8*(-parseInt(_0x4c9433(0x1c1))/0x9)+-parseInt(_0x4c9433(0x1be))/0xa*(-parseInt(_0x4c9433(0x1c6))/0xb);if(_0x4613b0===_0x41a6b2)break;else _0x47ea5f['push'](_0x47ea5f['shift']());}catch(_0x1d2897){_0x47ea5f['push'](_0x47ea5f['shift']());}}}(a287_0x10ff,0x2efc8));import{mkdir,readFile,writeFile}from'node:fs/promises';import{dirname}from'node:path';function a287_0x10ff(){const _0xad3db7=['310194hfbSGA','399304ZEwsnd','8EhRkiW','187757eeFzpm','apps','485702GEDCjN','ENOENT','1522086HGZnjp','lastSync','4fbtKcd','5ZdtLYR','code','27330YVjdLr','parse','stringify','2186433AHZSVk','object','utf8','pages','Failed\x20to\x20read\x20page\x20lock\x20file:\x20','3421AGlWwm'];a287_0x10ff=function(){return _0xad3db7;};return a287_0x10ff();}export function createEmptyPageLock(){return{'apps':{}};}export function ensurePageLockScope(_0x19c043,_0x318f26){const _0x2fd47a=a287_0x40bf,_0x4ce82d={'apps':_0x19c043[_0x2fd47a(0x1b6)]&&typeof _0x19c043[_0x2fd47a(0x1b6)]===_0x2fd47a(0x1c2)?_0x19c043[_0x2fd47a(0x1b6)]:{}};let _0x2cb944=_0x4ce82d[_0x2fd47a(0x1b6)][_0x318f26];if(!_0x2cb944)return _0x2cb944={'lastSync':'','pages':{}},_0x4ce82d[_0x2fd47a(0x1b6)][_0x318f26]=_0x2cb944,{'lockData':_0x4ce82d,'appLock':_0x2cb944};return!_0x2cb944[_0x2fd47a(0x1ba)]&&(_0x2cb944[_0x2fd47a(0x1ba)]=''),(!_0x2cb944['pages']||typeof _0x2cb944[_0x2fd47a(0x1c4)]!==_0x2fd47a(0x1c2))&&(_0x2cb944['pages']={}),{'lockData':_0x4ce82d,'appLock':_0x2cb944};}export async function readPageLockFile(_0x2062b3){const _0x5e8bc5=a287_0x40bf;try{const _0x57385b=await readFile(_0x2062b3,_0x5e8bc5(0x1c3)),_0x26d2da=JSON[_0x5e8bc5(0x1bf)](_0x57385b);return{'apps':_0x26d2da[_0x5e8bc5(0x1b6)]&&typeof _0x26d2da['apps']===_0x5e8bc5(0x1c2)?_0x26d2da[_0x5e8bc5(0x1b6)]:{}};}catch(_0x181d99){if(_0x181d99[_0x5e8bc5(0x1bd)]===_0x5e8bc5(0x1b8))return null;throw new Error(_0x5e8bc5(0x1c5)+String(_0x181d99));}}export async function writePageLockFile(_0x5a4df3,_0x568343){const _0xf2646b=a287_0x40bf;await mkdir(dirname(_0x5a4df3),{'recursive':!![]}),await writeFile(_0x5a4df3,JSON[_0xf2646b(0x1c0)](_0x568343,null,0x2),'utf8');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x179d5b,_0x1a5b90){const _0x613529=a288_0x433c,_0x2d6bfc=_0x179d5b();while(!![]){try{const _0x5f5796=-parseInt(_0x613529(0x1e5))/0x1*(-parseInt(_0x613529(0x1d5))/0x2)+-parseInt(_0x613529(0x1d9))/0x3+-parseInt(_0x613529(0x1c4))/0x4*(-parseInt(_0x613529(0x1c7))/0x5)+parseInt(_0x613529(0x1cc))/0x6*(-parseInt(_0x613529(0x1df))/0x7)+parseInt(_0x613529(0x1ef))/0x8+parseInt(_0x613529(0x1d8))/0x9*(parseInt(_0x613529(0x1c6))/0xa)+-parseInt(_0x613529(0x1c2))/0xb*(parseInt(_0x613529(0x1d3))/0xc);if(_0x5f5796===_0x1a5b90)break;else _0x2d6bfc['push'](_0x2d6bfc['shift']());}catch(_0x2b213d){_0x2d6bfc['push'](_0x2d6bfc['shift']());}}}(a288_0x681a,0x64b19));import{CliErrors}from'../../errors.js';export async function prepareLrSmartJsxForPush(_0x97df54,_0x15d3a5,_0x5acb6d){const _0x350ffe=a288_0x433c,_0x75fe95=parseSchema(_0x97df54,_0x350ffe(0x1cd)),_0x788e4=parseSchema(_0x15d3a5,_0x350ffe(0x1e2)),_0x51641b=collectLrSmartJsx(_0x75fe95,!![]);if(_0x51641b[_0x350ffe(0x1cf)]===0x0)return{'content':_0x97df54,'compiledNodes':0x0,'normalizedNodes':0x0};const _0x2991e8=new Map(collectLrSmartJsx(_0x788e4)['map'](_0x488d08=>[_0x488d08[_0x350ffe(0x1ec)],_0x488d08]));let _0x40897d=0x0,_0x371769=0x0;for(const _0x3f1378 of _0x51641b){const _0xc49320=readNonEmptyString(_0x3f1378['render'][_0x350ffe(0x1c8)]),_0x11f04e=readNonEmptyString(_0x3f1378['render'][_0x350ffe(0x1dc)]),_0x39b6b8=_0x2991e8[_0x350ffe(0x1e4)](_0x3f1378[_0x350ffe(0x1ec)]),_0x10cc0b=readNonEmptyString(_0x39b6b8?.['render'][_0x350ffe(0x1c8)]),_0x34dfca=readNonEmptyString(_0x39b6b8?.['render'][_0x350ffe(0x1dc)]);let _0x308978=![];_0x3f1378['render'][_0x350ffe(0x1ea)]!==_0x350ffe(0x1d6)&&(_0x3f1378[_0x350ffe(0x1c3)][_0x350ffe(0x1ea)]=_0x350ffe(0x1d6),_0x308978=!![]);!isPageContextExpression(_0x3f1378[_0x350ffe(0x1da)][_0x350ffe(0x1dd)])&&(_0x3f1378[_0x350ffe(0x1da)]['_context']={'type':_0x350ffe(0x1eb),'value':_0x350ffe(0x1ce)},_0x308978=!![]);if(!_0xc49320){if(!_0x11f04e)throw CliErrors['validation']('LrSmartJsx\x20node\x20\x22'+_0x3f1378[_0x350ffe(0x1e1)]+'\x22\x20is\x20missing\x20both\x20render.source\x20and\x20render.value.','Add\x20JSX\x20source\x20in\x20the\x20page\x20editor\x20or\x20remove\x20the\x20incomplete\x20component.');if(_0x308978)_0x371769+=0x1;continue;}const _0x5aa262=!_0x39b6b8||_0xc49320!==_0x10cc0b,_0x53854a=!_0x11f04e;if(!_0x5aa262&&_0x11f04e&&_0x34dfca&&_0x11f04e!==_0x34dfca)throw CliErrors[_0x350ffe(0x1ed)]('LrSmartJsx\x20node\x20\x22'+_0x3f1378[_0x350ffe(0x1e1)]+_0x350ffe(0x1d7),'Edit\x20render.source\x20instead;\x20render.value\x20is\x20generated\x20during\x20page\x20push.');if(_0x5aa262||_0x53854a||!_0x34dfca){const _0x40fc29=readNonEmptyString(await _0x5acb6d(_0xc49320));if(!_0x40fc29)throw CliErrors[_0x350ffe(0x1db)](_0x350ffe(0x1e7)+_0x3f1378[_0x350ffe(0x1e1)]+'\x22.');_0x3f1378[_0x350ffe(0x1c3)][_0x350ffe(0x1dc)]=_0x40fc29,_0x40897d+=0x1,_0x308978=!![];}if(_0x308978)_0x371769+=0x1;}if(_0x371769===0x0)return{'content':_0x97df54,'compiledNodes':_0x40897d,'normalizedNodes':_0x371769};return{'content':JSON['stringify'](_0x75fe95),'compiledNodes':_0x40897d,'normalizedNodes':_0x371769};}function a288_0x681a(){const _0x66535e=['props','apiError','value','_context','\x22\x20has\x20missing\x20or\x20invalid\x20props.render.','50421tysPif','componentName','label','remote','id:','get','186682UXpiVg','forEach','LrSmartJsx\x20compilation\x20returned\x20no\x20code\x20for\x20node\x20\x22','LrSmartJsx\x20node\x20\x22','push','type','JSExpression','key','validation','Set\x20props.render\x20to\x20an\x20object\x20containing\x20render.source\x20or\x20render.value.','3332072zHSdaK','4994121HwtRKZ','render','892teNqwl','trim','119390hYSDNn','5XMejcv','source','parse','Invalid\x20JSON\x20in\x20','\x20page\x20schema.','30ermNgi','local','this','length','path:','isArray','entries','12EcWPSM','LrSmartJsx','6DrrSEi','JSFunction','\x22\x20has\x20a\x20manually\x20changed\x20render.value.','18XQvbnf','294567SAArSR'];a288_0x681a=function(){return _0x66535e;};return a288_0x681a();}function parseSchema(_0x21b5b4,_0x305e45){const _0x1f927c=a288_0x433c;try{return JSON[_0x1f927c(0x1c9)](_0x21b5b4);}catch{throw CliErrors[_0x1f927c(0x1ed)](_0x1f927c(0x1ca)+_0x305e45+_0x1f927c(0x1cb));}}function collectLrSmartJsx(_0x53b979,_0x3e0b50=![]){const _0x5868e7=[],_0x111ff7=(_0x534041,_0x356c8b)=>{const _0x3c5aad=a288_0x433c;if(Array[_0x3c5aad(0x1d1)](_0x534041)){_0x534041[_0x3c5aad(0x1e6)]((_0x36097c,_0x2d9693)=>_0x111ff7(_0x36097c,_0x356c8b+'['+_0x2d9693+']'));return;}if(!isObject(_0x534041))return;if(_0x534041[_0x3c5aad(0x1e0)]===_0x3c5aad(0x1d4)){const _0x4bf0d7=readNonEmptyString(_0x534041['id']),_0x172515=_0x4bf0d7||_0x356c8b,_0x1ddde2=isObject(_0x534041['props'])?_0x534041['props']:undefined;if(!_0x1ddde2){if(_0x3e0b50)throw CliErrors['validation'](_0x3c5aad(0x1e8)+_0x172515+'\x22\x20has\x20missing\x20or\x20invalid\x20props.','Set\x20props\x20to\x20an\x20object\x20containing\x20a\x20render\x20object.');return;}const _0x305c1f=isObject(_0x1ddde2[_0x3c5aad(0x1c3)])?_0x1ddde2[_0x3c5aad(0x1c3)]:undefined;if(!_0x305c1f){if(_0x3e0b50)throw CliErrors[_0x3c5aad(0x1ed)]('LrSmartJsx\x20node\x20\x22'+_0x172515+_0x3c5aad(0x1de),_0x3c5aad(0x1ee));return;}_0x5868e7[_0x3c5aad(0x1e9)]({'key':_0x4bf0d7?_0x3c5aad(0x1e3)+_0x4bf0d7:_0x3c5aad(0x1d0)+_0x356c8b,'label':_0x172515,'props':_0x1ddde2,'render':_0x305c1f});}for(const [_0x5af6a2,_0x51dfac]of Object[_0x3c5aad(0x1d2)](_0x534041)){if(_0x5af6a2===_0x3c5aad(0x1da)&&_0x534041[_0x3c5aad(0x1e0)]===_0x3c5aad(0x1d4))continue;_0x111ff7(_0x51dfac,_0x356c8b+'.'+_0x5af6a2);}};return _0x111ff7(_0x53b979,'$'),_0x5868e7;}function a288_0x433c(_0x5a8d90,_0x5b0f6b){_0x5a8d90=_0x5a8d90-0x1c2;const _0x681a8d=a288_0x681a();let _0x433c08=_0x681a8d[_0x5a8d90];return _0x433c08;}function isObject(_0x1dda1f){const _0x3cb4db=a288_0x433c;return Boolean(_0x1dda1f)&&typeof _0x1dda1f==='object'&&!Array[_0x3cb4db(0x1d1)](_0x1dda1f);}function readNonEmptyString(_0x30c61e){const _0x222f0f=a288_0x433c;return typeof _0x30c61e==='string'&&_0x30c61e[_0x222f0f(0x1c5)]()?_0x30c61e:undefined;}function isPageContextExpression(_0x469f43){const _0x5294b9=a288_0x433c;return isObject(_0x469f43)&&_0x469f43[_0x5294b9(0x1ea)]===_0x5294b9(0x1eb)&&_0x469f43[_0x5294b9(0x1dc)]===_0x5294b9(0x1ce);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0x25a497,_0x42f90d){const _0x4b226c=a289_0x468b,_0x334df9=_0x25a497();while(!![]){try{const _0x44f2e3=-parseInt(_0x4b226c(0xd2))/0x1+-parseInt(_0x4b226c(0x106))/0x2+-parseInt(_0x4b226c(0xfe))/0x3+-parseInt(_0x4b226c(0xe3))/0x4*(parseInt(_0x4b226c(0xf0))/0x5)+-parseInt(_0x4b226c(0x102))/0x6+parseInt(_0x4b226c(0xd6))/0x7+parseInt(_0x4b226c(0xdd))/0x8*(parseInt(_0x4b226c(0xd9))/0x9);if(_0x44f2e3===_0x42f90d)break;else _0x334df9['push'](_0x334df9['shift']());}catch(_0x47cf5d){_0x334df9['push'](_0x334df9['shift']());}}}(a289_0x4a61,0x337aa));function a289_0x468b(_0x589a66,_0x4e9437){_0x589a66=_0x589a66-0xc7;const _0x4a6135=a289_0x4a61();let _0x468b4d=_0x4a6135[_0x589a66];return _0x468b4d;}import{MYBATIS_DYNAMIC_END_MARKER,MYBATIS_DYNAMIC_START_MARKER,MYBATIS_INCLUDE_MARKER,normalizeSqlForStaticAnalysis}from'./sql-validator.js';export function auditSqlJoinIndexes(_0x390ffc,_0x4d2583){const _0x9e17e=a289_0x468b,_0x403bec=[],_0x7bc4f=normalizeSqlForStaticAnalysis(_0x390ffc),_0x70c320=(_0x7bc4f[_0x9e17e(0xe2)]?[]:extractJoinFacts(_0x7bc4f[_0x9e17e(0xee)]))[_0x9e17e(0xd8)](_0x25c30a=>{const _0x1cc34b=_0x9e17e;if(_0x25c30a['unsupportedPredicate']||_0x25c30a['columns'][_0x1cc34b(0xd0)]===0x0)return _0x403bec[_0x1cc34b(0xd3)]({'code':_0x1cc34b(0xf2),'table':_0x25c30a['table'],'alias':_0x25c30a[_0x1cc34b(0xd4)],'columns':_0x25c30a[_0x1cc34b(0xc9)],'reason':_0x25c30a[_0x1cc34b(0x105)]??_0x1cc34b(0x10b)}),{'table':_0x25c30a[_0x1cc34b(0xed)],'alias':_0x25c30a[_0x1cc34b(0xd4)],'columns':_0x25c30a[_0x1cc34b(0xc9)],'status':_0x1cc34b(0xeb)};const _0x442fe5=resolveTableMetadata(_0x4d2583,_0x25c30a[_0x1cc34b(0xed)]),_0x29b384=(_0x442fe5?.[_0x1cc34b(0x104)]??[])[_0x1cc34b(0xd8)](_0x9696f1=>({'index':_0x9696f1,'matchedPrefix':findEqualityPrefix(_0x9696f1['columns'],_0x25c30a[_0x1cc34b(0xc9)])}))[_0x1cc34b(0xcb)](_0x2f1d2f=>_0x2f1d2f['matchedPrefix'][_0x1cc34b(0xd0)]>0x0),_0x4c78c8=_0x29b384['reduce']((_0x2ada90,_0x3b6bce)=>!_0x2ada90||_0x3b6bce[_0x1cc34b(0x110)][_0x1cc34b(0xd0)]>_0x2ada90[_0x1cc34b(0x110)][_0x1cc34b(0xd0)]?_0x3b6bce:_0x2ada90,_0x29b384[0x0]);if(_0x4c78c8)return{'table':_0x25c30a[_0x1cc34b(0xed)],'alias':_0x25c30a[_0x1cc34b(0xd4)],'columns':_0x25c30a[_0x1cc34b(0xc9)],'status':_0x1cc34b(0xde),'matchedIndex':{..._0x4c78c8[_0x1cc34b(0xf8)],'matchedPrefix':_0x4c78c8[_0x1cc34b(0x110)]}};const _0x48fb89=_0x442fe5?.['indexes'][_0x1cc34b(0xcb)](_0x5dbb41=>_0x5dbb41[_0x1cc34b(0xc9)][_0x1cc34b(0xd7)](_0x430229=>_0x25c30a[_0x1cc34b(0xc9)][_0x1cc34b(0xd7)](_0x5e5fb6=>columnNamesMatch(_0x430229,_0x5e5fb6))))??[];if(_0x48fb89[_0x1cc34b(0xd0)]>0x0)return _0x403bec['push']({'code':_0x1cc34b(0xf9),'table':_0x25c30a[_0x1cc34b(0xed)],'alias':_0x25c30a[_0x1cc34b(0xd4)],'columns':_0x25c30a[_0x1cc34b(0xc9)],'reason':_0x1cc34b(0x108)}),{'table':_0x25c30a['table'],'alias':_0x25c30a['alias'],'columns':_0x25c30a[_0x1cc34b(0xc9)],'status':_0x1cc34b(0xf4),'candidateIndexes':_0x48fb89};if(_0x442fe5&&_0x442fe5[_0x1cc34b(0xef)]!==![]&&_0x442fe5['indexes']['length']>0x0&&_0x25c30a[_0x1cc34b(0xc9)]['length']>0x0)return _0x403bec[_0x1cc34b(0xd3)]({'code':'JOIN_INDEX_MISSING','table':_0x25c30a[_0x1cc34b(0xed)],'alias':_0x25c30a[_0x1cc34b(0xd4)],'columns':_0x25c30a[_0x1cc34b(0xc9)],'reason':'No\x20reported\x20index\x20contains\x20the\x20JOIN\x20access\x20columns.'}),{'table':_0x25c30a[_0x1cc34b(0xed)],'alias':_0x25c30a[_0x1cc34b(0xd4)],'columns':_0x25c30a['columns'],'status':_0x1cc34b(0xf4)};return _0x403bec['push']({'code':_0x1cc34b(0xfb),'table':_0x25c30a[_0x1cc34b(0xed)],'alias':_0x25c30a[_0x1cc34b(0xd4)],'columns':_0x25c30a[_0x1cc34b(0xc9)],'reason':_0x442fe5?'The\x20dataset\x20returned\x20no\x20distinguishable\x20index\x20metadata.':_0x1cc34b(0x10d)}),{'table':_0x25c30a['table'],'alias':_0x25c30a[_0x1cc34b(0xd4)],'columns':_0x25c30a['columns'],'status':'unavailable'};});return{'checked':_0x70c320[_0x9e17e(0xd0)]>0x0,'joins':_0x70c320,'warnings':_0x403bec};}function extractJoinFacts(_0x326508){const _0x396448=a289_0x468b,_0x12f2f5=maskNestedQueries(stripSqlNoise(_0x326508)),_0x3f3669=maskQuotedIdentifiers(_0x12f2f5),_0xe57fa7=[],_0x533560=new Set(),_0x2ab49f=/\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 _0x41f5eb of _0x12f2f5['matchAll'](_0x2ab49f)){const _0x1458e5=_0x41f5eb[_0x396448(0xf8)]??0x0,_0x21c406=_0x41f5eb[0x0]['search'](/\bJOIN\b/i),_0xf36fe4=_0x1458e5+Math['max'](0x0,_0x21c406);if(!/^JOIN\b/i[_0x396448(0xe1)](_0x3f3669['slice'](_0xf36fe4)))continue;_0x533560[_0x396448(0x109)](_0xf36fe4);const _0x2a889a=normalizeIdentifier(_0x41f5eb[0x1]||'INNER'),_0x72e674=normalizeIdentifier(_0x41f5eb[0x2]??''),_0x37193c=normalizeIdentifier(_0x41f5eb[0x3]||_0x72e674[_0x396448(0xfa)]('.')['at'](-0x1)||_0x72e674),_0x330e91=[],_0x49a42d=_0x72e674===_0x396448(0xe8);let _0x2f9071=_0x2a889a===_0x396448(0xdc)||_0x2a889a===_0x396448(0xe5)||_0x49a42d,_0x5d3d12=_0x2f9071?_0x49a42d?_0x396448(0xcc):_0x2a889a['toUpperCase']()+_0x396448(0xc7):undefined;const _0x5bc63e=stripOuterParentheses(_0x41f5eb[0x4]??''),_0x155260=_0x5bc63e['includes'](MYBATIS_DYNAMIC_START_MARKER)||_0x5bc63e[_0x396448(0xf5)](MYBATIS_DYNAMIC_END_MARKER),_0xf9d466=_0x5bc63e[_0x396448(0xf5)](MYBATIS_INCLUDE_MARKER);_0x155260&&(_0x2f9071=!![],_0x5d3d12??=_0x396448(0x103));_0xf9d466&&(_0x2f9071=!![],_0x5d3d12??=_0x396448(0xd5));const _0x374960=_0x5bc63e[_0x396448(0xe6)](MYBATIS_DYNAMIC_START_MARKER,'\x20')[_0x396448(0xe6)](MYBATIS_DYNAMIC_END_MARKER,'\x20')[_0x396448(0xe6)](MYBATIS_INCLUDE_MARKER,'\x20');hasTopLevelKeyword(_0x374960,'OR')&&(_0x2f9071=!![],_0x5d3d12??=_0x396448(0x10e));for(const _0x2a2982 of splitTopLevelAnd(_0x374960)){const _0x24644c=stripOuterParentheses(_0x2a2982);if(hasTopLevelKeyword(_0x24644c,'OR')){_0x2f9071=!![],_0x5d3d12??=_0x396448(0x10e);continue;}const _0x1b48b0=splitEquality(_0x24644c);if(!_0x1b48b0){containsColumnReference(_0x2a2982,_0x37193c)&&(_0x2f9071=!![]);continue;}const _0x41bf0c=parseDirectColumnReference(_0x1b48b0[0x0],_0x37193c),_0x36e8ff=parseDirectColumnReference(_0x1b48b0[0x1],_0x37193c),_0x13f510=containsColumnReference(_0x1b48b0[0x0],_0x37193c),_0x5636e8=containsColumnReference(_0x1b48b0[0x1],_0x37193c),_0x459024=_0x41bf0c&&!_0x5636e8?_0x41bf0c:_0x36e8ff&&!_0x13f510?_0x36e8ff:null;if(_0x459024&&!_0x330e91[_0x396448(0xf5)](_0x459024))_0x330e91[_0x396448(0xd3)](_0x459024);else!_0x459024&&containsColumnReference(_0x2a2982,_0x37193c)&&(_0x2f9071=!![]);}_0xe57fa7[_0x396448(0xd3)]({'table':_0x72e674,'alias':_0x37193c,'columns':_0x330e91,'unsupportedPredicate':_0x2f9071,'unsupportedReason':_0x5d3d12,'containsUnresolvedInclude':_0xf9d466,'position':_0xf36fe4});}for(const _0x4de30f of _0x3f3669[_0x396448(0xf3)](/\bJOIN\b/gi)){const _0x1c64ed=_0x4de30f[_0x396448(0xf8)]??0x0;if(_0x533560[_0x396448(0xff)](_0x1c64ed))continue;const _0x200c5b=/^\s+([`"\w$.]+)(?:\s+(?:AS\s+)?([`"\w$]+))?/['exec'](_0x12f2f5['slice'](_0x1c64ed+_0x4de30f[0x0][_0x396448(0xd0)])),_0x44248f=normalizeIdentifier(_0x200c5b?.[0x1]||_0x396448(0x101)),_0x24afdf=normalizeIdentifier(_0x200c5b?.[0x2]||''),_0xc30c8b=isSqlClauseKeyword(_0x24afdf)?_0x44248f['split']('.')['at'](-0x1)||_0x44248f:_0x24afdf||_0x44248f[_0x396448(0xfa)]('.')['at'](-0x1)||_0x44248f;_0xe57fa7['push']({'table':_0x44248f,'alias':_0xc30c8b,'columns':[],'unsupportedPredicate':!![],'unsupportedReason':'Only\x20explicit\x20table\x20JOIN\x20clauses\x20with\x20an\x20ON\x20predicate\x20are\x20supported.','position':_0x1c64ed});}const _0x5ce0c6=_0x3f3669[_0x396448(0xf1)](MYBATIS_INCLUDE_MARKER);return _0x5ce0c6>=0x0&&!_0xe57fa7['some'](_0x5ad496=>_0x5ad496[_0x396448(0xec)])&&_0xe57fa7['push']({'table':_0x396448(0x101),'alias':'unknown','columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x396448(0xe9),'containsUnresolvedInclude':!![],'position':_0x5ce0c6}),_0xe57fa7[_0x396448(0xfc)]((_0x91cb53,_0x12d194)=>_0x91cb53[_0x396448(0xdb)]-_0x12d194[_0x396448(0xdb)]);}function stripSqlNoise(_0x3afd56){const _0x4b7cc1=a289_0x468b,_0x5a27bc=Array[_0x4b7cc1(0xfd)](_0x3afd56),_0x54de5b=(_0x21c4ca,_0x20d675)=>{for(let _0x2ed689=_0x21c4ca;_0x2ed689<_0x20d675;_0x2ed689+=0x1){_0x5a27bc[_0x2ed689]!=='\x0a'&&_0x5a27bc[_0x2ed689]!=='\x0d'&&(_0x5a27bc[_0x2ed689]='\x20');}};for(let _0x1852d5=0x0;_0x1852d5<_0x5a27bc[_0x4b7cc1(0xd0)];_0x1852d5+=0x1){const _0x34062f=_0x5a27bc[_0x1852d5],_0x199283=_0x5a27bc[_0x1852d5+0x1];if(_0x34062f==='\x27'||_0x34062f==='\x22'||_0x34062f==='`'){const _0x4e6638=_0x34062f,_0x2b2299=_0x1852d5;_0x1852d5+=0x1;while(_0x1852d5<_0x5a27bc['length']){if(_0x5a27bc[_0x1852d5]==='\x5c'&&_0x1852d5+0x1<_0x5a27bc[_0x4b7cc1(0xd0)]){_0x1852d5+=0x2;continue;}if(_0x5a27bc[_0x1852d5]!==_0x4e6638){_0x1852d5+=0x1;continue;}if(_0x5a27bc[_0x1852d5+0x1]===_0x4e6638){_0x1852d5+=0x2;continue;}break;}if(_0x4e6638==='\x27')_0x54de5b(_0x2b2299,Math[_0x4b7cc1(0xcf)](_0x1852d5+0x1,_0x5a27bc[_0x4b7cc1(0xd0)]));continue;}if(_0x34062f==='-'&&_0x199283==='-'){const _0x1be631=_0x1852d5;while(_0x1852d5<_0x5a27bc[_0x4b7cc1(0xd0)]&&_0x5a27bc[_0x1852d5]!=='\x0a')_0x1852d5+=0x1;_0x54de5b(_0x1be631,_0x1852d5);continue;}if(_0x34062f==='/'&&_0x199283==='*'){const _0x13e6ea=_0x1852d5;_0x1852d5+=0x2;while(_0x1852d5<_0x5a27bc['length']&&!(_0x5a27bc[_0x1852d5]==='*'&&_0x5a27bc[_0x1852d5+0x1]==='/')){_0x1852d5+=0x1;}_0x1852d5=Math[_0x4b7cc1(0xcf)](_0x1852d5+0x1,_0x5a27bc[_0x4b7cc1(0xd0)]-0x1),_0x54de5b(_0x13e6ea,_0x1852d5+0x1);continue;}if(_0x34062f==='#'&&_0x199283!=='{'){const _0x5e6a71=_0x1852d5;while(_0x1852d5<_0x5a27bc['length']&&_0x5a27bc[_0x1852d5]!=='\x0a')_0x1852d5+=0x1;_0x54de5b(_0x5e6a71,_0x1852d5);continue;}if((_0x34062f==='#'||_0x34062f==='$')&&_0x199283==='{'){const _0x227382=_0x1852d5;_0x1852d5+=0x2;while(_0x1852d5<_0x5a27bc['length']&&_0x5a27bc[_0x1852d5]!=='}')_0x1852d5+=0x1;_0x54de5b(_0x227382,Math[_0x4b7cc1(0xcf)](_0x1852d5+0x1,_0x5a27bc[_0x4b7cc1(0xd0)]));}}return _0x5a27bc['join']('');}function maskQuotedIdentifiers(_0x365518){const _0x41834d=a289_0x468b,_0x1c4f88=Array[_0x41834d(0xfd)](_0x365518);for(let _0x2ae777=0x0;_0x2ae777<_0x1c4f88[_0x41834d(0xd0)];_0x2ae777+=0x1){const _0x5057c5=_0x1c4f88[_0x2ae777];if(_0x5057c5!=='\x22'&&_0x5057c5!=='`')continue;_0x2ae777+=0x1;while(_0x2ae777<_0x1c4f88['length']){if(_0x1c4f88[_0x2ae777]===_0x5057c5){if(_0x1c4f88[_0x2ae777+0x1]===_0x5057c5){_0x1c4f88[_0x2ae777]='\x20',_0x1c4f88[_0x2ae777+0x1]='\x20',_0x2ae777+=0x2;continue;}break;}_0x1c4f88[_0x2ae777]='\x20',_0x2ae777+=0x1;}}return _0x1c4f88[_0x41834d(0xf7)]('');}function maskNestedQueries(_0x220449){const _0x5ee8c8=a289_0x468b,_0xaf21d2=Array[_0x5ee8c8(0xfd)](_0x220449);for(let _0x415043=0x0;_0x415043<_0xaf21d2[_0x5ee8c8(0xd0)];_0x415043+=0x1){if(_0xaf21d2[_0x415043]!=='(')continue;const _0x3818b4=_0x220449[_0x5ee8c8(0xca)](_0x415043+0x1);if(!/^\s*(?:SELECT|WITH)\b/i[_0x5ee8c8(0xe1)](_0x3818b4))continue;let _0x4ad856=0x1,_0x382b1c=_0x415043+0x1;for(;_0x382b1c<_0xaf21d2[_0x5ee8c8(0xd0)]&&_0x4ad856>0x0;_0x382b1c+=0x1){if(_0xaf21d2[_0x382b1c]==='(')_0x4ad856+=0x1;if(_0xaf21d2[_0x382b1c]===')')_0x4ad856-=0x1;}if(_0x4ad856!==0x0)continue;for(let _0x595ed5=_0x415043;_0x595ed5<_0x382b1c;_0x595ed5+=0x1){_0xaf21d2[_0x595ed5]='\x20';}const _0x1cee27=_0x5ee8c8(0xe8);for(let _0x4a833a=0x0;_0x4a833a<_0x1cee27[_0x5ee8c8(0xd0)]&&_0x415043+_0x4a833a<_0x382b1c;_0x4a833a+=0x1){_0xaf21d2[_0x415043+_0x4a833a]=_0x1cee27[_0x4a833a];}_0x415043=_0x382b1c-0x1;}return _0xaf21d2[_0x5ee8c8(0xf7)]('');}function a289_0x4a61(){const _0x5c101d=['min','length','toLowerCase','68530LOdEgi','push','alias','MyBatis\x20<include>\x20JOIN\x20fragments\x20cannot\x20be\x20expanded\x20statically.','1149771eUUcWh','some','map','36441UnlsfY','where','position','right','2776jpCLaN','covered','trim','cross','test','error','19000eBsAVW','max','full','replaceAll','replace','__sq__','MyBatis\x20<include>\x20fragments\x20cannot\x20be\x20expanded\x20for\x20JOIN\x20auditing.','(?:^|[^\x5cw$])','unavailable','containsUnresolvedInclude','table','sql','metadataAvailable','410wFmvIP','indexOf','JOIN_PREDICATE_UNSUPPORTED','matchAll','warning','includes','left','join','index','JOIN_INDEX_NOT_USABLE','split','INDEX_METADATA_UNAVAILABLE','sort','from','359223zYAJfv','has','natural','unknown','2528856PwnVYs','MyBatis\x20dynamic\x20JOIN\x20predicates\x20cannot\x20be\x20audited\x20deterministically.','indexes','unsupportedReason','718302gtpmDs','\x5cs*\x5c.\x5cs*[\x5cw$]+','Relevant\x20columns\x20do\x20not\x20form\x20a\x20complete\x20leftmost\x20index\x20prefix.','add','exec','Not\x20every\x20JOIN\x20target\x20predicate\x20could\x20be\x20audited\x20safely.','\x5c$&','No\x20dataset\x20metadata\x20matched\x20the\x20JOIN\x20table.','OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.','tableName','matchedPrefix','\x20JOIN\x20direction\x20is\x20not\x20supported\x20by\x20static\x20index\x20auditing.','inner','columns','slice','filter','Derived-table\x20JOIN\x20targets\x20are\x20not\x20supported.','toUpperCase','endsWith'];a289_0x4a61=function(){return _0x5c101d;};return a289_0x4a61();}function splitTopLevelAnd(_0x880013){const _0x1033db=a289_0x468b,_0x40645b=[];let _0x5876bf=0x0,_0x5cba2b=0x0;for(let _0x156b07=0x0;_0x156b07<_0x880013[_0x1033db(0xd0)];_0x156b07+=0x1){const _0x5c5508=_0x880013[_0x156b07];if(_0x5c5508==='(')_0x5876bf+=0x1;if(_0x5c5508===')')_0x5876bf=Math['max'](0x0,_0x5876bf-0x1);_0x5876bf===0x0&&_0x880013[_0x1033db(0xca)](_0x156b07)['match'](/^AND\b/i)&&(_0x156b07===0x0||/\s/['test'](_0x880013[_0x156b07-0x1]??''))&&(_0x40645b[_0x1033db(0xd3)](_0x880013['slice'](_0x5cba2b,_0x156b07)[_0x1033db(0xdf)]()),_0x156b07+=0x2,_0x5cba2b=_0x156b07+0x1);}const _0x223d13=_0x880013[_0x1033db(0xca)](_0x5cba2b)['trim']();if(_0x223d13)_0x40645b[_0x1033db(0xd3)](_0x223d13);return _0x40645b;}function hasTopLevelKeyword(_0x32960f,_0x3fd956){const _0x4903c7=a289_0x468b;let _0x32d006=0x0;for(let _0x49c5ac=0x0;_0x49c5ac<_0x32960f[_0x4903c7(0xd0)];_0x49c5ac+=0x1){const _0x589ef0=_0x32960f[_0x49c5ac];if(_0x589ef0==='(')_0x32d006+=0x1;if(_0x589ef0===')')_0x32d006=Math[_0x4903c7(0xe4)](0x0,_0x32d006-0x1);if(_0x32d006!==0x0)continue;const _0x589e13=_0x32960f[_0x4903c7(0xca)](_0x49c5ac,_0x49c5ac+_0x3fd956['length']),_0x19a220=_0x32960f[_0x49c5ac-0x1]??'\x20',_0x487ed8=_0x32960f[_0x49c5ac+_0x3fd956['length']]??'\x20';if(_0x589e13[_0x4903c7(0xcd)]()===_0x3fd956[_0x4903c7(0xcd)]()&&!/[\w$]/[_0x4903c7(0xe1)](_0x19a220)&&!/[\w$]/[_0x4903c7(0xe1)](_0x487ed8))return!![];}return![];}function splitEquality(_0x344fe4){const _0x4eab2e=a289_0x468b,_0x891963=stripOuterParentheses(_0x344fe4);let _0x35963b=0x0,_0x544b6b;for(let _0x1fe6d9=0x0;_0x1fe6d9<_0x891963[_0x4eab2e(0xd0)];_0x1fe6d9+=0x1){const _0x5df85a=_0x891963[_0x1fe6d9];if(_0x5df85a==='(')_0x35963b+=0x1;if(_0x5df85a===')')_0x35963b=Math[_0x4eab2e(0xe4)](0x0,_0x35963b-0x1);const _0x4b43de=_0x891963[_0x1fe6d9-0x1]??'',_0x1e04d3=_0x891963[_0x1fe6d9+0x1]??'';if(_0x5df85a==='='&&_0x35963b===0x0&&!/[!<>=:]/[_0x4eab2e(0xe1)](_0x4b43de)&&_0x1e04d3!=='='){if(_0x544b6b!==undefined)return null;_0x544b6b=_0x1fe6d9;}}return _0x544b6b===undefined?null:[_0x891963['slice'](0x0,_0x544b6b)[_0x4eab2e(0xdf)](),_0x891963[_0x4eab2e(0xca)](_0x544b6b+0x1)[_0x4eab2e(0xdf)]()];}function parseDirectColumnReference(_0x7d65cd,_0x33b103){const _0xeea628=a289_0x468b,_0x3a15ca=/^([`"]?[\w$]+[`"]?)\s*\.\s*([`"]?[\w$]+[`"]?)$/[_0xeea628(0x10a)](stripOuterParentheses(_0x7d65cd));if(!_0x3a15ca)return null;if(normalizeIdentifier(_0x3a15ca[0x1]??'')!==normalizeIdentifier(_0x33b103))return null;return normalizeIdentifier(_0x3a15ca[0x2]??'');}function containsColumnReference(_0x5d9df5,_0x2d451e){const _0x1af310=a289_0x468b,_0x3ae670=_0x5d9df5[_0x1af310(0xe7)](/[`"]/g,''),_0x3b083a=_0x2d451e[_0x1af310(0xe7)](/[.*+?^${}()|[\]\\]/g,_0x1af310(0x10c));return new RegExp(_0x1af310(0xea)+_0x3b083a+_0x1af310(0x107),'i')[_0x1af310(0xe1)](_0x3ae670);}function findEqualityPrefix(_0x49a02f,_0x4a0a9b){const _0x20c867=new Set(_0x4a0a9b['map'](normalizeIdentifier)),_0xce6f0=[];for(const _0x48b2e9 of _0x49a02f){if(!_0x20c867['has'](normalizeIdentifier(_0x48b2e9)))break;_0xce6f0['push'](_0x48b2e9);}return _0xce6f0;}function resolveTableMetadata(_0x32939c,_0x4256d8){const _0x385214=a289_0x468b,_0x3c7505=normalizeIdentifier(_0x4256d8),_0xf6dc0e=_0x32939c['filter'](_0x3cd3af=>normalizeIdentifier(_0x3cd3af[_0x385214(0x10f)])===_0x3c7505);if(_0xf6dc0e[_0x385214(0xd0)]===0x1)return _0xf6dc0e[0x0];const _0x29da74=_0x3c7505[_0x385214(0xf5)]('.'),_0x409efb=_0x3c7505[_0x385214(0xfa)]('.')['at'](-0x1),_0x3e25d7=_0x32939c[_0x385214(0xcb)](_0x1f011b=>{const _0x3e1db5=_0x385214,_0x456978=normalizeIdentifier(_0x1f011b[_0x3e1db5(0x10f)]);if(_0x29da74&&_0x456978['includes']('.'))return![];return _0x456978[_0x3e1db5(0xfa)]('.')['at'](-0x1)===_0x409efb;});return _0x3e25d7[_0x385214(0xd0)]===0x1?_0x3e25d7[0x0]:undefined;}function columnNamesMatch(_0x40adaf,_0x47f27b){return normalizeIdentifier(_0x40adaf)===normalizeIdentifier(_0x47f27b);}function normalizeIdentifier(_0x4d3aea){const _0x4697b8=a289_0x468b;return _0x4d3aea[_0x4697b8(0xe7)](/[`"]/g,'')[_0x4697b8(0xdf)]()[_0x4697b8(0xd1)]();}function isSqlClauseKeyword(_0x2f1ef7){const _0x2cd4e2=a289_0x468b;return new Set(['on','using',_0x2cd4e2(0xda),_0x2cd4e2(0xf7),_0x2cd4e2(0xc8),_0x2cd4e2(0xf6),_0x2cd4e2(0xdc),_0x2cd4e2(0xe5),_0x2cd4e2(0xe0),_0x2cd4e2(0x100)])[_0x2cd4e2(0xff)](_0x2f1ef7);}function stripOuterParentheses(_0x387440){const _0x12b830=a289_0x468b;let _0x12ee9d=_0x387440['trim']();while(_0x12ee9d['startsWith']('(')&&_0x12ee9d[_0x12b830(0xce)](')')){let _0x692cb=0x0,_0x176c75=!![];for(let _0x55ef67=0x0;_0x55ef67<_0x12ee9d['length'];_0x55ef67+=0x1){if(_0x12ee9d[_0x55ef67]==='(')_0x692cb+=0x1;if(_0x12ee9d[_0x55ef67]===')')_0x692cb-=0x1;if(_0x692cb===0x0&&_0x55ef67<_0x12ee9d[_0x12b830(0xd0)]-0x1){_0x176c75=![];break;}}if(!_0x176c75||_0x692cb!==0x0)break;_0x12ee9d=_0x12ee9d[_0x12b830(0xca)](0x1,-0x1)['trim']();}return _0x12ee9d;}
|
|
1
|
+
(function(_0x5aa182,_0x108e20){const _0x47a620=a290_0x2f96,_0x3b4d68=_0x5aa182();while(!![]){try{const _0x3aecb1=parseInt(_0x47a620(0x170))/0x1*(-parseInt(_0x47a620(0x17e))/0x2)+parseInt(_0x47a620(0x17d))/0x3*(-parseInt(_0x47a620(0x17f))/0x4)+-parseInt(_0x47a620(0x176))/0x5*(-parseInt(_0x47a620(0x183))/0x6)+-parseInt(_0x47a620(0x1a7))/0x7*(-parseInt(_0x47a620(0x1af))/0x8)+parseInt(_0x47a620(0x191))/0x9*(-parseInt(_0x47a620(0x175))/0xa)+-parseInt(_0x47a620(0x19f))/0xb+parseInt(_0x47a620(0x1a9))/0xc;if(_0x3aecb1===_0x108e20)break;else _0x3b4d68['push'](_0x3b4d68['shift']());}catch(_0x2bc0c8){_0x3b4d68['push'](_0x3b4d68['shift']());}}}(a290_0x366c,0x72ede));import{MYBATIS_DYNAMIC_END_MARKER,MYBATIS_DYNAMIC_START_MARKER,MYBATIS_INCLUDE_MARKER,normalizeSqlForStaticAnalysis}from'./sql-validator.js';function a290_0x2f96(_0x52632b,_0x3f7752){_0x52632b=_0x52632b-0x16b;const _0x366cdb=a290_0x366c();let _0x2f964e=_0x366cdb[_0x52632b];return _0x2f964e;}export function auditSqlJoinIndexes(_0x569cfb,_0x30566f){const _0x2ec051=a290_0x2f96,_0x56a98b=[],_0x3e26da=normalizeSqlForStaticAnalysis(_0x569cfb),_0x32232b=(_0x3e26da[_0x2ec051(0x16b)]?[]:extractJoinFacts(_0x3e26da[_0x2ec051(0x1a2)]))[_0x2ec051(0x17b)](_0x32965b=>{const _0x15cb67=_0x2ec051;if(_0x32965b[_0x15cb67(0x1b0)]||_0x32965b[_0x15cb67(0x19d)]['length']===0x0)return _0x56a98b[_0x15cb67(0x17a)]({'code':_0x15cb67(0x186),'table':_0x32965b['table'],'alias':_0x32965b['alias'],'columns':_0x32965b[_0x15cb67(0x19d)],'reason':_0x32965b[_0x15cb67(0x198)]??_0x15cb67(0x1b4)}),{'table':_0x32965b[_0x15cb67(0x189)],'alias':_0x32965b[_0x15cb67(0x199)],'columns':_0x32965b[_0x15cb67(0x19d)],'status':'unavailable'};const _0x2ff419=resolveTableMetadata(_0x30566f,_0x32965b['table']),_0xa82696=(_0x2ff419?.['indexes']??[])['map'](_0x3dcb5e=>({'index':_0x3dcb5e,'matchedPrefix':findEqualityPrefix(_0x3dcb5e[_0x15cb67(0x19d)],_0x32965b[_0x15cb67(0x19d)])}))[_0x15cb67(0x1a6)](_0x5f5aa3=>_0x5f5aa3[_0x15cb67(0x192)][_0x15cb67(0x173)]>0x0),_0x584d0e=_0xa82696[_0x15cb67(0x1aa)]((_0x4a2d76,_0x31ef74)=>!_0x4a2d76||_0x31ef74[_0x15cb67(0x192)][_0x15cb67(0x173)]>_0x4a2d76[_0x15cb67(0x192)][_0x15cb67(0x173)]?_0x31ef74:_0x4a2d76,_0xa82696[0x0]);if(_0x584d0e)return{'table':_0x32965b[_0x15cb67(0x189)],'alias':_0x32965b['alias'],'columns':_0x32965b[_0x15cb67(0x19d)],'status':_0x15cb67(0x1a8),'matchedIndex':{..._0x584d0e['index'],'matchedPrefix':_0x584d0e[_0x15cb67(0x192)]}};const _0x29af63=_0x2ff419?.['indexes'][_0x15cb67(0x1a6)](_0xbb19bd=>_0xbb19bd[_0x15cb67(0x19d)]['some'](_0x2acc76=>_0x32965b[_0x15cb67(0x19d)][_0x15cb67(0x1a5)](_0x2aa99a=>columnNamesMatch(_0x2acc76,_0x2aa99a))))??[];if(_0x29af63['length']>0x0)return _0x56a98b['push']({'code':'JOIN_INDEX_NOT_USABLE','table':_0x32965b[_0x15cb67(0x189)],'alias':_0x32965b[_0x15cb67(0x199)],'columns':_0x32965b[_0x15cb67(0x19d)],'reason':'Relevant\x20columns\x20do\x20not\x20form\x20a\x20complete\x20leftmost\x20index\x20prefix.'}),{'table':_0x32965b[_0x15cb67(0x189)],'alias':_0x32965b[_0x15cb67(0x199)],'columns':_0x32965b['columns'],'status':_0x15cb67(0x18b),'candidateIndexes':_0x29af63};if(_0x2ff419&&_0x2ff419[_0x15cb67(0x18a)]!==![]&&_0x2ff419[_0x15cb67(0x1ad)][_0x15cb67(0x173)]>0x0&&_0x32965b[_0x15cb67(0x19d)]['length']>0x0)return _0x56a98b[_0x15cb67(0x17a)]({'code':_0x15cb67(0x178),'table':_0x32965b[_0x15cb67(0x189)],'alias':_0x32965b[_0x15cb67(0x199)],'columns':_0x32965b[_0x15cb67(0x19d)],'reason':_0x15cb67(0x19b)}),{'table':_0x32965b[_0x15cb67(0x189)],'alias':_0x32965b[_0x15cb67(0x199)],'columns':_0x32965b['columns'],'status':_0x15cb67(0x18b)};return _0x56a98b['push']({'code':_0x15cb67(0x174),'table':_0x32965b[_0x15cb67(0x189)],'alias':_0x32965b[_0x15cb67(0x199)],'columns':_0x32965b['columns'],'reason':_0x2ff419?_0x15cb67(0x1a1):'No\x20dataset\x20metadata\x20matched\x20the\x20JOIN\x20table.'}),{'table':_0x32965b['table'],'alias':_0x32965b[_0x15cb67(0x199)],'columns':_0x32965b[_0x15cb67(0x19d)],'status':'unavailable'};});return{'checked':_0x32232b[_0x2ec051(0x173)]>0x0,'joins':_0x32232b,'warnings':_0x56a98b};}function extractJoinFacts(_0x5c9893){const _0x46d765=a290_0x2f96,_0x5b5582=maskNestedQueries(stripSqlNoise(_0x5c9893)),_0x29ed91=maskQuotedIdentifiers(_0x5b5582),_0x10175a=[],_0x82270a=new Set(),_0x1d2a52=/\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 _0x11184 of _0x5b5582[_0x46d765(0x1ae)](_0x1d2a52)){const _0x140852=_0x11184[_0x46d765(0x185)]??0x0,_0x2aab34=_0x11184[0x0][_0x46d765(0x195)](/\bJOIN\b/i),_0xfe1c7a=_0x140852+Math[_0x46d765(0x1a0)](0x0,_0x2aab34);if(!/^JOIN\b/i[_0x46d765(0x19c)](_0x29ed91[_0x46d765(0x18e)](_0xfe1c7a)))continue;_0x82270a['add'](_0xfe1c7a);const _0x40b5b8=normalizeIdentifier(_0x11184[0x1]||_0x46d765(0x1ac)),_0x25287a=normalizeIdentifier(_0x11184[0x2]??''),_0x1c165b=normalizeIdentifier(_0x11184[0x3]||_0x25287a[_0x46d765(0x17c)]('.')['at'](-0x1)||_0x25287a),_0x119032=[],_0x4b17d6=_0x25287a===_0x46d765(0x19a);let _0x55982c=_0x40b5b8===_0x46d765(0x184)||_0x40b5b8===_0x46d765(0x1a4)||_0x4b17d6,_0x46d3e3=_0x55982c?_0x4b17d6?_0x46d765(0x172):_0x40b5b8[_0x46d765(0x197)]()+_0x46d765(0x16f):undefined;const _0xd3b6fb=stripOuterParentheses(_0x11184[0x4]??''),_0x2d8285=_0xd3b6fb[_0x46d765(0x180)](MYBATIS_DYNAMIC_START_MARKER)||_0xd3b6fb[_0x46d765(0x180)](MYBATIS_DYNAMIC_END_MARKER),_0xb25398=_0xd3b6fb[_0x46d765(0x180)](MYBATIS_INCLUDE_MARKER);_0x2d8285&&(_0x55982c=!![],_0x46d3e3??='MyBatis\x20dynamic\x20JOIN\x20predicates\x20cannot\x20be\x20audited\x20deterministically.');_0xb25398&&(_0x55982c=!![],_0x46d3e3??=_0x46d765(0x18d));const _0x24b750=_0xd3b6fb['replaceAll'](MYBATIS_DYNAMIC_START_MARKER,'\x20')['replaceAll'](MYBATIS_DYNAMIC_END_MARKER,'\x20')[_0x46d765(0x1b1)](MYBATIS_INCLUDE_MARKER,'\x20');hasTopLevelKeyword(_0x24b750,'OR')&&(_0x55982c=!![],_0x46d3e3??=_0x46d765(0x16e));for(const _0x298d76 of splitTopLevelAnd(_0x24b750)){const _0x425475=stripOuterParentheses(_0x298d76);if(hasTopLevelKeyword(_0x425475,'OR')){_0x55982c=!![],_0x46d3e3??=_0x46d765(0x16e);continue;}const _0x1fc730=splitEquality(_0x425475);if(!_0x1fc730){containsColumnReference(_0x298d76,_0x1c165b)&&(_0x55982c=!![]);continue;}const _0x12875b=parseDirectColumnReference(_0x1fc730[0x0],_0x1c165b),_0x2fa7fc=parseDirectColumnReference(_0x1fc730[0x1],_0x1c165b),_0x1c61c7=containsColumnReference(_0x1fc730[0x0],_0x1c165b),_0x32776f=containsColumnReference(_0x1fc730[0x1],_0x1c165b),_0x43dc25=_0x12875b&&!_0x32776f?_0x12875b:_0x2fa7fc&&!_0x1c61c7?_0x2fa7fc:null;if(_0x43dc25&&!_0x119032[_0x46d765(0x180)](_0x43dc25))_0x119032[_0x46d765(0x17a)](_0x43dc25);else!_0x43dc25&&containsColumnReference(_0x298d76,_0x1c165b)&&(_0x55982c=!![]);}_0x10175a[_0x46d765(0x17a)]({'table':_0x25287a,'alias':_0x1c165b,'columns':_0x119032,'unsupportedPredicate':_0x55982c,'unsupportedReason':_0x46d3e3,'containsUnresolvedInclude':_0xb25398,'position':_0xfe1c7a});}for(const _0x2124f5 of _0x29ed91[_0x46d765(0x1ae)](/\bJOIN\b/gi)){const _0x3ad8b8=_0x2124f5['index']??0x0;if(_0x82270a['has'](_0x3ad8b8))continue;const _0x56e6c4=/^\s+([`"\w$.]+)(?:\s+(?:AS\s+)?([`"\w$]+))?/[_0x46d765(0x196)](_0x5b5582[_0x46d765(0x18e)](_0x3ad8b8+_0x2124f5[0x0][_0x46d765(0x173)])),_0x26ec81=normalizeIdentifier(_0x56e6c4?.[0x1]||'unknown'),_0x4b54e8=normalizeIdentifier(_0x56e6c4?.[0x2]||''),_0x4651a2=isSqlClauseKeyword(_0x4b54e8)?_0x26ec81[_0x46d765(0x17c)]('.')['at'](-0x1)||_0x26ec81:_0x4b54e8||_0x26ec81[_0x46d765(0x17c)]('.')['at'](-0x1)||_0x26ec81;_0x10175a[_0x46d765(0x17a)]({'table':_0x26ec81,'alias':_0x4651a2,'columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x46d765(0x18f),'position':_0x3ad8b8});}const _0x20d9ff=_0x29ed91[_0x46d765(0x1b2)](MYBATIS_INCLUDE_MARKER);return _0x20d9ff>=0x0&&!_0x10175a[_0x46d765(0x1a5)](_0x3e0f1b=>_0x3e0f1b[_0x46d765(0x187)])&&_0x10175a['push']({'table':'unknown','alias':'unknown','columns':[],'unsupportedPredicate':!![],'unsupportedReason':_0x46d765(0x1ab),'containsUnresolvedInclude':!![],'position':_0x20d9ff}),_0x10175a[_0x46d765(0x182)]((_0x1b239f,_0x2c3de5)=>_0x1b239f[_0x46d765(0x1a3)]-_0x2c3de5[_0x46d765(0x1a3)]);}function stripSqlNoise(_0xbcc809){const _0x350de6=a290_0x2f96,_0x62c008=Array[_0x350de6(0x1b5)](_0xbcc809),_0x44d709=(_0x32cc8f,_0x1d4841)=>{for(let _0x5491fa=_0x32cc8f;_0x5491fa<_0x1d4841;_0x5491fa+=0x1){_0x62c008[_0x5491fa]!=='\x0a'&&_0x62c008[_0x5491fa]!=='\x0d'&&(_0x62c008[_0x5491fa]='\x20');}};for(let _0x343c98=0x0;_0x343c98<_0x62c008[_0x350de6(0x173)];_0x343c98+=0x1){const _0x4bf03=_0x62c008[_0x343c98],_0xadc798=_0x62c008[_0x343c98+0x1];if(_0x4bf03==='\x27'||_0x4bf03==='\x22'||_0x4bf03==='`'){const _0x5ddb91=_0x4bf03,_0x26a854=_0x343c98;_0x343c98+=0x1;while(_0x343c98<_0x62c008['length']){if(_0x62c008[_0x343c98]==='\x5c'&&_0x343c98+0x1<_0x62c008[_0x350de6(0x173)]){_0x343c98+=0x2;continue;}if(_0x62c008[_0x343c98]!==_0x5ddb91){_0x343c98+=0x1;continue;}if(_0x62c008[_0x343c98+0x1]===_0x5ddb91){_0x343c98+=0x2;continue;}break;}if(_0x5ddb91==='\x27')_0x44d709(_0x26a854,Math['min'](_0x343c98+0x1,_0x62c008['length']));continue;}if(_0x4bf03==='-'&&_0xadc798==='-'){const _0x3a998d=_0x343c98;while(_0x343c98<_0x62c008['length']&&_0x62c008[_0x343c98]!=='\x0a')_0x343c98+=0x1;_0x44d709(_0x3a998d,_0x343c98);continue;}if(_0x4bf03==='/'&&_0xadc798==='*'){const _0x40c5a4=_0x343c98;_0x343c98+=0x2;while(_0x343c98<_0x62c008[_0x350de6(0x173)]&&!(_0x62c008[_0x343c98]==='*'&&_0x62c008[_0x343c98+0x1]==='/')){_0x343c98+=0x1;}_0x343c98=Math[_0x350de6(0x194)](_0x343c98+0x1,_0x62c008[_0x350de6(0x173)]-0x1),_0x44d709(_0x40c5a4,_0x343c98+0x1);continue;}if(_0x4bf03==='#'&&_0xadc798!=='{'){const _0x2fe37c=_0x343c98;while(_0x343c98<_0x62c008['length']&&_0x62c008[_0x343c98]!=='\x0a')_0x343c98+=0x1;_0x44d709(_0x2fe37c,_0x343c98);continue;}if((_0x4bf03==='#'||_0x4bf03==='$')&&_0xadc798==='{'){const _0x2b84c4=_0x343c98;_0x343c98+=0x2;while(_0x343c98<_0x62c008[_0x350de6(0x173)]&&_0x62c008[_0x343c98]!=='}')_0x343c98+=0x1;_0x44d709(_0x2b84c4,Math['min'](_0x343c98+0x1,_0x62c008[_0x350de6(0x173)]));}}return _0x62c008[_0x350de6(0x177)]('');}function maskQuotedIdentifiers(_0x56adfa){const _0x2ad0fe=a290_0x2f96,_0x38c193=Array['from'](_0x56adfa);for(let _0x256e8e=0x0;_0x256e8e<_0x38c193[_0x2ad0fe(0x173)];_0x256e8e+=0x1){const _0x49bea2=_0x38c193[_0x256e8e];if(_0x49bea2!=='\x22'&&_0x49bea2!=='`')continue;_0x256e8e+=0x1;while(_0x256e8e<_0x38c193[_0x2ad0fe(0x173)]){if(_0x38c193[_0x256e8e]===_0x49bea2){if(_0x38c193[_0x256e8e+0x1]===_0x49bea2){_0x38c193[_0x256e8e]='\x20',_0x38c193[_0x256e8e+0x1]='\x20',_0x256e8e+=0x2;continue;}break;}_0x38c193[_0x256e8e]='\x20',_0x256e8e+=0x1;}}return _0x38c193[_0x2ad0fe(0x177)]('');}function maskNestedQueries(_0x3543c2){const _0x33d346=a290_0x2f96,_0x584318=Array[_0x33d346(0x1b5)](_0x3543c2);for(let _0x58a8d9=0x0;_0x58a8d9<_0x584318[_0x33d346(0x173)];_0x58a8d9+=0x1){if(_0x584318[_0x58a8d9]!=='(')continue;const _0xee821d=_0x3543c2[_0x33d346(0x18e)](_0x58a8d9+0x1);if(!/^\s*(?:SELECT|WITH)\b/i[_0x33d346(0x19c)](_0xee821d))continue;let _0x2244b8=0x1,_0xbd2c74=_0x58a8d9+0x1;for(;_0xbd2c74<_0x584318[_0x33d346(0x173)]&&_0x2244b8>0x0;_0xbd2c74+=0x1){if(_0x584318[_0xbd2c74]==='(')_0x2244b8+=0x1;if(_0x584318[_0xbd2c74]===')')_0x2244b8-=0x1;}if(_0x2244b8!==0x0)continue;for(let _0x40c698=_0x58a8d9;_0x40c698<_0xbd2c74;_0x40c698+=0x1){_0x584318[_0x40c698]='\x20';}const _0x5cdefa=_0x33d346(0x19a);for(let _0x3e6a59=0x0;_0x3e6a59<_0x5cdefa[_0x33d346(0x173)]&&_0x58a8d9+_0x3e6a59<_0xbd2c74;_0x3e6a59+=0x1){_0x584318[_0x58a8d9+_0x3e6a59]=_0x5cdefa[_0x3e6a59];}_0x58a8d9=_0xbd2c74-0x1;}return _0x584318[_0x33d346(0x177)]('');}function a290_0x366c(){const _0xe4049b=['8312722zpTyCI','max','The\x20dataset\x20returned\x20no\x20distinguishable\x20index\x20metadata.','sql','position','full','some','filter','23576wnqMzj','covered','28925604vbzkiQ','reduce','MyBatis\x20<include>\x20fragments\x20cannot\x20be\x20expanded\x20for\x20JOIN\x20auditing.','INNER','indexes','matchAll','128Xvgeoh','unsupportedPredicate','replaceAll','indexOf','natural','Not\x20every\x20JOIN\x20target\x20predicate\x20could\x20be\x20audited\x20safely.','from','inner','error','match','cross','OR-connected\x20JOIN\x20predicates\x20are\x20not\x20supported.','\x20JOIN\x20direction\x20is\x20not\x20supported\x20by\x20static\x20index\x20auditing.','15687SYZVZy','endsWith','Derived-table\x20JOIN\x20targets\x20are\x20not\x20supported.','length','INDEX_METADATA_UNAVAILABLE','10WxdRPv','11740UUCgSi','join','JOIN_INDEX_MISSING','where','push','map','split','3kowHSe','74WYcNdw','3313736ktAUBy','includes','trim','sort','1032pWSuZN','right','index','JOIN_PREDICATE_UNSUPPORTED','containsUnresolvedInclude','has','table','metadataAvailable','warning','replace','MyBatis\x20<include>\x20JOIN\x20fragments\x20cannot\x20be\x20expanded\x20statically.','slice','Only\x20explicit\x20table\x20JOIN\x20clauses\x20with\x20an\x20ON\x20predicate\x20are\x20supported.','using','2096154yTDcYX','matchedPrefix','\x5c$&','min','search','exec','toUpperCase','unsupportedReason','alias','__sq__','No\x20reported\x20index\x20contains\x20the\x20JOIN\x20access\x20columns.','test','columns','\x5cs*\x5c.\x5cs*[\x5cw$]+'];a290_0x366c=function(){return _0xe4049b;};return a290_0x366c();}function splitTopLevelAnd(_0x25ff97){const _0x589d8c=a290_0x2f96,_0x15a7ee=[];let _0xb67d2a=0x0,_0x146be8=0x0;for(let _0x52d3c9=0x0;_0x52d3c9<_0x25ff97['length'];_0x52d3c9+=0x1){const _0x26705a=_0x25ff97[_0x52d3c9];if(_0x26705a==='(')_0xb67d2a+=0x1;if(_0x26705a===')')_0xb67d2a=Math[_0x589d8c(0x1a0)](0x0,_0xb67d2a-0x1);_0xb67d2a===0x0&&_0x25ff97[_0x589d8c(0x18e)](_0x52d3c9)[_0x589d8c(0x16c)](/^AND\b/i)&&(_0x52d3c9===0x0||/\s/[_0x589d8c(0x19c)](_0x25ff97[_0x52d3c9-0x1]??''))&&(_0x15a7ee[_0x589d8c(0x17a)](_0x25ff97[_0x589d8c(0x18e)](_0x146be8,_0x52d3c9)[_0x589d8c(0x181)]()),_0x52d3c9+=0x2,_0x146be8=_0x52d3c9+0x1);}const _0x47a774=_0x25ff97['slice'](_0x146be8)['trim']();if(_0x47a774)_0x15a7ee[_0x589d8c(0x17a)](_0x47a774);return _0x15a7ee;}function hasTopLevelKeyword(_0x1f02a5,_0x12658e){const _0x4c850f=a290_0x2f96;let _0x14d93f=0x0;for(let _0x241c58=0x0;_0x241c58<_0x1f02a5[_0x4c850f(0x173)];_0x241c58+=0x1){const _0x10536=_0x1f02a5[_0x241c58];if(_0x10536==='(')_0x14d93f+=0x1;if(_0x10536===')')_0x14d93f=Math[_0x4c850f(0x1a0)](0x0,_0x14d93f-0x1);if(_0x14d93f!==0x0)continue;const _0x1babea=_0x1f02a5[_0x4c850f(0x18e)](_0x241c58,_0x241c58+_0x12658e['length']),_0x50a8f9=_0x1f02a5[_0x241c58-0x1]??'\x20',_0x583e47=_0x1f02a5[_0x241c58+_0x12658e['length']]??'\x20';if(_0x1babea[_0x4c850f(0x197)]()===_0x12658e[_0x4c850f(0x197)]()&&!/[\w$]/[_0x4c850f(0x19c)](_0x50a8f9)&&!/[\w$]/['test'](_0x583e47))return!![];}return![];}function splitEquality(_0x2f021d){const _0x55361f=a290_0x2f96,_0x2c245e=stripOuterParentheses(_0x2f021d);let _0x77b2c6=0x0,_0x351547;for(let _0x512ea3=0x0;_0x512ea3<_0x2c245e[_0x55361f(0x173)];_0x512ea3+=0x1){const _0x3676fa=_0x2c245e[_0x512ea3];if(_0x3676fa==='(')_0x77b2c6+=0x1;if(_0x3676fa===')')_0x77b2c6=Math['max'](0x0,_0x77b2c6-0x1);const _0x54e7c3=_0x2c245e[_0x512ea3-0x1]??'',_0x4d8099=_0x2c245e[_0x512ea3+0x1]??'';if(_0x3676fa==='='&&_0x77b2c6===0x0&&!/[!<>=:]/[_0x55361f(0x19c)](_0x54e7c3)&&_0x4d8099!=='='){if(_0x351547!==undefined)return null;_0x351547=_0x512ea3;}}return _0x351547===undefined?null:[_0x2c245e[_0x55361f(0x18e)](0x0,_0x351547)[_0x55361f(0x181)](),_0x2c245e[_0x55361f(0x18e)](_0x351547+0x1)[_0x55361f(0x181)]()];}function parseDirectColumnReference(_0xcfa9c,_0xa2ff74){const _0xcbd267=a290_0x2f96,_0x4f79ff=/^([`"]?[\w$]+[`"]?)\s*\.\s*([`"]?[\w$]+[`"]?)$/[_0xcbd267(0x196)](stripOuterParentheses(_0xcfa9c));if(!_0x4f79ff)return null;if(normalizeIdentifier(_0x4f79ff[0x1]??'')!==normalizeIdentifier(_0xa2ff74))return null;return normalizeIdentifier(_0x4f79ff[0x2]??'');}function containsColumnReference(_0x1e4fe9,_0x4bceb7){const _0x3a5e85=a290_0x2f96,_0x5da3a0=_0x1e4fe9['replace'](/[`"]/g,''),_0x41a0d5=_0x4bceb7[_0x3a5e85(0x18c)](/[.*+?^${}()|[\]\\]/g,_0x3a5e85(0x193));return new RegExp('(?:^|[^\x5cw$])'+_0x41a0d5+_0x3a5e85(0x19e),'i')[_0x3a5e85(0x19c)](_0x5da3a0);}function findEqualityPrefix(_0x1e250a,_0x103fd2){const _0x51b93d=a290_0x2f96,_0x2cc45b=new Set(_0x103fd2[_0x51b93d(0x17b)](normalizeIdentifier)),_0x43bfa5=[];for(const _0x492514 of _0x1e250a){if(!_0x2cc45b['has'](normalizeIdentifier(_0x492514)))break;_0x43bfa5[_0x51b93d(0x17a)](_0x492514);}return _0x43bfa5;}function resolveTableMetadata(_0x21f023,_0x5972bc){const _0x415e1e=a290_0x2f96,_0x3972d8=normalizeIdentifier(_0x5972bc),_0x131e8c=_0x21f023[_0x415e1e(0x1a6)](_0x541d93=>normalizeIdentifier(_0x541d93['tableName'])===_0x3972d8);if(_0x131e8c[_0x415e1e(0x173)]===0x1)return _0x131e8c[0x0];const _0x1f4821=_0x3972d8['includes']('.'),_0x119f16=_0x3972d8[_0x415e1e(0x17c)]('.')['at'](-0x1),_0x598e88=_0x21f023[_0x415e1e(0x1a6)](_0xdc8d67=>{const _0x4079c7=_0x415e1e,_0x5a79c7=normalizeIdentifier(_0xdc8d67['tableName']);if(_0x1f4821&&_0x5a79c7[_0x4079c7(0x180)]('.'))return![];return _0x5a79c7[_0x4079c7(0x17c)]('.')['at'](-0x1)===_0x119f16;});return _0x598e88['length']===0x1?_0x598e88[0x0]:undefined;}function columnNamesMatch(_0xf5338f,_0x4ddf13){return normalizeIdentifier(_0xf5338f)===normalizeIdentifier(_0x4ddf13);}function normalizeIdentifier(_0x4059ed){const _0x517c7c=a290_0x2f96;return _0x4059ed[_0x517c7c(0x18c)](/[`"]/g,'')['trim']()['toLowerCase']();}function isSqlClauseKeyword(_0x582d65){const _0x33d84c=a290_0x2f96;return new Set(['on',_0x33d84c(0x190),_0x33d84c(0x179),_0x33d84c(0x177),_0x33d84c(0x1b6),'left',_0x33d84c(0x184),'full',_0x33d84c(0x16d),_0x33d84c(0x1b3)])[_0x33d84c(0x188)](_0x582d65);}function stripOuterParentheses(_0x3df680){const _0x2da87d=a290_0x2f96;let _0x192651=_0x3df680[_0x2da87d(0x181)]();while(_0x192651['startsWith']('(')&&_0x192651[_0x2da87d(0x171)](')')){let _0x1dd559=0x0,_0x38781e=!![];for(let _0x3e81db=0x0;_0x3e81db<_0x192651[_0x2da87d(0x173)];_0x3e81db+=0x1){if(_0x192651[_0x3e81db]==='(')_0x1dd559+=0x1;if(_0x192651[_0x3e81db]===')')_0x1dd559-=0x1;if(_0x1dd559===0x0&&_0x3e81db<_0x192651[_0x2da87d(0x173)]-0x1){_0x38781e=![];break;}}if(!_0x38781e||_0x1dd559!==0x0)break;_0x192651=_0x192651[_0x2da87d(0x18e)](0x1,-0x1)[_0x2da87d(0x181)]();}return _0x192651;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a291_0x46069b=a291_0x3f01;(function(_0x5a1568,_0x31b29a){const _0x56e53d=a291_0x3f01,_0x3bcadc=_0x5a1568();while(!![]){try{const _0x52ee05=parseInt(_0x56e53d(0xe5))/0x1+-parseInt(_0x56e53d(0xe3))/0x2*(-parseInt(_0x56e53d(0xde))/0x3)+-parseInt(_0x56e53d(0xdc))/0x4+parseInt(_0x56e53d(0xe0))/0x5+-parseInt(_0x56e53d(0xdf))/0x6+parseInt(_0x56e53d(0xdb))/0x7*(-parseInt(_0x56e53d(0xdd))/0x8)+parseInt(_0x56e53d(0xe2))/0x9;if(_0x52ee05===_0x31b29a)break;else _0x3bcadc['push'](_0x3bcadc['shift']());}catch(_0x12e869){_0x3bcadc['push'](_0x3bcadc['shift']());}}}(a291_0x358d,0x3b376));import{resolve}from'node:path';function a291_0x358d(){const _0x250736=['/sql','1278972bDMIox','12754AcJWpP','.rabetbase','122381Wussfd','sql-trash','sql','sql.lock.json','434CBcDKN','693800vHoQLV','2776LBFhZx','159zgtBlA','999900wMLfXc','8470XVJzqr'];a291_0x358d=function(){return _0x250736;};return a291_0x358d();}function a291_0x3f01(_0x31f4fa,_0x4a04f7){_0x31f4fa=_0x31f4fa-0xd9;const _0x358db8=a291_0x358d();let _0x3f01a4=_0x358db8[_0x31f4fa];return _0x3f01a4;}import{findProjectRootDirectory}from'../../context.js';const DOT_DIR=a291_0x46069b(0xe4),LOCK_FILE_NAME=a291_0x46069b(0xda),TRASH_DIR_NAME=a291_0x46069b(0xe6);export function loadSqlProjectConfig(_0x441bbf,_0x4b0e55){const _0x5c4f4b=a291_0x46069b,_0x238771=resolve(_0x4b0e55??findProjectRootDirectory()),_0x385f63=DOT_DIR+_0x5c4f4b(0xe1),_0x487231=_0x385f63+'/'+_0x441bbf;return{'projectRoot':_0x238771,'appCode':_0x441bbf,'sqlWorkspaceRoot':_0x385f63,'sqlRoot':_0x487231,'sqlRootDir':resolve(_0x238771,DOT_DIR,_0x5c4f4b(0xd9),_0x441bbf),'lockFilePath':resolve(_0x238771,DOT_DIR,LOCK_FILE_NAME),'trashDir':resolve(_0x238771,DOT_DIR,TRASH_DIR_NAME)};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x96e01c,_0xe08e50){const _0x4fd1a3=a292_0x4c5c,_0x4c0b08=_0x96e01c();while(!![]){try{const _0xb2dff6=-parseInt(_0x4fd1a3(0x1ff))/0x1*(-parseInt(_0x4fd1a3(0x20f))/0x2)+parseInt(_0x4fd1a3(0x206))/0x3*(-parseInt(_0x4fd1a3(0x20c))/0x4)+parseInt(_0x4fd1a3(0x211))/0x5+-parseInt(_0x4fd1a3(0x1f9))/0x6+parseInt(_0x4fd1a3(0x202))/0x7*(-parseInt(_0x4fd1a3(0x20e))/0x8)+-parseInt(_0x4fd1a3(0x1fe))/0x9*(-parseInt(_0x4fd1a3(0x20d))/0xa)+parseInt(_0x4fd1a3(0x213))/0xb*(parseInt(_0x4fd1a3(0x204))/0xc);if(_0xb2dff6===_0xe08e50)break;else _0x4c0b08['push'](_0x4c0b08['shift']());}catch(_0x34a60d){_0x4c0b08['push'](_0x4c0b08['shift']());}}}(a292_0x1738,0x22e59));function a292_0x1738(){const _0x31d9a1=['mybatisXml','581TDCCon','name','185304kQFfjr','isDirectory','593289XQoLYF','.xml','push','sqlName','sqlCode','path','4gmlXtY','790BMsmkS','5376TPBPyW','2RITLPl','replace','1286795fbxZBC','filter','121ODxnct','.sql','length','ENOENT','sql','slice','split','1543242mUTRmX','toLowerCase','mode','sqlRootDir','isFile','5004wWSAKA','182538jdZWfC','dbName'];a292_0x1738=function(){return _0x31d9a1;};return a292_0x1738();}import{readdir,stat}from'node:fs/promises';import{extname,join,relative}from'node:path';function a292_0x4c5c(_0x465e87,_0x45f793){_0x465e87=_0x465e87-0x1f4;const _0x173822=a292_0x1738();let _0x4c5ca9=_0x173822[_0x465e87];return _0x4c5ca9;}import{buildDefaultSqlFileName,buildSqlRelativePath}from'./utils.js';function extensionToMode(_0x19bef2){const _0x37c0f0=a292_0x4c5c;if(_0x19bef2===_0x37c0f0(0x214))return _0x37c0f0(0x1f6);if(_0x19bef2===_0x37c0f0(0x207))return _0x37c0f0(0x201);return undefined;}async function scanSqlFilesRecursively(_0x3dad61,_0x19f689){const _0x503ad8=a292_0x4c5c,_0x2ffa80=[];try{const _0x16f8eb=await readdir(_0x3dad61,{'withFileTypes':!![]});for(const _0x40c366 of _0x16f8eb){const _0x8416d=join(_0x3dad61,_0x40c366[_0x503ad8(0x203)]);if(_0x40c366[_0x503ad8(0x205)]()){_0x2ffa80['push'](...await scanSqlFilesRecursively(_0x8416d,_0x19f689));continue;}if(!_0x40c366[_0x503ad8(0x1fd)]())continue;const _0x1b0574=extname(_0x40c366[_0x503ad8(0x203)])[_0x503ad8(0x1fa)](),_0xaea6fe=extensionToMode(_0x1b0574);if(!_0xaea6fe)continue;const _0x11f155=relative(_0x19f689,_0x8416d)[_0x503ad8(0x210)](/\\/g,'/'),_0x9de14d=_0x11f155[_0x503ad8(0x1f8)]('/')[_0x503ad8(0x212)](Boolean),_0x264786=parseSqlPath(_0x9de14d,_0x40c366['name'],_0x1b0574);if(!_0x264786)continue;_0x2ffa80[_0x503ad8(0x208)]({'sqlCode':_0x264786['sqlCode'],'sqlName':_0x264786[_0x503ad8(0x209)],'dbDirectory':_0x9de14d[0x0],'filePath':_0x8416d,'relativePath':_0x11f155,'lockKey':_0x264786[_0x503ad8(0x20a)],'mode':_0xaea6fe});}}catch(_0x3a5206){if(_0x3a5206['code']!==_0x503ad8(0x1f5))throw _0x3a5206;}return _0x2ffa80;}export async function scanLocalSqlQueries(_0x47fac7){const _0x44984b=a292_0x4c5c;return scanSqlFilesRecursively(_0x47fac7[_0x44984b(0x1fc)],_0x47fac7[_0x44984b(0x1fc)]);}export function resolveLocalSqlFilePath(_0x52dddf,_0xd88b77,_0x59a5dc){const _0x2bfbcc=a292_0x4c5c,_0x48ebea=_0x59a5dc?.[_0x2bfbcc(0x20b)]||(_0x59a5dc?.[_0x2bfbcc(0x209)]||_0x59a5dc?.[_0x2bfbcc(0x200)]?buildSqlRelativePath(_0xd88b77,_0x59a5dc?.['sqlName'],_0x59a5dc?.['dbName'],_0x59a5dc?.[_0x2bfbcc(0x1fb)]||'sql',_0x59a5dc?.['dbId']):buildDefaultSqlFileName(_0xd88b77,_0x59a5dc?.[_0x2bfbcc(0x1fb)]||_0x2bfbcc(0x1f6)));return join(_0x52dddf[_0x2bfbcc(0x1fc)],_0x48ebea);}export async function directoryExists(_0x395eb1){const _0xd2c805=a292_0x4c5c;try{const _0x3372f8=await stat(_0x395eb1);return _0x3372f8[_0xd2c805(0x205)]();}catch{return![];}}function parseSqlPath(_0x3c15ea,_0x3820d3,_0x36bdb5){const _0x32aa92=a292_0x4c5c,_0x53ccad=_0x3820d3['slice'](0x0,-_0x36bdb5[_0x32aa92(0x1f4)]);if(_0x3c15ea[_0x32aa92(0x1f4)]<0x2)return null;const _0x3e6c46=_0x53ccad['indexOf']('_');if(_0x3e6c46<=0x0||_0x3e6c46>=_0x53ccad[_0x32aa92(0x1f4)]-0x1)return null;const _0x1f6a5a=_0x53ccad[_0x32aa92(0x1f7)](0x0,_0x3e6c46);if(!isLikelySqlCode(_0x1f6a5a))return null;return{'sqlCode':_0x1f6a5a,'sqlName':_0x53ccad[_0x32aa92(0x1f7)](_0x3e6c46+0x1)};}function isLikelySqlCode(_0x785797){return/^[A-Za-z0-9-]+-[A-Za-z0-9-]+$/['test'](_0x785797);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x531e7e,_0x423bee){const _0x2f08f0=a293_0xf233,_0x3d6f3d=_0x531e7e();while(!![]){try{const _0x458407=-parseInt(_0x2f08f0(0x1d7))/0x1+parseInt(_0x2f08f0(0x1cf))/0x2*(-parseInt(_0x2f08f0(0x1d6))/0x3)+-parseInt(_0x2f08f0(0x1d4))/0x4*(-parseInt(_0x2f08f0(0x1d9))/0x5)+parseInt(_0x2f08f0(0x1d0))/0x6*(-parseInt(_0x2f08f0(0x1d5))/0x7)+parseInt(_0x2f08f0(0x1d2))/0x8+-parseInt(_0x2f08f0(0x1da))/0x9*(parseInt(_0x2f08f0(0x1ce))/0xa)+parseInt(_0x2f08f0(0x1cd))/0xb;if(_0x458407===_0x423bee)break;else _0x3d6f3d['push'](_0x3d6f3d['shift']());}catch(_0x51628a){_0x3d6f3d['push'](_0x3d6f3d['shift']());}}}(a293_0x3397,0xb45b9));import{readFile}from'node:fs/promises';function a293_0x3397(){const _0xaa430f=['update','md5','17428312aLrJnV','10JlbhQH','8622rRmguO','7320UMZZbx','hex','11220600HgAoGB','digest','2498452IMVKOL','1631OcZBEo','813KJtXlD','568173bmlJaa','createHash','5roZMCD','7669089xADdji'];a293_0x3397=function(){return _0xaa430f;};return a293_0x3397();}function a293_0xf233(_0x373fe9,_0x468dc6){_0x373fe9=_0x373fe9-0x1cb;const _0x3397af=a293_0x3397();let _0xf2334f=_0x3397af[_0x373fe9];return _0xf2334f;}import a293_0x2f1759 from'node:crypto';export function computeSqlContentHash(_0x51edd7){const _0x8655e1=a293_0xf233;return a293_0x2f1759[_0x8655e1(0x1d8)](_0x8655e1(0x1cc))[_0x8655e1(0x1cb)](_0x51edd7)[_0x8655e1(0x1d3)](_0x8655e1(0x1d1));}export async function computeSqlFileHash(_0x5308c7){const _0x4bb460=await readFile(_0x5308c7,'utf8');return computeSqlContentHash(_0x4bb460);}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x4c6df3,_0x444eea){const _0xeb8300=a294_0x2d11,_0xd2e690=_0x4c6df3();while(!![]){try{const _0x58f1c2=parseInt(_0xeb8300(0x1b4))/0x1*(-parseInt(_0xeb8300(0x1af))/0x2)+-parseInt(_0xeb8300(0x1c3))/0x3*(-parseInt(_0xeb8300(0x1b8))/0x4)+-parseInt(_0xeb8300(0x1b5))/0x5+-parseInt(_0xeb8300(0x1ae))/0x6+-parseInt(_0xeb8300(0x1b2))/0x7+parseInt(_0xeb8300(0x1b0))/0x8*(-parseInt(_0xeb8300(0x1b9))/0x9)+parseInt(_0xeb8300(0x1bc))/0xa;if(_0x58f1c2===_0x444eea)break;else _0xd2e690['push'](_0xd2e690['shift']());}catch(_0x4afdf1){_0xd2e690['push'](_0xd2e690['shift']());}}}(a294_0x15bc,0x74ad7));import{mkdir,readFile,writeFile}from'node:fs/promises';import{dirname}from'node:path';export function createEmptySqlLock(){return{'apps':{}};}export function ensureSqlLockScope(_0x5692be,_0x4ea0e8,_0x4dcb2d,_0x466f95){const _0x11ac28=a294_0x2d11,_0xa4775e=_0x5692be??createEmptySqlLock();let _0x1b5972=_0xa4775e['apps'][_0x4ea0e8];if(!_0x1b5972)return _0x1b5972={'sqlRoot':_0x4dcb2d,'lastSync':'','sqls':{}},_0xa4775e[_0x11ac28(0x1bd)][_0x4ea0e8]=_0x1b5972,{'lockData':_0xa4775e,'appLock':_0x1b5972};if(!_0x1b5972[_0x11ac28(0x1b6)])_0x1b5972[_0x11ac28(0x1b6)]=_0x4dcb2d;else{if(_0x1b5972[_0x11ac28(0x1b6)]!==_0x4dcb2d)throw new Error(_0x466f95+_0x11ac28(0x1b1)+_0x4dcb2d+_0x11ac28(0x1bf)+_0x1b5972[_0x11ac28(0x1b6)]+_0x11ac28(0x1be)+_0x11ac28(0x1c2));}return!_0x1b5972[_0x11ac28(0x1b3)]&&(_0x1b5972[_0x11ac28(0x1b3)]={}),!_0x1b5972[_0x11ac28(0x1b7)]&&(_0x1b5972[_0x11ac28(0x1b7)]=''),{'lockData':_0xa4775e,'appLock':_0x1b5972};}export async function readSqlLockFile(_0x5c8e05){const _0x18a318=a294_0x2d11;try{const _0x59e61e=await readFile(_0x5c8e05,_0x18a318(0x1ba));return JSON[_0x18a318(0x1c4)](_0x59e61e);}catch(_0x4b5558){if(_0x4b5558['code']===_0x18a318(0x1bb))return null;throw new Error(_0x18a318(0x1c1)+String(_0x4b5558));}}export async function writeSqlLockFile(_0x3d9f31,_0x11afe5){const _0x5c23cc=a294_0x2d11;await mkdir(dirname(_0x3d9f31),{'recursive':!![]}),await writeFile(_0x3d9f31,JSON[_0x5c23cc(0x1c0)](_0x11afe5,null,0x2),_0x5c23cc(0x1ba));}function a294_0x2d11(_0x32439b,_0xcc57fe){_0x32439b=_0x32439b-0x1ae;const _0x15bc23=a294_0x15bc();let _0x2d11dd=_0x15bc23[_0x32439b];return _0x2d11dd;}function a294_0x15bc(){const _0x356c52=['36emyiFh','utf8','ENOENT','15848710dvEHGF','apps','\x22.\x20','\x22\x20vs\x20lock\x20\x22','stringify','Failed\x20to\x20read\x20SQL\x20lock\x20file:\x20','Check\x20.rabetbase/sql.lock.json\x20or\x20operate\x20from\x20the\x20correct\x20project\x20directory.','42BSoVJq','parse','57198uToRvW','738950ocSboN','147848QtFtJA',':\x20sqlRoot\x20mismatch\x20—\x20current\x20\x22','2645636agqwyb','sqls','1kKgtWh','3381770GDqDeH','sqlRoot','lastSync','114364ngTkEr'];a294_0x15bc=function(){return _0x356c52;};return a294_0x15bc();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a296_0x5c38(){const _0x460993=['1570580JDbWjY','7006300gwleQs','112qVQTqU','4ROWBhR','12030QZcXpk','44AdAAPZ','.xml','replace','unknown-db','365xMxnBx','4071116Vmoxtb','unknown-sql','.sql','db-','1033173iqiYyT','trim','1793889LJarjR','290410bTDjsK'];a296_0x5c38=function(){return _0x460993;};return a296_0x5c38();}(function(_0x5d8d5c,_0xa625a5){const _0x265b5d=a296_0x122c,_0x5ef997=_0x5d8d5c();while(!![]){try{const _0x301a5b=-parseInt(_0x265b5d(0x1e6))/0x1+-parseInt(_0x265b5d(0x1e5))/0x2+parseInt(_0x265b5d(0x1e4))/0x3*(parseInt(_0x265b5d(0x1e9))/0x4)+-parseInt(_0x265b5d(0x1ef))/0x5*(-parseInt(_0x265b5d(0x1ea))/0x6)+parseInt(_0x265b5d(0x1de))/0x7+-parseInt(_0x265b5d(0x1e8))/0x8*(parseInt(_0x265b5d(0x1e2))/0x9)+parseInt(_0x265b5d(0x1e7))/0xa*(parseInt(_0x265b5d(0x1eb))/0xb);if(_0x301a5b===_0xa625a5)break;else _0x5ef997['push'](_0x5ef997['shift']());}catch(_0x11f2e2){_0x5ef997['push'](_0x5ef997['shift']());}}}(a296_0x5c38,0xc4a75));import{detectSqlSourceMode}from'../../core/sql-validator.js';export function detectSqlMode(_0x32c644){return detectSqlSourceMode(_0x32c644);}export function getSqlFileExtension(_0x5a2796){const _0x19e2d6=a296_0x122c;return _0x5a2796==='mybatisXml'?_0x19e2d6(0x1ec):_0x19e2d6(0x1e0);}export function buildDefaultSqlFileName(_0x3958ad,_0x2f3f3a){return''+_0x3958ad+getSqlFileExtension(_0x2f3f3a);}function a296_0x122c(_0x15d746,_0x4b150b){_0x15d746=_0x15d746-0x1de;const _0x5c38fc=a296_0x5c38();let _0x122c7d=_0x5c38fc[_0x15d746];return _0x122c7d;}export function sanitizeSqlPathSegment(_0x44d52b,_0x24f53f){const _0x4ae052=a296_0x122c,_0x442ee8=String(_0x44d52b??'')[_0x4ae052(0x1e3)](),_0x1b2347=_0x442ee8['replace'](/[<>:"/\\|?*\u0000-\u001F]/g,'-')[_0x4ae052(0x1ed)](/\s+/g,'-')[_0x4ae052(0x1ed)](/-+/g,'-')[_0x4ae052(0x1ed)](/^\.+/,'')[_0x4ae052(0x1ed)](/\.+$/,'')[_0x4ae052(0x1ed)](/^-+/,'')['replace'](/-+$/,'');return _0x1b2347||_0x24f53f;}export function buildDbDirectoryName(_0xe633d1,_0x4ffbe1){const _0x510a54=a296_0x122c;return sanitizeSqlPathSegment(_0xe633d1,_0x4ffbe1!=null?_0x510a54(0x1e1)+_0x4ffbe1:_0x510a54(0x1ee));}export function buildSqlRelativePath(_0x8c6d51,_0x2f473e,_0x55c36f,_0x2b778a,_0x4d2644){const _0x5d4d0a=a296_0x122c,_0x2bfd57=buildDbDirectoryName(_0x55c36f,_0x4d2644),_0x4b728a=sanitizeSqlPathSegment(_0x8c6d51,_0x5d4d0a(0x1df)),_0x4c8569=sanitizeSqlPathSegment(_0x2f473e,_0x4b728a);return _0x2bfd57+'/'+_0x4b728a+'_'+_0x4c8569+getSqlFileExtension(_0x2b778a);}
|