@lovrabet/rabetbase-cli 2.5.0-beta.4 → 2.5.0-beta.5
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +28 -0
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/api/generate-sdk-config-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/members-list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/async-task.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/delete.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/dataset/business-group-update.js +1 -1
- package/lib/commands/dataset/business-groups.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff-refresh-start.js +1 -1
- package/lib/commands/db/diff-refresh-status.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/table-diff-shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/kb/create.js +1 -1
- package/lib/commands/kb/delete.js +1 -1
- package/lib/commands/kb/detail.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/kb/list.js +1 -1
- package/lib/commands/kb/search.js +1 -1
- package/lib/commands/kb/shared.js +1 -1
- package/lib/commands/kb/update.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/mutations.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/visibility-update.js +1 -1
- package/lib/commands/notification/config-create.js +1 -1
- package/lib/commands/notification/config-delete.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/config-update.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/page/create.js +1 -1
- package/lib/commands/page/custom/detail.js +1 -1
- package/lib/commands/page/custom/list.js +1 -1
- package/lib/commands/page/custom/publish.js +1 -1
- package/lib/commands/page/custom/shared.js +1 -1
- package/lib/commands/page/custom/syntax.js +1 -1
- package/lib/commands/page/custom/template.js +1 -1
- package/lib/commands/page/custom/update.js +1 -1
- package/lib/commands/page/data-list-status.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/restore.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/materialize-project-template.js +1 -1
- package/lib/commands/project/create/project-name.js +1 -1
- package/lib/commands/project/create/project-template-archive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/shared.js +1 -1
- package/lib/commands/sql/status.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/task/index.js +1 -1
- package/lib/commands/task/status.js +1 -1
- package/lib/commands/tenant/index.js +1 -1
- package/lib/commands/tenant/members-list.js +1 -1
- package/lib/commands/tenant/shared.js +1 -1
- package/lib/commands/user-account/dingding-sandbox-bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-index-auditor.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/error-output.js +1 -1
- package/lib/framework/explicit-yes.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/rabetbase/SKILL.md +1 -1
- package/skills/rabetbase.manifest.json +3 -3
package/lib/commands/sql/pull.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a191_0x58ac86=a191_0xdc89;(function(_0x3401d2,_0x1a07fb){const _0xc10ce=a191_0xdc89,_0x295fe7=_0x3401d2();while(!![]){try{const _0x45c7f0=-parseInt(_0xc10ce(0x217))/0x1+parseInt(_0xc10ce(0x209))/0x2*(-parseInt(_0xc10ce(0x205))/0x3)+parseInt(_0xc10ce(0x218))/0x4*(-parseInt(_0xc10ce(0x20d))/0x5)+parseInt(_0xc10ce(0x20c))/0x6+-parseInt(_0xc10ce(0x216))/0x7+-parseInt(_0xc10ce(0x220))/0x8+parseInt(_0xc10ce(0x201))/0x9;if(_0x45c7f0===_0x1a07fb)break;else _0x295fe7['push'](_0x295fe7['shift']());}catch(_0x2ab059){_0x295fe7['push'](_0x295fe7['shift']());}}}(a191_0x372b,0x20ab6));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';function a191_0x372b(){const _0x1f86e5=['filter','sqlRoot','unchanged','dbId','utf8','246360ceteDq','sql','read','apps','Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.','skipped','message','cancelled','sqlRootDir','pull','test','name','totalCount','lockFilePath','catch','sqlcode','lastSync','Would\x20pull\x20','Force\x20overwrite\x20local\x20unsynced\x20changes','Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','split','force','description','appCode','/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','push','sqls','No\x20remote\x20SQL\x20queries\x20matched.','conflict','toISOString','trimStart','3113091bEJIwE','POST','\x20skipped,\x20','length','12VUHDGo','boolean','string','Pull\x20complete:\x20','71408HLeCHL','mybatisXml','join','289404fmPNFt','120830nDlUGK','would_pull','str','path','sqlName','\x20failed','paging','Filter\x20by\x20SQL\x20display\x20name','sqlContent','38325MtGAYm','57067yNhkul','4vZSznt','local\x20differs\x20from\x20remote','sqlCode'];a191_0x372b=function(){return _0x1f86e5;};return a191_0x372b();}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;async function fetchAllSqlQueries(_0x1ed783,_0x48e827){const _0x3304c8=a191_0xdc89,_0x123f9d=[];let _0x2ded90=0x1;while(!![]){const _0x317f68=await listSqlQueries(_0x1ed783,{'currentPage':_0x2ded90,'pageSize':PAGE_SIZE,'sqlCode':_0x48e827[_0x3304c8(0x21a)],'sqlName':_0x48e827['sqlName']}),_0x5dd854=_0x317f68['tableData']??[];_0x123f9d['push'](..._0x5dd854);if(_0x5dd854[_0x3304c8(0x204)]===0x0)break;const _0x203863=_0x317f68[_0x3304c8(0x213)]?.[_0x3304c8(0x22c)];if(_0x203863!=null?_0x123f9d['length']>=_0x203863:_0x5dd854['length']<PAGE_SIZE)break;_0x2ded90++;}return _0x123f9d;}async function ensureSqlContent(_0xcb8933){const _0x58ec2a=a191_0xdc89;if(_0xcb8933[_0x58ec2a(0x215)]!=null&&String(_0xcb8933[_0x58ec2a(0x215)])[_0x58ec2a(0x204)]>0x0)return _0xcb8933;return getSqlQueryDetail(_0xcb8933[_0x58ec2a(0x21a)]);}export const sqlPull={'service':a191_0x58ac86(0x221),'command':'pull','description':a191_0x58ac86(0x1f5),'risk':a191_0x58ac86(0x222),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a191_0x58ac86(0x22b),'type':a191_0x58ac86(0x207),'description':a191_0x58ac86(0x214)},{'name':'force','type':a191_0x58ac86(0x206),'description':a191_0x58ac86(0x1f4)}],async 'dryRun'(_0x47e60a){const _0x379995=a191_0x58ac86,_0x110ae1=loadSqlProjectConfig(_0x47e60a[_0x379995(0x1f9)]),_0x1f3f7e=await readSqlLockFile(_0x110ae1[_0x379995(0x22d)]),{appLock:_0x40998a}=ensureSqlLockScope(_0x1f3f7e??createEmptySqlLock(),_0x110ae1['appCode'],_0x110ae1[_0x379995(0x21c)],_0x379995(0x229)),_0x421132=await fetchAllSqlQueries(_0x47e60a[_0x379995(0x1f9)],{'sqlCode':_0x47e60a['str'](_0x379995(0x22f))||undefined,'sqlName':_0x47e60a['str'](_0x379995(0x22b))||undefined}),_0x4e9238=[];for(const _0xe2085b of _0x421132){const _0x36d75c=await ensureSqlContent(_0xe2085b),_0x3dd2a4=ensureRemoteSqlContent(_0x36d75c),_0x6fe0c5=detectModeFromSql(_0x36d75c),_0x5ee1c3=_0x36d75c['dbId']?await getDbName(_0x47e60a[_0x379995(0x1f9)],Number(_0x36d75c[_0x379995(0x21e)]))[_0x379995(0x22e)](()=>undefined):undefined,_0x7dd499=buildLocalSqlFileContent({'sqlCode':_0x36d75c[_0x379995(0x21a)],'sqlName':_0x36d75c['sqlName'],'dbId':_0x36d75c[_0x379995(0x21e)]},_0x3dd2a4,{'dbName':_0x5ee1c3,'mode':_0x6fe0c5,'syncedAt':new Date()[_0x379995(0x1ff)](),'description':_0x36d75c[_0x379995(0x1f8)]}),_0x19491b=buildSqlLockEntry(_0x36d75c,_0x3dd2a4,'',{'dbName':_0x5ee1c3}),_0x1cd8d8=resolveLocalSqlFilePath(_0x110ae1,_0x36d75c[_0x379995(0x21a)],_0x19491b);let _0x5436a1=_0x379995(0x20e),_0x2da16c;if(await fileExists(_0x1cd8d8)){const _0x52a829=await readFile(_0x1cd8d8,_0x379995(0x21f));isEquivalentPulledSqlFile(_0x52a829,_0x7dd499,_0x6fe0c5)?(_0x5436a1=_0x379995(0x225),_0x2da16c=_0x379995(0x21d)):(_0x5436a1=_0x379995(0x1fe),_0x2da16c='local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)');}_0x4e9238[_0x379995(0x1fb)]({'sqlCode':_0x36d75c['sqlCode'],'sqlName':_0x36d75c[_0x379995(0x211)],'filePath':_0x1cd8d8,'status':_0x5436a1,'reason':_0x2da16c});}return{'method':_0x379995(0x202),'url':_0x379995(0x1fa),'body':{'appCode':_0x47e60a[_0x379995(0x1f9)],'sqlCode':_0x47e60a[_0x379995(0x20f)](_0x379995(0x22f))||null,'sqlName':_0x47e60a[_0x379995(0x20f)](_0x379995(0x22b))||null,'files':_0x4e9238},'description':_0x379995(0x231)+_0x4e9238[_0x379995(0x204)]+'\x20SQL\x20file(s)\x20into\x20'+_0x110ae1['sqlRootDir']};},async 'execute'(_0x933158){const _0x44ee46=a191_0x58ac86,_0x27ce08=loadSqlProjectConfig(_0x933158[_0x44ee46(0x1f9)]),_0x58e66b=await readSqlLockFile(_0x27ce08['lockFilePath']),{lockData:_0x1190f,appLock:_0x59a255}=ensureSqlLockScope(_0x58e66b??createEmptySqlLock(),_0x27ce08['appCode'],_0x27ce08['sqlRoot'],_0x44ee46(0x229)),_0x587338=_0x933158['bool'](_0x44ee46(0x1f7)),_0x41d935=await fetchAllSqlQueries(_0x933158[_0x44ee46(0x1f9)],{'sqlCode':_0x933158['str'](_0x44ee46(0x22f))||undefined,'sqlName':_0x933158[_0x44ee46(0x20f)](_0x44ee46(0x22b))||undefined});if(_0x41d935['length']===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x44ee46(0x1fd)};const _0x3e6a61=[],_0x1c3499=[];for(const _0xffa419 of _0x41d935){try{_0x3e6a61[_0x44ee46(0x1fb)](await ensureSqlContent(_0xffa419));}catch(_0x61dfd3){_0x1c3499[_0x44ee46(0x1fb)]({'sqlCode':_0xffa419['sqlCode'],'error':_0x61dfd3 instanceof Error?_0x61dfd3[_0x44ee46(0x226)]:String(_0x61dfd3)});}}if(_0x587338&&!_0x933158['nonInteractive']){let _0x59323a=![];for(const _0x4d591f of _0x3e6a61){const _0x4fa9f9=detectModeFromSql(_0x4d591f),_0x281ff5=_0x4d591f['dbId']?await getDbName(_0x933158[_0x44ee46(0x1f9)],Number(_0x4d591f[_0x44ee46(0x21e)]))['catch'](()=>undefined):undefined,_0x14fe43=buildLocalSqlFileContent({'sqlCode':_0x4d591f[_0x44ee46(0x21a)],'sqlName':_0x4d591f[_0x44ee46(0x211)],'dbId':_0x4d591f[_0x44ee46(0x21e)]},ensureRemoteSqlContent(_0x4d591f),{'dbName':_0x281ff5,'mode':_0x4fa9f9,'syncedAt':new Date()[_0x44ee46(0x1ff)](),'description':_0x4d591f[_0x44ee46(0x1f8)]}),_0x1f8a91=resolveLocalSqlFilePath(_0x27ce08,_0x4d591f['sqlCode'],buildSqlLockEntry(_0x4d591f,ensureRemoteSqlContent(_0x4d591f),'',{'dbName':_0x281ff5}));if(await fileExists(_0x1f8a91)){const _0x436166=await readFile(_0x1f8a91,'utf8');if(!isEquivalentPulledSqlFile(_0x436166,_0x14fe43,_0x4fa9f9)){_0x59323a=!![];break;}}}if(_0x59323a){const _0x3f8641=await confirmForceOverwrite(_0x44ee46(0x224));if(!_0x3f8641)throw CliErrors[_0x44ee46(0x227)]('Force\x20pull\x20cancelled.');}}const _0x2e7e66=cloneSqlLockData(_0x1190f),_0x383719=_0x2e7e66[_0x44ee46(0x223)][_0x27ce08['appCode']],_0x53358c=[],_0x5b4705=[];for(const _0x5efc95 of _0x3e6a61){const _0x5eab2a=_0x383719[_0x44ee46(0x1fc)][_0x5efc95['sqlCode']],_0x672aa6=ensureRemoteSqlContent(_0x5efc95),_0x1fd425=detectModeFromSql(_0x5efc95),_0x2a121e=_0x5efc95[_0x44ee46(0x21e)]?await getDbName(_0x933158[_0x44ee46(0x1f9)],Number(_0x5efc95[_0x44ee46(0x21e)]))[_0x44ee46(0x22e)](()=>undefined):undefined,_0x26f558=buildLocalSqlFileContent({'sqlCode':_0x5efc95['sqlCode'],'sqlName':_0x5efc95['sqlName'],'dbId':_0x5efc95['dbId']},_0x672aa6,{'dbName':_0x2a121e,'mode':_0x1fd425,'syncedAt':new Date()[_0x44ee46(0x1ff)](),'description':_0x5efc95['description']}),_0x183872=buildSqlLockEntry(_0x5efc95,_0x672aa6,computeSqlContentHash(_0x26f558),{'dbName':_0x2a121e}),_0x5ad7d6=_0x183872[_0x44ee46(0x210)],_0x3fbaa8=join(_0x27ce08['sqlRootDir'],_0x5ad7d6);try{if(await fileExists(_0x3fbaa8)){const _0x4d156c=await readFile(_0x3fbaa8,'utf8');if(isEquivalentPulledSqlFile(_0x4d156c,_0x26f558,_0x1fd425)){_0x5b4705['push']({'sqlCode':_0x5efc95[_0x44ee46(0x21a)],'reason':_0x44ee46(0x21d)}),_0x383719[_0x44ee46(0x1fc)][_0x5efc95[_0x44ee46(0x21a)]]={..._0x183872,'hash':computeSqlContentHash(_0x4d156c),'path':_0x5ad7d6};continue;}if(!_0x587338){_0x5b4705['push']({'sqlCode':_0x5efc95[_0x44ee46(0x21a)],'reason':_0x44ee46(0x219)});continue;}}const _0x493c6f=_0x5eab2a?.[_0x44ee46(0x210)]?join(_0x27ce08[_0x44ee46(0x228)],_0x5eab2a[_0x44ee46(0x210)]):undefined;_0x493c6f&&_0x493c6f!==_0x3fbaa8&&await fileExists(_0x493c6f)&&await rm(_0x493c6f,{'force':!![]}),await ensureParentDirectory(_0x3fbaa8),await writeFile(_0x3fbaa8,_0x26f558,_0x44ee46(0x21f)),_0x383719['sqls'][_0x5efc95[_0x44ee46(0x21a)]]={..._0x183872,'path':_0x5ad7d6},_0x53358c[_0x44ee46(0x1fb)]({'sqlCode':_0x5efc95[_0x44ee46(0x21a)],'filePath':_0x3fbaa8});}catch(_0x2ce197){_0x1c3499[_0x44ee46(0x1fb)]({'sqlCode':_0x5efc95[_0x44ee46(0x21a)],'error':_0x2ce197 instanceof Error?_0x2ce197[_0x44ee46(0x226)]:String(_0x2ce197)});}}return _0x383719[_0x44ee46(0x230)]=new Date()[_0x44ee46(0x1ff)](),await writeSqlLockFile(_0x27ce08[_0x44ee46(0x22d)],_0x2e7e66),{'ok':_0x1c3499[_0x44ee46(0x204)]===0x0,'data':{'pulled':_0x53358c,'skipped':_0x5b4705,'failed':_0x1c3499},'message':_0x44ee46(0x208)+_0x53358c[_0x44ee46(0x204)]+'\x20written,\x20'+_0x5b4705[_0x44ee46(0x204)]+_0x44ee46(0x203)+_0x1c3499[_0x44ee46(0x204)]+_0x44ee46(0x212)};}};function detectModeFromSql(_0x4fd451){const _0x5debf8=a191_0x58ac86,_0x4b1602=ensureRemoteSqlContent(_0x4fd451),_0x7c62bf=stripLocalSqlMetadata(_0x4b1602,_0x5debf8(0x20a))[_0x5debf8(0x200)]();if(/^<(select|insert|update|delete)\b/i[_0x5debf8(0x22a)](_0x7c62bf))return'mybatisXml';return _0x5debf8(0x221);}function isEquivalentPulledSqlFile(_0xe09d0e,_0x2a30e8,_0x208866){return normalizePullComparableContent(_0xe09d0e,_0x208866)===normalizePullComparableContent(_0x2a30e8,_0x208866);}function normalizePullComparableContent(_0x1f499d,_0x464e91){const _0x3f3bed=a191_0x58ac86,_0x5df6d4=_0x1f499d['replace'](/\r\n/g,'\x0a')[_0x3f3bed(0x1f6)]('\x0a'),_0x3e6b9c=_0x5df6d4[_0x3f3bed(0x21b)](_0x3040a3=>!isSyncedAtMetadataLine(_0x3040a3,_0x464e91));return _0x3e6b9c[_0x3f3bed(0x20b)]('\x0a');}function a191_0xdc89(_0x31d038,_0x4e8b89){_0x31d038=_0x31d038-0x1f4;const _0x372b04=a191_0x372b();let _0xdc89c3=_0x372b04[_0x31d038];return _0xdc89c3;}function isSyncedAtMetadataLine(_0x13ca8b,_0x4fccdb){const _0x53a982=a191_0x58ac86;if(_0x4fccdb==='mybatisXml')return/^\s*<!--\s*@lovrabet\.syncedAt:/[_0x53a982(0x22a)](_0x13ca8b);return/^\s*--\s*@lovrabet\.syncedAt:/['test'](_0x13ca8b);}
|
|
1
|
+
const a191_0x16900d=a191_0x1647;(function(_0x4714cb,_0x297929){const _0x625372=a191_0x1647,_0x301b2e=_0x4714cb();while(!![]){try{const _0x3c14e2=parseInt(_0x625372(0x147))/0x1*(-parseInt(_0x625372(0x13a))/0x2)+parseInt(_0x625372(0x139))/0x3+parseInt(_0x625372(0x145))/0x4*(-parseInt(_0x625372(0x13b))/0x5)+-parseInt(_0x625372(0x14a))/0x6+-parseInt(_0x625372(0x16c))/0x7+-parseInt(_0x625372(0x142))/0x8+parseInt(_0x625372(0x146))/0x9;if(_0x3c14e2===_0x297929)break;else _0x301b2e['push'](_0x301b2e['shift']());}catch(_0x17f9c9){_0x301b2e['push'](_0x301b2e['shift']());}}}(a191_0x57ab,0x33566));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';function a191_0x57ab(){const _0x33846c=['split','apps','sqlContent','sqls','join','path','Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.','catch','No\x20remote\x20SQL\x20queries\x20matched.','name','Pull\x20complete:\x20','\x20SQL\x20file(s)\x20into\x20','length','sqlRoot','local\x20differs\x20from\x20remote','\x20skipped,\x20','470155bWyyMb','sqlRootDir','utf8','lockFilePath','skipped','845481KtuoKK','644230SHbKvT','67415iuYWSj','sql','sqlcode','unchanged','test','pull','dbId','1704584lhHELx','nonInteractive','cancelled','24Rinisz','6308127pQvFUg','1rIvNLG','force','sqlCode','535206xDtavk','\x20written,\x20','sqlName','read','toISOString','trimStart','Would\x20pull\x20','mybatisXml','Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','push','lastSync','replace','/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','\x20failed','str','description','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','appCode'];a191_0x57ab=function(){return _0x33846c;};return a191_0x57ab();}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 a191_0x1647(_0x127087,_0x528f46){_0x127087=_0x127087-0x139;const _0x57abc5=a191_0x57ab();let _0x16479b=_0x57abc5[_0x127087];return _0x16479b;}async function fetchAllSqlQueries(_0x47f226,_0xd4d4){const _0x172bc4=a191_0x1647,_0x19b515=[];let _0x3f3f85=0x1;while(!![]){const _0x922679=await listSqlQueries(_0x47f226,{'currentPage':_0x3f3f85,'pageSize':PAGE_SIZE,'sqlCode':_0xd4d4[_0x172bc4(0x149)],'sqlName':_0xd4d4[_0x172bc4(0x14c)]}),_0x100847=_0x922679['tableData']??[];_0x19b515[_0x172bc4(0x153)](..._0x100847);if(_0x100847[_0x172bc4(0x168)]===0x0)break;const _0x247794=_0x922679['paging']?.['totalCount'];if(_0x247794!=null?_0x19b515[_0x172bc4(0x168)]>=_0x247794:_0x100847[_0x172bc4(0x168)]<PAGE_SIZE)break;_0x3f3f85++;}return _0x19b515;}async function ensureSqlContent(_0x14c299){const _0x124e43=a191_0x1647;if(_0x14c299['sqlContent']!=null&&String(_0x14c299[_0x124e43(0x15e)])['length']>0x0)return _0x14c299;return getSqlQueryDetail(_0x14c299[_0x124e43(0x149)]);}export const sqlPull={'service':a191_0x16900d(0x13c),'command':'pull','description':a191_0x16900d(0x152),'risk':a191_0x16900d(0x14d),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a191_0x16900d(0x165),'type':'string','description':'Filter\x20by\x20SQL\x20display\x20name'},{'name':a191_0x16900d(0x148),'type':'boolean','description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x54485d){const _0x4356e7=a191_0x16900d,_0x5893a8=loadSqlProjectConfig(_0x54485d['appCode']),_0x11063a=await readSqlLockFile(_0x5893a8['lockFilePath']),{appLock:_0x5e3f0b}=ensureSqlLockScope(_0x11063a??createEmptySqlLock(),_0x5893a8['appCode'],_0x5893a8[_0x4356e7(0x169)],_0x4356e7(0x140)),_0x552031=await fetchAllSqlQueries(_0x54485d[_0x4356e7(0x15b)],{'sqlCode':_0x54485d[_0x4356e7(0x158)](_0x4356e7(0x13d))||undefined,'sqlName':_0x54485d[_0x4356e7(0x158)](_0x4356e7(0x165))||undefined}),_0x2a0638=[];for(const _0x1d81fe of _0x552031){const _0x3a5784=await ensureSqlContent(_0x1d81fe),_0x11816a=ensureRemoteSqlContent(_0x3a5784),_0x68b56c=detectModeFromSql(_0x3a5784),_0x5d0bd1=_0x3a5784['dbId']?await getDbName(_0x54485d[_0x4356e7(0x15b)],Number(_0x3a5784[_0x4356e7(0x141)]))[_0x4356e7(0x163)](()=>undefined):undefined,_0x78ae3d=buildLocalSqlFileContent({'sqlCode':_0x3a5784['sqlCode'],'sqlName':_0x3a5784[_0x4356e7(0x14c)],'dbId':_0x3a5784[_0x4356e7(0x141)]},_0x11816a,{'dbName':_0x5d0bd1,'mode':_0x68b56c,'syncedAt':new Date()[_0x4356e7(0x14e)](),'description':_0x3a5784[_0x4356e7(0x159)]}),_0x28d3f9=buildSqlLockEntry(_0x3a5784,_0x11816a,'',{'dbName':_0x5d0bd1}),_0x2c5828=resolveLocalSqlFilePath(_0x5893a8,_0x3a5784[_0x4356e7(0x149)],_0x28d3f9);let _0xce1d08='would_pull',_0xaa1e0a;if(await fileExists(_0x2c5828)){const _0x1de376=await readFile(_0x2c5828,_0x4356e7(0x16e));isEquivalentPulledSqlFile(_0x1de376,_0x78ae3d,_0x68b56c)?(_0xce1d08=_0x4356e7(0x170),_0xaa1e0a=_0x4356e7(0x13e)):(_0xce1d08='conflict',_0xaa1e0a=_0x4356e7(0x15a));}_0x2a0638[_0x4356e7(0x153)]({'sqlCode':_0x3a5784[_0x4356e7(0x149)],'sqlName':_0x3a5784[_0x4356e7(0x14c)],'filePath':_0x2c5828,'status':_0xce1d08,'reason':_0xaa1e0a});}return{'method':'POST','url':_0x4356e7(0x156),'body':{'appCode':_0x54485d[_0x4356e7(0x15b)],'sqlCode':_0x54485d[_0x4356e7(0x158)]('sqlcode')||null,'sqlName':_0x54485d[_0x4356e7(0x158)](_0x4356e7(0x165))||null,'files':_0x2a0638},'description':_0x4356e7(0x150)+_0x2a0638[_0x4356e7(0x168)]+_0x4356e7(0x167)+_0x5893a8['sqlRootDir']};},async 'execute'(_0x1bbc8a){const _0x4d6a21=a191_0x16900d,_0xce1401=loadSqlProjectConfig(_0x1bbc8a[_0x4d6a21(0x15b)]),_0x186fdc=await readSqlLockFile(_0xce1401[_0x4d6a21(0x16f)]),{lockData:_0x47ed9d,appLock:_0x40974c}=ensureSqlLockScope(_0x186fdc??createEmptySqlLock(),_0xce1401[_0x4d6a21(0x15b)],_0xce1401['sqlRoot'],_0x4d6a21(0x140)),_0x2363c=_0x1bbc8a['bool'](_0x4d6a21(0x148)),_0x3179eb=await fetchAllSqlQueries(_0x1bbc8a[_0x4d6a21(0x15b)],{'sqlCode':_0x1bbc8a['str'](_0x4d6a21(0x13d))||undefined,'sqlName':_0x1bbc8a['str']('name')||undefined});if(_0x3179eb[_0x4d6a21(0x168)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x4d6a21(0x164)};const _0x3275e9=[],_0xea552e=[];for(const _0x5dbf55 of _0x3179eb){try{_0x3275e9[_0x4d6a21(0x153)](await ensureSqlContent(_0x5dbf55));}catch(_0x35e31b){_0xea552e['push']({'sqlCode':_0x5dbf55[_0x4d6a21(0x149)],'error':_0x35e31b instanceof Error?_0x35e31b['message']:String(_0x35e31b)});}}if(_0x2363c&&!_0x1bbc8a[_0x4d6a21(0x143)]){let _0x5711a5=![];for(const _0x5dd278 of _0x3275e9){const _0x324b71=detectModeFromSql(_0x5dd278),_0x2e5c02=_0x5dd278[_0x4d6a21(0x141)]?await getDbName(_0x1bbc8a[_0x4d6a21(0x15b)],Number(_0x5dd278[_0x4d6a21(0x141)]))[_0x4d6a21(0x163)](()=>undefined):undefined,_0x166ff1=buildLocalSqlFileContent({'sqlCode':_0x5dd278[_0x4d6a21(0x149)],'sqlName':_0x5dd278[_0x4d6a21(0x14c)],'dbId':_0x5dd278[_0x4d6a21(0x141)]},ensureRemoteSqlContent(_0x5dd278),{'dbName':_0x2e5c02,'mode':_0x324b71,'syncedAt':new Date()['toISOString'](),'description':_0x5dd278[_0x4d6a21(0x159)]}),_0x56a4ed=resolveLocalSqlFilePath(_0xce1401,_0x5dd278['sqlCode'],buildSqlLockEntry(_0x5dd278,ensureRemoteSqlContent(_0x5dd278),'',{'dbName':_0x2e5c02}));if(await fileExists(_0x56a4ed)){const _0x4515d0=await readFile(_0x56a4ed,_0x4d6a21(0x16e));if(!isEquivalentPulledSqlFile(_0x4515d0,_0x166ff1,_0x324b71)){_0x5711a5=!![];break;}}}if(_0x5711a5){const _0x157545=await confirmForceOverwrite(_0x4d6a21(0x162));if(!_0x157545)throw CliErrors[_0x4d6a21(0x144)]('Force\x20pull\x20cancelled.');}}const _0x1f3caa=cloneSqlLockData(_0x47ed9d),_0x5a22b7=_0x1f3caa[_0x4d6a21(0x15d)][_0xce1401[_0x4d6a21(0x15b)]],_0x1be0e5=[],_0x48c8a3=[];for(const _0x2b2deb of _0x3275e9){const _0x2167dc=_0x5a22b7['sqls'][_0x2b2deb[_0x4d6a21(0x149)]],_0x633535=ensureRemoteSqlContent(_0x2b2deb),_0x5bae6f=detectModeFromSql(_0x2b2deb),_0x5753c5=_0x2b2deb[_0x4d6a21(0x141)]?await getDbName(_0x1bbc8a[_0x4d6a21(0x15b)],Number(_0x2b2deb['dbId']))[_0x4d6a21(0x163)](()=>undefined):undefined,_0x25790d=buildLocalSqlFileContent({'sqlCode':_0x2b2deb['sqlCode'],'sqlName':_0x2b2deb['sqlName'],'dbId':_0x2b2deb[_0x4d6a21(0x141)]},_0x633535,{'dbName':_0x5753c5,'mode':_0x5bae6f,'syncedAt':new Date()['toISOString'](),'description':_0x2b2deb[_0x4d6a21(0x159)]}),_0x1390a3=buildSqlLockEntry(_0x2b2deb,_0x633535,computeSqlContentHash(_0x25790d),{'dbName':_0x5753c5}),_0x168f39=_0x1390a3['path'],_0x4b18ad=join(_0xce1401['sqlRootDir'],_0x168f39);try{if(await fileExists(_0x4b18ad)){const _0x3ef75d=await readFile(_0x4b18ad,_0x4d6a21(0x16e));if(isEquivalentPulledSqlFile(_0x3ef75d,_0x25790d,_0x5bae6f)){_0x48c8a3[_0x4d6a21(0x153)]({'sqlCode':_0x2b2deb[_0x4d6a21(0x149)],'reason':'unchanged'}),_0x5a22b7[_0x4d6a21(0x15f)][_0x2b2deb['sqlCode']]={..._0x1390a3,'hash':computeSqlContentHash(_0x3ef75d),'path':_0x168f39};continue;}if(!_0x2363c){_0x48c8a3['push']({'sqlCode':_0x2b2deb[_0x4d6a21(0x149)],'reason':_0x4d6a21(0x16a)});continue;}}const _0x32b74d=_0x2167dc?.['path']?join(_0xce1401[_0x4d6a21(0x16d)],_0x2167dc[_0x4d6a21(0x161)]):undefined;_0x32b74d&&_0x32b74d!==_0x4b18ad&&await fileExists(_0x32b74d)&&await rm(_0x32b74d,{'force':!![]}),await ensureParentDirectory(_0x4b18ad),await writeFile(_0x4b18ad,_0x25790d,_0x4d6a21(0x16e)),_0x5a22b7[_0x4d6a21(0x15f)][_0x2b2deb[_0x4d6a21(0x149)]]={..._0x1390a3,'path':_0x168f39},_0x1be0e5[_0x4d6a21(0x153)]({'sqlCode':_0x2b2deb[_0x4d6a21(0x149)],'filePath':_0x4b18ad});}catch(_0x57d8a8){_0xea552e[_0x4d6a21(0x153)]({'sqlCode':_0x2b2deb[_0x4d6a21(0x149)],'error':_0x57d8a8 instanceof Error?_0x57d8a8['message']:String(_0x57d8a8)});}}return _0x5a22b7[_0x4d6a21(0x154)]=new Date()[_0x4d6a21(0x14e)](),await writeSqlLockFile(_0xce1401[_0x4d6a21(0x16f)],_0x1f3caa),{'ok':_0xea552e[_0x4d6a21(0x168)]===0x0,'data':{'pulled':_0x1be0e5,'skipped':_0x48c8a3,'failed':_0xea552e},'message':_0x4d6a21(0x166)+_0x1be0e5[_0x4d6a21(0x168)]+_0x4d6a21(0x14b)+_0x48c8a3['length']+_0x4d6a21(0x16b)+_0xea552e['length']+_0x4d6a21(0x157)};}};function detectModeFromSql(_0x36f75e){const _0x3efa31=a191_0x16900d,_0x2ba589=ensureRemoteSqlContent(_0x36f75e),_0x16450d=stripLocalSqlMetadata(_0x2ba589,_0x3efa31(0x151))[_0x3efa31(0x14f)]();if(/^<(select|insert|update|delete)\b/i[_0x3efa31(0x13f)](_0x16450d))return _0x3efa31(0x151);return'sql';}function isEquivalentPulledSqlFile(_0x1ba76e,_0x30b73f,_0xdd3d49){return normalizePullComparableContent(_0x1ba76e,_0xdd3d49)===normalizePullComparableContent(_0x30b73f,_0xdd3d49);}function normalizePullComparableContent(_0x2a4668,_0x8e90cc){const _0x4365c3=a191_0x16900d,_0x3530f1=_0x2a4668[_0x4365c3(0x155)](/\r\n/g,'\x0a')[_0x4365c3(0x15c)]('\x0a'),_0x475b9f=_0x3530f1['filter'](_0x1e2e70=>!isSyncedAtMetadataLine(_0x1e2e70,_0x8e90cc));return _0x475b9f[_0x4365c3(0x160)]('\x0a');}function isSyncedAtMetadataLine(_0x20feed,_0x1d22b9){const _0x526094=a191_0x16900d;if(_0x1d22b9===_0x526094(0x151))return/^\s*<!--\s*@lovrabet\.syncedAt:/['test'](_0x20feed);return/^\s*--\s*@lovrabet\.syncedAt:/[_0x526094(0x13f)](_0x20feed);}
|
package/lib/commands/sql/push.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function a192_0x5e09(_0x29efec,_0x4eb3e2){_0x29efec=_0x29efec-0x150;const _0x5a090b=a192_0x5a09();let _0x5e09c6=_0x5a090b[_0x29efec];return _0x5e09c6;}const a192_0x5339b1=a192_0x5e09;(function(_0x1bb465,_0x11db58){const _0x2a6664=a192_0x5e09,_0x3c8af6=_0x1bb465();while(!![]){try{const _0x3a9c8d=parseInt(_0x2a6664(0x162))/0x1+parseInt(_0x2a6664(0x176))/0x2*(parseInt(_0x2a6664(0x15d))/0x3)+parseInt(_0x2a6664(0x16d))/0x4*(-parseInt(_0x2a6664(0x184))/0x5)+-parseInt(_0x2a6664(0x157))/0x6+-parseInt(_0x2a6664(0x186))/0x7+-parseInt(_0x2a6664(0x182))/0x8*(parseInt(_0x2a6664(0x166))/0x9)+parseInt(_0x2a6664(0x164))/0xa;if(_0x3a9c8d===_0x11db58)break;else _0x3c8af6['push'](_0x3c8af6['shift']());}catch(_0x1e5c1b){_0x3c8af6['push'](_0x3c8af6['shift']());}}}(a192_0x5a09,0xe7db9));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';function a192_0x5a09(){const _0x4de5cd=['has','force','\x20pushed,\x20','projectRoot','925656ScrhSV','validation','31154450YfXFSB','appCode','7039485LLKmze','Force\x20push\x20even\x20if\x20local\x20hash\x20matches\x20lock','sqlName','sqls','No\x20local\x20SQL\x20files\x20found.','\x22\x20for\x20sqlCode\x20','relativePath','3891004zyHlMb','mode','trashDir','exec','version','\x20failed','push','str','catch','2fDIVvq','hash','filter','sqlRootDir','.\x20Keep\x20only\x20one\x20file\x20under\x20its\x20sqlCode\x20directory\x20before\x20pushing.','Would\x20push\x20','sql','sqlConfig','toISOString','set','dbName','\x20skipped,\x20','8uiTFDH','map','5OydTiz','utf8','12605929XGaaXr','sqlRoot','\x22\x20matches\x20multiple\x20databases\x20for\x20sqlCode\x20','replace','bool','missing\x20remote\x20version;\x20run\x20`rabetbase\x20sql\x20pull`\x20to\x20refresh\x20version\x20info\x20first','path','sqlcode','boolean','Push\x20complete:\x20','isFinite','filePath','remoteId','write','length','Local\x20SQL\x20not\x20found:\x20','dbId','Local\x20directory\x20\x22','get','\x20SQL\x20file(s)','lastSync','sqlCode','lockFilePath','1327980MhKnbI','No\x20database\x20matches\x20local\x20directory\x20\x22','unchanged','startsWith','Push\x20local\x20SQL\x20files\x20to\x20remote','entries','2057043kuPBVr'];a192_0x5a09=function(){return _0x4de5cd;};return a192_0x5a09();}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';import{buildDbDirectoryName}from'../../core/sql-sync/utils.js';async function getTargetSqlQueries(_0x1f3836,_0x2ccc36,_0x344745){const _0xf2d598=a192_0x5e09,_0x16c455=await scanLocalSqlQueries(_0x1f3836),_0x6062a9=new Map();for(const _0x313e18 of _0x16c455){if(_0x344745&&_0x313e18[_0xf2d598(0x155)]!==_0x344745)continue;const _0x32270b=_0x6062a9[_0xf2d598(0x152)](_0x313e18[_0xf2d598(0x155)])??[];_0x32270b[_0xf2d598(0x173)](_0x313e18),_0x6062a9[_0xf2d598(0x17f)](_0x313e18[_0xf2d598(0x155)],_0x32270b);}if(_0x344745&&!_0x6062a9[_0xf2d598(0x15e)](_0x344745))throw CliErrors['validation'](_0xf2d598(0x195)+_0x344745);const _0x5d16ce=[];for(const [_0x2f7f0e,_0x3f3d13]of _0x6062a9[_0xf2d598(0x15c)]()){if(_0x3f3d13['length']===0x1){_0x5d16ce[_0xf2d598(0x173)](_0x3f3d13[0x0]);continue;}const _0x4cada6=_0x2ccc36[_0xf2d598(0x169)][_0x2f7f0e],_0x4a6de3=_0x4cada6?.[_0xf2d598(0x18c)],_0x1de1a2=_0x4a6de3?_0x3f3d13[_0xf2d598(0x178)](_0x2533f5=>_0x2533f5[_0xf2d598(0x16c)]!==_0x4a6de3):_0x3f3d13;if(_0x4cada6&&_0x1de1a2[_0xf2d598(0x194)]===0x1){_0x5d16ce[_0xf2d598(0x173)](_0x1de1a2[0x0]);continue;}throw CliErrors[_0xf2d598(0x163)]('Multiple\x20local\x20SQL\x20files\x20found\x20for\x20sqlCode\x20'+_0x2f7f0e+_0xf2d598(0x17a));}return _0x5d16ce;}export const sqlPush={'service':a192_0x5339b1(0x17c),'command':a192_0x5339b1(0x173),'description':a192_0x5339b1(0x15b),'risk':a192_0x5339b1(0x193),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':'force','type':a192_0x5339b1(0x18e),'description':a192_0x5339b1(0x167)}],async 'dryRun'(_0x30e038){const _0x4392d8=a192_0x5339b1,_0xc2afba=loadSqlProjectConfig(_0x30e038[_0x4392d8(0x165)]),_0x253018=await readSqlLockFile(_0xc2afba[_0x4392d8(0x156)]),{appLock:_0x5aeec8}=ensureSqlLockScope(_0x253018??createEmptySqlLock(),_0x30e038[_0x4392d8(0x165)],_0xc2afba['sqlRoot'],_0x4392d8(0x173)),_0x46ee67=await getTargetSqlQueries(_0xc2afba,_0x5aeec8,_0x30e038[_0x4392d8(0x174)](_0x4392d8(0x18d))||undefined),_0x4ee249=[];for(const _0xe81319 of _0x46ee67){const _0xd70bcc=await computeSqlFileHash(_0xe81319[_0x4392d8(0x191)]),_0xcd89b3=_0x5aeec8[_0x4392d8(0x169)][_0xe81319[_0x4392d8(0x155)]],_0x3168d3=!!_0xcd89b3&&(_0xcd89b3['path']!==_0xe81319[_0x4392d8(0x16c)]||!!_0xe81319['sqlName']&&_0xcd89b3['sqlName']!==_0xe81319['sqlName']);if(!_0x30e038[_0x4392d8(0x18a)](_0x4392d8(0x15f))&&_0xcd89b3&&_0xcd89b3[_0x4392d8(0x177)]===_0xd70bcc&&!_0x3168d3)continue;_0x4ee249['push'](_0xe81319[_0x4392d8(0x155)]);}return{'method':'POST','url':'/smartapi/custom/updateUserCustomSql','body':{'sqlCodes':_0x4ee249,'appCode':_0x30e038[_0x4392d8(0x165)]},'description':_0x4392d8(0x17b)+_0x4ee249[_0x4392d8(0x194)]+_0x4392d8(0x153)};},async 'execute'(_0x3292f2){const _0x54c2d4=a192_0x5339b1,_0x834558=loadSqlProjectConfig(_0x3292f2[_0x54c2d4(0x165)]),_0x26d278=await readSqlLockFile(_0x834558[_0x54c2d4(0x156)]),{lockData:_0x67d28e,appLock:_0x43a802}=ensureSqlLockScope(_0x26d278??createEmptySqlLock(),_0x3292f2['appCode'],_0x834558[_0x54c2d4(0x187)],_0x54c2d4(0x173)),_0xf2484a=await getTargetSqlQueries(_0x834558,_0x43a802,_0x3292f2['str'](_0x54c2d4(0x18d))||undefined);if(_0xf2484a[_0x54c2d4(0x194)]===0x0)return{'ok':!![],'data':{'pushed':[],'skipped':[],'failed':[]},'message':_0x54c2d4(0x16a)};const _0xf0b2b9=[],_0x343ca7=[],_0x4274e7=[];for(const _0x2557cc of _0xf2484a){const _0x3d5a18=_0x43a802['sqls'][_0x2557cc[_0x54c2d4(0x155)]];if(!_0x3d5a18){_0x4274e7[_0x54c2d4(0x173)]({'sqlCode':_0x2557cc['sqlCode'],'error':'local\x20SQL\x20is\x20not\x20tracked\x20by\x20sql.lock.json;\x20use\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first'});continue;}try{const _0x3f6d6c=await computeSqlFileHash(_0x2557cc[_0x54c2d4(0x191)]),_0xf6e455=_0x3d5a18[_0x54c2d4(0x18c)]!==_0x2557cc['relativePath']||!!_0x2557cc['sqlName']&&_0x3d5a18[_0x54c2d4(0x168)]!==_0x2557cc[_0x54c2d4(0x168)];if(!_0x3292f2['bool'](_0x54c2d4(0x15f))&&_0x3d5a18['hash']===_0x3f6d6c&&!_0xf6e455){_0x343ca7[_0x54c2d4(0x173)]({'sqlCode':_0x2557cc[_0x54c2d4(0x155)],'reason':_0x54c2d4(0x159)});continue;}if(_0x3d5a18[_0x54c2d4(0x171)]==null){_0x4274e7[_0x54c2d4(0x173)]({'sqlCode':_0x2557cc[_0x54c2d4(0x155)],'error':_0x54c2d4(0x18b)});continue;}const _0xa0789f=await readFile(_0x2557cc[_0x54c2d4(0x191)],_0x54c2d4(0x185)),_0x52296d=stripLocalSqlMetadata(_0xa0789f,_0x2557cc[_0x54c2d4(0x16e)]),_0x4f8a69=_0x2557cc[_0x54c2d4(0x168)]||_0x3d5a18[_0x54c2d4(0x168)],_0x4562de=await resolveTargetDbBinding(_0x3292f2['appCode'],_0x2557cc,_0x3d5a18),_0x3c459f=await updateSqlQuery({'id':_0x3d5a18[_0x54c2d4(0x192)],'appCode':_0x3292f2[_0x54c2d4(0x165)],'sqlCode':_0x2557cc[_0x54c2d4(0x155)],'sqlName':_0x4f8a69,'dbId':_0x4562de['dbId'],'version':_0x3d5a18[_0x54c2d4(0x171)],'sqlContent':_0x52296d,'sqlConfig':_0x3d5a18[_0x54c2d4(0x17d)]??undefined}),_0x85f621=_0x3c459f[_0x54c2d4(0x150)]?await getDbName(_0x3292f2[_0x54c2d4(0x165)],Number(_0x3c459f[_0x54c2d4(0x150)]))[_0x54c2d4(0x175)](()=>_0x4562de[_0x54c2d4(0x180)]):_0x4562de[_0x54c2d4(0x180)];_0x43a802[_0x54c2d4(0x169)][_0x2557cc[_0x54c2d4(0x155)]]={...buildSqlLockEntry(_0x3c459f,_0x52296d,_0x3f6d6c,{'dbName':_0x85f621}),'path':_0x2557cc[_0x54c2d4(0x16c)],'mode':_0x3d5a18[_0x54c2d4(0x16e)]},await archivePreviousSqlFileIfNeeded(_0x834558,_0x3d5a18[_0x54c2d4(0x18c)],_0x2557cc[_0x54c2d4(0x16c)]),_0xf0b2b9[_0x54c2d4(0x173)]({'sqlCode':_0x2557cc[_0x54c2d4(0x155)],'remoteId':_0x3d5a18[_0x54c2d4(0x192)]});}catch(_0x34c12e){_0x4274e7[_0x54c2d4(0x173)]({'sqlCode':_0x2557cc[_0x54c2d4(0x155)],'error':_0x34c12e instanceof Error?_0x34c12e['message']:String(_0x34c12e)});}}return _0x43a802[_0x54c2d4(0x154)]=new Date()[_0x54c2d4(0x17e)](),await writeSqlLockFile(_0x834558[_0x54c2d4(0x156)],_0x67d28e),{'ok':_0x4274e7[_0x54c2d4(0x194)]===0x0,'data':{'pushed':_0xf0b2b9,'skipped':_0x343ca7,'failed':_0x4274e7},'message':_0x54c2d4(0x18f)+_0xf0b2b9[_0x54c2d4(0x194)]+_0x54c2d4(0x160)+_0x343ca7[_0x54c2d4(0x194)]+_0x54c2d4(0x181)+_0x4274e7[_0x54c2d4(0x194)]+_0x54c2d4(0x172)};}};async function archivePreviousSqlFileIfNeeded(_0x5f1b05,_0x3ea8eb,_0x485779){const _0x4ab6a5=a192_0x5339b1;if(!_0x3ea8eb||_0x3ea8eb===_0x485779)return;const _0x2105cd=join(_0x5f1b05[_0x4ab6a5(0x179)],_0x3ea8eb);if(!await fileExists(_0x2105cd))return;const _0x2eff19=await moveToTrash(_0x5f1b05[_0x4ab6a5(0x161)],_0x5f1b05[_0x4ab6a5(0x16f)],_0x2105cd);await cleanupEmptyDirectories(dirname(_0x2105cd),_0x5f1b05['sqlRootDir']),void _0x2eff19;}async function moveToTrash(_0x18bfdd,_0x3dcc6c,_0x2b5812){const _0x54364b=a192_0x5339b1,_0x2e6f6a=new Date()[_0x54364b(0x17e)]()[_0x54364b(0x189)](/[:.]/g,'-'),_0x25182b=relative(_0x18bfdd,_0x2b5812),_0x13c745=join(_0x3dcc6c,_0x2e6f6a,_0x25182b);return await mkdir(dirname(_0x13c745),{'recursive':!![]}),await rename(_0x2b5812,_0x13c745),_0x13c745;}async function cleanupEmptyDirectories(_0xc0e1c2,_0x1337ef){const _0x3e8d62=a192_0x5339b1;let _0x36732f=resolve(_0xc0e1c2);const _0x1fa64f=resolve(_0x1337ef);while(_0x36732f[_0x3e8d62(0x15a)](''+_0x1fa64f+sep)||_0x36732f===_0x1fa64f){if(_0x36732f===_0x1fa64f)return;try{const _0xa31618=await readdir(_0x36732f);if(_0xa31618[_0x3e8d62(0x194)]>0x0)return;await rmdir(_0x36732f);}catch{return;}_0x36732f=dirname(_0x36732f);}}async function resolveTargetDbBinding(_0x477d34,_0x4ca252,_0x44deaf){const _0x210af5=a192_0x5339b1,_0x125b6c=_0x4ca252['dbDirectory'];if(!_0x125b6c)return{'dbId':_0x44deaf[_0x210af5(0x150)],'dbName':_0x44deaf[_0x210af5(0x180)]};const _0x5c4416=buildDbDirectoryName(_0x44deaf['dbName'],_0x44deaf[_0x210af5(0x150)]);if(_0x125b6c===_0x5c4416)return{'dbId':_0x44deaf[_0x210af5(0x150)],'dbName':_0x44deaf[_0x210af5(0x180)]};const _0x3f9668=parseExplicitDbDirectory(_0x125b6c);if(_0x3f9668!=null)return{'dbId':_0x3f9668,'dbName':await getDbName(_0x477d34,_0x3f9668)[_0x210af5(0x175)](()=>undefined)};const _0x29d22e=await listDatabases(_0x477d34),_0x4bd348=_0x29d22e[_0x210af5(0x178)](_0x36673a=>buildDbDirectoryName(_0x36673a['dbName'],_0x36673a['dbId'])===_0x125b6c);if(_0x4bd348[_0x210af5(0x194)]===0x1)return{'dbId':_0x4bd348[0x0][_0x210af5(0x150)],'dbName':_0x4bd348[0x0][_0x210af5(0x180)]};if(_0x4bd348[_0x210af5(0x194)]===0x0)throw CliErrors['validation'](_0x210af5(0x158)+_0x125b6c+_0x210af5(0x16b)+_0x4ca252[_0x210af5(0x155)]+'.');const _0x5c5626=_0x4bd348[_0x210af5(0x183)](_0x1f540a=>_0x1f540a[_0x210af5(0x180)]+'\x20('+_0x1f540a[_0x210af5(0x150)]+')')['join'](',\x20');throw CliErrors[_0x210af5(0x163)](_0x210af5(0x151)+_0x125b6c+_0x210af5(0x188)+_0x4ca252[_0x210af5(0x155)]+':\x20'+_0x5c5626);}function parseExplicitDbDirectory(_0x49db2d){const _0x239169=a192_0x5339b1,_0x55bc42=/^db-(\d+)$/[_0x239169(0x170)](_0x49db2d);if(!_0x55bc42)return null;const _0x4fb7ed=Number(_0x55bc42[0x1]);return Number[_0x239169(0x190)](_0x4fb7ed)&&_0x4fb7ed>0x0?_0x4fb7ed:null;}
|
|
1
|
+
const a192_0x1c918f=a192_0x469e;(function(_0x2c7e8a,_0x143285){const _0x11d916=a192_0x469e,_0x462502=_0x2c7e8a();while(!![]){try{const _0x529ef7=-parseInt(_0x11d916(0xd0))/0x1+-parseInt(_0x11d916(0xcd))/0x2*(parseInt(_0x11d916(0xcb))/0x3)+-parseInt(_0x11d916(0xd7))/0x4+parseInt(_0x11d916(0xb1))/0x5*(-parseInt(_0x11d916(0xa5))/0x6)+-parseInt(_0x11d916(0xd5))/0x7*(-parseInt(_0x11d916(0xd2))/0x8)+-parseInt(_0x11d916(0xb2))/0x9*(parseInt(_0x11d916(0xc0))/0xa)+-parseInt(_0x11d916(0xd1))/0xb*(-parseInt(_0x11d916(0xbd))/0xc);if(_0x529ef7===_0x143285)break;else _0x462502['push'](_0x462502['shift']());}catch(_0x508807){_0x462502['push'](_0x462502['shift']());}}}(a192_0x32c2,0xa83a4));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';function a192_0x469e(_0x564dc3,_0x212258){_0x564dc3=_0x564dc3-0x9b;const _0x32c2cc=a192_0x32c2();let _0x469ee2=_0x32c2cc[_0x564dc3];return _0x469ee2;}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 a192_0x32c2(){const _0x972d46=['Force\x20push\x20even\x20if\x20local\x20hash\x20matches\x20lock','bool','\x20skipped,\x20','156CEnnqL','mode','unchanged','492880QUOyDC','filter','get','map','write','/smartapi/custom/updateUserCustomSql','sqlCode','toISOString','set','dbName','Local\x20SQL\x20not\x20found:\x20','1965HFxtkn','exec','2594FhfCwW','dbId','\x20pushed,\x20','192036UyGvVB','2900711BlolsL','541752urUEkY','Push\x20complete:\x20','trashDir','28AQYXPL','sqlRoot','223604HYYzyK','utf8','message','relativePath','filePath','push','path','.\x20Keep\x20only\x20one\x20file\x20under\x20its\x20sqlCode\x20directory\x20before\x20pushing.','remoteId','sqlConfig','join','sqlRootDir','startsWith','force','Would\x20push\x20','sqlcode','catch','entries','45726CaFpnF','hash','has','Push\x20local\x20SQL\x20files\x20to\x20remote','lastSync','length','boolean','No\x20local\x20SQL\x20files\x20found.','Multiple\x20local\x20SQL\x20files\x20found\x20for\x20sqlCode\x20','appCode','lockFilePath','validation','705vlhLPS','153AePlVn','version','Local\x20directory\x20\x22','\x20failed','sqls','isFinite','str','sqlName'];a192_0x32c2=function(){return _0x972d46;};return a192_0x32c2();}import{buildDbDirectoryName}from'../../core/sql-sync/utils.js';async function getTargetSqlQueries(_0x4eb643,_0x33cf80,_0x359310){const _0x128a81=a192_0x469e,_0x1dedb0=await scanLocalSqlQueries(_0x4eb643),_0x1694ad=new Map();for(const _0x507a73 of _0x1dedb0){if(_0x359310&&_0x507a73[_0x128a81(0xc6)]!==_0x359310)continue;const _0x320a8d=_0x1694ad[_0x128a81(0xc2)](_0x507a73['sqlCode'])??[];_0x320a8d['push'](_0x507a73),_0x1694ad[_0x128a81(0xc8)](_0x507a73[_0x128a81(0xc6)],_0x320a8d);}if(_0x359310&&!_0x1694ad[_0x128a81(0xa7)](_0x359310))throw CliErrors[_0x128a81(0xb0)](_0x128a81(0xca)+_0x359310);const _0xc21f42=[];for(const [_0x58b599,_0x50718e]of _0x1694ad[_0x128a81(0xa4)]()){if(_0x50718e[_0x128a81(0xaa)]===0x1){_0xc21f42[_0x128a81(0xdc)](_0x50718e[0x0]);continue;}const _0x2b183c=_0x33cf80[_0x128a81(0xb6)][_0x58b599],_0x3fdc25=_0x2b183c?.['path'],_0x7d1a4f=_0x3fdc25?_0x50718e[_0x128a81(0xc1)](_0x500c78=>_0x500c78[_0x128a81(0xda)]!==_0x3fdc25):_0x50718e;if(_0x2b183c&&_0x7d1a4f[_0x128a81(0xaa)]===0x1){_0xc21f42[_0x128a81(0xdc)](_0x7d1a4f[0x0]);continue;}throw CliErrors['validation'](_0x128a81(0xad)+_0x58b599+_0x128a81(0xde));}return _0xc21f42;}export const sqlPush={'service':'sql','command':a192_0x1c918f(0xdc),'description':a192_0x1c918f(0xa8),'risk':a192_0x1c918f(0xc4),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':'force','type':a192_0x1c918f(0xab),'description':a192_0x1c918f(0xba)}],async 'dryRun'(_0x7c9afb){const _0x1d8c85=a192_0x1c918f,_0x17c592=loadSqlProjectConfig(_0x7c9afb[_0x1d8c85(0xae)]),_0x44bc71=await readSqlLockFile(_0x17c592[_0x1d8c85(0xaf)]),{appLock:_0x353e16}=ensureSqlLockScope(_0x44bc71??createEmptySqlLock(),_0x7c9afb['appCode'],_0x17c592[_0x1d8c85(0xd6)],_0x1d8c85(0xdc)),_0x5038e9=await getTargetSqlQueries(_0x17c592,_0x353e16,_0x7c9afb[_0x1d8c85(0xb8)]('sqlcode')||undefined),_0xcf6864=[];for(const _0x270e28 of _0x5038e9){const _0x336283=await computeSqlFileHash(_0x270e28[_0x1d8c85(0xdb)]),_0x5e8757=_0x353e16[_0x1d8c85(0xb6)][_0x270e28[_0x1d8c85(0xc6)]],_0x18a8ce=!!_0x5e8757&&(_0x5e8757[_0x1d8c85(0xdd)]!==_0x270e28[_0x1d8c85(0xda)]||!!_0x270e28[_0x1d8c85(0xb9)]&&_0x5e8757['sqlName']!==_0x270e28['sqlName']);if(!_0x7c9afb[_0x1d8c85(0xbb)](_0x1d8c85(0xa0))&&_0x5e8757&&_0x5e8757[_0x1d8c85(0xa6)]===_0x336283&&!_0x18a8ce)continue;_0xcf6864[_0x1d8c85(0xdc)](_0x270e28['sqlCode']);}return{'method':'POST','url':_0x1d8c85(0xc5),'body':{'sqlCodes':_0xcf6864,'appCode':_0x7c9afb[_0x1d8c85(0xae)]},'description':_0x1d8c85(0xa1)+_0xcf6864[_0x1d8c85(0xaa)]+'\x20SQL\x20file(s)'};},async 'execute'(_0x55554c){const _0x23c488=a192_0x1c918f,_0x2482bb=loadSqlProjectConfig(_0x55554c[_0x23c488(0xae)]),_0x1789bc=await readSqlLockFile(_0x2482bb[_0x23c488(0xaf)]),{lockData:_0x2c7944,appLock:_0x4b758a}=ensureSqlLockScope(_0x1789bc??createEmptySqlLock(),_0x55554c[_0x23c488(0xae)],_0x2482bb[_0x23c488(0xd6)],'push'),_0x49ad33=await getTargetSqlQueries(_0x2482bb,_0x4b758a,_0x55554c[_0x23c488(0xb8)](_0x23c488(0xa2))||undefined);if(_0x49ad33[_0x23c488(0xaa)]===0x0)return{'ok':!![],'data':{'pushed':[],'skipped':[],'failed':[]},'message':_0x23c488(0xac)};const _0x24e5be=[],_0x2ec8b3=[],_0x4da585=[];for(const _0x1a2659 of _0x49ad33){const _0x12feb3=_0x4b758a['sqls'][_0x1a2659[_0x23c488(0xc6)]];if(!_0x12feb3){_0x4da585[_0x23c488(0xdc)]({'sqlCode':_0x1a2659[_0x23c488(0xc6)],'error':'local\x20SQL\x20is\x20not\x20tracked\x20by\x20sql.lock.json;\x20use\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first'});continue;}try{const _0x235123=await computeSqlFileHash(_0x1a2659[_0x23c488(0xdb)]),_0x3dbfaf=_0x12feb3[_0x23c488(0xdd)]!==_0x1a2659[_0x23c488(0xda)]||!!_0x1a2659[_0x23c488(0xb9)]&&_0x12feb3['sqlName']!==_0x1a2659['sqlName'];if(!_0x55554c[_0x23c488(0xbb)](_0x23c488(0xa0))&&_0x12feb3[_0x23c488(0xa6)]===_0x235123&&!_0x3dbfaf){_0x2ec8b3['push']({'sqlCode':_0x1a2659[_0x23c488(0xc6)],'reason':_0x23c488(0xbf)});continue;}if(_0x12feb3[_0x23c488(0xb3)]==null){_0x4da585[_0x23c488(0xdc)]({'sqlCode':_0x1a2659[_0x23c488(0xc6)],'error':'missing\x20remote\x20version;\x20run\x20`rabetbase\x20sql\x20pull`\x20to\x20refresh\x20version\x20info\x20first'});continue;}const _0x3d933e=await readFile(_0x1a2659[_0x23c488(0xdb)],_0x23c488(0xd8)),_0x515952=stripLocalSqlMetadata(_0x3d933e,_0x1a2659[_0x23c488(0xbe)]),_0xae03bb=_0x1a2659[_0x23c488(0xb9)]||_0x12feb3[_0x23c488(0xb9)],_0x5d97e2=await resolveTargetDbBinding(_0x55554c[_0x23c488(0xae)],_0x1a2659,_0x12feb3),_0x1ccccf=await updateSqlQuery({'id':_0x12feb3[_0x23c488(0x9b)],'appCode':_0x55554c[_0x23c488(0xae)],'sqlCode':_0x1a2659[_0x23c488(0xc6)],'sqlName':_0xae03bb,'dbId':_0x5d97e2[_0x23c488(0xce)],'version':_0x12feb3[_0x23c488(0xb3)],'sqlContent':_0x515952,'sqlConfig':_0x12feb3[_0x23c488(0x9c)]??undefined}),_0x2cd8fa=_0x1ccccf[_0x23c488(0xce)]?await getDbName(_0x55554c[_0x23c488(0xae)],Number(_0x1ccccf['dbId']))['catch'](()=>_0x5d97e2[_0x23c488(0xc9)]):_0x5d97e2[_0x23c488(0xc9)];_0x4b758a['sqls'][_0x1a2659['sqlCode']]={...buildSqlLockEntry(_0x1ccccf,_0x515952,_0x235123,{'dbName':_0x2cd8fa}),'path':_0x1a2659[_0x23c488(0xda)],'mode':_0x12feb3[_0x23c488(0xbe)]},await archivePreviousSqlFileIfNeeded(_0x2482bb,_0x12feb3[_0x23c488(0xdd)],_0x1a2659[_0x23c488(0xda)]),_0x24e5be[_0x23c488(0xdc)]({'sqlCode':_0x1a2659['sqlCode'],'remoteId':_0x12feb3[_0x23c488(0x9b)]});}catch(_0x4db2b7){_0x4da585[_0x23c488(0xdc)]({'sqlCode':_0x1a2659[_0x23c488(0xc6)],'error':_0x4db2b7 instanceof Error?_0x4db2b7[_0x23c488(0xd9)]:String(_0x4db2b7)});}}return _0x4b758a[_0x23c488(0xa9)]=new Date()[_0x23c488(0xc7)](),await writeSqlLockFile(_0x2482bb[_0x23c488(0xaf)],_0x2c7944),{'ok':_0x4da585[_0x23c488(0xaa)]===0x0,'data':{'pushed':_0x24e5be,'skipped':_0x2ec8b3,'failed':_0x4da585},'message':_0x23c488(0xd3)+_0x24e5be[_0x23c488(0xaa)]+_0x23c488(0xcf)+_0x2ec8b3[_0x23c488(0xaa)]+_0x23c488(0xbc)+_0x4da585[_0x23c488(0xaa)]+_0x23c488(0xb5)};}};async function archivePreviousSqlFileIfNeeded(_0x4c42a4,_0x25404c,_0x24a3bd){const _0x4159ce=a192_0x1c918f;if(!_0x25404c||_0x25404c===_0x24a3bd)return;const _0x38d73b=join(_0x4c42a4[_0x4159ce(0x9e)],_0x25404c);if(!await fileExists(_0x38d73b))return;const _0x3b5d68=await moveToTrash(_0x4c42a4['projectRoot'],_0x4c42a4[_0x4159ce(0xd4)],_0x38d73b);await cleanupEmptyDirectories(dirname(_0x38d73b),_0x4c42a4[_0x4159ce(0x9e)]),void _0x3b5d68;}async function moveToTrash(_0x3e63f2,_0x170ae0,_0x160636){const _0x306463=a192_0x1c918f,_0x4484d4=new Date()[_0x306463(0xc7)]()['replace'](/[:.]/g,'-'),_0x17c3ec=relative(_0x3e63f2,_0x160636),_0x4a2b90=join(_0x170ae0,_0x4484d4,_0x17c3ec);return await mkdir(dirname(_0x4a2b90),{'recursive':!![]}),await rename(_0x160636,_0x4a2b90),_0x4a2b90;}async function cleanupEmptyDirectories(_0x17ba6f,_0x1ab24f){const _0x2e46e9=a192_0x1c918f;let _0x48f784=resolve(_0x17ba6f);const _0x1c895d=resolve(_0x1ab24f);while(_0x48f784[_0x2e46e9(0x9f)](''+_0x1c895d+sep)||_0x48f784===_0x1c895d){if(_0x48f784===_0x1c895d)return;try{const _0x100dc5=await readdir(_0x48f784);if(_0x100dc5['length']>0x0)return;await rmdir(_0x48f784);}catch{return;}_0x48f784=dirname(_0x48f784);}}async function resolveTargetDbBinding(_0x54ecc3,_0x478f15,_0x2155cd){const _0x3c1f26=a192_0x1c918f,_0x2912b9=_0x478f15['dbDirectory'];if(!_0x2912b9)return{'dbId':_0x2155cd[_0x3c1f26(0xce)],'dbName':_0x2155cd[_0x3c1f26(0xc9)]};const _0x21fe75=buildDbDirectoryName(_0x2155cd[_0x3c1f26(0xc9)],_0x2155cd[_0x3c1f26(0xce)]);if(_0x2912b9===_0x21fe75)return{'dbId':_0x2155cd['dbId'],'dbName':_0x2155cd[_0x3c1f26(0xc9)]};const _0x2529d1=parseExplicitDbDirectory(_0x2912b9);if(_0x2529d1!=null)return{'dbId':_0x2529d1,'dbName':await getDbName(_0x54ecc3,_0x2529d1)[_0x3c1f26(0xa3)](()=>undefined)};const _0xf2d021=await listDatabases(_0x54ecc3),_0x41e899=_0xf2d021[_0x3c1f26(0xc1)](_0x37afff=>buildDbDirectoryName(_0x37afff['dbName'],_0x37afff[_0x3c1f26(0xce)])===_0x2912b9);if(_0x41e899['length']===0x1)return{'dbId':_0x41e899[0x0]['dbId'],'dbName':_0x41e899[0x0][_0x3c1f26(0xc9)]};if(_0x41e899[_0x3c1f26(0xaa)]===0x0)throw CliErrors['validation']('No\x20database\x20matches\x20local\x20directory\x20\x22'+_0x2912b9+'\x22\x20for\x20sqlCode\x20'+_0x478f15[_0x3c1f26(0xc6)]+'.');const _0x5ed45c=_0x41e899[_0x3c1f26(0xc3)](_0x4cf736=>_0x4cf736[_0x3c1f26(0xc9)]+'\x20('+_0x4cf736[_0x3c1f26(0xce)]+')')[_0x3c1f26(0x9d)](',\x20');throw CliErrors[_0x3c1f26(0xb0)](_0x3c1f26(0xb4)+_0x2912b9+'\x22\x20matches\x20multiple\x20databases\x20for\x20sqlCode\x20'+_0x478f15[_0x3c1f26(0xc6)]+':\x20'+_0x5ed45c);}function parseExplicitDbDirectory(_0x248e8d){const _0x54cb61=a192_0x1c918f,_0x25c1b8=/^db-(\d+)$/[_0x54cb61(0xcc)](_0x248e8d);if(!_0x25c1b8)return null;const _0x78fa49=Number(_0x25c1b8[0x1]);return Number[_0x54cb61(0xb7)](_0x78fa49)&&_0x78fa49>0x0?_0x78fa49:null;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
const a193_0x26fece=a193_0x32ea;(function(_0x4de378,_0x4484f2){const _0x52deaf=a193_0x32ea,_0xf41d7f=_0x4de378();while(!![]){try{const _0x3d72ba=parseInt(_0x52deaf(0x8c))/0x1*(parseInt(_0x52deaf(0x8e))/0x2)+-parseInt(_0x52deaf(0xb1))/0x3+-parseInt(_0x52deaf(0xab))/0x4*(parseInt(_0x52deaf(0x91))/0x5)+-parseInt(_0x52deaf(0xa6))/0x6+parseInt(_0x52deaf(0xaf))/0x7*(-parseInt(_0x52deaf(0x8a))/0x8)+parseInt(_0x52deaf(0x9c))/0x9+parseInt(_0x52deaf(0xa3))/0xa;if(_0x3d72ba===_0x4484f2)break;else _0xf41d7f['push'](_0xf41d7f['shift']());}catch(_0x580ecb){_0xf41d7f['push'](_0xf41d7f['shift']());}}}(a193_0x1f8d,0x678eb));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=a193_0x26fece(0x8b);export function buildSqlLockEntry(_0x17b7bd,_0x3b4c2c,_0x41f22c,_0x26aa0d){const _0x10b449=a193_0x26fece,_0x3e5e0c=detectSqlMode(_0x3b4c2c);return{'path':buildSqlRelativePath(_0x17b7bd[_0x10b449(0xb0)],_0x17b7bd[_0x10b449(0x88)],_0x26aa0d?.[_0x10b449(0xa9)],_0x3e5e0c,_0x17b7bd[_0x10b449(0x99)]),'hash':_0x41f22c,'remoteId':_0x17b7bd['id'],'version':_0x17b7bd[_0x10b449(0x97)],'dbId':Number(_0x17b7bd[_0x10b449(0x99)]),'dbName':_0x26aa0d?.[_0x10b449(0xa9)],'sqlName':_0x17b7bd[_0x10b449(0x88)],'sqlConfig':_0x17b7bd[_0x10b449(0x94)]??undefined,'mode':_0x3e5e0c};}export function cloneSqlLockData(_0x269308){const _0x5afc2d=a193_0x26fece;return{'apps':Object['fromEntries'](Object['entries'](_0x269308[_0x5afc2d(0xa5)])[_0x5afc2d(0xad)](([_0x282989,_0x4e1894])=>[_0x282989,{'sqlRoot':_0x4e1894[_0x5afc2d(0xae)],'lastSync':_0x4e1894['lastSync'],'sqls':{..._0x4e1894[_0x5afc2d(0xa1)]}}]))};}export function ensureRemoteSqlContent(_0x537971){const _0x26cc21=a193_0x26fece;return _0x537971[_0x26cc21(0x9a)]??'';}export function buildLocalSqlFileContent(_0x4b320a,_0x2fd1ca,_0x3bf874){const _0x45c90e=a193_0x26fece,_0x407440=_0x3bf874?.[_0x45c90e(0x93)]??detectSqlMode(_0x2fd1ca),_0x59ba13=stripLocalSqlMetadata(_0x2fd1ca,_0x407440)[_0x45c90e(0x89)](),_0x111e56=[...buildMetadataHeaderLines({'sqlCode':_0x4b320a[_0x45c90e(0xb0)],'sqlName':_0x4b320a[_0x45c90e(0x88)],'dbId':_0x4b320a[_0x45c90e(0x99)],'dbName':_0x3bf874?.[_0x45c90e(0xa9)],'mode':_0x407440,'syncedAt':_0x3bf874?.[_0x45c90e(0x9d)],'description':_0x3bf874?.[_0x45c90e(0x9f)]},_0x407440),'',_0x59ba13],_0x2045ec=_0x111e56['join']('\x0a');return _0x2045ec[_0x45c90e(0xa7)]('\x0a')?_0x2045ec:_0x2045ec+'\x0a';}function a193_0x32ea(_0x40bae7,_0x35d175){_0x40bae7=_0x40bae7-0x88;const _0x1f8d6a=a193_0x1f8d();let _0x32eaae=_0x1f8d6a[_0x40bae7];return _0x32eaae;}export function stripLocalSqlMetadata(_0x1c421b,_0x3cc134){const _0x55460a=a193_0x26fece,_0x4d72ca=_0x1c421b['replace'](/\r\n/g,'\x0a')[_0x55460a(0x9b)]('\x0a'),_0x2fde12=[];let _0x1db617=0x0;if(_0x3cc134===_0x55460a(0x92))while(_0x1db617<_0x4d72ca[_0x55460a(0xa8)]){const _0x4d14e0=_0x4d72ca[_0x1db617]??'';if(/^\s*<!--\s*@lovrabet\./[_0x55460a(0xa2)](_0x4d14e0)){_0x1db617++;continue;}if(_0x4d14e0[_0x55460a(0x89)]()===''&&_0x1db617>0x0){_0x1db617++;continue;}break;}else while(_0x1db617<_0x4d72ca[_0x55460a(0xa8)]){const _0x42bdc0=_0x4d72ca[_0x1db617]??'';if(/^\s*--\s*@lovrabet\./[_0x55460a(0xa2)](_0x42bdc0)){_0x1db617++;continue;}if(_0x42bdc0[_0x55460a(0x89)]()===''&&_0x1db617>0x0){_0x1db617++;continue;}break;}for(;_0x1db617<_0x4d72ca[_0x55460a(0xa8)];_0x1db617++){_0x2fde12['push'](_0x4d72ca[_0x1db617]);}return _0x2fde12[_0x55460a(0x8f)]('\x0a')['trimStart']();}export function resolveSqlMode(_0x1293a5,_0x3bbacb){const _0x45b35c=a193_0x26fece;if(_0x3bbacb?.[_0x45b35c(0x93)])return _0x3bbacb['mode'];return detectSqlMode(_0x1293a5);}export function resolveSqlFileName(_0x5604bd,_0x81bd9d,_0x1a2007){const _0x552caf=a193_0x26fece;if(_0x1a2007?.[_0x552caf(0xb2)])return _0x1a2007[_0x552caf(0xb2)];if(_0x1a2007?.[_0x552caf(0x88)]||_0x1a2007?.['dbName'])return buildSqlRelativePath(_0x5604bd,_0x1a2007?.[_0x552caf(0x88)],_0x1a2007?.[_0x552caf(0xa9)],resolveSqlMode(_0x81bd9d,_0x1a2007),_0x1a2007?.['dbId']);return buildDefaultSqlFileName(_0x5604bd,resolveSqlMode(_0x81bd9d,_0x1a2007));}export function resolveSqlLocalDir(_0x3860cf,_0xdc3419){return join(_0x3860cf,SQL_LOCAL_REL_DIR,_0xdc3419);}export async function confirmForceOverwrite(_0x1787b9){const _0x1f14a8=a193_0x26fece,_0x44691=createInterface({'input':process[_0x1f14a8(0xa4)],'output':process[_0x1f14a8(0x90)]}),_0x48a9c1=await new Promise(_0x2a8748=>{_0x44691['question'](_0x1787b9+'\x20[y/N]\x20',_0x2a8748);});return _0x44691[_0x1f14a8(0x95)](),['y',_0x1f14a8(0xac)][_0x1f14a8(0x96)](_0x48a9c1[_0x1f14a8(0x89)]()[_0x1f14a8(0xa0)]());}export function findSqlLockScope(_0x29cd47,_0x11b819){const _0x164a87=a193_0x26fece;return _0x29cd47[_0x164a87(0xa5)][_0x11b819];}function buildMetadataHeaderLines(_0x38b4a5,_0xf5cda1){const _0x582b87=a193_0x26fece,_0x3d2225=[['sqlCode',_0x38b4a5[_0x582b87(0xb0)]],[_0x582b87(0x88),_0x38b4a5[_0x582b87(0x88)]],['dbId',_0x38b4a5[_0x582b87(0x99)]],[_0x582b87(0xa9),_0x38b4a5[_0x582b87(0xa9)]],[_0x582b87(0x93),_0x38b4a5['mode']],[_0x582b87(0x9d),_0x38b4a5[_0x582b87(0x9d)]],[_0x582b87(0x9f),_0x38b4a5['description']]];if(_0xf5cda1==='mybatisXml')return _0x3d2225[_0x582b87(0x9e)](([,_0x2d6181])=>_0x2d6181!==undefined&&_0x2d6181!==null&&String(_0x2d6181)[_0x582b87(0x89)]()!=='')[_0x582b87(0xad)](([_0x6967aa,_0x4cd243])=>_0x582b87(0x98)+_0x6967aa+':\x20'+String(_0x4cd243)+_0x582b87(0x8d));return _0x3d2225[_0x582b87(0x9e)](([,_0x4861a7])=>_0x4861a7!==undefined&&_0x4861a7!==null&&String(_0x4861a7)['trim']()!=='')['map'](([_0x20845b,_0x36afa9])=>_0x582b87(0xaa)+_0x20845b+':\x20'+String(_0x36afa9));}function a193_0x1f8d(){const _0x3ad1a=['1242969ZmAYWC','path','sqlName','trim','76536fSMjwb','.rabetbase/sql','1DMhYFa','\x20-->','54878VkmqdJ','join','stderr','5WyVlHx','mybatisXml','mode','sqlConfig','close','includes','version','<!--\x20@lovrabet.','dbId','sqlContent','split','3078306anHoZv','syncedAt','filter','description','toLowerCase','sqls','test','22098070iMccvt','stdin','apps','3164358TzFsuH','endsWith','length','dbName','--\x20@lovrabet.','2060008mtEsYy','yes','map','sqlRoot','511Zfqyto','sqlCode'];a193_0x1f8d=function(){return _0x3ad1a;};return a193_0x1f8d();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a194_0x3687e7=a194_0x4bc0;(function(_0x2c7d2c,_0x25fdb0){const _0xb4a39=a194_0x4bc0,_0x4028cc=_0x2c7d2c();while(!![]){try{const _0x310c35=parseInt(_0xb4a39(0x141))/0x1*(-parseInt(_0xb4a39(0x137))/0x2)+parseInt(_0xb4a39(0x150))/0x3+parseInt(_0xb4a39(0x149))/0x4*(-parseInt(_0xb4a39(0x14a))/0x5)+-parseInt(_0xb4a39(0x14c))/0x6*(-parseInt(_0xb4a39(0x136))/0x7)+-parseInt(_0xb4a39(0x13b))/0x8*(-parseInt(_0xb4a39(0x14d))/0x9)+parseInt(_0xb4a39(0x145))/0xa+-parseInt(_0xb4a39(0x139))/0xb;if(_0x310c35===_0x25fdb0)break;else _0x4028cc['push'](_0x4028cc['shift']());}catch(_0x54380e){_0x4028cc['push'](_0x4028cc['shift']());}}}(a194_0x1f6f,0xcb0c1));import{listSqlQueries}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{scanLocalSqlQueries}from'../../core/sql-sync/file-system.js';import{computeSqlFileHash}from'../../core/sql-sync/hash.js';function a194_0x4bc0(_0x5621b1,_0x493424){_0x5621b1=_0x5621b1-0x136;const _0x1f6fea=a194_0x1f6f();let _0x4bc0ce=_0x1f6fea[_0x5621b1];return _0x4bc0ce;}import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile}from'../../core/sql-sync/lock.js';const PAGE_SIZE=0x64;async function fetchAllSqlCodes(_0xa6f0a6){const _0x135d0e=a194_0x4bc0,_0x2d9821=[];let _0x26f72d=0x1;while(!![]){const _0x211898=await listSqlQueries(_0xa6f0a6,{'currentPage':_0x26f72d,'pageSize':PAGE_SIZE}),_0x3d857b=_0x211898['tableData']??[];_0x2d9821[_0x135d0e(0x140)](..._0x3d857b[_0x135d0e(0x143)](_0x1e46ea=>_0x1e46ea['sqlCode']));if(_0x3d857b[_0x135d0e(0x13a)]===0x0)break;const _0x1a35e6=_0x211898['paging']?.[_0x135d0e(0x13f)];if(_0x1a35e6!=null?_0x2d9821[_0x135d0e(0x13a)]>=_0x1a35e6:_0x3d857b['length']<PAGE_SIZE)break;_0x26f72d++;}return _0x2d9821;}export const sqlStatus={'service':'sql','command':a194_0x3687e7(0x13c),'description':'Check\x20local\x20SQL\x20sync\x20status\x20against\x20lock\x20file','risk':a194_0x3687e7(0x153),'flags':[{'name':'remote','type':a194_0x3687e7(0x14e),'description':a194_0x3687e7(0x148)}],async 'execute'(_0x58dec4){const _0x3436c0=a194_0x3687e7,_0x50bd76=loadSqlProjectConfig(_0x58dec4[_0x3436c0(0x13e)]),_0x5b81df=await readSqlLockFile(_0x50bd76[_0x3436c0(0x14f)]),{appLock:_0x5bb1c1}=ensureSqlLockScope(_0x5b81df??createEmptySqlLock(),_0x50bd76[_0x3436c0(0x13e)],_0x50bd76[_0x3436c0(0x144)],'status'),_0xdfd14b=await scanLocalSqlQueries(_0x50bd76),_0x4f737b=[],_0x222468=[],_0x5be02a=[],_0x42a91f=[],_0x4a3b35=new Set(_0xdfd14b[_0x3436c0(0x143)](_0x24cf70=>_0x24cf70[_0x3436c0(0x147)]));for(const _0x169a2b of _0xdfd14b){const _0x5b60c8=await computeSqlFileHash(_0x169a2b['filePath']),_0x550c68=_0x5bb1c1['sqls'][_0x169a2b[_0x3436c0(0x147)]],_0x1abd31=!!_0x550c68&&_0x550c68['path']!==_0x169a2b['relativePath'],_0x1d1236=!!_0x550c68&&!!_0x169a2b[_0x3436c0(0x13d)]&&_0x550c68[_0x3436c0(0x13d)]!==_0x169a2b['sqlName'];if(!_0x550c68)_0x4f737b[_0x3436c0(0x140)](_0x169a2b[_0x3436c0(0x147)]);else _0x550c68['hash']!==_0x5b60c8||_0x1abd31||_0x1d1236?_0x222468[_0x3436c0(0x140)](_0x169a2b[_0x3436c0(0x147)]):_0x5be02a[_0x3436c0(0x140)](_0x169a2b[_0x3436c0(0x147)]);}for(const _0x20325d of Object[_0x3436c0(0x142)](_0x5bb1c1[_0x3436c0(0x138)])){!_0x4a3b35[_0x3436c0(0x146)](_0x20325d)&&_0x42a91f[_0x3436c0(0x140)](_0x20325d);}const _0x1b0c86=[];if(_0x58dec4[_0x3436c0(0x152)](_0x3436c0(0x14b))){const _0x3b6e74=await fetchAllSqlCodes(_0x58dec4[_0x3436c0(0x13e)]);for(const _0x28b8d9 of _0x3b6e74){!_0x4a3b35[_0x3436c0(0x146)](_0x28b8d9)&&!_0x5bb1c1[_0x3436c0(0x138)][_0x28b8d9]&&_0x1b0c86[_0x3436c0(0x140)](_0x28b8d9);}}const _0x3489ab=_0x4f737b[_0x3436c0(0x13a)]===0x0&&_0x222468['length']===0x0&&_0x42a91f[_0x3436c0(0x13a)]===0x0&&_0x1b0c86[_0x3436c0(0x13a)]===0x0;return{'ok':!![],'data':{'added':_0x4f737b,'modified':_0x222468,'missing':_0x42a91f,'unchanged':_0x5be02a,'remoteOnly':_0x1b0c86},'message':_0x3489ab?'All\x20SQL\x20queries\x20are\x20in\x20sync.':_0x4f737b[_0x3436c0(0x13a)]+_0x3436c0(0x154)+_0x222468[_0x3436c0(0x13a)]+'\x20modified,\x20'+_0x42a91f[_0x3436c0(0x13a)]+'\x20missing,\x20'+_0x5be02a['length']+'\x20unchanged'+(_0x1b0c86[_0x3436c0(0x13a)]>0x0?',\x20'+_0x1b0c86[_0x3436c0(0x13a)]+_0x3436c0(0x151):'')};}};function a194_0x1f6f(){const _0x373ca3=['read','\x20added,\x20','7kcBLhI','947038eiDmUP','sqls','27984374zsVfNB','length','24uZBOTm','status','sqlName','appCode','totalCount','push','2kbmnbt','keys','map','sqlRoot','16074460fVsnut','has','lockKey','Also\x20check\x20for\x20remote-only\x20SQL\x20queries\x20not\x20present\x20locally','28YyFehE','781790CoOaHF','remote','9212730geWCbT','2439189DiVRLU','boolean','lockFilePath','4383885FGkotJ','\x20remote-only','bool'];a194_0x1f6f=function(){return _0x373ca3;};return a194_0x1f6f();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a195_0x2b7273=a195_0x589c;(function(_0x17203e,_0x48e8c9){const _0xcc40f2=a195_0x589c,_0x1db952=_0x17203e();while(!![]){try{const _0x1e19ae=parseInt(_0xcc40f2(0x1a3))/0x1*(-parseInt(_0xcc40f2(0x1c3))/0x2)+-parseInt(_0xcc40f2(0x19d))/0x3*(-parseInt(_0xcc40f2(0x1c8))/0x4)+-parseInt(_0xcc40f2(0x1a7))/0x5+parseInt(_0xcc40f2(0x1ca))/0x6*(parseInt(_0xcc40f2(0x1ac))/0x7)+-parseInt(_0xcc40f2(0x1d3))/0x8*(-parseInt(_0xcc40f2(0x1ad))/0x9)+-parseInt(_0xcc40f2(0x1d6))/0xa+-parseInt(_0xcc40f2(0x1bc))/0xb*(-parseInt(_0xcc40f2(0x1e1))/0xc);if(_0x1e19ae===_0x48e8c9)break;else _0x1db952['push'](_0x1db952['shift']());}catch(_0x543028){_0x1db952['push'](_0x1db952['shift']());}}}(a195_0x5853,0x67b1b));import{readFileSync,existsSync}from'node:fs';function a195_0x589c(_0x4a3cf7,_0x37086b){_0x4a3cf7=_0x4a3cf7-0x19d;const _0x5853fa=a195_0x5853();let _0x589c27=_0x5853fa[_0x4a3cf7];return _0x589c27;}import{resolve}from'node:path';import{validateSql}from'../../core/sql-validator.js';import{auditSqlJoinIndexes}from'../../core/sql-index-auditor.js';function a195_0x5853(){const _0x94f6d9=['2mqWxJC','columns','flagMissing','indexName','reason','20FpdvOQ','index_name','174OCbxvB','from','\x22\x20not\x20found\x20or\x20not\x20accessible','length','file','dbtableConfig','Validate\x20SQL\x20content\x20without\x20saving\x20(type\x20detection,\x20parameter\x20extraction,\x20optional\x20schema\x20check)','name','indexes','24SSaJZK','Table\x20\x22','message','1150100wGEBCi','schema:','isArray','tableName','sql','utf-8','isDangerous','Inline\x20SQL\x20content\x20to\x20validate\x20(alternative\x20to\x20--file)','unshift','index_columns','string','16368wVLoyM','Audit\x20top-level\x20JOIN\x20equality\x20predicates\x20against\x20dataset\x20index\x20metadata','Comma-separated\x20dataset\x20codes\x20to\x20cross-check\x20table/column\x20names\x20against','331122AhumHl','filter','trim','--check-indexes\x20requires\x20--schemas.','schemas','fields','534901wApepu','str','columnNames','Provide\x20--file\x20or\x20--sql','89325CVKFZp','check-indexes','appCode','valid','dataset','88529kTsyYv','484794PvPQzF','validation','validate','push','map','toLowerCase','parameters','flatMap','bool','pkField','isSelectOnly','SQL\x20schema\x20validation','split','boolean','Dataset\x20\x22','99ZWwDpg','cwd','File\x20not\x20found:\x20','type','schemaWarnings','Path\x20to\x20the\x20SQL\x20file\x20to\x20validate','sqlType'];a195_0x5853=function(){return _0x94f6d9;};return a195_0x5853();}import{getDatasetDetail,listDatasets}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{assertDatasetIsDbTableBacked,filterDbTableBackedDatasets}from'../../commands/dataset/capability.js';export const sqlValidate={'service':a195_0x2b7273(0x1da),'command':a195_0x2b7273(0x1af),'description':a195_0x2b7273(0x1d0),'risk':'read','flags':[{'name':a195_0x2b7273(0x1ce),'type':a195_0x2b7273(0x1e0),'description':a195_0x2b7273(0x1c1)},{'name':a195_0x2b7273(0x1da),'type':a195_0x2b7273(0x1e0),'description':a195_0x2b7273(0x1dd)},{'name':a195_0x2b7273(0x1a1),'type':a195_0x2b7273(0x1e0),'description':a195_0x2b7273(0x1e3)},{'name':'check-indexes','type':a195_0x2b7273(0x1ba),'description':a195_0x2b7273(0x1e2)}],async 'execute'(_0x5aa0f3){const _0xdeddc4=a195_0x2b7273,_0x4613c3=_0x5aa0f3['str'](_0xdeddc4(0x1ce)),_0x102c38=_0x5aa0f3['str']('sql'),_0x3b3bdd=_0x5aa0f3[_0xdeddc4(0x1a4)](_0xdeddc4(0x1a1)),_0x3fd671=_0x5aa0f3[_0xdeddc4(0x1b5)](_0xdeddc4(0x1a8));if(!_0x4613c3&&!_0x102c38)throw CliErrors[_0xdeddc4(0x1c5)]('file',_0xdeddc4(0x1a6));if(_0x3fd671&&!_0x3b3bdd)throw CliErrors[_0xdeddc4(0x1ae)](_0xdeddc4(0x1a0));let _0x5ee648;if(_0x4613c3){const _0x336bec=resolve(process[_0xdeddc4(0x1bd)](),_0x4613c3);if(!existsSync(_0x336bec))throw CliErrors['validation'](_0xdeddc4(0x1be)+_0x336bec);_0x5ee648=readFileSync(_0x336bec,_0xdeddc4(0x1db));}else _0x5ee648=_0x102c38;const _0xe9390a=validateSql(_0x5ee648),_0x527fdb={'valid':_0xe9390a[_0xdeddc4(0x1aa)],'sqlType':_0xe9390a[_0xdeddc4(0x1c2)][_0xdeddc4(0x1bf)],'isSelectOnly':_0xe9390a['sqlType'][_0xdeddc4(0x1b7)],'isDangerous':_0xe9390a['sqlType'][_0xdeddc4(0x1dc)],'tables':_0xe9390a['tables'],'parameters':_0xe9390a[_0xdeddc4(0x1b3)],'message':_0xe9390a[_0xdeddc4(0x1d5)]};_0xe9390a['sqlType'][_0xdeddc4(0x1c7)]&&(_0x527fdb[_0xdeddc4(0x1c7)]=_0xe9390a['sqlType'][_0xdeddc4(0x1c7)]);if(_0x3b3bdd&&_0xe9390a[_0xdeddc4(0x1aa)]){const _0x4f0017=_0x3b3bdd[_0xdeddc4(0x1b9)](',')[_0xdeddc4(0x1b1)](_0x41a729=>_0x41a729[_0xdeddc4(0x19f)]())[_0xdeddc4(0x19e)](Boolean),_0x1471ce=[],_0x9c97bb=[],_0x2e6e6e=filterDbTableBackedDatasets(await listDatasets(_0x5aa0f3[_0xdeddc4(0x1a9)])),_0x231939=new Map(_0x2e6e6e[_0xdeddc4(0x1b1)](_0x19ac9b=>[_0x19ac9b[_0xdeddc4(0x1cf)]?.[_0xdeddc4(0x1d9)]?.[_0xdeddc4(0x1b2)](),_0x19ac9b]));for(const _0x35c837 of _0xe9390a['tables']){const _0xbf6188=_0x231939['get'](_0x35c837[_0xdeddc4(0x1b2)]());!_0xbf6188&&_0x1471ce['push'](_0xdeddc4(0x1d4)+_0x35c837+'\x22\x20not\x20found\x20in\x20any\x20dataset');}for(const _0x3479a6 of _0x4f0017){let _0x40111c;try{_0x40111c=await getDatasetDetail(_0x3479a6);}catch{_0x1471ce[_0xdeddc4(0x1b0)](_0xdeddc4(0x1bb)+_0x3479a6+_0xdeddc4(0x1cc));continue;}assertDatasetIsDbTableBacked(_0x40111c,_0xdeddc4(0x1b8));const _0x19ff9d=Array[_0xdeddc4(0x1d8)](_0x40111c['fields'])?_0x40111c[_0xdeddc4(0x1a2)]:[],_0x323daa=new Set(_0x19ff9d[_0xdeddc4(0x1b1)](_0x514f8a=>_0x514f8a['name']?.[_0xdeddc4(0x1b2)]())),_0xd0a5d4=_0x40111c['dbtableConfig']?.[_0xdeddc4(0x1d9)]||_0x40111c[_0xdeddc4(0x1d9)]||_0x3479a6;_0x527fdb[_0xdeddc4(0x1d7)+_0xd0a5d4]={'code':_0x3479a6,'tableName':_0xd0a5d4,'fieldCount':_0x323daa['size'],'fields':Array[_0xdeddc4(0x1cb)](_0x323daa)};if(_0x3fd671){const _0x4953b1=normalizeDatasetIndexes(_0x40111c);_0x9c97bb[_0xdeddc4(0x1b0)]({'tableName':_0xd0a5d4,..._0x4953b1});}}_0x1471ce[_0xdeddc4(0x1cd)]>0x0&&(_0x527fdb[_0xdeddc4(0x1c0)]=_0x1471ce),_0x3fd671&&(_0x527fdb['joinAudit']=auditSqlJoinIndexes(_0x5ee648,_0x9c97bb));}return{'ok':_0xe9390a[_0xdeddc4(0x1aa)],'data':_0x527fdb,'message':_0xe9390a[_0xdeddc4(0x1d5)]};}};function normalizeDatasetIndexes(_0x5e99a9){const _0x148651=a195_0x2b7273,_0x492228=Array['isArray'](_0x5e99a9?.[_0x148651(0x1ab)]?.[_0x148651(0x1d2)])?_0x5e99a9[_0x148651(0x1ab)][_0x148651(0x1d2)]:Array[_0x148651(0x1d8)](_0x5e99a9?.[_0x148651(0x1d2)])?_0x5e99a9['indexes']:[],_0x16ff12=_0x492228[_0x148651(0x1b4)](_0x48333a=>{const _0x4d9b27=_0x148651,_0x419720=Array['isArray'](_0x48333a?.[_0x4d9b27(0x1df)])?_0x48333a['index_columns']:Array[_0x4d9b27(0x1d8)](_0x48333a?.[_0x4d9b27(0x1a5)])?_0x48333a[_0x4d9b27(0x1a5)]:Array[_0x4d9b27(0x1d8)](_0x48333a?.['columns'])?_0x48333a[_0x4d9b27(0x1c4)]:[],_0xa32b98=_0x419720[_0x4d9b27(0x19e)](_0x2dcb26=>typeof _0x2dcb26===_0x4d9b27(0x1e0))[_0x4d9b27(0x1b1)](_0xd6aecd=>_0xd6aecd[_0x4d9b27(0x19f)]())[_0x4d9b27(0x19e)](Boolean);if(_0xa32b98[_0x4d9b27(0x1cd)]===0x0)return[];const _0x3eebfb=[_0x48333a?.[_0x4d9b27(0x1c6)],_0x48333a?.[_0x4d9b27(0x1c9)],_0x48333a?.[_0x4d9b27(0x1d1)]]['find'](_0x2857ea=>typeof _0x2857ea===_0x4d9b27(0x1e0)&&_0x2857ea[_0x4d9b27(0x19f)]()),_0x5c9401=[_0x48333a?.['index_type'],_0x48333a?.['type']]['find'](_0x21a61f=>typeof _0x21a61f===_0x4d9b27(0x1e0)&&_0x21a61f[_0x4d9b27(0x19f)]());return[{..._0x3eebfb?{'name':_0x3eebfb[_0x4d9b27(0x19f)]()}:{},..._0x5c9401?{'type':_0x5c9401[_0x4d9b27(0x19f)]()}:{},'columns':_0xa32b98}];}),_0x147988=[..._0x16ff12],_0x123156=typeof _0x5e99a9?.[_0x148651(0x1cf)]?.[_0x148651(0x1b6)]===_0x148651(0x1e0)?_0x5e99a9[_0x148651(0x1cf)]['pkField']['split'](',')[_0x148651(0x1b1)](_0x37fe35=>_0x37fe35[_0x148651(0x19f)]())[_0x148651(0x19e)](Boolean):[];return _0x123156[_0x148651(0x1cd)]>0x0&&_0x147988[_0x148651(0x1de)]({'type':'primary','columns':_0x123156}),{'indexes':_0x147988,'metadataAvailable':_0x16ff12['length']>0x0};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a196_0x1b4d(){const _0x2eedc2=['725820DJpddd','84bEVjvx','4nkeNqM','12933256egwFXX','2131014dXyabb','2493205KQylqT','1580352cWKqvr','73236348zBcuFe','2888688RQiGaU'];a196_0x1b4d=function(){return _0x2eedc2;};return a196_0x1b4d();}function a196_0x423e(_0x15c9ea,_0x11cf65){_0x15c9ea=_0x15c9ea-0x11b;const _0x1b4d03=a196_0x1b4d();let _0x423e51=_0x1b4d03[_0x15c9ea];return _0x423e51;}(function(_0x517b8f,_0x4c4d8b){const _0x337a44=a196_0x423e,_0x46c7b3=_0x517b8f();while(!![]){try{const _0x24e9a7=-parseInt(_0x337a44(0x11f))/0x1+-parseInt(_0x337a44(0x121))/0x2+parseInt(_0x337a44(0x11d))/0x3*(-parseInt(_0x337a44(0x11b))/0x4)+-parseInt(_0x337a44(0x11e))/0x5+-parseInt(_0x337a44(0x122))/0x6*(parseInt(_0x337a44(0x123))/0x7)+-parseInt(_0x337a44(0x11c))/0x8+parseInt(_0x337a44(0x120))/0x9;if(_0x24e9a7===_0x4c4d8b)break;else _0x46c7b3['push'](_0x46c7b3['shift']());}catch(_0xb97637){_0x46c7b3['push'](_0x46c7b3['shift']());}}}(a196_0x1b4d,0xcbf48));import{taskStatus}from'../../commands/task/status.js';export const taskDefinitions=[taskStatus];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a197_0x86ef15=a197_0x39a7;(function(_0x2da726,_0x240a29){const _0x5b5a4d=a197_0x39a7,_0x1f83cc=_0x2da726();while(!![]){try{const _0x511ae5=parseInt(_0x5b5a4d(0x117))/0x1+-parseInt(_0x5b5a4d(0x11f))/0x2+parseInt(_0x5b5a4d(0x11c))/0x3*(parseInt(_0x5b5a4d(0x11d))/0x4)+-parseInt(_0x5b5a4d(0x124))/0x5+-parseInt(_0x5b5a4d(0x126))/0x6+parseInt(_0x5b5a4d(0x12c))/0x7*(parseInt(_0x5b5a4d(0x12b))/0x8)+parseInt(_0x5b5a4d(0x121))/0x9;if(_0x511ae5===_0x240a29)break;else _0x1f83cc['push'](_0x1f83cc['shift']());}catch(_0x51ea85){_0x1f83cc['push'](_0x1f83cc['shift']());}}}(a197_0x37a8,0x5a7b3));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';function a197_0x37a8(){const _0x403858=['33HBTYej','79796mEdyRB','cookie','1132248GsJoHr','Query\x20an\x20asynchronous\x20task;\x20repeat\x20for\x20PENDING\x20or\x20PROCESSING\x20until\x20SUCCESS\x20or\x20FAILED','9436194znLlYF','trim','appCode','1448110oGnAaf','taskId','3762492FnbDJD','isTerminal','str','compress','Task\x20status\x20response\x20id\x20mismatch:\x20requested\x20','3128432SnsTQh','7Capaem','apiError','Task\x20id\x20returned\x20by\x20an\x20asynchronous\x20platform\x20command','flagMissing','194480JOFkWm','task-id','read','task','string'];a197_0x37a8=function(){return _0x403858;};return a197_0x37a8();}function a197_0x39a7(_0x5a0cae,_0x4a0a1a){_0x5a0cae=_0x5a0cae-0x116;const _0x37a898=a197_0x37a8();let _0x39a7f4=_0x37a898[_0x5a0cae];return _0x39a7f4;}export const taskStatus={'service':a197_0x86ef15(0x11a),'command':'status','description':a197_0x86ef15(0x120),'risk':a197_0x86ef15(0x119),'defaultOutputFormat':a197_0x86ef15(0x129),'structuredErrors':!![],'flags':[{'name':a197_0x86ef15(0x118),'type':a197_0x86ef15(0x11b),'required':!![],'description':a197_0x86ef15(0x12e)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x3fc11a){const _0x3b7da6=a197_0x86ef15;if(!_0x3fc11a[_0x3b7da6(0x128)](_0x3b7da6(0x118))[_0x3b7da6(0x122)]())throw CliErrors[_0x3b7da6(0x116)]('task-id');},async 'execute'(_0x33912b){const _0x3f3223=a197_0x86ef15,_0x43bb59=_0x33912b[_0x3f3223(0x128)]('task-id')[_0x3f3223(0x122)](),_0x466bff=normalizeAsyncTask(await getAsyncTaskStatus(_0x43bb59,_0x33912b[_0x3f3223(0x123)],_0x33912b[_0x3f3223(0x11e)]));if(_0x466bff[_0x3f3223(0x125)]!==_0x43bb59)throw CliErrors[_0x3f3223(0x12d)](_0x3f3223(0x12a)+_0x43bb59+',\x20received\x20'+_0x466bff['taskId']+'.');const _0x45e860=buildAsyncTaskStatusCommand(_0x466bff[_0x3f3223(0x125)],_0x33912b[_0x3f3223(0x123)]);return{'ok':!![],'message':asyncTaskMessage(_0x466bff),'data':{'appCode':_0x33912b[_0x3f3223(0x123)],..._0x466bff,'query':_0x466bff[_0x3f3223(0x127)]?null:{'command':_0x45e860}}};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a198_0x2f15(_0x1717c9,_0x4af7c8){_0x1717c9=_0x1717c9-0x17a;const _0x4db4c6=a198_0x4db4();let _0x2f1521=_0x4db4c6[_0x1717c9];return _0x2f1521;}(function(_0x5a0601,_0x2834e1){const _0x408823=a198_0x2f15,_0xbc6763=_0x5a0601();while(!![]){try{const _0xf36b28=parseInt(_0x408823(0x180))/0x1*(parseInt(_0x408823(0x17d))/0x2)+parseInt(_0x408823(0x182))/0x3+parseInt(_0x408823(0x185))/0x4+-parseInt(_0x408823(0x183))/0x5*(parseInt(_0x408823(0x17f))/0x6)+parseInt(_0x408823(0x17e))/0x7*(parseInt(_0x408823(0x181))/0x8)+-parseInt(_0x408823(0x184))/0x9*(parseInt(_0x408823(0x17b))/0xa)+-parseInt(_0x408823(0x17c))/0xb*(parseInt(_0x408823(0x17a))/0xc);if(_0xf36b28===_0x2834e1)break;else _0xbc6763['push'](_0xbc6763['shift']());}catch(_0x46dcee){_0xbc6763['push'](_0xbc6763['shift']());}}}(a198_0x4db4,0xd2f80));import{tenantMembersListDefinition}from'../../commands/tenant/members-list.js';export const tenantDefinitions=[tenantMembersListDefinition];function a198_0x4db4(){const _0x38fffe=['2440491YsabpS','5yfsOty','12344607nMVtnK','4993940WYlvzJ','24JXTcIf','10KJllDi','4443901VemtZE','526LyhocT','707qhumTl','5421732mZrKoW','1934bwHnmN','109048YbGQHZ'];a198_0x4db4=function(){return _0x38fffe;};return a198_0x4db4();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a199_0x3a7cf0=a199_0xd2b7;(function(_0xe495d0,_0x50b7d8){const _0x49113b=a199_0xd2b7,_0x33c50d=_0xe495d0();while(!![]){try{const _0x29c7b1=parseInt(_0x49113b(0x118))/0x1+parseInt(_0x49113b(0x113))/0x2+-parseInt(_0x49113b(0x11a))/0x3+parseInt(_0x49113b(0x117))/0x4+parseInt(_0x49113b(0x115))/0x5*(parseInt(_0x49113b(0x112))/0x6)+parseInt(_0x49113b(0x11f))/0x7*(-parseInt(_0x49113b(0x11d))/0x8)+parseInt(_0x49113b(0x114))/0x9*(-parseInt(_0x49113b(0x122))/0xa);if(_0x29c7b1===_0x50b7d8)break;else _0x33c50d['push'](_0x33c50d['shift']());}catch(_0x1267e2){_0x33c50d['push'](_0x33c50d['shift']());}}}(a199_0x479a,0x95e6d));function a199_0x479a(){const _0x50ddea=['42088eHwsAT','read','826QogaWg','Found\x20','List\x20members\x20of\x20a\x20tenant\x20available\x20to\x20the\x20current\x20account','1436430KsBwci','str','string','tenant-code','18294WQVWNg','741374WaErwp','117rNalUW','1685XdXvlk','Pass\x20--tenant-code\x20<code>.','3225300mEAdeb','1188593xFSqpZ','tenant','872892KnZDJC','trim','length'];a199_0x479a=function(){return _0x50ddea;};return a199_0x479a();}import{listCurrentUserTenantMemberships,listTenantDirectoryMembers}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a199_0xd2b7(_0x6ed401,_0x20cce1){_0x6ed401=_0x6ed401-0x10f;const _0x479a79=a199_0x479a();let _0xd2b727=_0x479a79[_0x6ed401];return _0xd2b727;}import{assertTenantAccessible,projectTenantMembers}from'../../commands/tenant/shared.js';export const tenantMembersListDefinition={'service':a199_0x3a7cf0(0x119),'command':'members-list','description':a199_0x3a7cf0(0x121),'risk':a199_0x3a7cf0(0x11e),'requiresAuth':!![],'requiresAppCode':![],'structuredErrors':!![],'flags':[{'name':a199_0x3a7cf0(0x111),'type':a199_0x3a7cf0(0x110),'required':!![],'description':'Exact\x20tenant\x20code'}],async 'validate'(_0x17ec24){const _0x59b57c=a199_0x3a7cf0;if(!_0x17ec24[_0x59b57c(0x10f)](_0x59b57c(0x111))['trim']())throw CliErrors['flagMissing']('tenant-code',_0x59b57c(0x116));},async 'execute'(_0x3e405){const _0x4833c9=a199_0x3a7cf0,_0x40ae23=_0x3e405[_0x4833c9(0x10f)]('tenant-code')[_0x4833c9(0x11b)](),_0x4789e1=await listCurrentUserTenantMemberships();assertTenantAccessible(_0x40ae23,_0x4789e1);const _0x3fb9d1=projectTenantMembers(await listTenantDirectoryMembers(_0x40ae23));return{'ok':!![],'data':{'tenantCode':_0x40ae23,'items':_0x3fb9d1,'totalCount':_0x3fb9d1[_0x4833c9(0x11c)]},'message':_0x4833c9(0x120)+_0x3fb9d1[_0x4833c9(0x11c)]+'\x20tenant\x20member(s)'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x1dd1e0,_0x98c4b8){const _0x3a3957=a200_0x3cef,_0xf822f2=_0x1dd1e0();while(!![]){try{const _0x89194c=parseInt(_0x3a3957(0x6a))/0x1+-parseInt(_0x3a3957(0x7d))/0x2+parseInt(_0x3a3957(0x74))/0x3+-parseInt(_0x3a3957(0x81))/0x4+-parseInt(_0x3a3957(0x73))/0x5*(-parseInt(_0x3a3957(0x67))/0x6)+parseInt(_0x3a3957(0x76))/0x7*(-parseInt(_0x3a3957(0x77))/0x8)+-parseInt(_0x3a3957(0x6d))/0x9*(-parseInt(_0x3a3957(0x68))/0xa);if(_0x89194c===_0x98c4b8)break;else _0xf822f2['push'](_0xf822f2['shift']());}catch(_0x41896a){_0xf822f2['push'](_0xf822f2['shift']());}}}(a200_0x3819,0xd2852));import{CliErrors}from'../../errors.js';function textOrNull(_0x1ce447){const _0x289bb6=a200_0x3cef,_0x406a4e=_0x1ce447?.[_0x289bb6(0x72)]();return _0x406a4e?_0x406a4e:null;}export function projectTenantMembers(_0x1e5cda){const _0x3534a5=a200_0x3cef,_0x40208c=new Map();for(const _0x47f12c of _0x1e5cda){const _0xaff99e=Number(_0x47f12c['userId']);if(!Number[_0x3534a5(0x7c)](_0xaff99e)||_0xaff99e<=0x0)continue;const _0x1d77fd={'userId':_0xaff99e,'username':textOrNull(_0x47f12c['username']),'displayName':textOrNull(_0x47f12c[_0x3534a5(0x7b)]),'role':_0x47f12c[_0x3534a5(0x7e)]===!![]?'ADMIN':_0x3534a5(0x66),'status':textOrNull(_0x47f12c[_0x3534a5(0x6e)])},_0x27f1f3=_0x40208c[_0x3534a5(0x78)](_0xaff99e);if(!_0x27f1f3){_0x40208c[_0x3534a5(0x80)](_0xaff99e,_0x1d77fd);continue;}_0x27f1f3['username']??=_0x1d77fd['username'],_0x27f1f3[_0x3534a5(0x70)]??=_0x1d77fd[_0x3534a5(0x70)],_0x27f1f3['status']??=_0x1d77fd[_0x3534a5(0x6e)];if(_0x1d77fd[_0x3534a5(0x6f)]===_0x3534a5(0x69))_0x27f1f3[_0x3534a5(0x6f)]=_0x3534a5(0x69);}return[..._0x40208c[_0x3534a5(0x71)]()][_0x3534a5(0x6b)]((_0x34a679,_0x47c6d2)=>_0x34a679[_0x3534a5(0x7a)]-_0x47c6d2[_0x3534a5(0x7a)]);}function a200_0x3cef(_0x1f4009,_0x5b368d){_0x1f4009=_0x1f4009-0x66;const _0x381968=a200_0x3819();let _0x3cefdb=_0x381968[_0x1f4009];return _0x3cefdb;}export function assertTenantAccessible(_0x3e8ab6,_0x1f8376){const _0x235f4a=a200_0x3cef;if(_0x1f8376[_0x235f4a(0x6c)](_0x2bf294=>_0x2bf294[_0x235f4a(0x7f)]===_0x3e8ab6))return;throw CliErrors[_0x235f4a(0x79)]('Tenant\x20\x22'+_0x3e8ab6+_0x235f4a(0x75),'Check\x20--tenant-code\x20or\x20login\x20with\x20an\x20account\x20that\x20belongs\x20to\x20this\x20tenant.');}function a200_0x3819(){const _0x50f681=['status','role','displayName','values','trim','124680coJZkd','983013TrJZMw','\x22\x20is\x20not\x20available\x20to\x20the\x20current\x20account.','959DqYQkd','74384bPDCKn','get','validation','userId','nickname','isFinite','278194lcmuKI','adminFlag','tenantCode','set','5168208ImHpYg','MEMBER','198QMmYwE','1270EDxCXq','ADMIN','899818jZQGWL','sort','some','107496QxKjRn'];a200_0x3819=function(){return _0x50f681;};return a200_0x3819();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a201_0x4a97f7=a201_0x28ab;(function(_0x24d7dc,_0x47d162){const _0x25c7d8=a201_0x28ab,_0x5de18f=_0x24d7dc();while(!![]){try{const _0x180e3f=-parseInt(_0x25c7d8(0x1b1))/0x1*(parseInt(_0x25c7d8(0x1ac))/0x2)+parseInt(_0x25c7d8(0x19c))/0x3*(parseInt(_0x25c7d8(0x1ae))/0x4)+-parseInt(_0x25c7d8(0x1aa))/0x5+parseInt(_0x25c7d8(0x1ab))/0x6+-parseInt(_0x25c7d8(0x1a5))/0x7+parseInt(_0x25c7d8(0x1a9))/0x8*(parseInt(_0x25c7d8(0x1a7))/0x9)+parseInt(_0x25c7d8(0x19d))/0xa;if(_0x180e3f===_0x47d162)break;else _0x5de18f['push'](_0x5de18f['shift']());}catch(_0x10b500){_0x5de18f['push'](_0x5de18f['shift']());}}}(a201_0x532b,0xc0719));import{asDryRunResult}from'../../commands/common/dry-run.js';import{bindDingTalkSandboxAccount,DING_TALK_SANDBOX_BIND_PATH}from'../../core/api-client.js';function a201_0x28ab(_0x9c7e70,_0x3baafe){_0x9c7e70=_0x9c7e70-0x19c;const _0x532b82=a201_0x532b();let _0x28ab47=_0x532b82[_0x9c7e70];return _0x28ab47;}import{CliErrors}from'../../errors.js';function a201_0x532b(){const _0x4b886b=['5131511IyRZDl','dingding-sandbox-bind','645237MIhbVp','Pass\x20the\x20DingTalk\x20user\x20id\x20returned\x20by\x20the\x20sandbox.','152IyQMLg','3078570UdzCpp','3655260LUTTnk','26814mwiqzJ','Bound\x20current\x20user\x20to\x20DingTalk\x20sandbox\x20account.','524zNXnae','POST','dingtalk','106ZmddLF','20985AkqEFU','6704560RdZnpw','apiError','string','Bind\x20the\x20current\x20platform\x20user\x20to\x20a\x20DingTalk\x20sandbox\x20account','DingTalk\x20sandbox\x20account\x20binding\x20was\x20not\x20confirmed.','validation','The\x20current\x20binding\x20is\x20not\x20exposed\x20by\x20the\x20server;\x20before\x20is\x20unavailable.','Retry\x20with\x20the\x20same\x20--ding-talk-user-id\x20only\x20after\x20checking\x20the\x20current\x20platform\x20session.'];a201_0x532b=function(){return _0x4b886b;};return a201_0x532b();}const PROVIDER_ID=a201_0x4a97f7(0x1b0),CURRENT_BINDING_WARNING=a201_0x4a97f7(0x1a3);function readDingTalkUserId(_0x598744){const _0x418d14=a201_0x4a97f7,_0x902e92=_0x598744['str']('ding-talk-user-id')['trim']();if(!_0x902e92)throw CliErrors[_0x418d14(0x1a2)]('--ding-talk-user-id\x20cannot\x20be\x20empty.',_0x418d14(0x1a8));return _0x902e92;}function buildBindingData(_0x350279,_0x548aa2){const _0x564d6b=a201_0x4a97f7;return{'operation':'bind','selector':{'providerId':PROVIDER_ID,'dingTalkUserId':_0x350279},'before':null,'after':{'providerId':PROVIDER_ID,'dingTalkUserId':_0x350279,'bound':!![]},'dryRun':_0x548aa2,'backend':{'method':_0x564d6b(0x1af),'path':DING_TALK_SANDBOX_BIND_PATH},'warnings':[CURRENT_BINDING_WARNING]};}export const dingTalkSandboxBind={'service':'user-account','command':a201_0x4a97f7(0x1a6),'description':a201_0x4a97f7(0x1a0),'risk':'write','requiresAuth':!![],'requiresAppCode':![],'structuredErrors':!![],'flags':[{'name':'ding-talk-user-id','type':a201_0x4a97f7(0x19f),'required':!![],'description':'DingTalk\x20user\x20id\x20returned\x20by\x20the\x20sandbox'}],async 'validate'(_0x545a89){readDingTalkUserId(_0x545a89);},async 'dryRun'(_0x1f95e2){const _0x2e12f8=readDingTalkUserId(_0x1f95e2);return asDryRunResult(buildBindingData(_0x2e12f8,!![]),{'method':'POST','url':DING_TALK_SANDBOX_BIND_PATH});},async 'execute'(_0x3f0056){const _0x476089=a201_0x4a97f7,_0x43e982=readDingTalkUserId(_0x3f0056),_0x3b8f38=await bindDingTalkSandboxAccount(_0x43e982);if(_0x3b8f38!==!![])throw CliErrors[_0x476089(0x19e)](_0x476089(0x1a1),_0x476089(0x1a4));return{'ok':!![],'data':buildBindingData(_0x43e982,![]),'message':_0x476089(0x1ad)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x375dce,_0x228487){const _0xe18c3b=a202_0x3fd3,_0x2f605f=_0x375dce();while(!![]){try{const _0x4bf05a=-parseInt(_0xe18c3b(0x7b))/0x1*(-parseInt(_0xe18c3b(0x80))/0x2)+parseInt(_0xe18c3b(0x7c))/0x3*(-parseInt(_0xe18c3b(0x7f))/0x4)+-parseInt(_0xe18c3b(0x81))/0x5*(-parseInt(_0xe18c3b(0x82))/0x6)+-parseInt(_0xe18c3b(0x7e))/0x7+parseInt(_0xe18c3b(0x7a))/0x8+-parseInt(_0xe18c3b(0x83))/0x9+-parseInt(_0xe18c3b(0x84))/0xa*(-parseInt(_0xe18c3b(0x7d))/0xb);if(_0x4bf05a===_0x228487)break;else _0x2f605f['push'](_0x2f605f['shift']());}catch(_0x169831){_0x2f605f['push'](_0x2f605f['shift']());}}}(a202_0x3cde,0x84b99));function a202_0x3cde(){const _0x140719=['6586336gvdneD','1dLJQpb','3xpkpss','1815OUncTz','3753638nNtGsK','4033036EOAkKa','1980614fwbgch','3985vlRWhG','4686PiIJfH','6860133DwwiLo','25110oIuKkU'];a202_0x3cde=function(){return _0x140719;};return a202_0x3cde();}import{dingTalkSandboxBind}from'../../commands/user-account/dingding-sandbox-bind.js';function a202_0x3fd3(_0x6c9c06,_0x1d93da){_0x6c9c06=_0x6c9c06-0x7a;const _0x3cde88=a202_0x3cde();let _0x3fd3b0=_0x3cde88[_0x6c9c06];return _0x3fd3b0;}export const userAccountDefinitions=[dingTalkSandboxBind];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a203_0x3a592d=a203_0x4446;(function(_0x3c6767,_0x470877){const _0x5ef493=a203_0x4446,_0x476402=_0x3c6767();while(!![]){try{const _0x35931b=-parseInt(_0x5ef493(0xb7))/0x1+-parseInt(_0x5ef493(0xb6))/0x2*(parseInt(_0x5ef493(0xb1))/0x3)+parseInt(_0x5ef493(0xb0))/0x4*(-parseInt(_0x5ef493(0xb9))/0x5)+-parseInt(_0x5ef493(0xb2))/0x6+-parseInt(_0x5ef493(0xbc))/0x7*(parseInt(_0x5ef493(0xbb))/0x8)+-parseInt(_0x5ef493(0xad))/0x9*(parseInt(_0x5ef493(0xb4))/0xa)+parseInt(_0x5ef493(0xb8))/0xb*(parseInt(_0x5ef493(0xaf))/0xc);if(_0x35931b===_0x470877)break;else _0x476402['push'](_0x476402['shift']());}catch(_0x3bc6c3){_0x476402['push'](_0x476402['shift']());}}}(a203_0x12b7,0x253cb));function a203_0x12b7(){const _0xdb4cb6=['7293wNjQIz','85iRrJDp','add','7320urGnyO','847bVhejS','43920mDIdgw','Register\x20an\x20app\x20profile\x20in\x20the\x20current\x20workspace\x20(or\x20--global)','17916SUlPnR','15076xDEeZf','25983HVEmXp','1341810aLmSiB','workspace','130rddKny','App\x20profile\x20name','58ccgIWk','124304HXnIBy'];a203_0x12b7=function(){return _0xdb4cb6;};return a203_0x12b7();}import{buildAppAddFlags,runAppAdd,validateAppName}from'../../commands/common/app-registry.js';function a203_0x4446(_0x39f163,_0x4f5ad4){_0x39f163=_0x39f163-0xad;const _0x12b7cc=a203_0x12b7();let _0x444682=_0x12b7cc[_0x39f163];return _0x444682;}export const workspaceAddDefinition={'service':a203_0x3a592d(0xb3),'command':a203_0x3a592d(0xba),'description':a203_0x3a592d(0xae),'risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':'name','description':a203_0x3a592d(0xb5),'required':!![]}],'flags':buildAppAddFlags(),'validate':_0x260c0e=>validateAppName(_0x260c0e,'workspace\x20add'),'execute':_0xbf65fc=>runAppAdd(_0xbf65fc,'workspace\x20add')};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a204_0x1b42da=a204_0x352d;(function(_0x3d4979,_0x4d5f95){const _0x510ae5=a204_0x352d,_0x10e46b=_0x3d4979();while(!![]){try{const _0x2b34cd=parseInt(_0x510ae5(0x1de))/0x1+parseInt(_0x510ae5(0x1d8))/0x2*(parseInt(_0x510ae5(0x1c7))/0x3)+parseInt(_0x510ae5(0x1b3))/0x4*(parseInt(_0x510ae5(0x1a5))/0x5)+parseInt(_0x510ae5(0x1be))/0x6*(-parseInt(_0x510ae5(0x1c0))/0x7)+parseInt(_0x510ae5(0x1a3))/0x8*(parseInt(_0x510ae5(0x1d7))/0x9)+parseInt(_0x510ae5(0x1b8))/0xa+-parseInt(_0x510ae5(0x1cc))/0xb*(parseInt(_0x510ae5(0x1c6))/0xc);if(_0x2b34cd===_0x4d5f95)break;else _0x10e46b['push'](_0x10e46b['shift']());}catch(_0x23c7ba){_0x10e46b['push'](_0x10e46b['shift']());}}}(a204_0x9291,0xa27ac));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{RABETBASE_ENV_VALUES}from'../../constant/env.js';import{RABETBASE_OUTPUT_FORMAT_VALUES}from'../../constant/output.js';import{RISK_LEVEL_VALUES}from'../../constant/risk.js';import{validateAppcode}from'../../commands/common/validate.js';import{readConfigFile,readRawConfigWithLayers,resolveWriteConfigPath,writeConfigFile}from'../../context.js';import{workspaceAddDefinition}from'../../commands/workspace/add.js';import{workspaceRemoveDefinition}from'../../commands/workspace/remove.js';import{normalizeStoredDefaultApp}from'../../config/schema.js';const WORKSPACE_USAGE=CLI_BIN_NAME+a204_0x1b42da(0x1bf),SAFE_PROFILE_KEYS=[a204_0x1b42da(0x1ab),a204_0x1b42da(0x1b1),'apiDir','format',a204_0x1b42da(0x1b9),a204_0x1b42da(0x1cf),a204_0x1b42da(0x1c5)],workspaceFlags=[{'name':a204_0x1b42da(0x1aa),'type':a204_0x1b42da(0x1ba),'description':'App\x20profile\x20name\x20to\x20use\x20in\x20this\x20workspace'},{'name':a204_0x1b42da(0x1ab),'type':a204_0x1b42da(0x1ba),'description':a204_0x1b42da(0x1c3)},{'name':a204_0x1b42da(0x1b1),'type':a204_0x1b42da(0x1ba),'description':a204_0x1b42da(0x1ad),'enum':[...RABETBASE_ENV_VALUES]},{'name':a204_0x1b42da(0x1bc),'type':a204_0x1b42da(0x1ba),'description':a204_0x1b42da(0x1a2)},{'name':a204_0x1b42da(0x1bd),'type':a204_0x1b42da(0x1ba),'description':a204_0x1b42da(0x1d0),'enum':[...RABETBASE_OUTPUT_FORMAT_VALUES]},{'name':a204_0x1b42da(0x1b9),'type':a204_0x1b42da(0x1db),'description':a204_0x1b42da(0x1c4)},{'name':'riskLevel','type':a204_0x1b42da(0x1ba),'description':a204_0x1b42da(0x1da),'enum':[...RISK_LEVEL_VALUES]},{'name':a204_0x1b42da(0x1c5),'type':a204_0x1b42da(0x1ba),'description':a204_0x1b42da(0x1dd)}];function isRecord(_0xdc09fd){const _0x4d1d64=a204_0x1b42da;return!!_0xdc09fd&&typeof _0xdc09fd===_0x4d1d64(0x1d4)&&!Array[_0x4d1d64(0x1c8)](_0xdc09fd);}function assertValidAppcode(_0x4ff465){const _0x589265=a204_0x1b42da,{valid:_0x5f133b,message:_0x35b155}=validateAppcode(_0x4ff465);if(!_0x5f133b)throw CliErrors[_0x589265(0x1b6)]('Invalid\x20appcode:\x20'+_0x4ff465,_0x35b155);}function sanitizeProfile(_0x1ff79a){if(!isRecord(_0x1ff79a))return{};const _0x3200ac={};for(const _0x16ae7e of SAFE_PROFILE_KEYS){if(_0x1ff79a[_0x16ae7e]!==undefined)_0x3200ac[_0x16ae7e]=_0x1ff79a[_0x16ae7e];}return _0x3200ac;}function a204_0x352d(_0x4217c0,_0x20ff78){_0x4217c0=_0x4217c0-0x1a1;const _0x92917a=a204_0x9291();let _0x352d47=_0x92917a[_0x4217c0];return _0x352d47;}function cloneProfile(_0x47aeb5){return isRecord(_0x47aeb5)?{..._0x47aeb5}:{};}function collectWorkspaceProfileOverrides(_0x5b67a6){const _0x41986c=a204_0x1b42da,_0x7f054={},_0x3b3f50=_0x5b67a6['str']('env'),_0x3cb9de=_0x5b67a6[_0x41986c(0x1c9)]('apiDir'),_0x473638=_0x5b67a6[_0x41986c(0x1c9)](_0x41986c(0x1bd)),_0x496c84=_0x5b67a6[_0x41986c(0x1c2)](_0x41986c(0x1b9)),_0x41469f=_0x5b67a6['str']('riskLevel'),_0x22a29c=_0x5b67a6[_0x41986c(0x1c9)](_0x41986c(0x1c5));if(_0x3b3f50)_0x7f054[_0x41986c(0x1b1)]=_0x3b3f50;if(_0x3cb9de)_0x7f054[_0x41986c(0x1bc)]=_0x3cb9de;if(_0x473638)_0x7f054[_0x41986c(0x1a4)]=_0x473638;if(_0x496c84!==undefined&&_0x496c84!=='')_0x7f054[_0x41986c(0x1b9)]=Number(_0x496c84);if(_0x41469f)_0x7f054[_0x41986c(0x1cf)]=_0x41469f;if(_0x22a29c)_0x7f054[_0x41986c(0x1c5)]=_0x22a29c;return _0x7f054;}function a204_0x9291(){const _0x62e1a6=['Default\x20page\x20size\x20for\x20this\x20workspace\x20app\x20profile','locale','12112572nUUAlQ','3393ShqcBO','isArray','str','trim','Workspace\x20','33rPXHGM','use','\x22\x20not\x20found.','riskLevel','Default\x20output\x20format\x20for\x20this\x20workspace\x20app\x20profile','updated','globalConfig','Missing\x20workspace\x20app\x20selector.','object','init','join','45pPlmdD','2118gWXkDS','Pass\x20--appcode\x20<code>,\x20or\x20choose\x20one\x20of:\x20','Risk\x20level\x20for\x20this\x20workspace\x20app\x20profile','number','workspace','App\x20locale\x20for\x20this\x20workspace\x20app\x20profile\x20(not\x20CLI\x20language;\x20reserved\x20for\x20later\x20app\x20use)','356179EzoqIb','write','initialized','API\x20directory\x20path\x20for\x20this\x20workspace\x20app\x20profile','1744664SQyjHn','format','2577325uZFGso','App\x20\x22','project','Switch\x20the\x20current\x20workspace\x20app\x20binding','\x20--appcode\x20<code>`.','app','appcode','\x20(appcode:\x20','Target\x20environment','\x20--app\x20','\x20workspace\x20','.\x20Credentials:\x20not\x20written.','env','\x20workspace\x20init\x20--appcode\x20<code>`\x20or\x20`','4uksrNQ','Initialize\x20the\x20current\x20workspace\x20app\x20binding','length','validation','\x20workspace\x20use\x20--app\x20<name>`.','11642020UQMguy','pageSize','string','Use\x20`','apiDir','defaultFormat','3781986HWzVIL','\x20workspace\x20<init|use>\x20--app\x20<name>\x20[--appcode\x20<code>]','7VKcmRY','apps','flag','App\x20code\x20to\x20bind\x20to\x20this\x20workspace'];a204_0x9291=function(){return _0x62e1a6;};return a204_0x9291();}async function validateWorkspaceArgs(_0xf28e93){const _0x5a3e9d=a204_0x1b42da,_0x9df695=_0xf28e93[_0x5a3e9d(0x1c9)](_0x5a3e9d(0x1aa))[_0x5a3e9d(0x1ca)](),_0x14350e=_0xf28e93[_0x5a3e9d(0x1c9)](_0x5a3e9d(0x1ab))['trim']();if(!_0x9df695&&!_0x14350e)throw CliErrors[_0x5a3e9d(0x1b6)](_0x5a3e9d(0x1d3),'Use\x20`'+CLI_BIN_NAME+'\x20workspace\x20init\x20--appcode\x20<code>`\x20or\x20`'+CLI_BIN_NAME+'\x20workspace\x20use\x20--app\x20<name>`.');if(_0x14350e)assertValidAppcode(_0x14350e);}function resolveKnownApps(){const _0xa2d68d=a204_0x1b42da,{config:_0x318391,layers:_0x30899c}=readRawConfigWithLayers(),_0xdd60cc=isRecord(_0x318391[_0xa2d68d(0x1c1)])?_0x318391['apps']:{},_0x36d5f5=isRecord(_0x30899c[_0xa2d68d(0x1d2)][_0xa2d68d(0x1c1)])?_0x30899c[_0xa2d68d(0x1d2)]['apps']:{};return{..._0x36d5f5,..._0xdd60cc};}async function configureWorkspace(_0x2f1310,_0x46ad81){const _0x5204de=a204_0x1b42da,_0x184f94=_0x2f1310['str'](_0x5204de(0x1aa))[_0x5204de(0x1ca)](),_0x4ad58a=_0x2f1310['str']('appcode')[_0x5204de(0x1ca)](),_0x108b5d=_0x184f94||_0x4ad58a;if(!_0x108b5d)throw CliErrors['validation'](_0x5204de(0x1d3),_0x5204de(0x1bb)+CLI_BIN_NAME+_0x5204de(0x1b2)+CLI_BIN_NAME+_0x5204de(0x1b7));if(_0x4ad58a)assertValidAppcode(_0x4ad58a);const _0x292a45=resolveWriteConfigPath(_0x5204de(0x1a7)),_0x38f208=readConfigFile(_0x292a45),_0x124104=resolveKnownApps(),_0x374d77=isRecord(_0x38f208[_0x5204de(0x1c1)])?{..._0x38f208['apps']}:{},_0x3d3817=cloneProfile(_0x374d77[_0x108b5d]),_0x3db7b0=sanitizeProfile(_0x124104[_0x108b5d]),_0xeba4e1=_0x4ad58a?{}:_0x3db7b0,_0x561680=_0x4ad58a||_0xeba4e1[_0x5204de(0x1ab)];if(!_0x561680){const _0x3b38d7=Object['keys'](_0x124104),_0x23adf4=_0x3b38d7[_0x5204de(0x1b5)]===0x0?'Use\x20`'+CLI_BIN_NAME+_0x5204de(0x1af)+_0x46ad81+_0x5204de(0x1ae)+_0x108b5d+_0x5204de(0x1a9):_0x5204de(0x1d9)+_0x3b38d7[_0x5204de(0x1d6)](',\x20');throw CliErrors[_0x5204de(0x1b6)](_0x5204de(0x1a6)+_0x108b5d+_0x5204de(0x1ce),_0x23adf4);}assertValidAppcode(String(_0x561680));const _0x3d467a={..._0xeba4e1,..._0x3d3817,'appcode':String(_0x561680),...collectWorkspaceProfileOverrides(_0x2f1310)};return _0x374d77[_0x108b5d]=_0x3d467a,_0x38f208[_0x5204de(0x1c1)]=_0x374d77,normalizeStoredDefaultApp(_0x38f208,_0x108b5d),delete _0x38f208[_0x5204de(0x1ab)],delete _0x38f208[_0x5204de(0x1aa)],_0x3d467a['env']&&(_0x38f208[_0x5204de(0x1b1)]=_0x3d467a['env']),writeConfigFile(_0x292a45,_0x38f208),{'ok':!![],'message':_0x5204de(0x1cb)+(_0x46ad81===_0x5204de(0x1d5)?_0x5204de(0x1a1):_0x5204de(0x1d1))+':\x20'+_0x108b5d+_0x5204de(0x1ac)+_0x3d467a[_0x5204de(0x1ab)]+').\x20Config:\x20'+_0x292a45+_0x5204de(0x1b0),'data':{'operation':'workspace.'+_0x46ad81,'configPath':_0x292a45,'app':_0x108b5d,'appcode':_0x3d467a['appcode'],'env':_0x3d467a[_0x5204de(0x1b1)]??null,'credentialsWritten':![]}};}const workspaceInitDefinition={'service':a204_0x1b42da(0x1dc),'command':a204_0x1b42da(0x1d5),'description':a204_0x1b42da(0x1b4),'risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[],'flags':workspaceFlags,'validate':validateWorkspaceArgs,'execute':_0x30fd07=>configureWorkspace(_0x30fd07,a204_0x1b42da(0x1d5))},workspaceUseDefinition={'service':a204_0x1b42da(0x1dc),'command':a204_0x1b42da(0x1cd),'description':a204_0x1b42da(0x1a8),'risk':a204_0x1b42da(0x1df),'requiresAuth':![],'requiresAppCode':![],'args':[],'flags':workspaceFlags,'validate':validateWorkspaceArgs,'execute':_0xe6e548=>configureWorkspace(_0xe6e548,'use')};export const workspaceDefinitions=[workspaceInitDefinition,workspaceUseDefinition,workspaceAddDefinition,workspaceRemoveDefinition];export{WORKSPACE_USAGE};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a205_0x20d8cc=a205_0x4131;function a205_0x4131(_0x5a65d6,_0x225d9a){_0x5a65d6=_0x5a65d6-0x1b0;const _0xb8e7c4=a205_0xb8e7();let _0x4131f6=_0xb8e7c4[_0x5a65d6];return _0x4131f6;}(function(_0x4ba35e,_0x1d12ec){const _0x422d5d=a205_0x4131,_0x436402=_0x4ba35e();while(!![]){try{const _0x448cad=-parseInt(_0x422d5d(0x1b0))/0x1+-parseInt(_0x422d5d(0x1b3))/0x2+-parseInt(_0x422d5d(0x1be))/0x3*(parseInt(_0x422d5d(0x1bc))/0x4)+-parseInt(_0x422d5d(0x1b4))/0x5+parseInt(_0x422d5d(0x1b6))/0x6+parseInt(_0x422d5d(0x1b1))/0x7*(parseInt(_0x422d5d(0x1bb))/0x8)+parseInt(_0x422d5d(0x1b5))/0x9*(parseInt(_0x422d5d(0x1b7))/0xa);if(_0x448cad===_0x1d12ec)break;else _0x436402['push'](_0x436402['shift']());}catch(_0x28ce28){_0x436402['push'](_0x436402['shift']());}}}(a205_0xb8e7,0xcc8c9));import{buildAppRemoveFlags,runAppRemove,validateAppName}from'../../commands/common/app-registry.js';export const workspaceRemoveDefinition={'service':a205_0x20d8cc(0x1b2),'command':a205_0x20d8cc(0x1ba),'description':a205_0x20d8cc(0x1b8),'risk':'write','requiresAuth':![],'requiresAppCode':![],'args':[{'name':a205_0x20d8cc(0x1bd),'description':'App\x20profile\x20name\x20to\x20remove','required':!![]}],'flags':buildAppRemoveFlags(),'validate':_0x4d95cd=>validateAppName(_0x4d95cd,a205_0x20d8cc(0x1b9)),'execute':_0x1556d2=>runAppRemove(_0x1556d2,a205_0x20d8cc(0x1b9))};function a205_0xb8e7(){const _0x26e659=['10fuprcb','Remove\x20an\x20app\x20profile\x20from\x20the\x20current\x20workspace\x20(or\x20--global)','workspace\x20remove','remove','2456744KGQweM','3783484vSSIXi','name','3ZSjVcr','1155841NlYKME','21ylWGRY','workspace','1103962CGBsog','7849380RGDhUs','33422049FHZpVk','2559372LphTWl'];a205_0xb8e7=function(){return _0x26e659;};return a205_0xb8e7();}
|