@lovrabet/rabetbase-cli 2.4.7 → 2.5.0-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.d.ts +13 -3
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.d.ts +7 -0
- package/lib/api/generate-sdk-config-file.js +1 -0
- 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.d.ts +2 -5
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.d.ts +5 -0
- package/lib/commands/config/delete.js +1 -0
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.d.ts +12 -0
- package/lib/commands/config/init.js +1 -0
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.d.ts +1 -0
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.d.ts +6 -2
- 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.d.ts +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.d.ts +2 -2
- 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.d.ts +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/domain-config.d.ts +10 -0
- package/lib/config/domain-config.js +1 -0
- package/lib/config/schema.d.ts +3 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.d.ts +23 -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.d.ts +9 -0
- package/lib/constant/region.js +1 -0
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.d.ts +4 -6
- package/lib/context/config-loader.js +1 -1
- package/lib/context.d.ts +2 -2
- 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/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.d.ts +11 -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.d.ts +2 -2
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/types/index.d.ts +28 -0
- package/lib/utils/ai_config.d.ts +1 -2
- 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 -3
- package/skills/rabetbase/SKILL.md +33 -28
- package/skills/rabetbase/guides/backend-function.md +41 -12
- package/skills/rabetbase/guides/bff-creation-workflow.md +6 -4
- package/skills/rabetbase/guides/custom-page-workflow.md +1 -1
- package/skills/rabetbase/guides/data-api-guidelines.md +8 -8
- package/skills/rabetbase/guides/database-connection-workflow.md +8 -16
- package/skills/rabetbase/guides/menu-anomaly-manual-cleanup.md +1 -6
- package/skills/rabetbase/guides/sdk-client-generation.md +146 -0
- package/skills/rabetbase/guides/sql-creation-workflow.md +1 -1
- package/skills/rabetbase/guides/troubleshooting.md +1 -1
- package/skills/rabetbase/guides/typescript-sdk.md +46 -10
- package/skills/rabetbase/references/rabetbase-api-list.md +4 -4
- package/skills/rabetbase/references/rabetbase-api-pull.md +44 -29
- package/skills/rabetbase/references/rabetbase-app-list.md +2 -2
- package/skills/rabetbase/references/rabetbase-auth-login.md +4 -2
- package/skills/rabetbase/references/rabetbase-bff-push.md +3 -1
- package/skills/rabetbase/references/rabetbase-codegen-sql.md +3 -1
- package/skills/rabetbase/references/rabetbase-config.md +75 -30
- package/skills/rabetbase/references/rabetbase-dataset-detail.md +1 -1
- package/skills/rabetbase/references/rabetbase-db-analyze.md +3 -3
- package/skills/rabetbase/references/rabetbase-db-detail.md +2 -2
- package/skills/rabetbase/references/rabetbase-db-diff-refresh.md +4 -4
- package/skills/rabetbase/references/rabetbase-db-diff.md +6 -9
- package/skills/rabetbase/references/rabetbase-doctor.md +1 -1
- package/skills/rabetbase/references/rabetbase-init.md +57 -51
- package/skills/rabetbase/references/rabetbase-kb.md +2 -0
- package/skills/rabetbase/references/rabetbase-page-create.md +1 -1
- package/skills/rabetbase/references/rabetbase-page-custom-detail.md +3 -3
- package/skills/rabetbase/references/rabetbase-page-custom-list.md +2 -2
- package/skills/rabetbase/references/rabetbase-project-create.md +12 -3
- package/skills/rabetbase/references/rabetbase-project-upgrade.md +2 -2
- package/skills/rabetbase/references/rabetbase-role-user-resolve.md +2 -2
- package/skills/rabetbase/references/rabetbase-user-account.md +1 -1
- package/skills/rabetbase/references/rabetbase-workspace.md +6 -6
- package/skills/rabetbase.manifest.json +4 -3
- package/templates/README.md +17 -28
- package/templates/generate-api/api.ts.tpl +3 -3
- package/templates/generate-api/client.ts.tpl +10 -37
- package/lib/commands/data/filter.d.ts +0 -7
- package/lib/commands/data/filter.js +0 -1
- package/lib/commands/data/getOne.d.ts +0 -7
- package/lib/commands/data/getOne.js +0 -1
- package/lib/commands/data/index.d.ts +0 -8
- package/lib/commands/data/index.js +0 -1
- package/lib/commands/data/shared.d.ts +0 -33
- package/lib/commands/data/shared.js +0 -1
- package/lib/commands/init/index.d.ts +0 -11
- package/lib/commands/init/index.js +0 -1
- package/lib/utils/rules-cdn.d.ts +0 -38
- package/lib/utils/rules-cdn.js +0 -1
- package/templates/rules/lovrabet_rules.mdc.tpl +0 -893
- package/templates/skill/SKILL.md.tpl +0 -120
package/lib/commands/sql/exec.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a187_0xacc429=a187_0x4676;(function(_0x42b908,_0x1adbdc){const _0x24e064=a187_0x4676,_0x308c2e=_0x42b908();while(!![]){try{const _0x24b56f=parseInt(_0x24e064(0x1a5))/0x1+parseInt(_0x24e064(0x19f))/0x2*(-parseInt(_0x24e064(0x1a8))/0x3)+-parseInt(_0x24e064(0x1a6))/0x4*(-parseInt(_0x24e064(0x1aa))/0x5)+-parseInt(_0x24e064(0x19b))/0x6+parseInt(_0x24e064(0x19a))/0x7*(parseInt(_0x24e064(0x1a4))/0x8)+parseInt(_0x24e064(0x196))/0x9*(parseInt(_0x24e064(0x1af))/0xa)+parseInt(_0x24e064(0x1b2))/0xb*(parseInt(_0x24e064(0x1b1))/0xc);if(_0x24b56f===_0x1adbdc)break;else _0x308c2e['push'](_0x308c2e['shift']());}catch(_0x151e71){_0x308c2e['push'](_0x308c2e['shift']());}}}(a187_0xd885,0x775b9));function a187_0xd885(){const _0x2a847f=['string','3429XPYENZ','Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode','Returned\x20','isArray','7woioJs','1974090pkRSvN','read','str','appCode','207412SNZDZI','sqlcode','length','now','execSuccess','3747320patPxC','316909cKcLyP','1591924slYCko','execError','27saLNtV','\x20row(s)\x20in\x20','5tAQdsX','params','SQL\x20parameters\x20as\x20JSON\x20string\x20(e.g.\x20\x27{\x22key\x22:\x22value\x22}\x27)','SQL\x20execution\x20failed','sql','1220bDEMSx','exec','12PUZRaQ','5736181hGpAlf'];a187_0xd885=function(){return _0x2a847f;};return a187_0xd885();}function a187_0x4676(_0xd2e100,_0x31137c){_0xd2e100=_0xd2e100-0x195;const _0xd885b7=a187_0xd885();let _0x467633=_0xd885b7[_0xd2e100];return _0x467633;}import{executeSql}from'../../core/api-client.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';import{parseJsonParams}from'../../utils/params.js';export const sqlExec={'service':a187_0xacc429(0x1ae),'command':a187_0xacc429(0x1b0),'description':a187_0xacc429(0x197),'risk':a187_0xacc429(0x19c),'flags':[SQLCODE_FLAG,{'name':a187_0xacc429(0x1ab),'type':a187_0xacc429(0x195),'description':a187_0xacc429(0x1ac)}],async 'execute'(_0x422bf7){const _0x237b25=a187_0xacc429,_0x531da9=parseJsonParams(_0x422bf7[_0x237b25(0x19d)](_0x237b25(0x1ab))),_0xd16805=Date[_0x237b25(0x1a2)](),_0x2c4a7b=await executeSql(_0x422bf7[_0x237b25(0x19e)],_0x422bf7['str'](_0x237b25(0x1a0)),_0x531da9),_0x2dc1a8=Date[_0x237b25(0x1a2)]()-_0xd16805,_0x3d3173=_0x2c4a7b?.['execResult']??_0x2c4a7b,_0x352bdd=_0x2c4a7b?.[_0x237b25(0x1a3)]??!![];if(!_0x352bdd)return{'ok':![],'data':{'error':_0x2c4a7b?.[_0x237b25(0x1a7)]||_0x237b25(0x1ad),'elapsed':_0x2dc1a8},'message':_0x237b25(0x1ad)};const _0x15f577=Array[_0x237b25(0x199)](_0x3d3173)?_0x3d3173:[];return{'ok':!![],'data':{'rows':_0x15f577,'rowCount':_0x15f577[_0x237b25(0x1a1)],'elapsed':_0x2dc1a8},'message':_0x237b25(0x198)+_0x15f577['length']+_0x237b25(0x1a9)+_0x2dc1a8+'ms'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1865a9,_0x285e83){const _0x28a8f4=a188_0x38dc,_0x2d4916=_0x1865a9();while(!![]){try{const _0x15d4e9=-parseInt(_0x28a8f4(0x147))/0x1*(-parseInt(_0x28a8f4(0x146))/0x2)+-parseInt(_0x28a8f4(0x149))/0x3*(parseInt(_0x28a8f4(0x145))/0x4)+parseInt(_0x28a8f4(0x14a))/0x5+parseInt(_0x28a8f4(0x142))/0x6+parseInt(_0x28a8f4(0x143))/0x7+-parseInt(_0x28a8f4(0x144))/0x8+parseInt(_0x28a8f4(0x148))/0x9;if(_0x15d4e9===_0x285e83)break;else _0x2d4916['push'](_0x2d4916['shift']());}catch(_0x564215){_0x2d4916['push'](_0x2d4916['shift']());}}}(a188_0xab37,0x39494));function a188_0xab37(){const _0x3badab=['32631LUjvrb','747710uEcSLE','18978ulpImM','2574831FHLbNw','3262160zUDtfs','84wmIMvC','6UdjYSo','105559MyKYbs','302544XFomCq'];a188_0xab37=function(){return _0x3badab;};return a188_0xab37();}import{sqlList}from'../../commands/sql/list.js';import{sqlDetail}from'../../commands/sql/detail.js';import{sqlValidate}from'../../commands/sql/validate.js';import{sqlExec}from'../../commands/sql/exec.js';import{sqlPull}from'../../commands/sql/pull.js';import{sqlCreate}from'../../commands/sql/create.js';import{sqlStatus}from'../../commands/sql/status.js';function a188_0x38dc(_0x4971e2,_0x5b63b4){_0x4971e2=_0x4971e2-0x142;const _0xab3736=a188_0xab37();let _0x38dca2=_0xab3736[_0x4971e2];return _0x38dca2;}import{sqlPush}from'../../commands/sql/push.js';import{sqlDelete}from'../../commands/sql/delete.js';export const sqlDefinitions=[sqlList,sqlDetail,sqlStatus,sqlCreate,sqlPush,sqlValidate,sqlExec,sqlPull,sqlDelete];
|
package/lib/commands/sql/list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a189_0x4f3790=a189_0x2c0b;(function(_0x23f651,_0x7cebc4){const _0x23ef5f=a189_0x2c0b,_0x12faaa=_0x23f651();while(!![]){try{const _0x2368e7=-parseInt(_0x23ef5f(0xc2))/0x1*(parseInt(_0x23ef5f(0xbd))/0x2)+parseInt(_0x23ef5f(0xdb))/0x3*(-parseInt(_0x23ef5f(0xcc))/0x4)+parseInt(_0x23ef5f(0xd3))/0x5+parseInt(_0x23ef5f(0xda))/0x6+-parseInt(_0x23ef5f(0xd1))/0x7*(-parseInt(_0x23ef5f(0xbf))/0x8)+-parseInt(_0x23ef5f(0xce))/0x9*(-parseInt(_0x23ef5f(0xd6))/0xa)+-parseInt(_0x23ef5f(0xc1))/0xb;if(_0x2368e7===_0x7cebc4)break;else _0x12faaa['push'](_0x12faaa['shift']());}catch(_0x3c2681){_0x12faaa['push'](_0x12faaa['shift']());}}}(a189_0x1908,0x23efb));import{listSqlQueries}from'../../core/api-client.js';function a189_0x2c0b(_0xcb02eb,_0x4d900b){_0xcb02eb=_0xcb02eb-0xbc;const _0x190871=a189_0x1908();let _0x2c0bd8=_0x190871[_0xcb02eb];return _0x2c0bd8;}function a189_0x1908(){const _0x4b6b7=['Page\x20number','num','\x20SQL\x20queries\x20(total:\x20','634rJaYzD','length','8cmuyrq','sqlName','3264272LpDjHq','329XmRyxy','appCode','all','totalCount','boolean','map','List\x20custom\x20SQL\x20queries','No\x20custom\x20SQL\x20queries\x20found.','dbId','sqlCode','6080sCPXgZ','Page\x20size','207HFrkCo','str','tableData','488964ZqgNdM','pagesize','549770FwJSIS','Found\x20','Filter\x20by\x20SQL\x20name','114690iyHdMZ','read','sqlcode','string','1594602WXABeY','318ZxGCgJ','name','page','verbose','bool','paging'];a189_0x1908=function(){return _0x4b6b7;};return a189_0x1908();}import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';export const sqlList={'service':'sql','command':'list','description':a189_0x4f3790(0xc8),'risk':a189_0x4f3790(0xd7),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a189_0x4f3790(0xdc),'type':a189_0x4f3790(0xd9),'description':a189_0x4f3790(0xd5)},{'name':'page','type':'number','description':a189_0x4f3790(0xe1),'default':0x1},{'name':a189_0x4f3790(0xd2),'type':'number','description':a189_0x4f3790(0xcd)},{'name':a189_0x4f3790(0xde),'type':a189_0x4f3790(0xc6),'description':'Return\x20full\x20SQL\x20query\x20objects\x20including\x20parameters\x20and\x20SQL\x20content'}],async 'execute'(_0x4d0d69){const _0x32e65d=a189_0x4f3790,_0x39229d=await listSqlQueries(_0x4d0d69[_0x32e65d(0xc3)],{'sqlCode':_0x4d0d69[_0x32e65d(0xcf)](_0x32e65d(0xd8))||undefined,'sqlName':_0x4d0d69['str'](_0x32e65d(0xdc))||undefined,'currentPage':_0x4d0d69['num'](_0x32e65d(0xdd)),'pageSize':_0x4d0d69[_0x32e65d(0xe2)](_0x32e65d(0xd2),0x32)}),_0x4bf1c1=_0x4d0d69[_0x32e65d(0xdf)](_0x32e65d(0xde)),_0x1c3f68=_0x39229d[_0x32e65d(0xd0)]??[],_0x2ba7d4=_0x39229d[_0x32e65d(0xe0)]?.[_0x32e65d(0xc5)]??_0x1c3f68['length'];let _0x34309b;return _0x4bf1c1?_0x34309b=_0x1c3f68:_0x34309b=await Promise[_0x32e65d(0xc4)](_0x1c3f68[_0x32e65d(0xc7)](async _0x275c4a=>{const _0x4a3d4f=_0x32e65d;let _0x4779ff;try{_0x4779ff=_0x275c4a[_0x4a3d4f(0xca)]?await getDbName(_0x4d0d69[_0x4a3d4f(0xc3)],_0x275c4a[_0x4a3d4f(0xca)]):undefined;}catch{}return{'sqlCode':_0x275c4a[_0x4a3d4f(0xcb)],'sqlName':_0x275c4a[_0x4a3d4f(0xc0)],'description':_0x275c4a['description']??'','db':_0x4779ff?_0x4779ff+'\x20('+_0x275c4a['dbId']+')':_0x275c4a[_0x4a3d4f(0xca)]??''};})),{'ok':!![],'data':_0x34309b,'message':_0x1c3f68[_0x32e65d(0xbe)]===0x0?_0x32e65d(0xc9):_0x32e65d(0xd4)+_0x1c3f68[_0x32e65d(0xbe)]+_0x32e65d(0xbc)+_0x2ba7d4+').'};}};
|
package/lib/commands/sql/pull.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a192_0xbf43bb=a192_0x1e27;(function(_0xd2033a,_0x1980eb){const _0x2caf1a=a192_0x1e27,_0x190d45=_0xd2033a();while(!![]){try{const _0x5a851c=parseInt(_0x2caf1a(0xdb))/0x1+parseInt(_0x2caf1a(0xd5))/0x2+-parseInt(_0x2caf1a(0xd3))/0x3+parseInt(_0x2caf1a(0xf4))/0x4+-parseInt(_0x2caf1a(0xe0))/0x5*(parseInt(_0x2caf1a(0xc6))/0x6)+-parseInt(_0x2caf1a(0xc7))/0x7*(parseInt(_0x2caf1a(0xe9))/0x8)+parseInt(_0x2caf1a(0xc8))/0x9*(parseInt(_0x2caf1a(0xd6))/0xa);if(_0x5a851c===_0x1980eb)break;else _0x190d45['push'](_0x190d45['shift']());}catch(_0x4b7827){_0x190d45['push'](_0x190d45['shift']());}}}(a192_0xfc93,0x4596d));import{readFile,rm,writeFile}from'node:fs/promises';import{join}from'node:path';import{getSqlQueryDetail,listSqlQueries}from'../../core/api-client.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';function a192_0x1e27(_0x28bc5f,_0x121772){_0x28bc5f=_0x28bc5f-0xc6;const _0xfc930=a192_0xfc93();let _0x1e27f9=_0xfc930[_0x28bc5f];return _0x1e27f9;}import{getDbName}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{CliErrors}from'../../errors.js';function a192_0xfc93(){const _0xc68114=['1254717GeJBHz','dbId','Force\x20pull\x20cancelled.','push','bool','sqlName','length','catch','sqls','appCode','toISOString','1316022OSydXQ','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','86774tiNQWg','10SMrCIC','name','\x20skipped,\x20','Would\x20pull\x20','trimStart','498280EHOaiw','str','force','Pull\x20complete:\x20','mybatisXml','5UtTXuM','sqlCode','utf8','boolean','\x20failed','join','pull','read','No\x20remote\x20SQL\x20queries\x20matched.','664712eJSftf','totalCount','/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','sqlContent','path','cancelled','sql','replace','apps','paging','would_pull','1690816mKDhWr','sqlRootDir','conflict','split','Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.','sqlRoot','message','lockFilePath','filter','local\x20differs\x20from\x20remote','tableData','string','sqlcode','description','test','286302SHUwUl','28tIREDK'];a192_0xfc93=function(){return _0xc68114;};return a192_0xfc93();}import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildLocalSqlFileContent,buildSqlLockEntry,cloneSqlLockData,confirmForceOverwrite,ensureRemoteSqlContent,stripLocalSqlMetadata}from'./shared.js';const PAGE_SIZE=0x64;async function fetchAllSqlQueries(_0x2cb5e9,_0x351067){const _0x153705=a192_0x1e27,_0x56d9e1=[];let _0x520a05=0x1;while(!![]){const _0xfad0de=await listSqlQueries(_0x2cb5e9,{'currentPage':_0x520a05,'pageSize':PAGE_SIZE,'sqlCode':_0x351067[_0x153705(0xe1)],'sqlName':_0x351067[_0x153705(0xcd)]}),_0x5f1c10=_0xfad0de[_0x153705(0xfe)]??[];_0x56d9e1[_0x153705(0xcb)](..._0x5f1c10);if(_0x5f1c10['length']===0x0)break;const _0x562354=_0xfad0de[_0x153705(0xf2)]?.[_0x153705(0xea)];if(_0x562354!=null?_0x56d9e1['length']>=_0x562354:_0x5f1c10[_0x153705(0xce)]<PAGE_SIZE)break;_0x520a05++;}return _0x56d9e1;}async function ensureSqlContent(_0x1c9c16){const _0x60958d=a192_0x1e27;if(_0x1c9c16['sqlContent']!=null&&String(_0x1c9c16[_0x60958d(0xec)])[_0x60958d(0xce)]>0x0)return _0x1c9c16;return getSqlQueryDetail(_0x1c9c16[_0x60958d(0xe1)]);}export const sqlPull={'service':'sql','command':a192_0xbf43bb(0xe6),'description':'Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','risk':a192_0xbf43bb(0xe7),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a192_0xbf43bb(0xd7),'type':a192_0xbf43bb(0xff),'description':'Filter\x20by\x20SQL\x20display\x20name'},{'name':a192_0xbf43bb(0xdd),'type':a192_0xbf43bb(0xe3),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x5bc1f8){const _0x5d2253=a192_0xbf43bb,_0xed4496=loadSqlProjectConfig(_0x5bc1f8[_0x5d2253(0xd1)]),_0xae8e51=await readSqlLockFile(_0xed4496['lockFilePath']),{appLock:_0x20a185}=ensureSqlLockScope(_0xae8e51??createEmptySqlLock(),_0xed4496[_0x5d2253(0xd1)],_0xed4496[_0x5d2253(0xf9)],_0x5d2253(0xe6)),_0x11fc78=await fetchAllSqlQueries(_0x5bc1f8[_0x5d2253(0xd1)],{'sqlCode':_0x5bc1f8[_0x5d2253(0xdc)](_0x5d2253(0x100))||undefined,'sqlName':_0x5bc1f8[_0x5d2253(0xdc)](_0x5d2253(0xd7))||undefined}),_0x1560b8=[];for(const _0x4cf171 of _0x11fc78){const _0x574f3d=await ensureSqlContent(_0x4cf171),_0x562f65=ensureRemoteSqlContent(_0x574f3d),_0x48d12d=detectModeFromSql(_0x574f3d),_0x1340b2=_0x574f3d['dbId']?await getDbName(_0x5bc1f8[_0x5d2253(0xd1)],Number(_0x574f3d[_0x5d2253(0xc9)]))['catch'](()=>undefined):undefined,_0x5007b5=buildLocalSqlFileContent({'sqlCode':_0x574f3d[_0x5d2253(0xe1)],'sqlName':_0x574f3d['sqlName'],'dbId':_0x574f3d[_0x5d2253(0xc9)]},_0x562f65,{'dbName':_0x1340b2,'mode':_0x48d12d,'syncedAt':new Date()[_0x5d2253(0xd2)](),'description':_0x574f3d['description']}),_0x3a69a0=buildSqlLockEntry(_0x574f3d,_0x562f65,'',{'dbName':_0x1340b2}),_0x36e775=resolveLocalSqlFilePath(_0xed4496,_0x574f3d[_0x5d2253(0xe1)],_0x3a69a0);let _0x47dd82=_0x5d2253(0xf3),_0x236b16;if(await fileExists(_0x36e775)){const _0x1c3854=await readFile(_0x36e775,'utf8');isEquivalentPulledSqlFile(_0x1c3854,_0x5007b5,_0x48d12d)?(_0x47dd82='skipped',_0x236b16='unchanged'):(_0x47dd82=_0x5d2253(0xf6),_0x236b16=_0x5d2253(0xd4));}_0x1560b8[_0x5d2253(0xcb)]({'sqlCode':_0x574f3d[_0x5d2253(0xe1)],'sqlName':_0x574f3d[_0x5d2253(0xcd)],'filePath':_0x36e775,'status':_0x47dd82,'reason':_0x236b16});}return{'method':'POST','url':_0x5d2253(0xeb),'body':{'appCode':_0x5bc1f8[_0x5d2253(0xd1)],'sqlCode':_0x5bc1f8[_0x5d2253(0xdc)](_0x5d2253(0x100))||null,'sqlName':_0x5bc1f8[_0x5d2253(0xdc)](_0x5d2253(0xd7))||null,'files':_0x1560b8},'description':_0x5d2253(0xd9)+_0x1560b8[_0x5d2253(0xce)]+'\x20SQL\x20file(s)\x20into\x20'+_0xed4496['sqlRootDir']};},async 'execute'(_0x2d5c4f){const _0x12c457=a192_0xbf43bb,_0x3bd95a=loadSqlProjectConfig(_0x2d5c4f['appCode']),_0x21f6e1=await readSqlLockFile(_0x3bd95a[_0x12c457(0xfb)]),{lockData:_0x107e77,appLock:_0x21f37a}=ensureSqlLockScope(_0x21f6e1??createEmptySqlLock(),_0x3bd95a['appCode'],_0x3bd95a['sqlRoot'],'pull'),_0x4147b8=_0x2d5c4f[_0x12c457(0xcc)](_0x12c457(0xdd)),_0x550ac4=await fetchAllSqlQueries(_0x2d5c4f['appCode'],{'sqlCode':_0x2d5c4f[_0x12c457(0xdc)](_0x12c457(0x100))||undefined,'sqlName':_0x2d5c4f[_0x12c457(0xdc)](_0x12c457(0xd7))||undefined});if(_0x550ac4['length']===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x12c457(0xe8)};const _0x295f07=[],_0x29485d=[];for(const _0x44ca02 of _0x550ac4){try{_0x295f07[_0x12c457(0xcb)](await ensureSqlContent(_0x44ca02));}catch(_0x3f9003){_0x29485d[_0x12c457(0xcb)]({'sqlCode':_0x44ca02[_0x12c457(0xe1)],'error':_0x3f9003 instanceof Error?_0x3f9003[_0x12c457(0xfa)]:String(_0x3f9003)});}}if(_0x4147b8&&!_0x2d5c4f['nonInteractive']){let _0x1879f9=![];for(const _0x431102 of _0x295f07){const _0x478d46=detectModeFromSql(_0x431102),_0x5abaa3=_0x431102[_0x12c457(0xc9)]?await getDbName(_0x2d5c4f[_0x12c457(0xd1)],Number(_0x431102['dbId']))[_0x12c457(0xcf)](()=>undefined):undefined,_0x17d1fb=buildLocalSqlFileContent({'sqlCode':_0x431102['sqlCode'],'sqlName':_0x431102[_0x12c457(0xcd)],'dbId':_0x431102['dbId']},ensureRemoteSqlContent(_0x431102),{'dbName':_0x5abaa3,'mode':_0x478d46,'syncedAt':new Date()[_0x12c457(0xd2)](),'description':_0x431102[_0x12c457(0x101)]}),_0xbdc3ed=resolveLocalSqlFilePath(_0x3bd95a,_0x431102['sqlCode'],buildSqlLockEntry(_0x431102,ensureRemoteSqlContent(_0x431102),'',{'dbName':_0x5abaa3}));if(await fileExists(_0xbdc3ed)){const _0x4f0614=await readFile(_0xbdc3ed,_0x12c457(0xe2));if(!isEquivalentPulledSqlFile(_0x4f0614,_0x17d1fb,_0x478d46)){_0x1879f9=!![];break;}}}if(_0x1879f9){const _0x264ba4=await confirmForceOverwrite(_0x12c457(0xf8));if(!_0x264ba4)throw CliErrors[_0x12c457(0xee)](_0x12c457(0xca));}}const _0x24f311=cloneSqlLockData(_0x107e77),_0x321dcb=_0x24f311[_0x12c457(0xf1)][_0x3bd95a['appCode']],_0xd5dd3f=[],_0x5e213e=[];for(const _0x171ac9 of _0x295f07){const _0x16d4b3=_0x321dcb['sqls'][_0x171ac9['sqlCode']],_0xb15f86=ensureRemoteSqlContent(_0x171ac9),_0x517b21=detectModeFromSql(_0x171ac9),_0x3fb37d=_0x171ac9[_0x12c457(0xc9)]?await getDbName(_0x2d5c4f['appCode'],Number(_0x171ac9['dbId']))[_0x12c457(0xcf)](()=>undefined):undefined,_0x58a1d3=buildLocalSqlFileContent({'sqlCode':_0x171ac9[_0x12c457(0xe1)],'sqlName':_0x171ac9[_0x12c457(0xcd)],'dbId':_0x171ac9[_0x12c457(0xc9)]},_0xb15f86,{'dbName':_0x3fb37d,'mode':_0x517b21,'syncedAt':new Date()[_0x12c457(0xd2)](),'description':_0x171ac9[_0x12c457(0x101)]}),_0x37ab2b=buildSqlLockEntry(_0x171ac9,_0xb15f86,computeSqlContentHash(_0x58a1d3),{'dbName':_0x3fb37d}),_0x43853e=_0x37ab2b['path'],_0x5533f0=join(_0x3bd95a[_0x12c457(0xf5)],_0x43853e);try{if(await fileExists(_0x5533f0)){const _0x6d4a6d=await readFile(_0x5533f0,_0x12c457(0xe2));if(isEquivalentPulledSqlFile(_0x6d4a6d,_0x58a1d3,_0x517b21)){_0x5e213e[_0x12c457(0xcb)]({'sqlCode':_0x171ac9['sqlCode'],'reason':'unchanged'}),_0x321dcb['sqls'][_0x171ac9[_0x12c457(0xe1)]]={..._0x37ab2b,'hash':computeSqlContentHash(_0x6d4a6d),'path':_0x43853e};continue;}if(!_0x4147b8){_0x5e213e[_0x12c457(0xcb)]({'sqlCode':_0x171ac9['sqlCode'],'reason':_0x12c457(0xfd)});continue;}}const _0x2f76bb=_0x16d4b3?.[_0x12c457(0xed)]?join(_0x3bd95a['sqlRootDir'],_0x16d4b3['path']):undefined;_0x2f76bb&&_0x2f76bb!==_0x5533f0&&await fileExists(_0x2f76bb)&&await rm(_0x2f76bb,{'force':!![]}),await ensureParentDirectory(_0x5533f0),await writeFile(_0x5533f0,_0x58a1d3,_0x12c457(0xe2)),_0x321dcb[_0x12c457(0xd0)][_0x171ac9['sqlCode']]={..._0x37ab2b,'path':_0x43853e},_0xd5dd3f[_0x12c457(0xcb)]({'sqlCode':_0x171ac9[_0x12c457(0xe1)],'filePath':_0x5533f0});}catch(_0x1a634d){_0x29485d[_0x12c457(0xcb)]({'sqlCode':_0x171ac9['sqlCode'],'error':_0x1a634d instanceof Error?_0x1a634d[_0x12c457(0xfa)]:String(_0x1a634d)});}}return _0x321dcb['lastSync']=new Date()[_0x12c457(0xd2)](),await writeSqlLockFile(_0x3bd95a[_0x12c457(0xfb)],_0x24f311),{'ok':_0x29485d[_0x12c457(0xce)]===0x0,'data':{'pulled':_0xd5dd3f,'skipped':_0x5e213e,'failed':_0x29485d},'message':_0x12c457(0xde)+_0xd5dd3f['length']+'\x20written,\x20'+_0x5e213e[_0x12c457(0xce)]+_0x12c457(0xd8)+_0x29485d[_0x12c457(0xce)]+_0x12c457(0xe4)};}};function detectModeFromSql(_0xbf937e){const _0xfd8509=a192_0xbf43bb,_0x1c48b6=ensureRemoteSqlContent(_0xbf937e),_0x3bd863=stripLocalSqlMetadata(_0x1c48b6,'mybatisXml')[_0xfd8509(0xda)]();if(/^<(select|insert|update|delete)\b/i[_0xfd8509(0x102)](_0x3bd863))return _0xfd8509(0xdf);return _0xfd8509(0xef);}function isEquivalentPulledSqlFile(_0x2cca1f,_0x1cb368,_0x19ed2e){return normalizePullComparableContent(_0x2cca1f,_0x19ed2e)===normalizePullComparableContent(_0x1cb368,_0x19ed2e);}function normalizePullComparableContent(_0x577c5a,_0x757556){const _0x49defd=a192_0xbf43bb,_0x512a1a=_0x577c5a[_0x49defd(0xf0)](/\r\n/g,'\x0a')[_0x49defd(0xf7)]('\x0a'),_0x1f2b26=_0x512a1a[_0x49defd(0xfc)](_0x1496bd=>!isSyncedAtMetadataLine(_0x1496bd,_0x757556));return _0x1f2b26[_0x49defd(0xe5)]('\x0a');}function isSyncedAtMetadataLine(_0x3a8e3d,_0x5b5946){if(_0x5b5946==='mybatisXml')return/^\s*<!--\s*@lovrabet\.syncedAt:/['test'](_0x3a8e3d);return/^\s*--\s*@lovrabet\.syncedAt:/['test'](_0x3a8e3d);}
|
|
1
|
+
const a190_0x2813b0=a190_0xc3cd;(function(_0x21daad,_0x4ffd02){const _0x4f181e=a190_0xc3cd,_0x29e582=_0x21daad();while(!![]){try{const _0x2bd483=parseInt(_0x4f181e(0x181))/0x1*(parseInt(_0x4f181e(0x177))/0x2)+-parseInt(_0x4f181e(0x167))/0x3*(-parseInt(_0x4f181e(0x192))/0x4)+parseInt(_0x4f181e(0x18f))/0x5*(-parseInt(_0x4f181e(0x175))/0x6)+-parseInt(_0x4f181e(0x190))/0x7+-parseInt(_0x4f181e(0x17d))/0x8+parseInt(_0x4f181e(0x194))/0x9+-parseInt(_0x4f181e(0x182))/0xa*(parseInt(_0x4f181e(0x172))/0xb);if(_0x2bd483===_0x4ffd02)break;else _0x29e582['push'](_0x29e582['shift']());}catch(_0x274208){_0x29e582['push'](_0x29e582['shift']());}}}(a190_0x5541,0x8a5d7));import{readFile,rm,writeFile}from'node:fs/promises';import{join}from'node:path';import{getSqlQueryDetail,listSqlQueries}from'../../core/api-client.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{getDbName}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildLocalSqlFileContent,buildSqlLockEntry,cloneSqlLockData,confirmForceOverwrite,ensureRemoteSqlContent,stripLocalSqlMetadata}from'./shared.js';const PAGE_SIZE=0x64;function a190_0xc3cd(_0x4f9fb1,_0x3c92bd){_0x4f9fb1=_0x4f9fb1-0x161;const _0x554158=a190_0x5541();let _0xc3cde1=_0x554158[_0x4f9fb1];return _0xc3cde1;}async function fetchAllSqlQueries(_0x3d1a3c,_0x1f5831){const _0x322970=a190_0xc3cd,_0x3dfa44=[];let _0x591bf2=0x1;while(!![]){const _0x3e0abf=await listSqlQueries(_0x3d1a3c,{'currentPage':_0x591bf2,'pageSize':PAGE_SIZE,'sqlCode':_0x1f5831['sqlCode'],'sqlName':_0x1f5831[_0x322970(0x161)]}),_0x12cc9d=_0x3e0abf[_0x322970(0x18e)]??[];_0x3dfa44['push'](..._0x12cc9d);if(_0x12cc9d[_0x322970(0x17f)]===0x0)break;const _0x218829=_0x3e0abf[_0x322970(0x196)]?.['totalCount'];if(_0x218829!=null?_0x3dfa44[_0x322970(0x17f)]>=_0x218829:_0x12cc9d[_0x322970(0x17f)]<PAGE_SIZE)break;_0x591bf2++;}return _0x3dfa44;}function a190_0x5541(){const _0xb4cbe=['\x20failed','would_pull','492696OulldB','unchanged','length','description','25PXknTc','7880fMXGty','nonInteractive','sqlContent','dbId','POST','path','force','str','test','cancelled','boolean','Force\x20pull\x20cancelled.','tableData','5DlLHPG','1565326PhiKZx','\x20written,\x20','10228OenwAP','replace','7889202WIdLFT','name','paging','trimStart','toISOString','message','sqlCode','mybatisXml','sqlName','push','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','sqlRootDir','sqlRoot','sqls','687itCcHo','\x20SQL\x20file(s)\x20into\x20','lockFilePath','conflict','lastSync','split','sqlcode','pull','Pull\x20complete:\x20','Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.','local\x20differs\x20from\x20remote','7645wdicJM','filter','appCode','878988xZfYge','No\x20remote\x20SQL\x20queries\x20matched.','6718vAaoUH','apps','catch','utf8'];a190_0x5541=function(){return _0xb4cbe;};return a190_0x5541();}async function ensureSqlContent(_0x13313a){const _0x554fd4=a190_0xc3cd;if(_0x13313a[_0x554fd4(0x184)]!=null&&String(_0x13313a[_0x554fd4(0x184)])[_0x554fd4(0x17f)]>0x0)return _0x13313a;return getSqlQueryDetail(_0x13313a['sqlCode']);}export const sqlPull={'service':'sql','command':a190_0x2813b0(0x16e),'description':'Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','risk':'read','flags':[SQLCODE_FLAG_OPTIONAL,{'name':'name','type':'string','description':'Filter\x20by\x20SQL\x20display\x20name'},{'name':a190_0x2813b0(0x188),'type':a190_0x2813b0(0x18c),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x5b5b64){const _0x663c22=a190_0x2813b0,_0x14a1c1=loadSqlProjectConfig(_0x5b5b64[_0x663c22(0x174)]),_0x241efb=await readSqlLockFile(_0x14a1c1[_0x663c22(0x169)]),{appLock:_0x3b48f0}=ensureSqlLockScope(_0x241efb??createEmptySqlLock(),_0x14a1c1[_0x663c22(0x174)],_0x14a1c1[_0x663c22(0x165)],_0x663c22(0x16e)),_0x371720=await fetchAllSqlQueries(_0x5b5b64[_0x663c22(0x174)],{'sqlCode':_0x5b5b64[_0x663c22(0x189)](_0x663c22(0x16d))||undefined,'sqlName':_0x5b5b64[_0x663c22(0x189)](_0x663c22(0x195))||undefined}),_0x259737=[];for(const _0x23fc81 of _0x371720){const _0x1aeb64=await ensureSqlContent(_0x23fc81),_0x1928f6=ensureRemoteSqlContent(_0x1aeb64),_0x1d7ce5=detectModeFromSql(_0x1aeb64),_0x1e0eb7=_0x1aeb64['dbId']?await getDbName(_0x5b5b64[_0x663c22(0x174)],Number(_0x1aeb64['dbId']))[_0x663c22(0x179)](()=>undefined):undefined,_0x3a1038=buildLocalSqlFileContent({'sqlCode':_0x1aeb64[_0x663c22(0x19a)],'sqlName':_0x1aeb64[_0x663c22(0x161)],'dbId':_0x1aeb64[_0x663c22(0x185)]},_0x1928f6,{'dbName':_0x1e0eb7,'mode':_0x1d7ce5,'syncedAt':new Date()[_0x663c22(0x198)](),'description':_0x1aeb64[_0x663c22(0x180)]}),_0x25df72=buildSqlLockEntry(_0x1aeb64,_0x1928f6,'',{'dbName':_0x1e0eb7}),_0x1b2da3=resolveLocalSqlFilePath(_0x14a1c1,_0x1aeb64[_0x663c22(0x19a)],_0x25df72);let _0xd959d3=_0x663c22(0x17c),_0x489b2a;if(await fileExists(_0x1b2da3)){const _0x55c570=await readFile(_0x1b2da3,_0x663c22(0x17a));isEquivalentPulledSqlFile(_0x55c570,_0x3a1038,_0x1d7ce5)?(_0xd959d3='skipped',_0x489b2a=_0x663c22(0x17e)):(_0xd959d3=_0x663c22(0x16a),_0x489b2a=_0x663c22(0x163));}_0x259737[_0x663c22(0x162)]({'sqlCode':_0x1aeb64[_0x663c22(0x19a)],'sqlName':_0x1aeb64[_0x663c22(0x161)],'filePath':_0x1b2da3,'status':_0xd959d3,'reason':_0x489b2a});}return{'method':_0x663c22(0x186),'url':'/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','body':{'appCode':_0x5b5b64['appCode'],'sqlCode':_0x5b5b64[_0x663c22(0x189)](_0x663c22(0x16d))||null,'sqlName':_0x5b5b64[_0x663c22(0x189)](_0x663c22(0x195))||null,'files':_0x259737},'description':'Would\x20pull\x20'+_0x259737[_0x663c22(0x17f)]+_0x663c22(0x168)+_0x14a1c1[_0x663c22(0x164)]};},async 'execute'(_0x27f8f7){const _0xb3fafc=a190_0x2813b0,_0x4f948c=loadSqlProjectConfig(_0x27f8f7['appCode']),_0x594b3b=await readSqlLockFile(_0x4f948c[_0xb3fafc(0x169)]),{lockData:_0x52d0cf,appLock:_0x2c28b7}=ensureSqlLockScope(_0x594b3b??createEmptySqlLock(),_0x4f948c['appCode'],_0x4f948c[_0xb3fafc(0x165)],'pull'),_0x31c155=_0x27f8f7['bool']('force'),_0x362032=await fetchAllSqlQueries(_0x27f8f7[_0xb3fafc(0x174)],{'sqlCode':_0x27f8f7[_0xb3fafc(0x189)](_0xb3fafc(0x16d))||undefined,'sqlName':_0x27f8f7[_0xb3fafc(0x189)]('name')||undefined});if(_0x362032[_0xb3fafc(0x17f)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0xb3fafc(0x176)};const _0x5cb672=[],_0x236e41=[];for(const _0x56c8f8 of _0x362032){try{_0x5cb672[_0xb3fafc(0x162)](await ensureSqlContent(_0x56c8f8));}catch(_0x371b32){_0x236e41[_0xb3fafc(0x162)]({'sqlCode':_0x56c8f8[_0xb3fafc(0x19a)],'error':_0x371b32 instanceof Error?_0x371b32[_0xb3fafc(0x199)]:String(_0x371b32)});}}if(_0x31c155&&!_0x27f8f7[_0xb3fafc(0x183)]){let _0x4d2140=![];for(const _0x482c37 of _0x5cb672){const _0x10f6de=detectModeFromSql(_0x482c37),_0x36117=_0x482c37['dbId']?await getDbName(_0x27f8f7[_0xb3fafc(0x174)],Number(_0x482c37['dbId']))[_0xb3fafc(0x179)](()=>undefined):undefined,_0x4f9b94=buildLocalSqlFileContent({'sqlCode':_0x482c37[_0xb3fafc(0x19a)],'sqlName':_0x482c37[_0xb3fafc(0x161)],'dbId':_0x482c37[_0xb3fafc(0x185)]},ensureRemoteSqlContent(_0x482c37),{'dbName':_0x36117,'mode':_0x10f6de,'syncedAt':new Date()[_0xb3fafc(0x198)](),'description':_0x482c37[_0xb3fafc(0x180)]}),_0x3961db=resolveLocalSqlFilePath(_0x4f948c,_0x482c37['sqlCode'],buildSqlLockEntry(_0x482c37,ensureRemoteSqlContent(_0x482c37),'',{'dbName':_0x36117}));if(await fileExists(_0x3961db)){const _0x246302=await readFile(_0x3961db,_0xb3fafc(0x17a));if(!isEquivalentPulledSqlFile(_0x246302,_0x4f9b94,_0x10f6de)){_0x4d2140=!![];break;}}}if(_0x4d2140){const _0x1de220=await confirmForceOverwrite(_0xb3fafc(0x170));if(!_0x1de220)throw CliErrors[_0xb3fafc(0x18b)](_0xb3fafc(0x18d));}}const _0x290619=cloneSqlLockData(_0x52d0cf),_0x117cf7=_0x290619[_0xb3fafc(0x178)][_0x4f948c[_0xb3fafc(0x174)]],_0x20baa5=[],_0x28103d=[];for(const _0xa50f48 of _0x5cb672){const _0x340242=_0x117cf7[_0xb3fafc(0x166)][_0xa50f48[_0xb3fafc(0x19a)]],_0x51048f=ensureRemoteSqlContent(_0xa50f48),_0x5e7eae=detectModeFromSql(_0xa50f48),_0x455393=_0xa50f48[_0xb3fafc(0x185)]?await getDbName(_0x27f8f7[_0xb3fafc(0x174)],Number(_0xa50f48[_0xb3fafc(0x185)]))[_0xb3fafc(0x179)](()=>undefined):undefined,_0x496cc8=buildLocalSqlFileContent({'sqlCode':_0xa50f48[_0xb3fafc(0x19a)],'sqlName':_0xa50f48[_0xb3fafc(0x161)],'dbId':_0xa50f48[_0xb3fafc(0x185)]},_0x51048f,{'dbName':_0x455393,'mode':_0x5e7eae,'syncedAt':new Date()[_0xb3fafc(0x198)](),'description':_0xa50f48['description']}),_0x1680c2=buildSqlLockEntry(_0xa50f48,_0x51048f,computeSqlContentHash(_0x496cc8),{'dbName':_0x455393}),_0x3d6c2d=_0x1680c2['path'],_0x4d8d4c=join(_0x4f948c[_0xb3fafc(0x164)],_0x3d6c2d);try{if(await fileExists(_0x4d8d4c)){const _0x3ee297=await readFile(_0x4d8d4c,_0xb3fafc(0x17a));if(isEquivalentPulledSqlFile(_0x3ee297,_0x496cc8,_0x5e7eae)){_0x28103d[_0xb3fafc(0x162)]({'sqlCode':_0xa50f48['sqlCode'],'reason':_0xb3fafc(0x17e)}),_0x117cf7[_0xb3fafc(0x166)][_0xa50f48[_0xb3fafc(0x19a)]]={..._0x1680c2,'hash':computeSqlContentHash(_0x3ee297),'path':_0x3d6c2d};continue;}if(!_0x31c155){_0x28103d[_0xb3fafc(0x162)]({'sqlCode':_0xa50f48[_0xb3fafc(0x19a)],'reason':_0xb3fafc(0x171)});continue;}}const _0x518c15=_0x340242?.[_0xb3fafc(0x187)]?join(_0x4f948c['sqlRootDir'],_0x340242[_0xb3fafc(0x187)]):undefined;_0x518c15&&_0x518c15!==_0x4d8d4c&&await fileExists(_0x518c15)&&await rm(_0x518c15,{'force':!![]}),await ensureParentDirectory(_0x4d8d4c),await writeFile(_0x4d8d4c,_0x496cc8,_0xb3fafc(0x17a)),_0x117cf7[_0xb3fafc(0x166)][_0xa50f48[_0xb3fafc(0x19a)]]={..._0x1680c2,'path':_0x3d6c2d},_0x20baa5[_0xb3fafc(0x162)]({'sqlCode':_0xa50f48[_0xb3fafc(0x19a)],'filePath':_0x4d8d4c});}catch(_0x31ab20){_0x236e41[_0xb3fafc(0x162)]({'sqlCode':_0xa50f48['sqlCode'],'error':_0x31ab20 instanceof Error?_0x31ab20[_0xb3fafc(0x199)]:String(_0x31ab20)});}}return _0x117cf7[_0xb3fafc(0x16b)]=new Date()['toISOString'](),await writeSqlLockFile(_0x4f948c[_0xb3fafc(0x169)],_0x290619),{'ok':_0x236e41[_0xb3fafc(0x17f)]===0x0,'data':{'pulled':_0x20baa5,'skipped':_0x28103d,'failed':_0x236e41},'message':_0xb3fafc(0x16f)+_0x20baa5[_0xb3fafc(0x17f)]+_0xb3fafc(0x191)+_0x28103d['length']+'\x20skipped,\x20'+_0x236e41['length']+_0xb3fafc(0x17b)};}};function detectModeFromSql(_0x2f7ffa){const _0x320a28=a190_0x2813b0,_0xb73da3=ensureRemoteSqlContent(_0x2f7ffa),_0x4cea23=stripLocalSqlMetadata(_0xb73da3,_0x320a28(0x19b))[_0x320a28(0x197)]();if(/^<(select|insert|update|delete)\b/i['test'](_0x4cea23))return _0x320a28(0x19b);return'sql';}function isEquivalentPulledSqlFile(_0x24f5b9,_0x4ffed1,_0x222214){return normalizePullComparableContent(_0x24f5b9,_0x222214)===normalizePullComparableContent(_0x4ffed1,_0x222214);}function normalizePullComparableContent(_0x3aa39f,_0x101176){const _0x464643=a190_0x2813b0,_0x22ce69=_0x3aa39f[_0x464643(0x193)](/\r\n/g,'\x0a')[_0x464643(0x16c)]('\x0a'),_0x22bd55=_0x22ce69[_0x464643(0x173)](_0x4203e1=>!isSyncedAtMetadataLine(_0x4203e1,_0x101176));return _0x22bd55['join']('\x0a');}function isSyncedAtMetadataLine(_0x1489cc,_0xc1c30e){const _0x3ae4f5=a190_0x2813b0;if(_0xc1c30e===_0x3ae4f5(0x19b))return/^\s*<!--\s*@lovrabet\.syncedAt:/[_0x3ae4f5(0x18a)](_0x1489cc);return/^\s*--\s*@lovrabet\.syncedAt:/['test'](_0x1489cc);}
|
package/lib/commands/sql/push.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a193_0x5e27b5=a193_0x48d3;(function(_0xca9cb5,_0xa1c372){const _0x39f77c=a193_0x48d3,_0x2a963a=_0xca9cb5();while(!![]){try{const _0x5d4fe3=parseInt(_0x39f77c(0xf3))/0x1+parseInt(_0x39f77c(0xde))/0x2*(parseInt(_0x39f77c(0x110))/0x3)+-parseInt(_0x39f77c(0xd3))/0x4*(-parseInt(_0x39f77c(0x10f))/0x5)+parseInt(_0x39f77c(0xfb))/0x6+parseInt(_0x39f77c(0x10c))/0x7*(parseInt(_0x39f77c(0x10d))/0x8)+parseInt(_0x39f77c(0xe7))/0x9+-parseInt(_0x39f77c(0x104))/0xa;if(_0x5d4fe3===_0xa1c372)break;else _0x2a963a['push'](_0x2a963a['shift']());}catch(_0x55d071){_0x2a963a['push'](_0x2a963a['shift']());}}}(a193_0x48e8,0x79e81));import{mkdir,readFile,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';function a193_0x48e8(){const _0x737e45=['sqlRoot','dbDirectory','entries','missing\x20remote\x20version;\x20run\x20`rabetbase\x20sql\x20pull`\x20to\x20refresh\x20version\x20info\x20first','path','toISOString','1336626ZbSPfN','filePath','str','lockFilePath','unchanged','\x20pushed,\x20','remoteId','write','join','sqlRootDir','replace','has','63461FNyRSz','push','length','dbId','set','boolean','sqlName','POST','1095966XJffFI','appCode','\x20skipped,\x20','Local\x20directory\x20\x22','Local\x20SQL\x20not\x20found:\x20','relativePath','filter','sqlcode','mode','21728350YhRWUt','sqls','get','\x20failed','sqlCode','Would\x20push\x20','version','\x20SQL\x20file(s)','6587gpghVd','7768xNFnxt','force','5tAGyyK','6qKZgYP','.\x20Keep\x20only\x20one\x20file\x20under\x20its\x20sqlCode\x20directory\x20before\x20pushing.','sqlConfig','/smartapi/custom/updateUserCustomSql','validation','bool','isFinite','Push\x20local\x20SQL\x20files\x20to\x20remote','map','Force\x20push\x20even\x20if\x20local\x20hash\x20matches\x20lock','projectRoot','1465036PiXDhn','trashDir','sql','startsWith','No\x20database\x20matches\x20local\x20directory\x20\x22','exec','local\x20SQL\x20is\x20not\x20tracked\x20by\x20sql.lock.json;\x20use\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first','catch','lastSync','Multiple\x20local\x20SQL\x20files\x20found\x20for\x20sqlCode\x20','\x22\x20for\x20sqlCode\x20','997558UyvcFW','utf8','dbName'];a193_0x48e8=function(){return _0x737e45;};return a193_0x48e8();}import{updateSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{scanLocalSqlQueries}from'../../core/sql-sync/file-system.js';import{computeSqlFileHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{fileExists}from'../../core/bff/file-system.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildSqlLockEntry,stripLocalSqlMetadata}from'./shared.js';function a193_0x48d3(_0x596f68,_0x299f86){_0x596f68=_0x596f68-0xcd;const _0x48e8c8=a193_0x48e8();let _0x48d363=_0x48e8c8[_0x596f68];return _0x48d363;}import{buildDbDirectoryName}from'../../core/sql-sync/utils.js';async function getTargetSqlQueries(_0x48d447,_0xd56eb5,_0x17be02){const _0x4cb2a6=a193_0x48d3,_0x4a1946=await scanLocalSqlQueries(_0x48d447),_0x3ed23=new Map();for(const _0x588da0 of _0x4a1946){if(_0x17be02&&_0x588da0[_0x4cb2a6(0x108)]!==_0x17be02)continue;const _0x2207b3=_0x3ed23[_0x4cb2a6(0x106)](_0x588da0[_0x4cb2a6(0x108)])??[];_0x2207b3['push'](_0x588da0),_0x3ed23[_0x4cb2a6(0xf7)](_0x588da0[_0x4cb2a6(0x108)],_0x2207b3);}if(_0x17be02&&!_0x3ed23[_0x4cb2a6(0xf2)](_0x17be02))throw CliErrors['validation'](_0x4cb2a6(0xff)+_0x17be02);const _0x273146=[];for(const [_0x1bbf22,_0x3945e1]of _0x3ed23[_0x4cb2a6(0xe3)]()){if(_0x3945e1[_0x4cb2a6(0xf5)]===0x1){_0x273146['push'](_0x3945e1[0x0]);continue;}const _0x4d9cd8=_0xd56eb5[_0x4cb2a6(0x105)][_0x1bbf22],_0x532458=_0x4d9cd8?.[_0x4cb2a6(0xe5)],_0xe19b7=_0x532458?_0x3945e1[_0x4cb2a6(0x101)](_0x1f048c=>_0x1f048c[_0x4cb2a6(0x100)]!==_0x532458):_0x3945e1;if(_0x4d9cd8&&_0xe19b7[_0x4cb2a6(0xf5)]===0x1){_0x273146['push'](_0xe19b7[0x0]);continue;}throw CliErrors['validation'](_0x4cb2a6(0xdc)+_0x1bbf22+_0x4cb2a6(0x111));}return _0x273146;}export const sqlPush={'service':a193_0x5e27b5(0xd5),'command':a193_0x5e27b5(0xf4),'description':a193_0x5e27b5(0xcf),'risk':a193_0x5e27b5(0xee),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a193_0x5e27b5(0x10e),'type':a193_0x5e27b5(0xf8),'description':a193_0x5e27b5(0xd1)}],async 'dryRun'(_0xaa211d){const _0x2cb902=a193_0x5e27b5,_0x41a02a=loadSqlProjectConfig(_0xaa211d[_0x2cb902(0xfc)]),_0x91e697=await readSqlLockFile(_0x41a02a[_0x2cb902(0xea)]),{appLock:_0x3d6b8c}=ensureSqlLockScope(_0x91e697??createEmptySqlLock(),_0xaa211d[_0x2cb902(0xfc)],_0x41a02a[_0x2cb902(0xe1)],_0x2cb902(0xf4)),_0x556179=await getTargetSqlQueries(_0x41a02a,_0x3d6b8c,_0xaa211d[_0x2cb902(0xe9)](_0x2cb902(0x102))||undefined),_0x6c76c2=[];for(const _0x13b46e of _0x556179){const _0x5938f7=await computeSqlFileHash(_0x13b46e[_0x2cb902(0xe8)]),_0x28c9a6=_0x3d6b8c[_0x2cb902(0x105)][_0x13b46e[_0x2cb902(0x108)]],_0x254a94=!!_0x28c9a6&&(_0x28c9a6[_0x2cb902(0xe5)]!==_0x13b46e[_0x2cb902(0x100)]||!!_0x13b46e[_0x2cb902(0xf9)]&&_0x28c9a6[_0x2cb902(0xf9)]!==_0x13b46e[_0x2cb902(0xf9)]);if(!_0xaa211d[_0x2cb902(0xcd)](_0x2cb902(0x10e))&&_0x28c9a6&&_0x28c9a6['hash']===_0x5938f7&&!_0x254a94)continue;_0x6c76c2[_0x2cb902(0xf4)](_0x13b46e[_0x2cb902(0x108)]);}return{'method':_0x2cb902(0xfa),'url':_0x2cb902(0x113),'body':{'sqlCodes':_0x6c76c2,'appCode':_0xaa211d['appCode']},'description':_0x2cb902(0x109)+_0x6c76c2[_0x2cb902(0xf5)]+_0x2cb902(0x10b)};},async 'execute'(_0x28983c){const _0x24b2f9=a193_0x5e27b5,_0x3f0741=loadSqlProjectConfig(_0x28983c['appCode']),_0x27cad9=await readSqlLockFile(_0x3f0741[_0x24b2f9(0xea)]),{lockData:_0x142e7a,appLock:_0x454a7f}=ensureSqlLockScope(_0x27cad9??createEmptySqlLock(),_0x28983c[_0x24b2f9(0xfc)],_0x3f0741[_0x24b2f9(0xe1)],_0x24b2f9(0xf4)),_0x467402=await getTargetSqlQueries(_0x3f0741,_0x454a7f,_0x28983c[_0x24b2f9(0xe9)](_0x24b2f9(0x102))||undefined);if(_0x467402['length']===0x0)return{'ok':!![],'data':{'pushed':[],'skipped':[],'failed':[]},'message':'No\x20local\x20SQL\x20files\x20found.'};const _0x4cd916=[],_0x5ef433=[],_0x2fe303=[];for(const _0x114010 of _0x467402){const _0x5abbc5=_0x454a7f[_0x24b2f9(0x105)][_0x114010[_0x24b2f9(0x108)]];if(!_0x5abbc5){_0x2fe303['push']({'sqlCode':_0x114010[_0x24b2f9(0x108)],'error':_0x24b2f9(0xd9)});continue;}try{const _0x3f908c=await computeSqlFileHash(_0x114010[_0x24b2f9(0xe8)]),_0x5e74be=_0x5abbc5[_0x24b2f9(0xe5)]!==_0x114010[_0x24b2f9(0x100)]||!!_0x114010[_0x24b2f9(0xf9)]&&_0x5abbc5['sqlName']!==_0x114010[_0x24b2f9(0xf9)];if(!_0x28983c[_0x24b2f9(0xcd)](_0x24b2f9(0x10e))&&_0x5abbc5['hash']===_0x3f908c&&!_0x5e74be){_0x5ef433[_0x24b2f9(0xf4)]({'sqlCode':_0x114010[_0x24b2f9(0x108)],'reason':_0x24b2f9(0xeb)});continue;}if(_0x5abbc5[_0x24b2f9(0x10a)]==null){_0x2fe303['push']({'sqlCode':_0x114010['sqlCode'],'error':_0x24b2f9(0xe4)});continue;}const _0x5df560=await readFile(_0x114010[_0x24b2f9(0xe8)],_0x24b2f9(0xdf)),_0x1220f5=stripLocalSqlMetadata(_0x5df560,_0x114010[_0x24b2f9(0x103)]),_0x2057d8=_0x114010[_0x24b2f9(0xf9)]||_0x5abbc5[_0x24b2f9(0xf9)],_0x890d89=await resolveTargetDbBinding(_0x28983c[_0x24b2f9(0xfc)],_0x114010,_0x5abbc5),_0x1ab299=await updateSqlQuery({'id':_0x5abbc5[_0x24b2f9(0xed)],'appCode':_0x28983c[_0x24b2f9(0xfc)],'sqlCode':_0x114010[_0x24b2f9(0x108)],'sqlName':_0x2057d8,'dbId':_0x890d89['dbId'],'version':_0x5abbc5[_0x24b2f9(0x10a)],'sqlContent':_0x1220f5,'sqlConfig':_0x5abbc5[_0x24b2f9(0x112)]??undefined}),_0xea21b9=_0x1ab299[_0x24b2f9(0xf6)]?await getDbName(_0x28983c[_0x24b2f9(0xfc)],Number(_0x1ab299[_0x24b2f9(0xf6)]))[_0x24b2f9(0xda)](()=>_0x890d89['dbName']):_0x890d89[_0x24b2f9(0xe0)];_0x454a7f[_0x24b2f9(0x105)][_0x114010['sqlCode']]={...buildSqlLockEntry(_0x1ab299,_0x1220f5,_0x3f908c,{'dbName':_0xea21b9}),'path':_0x114010[_0x24b2f9(0x100)],'mode':_0x5abbc5[_0x24b2f9(0x103)]},await archivePreviousSqlFileIfNeeded(_0x3f0741,_0x5abbc5[_0x24b2f9(0xe5)],_0x114010[_0x24b2f9(0x100)]),_0x4cd916[_0x24b2f9(0xf4)]({'sqlCode':_0x114010[_0x24b2f9(0x108)],'remoteId':_0x5abbc5['remoteId']});}catch(_0x512467){_0x2fe303[_0x24b2f9(0xf4)]({'sqlCode':_0x114010[_0x24b2f9(0x108)],'error':_0x512467 instanceof Error?_0x512467['message']:String(_0x512467)});}}return _0x454a7f[_0x24b2f9(0xdb)]=new Date()[_0x24b2f9(0xe6)](),await writeSqlLockFile(_0x3f0741[_0x24b2f9(0xea)],_0x142e7a),{'ok':_0x2fe303['length']===0x0,'data':{'pushed':_0x4cd916,'skipped':_0x5ef433,'failed':_0x2fe303},'message':'Push\x20complete:\x20'+_0x4cd916[_0x24b2f9(0xf5)]+_0x24b2f9(0xec)+_0x5ef433[_0x24b2f9(0xf5)]+_0x24b2f9(0xfd)+_0x2fe303[_0x24b2f9(0xf5)]+_0x24b2f9(0x107)};}};async function archivePreviousSqlFileIfNeeded(_0x13294d,_0x173554,_0x38f91c){const _0x472474=a193_0x5e27b5;if(!_0x173554||_0x173554===_0x38f91c)return;const _0x508f94=join(_0x13294d[_0x472474(0xf0)],_0x173554);if(!await fileExists(_0x508f94))return;const _0x3fa174=await moveToTrash(_0x13294d[_0x472474(0xd2)],_0x13294d[_0x472474(0xd4)],_0x508f94);await cleanupEmptyDirectories(dirname(_0x508f94),_0x13294d[_0x472474(0xf0)]),void _0x3fa174;}async function moveToTrash(_0x22c799,_0x39a0ba,_0x589fcf){const _0x35f591=a193_0x5e27b5,_0x1daeec=new Date()[_0x35f591(0xe6)]()[_0x35f591(0xf1)](/[:.]/g,'-'),_0x5c1ff0=relative(_0x22c799,_0x589fcf),_0x143f0b=join(_0x39a0ba,_0x1daeec,_0x5c1ff0);return await mkdir(dirname(_0x143f0b),{'recursive':!![]}),await rename(_0x589fcf,_0x143f0b),_0x143f0b;}async function cleanupEmptyDirectories(_0x568fa8,_0x22af6a){const _0x59d6e6=a193_0x5e27b5;let _0x3df0fc=resolve(_0x568fa8);const _0x220b76=resolve(_0x22af6a);while(_0x3df0fc[_0x59d6e6(0xd6)](''+_0x220b76+sep)||_0x3df0fc===_0x220b76){if(_0x3df0fc===_0x220b76)return;try{const _0x34a35a=await readdir(_0x3df0fc);if(_0x34a35a[_0x59d6e6(0xf5)]>0x0)return;await rmdir(_0x3df0fc);}catch{return;}_0x3df0fc=dirname(_0x3df0fc);}}async function resolveTargetDbBinding(_0x3e510e,_0x1b65c6,_0x1fdfc8){const _0x3edae2=a193_0x5e27b5,_0x10b23b=_0x1b65c6[_0x3edae2(0xe2)];if(!_0x10b23b)return{'dbId':_0x1fdfc8[_0x3edae2(0xf6)],'dbName':_0x1fdfc8[_0x3edae2(0xe0)]};const _0x3192b2=buildDbDirectoryName(_0x1fdfc8[_0x3edae2(0xe0)],_0x1fdfc8['dbId']);if(_0x10b23b===_0x3192b2)return{'dbId':_0x1fdfc8['dbId'],'dbName':_0x1fdfc8[_0x3edae2(0xe0)]};const _0x42431e=parseExplicitDbDirectory(_0x10b23b);if(_0x42431e!=null)return{'dbId':_0x42431e,'dbName':await getDbName(_0x3e510e,_0x42431e)[_0x3edae2(0xda)](()=>undefined)};const _0x20f145=await listDatabases(_0x3e510e),_0x140dc5=_0x20f145[_0x3edae2(0x101)](_0x50693b=>buildDbDirectoryName(_0x50693b['dbName'],_0x50693b[_0x3edae2(0xf6)])===_0x10b23b);if(_0x140dc5[_0x3edae2(0xf5)]===0x1)return{'dbId':_0x140dc5[0x0][_0x3edae2(0xf6)],'dbName':_0x140dc5[0x0]['dbName']};if(_0x140dc5['length']===0x0)throw CliErrors['validation'](_0x3edae2(0xd7)+_0x10b23b+_0x3edae2(0xdd)+_0x1b65c6[_0x3edae2(0x108)]+'.');const _0xa65b24=_0x140dc5[_0x3edae2(0xd0)](_0x594d0e=>_0x594d0e[_0x3edae2(0xe0)]+'\x20('+_0x594d0e[_0x3edae2(0xf6)]+')')[_0x3edae2(0xef)](',\x20');throw CliErrors[_0x3edae2(0x114)](_0x3edae2(0xfe)+_0x10b23b+'\x22\x20matches\x20multiple\x20databases\x20for\x20sqlCode\x20'+_0x1b65c6[_0x3edae2(0x108)]+':\x20'+_0xa65b24);}function parseExplicitDbDirectory(_0x569bb1){const _0x1d023d=a193_0x5e27b5,_0x4e5b90=/^db-(\d+)$/[_0x1d023d(0xd8)](_0x569bb1);if(!_0x4e5b90)return null;const _0x5ba52a=Number(_0x4e5b90[0x1]);return Number[_0x1d023d(0xce)](_0x5ba52a)&&_0x5ba52a>0x0?_0x5ba52a:null;}
|
|
1
|
+
const a191_0x5a8010=a191_0x42ed;function a191_0x294d(){const _0x398215=['POST','dbId','130888KMfWnl','projectRoot','Force\x20push\x20even\x20if\x20local\x20hash\x20matches\x20lock','sql','sqlRootDir','catch','map','hash','\x20skipped,\x20','No\x20database\x20matches\x20local\x20directory\x20\x22','3060747lwQLkk','sqlConfig','exec','force','entries','\x22\x20matches\x20multiple\x20databases\x20for\x20sqlCode\x20','message','mode','Would\x20push\x20','missing\x20remote\x20version;\x20run\x20`rabetbase\x20sql\x20pull`\x20to\x20refresh\x20version\x20info\x20first','bool','sqlName','\x22\x20for\x20sqlCode\x20','sqls','6ncDzPr','sqlCode','\x20SQL\x20file(s)','875545XoZCAq','590358NLGAYS','130542jqGNhc','length','\x20pushed,\x20','path','140ULdolh','1423590rukMhg','Push\x20local\x20SQL\x20files\x20to\x20remote','write','set','appCode','10gulmDQ','join','validation','dbDirectory','trashDir','toISOString','relativePath','startsWith','filePath','sqlcode','remoteId','has','3353708byONfw','push','220kxVUpj','filter','version','Local\x20SQL\x20not\x20found:\x20','Multiple\x20local\x20SQL\x20files\x20found\x20for\x20sqlCode\x20','dbName'];a191_0x294d=function(){return _0x398215;};return a191_0x294d();}(function(_0x478955,_0x2e9e9c){const _0x2aab05=a191_0x42ed,_0x4126ad=_0x478955();while(!![]){try{const _0x521ad3=parseInt(_0x2aab05(0x14f))/0x1+-parseInt(_0x2aab05(0x11c))/0x2*(-parseInt(_0x2aab05(0x14e))/0x3)+parseInt(_0x2aab05(0x128))/0x4+parseInt(_0x2aab05(0x154))/0x5*(-parseInt(_0x2aab05(0x14a))/0x6)+-parseInt(_0x2aab05(0x153))/0x7*(-parseInt(_0x2aab05(0x132))/0x8)+parseInt(_0x2aab05(0x13c))/0x9+parseInt(_0x2aab05(0x12a))/0xa*(-parseInt(_0x2aab05(0x14d))/0xb);if(_0x521ad3===_0x2e9e9c)break;else _0x4126ad['push'](_0x4126ad['shift']());}catch(_0x34bd9c){_0x4126ad['push'](_0x4126ad['shift']());}}}(a191_0x294d,0x8eaca));import{mkdir,readFile,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{updateSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{scanLocalSqlQueries}from'../../core/sql-sync/file-system.js';import{computeSqlFileHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{fileExists}from'../../core/bff/file-system.js';function a191_0x42ed(_0x25ad8a,_0x9a480f){_0x25ad8a=_0x25ad8a-0x118;const _0x294d7e=a191_0x294d();let _0x42eddc=_0x294d7e[_0x25ad8a];return _0x42eddc;}import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildSqlLockEntry,stripLocalSqlMetadata}from'./shared.js';import{buildDbDirectoryName}from'../../core/sql-sync/utils.js';async function getTargetSqlQueries(_0x270af4,_0x502c4f,_0x227180){const _0x56a384=a191_0x42ed,_0x239139=await scanLocalSqlQueries(_0x270af4),_0xfd1e2a=new Map();for(const _0x4c470a of _0x239139){if(_0x227180&&_0x4c470a['sqlCode']!==_0x227180)continue;const _0x2d034b=_0xfd1e2a['get'](_0x4c470a[_0x56a384(0x14b)])??[];_0x2d034b['push'](_0x4c470a),_0xfd1e2a[_0x56a384(0x11a)](_0x4c470a[_0x56a384(0x14b)],_0x2d034b);}if(_0x227180&&!_0xfd1e2a[_0x56a384(0x127)](_0x227180))throw CliErrors[_0x56a384(0x11e)](_0x56a384(0x12d)+_0x227180);const _0x172faa=[];for(const [_0x15b9dd,_0x262cdc]of _0xfd1e2a[_0x56a384(0x140)]()){if(_0x262cdc[_0x56a384(0x150)]===0x1){_0x172faa[_0x56a384(0x129)](_0x262cdc[0x0]);continue;}const _0x35ada4=_0x502c4f['sqls'][_0x15b9dd],_0x2286d2=_0x35ada4?.[_0x56a384(0x152)],_0xdcf926=_0x2286d2?_0x262cdc[_0x56a384(0x12b)](_0x593f12=>_0x593f12[_0x56a384(0x122)]!==_0x2286d2):_0x262cdc;if(_0x35ada4&&_0xdcf926[_0x56a384(0x150)]===0x1){_0x172faa['push'](_0xdcf926[0x0]);continue;}throw CliErrors['validation'](_0x56a384(0x12e)+_0x15b9dd+'.\x20Keep\x20only\x20one\x20file\x20under\x20its\x20sqlCode\x20directory\x20before\x20pushing.');}return _0x172faa;}export const sqlPush={'service':a191_0x5a8010(0x135),'command':a191_0x5a8010(0x129),'description':a191_0x5a8010(0x118),'risk':a191_0x5a8010(0x119),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a191_0x5a8010(0x13f),'type':'boolean','description':a191_0x5a8010(0x134)}],async 'dryRun'(_0x29fac8){const _0x19e010=a191_0x5a8010,_0x4ec45a=loadSqlProjectConfig(_0x29fac8['appCode']),_0x24b425=await readSqlLockFile(_0x4ec45a['lockFilePath']),{appLock:_0x2d8048}=ensureSqlLockScope(_0x24b425??createEmptySqlLock(),_0x29fac8[_0x19e010(0x11b)],_0x4ec45a['sqlRoot'],_0x19e010(0x129)),_0x3aa893=await getTargetSqlQueries(_0x4ec45a,_0x2d8048,_0x29fac8['str'](_0x19e010(0x125))||undefined),_0x2d92b2=[];for(const _0x49f676 of _0x3aa893){const _0x3d1ddb=await computeSqlFileHash(_0x49f676[_0x19e010(0x124)]),_0x7fa329=_0x2d8048[_0x19e010(0x149)][_0x49f676[_0x19e010(0x14b)]],_0xa40dc2=!!_0x7fa329&&(_0x7fa329[_0x19e010(0x152)]!==_0x49f676[_0x19e010(0x122)]||!!_0x49f676[_0x19e010(0x147)]&&_0x7fa329[_0x19e010(0x147)]!==_0x49f676['sqlName']);if(!_0x29fac8[_0x19e010(0x146)](_0x19e010(0x13f))&&_0x7fa329&&_0x7fa329[_0x19e010(0x139)]===_0x3d1ddb&&!_0xa40dc2)continue;_0x2d92b2[_0x19e010(0x129)](_0x49f676[_0x19e010(0x14b)]);}return{'method':_0x19e010(0x130),'url':'/smartapi/custom/updateUserCustomSql','body':{'sqlCodes':_0x2d92b2,'appCode':_0x29fac8[_0x19e010(0x11b)]},'description':_0x19e010(0x144)+_0x2d92b2[_0x19e010(0x150)]+_0x19e010(0x14c)};},async 'execute'(_0x48a30f){const _0xadf265=a191_0x5a8010,_0x21d4f8=loadSqlProjectConfig(_0x48a30f[_0xadf265(0x11b)]),_0x557bd8=await readSqlLockFile(_0x21d4f8['lockFilePath']),{lockData:_0x5be615,appLock:_0x234e5f}=ensureSqlLockScope(_0x557bd8??createEmptySqlLock(),_0x48a30f[_0xadf265(0x11b)],_0x21d4f8['sqlRoot'],_0xadf265(0x129)),_0x3a77da=await getTargetSqlQueries(_0x21d4f8,_0x234e5f,_0x48a30f['str'](_0xadf265(0x125))||undefined);if(_0x3a77da[_0xadf265(0x150)]===0x0)return{'ok':!![],'data':{'pushed':[],'skipped':[],'failed':[]},'message':'No\x20local\x20SQL\x20files\x20found.'};const _0x5b0b7f=[],_0x40f334=[],_0x335fdc=[];for(const _0x850870 of _0x3a77da){const _0x5dace5=_0x234e5f[_0xadf265(0x149)][_0x850870[_0xadf265(0x14b)]];if(!_0x5dace5){_0x335fdc[_0xadf265(0x129)]({'sqlCode':_0x850870[_0xadf265(0x14b)],'error':'local\x20SQL\x20is\x20not\x20tracked\x20by\x20sql.lock.json;\x20use\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first'});continue;}try{const _0x251101=await computeSqlFileHash(_0x850870[_0xadf265(0x124)]),_0x138fdf=_0x5dace5[_0xadf265(0x152)]!==_0x850870[_0xadf265(0x122)]||!!_0x850870['sqlName']&&_0x5dace5[_0xadf265(0x147)]!==_0x850870[_0xadf265(0x147)];if(!_0x48a30f[_0xadf265(0x146)]('force')&&_0x5dace5[_0xadf265(0x139)]===_0x251101&&!_0x138fdf){_0x40f334[_0xadf265(0x129)]({'sqlCode':_0x850870[_0xadf265(0x14b)],'reason':'unchanged'});continue;}if(_0x5dace5[_0xadf265(0x12c)]==null){_0x335fdc['push']({'sqlCode':_0x850870[_0xadf265(0x14b)],'error':_0xadf265(0x145)});continue;}const _0x50967d=await readFile(_0x850870[_0xadf265(0x124)],'utf8'),_0x44675a=stripLocalSqlMetadata(_0x50967d,_0x850870[_0xadf265(0x143)]),_0x1eb1dc=_0x850870[_0xadf265(0x147)]||_0x5dace5[_0xadf265(0x147)],_0x167f56=await resolveTargetDbBinding(_0x48a30f[_0xadf265(0x11b)],_0x850870,_0x5dace5),_0x4fdc87=await updateSqlQuery({'id':_0x5dace5[_0xadf265(0x126)],'appCode':_0x48a30f[_0xadf265(0x11b)],'sqlCode':_0x850870['sqlCode'],'sqlName':_0x1eb1dc,'dbId':_0x167f56['dbId'],'version':_0x5dace5[_0xadf265(0x12c)],'sqlContent':_0x44675a,'sqlConfig':_0x5dace5[_0xadf265(0x13d)]??undefined}),_0x5432a8=_0x4fdc87[_0xadf265(0x131)]?await getDbName(_0x48a30f[_0xadf265(0x11b)],Number(_0x4fdc87[_0xadf265(0x131)]))[_0xadf265(0x137)](()=>_0x167f56[_0xadf265(0x12f)]):_0x167f56['dbName'];_0x234e5f['sqls'][_0x850870['sqlCode']]={...buildSqlLockEntry(_0x4fdc87,_0x44675a,_0x251101,{'dbName':_0x5432a8}),'path':_0x850870[_0xadf265(0x122)],'mode':_0x5dace5[_0xadf265(0x143)]},await archivePreviousSqlFileIfNeeded(_0x21d4f8,_0x5dace5[_0xadf265(0x152)],_0x850870[_0xadf265(0x122)]),_0x5b0b7f['push']({'sqlCode':_0x850870[_0xadf265(0x14b)],'remoteId':_0x5dace5[_0xadf265(0x126)]});}catch(_0x24365e){_0x335fdc[_0xadf265(0x129)]({'sqlCode':_0x850870['sqlCode'],'error':_0x24365e instanceof Error?_0x24365e[_0xadf265(0x142)]:String(_0x24365e)});}}return _0x234e5f['lastSync']=new Date()['toISOString'](),await writeSqlLockFile(_0x21d4f8['lockFilePath'],_0x5be615),{'ok':_0x335fdc[_0xadf265(0x150)]===0x0,'data':{'pushed':_0x5b0b7f,'skipped':_0x40f334,'failed':_0x335fdc},'message':'Push\x20complete:\x20'+_0x5b0b7f[_0xadf265(0x150)]+_0xadf265(0x151)+_0x40f334[_0xadf265(0x150)]+_0xadf265(0x13a)+_0x335fdc[_0xadf265(0x150)]+'\x20failed'};}};async function archivePreviousSqlFileIfNeeded(_0x3cda6d,_0x3adf90,_0x31519b){const _0x42fdd7=a191_0x5a8010;if(!_0x3adf90||_0x3adf90===_0x31519b)return;const _0x2a5122=join(_0x3cda6d['sqlRootDir'],_0x3adf90);if(!await fileExists(_0x2a5122))return;const _0x53da09=await moveToTrash(_0x3cda6d[_0x42fdd7(0x133)],_0x3cda6d[_0x42fdd7(0x120)],_0x2a5122);await cleanupEmptyDirectories(dirname(_0x2a5122),_0x3cda6d[_0x42fdd7(0x136)]),void _0x53da09;}async function moveToTrash(_0x47a725,_0x575d8f,_0xe7f43b){const _0x5edfb0=a191_0x5a8010,_0x364d20=new Date()[_0x5edfb0(0x121)]()['replace'](/[:.]/g,'-'),_0x210cca=relative(_0x47a725,_0xe7f43b),_0x3c7714=join(_0x575d8f,_0x364d20,_0x210cca);return await mkdir(dirname(_0x3c7714),{'recursive':!![]}),await rename(_0xe7f43b,_0x3c7714),_0x3c7714;}async function cleanupEmptyDirectories(_0xb2799f,_0x13af3d){const _0x380f60=a191_0x5a8010;let _0xfe8b4c=resolve(_0xb2799f);const _0x58266e=resolve(_0x13af3d);while(_0xfe8b4c[_0x380f60(0x123)](''+_0x58266e+sep)||_0xfe8b4c===_0x58266e){if(_0xfe8b4c===_0x58266e)return;try{const _0x1cf692=await readdir(_0xfe8b4c);if(_0x1cf692['length']>0x0)return;await rmdir(_0xfe8b4c);}catch{return;}_0xfe8b4c=dirname(_0xfe8b4c);}}async function resolveTargetDbBinding(_0x46c7b3,_0x44f9b6,_0x1c299e){const _0x5588fc=a191_0x5a8010,_0xf5bcf7=_0x44f9b6[_0x5588fc(0x11f)];if(!_0xf5bcf7)return{'dbId':_0x1c299e['dbId'],'dbName':_0x1c299e[_0x5588fc(0x12f)]};const _0x6ea123=buildDbDirectoryName(_0x1c299e[_0x5588fc(0x12f)],_0x1c299e[_0x5588fc(0x131)]);if(_0xf5bcf7===_0x6ea123)return{'dbId':_0x1c299e[_0x5588fc(0x131)],'dbName':_0x1c299e[_0x5588fc(0x12f)]};const _0x8f48b2=parseExplicitDbDirectory(_0xf5bcf7);if(_0x8f48b2!=null)return{'dbId':_0x8f48b2,'dbName':await getDbName(_0x46c7b3,_0x8f48b2)[_0x5588fc(0x137)](()=>undefined)};const _0x32fd22=await listDatabases(_0x46c7b3),_0x2b9a88=_0x32fd22[_0x5588fc(0x12b)](_0x200aef=>buildDbDirectoryName(_0x200aef[_0x5588fc(0x12f)],_0x200aef[_0x5588fc(0x131)])===_0xf5bcf7);if(_0x2b9a88[_0x5588fc(0x150)]===0x1)return{'dbId':_0x2b9a88[0x0][_0x5588fc(0x131)],'dbName':_0x2b9a88[0x0][_0x5588fc(0x12f)]};if(_0x2b9a88['length']===0x0)throw CliErrors['validation'](_0x5588fc(0x13b)+_0xf5bcf7+_0x5588fc(0x148)+_0x44f9b6['sqlCode']+'.');const _0x397663=_0x2b9a88[_0x5588fc(0x138)](_0x4595a9=>_0x4595a9[_0x5588fc(0x12f)]+'\x20('+_0x4595a9[_0x5588fc(0x131)]+')')[_0x5588fc(0x11d)](',\x20');throw CliErrors['validation']('Local\x20directory\x20\x22'+_0xf5bcf7+_0x5588fc(0x141)+_0x44f9b6['sqlCode']+':\x20'+_0x397663);}function parseExplicitDbDirectory(_0x1beb18){const _0x2d9dd3=a191_0x5a8010,_0xf0a9c1=/^db-(\d+)$/[_0x2d9dd3(0x13e)](_0x1beb18);if(!_0xf0a9c1)return null;const _0x2ca598=Number(_0xf0a9c1[0x1]);return Number['isFinite'](_0x2ca598)&&_0x2ca598>0x0?_0x2ca598:null;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a192_0x127128=a192_0x34ef;(function(_0x359453,_0x2437eb){const _0x55b676=a192_0x34ef,_0x275574=_0x359453();while(!![]){try{const _0x541b65=-parseInt(_0x55b676(0x151))/0x1+parseInt(_0x55b676(0x152))/0x2*(parseInt(_0x55b676(0x14d))/0x3)+-parseInt(_0x55b676(0x16d))/0x4+parseInt(_0x55b676(0x153))/0x5+-parseInt(_0x55b676(0x166))/0x6+-parseInt(_0x55b676(0x15d))/0x7*(-parseInt(_0x55b676(0x165))/0x8)+parseInt(_0x55b676(0x158))/0x9;if(_0x541b65===_0x2437eb)break;else _0x275574['push'](_0x275574['shift']());}catch(_0x2cc111){_0x275574['push'](_0x275574['shift']());}}}(a192_0x3357,0x1d1b7));import{createInterface}from'node:readline';import{join}from'node:path';import{buildDefaultSqlFileName,buildSqlRelativePath,detectSqlMode}from'../../core/sql-sync/utils.js';export const SQL_LOCAL_REL_DIR=a192_0x127128(0x14b);export function buildSqlLockEntry(_0x51ba05,_0x16a3f6,_0x480254,_0x12494e){const _0x59ce00=a192_0x127128,_0x5a889f=detectSqlMode(_0x16a3f6);return{'path':buildSqlRelativePath(_0x51ba05[_0x59ce00(0x15c)],_0x51ba05[_0x59ce00(0x159)],_0x12494e?.[_0x59ce00(0x161)],_0x5a889f,_0x51ba05['dbId']),'hash':_0x480254,'remoteId':_0x51ba05['id'],'version':_0x51ba05['version'],'dbId':Number(_0x51ba05['dbId']),'dbName':_0x12494e?.[_0x59ce00(0x161)],'sqlName':_0x51ba05['sqlName'],'sqlConfig':_0x51ba05[_0x59ce00(0x160)]??undefined,'mode':_0x5a889f};}function a192_0x34ef(_0x4cb715,_0x49a02a){_0x4cb715=_0x4cb715-0x147;const _0x33576e=a192_0x3357();let _0x34ef44=_0x33576e[_0x4cb715];return _0x34ef44;}export function cloneSqlLockData(_0x211482){const _0x47d613=a192_0x127128;return{'apps':Object[_0x47d613(0x150)](Object[_0x47d613(0x147)](_0x211482[_0x47d613(0x148)])[_0x47d613(0x167)](([_0x5de194,_0x583582])=>[_0x5de194,{'sqlRoot':_0x583582[_0x47d613(0x14e)],'lastSync':_0x583582[_0x47d613(0x170)],'sqls':{..._0x583582['sqls']}}]))};}export function ensureRemoteSqlContent(_0x1ca88f){const _0x4e5161=a192_0x127128;return _0x1ca88f[_0x4e5161(0x162)]??'';}export function buildLocalSqlFileContent(_0x24eb9b,_0x220aba,_0x27e77f){const _0x42f909=a192_0x127128,_0x539b93=_0x27e77f?.[_0x42f909(0x154)]??detectSqlMode(_0x220aba),_0x28cf6e=stripLocalSqlMetadata(_0x220aba,_0x539b93)['trim'](),_0x19a8f0=[...buildMetadataHeaderLines({'sqlCode':_0x24eb9b[_0x42f909(0x15c)],'sqlName':_0x24eb9b['sqlName'],'dbId':_0x24eb9b['dbId'],'dbName':_0x27e77f?.[_0x42f909(0x161)],'mode':_0x539b93,'syncedAt':_0x27e77f?.[_0x42f909(0x16e)],'description':_0x27e77f?.[_0x42f909(0x15f)]},_0x539b93),'',_0x28cf6e],_0x2d2427=_0x19a8f0[_0x42f909(0x14f)]('\x0a');return _0x2d2427[_0x42f909(0x15a)]('\x0a')?_0x2d2427:_0x2d2427+'\x0a';}export function stripLocalSqlMetadata(_0x5d9868,_0x30dd4a){const _0x198fd7=a192_0x127128,_0x510456=_0x5d9868['replace'](/\r\n/g,'\x0a')['split']('\x0a'),_0x3de52e=[];let _0x599384=0x0;if(_0x30dd4a===_0x198fd7(0x163))while(_0x599384<_0x510456[_0x198fd7(0x171)]){const _0x5445d4=_0x510456[_0x599384]??'';if(/^\s*<!--\s*@lovrabet\./['test'](_0x5445d4)){_0x599384++;continue;}if(_0x5445d4[_0x198fd7(0x168)]()===''&&_0x599384>0x0){_0x599384++;continue;}break;}else while(_0x599384<_0x510456[_0x198fd7(0x171)]){const _0x324fa1=_0x510456[_0x599384]??'';if(/^\s*--\s*@lovrabet\./['test'](_0x324fa1)){_0x599384++;continue;}if(_0x324fa1[_0x198fd7(0x168)]()===''&&_0x599384>0x0){_0x599384++;continue;}break;}for(;_0x599384<_0x510456[_0x198fd7(0x171)];_0x599384++){_0x3de52e['push'](_0x510456[_0x599384]);}return _0x3de52e['join']('\x0a')[_0x198fd7(0x16b)]();}export function resolveSqlMode(_0x2ec725,_0x26a5cf){const _0x142b18=a192_0x127128;if(_0x26a5cf?.[_0x142b18(0x154)])return _0x26a5cf[_0x142b18(0x154)];return detectSqlMode(_0x2ec725);}export function resolveSqlFileName(_0x2da964,_0x12303c,_0x21882f){const _0xee0b38=a192_0x127128;if(_0x21882f?.[_0xee0b38(0x14c)])return _0x21882f[_0xee0b38(0x14c)];if(_0x21882f?.[_0xee0b38(0x159)]||_0x21882f?.[_0xee0b38(0x161)])return buildSqlRelativePath(_0x2da964,_0x21882f?.[_0xee0b38(0x159)],_0x21882f?.[_0xee0b38(0x161)],resolveSqlMode(_0x12303c,_0x21882f),_0x21882f?.['dbId']);return buildDefaultSqlFileName(_0x2da964,resolveSqlMode(_0x12303c,_0x21882f));}export function resolveSqlLocalDir(_0x2113d3,_0x5a8ea2){return join(_0x2113d3,SQL_LOCAL_REL_DIR,_0x5a8ea2);}export async function confirmForceOverwrite(_0x45e8ef){const _0x18afe8=a192_0x127128,_0x3fe035=createInterface({'input':process[_0x18afe8(0x15b)],'output':process[_0x18afe8(0x16a)]}),_0x145922=await new Promise(_0x135c17=>{const _0x58e557=_0x18afe8;_0x3fe035[_0x58e557(0x16f)](_0x45e8ef+'\x20[y/N]\x20',_0x135c17);});return _0x3fe035[_0x18afe8(0x155)](),['y',_0x18afe8(0x14a)][_0x18afe8(0x169)](_0x145922[_0x18afe8(0x168)]()[_0x18afe8(0x157)]());}export function findSqlLockScope(_0x182c44,_0x5b2bfc){const _0x5a372a=a192_0x127128;return _0x182c44[_0x5a372a(0x148)][_0x5b2bfc];}function buildMetadataHeaderLines(_0x486074,_0x448be7){const _0x46fefa=a192_0x127128,_0x3b24ed=[[_0x46fefa(0x15c),_0x486074[_0x46fefa(0x15c)]],[_0x46fefa(0x159),_0x486074['sqlName']],[_0x46fefa(0x16c),_0x486074[_0x46fefa(0x16c)]],[_0x46fefa(0x161),_0x486074['dbName']],['mode',_0x486074['mode']],[_0x46fefa(0x16e),_0x486074['syncedAt']],[_0x46fefa(0x15f),_0x486074[_0x46fefa(0x15f)]]];if(_0x448be7===_0x46fefa(0x163))return _0x3b24ed[_0x46fefa(0x149)](([,_0x649cfe])=>_0x649cfe!==undefined&&_0x649cfe!==null&&String(_0x649cfe)['trim']()!=='')[_0x46fefa(0x167)](([_0x51c75f,_0x581231])=>_0x46fefa(0x156)+_0x51c75f+':\x20'+String(_0x581231)+_0x46fefa(0x15e));return _0x3b24ed[_0x46fefa(0x149)](([,_0x4b2553])=>_0x4b2553!==undefined&&_0x4b2553!==null&&String(_0x4b2553)['trim']()!=='')[_0x46fefa(0x167)](([_0xefad1b,_0x1f6cad])=>_0x46fefa(0x164)+_0xefad1b+':\x20'+String(_0x1f6cad));}function a192_0x3357(){const _0xd81569=['718839ZJHVvG','sqlName','endsWith','stdin','sqlCode','3983fvHlKS','\x20-->','description','sqlConfig','dbName','sqlContent','mybatisXml','--\x20@lovrabet.','3344LnQSbT','626820HmZnKx','map','trim','includes','stderr','trimStart','dbId','333548KXNFCj','syncedAt','question','lastSync','length','entries','apps','filter','yes','.rabetbase/sql','path','99369WRoWlJ','sqlRoot','join','fromEntries','110840udokBS','4kpmjnf','169805qAAcnP','mode','close','<!--\x20@lovrabet.','toLowerCase'];a192_0x3357=function(){return _0xd81569;};return a192_0x3357();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a193_0x1a8e4f=a193_0x9ba0;(function(_0x2fee2c,_0x1025f2){const _0x23e433=a193_0x9ba0,_0x1a5c2a=_0x2fee2c();while(!![]){try{const _0x256e45=-parseInt(_0x23e433(0x143))/0x1*(-parseInt(_0x23e433(0x137))/0x2)+parseInt(_0x23e433(0x147))/0x3*(parseInt(_0x23e433(0x134))/0x4)+-parseInt(_0x23e433(0x13b))/0x5*(parseInt(_0x23e433(0x146))/0x6)+parseInt(_0x23e433(0x14f))/0x7+-parseInt(_0x23e433(0x12d))/0x8+parseInt(_0x23e433(0x139))/0x9*(parseInt(_0x23e433(0x136))/0xa)+-parseInt(_0x23e433(0x140))/0xb;if(_0x256e45===_0x1025f2)break;else _0x1a5c2a['push'](_0x1a5c2a['shift']());}catch(_0x376bb9){_0x1a5c2a['push'](_0x1a5c2a['shift']());}}}(a193_0x46f4,0x659ed));import{listSqlQueries}from'../../core/api-client.js';function a193_0x46f4(){const _0x4b04fb=['Check\x20local\x20SQL\x20sync\x20status\x20against\x20lock\x20file','13JBeZAF','keys','tableData','6JSpqYc','1532631FSOezK','hash','path','sqlName','filePath','lockKey','sqls','bool','5378898xxAxNU','status','boolean','\x20added,\x20','sql','5497712RUCCkY','lockFilePath','map','sqlRoot','\x20unchanged','sqlCode','appCode','4ggSoqr','remote','1327370pCYcXV','41578HHaNWQ','push','27EYOsdh','length','4152415fbujiK','relativePath','\x20missing,\x20','All\x20SQL\x20queries\x20are\x20in\x20sync.','\x20modified,\x20','152075Uibtnp','has'];a193_0x46f4=function(){return _0x4b04fb;};return a193_0x46f4();}import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';function a193_0x9ba0(_0x50bcf5,_0x546358){_0x50bcf5=_0x50bcf5-0x12b;const _0x46f45a=a193_0x46f4();let _0x9ba050=_0x46f45a[_0x50bcf5];return _0x9ba050;}import{scanLocalSqlQueries}from'../../core/sql-sync/file-system.js';import{computeSqlFileHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile}from'../../core/sql-sync/lock.js';const PAGE_SIZE=0x64;async function fetchAllSqlCodes(_0x58a5c4){const _0x1db0f7=a193_0x9ba0,_0x360ae2=[];let _0x440735=0x1;while(!![]){const _0x471770=await listSqlQueries(_0x58a5c4,{'currentPage':_0x440735,'pageSize':PAGE_SIZE}),_0x2fa1be=_0x471770[_0x1db0f7(0x145)]??[];_0x360ae2[_0x1db0f7(0x138)](..._0x2fa1be[_0x1db0f7(0x12f)](_0x5ba464=>_0x5ba464[_0x1db0f7(0x132)]));if(_0x2fa1be['length']===0x0)break;const _0x148d8b=_0x471770['paging']?.['totalCount'];if(_0x148d8b!=null?_0x360ae2[_0x1db0f7(0x13a)]>=_0x148d8b:_0x2fa1be['length']<PAGE_SIZE)break;_0x440735++;}return _0x360ae2;}export const sqlStatus={'service':a193_0x1a8e4f(0x12c),'command':a193_0x1a8e4f(0x150),'description':a193_0x1a8e4f(0x142),'risk':'read','flags':[{'name':a193_0x1a8e4f(0x135),'type':a193_0x1a8e4f(0x151),'description':'Also\x20check\x20for\x20remote-only\x20SQL\x20queries\x20not\x20present\x20locally'}],async 'execute'(_0x25897c){const _0x220091=a193_0x1a8e4f,_0x22bfff=loadSqlProjectConfig(_0x25897c['appCode']),_0x154237=await readSqlLockFile(_0x22bfff[_0x220091(0x12e)]),{appLock:_0x583ebd}=ensureSqlLockScope(_0x154237??createEmptySqlLock(),_0x22bfff['appCode'],_0x22bfff[_0x220091(0x130)],_0x220091(0x150)),_0x2326b7=await scanLocalSqlQueries(_0x22bfff),_0x1d6257=[],_0x40f3d1=[],_0x1c66a8=[],_0x427267=[],_0x59954a=new Set(_0x2326b7[_0x220091(0x12f)](_0x2a466f=>_0x2a466f[_0x220091(0x14c)]));for(const _0x122060 of _0x2326b7){const _0x46ae85=await computeSqlFileHash(_0x122060[_0x220091(0x14b)]),_0x44a091=_0x583ebd[_0x220091(0x14d)][_0x122060[_0x220091(0x14c)]],_0x231e12=!!_0x44a091&&_0x44a091[_0x220091(0x149)]!==_0x122060[_0x220091(0x13c)],_0x56ee93=!!_0x44a091&&!!_0x122060[_0x220091(0x14a)]&&_0x44a091['sqlName']!==_0x122060[_0x220091(0x14a)];if(!_0x44a091)_0x1d6257['push'](_0x122060[_0x220091(0x14c)]);else _0x44a091[_0x220091(0x148)]!==_0x46ae85||_0x231e12||_0x56ee93?_0x40f3d1[_0x220091(0x138)](_0x122060[_0x220091(0x14c)]):_0x1c66a8[_0x220091(0x138)](_0x122060[_0x220091(0x14c)]);}for(const _0xec54fd of Object[_0x220091(0x144)](_0x583ebd[_0x220091(0x14d)])){!_0x59954a[_0x220091(0x141)](_0xec54fd)&&_0x427267[_0x220091(0x138)](_0xec54fd);}const _0x13a4c4=[];if(_0x25897c[_0x220091(0x14e)](_0x220091(0x135))){const _0x4fc627=await fetchAllSqlCodes(_0x25897c[_0x220091(0x133)]);for(const _0x17729a of _0x4fc627){!_0x59954a['has'](_0x17729a)&&!_0x583ebd[_0x220091(0x14d)][_0x17729a]&&_0x13a4c4[_0x220091(0x138)](_0x17729a);}}const _0x213e24=_0x1d6257['length']===0x0&&_0x40f3d1['length']===0x0&&_0x427267['length']===0x0&&_0x13a4c4['length']===0x0;return{'ok':!![],'data':{'added':_0x1d6257,'modified':_0x40f3d1,'missing':_0x427267,'unchanged':_0x1c66a8,'remoteOnly':_0x13a4c4},'message':_0x213e24?_0x220091(0x13e):_0x1d6257[_0x220091(0x13a)]+_0x220091(0x12b)+_0x40f3d1[_0x220091(0x13a)]+_0x220091(0x13f)+_0x427267[_0x220091(0x13a)]+_0x220091(0x13d)+_0x1c66a8[_0x220091(0x13a)]+_0x220091(0x131)+(_0x13a4c4[_0x220091(0x13a)]>0x0?',\x20'+_0x13a4c4[_0x220091(0x13a)]+'\x20remote-only':'')};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a194_0x6334(){const _0x2157e3=['schema:','read','SQL\x20schema\x20validation','Dataset\x20\x22','isArray','valid','map','sql','indexes','527887CmfpTV','sqlType','filter','dataset','tableName','toLowerCase','11936uJZtYx','str','flagMissing','dbtableConfig','fields','primary','columnNames','6RFZTKK','pkField','appCode','bool','validation','Provide\x20--file\x20or\x20--sql','11kfjTXN','tables','message','parameters','schemas','Validate\x20SQL\x20content\x20without\x20saving\x20(type\x20detection,\x20parameter\x20extraction,\x20optional\x20schema\x20check)','index_columns','80076MYNVbz','file','check-indexes','trim','name','string','get','isSelectOnly','type','\x22\x20not\x20found\x20in\x20any\x20dataset','size','2304VHBtHU','length','push','columns','reason','isDangerous','validate','File\x20not\x20found:\x20','utf-8','Inline\x20SQL\x20content\x20to\x20validate\x20(alternative\x20to\x20--file)','Audit\x20top-level\x20JOIN\x20equality\x20predicates\x20against\x20dataset\x20index\x20metadata','3656030ktqXlR','boolean','Comma-separated\x20dataset\x20codes\x20to\x20cross-check\x20table/column\x20names\x20against','schemaWarnings','4022950uuIJcP','10MedgPG','cwd','3REguWD','30739344VjYLjd','find','671084wNxHhd','\x22\x20not\x20found\x20or\x20not\x20accessible','from','Path\x20to\x20the\x20SQL\x20file\x20to\x20validate','indexName'];a194_0x6334=function(){return _0x2157e3;};return a194_0x6334();}const a194_0x2799c2=a194_0x38b3;(function(_0x550f8c,_0x925851){const _0x1ca9c7=a194_0x38b3,_0x9c1911=_0x550f8c();while(!![]){try{const _0x178988=-parseInt(_0x1ca9c7(0x1e1))/0x1+-parseInt(_0x1ca9c7(0x1d3))/0x2*(parseInt(_0x1ca9c7(0x1d0))/0x3)+-parseInt(_0x1ca9c7(0x1fb))/0x4*(-parseInt(_0x1ca9c7(0x1ce))/0x5)+parseInt(_0x1ca9c7(0x1ee))/0x6*(-parseInt(_0x1ca9c7(0x1c9))/0x7)+parseInt(_0x1ca9c7(0x1e7))/0x8*(-parseInt(_0x1ca9c7(0x206))/0x9)+-parseInt(_0x1ca9c7(0x1cd))/0xa*(parseInt(_0x1ca9c7(0x1f4))/0xb)+parseInt(_0x1ca9c7(0x1d1))/0xc;if(_0x178988===_0x925851)break;else _0x9c1911['push'](_0x9c1911['shift']());}catch(_0x352d80){_0x9c1911['push'](_0x9c1911['shift']());}}}(a194_0x6334,0x69644));import{readFileSync,existsSync}from'node:fs';import{resolve}from'node:path';import{validateSql}from'../../core/sql-validator.js';import{auditSqlJoinIndexes}from'../../core/sql-index-auditor.js';import{getDatasetDetail,listDatasets}from'../../core/api-client.js';function a194_0x38b3(_0x6236e9,_0x2174f9){_0x6236e9=_0x6236e9-0x1c4;const _0x6334a7=a194_0x6334();let _0x38b303=_0x6334a7[_0x6236e9];return _0x38b303;}import{CliErrors}from'../../errors.js';import{assertDatasetIsDbTableBacked,filterDbTableBackedDatasets}from'../../commands/dataset/capability.js';export const sqlValidate={'service':a194_0x2799c2(0x1df),'command':a194_0x2799c2(0x1c4),'description':a194_0x2799c2(0x1f9),'risk':a194_0x2799c2(0x1d9),'flags':[{'name':'file','type':'string','description':a194_0x2799c2(0x1d6)},{'name':a194_0x2799c2(0x1df),'type':a194_0x2799c2(0x200),'description':a194_0x2799c2(0x1c7)},{'name':'schemas','type':a194_0x2799c2(0x200),'description':a194_0x2799c2(0x1cb)},{'name':a194_0x2799c2(0x1fd),'type':a194_0x2799c2(0x1ca),'description':a194_0x2799c2(0x1c8)}],async 'execute'(_0x44282){const _0x518a60=a194_0x2799c2,_0x1a170c=_0x44282[_0x518a60(0x1e8)](_0x518a60(0x1fc)),_0x5c76cc=_0x44282[_0x518a60(0x1e8)](_0x518a60(0x1df)),_0x27e17d=_0x44282[_0x518a60(0x1e8)](_0x518a60(0x1f8)),_0x5010e6=_0x44282[_0x518a60(0x1f1)](_0x518a60(0x1fd));if(!_0x1a170c&&!_0x5c76cc)throw CliErrors[_0x518a60(0x1e9)](_0x518a60(0x1fc),_0x518a60(0x1f3));if(_0x5010e6&&!_0x27e17d)throw CliErrors[_0x518a60(0x1f2)]('--check-indexes\x20requires\x20--schemas.');let _0x17f30b;if(_0x1a170c){const _0x526591=resolve(process[_0x518a60(0x1cf)](),_0x1a170c);if(!existsSync(_0x526591))throw CliErrors[_0x518a60(0x1f2)](_0x518a60(0x1c5)+_0x526591);_0x17f30b=readFileSync(_0x526591,_0x518a60(0x1c6));}else _0x17f30b=_0x5c76cc;const _0x15ae52=validateSql(_0x17f30b),_0x313914={'valid':_0x15ae52[_0x518a60(0x1dd)],'sqlType':_0x15ae52[_0x518a60(0x1e2)][_0x518a60(0x203)],'isSelectOnly':_0x15ae52[_0x518a60(0x1e2)][_0x518a60(0x202)],'isDangerous':_0x15ae52[_0x518a60(0x1e2)][_0x518a60(0x20b)],'tables':_0x15ae52[_0x518a60(0x1f5)],'parameters':_0x15ae52[_0x518a60(0x1f7)],'message':_0x15ae52[_0x518a60(0x1f6)]};_0x15ae52[_0x518a60(0x1e2)][_0x518a60(0x20a)]&&(_0x313914[_0x518a60(0x20a)]=_0x15ae52['sqlType'][_0x518a60(0x20a)]);if(_0x27e17d&&_0x15ae52['valid']){const _0x188c06=_0x27e17d['split'](',')[_0x518a60(0x1de)](_0xd2e389=>_0xd2e389[_0x518a60(0x1fe)]())[_0x518a60(0x1e3)](Boolean),_0x39e4ad=[],_0x391a13=[],_0x545b0b=filterDbTableBackedDatasets(await listDatasets(_0x44282[_0x518a60(0x1f0)])),_0x189563=new Map(_0x545b0b[_0x518a60(0x1de)](_0x3a8fb7=>[_0x3a8fb7[_0x518a60(0x1ea)]?.[_0x518a60(0x1e5)]?.['toLowerCase'](),_0x3a8fb7]));for(const _0xd56a7d of _0x15ae52[_0x518a60(0x1f5)]){const _0x206209=_0x189563[_0x518a60(0x201)](_0xd56a7d[_0x518a60(0x1e6)]());!_0x206209&&_0x39e4ad[_0x518a60(0x208)]('Table\x20\x22'+_0xd56a7d+_0x518a60(0x204));}for(const _0x1d4f25 of _0x188c06){let _0x50602e;try{_0x50602e=await getDatasetDetail(_0x1d4f25);}catch{_0x39e4ad[_0x518a60(0x208)](_0x518a60(0x1db)+_0x1d4f25+_0x518a60(0x1d4));continue;}assertDatasetIsDbTableBacked(_0x50602e,_0x518a60(0x1da));const _0x1e2e91=Array[_0x518a60(0x1dc)](_0x50602e[_0x518a60(0x1eb)])?_0x50602e[_0x518a60(0x1eb)]:[],_0x4c06ce=new Set(_0x1e2e91[_0x518a60(0x1de)](_0x29c4c6=>_0x29c4c6[_0x518a60(0x1ff)]?.[_0x518a60(0x1e6)]())),_0xd36611=_0x50602e[_0x518a60(0x1ea)]?.[_0x518a60(0x1e5)]||_0x50602e[_0x518a60(0x1e5)]||_0x1d4f25;_0x313914[_0x518a60(0x1d8)+_0xd36611]={'code':_0x1d4f25,'tableName':_0xd36611,'fieldCount':_0x4c06ce[_0x518a60(0x205)],'fields':Array[_0x518a60(0x1d5)](_0x4c06ce)};if(_0x5010e6){const _0x558e1b=normalizeDatasetIndexes(_0x50602e);_0x391a13[_0x518a60(0x208)]({'tableName':_0xd36611,..._0x558e1b});}}_0x39e4ad[_0x518a60(0x207)]>0x0&&(_0x313914[_0x518a60(0x1cc)]=_0x39e4ad),_0x5010e6&&(_0x313914['joinAudit']=auditSqlJoinIndexes(_0x17f30b,_0x391a13));}return{'ok':_0x15ae52[_0x518a60(0x1dd)],'data':_0x313914,'message':_0x15ae52[_0x518a60(0x1f6)]};}};function normalizeDatasetIndexes(_0x5b88ce){const _0x23c0ea=a194_0x2799c2,_0x21659b=Array['isArray'](_0x5b88ce?.[_0x23c0ea(0x1e4)]?.['indexes'])?_0x5b88ce[_0x23c0ea(0x1e4)][_0x23c0ea(0x1e0)]:Array[_0x23c0ea(0x1dc)](_0x5b88ce?.[_0x23c0ea(0x1e0)])?_0x5b88ce[_0x23c0ea(0x1e0)]:[],_0x1ca799=_0x21659b['flatMap'](_0x310ee0=>{const _0x54df56=_0x23c0ea,_0x4eaf77=Array[_0x54df56(0x1dc)](_0x310ee0?.[_0x54df56(0x1fa)])?_0x310ee0['index_columns']:Array[_0x54df56(0x1dc)](_0x310ee0?.[_0x54df56(0x1ed)])?_0x310ee0[_0x54df56(0x1ed)]:Array[_0x54df56(0x1dc)](_0x310ee0?.[_0x54df56(0x209)])?_0x310ee0[_0x54df56(0x209)]:[],_0x2c2ecf=_0x4eaf77[_0x54df56(0x1e3)](_0xc0ebce=>typeof _0xc0ebce===_0x54df56(0x200))['map'](_0xd6eb92=>_0xd6eb92[_0x54df56(0x1fe)]())[_0x54df56(0x1e3)](Boolean);if(_0x2c2ecf[_0x54df56(0x207)]===0x0)return[];const _0x357aef=[_0x310ee0?.[_0x54df56(0x1d7)],_0x310ee0?.['index_name'],_0x310ee0?.[_0x54df56(0x1ff)]][_0x54df56(0x1d2)](_0x2f93fb=>typeof _0x2f93fb===_0x54df56(0x200)&&_0x2f93fb['trim']()),_0x1314b6=[_0x310ee0?.['index_type'],_0x310ee0?.[_0x54df56(0x203)]][_0x54df56(0x1d2)](_0x126697=>typeof _0x126697===_0x54df56(0x200)&&_0x126697[_0x54df56(0x1fe)]());return[{..._0x357aef?{'name':_0x357aef['trim']()}:{},..._0x1314b6?{'type':_0x1314b6[_0x54df56(0x1fe)]()}:{},'columns':_0x2c2ecf}];}),_0x1c675e=[..._0x1ca799],_0x49cdc6=typeof _0x5b88ce?.[_0x23c0ea(0x1ea)]?.['pkField']===_0x23c0ea(0x200)?_0x5b88ce[_0x23c0ea(0x1ea)][_0x23c0ea(0x1ef)]['split'](',')[_0x23c0ea(0x1de)](_0x8c28b6=>_0x8c28b6[_0x23c0ea(0x1fe)]())[_0x23c0ea(0x1e3)](Boolean):[];return _0x49cdc6[_0x23c0ea(0x207)]>0x0&&_0x1c675e['unshift']({'type':_0x23c0ea(0x1ec),'columns':_0x49cdc6}),{'indexes':_0x1c675e,'metadataAvailable':_0x1ca799[_0x23c0ea(0x207)]>0x0};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a195_0x3844(){const _0x22f9d2=['3876687ceZrcd','5567709HrfEXg','50WcgVak','212547MimvRf','16WaUjoF','431004ANMRvQ','45tdZLaF','2210104cHUVIJ','145041GKUhKB','238362MbgADt'];a195_0x3844=function(){return _0x22f9d2;};return a195_0x3844();}function a195_0x56e4(_0x22d3e4,_0x109f27){_0x22d3e4=_0x22d3e4-0x107;const _0x3844e0=a195_0x3844();let _0x56e4dd=_0x3844e0[_0x22d3e4];return _0x56e4dd;}(function(_0x228840,_0x4dc507){const _0x32ab2c=a195_0x56e4,_0x3f268b=_0x228840();while(!![]){try{const _0x231c42=-parseInt(_0x32ab2c(0x10c))/0x1+parseInt(_0x32ab2c(0x109))/0x2+-parseInt(_0x32ab2c(0x107))/0x3*(parseInt(_0x32ab2c(0x108))/0x4)+parseInt(_0x32ab2c(0x10a))/0x5*(-parseInt(_0x32ab2c(0x10d))/0x6)+-parseInt(_0x32ab2c(0x10f))/0x7+-parseInt(_0x32ab2c(0x10b))/0x8+parseInt(_0x32ab2c(0x10e))/0x9*(parseInt(_0x32ab2c(0x110))/0xa);if(_0x231c42===_0x4dc507)break;else _0x3f268b['push'](_0x3f268b['shift']());}catch(_0x26c8fc){_0x3f268b['push'](_0x3f268b['shift']());}}}(a195_0x3844,0x7ce63));import{taskStatus}from'../../commands/task/status.js';export const taskDefinitions=[taskStatus];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a196_0x8477(_0x2ef8e4,_0x4bd6f8){_0x2ef8e4=_0x2ef8e4-0x108;const _0x6625e3=a196_0x6625();let _0x8477aa=_0x6625e3[_0x2ef8e4];return _0x8477aa;}const a196_0x5e3ede=a196_0x8477;function a196_0x6625(){const _0x36f88c=[',\x20received\x20','1035374curIkH','compress','read','task-id','taskId','string','2819889BOscsC','isTerminal','10424226ZkcQhs','4tbHOTz','2VzboXQ','task','status','Task\x20status\x20response\x20id\x20mismatch:\x20requested\x20','appCode','6904528owDBdr','Query\x20an\x20asynchronous\x20task;\x20repeat\x20for\x20PENDING\x20or\x20PROCESSING\x20until\x20SUCCESS\x20or\x20FAILED','69155xntsHt','flagMissing','33522363BfYbvs','trim','cookie','str','556066CLRMjl'];a196_0x6625=function(){return _0x36f88c;};return a196_0x6625();}(function(_0x54b8b4,_0x187458){const _0x24b41f=a196_0x8477,_0xa73ea7=_0x54b8b4();while(!![]){try{const _0x43dbab=-parseInt(_0x24b41f(0x11d))/0x1*(parseInt(_0x24b41f(0x10e))/0x2)+-parseInt(_0x24b41f(0x10a))/0x3*(parseInt(_0x24b41f(0x10d))/0x4)+-parseInt(_0x24b41f(0x115))/0x5+-parseInt(_0x24b41f(0x10c))/0x6+parseInt(_0x24b41f(0x11b))/0x7+parseInt(_0x24b41f(0x113))/0x8+parseInt(_0x24b41f(0x117))/0x9;if(_0x43dbab===_0x187458)break;else _0xa73ea7['push'](_0xa73ea7['shift']());}catch(_0xf1aa76){_0xa73ea7['push'](_0xa73ea7['shift']());}}}(a196_0x6625,0xe5a80));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asyncTaskMessage,buildAsyncTaskStatusCommand,normalizeAsyncTask}from'../../commands/common/async-task.js';import{getAsyncTaskStatus}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';export const taskStatus={'service':a196_0x5e3ede(0x10f),'command':a196_0x5e3ede(0x110),'description':a196_0x5e3ede(0x114),'risk':a196_0x5e3ede(0x11f),'defaultOutputFormat':a196_0x5e3ede(0x11e),'structuredErrors':!![],'flags':[{'name':'task-id','type':a196_0x5e3ede(0x109),'required':!![],'description':'Task\x20id\x20returned\x20by\x20an\x20asynchronous\x20platform\x20command'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x6f88c3){const _0x452835=a196_0x5e3ede;if(!_0x6f88c3['str']('task-id')[_0x452835(0x118)]())throw CliErrors[_0x452835(0x116)](_0x452835(0x120));},async 'execute'(_0x1da533){const _0x64519=a196_0x5e3ede,_0x5f442a=_0x1da533[_0x64519(0x11a)](_0x64519(0x120))[_0x64519(0x118)](),_0x45d662=normalizeAsyncTask(await getAsyncTaskStatus(_0x5f442a,_0x1da533['appCode'],_0x1da533[_0x64519(0x119)]));if(_0x45d662[_0x64519(0x108)]!==_0x5f442a)throw CliErrors['apiError'](_0x64519(0x111)+_0x5f442a+_0x64519(0x11c)+_0x45d662[_0x64519(0x108)]+'.');const _0x31072d=buildAsyncTaskStatusCommand(_0x45d662[_0x64519(0x108)],_0x1da533[_0x64519(0x112)]);return{'ok':!![],'message':asyncTaskMessage(_0x45d662),'data':{'appCode':_0x1da533[_0x64519(0x112)],..._0x45d662,'query':_0x45d662[_0x64519(0x10b)]?null:{'command':_0x31072d}}};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x51c577,_0x364637){const _0x5c03d1=a197_0x25b3,_0x1ad78e=_0x51c577();while(!![]){try{const _0x5f37de=-parseInt(_0x5c03d1(0xf0))/0x1*(-parseInt(_0x5c03d1(0xec))/0x2)+-parseInt(_0x5c03d1(0xf3))/0x3*(parseInt(_0x5c03d1(0xef))/0x4)+parseInt(_0x5c03d1(0xed))/0x5*(-parseInt(_0x5c03d1(0xe8))/0x6)+parseInt(_0x5c03d1(0xe9))/0x7*(parseInt(_0x5c03d1(0xf1))/0x8)+-parseInt(_0x5c03d1(0xf2))/0x9*(-parseInt(_0x5c03d1(0xea))/0xa)+-parseInt(_0x5c03d1(0xeb))/0xb+parseInt(_0x5c03d1(0xee))/0xc;if(_0x5f37de===_0x364637)break;else _0x1ad78e['push'](_0x1ad78e['shift']());}catch(_0x5808ef){_0x1ad78e['push'](_0x1ad78e['shift']());}}}(a197_0x305d,0x51a36));import{tenantMembersListDefinition}from'../../commands/tenant/members-list.js';function a197_0x25b3(_0x5eac83,_0x2cdbde){_0x5eac83=_0x5eac83-0xe8;const _0x305d0d=a197_0x305d();let _0x25b375=_0x305d0d[_0x5eac83];return _0x25b375;}function a197_0x305d(){const _0x15a9fb=['229930qjNXDG','3611289FWAuKs','717254GqZddE','485ygRxjK','5090748fEGcsG','11828XFffpF','1BPTNLM','8JYlzHn','18OHJRra','225yBBKUL','16866hXkuOm','2298023NGtyLX'];a197_0x305d=function(){return _0x15a9fb;};return a197_0x305d();}export const tenantDefinitions=[tenantMembersListDefinition];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a198_0x638183=a198_0x1267;function a198_0x351f(){const _0x465b6b=['2007mwTsnD','Found\x20','1595ykaKAI','186484LIHEIg','members-list','tenant','length','str','15496awClTM','78010hXNPfC','List\x20members\x20of\x20a\x20tenant\x20available\x20to\x20the\x20current\x20account','6ZzSUVP','174DFDpVf','Exact\x20tenant\x20code','Pass\x20--tenant-code\x20<code>.','trim','3676064IDXayL','329638XiTEaw','1709105Dlsfpn','8948EDSzjC','tenant-code','flagMissing'];a198_0x351f=function(){return _0x465b6b;};return a198_0x351f();}function a198_0x1267(_0x112f2c,_0x402a7b){_0x112f2c=_0x112f2c-0x156;const _0x351fc1=a198_0x351f();let _0x1267e4=_0x351fc1[_0x112f2c];return _0x1267e4;}(function(_0x5818f8,_0x1212a4){const _0x503ba0=a198_0x1267,_0x347a49=_0x5818f8();while(!![]){try{const _0x526ca3=parseInt(_0x503ba0(0x161))/0x1+parseInt(_0x503ba0(0x159))/0x2+parseInt(_0x503ba0(0x16a))/0x3*(parseInt(_0x503ba0(0x15b))/0x4)+-parseInt(_0x503ba0(0x15a))/0x5*(parseInt(_0x503ba0(0x169))/0x6)+-parseInt(_0x503ba0(0x158))/0x7+parseInt(_0x503ba0(0x166))/0x8*(-parseInt(_0x503ba0(0x15e))/0x9)+parseInt(_0x503ba0(0x167))/0xa*(parseInt(_0x503ba0(0x160))/0xb);if(_0x526ca3===_0x1212a4)break;else _0x347a49['push'](_0x347a49['shift']());}catch(_0x2c53ae){_0x347a49['push'](_0x347a49['shift']());}}}(a198_0x351f,0x4c7b6));import{listCurrentUserTenantMemberships,listTenantDirectoryMembers}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{assertTenantAccessible,projectTenantMembers}from'../../commands/tenant/shared.js';export const tenantMembersListDefinition={'service':a198_0x638183(0x163),'command':a198_0x638183(0x162),'description':a198_0x638183(0x168),'risk':'read','requiresAuth':!![],'requiresAppCode':![],'structuredErrors':!![],'flags':[{'name':'tenant-code','type':'string','required':!![],'description':a198_0x638183(0x16b)}],async 'validate'(_0x2fd80d){const _0x12922f=a198_0x638183;if(!_0x2fd80d[_0x12922f(0x165)](_0x12922f(0x15c))['trim']())throw CliErrors[_0x12922f(0x15d)](_0x12922f(0x15c),_0x12922f(0x156));},async 'execute'(_0x15fcfb){const _0x3ac5f7=a198_0x638183,_0x1d1da6=_0x15fcfb['str'](_0x3ac5f7(0x15c))[_0x3ac5f7(0x157)](),_0x50f5aa=await listCurrentUserTenantMemberships();assertTenantAccessible(_0x1d1da6,_0x50f5aa);const _0x2a39d4=projectTenantMembers(await listTenantDirectoryMembers(_0x1d1da6));return{'ok':!![],'data':{'tenantCode':_0x1d1da6,'items':_0x2a39d4,'totalCount':_0x2a39d4[_0x3ac5f7(0x164)]},'message':_0x3ac5f7(0x15f)+_0x2a39d4[_0x3ac5f7(0x164)]+'\x20tenant\x20member(s)'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3bac62,_0x1a5f0a){const _0x5c9d31=a199_0x4953,_0x58ecf4=_0x3bac62();while(!![]){try{const _0x5ceae4=-parseInt(_0x5c9d31(0xe4))/0x1*(-parseInt(_0x5c9d31(0xea))/0x2)+parseInt(_0x5c9d31(0xef))/0x3*(-parseInt(_0x5c9d31(0xf1))/0x4)+parseInt(_0x5c9d31(0xed))/0x5+parseInt(_0x5c9d31(0xec))/0x6+parseInt(_0x5c9d31(0xe6))/0x7+parseInt(_0x5c9d31(0xf2))/0x8+-parseInt(_0x5c9d31(0xdd))/0x9;if(_0x5ceae4===_0x1a5f0a)break;else _0x58ecf4['push'](_0x58ecf4['shift']());}catch(_0x891a44){_0x58ecf4['push'](_0x58ecf4['shift']());}}}(a199_0x20a7,0x9dd5d));import{CliErrors}from'../../errors.js';function textOrNull(_0x2789ed){const _0x42dac8=a199_0x4953,_0x5f345d=_0x2789ed?.[_0x42dac8(0xf3)]();return _0x5f345d?_0x5f345d:null;}function a199_0x20a7(){const _0x193de4=['tenantCode','3874275DdOrDi','userId','sort','some','nickname','validation','username','371097uNQcyp','Tenant\x20\x22','2298688FrsFML','adminFlag','isFinite','set','4KkObFk','\x22\x20is\x20not\x20available\x20to\x20the\x20current\x20account.','188916YCcsBl','16760ggEqbH','role','9VpiIeh','values','998372mHtDFB','5762648EQASUx','trim','MEMBER','ADMIN','status'];a199_0x20a7=function(){return _0x193de4;};return a199_0x20a7();}function a199_0x4953(_0x1efea7,_0x5e7771){_0x1efea7=_0x1efea7-0xda;const _0x20a7de=a199_0x20a7();let _0x495365=_0x20a7de[_0x1efea7];return _0x495365;}export function projectTenantMembers(_0x2bba2b){const _0x4c8cd8=a199_0x4953,_0x120b3d=new Map();for(const _0x4c3791 of _0x2bba2b){const _0x344f8d=Number(_0x4c3791['userId']);if(!Number[_0x4c8cd8(0xe8)](_0x344f8d)||_0x344f8d<=0x0)continue;const _0x52cbdc={'userId':_0x344f8d,'username':textOrNull(_0x4c3791[_0x4c8cd8(0xe3)]),'displayName':textOrNull(_0x4c3791[_0x4c8cd8(0xe1)]),'role':_0x4c3791[_0x4c8cd8(0xe7)]===!![]?_0x4c8cd8(0xda):_0x4c8cd8(0xf4),'status':textOrNull(_0x4c3791['status'])},_0x51a438=_0x120b3d['get'](_0x344f8d);if(!_0x51a438){_0x120b3d[_0x4c8cd8(0xe9)](_0x344f8d,_0x52cbdc);continue;}_0x51a438[_0x4c8cd8(0xe3)]??=_0x52cbdc[_0x4c8cd8(0xe3)],_0x51a438['displayName']??=_0x52cbdc['displayName'],_0x51a438[_0x4c8cd8(0xdb)]??=_0x52cbdc[_0x4c8cd8(0xdb)];if(_0x52cbdc[_0x4c8cd8(0xee)]===_0x4c8cd8(0xda))_0x51a438[_0x4c8cd8(0xee)]=_0x4c8cd8(0xda);}return[..._0x120b3d[_0x4c8cd8(0xf0)]()][_0x4c8cd8(0xdf)]((_0x15e15a,_0x4709e0)=>_0x15e15a[_0x4c8cd8(0xde)]-_0x4709e0['userId']);}export function assertTenantAccessible(_0x2d0eab,_0xb6cbe7){const _0x2f7286=a199_0x4953;if(_0xb6cbe7[_0x2f7286(0xe0)](_0x1f33df=>_0x1f33df[_0x2f7286(0xdc)]===_0x2d0eab))return;throw CliErrors[_0x2f7286(0xe2)](_0x2f7286(0xe5)+_0x2d0eab+_0x2f7286(0xeb),'Check\x20--tenant-code\x20or\x20login\x20with\x20an\x20account\x20that\x20belongs\x20to\x20this\x20tenant.');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a200_0x2b14(){const _0x1da8f2=['DingTalk\x20sandbox\x20account\x20binding\x20was\x20not\x20confirmed.','DingTalk\x20user\x20id\x20returned\x20by\x20the\x20sandbox','81983JYBtol','ding-talk-user-id','POST','The\x20current\x20binding\x20is\x20not\x20exposed\x20by\x20the\x20server;\x20before\x20is\x20unavailable.','1042KqHRBq','1490bKLFxT','trim','write','7499754iMTQPV','--ding-talk-user-id\x20cannot\x20be\x20empty.','2985088PINadh','dingding-sandbox-bind','147MOQXxY','validation','1146QzQwrL','Retry\x20with\x20the\x20same\x20--ding-talk-user-id\x20only\x20after\x20checking\x20the\x20current\x20platform\x20session.','Pass\x20the\x20DingTalk\x20user\x20id\x20returned\x20by\x20the\x20sandbox.','Bind\x20the\x20current\x20platform\x20user\x20to\x20a\x20DingTalk\x20sandbox\x20account','282148UZTCly','2548776QOlYrr','95IeKGWw','208596kBfYxV','Bound\x20current\x20user\x20to\x20DingTalk\x20sandbox\x20account.','user-account','apiError','dingtalk'];a200_0x2b14=function(){return _0x1da8f2;};return a200_0x2b14();}const a200_0x3f4f1b=a200_0x22de;(function(_0x45dc4d,_0x29cd24){const _0x2d651e=a200_0x22de,_0x51e9e7=_0x45dc4d();while(!![]){try{const _0x4c80d1=-parseInt(_0x2d651e(0x1c6))/0x1*(-parseInt(_0x2d651e(0x1d8))/0x2)+parseInt(_0x2d651e(0x1cb))/0x3+parseInt(_0x2d651e(0x1ca))/0x4*(-parseInt(_0x2d651e(0x1cc))/0x5)+-parseInt(_0x2d651e(0x1cd))/0x6*(-parseInt(_0x2d651e(0x1e0))/0x7)+-parseInt(_0x2d651e(0x1de))/0x8+-parseInt(_0x2d651e(0x1dc))/0x9+parseInt(_0x2d651e(0x1d9))/0xa*(parseInt(_0x2d651e(0x1d4))/0xb);if(_0x4c80d1===_0x29cd24)break;else _0x51e9e7['push'](_0x51e9e7['shift']());}catch(_0x1ef313){_0x51e9e7['push'](_0x51e9e7['shift']());}}}(a200_0x2b14,0xb4cf4));import{asDryRunResult}from'../../commands/common/dry-run.js';import{bindDingTalkSandboxAccount,DING_TALK_SANDBOX_BIND_PATH}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';const PROVIDER_ID=a200_0x3f4f1b(0x1d1),CURRENT_BINDING_WARNING=a200_0x3f4f1b(0x1d7);function readDingTalkUserId(_0x503c28){const _0x4a501c=a200_0x3f4f1b,_0x208afb=_0x503c28['str'](_0x4a501c(0x1d5))[_0x4a501c(0x1da)]();if(!_0x208afb)throw CliErrors[_0x4a501c(0x1e1)](_0x4a501c(0x1dd),_0x4a501c(0x1c8));return _0x208afb;}function buildBindingData(_0x2e13a9,_0x1c221f){const _0x4cf5fe=a200_0x3f4f1b;return{'operation':'bind','selector':{'providerId':PROVIDER_ID,'dingTalkUserId':_0x2e13a9},'before':null,'after':{'providerId':PROVIDER_ID,'dingTalkUserId':_0x2e13a9,'bound':!![]},'dryRun':_0x1c221f,'backend':{'method':_0x4cf5fe(0x1d6),'path':DING_TALK_SANDBOX_BIND_PATH},'warnings':[CURRENT_BINDING_WARNING]};}function a200_0x22de(_0x42ab54,_0x3cbc77){_0x42ab54=_0x42ab54-0x1c6;const _0x2b14d8=a200_0x2b14();let _0x22de30=_0x2b14d8[_0x42ab54];return _0x22de30;}export const dingTalkSandboxBind={'service':a200_0x3f4f1b(0x1cf),'command':a200_0x3f4f1b(0x1df),'description':a200_0x3f4f1b(0x1c9),'risk':a200_0x3f4f1b(0x1db),'requiresAuth':!![],'requiresAppCode':![],'structuredErrors':!![],'flags':[{'name':'ding-talk-user-id','type':'string','required':!![],'description':a200_0x3f4f1b(0x1d3)}],async 'validate'(_0x3eeb9c){readDingTalkUserId(_0x3eeb9c);},async 'dryRun'(_0x28bb07){const _0x369030=a200_0x3f4f1b,_0x51da0d=readDingTalkUserId(_0x28bb07);return asDryRunResult(buildBindingData(_0x51da0d,!![]),{'method':_0x369030(0x1d6),'url':DING_TALK_SANDBOX_BIND_PATH});},async 'execute'(_0x185d8a){const _0x31f466=a200_0x3f4f1b,_0x1c9665=readDingTalkUserId(_0x185d8a),_0x2653c6=await bindDingTalkSandboxAccount(_0x1c9665);if(_0x2653c6!==!![])throw CliErrors[_0x31f466(0x1d0)](_0x31f466(0x1d2),_0x31f466(0x1c7));return{'ok':!![],'data':buildBindingData(_0x1c9665,![]),'message':_0x31f466(0x1ce)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x246734,_0x5915e0){const _0x1fa7ca=a201_0x4f77,_0xda965a=_0x246734();while(!![]){try{const _0x5db8da=-parseInt(_0x1fa7ca(0x1e3))/0x1+parseInt(_0x1fa7ca(0x1df))/0x2*(parseInt(_0x1fa7ca(0x1e0))/0x3)+parseInt(_0x1fa7ca(0x1e1))/0x4*(parseInt(_0x1fa7ca(0x1e5))/0x5)+parseInt(_0x1fa7ca(0x1e6))/0x6+parseInt(_0x1fa7ca(0x1e7))/0x7+parseInt(_0x1fa7ca(0x1e2))/0x8+-parseInt(_0x1fa7ca(0x1e4))/0x9;if(_0x5db8da===_0x5915e0)break;else _0xda965a['push'](_0xda965a['shift']());}catch(_0x5b74a4){_0xda965a['push'](_0xda965a['shift']());}}}(a201_0x47a5,0x3fc57));import{dingTalkSandboxBind}from'../../commands/user-account/dingding-sandbox-bind.js';function a201_0x47a5(){const _0x2bd8c6=['184971etwtht','6887502nrVLof','891875ELnjZM','1485114BjOwnF','182896yrxYJS','341102wKMCVL','6HfzuyO','4rGfQXK','3346656xVAomV'];a201_0x47a5=function(){return _0x2bd8c6;};return a201_0x47a5();}function a201_0x4f77(_0x2c2c20,_0x40de80){_0x2c2c20=_0x2c2c20-0x1df;const _0x47a516=a201_0x47a5();let _0x4f7755=_0x47a516[_0x2c2c20];return _0x4f7755;}export const userAccountDefinitions=[dingTalkSandboxBind];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a202_0x181b(_0x103f20,_0x10b2d9){_0x103f20=_0x103f20-0x140;const _0x196127=a202_0x1961();let _0x181b74=_0x196127[_0x103f20];return _0x181b74;}const a202_0x4ed65c=a202_0x181b;(function(_0x195024,_0x31d826){const _0x4b93c4=a202_0x181b,_0x372047=_0x195024();while(!![]){try{const _0x4d4f70=-parseInt(_0x4b93c4(0x148))/0x1+-parseInt(_0x4b93c4(0x142))/0x2+parseInt(_0x4b93c4(0x145))/0x3*(-parseInt(_0x4b93c4(0x149))/0x4)+-parseInt(_0x4b93c4(0x140))/0x5*(parseInt(_0x4b93c4(0x14d))/0x6)+parseInt(_0x4b93c4(0x14a))/0x7+-parseInt(_0x4b93c4(0x143))/0x8*(-parseInt(_0x4b93c4(0x144))/0x9)+parseInt(_0x4b93c4(0x141))/0xa;if(_0x4d4f70===_0x31d826)break;else _0x372047['push'](_0x372047['shift']());}catch(_0x4b37e4){_0x372047['push'](_0x372047['shift']());}}}(a202_0x1961,0x23854));function a202_0x1961(){const _0x59c9b1=['App\x20profile\x20name','5HtrCty','6049890OJPNLq','285266pjImBl','2104uVvYgQ','3384aCOUAI','1032lTmPVs','name','Register\x20an\x20app\x20profile\x20in\x20the\x20current\x20workspace\x20(or\x20--global)','124171gebZcO','3148qwTxSU','1849323NXHUXy','workspace\x20add','write','1710252uyByLt'];a202_0x1961=function(){return _0x59c9b1;};return a202_0x1961();}import{buildAppAddFlags,runAppAdd,validateAppName}from'../../commands/common/app-registry.js';export const workspaceAddDefinition={'service':'workspace','command':'add','description':a202_0x4ed65c(0x147),'risk':a202_0x4ed65c(0x14c),'requiresAuth':![],'requiresAppCode':![],'args':[{'name':a202_0x4ed65c(0x146),'description':a202_0x4ed65c(0x14e),'required':!![]}],'flags':buildAppAddFlags(),'validate':_0x266ff3=>validateAppName(_0x266ff3,'workspace\x20add'),'execute':_0x1f1867=>runAppAdd(_0x1f1867,a202_0x4ed65c(0x14b))};
|