@lovrabet/rabetbase-cli 2.2.1-beta.1 → 2.2.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/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/add.js +1 -1
- package/lib/commands/app/discover.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/remove.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app/use.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-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-selector.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/get.js +1 -1
- package/lib/commands/config/index.js +1 -1
- package/lib/commands/config/list.js +1 -1
- package/lib/commands/config/set.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/filter.js +1 -1
- package/lib/commands/data/getOne.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/data/shared.js +1 -1
- package/lib/commands/dataset/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/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-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/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff.js +1 -1
- package/lib/commands/db/index.js +1 -1
- package/lib/commands/db/list.js +1 -1
- package/lib/commands/db/shared.js +1 -1
- package/lib/commands/db/tables.js +1 -1
- package/lib/commands/db/test.js +1 -1
- package/lib/commands/db/update.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/shared/compare-table.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/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/update.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/shared.js +1 -1
- package/lib/commands/page/standard-page-status.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/project/create/enhanced-guided-create.js +1 -1
- package/lib/commands/project/create/format-elapsed.js +1 -1
- package/lib/commands/project/create/main.js +1 -1
- package/lib/commands/project/create/non-interactive.js +1 -1
- package/lib/commands/project/create/project-template-path.js +1 -1
- package/lib/commands/project/create/use-copy-project-template.js +1 -1
- package/lib/commands/project/create/use-format-code.js +1 -1
- package/lib/commands/project/create/use-install-dependencies.js +1 -1
- package/lib/commands/project/index.js +1 -1
- package/lib/commands/project/init.js +1 -1
- package/lib/commands/project/upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/skill/index.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/save.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/config/schema.js +1 -1
- package/lib/constant/cdn.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/paths.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/context.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-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/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.js +1 -1
- package/lib/help.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/copy-directory.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
package/lib/commands/sql/pull.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a127_0xcfa1cd=a127_0x474a;(function(_0x266d33,_0x48bbc1){const _0x2f266e=a127_0x474a,_0x585a0e=_0x266d33();while(!![]){try{const _0x1d1f78=parseInt(_0x2f266e(0x19b))/0x1+-parseInt(_0x2f266e(0x187))/0x2+-parseInt(_0x2f266e(0x178))/0x3+parseInt(_0x2f266e(0x180))/0x4*(-parseInt(_0x2f266e(0x186))/0x5)+-parseInt(_0x2f266e(0x1a1))/0x6*(parseInt(_0x2f266e(0x174))/0x7)+parseInt(_0x2f266e(0x191))/0x8*(-parseInt(_0x2f266e(0x16e))/0x9)+parseInt(_0x2f266e(0x167))/0xa*(parseInt(_0x2f266e(0x199))/0xb);if(_0x1d1f78===_0x48bbc1)break;else _0x585a0e['push'](_0x585a0e['shift']());}catch(_0xa93c2){_0x585a0e['push'](_0x585a0e['shift']());}}}(a127_0x4a63,0x19ba5));import{readFile,rm,writeFile}from'node:fs/promises';import{join}from'node:path';import{getSqlQueryDetail,listSqlQueries}from'../../core/api-client.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{getDbName}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';function a127_0x474a(_0x2204a5,_0x2a1271){_0x2204a5=_0x2204a5-0x165;const _0x4a6349=a127_0x4a63();let _0x474afd=_0x4a6349[_0x2204a5];return _0x474afd;}import{CliErrors}from'../../errors.js';function a127_0x4a63(){const _0x2366e0=['423OvLFOg','trimStart','description','Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.','force','push','21343hhgBEN','utf8','sqlcode','totalCount','201705xaHHqB','Force\x20pull\x20cancelled.','dbId','catch','pull','boolean','sqlRootDir','sqlContent','31660nnbyhE','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','local\x20differs\x20from\x20remote','join','Filter\x20by\x20SQL\x20display\x20name','bool','105OvnaLT','69354UwMfRI','nonInteractive','appCode','path','POST','Force\x20overwrite\x20local\x20unsynced\x20changes','message','test','/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','\x20SQL\x20file(s)\x20into\x20','20688JrFfLT','split','\x20written,\x20','str','mybatisXml','tableData','would_pull','length','6680773UJAUaP','filter','55402fxqEDa','apps','paging','sql','lastSync','sqls','330SDbhcI','Pull\x20complete:\x20','lockFilePath','string','cancelled','skipped','10pSiydi','unchanged','conflict','name','toISOString','sqlName','sqlCode'];a127_0x4a63=function(){return _0x2366e0;};return a127_0x4a63();}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(_0x38424d,_0x26f089){const _0x449ec2=a127_0x474a,_0x31e265=[];let _0x34748b=0x1;while(!![]){const _0x4299db=await listSqlQueries(_0x38424d,{'currentPage':_0x34748b,'pageSize':PAGE_SIZE,'sqlCode':_0x26f089['sqlCode'],'sqlName':_0x26f089[_0x449ec2(0x16c)]}),_0x5479db=_0x4299db[_0x449ec2(0x196)]??[];_0x31e265[_0x449ec2(0x173)](..._0x5479db);if(_0x5479db[_0x449ec2(0x198)]===0x0)break;const _0x5322f8=_0x4299db[_0x449ec2(0x19d)]?.[_0x449ec2(0x177)];if(_0x5322f8!=null?_0x31e265[_0x449ec2(0x198)]>=_0x5322f8:_0x5479db['length']<PAGE_SIZE)break;_0x34748b++;}return _0x31e265;}async function ensureSqlContent(_0x32ed5f){const _0x5d7745=a127_0x474a;if(_0x32ed5f[_0x5d7745(0x17f)]!=null&&String(_0x32ed5f['sqlContent'])[_0x5d7745(0x198)]>0x0)return _0x32ed5f;return getSqlQueryDetail(_0x32ed5f[_0x5d7745(0x16d)]);}export const sqlPull={'service':a127_0xcfa1cd(0x19e),'command':a127_0xcfa1cd(0x17c),'description':'Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','risk':'write','flags':[SQLCODE_FLAG_OPTIONAL,{'name':'name','type':a127_0xcfa1cd(0x1a4),'description':a127_0xcfa1cd(0x184)},{'name':a127_0xcfa1cd(0x172),'type':a127_0xcfa1cd(0x17d),'description':a127_0xcfa1cd(0x18c)}],async 'dryRun'(_0x3c5b3e){const _0x2028cf=a127_0xcfa1cd,_0x4af34e=loadSqlProjectConfig(_0x3c5b3e['appCode']),_0x4b7126=await readSqlLockFile(_0x4af34e['lockFilePath']),{appLock:_0x2d9b3e}=ensureSqlLockScope(_0x4b7126??createEmptySqlLock(),_0x4af34e[_0x2028cf(0x189)],_0x4af34e['sqlRoot'],'pull'),_0x4f42a0=await fetchAllSqlQueries(_0x3c5b3e['appCode'],{'sqlCode':_0x3c5b3e[_0x2028cf(0x194)](_0x2028cf(0x176))||undefined,'sqlName':_0x3c5b3e[_0x2028cf(0x194)](_0x2028cf(0x16a))||undefined}),_0x2c5e51=[];for(const _0x5d53eb of _0x4f42a0){const _0x4e2a41=await ensureSqlContent(_0x5d53eb),_0x32b64a=ensureRemoteSqlContent(_0x4e2a41),_0x4a62ba=detectModeFromSql(_0x4e2a41),_0x1665bb=_0x4e2a41['dbId']?await getDbName(_0x3c5b3e[_0x2028cf(0x189)],Number(_0x4e2a41[_0x2028cf(0x17a)]))[_0x2028cf(0x17b)](()=>undefined):undefined,_0x5332c1=buildLocalSqlFileContent({'sqlCode':_0x4e2a41[_0x2028cf(0x16d)],'sqlName':_0x4e2a41[_0x2028cf(0x16c)],'dbId':_0x4e2a41[_0x2028cf(0x17a)]},_0x32b64a,{'dbName':_0x1665bb,'mode':_0x4a62ba,'syncedAt':new Date()[_0x2028cf(0x16b)](),'description':_0x4e2a41[_0x2028cf(0x170)]}),_0x575019=buildSqlLockEntry(_0x4e2a41,_0x32b64a,'',{'dbName':_0x1665bb}),_0x651824=resolveLocalSqlFilePath(_0x4af34e,_0x4e2a41[_0x2028cf(0x16d)],_0x575019);let _0x1080ed=_0x2028cf(0x197),_0x5d0638;if(await fileExists(_0x651824)){const _0x3bbdae=await readFile(_0x651824,'utf8');isEquivalentPulledSqlFile(_0x3bbdae,_0x5332c1,_0x4a62ba)?(_0x1080ed=_0x2028cf(0x166),_0x5d0638=_0x2028cf(0x168)):(_0x1080ed=_0x2028cf(0x169),_0x5d0638=_0x2028cf(0x181));}_0x2c5e51[_0x2028cf(0x173)]({'sqlCode':_0x4e2a41['sqlCode'],'sqlName':_0x4e2a41['sqlName'],'filePath':_0x651824,'status':_0x1080ed,'reason':_0x5d0638});}return{'method':_0x2028cf(0x18b),'url':_0x2028cf(0x18f),'body':{'appCode':_0x3c5b3e[_0x2028cf(0x189)],'sqlCode':_0x3c5b3e[_0x2028cf(0x194)](_0x2028cf(0x176))||null,'sqlName':_0x3c5b3e[_0x2028cf(0x194)](_0x2028cf(0x16a))||null,'files':_0x2c5e51},'description':'Would\x20pull\x20'+_0x2c5e51[_0x2028cf(0x198)]+_0x2028cf(0x190)+_0x4af34e[_0x2028cf(0x17e)]};},async 'execute'(_0x10ab3d){const _0xb89654=a127_0xcfa1cd,_0x4ba8ce=loadSqlProjectConfig(_0x10ab3d[_0xb89654(0x189)]),_0x15acc7=await readSqlLockFile(_0x4ba8ce[_0xb89654(0x1a3)]),{lockData:_0x4c8a82,appLock:_0x1cb7c2}=ensureSqlLockScope(_0x15acc7??createEmptySqlLock(),_0x4ba8ce[_0xb89654(0x189)],_0x4ba8ce['sqlRoot'],_0xb89654(0x17c)),_0x3af5b0=_0x10ab3d[_0xb89654(0x185)](_0xb89654(0x172)),_0x5766f3=await fetchAllSqlQueries(_0x10ab3d['appCode'],{'sqlCode':_0x10ab3d[_0xb89654(0x194)](_0xb89654(0x176))||undefined,'sqlName':_0x10ab3d['str']('name')||undefined});if(_0x5766f3[_0xb89654(0x198)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':'No\x20remote\x20SQL\x20queries\x20matched.'};const _0x1ebb4f=[],_0x396ff3=[];for(const _0x5733f0 of _0x5766f3){try{_0x1ebb4f['push'](await ensureSqlContent(_0x5733f0));}catch(_0x7f4446){_0x396ff3[_0xb89654(0x173)]({'sqlCode':_0x5733f0['sqlCode'],'error':_0x7f4446 instanceof Error?_0x7f4446['message']:String(_0x7f4446)});}}if(_0x3af5b0&&!_0x10ab3d[_0xb89654(0x188)]){let _0x3f62b8=![];for(const _0x1d006c of _0x1ebb4f){const _0x54d362=detectModeFromSql(_0x1d006c),_0x1c61fa=_0x1d006c['dbId']?await getDbName(_0x10ab3d[_0xb89654(0x189)],Number(_0x1d006c['dbId']))[_0xb89654(0x17b)](()=>undefined):undefined,_0x3c9fe9=buildLocalSqlFileContent({'sqlCode':_0x1d006c[_0xb89654(0x16d)],'sqlName':_0x1d006c['sqlName'],'dbId':_0x1d006c['dbId']},ensureRemoteSqlContent(_0x1d006c),{'dbName':_0x1c61fa,'mode':_0x54d362,'syncedAt':new Date()[_0xb89654(0x16b)](),'description':_0x1d006c[_0xb89654(0x170)]}),_0x853421=resolveLocalSqlFilePath(_0x4ba8ce,_0x1d006c['sqlCode'],buildSqlLockEntry(_0x1d006c,ensureRemoteSqlContent(_0x1d006c),'',{'dbName':_0x1c61fa}));if(await fileExists(_0x853421)){const _0x4e345c=await readFile(_0x853421,_0xb89654(0x175));if(!isEquivalentPulledSqlFile(_0x4e345c,_0x3c9fe9,_0x54d362)){_0x3f62b8=!![];break;}}}if(_0x3f62b8){const _0x2468dc=await confirmForceOverwrite(_0xb89654(0x171));if(!_0x2468dc)throw CliErrors[_0xb89654(0x165)](_0xb89654(0x179));}}const _0x2bf294=cloneSqlLockData(_0x4c8a82),_0x4a9300=_0x2bf294[_0xb89654(0x19c)][_0x4ba8ce[_0xb89654(0x189)]],_0x44bbcf=[],_0x544880=[];for(const _0x13705d of _0x1ebb4f){const _0x3a5583=_0x4a9300['sqls'][_0x13705d['sqlCode']],_0x20e352=ensureRemoteSqlContent(_0x13705d),_0x227bce=detectModeFromSql(_0x13705d),_0x349eea=_0x13705d[_0xb89654(0x17a)]?await getDbName(_0x10ab3d[_0xb89654(0x189)],Number(_0x13705d['dbId']))[_0xb89654(0x17b)](()=>undefined):undefined,_0x539fa4=buildLocalSqlFileContent({'sqlCode':_0x13705d[_0xb89654(0x16d)],'sqlName':_0x13705d[_0xb89654(0x16c)],'dbId':_0x13705d[_0xb89654(0x17a)]},_0x20e352,{'dbName':_0x349eea,'mode':_0x227bce,'syncedAt':new Date()['toISOString'](),'description':_0x13705d[_0xb89654(0x170)]}),_0x3b7102=buildSqlLockEntry(_0x13705d,_0x20e352,computeSqlContentHash(_0x539fa4),{'dbName':_0x349eea}),_0x6b925e=_0x3b7102[_0xb89654(0x18a)],_0x1bc664=join(_0x4ba8ce[_0xb89654(0x17e)],_0x6b925e);try{if(await fileExists(_0x1bc664)){const _0x1b6746=await readFile(_0x1bc664,_0xb89654(0x175));if(isEquivalentPulledSqlFile(_0x1b6746,_0x539fa4,_0x227bce)){_0x544880[_0xb89654(0x173)]({'sqlCode':_0x13705d[_0xb89654(0x16d)],'reason':_0xb89654(0x168)}),_0x4a9300[_0xb89654(0x1a0)][_0x13705d[_0xb89654(0x16d)]]={..._0x3b7102,'hash':computeSqlContentHash(_0x1b6746),'path':_0x6b925e};continue;}if(!_0x3af5b0){_0x544880[_0xb89654(0x173)]({'sqlCode':_0x13705d['sqlCode'],'reason':_0xb89654(0x182)});continue;}}const _0x1274b2=_0x3a5583?.[_0xb89654(0x18a)]?join(_0x4ba8ce[_0xb89654(0x17e)],_0x3a5583[_0xb89654(0x18a)]):undefined;_0x1274b2&&_0x1274b2!==_0x1bc664&&await fileExists(_0x1274b2)&&await rm(_0x1274b2,{'force':!![]}),await ensureParentDirectory(_0x1bc664),await writeFile(_0x1bc664,_0x539fa4,'utf8'),_0x4a9300[_0xb89654(0x1a0)][_0x13705d[_0xb89654(0x16d)]]={..._0x3b7102,'path':_0x6b925e},_0x44bbcf[_0xb89654(0x173)]({'sqlCode':_0x13705d[_0xb89654(0x16d)],'filePath':_0x1bc664});}catch(_0x29768b){_0x396ff3['push']({'sqlCode':_0x13705d[_0xb89654(0x16d)],'error':_0x29768b instanceof Error?_0x29768b[_0xb89654(0x18d)]:String(_0x29768b)});}}return _0x4a9300[_0xb89654(0x19f)]=new Date()[_0xb89654(0x16b)](),await writeSqlLockFile(_0x4ba8ce[_0xb89654(0x1a3)],_0x2bf294),{'ok':_0x396ff3['length']===0x0,'data':{'pulled':_0x44bbcf,'skipped':_0x544880,'failed':_0x396ff3},'message':_0xb89654(0x1a2)+_0x44bbcf[_0xb89654(0x198)]+_0xb89654(0x193)+_0x544880[_0xb89654(0x198)]+'\x20skipped,\x20'+_0x396ff3[_0xb89654(0x198)]+'\x20failed'};}};function detectModeFromSql(_0x1ead5f){const _0x5431b9=a127_0xcfa1cd,_0x121c97=ensureRemoteSqlContent(_0x1ead5f),_0x119666=stripLocalSqlMetadata(_0x121c97,_0x5431b9(0x195))[_0x5431b9(0x16f)]();if(/^<(select|insert|update|delete)\b/i[_0x5431b9(0x18e)](_0x119666))return _0x5431b9(0x195);return'sql';}function isEquivalentPulledSqlFile(_0x1e7c7b,_0x2573c1,_0x9e8018){return normalizePullComparableContent(_0x1e7c7b,_0x9e8018)===normalizePullComparableContent(_0x2573c1,_0x9e8018);}function normalizePullComparableContent(_0x2c0d79,_0x9ac9e0){const _0x272d31=a127_0xcfa1cd,_0x527709=_0x2c0d79['replace'](/\r\n/g,'\x0a')[_0x272d31(0x192)]('\x0a'),_0x48ed20=_0x527709[_0x272d31(0x19a)](_0x28d137=>!isSyncedAtMetadataLine(_0x28d137,_0x9ac9e0));return _0x48ed20[_0x272d31(0x183)]('\x0a');}function isSyncedAtMetadataLine(_0x8293d4,_0x4762d0){const _0x4ebcab=a127_0xcfa1cd;if(_0x4762d0===_0x4ebcab(0x195))return/^\s*<!--\s*@lovrabet\.syncedAt:/[_0x4ebcab(0x18e)](_0x8293d4);return/^\s*--\s*@lovrabet\.syncedAt:/[_0x4ebcab(0x18e)](_0x8293d4);}
|
|
1
|
+
const a127_0x336a76=a127_0x196c;(function(_0x3a7e97,_0x2713c4){const _0x2a76a1=a127_0x196c,_0x3658e2=_0x3a7e97();while(!![]){try{const _0x17c654=parseInt(_0x2a76a1(0x218))/0x1+-parseInt(_0x2a76a1(0x1e0))/0x2*(parseInt(_0x2a76a1(0x206))/0x3)+parseInt(_0x2a76a1(0x1f6))/0x4*(parseInt(_0x2a76a1(0x1f7))/0x5)+parseInt(_0x2a76a1(0x1da))/0x6*(parseInt(_0x2a76a1(0x1f8))/0x7)+-parseInt(_0x2a76a1(0x1fd))/0x8+-parseInt(_0x2a76a1(0x1e5))/0x9*(-parseInt(_0x2a76a1(0x1dc))/0xa)+-parseInt(_0x2a76a1(0x1db))/0xb;if(_0x17c654===_0x2713c4)break;else _0x3658e2['push'](_0x3658e2['shift']());}catch(_0x58f641){_0x3658e2['push'](_0x3658e2['shift']());}}}(a127_0xe37e,0x88faa));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 a127_0x196c(_0xb767e4,_0x5dbf89){_0xb767e4=_0xb767e4-0x1d9;const _0xe37e2d=a127_0xe37e();let _0x196ce1=_0xe37e2d[_0xb767e4];return _0x196ce1;}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';function a127_0xe37e(){const _0x48e8e6=['pull','8190168HuQAIl','description','sqlRoot','sqls','sqlName','appCode','lockFilePath','sqlcode','split','124530ZGaVzN','string','dbId','cancelled','\x20written,\x20','test','str','unchanged','paging','join','POST','write','No\x20remote\x20SQL\x20queries\x20matched.','apps','\x20skipped,\x20','mybatisXml','sqlContent','sqlCode','650546jQXJHX','length','96WMbgvR','4124549cLltTk','2110JnMSsB','Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','Pull\x20complete:\x20','would_pull','34JzOjIF','sql','path','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','\x20failed','13302ZenvtO','sqlRootDir','Filter\x20by\x20SQL\x20display\x20name','bool','trimStart','Would\x20pull\x20','name','local\x20differs\x20from\x20remote','\x20SQL\x20file(s)\x20into\x20','toISOString','filter','replace','push','conflict','utf8','skipped','tableData','144664KrZvMU','85IttMzX','476105jswquA','totalCount','force','catch'];a127_0xe37e=function(){return _0x48e8e6;};return a127_0xe37e();}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(_0x1d1906,_0x2e1b7f){const _0x3fb2bf=a127_0x196c,_0x1060d7=[];let _0x637ae7=0x1;while(!![]){const _0x453c2c=await listSqlQueries(_0x1d1906,{'currentPage':_0x637ae7,'pageSize':PAGE_SIZE,'sqlCode':_0x2e1b7f['sqlCode'],'sqlName':_0x2e1b7f[_0x3fb2bf(0x201)]}),_0x210a9a=_0x453c2c[_0x3fb2bf(0x1f5)]??[];_0x1060d7[_0x3fb2bf(0x1f1)](..._0x210a9a);if(_0x210a9a[_0x3fb2bf(0x1d9)]===0x0)break;const _0x1b987d=_0x453c2c[_0x3fb2bf(0x20e)]?.[_0x3fb2bf(0x1f9)];if(_0x1b987d!=null?_0x1060d7[_0x3fb2bf(0x1d9)]>=_0x1b987d:_0x210a9a[_0x3fb2bf(0x1d9)]<PAGE_SIZE)break;_0x637ae7++;}return _0x1060d7;}async function ensureSqlContent(_0x44f3af){const _0x43adf8=a127_0x196c;if(_0x44f3af[_0x43adf8(0x216)]!=null&&String(_0x44f3af[_0x43adf8(0x216)])[_0x43adf8(0x1d9)]>0x0)return _0x44f3af;return getSqlQueryDetail(_0x44f3af[_0x43adf8(0x217)]);}export const sqlPull={'service':a127_0x336a76(0x1e1),'command':a127_0x336a76(0x1fc),'description':a127_0x336a76(0x1dd),'risk':a127_0x336a76(0x211),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a127_0x336a76(0x1eb),'type':a127_0x336a76(0x207),'description':a127_0x336a76(0x1e7)},{'name':a127_0x336a76(0x1fa),'type':'boolean','description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x4dc823){const _0x5934ba=a127_0x336a76,_0x56be6b=loadSqlProjectConfig(_0x4dc823[_0x5934ba(0x202)]),_0x3da7d8=await readSqlLockFile(_0x56be6b[_0x5934ba(0x203)]),{appLock:_0x51af85}=ensureSqlLockScope(_0x3da7d8??createEmptySqlLock(),_0x56be6b[_0x5934ba(0x202)],_0x56be6b[_0x5934ba(0x1ff)],'pull'),_0x170250=await fetchAllSqlQueries(_0x4dc823[_0x5934ba(0x202)],{'sqlCode':_0x4dc823['str'](_0x5934ba(0x204))||undefined,'sqlName':_0x4dc823['str']('name')||undefined}),_0x57cc3d=[];for(const _0x268f19 of _0x170250){const _0x2538d3=await ensureSqlContent(_0x268f19),_0x11bfc5=ensureRemoteSqlContent(_0x2538d3),_0x2a489d=detectModeFromSql(_0x2538d3),_0x1a3606=_0x2538d3[_0x5934ba(0x208)]?await getDbName(_0x4dc823['appCode'],Number(_0x2538d3[_0x5934ba(0x208)]))[_0x5934ba(0x1fb)](()=>undefined):undefined,_0x84443d=buildLocalSqlFileContent({'sqlCode':_0x2538d3[_0x5934ba(0x217)],'sqlName':_0x2538d3['sqlName'],'dbId':_0x2538d3[_0x5934ba(0x208)]},_0x11bfc5,{'dbName':_0x1a3606,'mode':_0x2a489d,'syncedAt':new Date()['toISOString'](),'description':_0x2538d3[_0x5934ba(0x1fe)]}),_0x37d1f4=buildSqlLockEntry(_0x2538d3,_0x11bfc5,'',{'dbName':_0x1a3606}),_0x100773=resolveLocalSqlFilePath(_0x56be6b,_0x2538d3[_0x5934ba(0x217)],_0x37d1f4);let _0x10451c=_0x5934ba(0x1df),_0x559b81;if(await fileExists(_0x100773)){const _0x225111=await readFile(_0x100773,'utf8');isEquivalentPulledSqlFile(_0x225111,_0x84443d,_0x2a489d)?(_0x10451c=_0x5934ba(0x1f4),_0x559b81=_0x5934ba(0x20d)):(_0x10451c=_0x5934ba(0x1f2),_0x559b81=_0x5934ba(0x1e3));}_0x57cc3d[_0x5934ba(0x1f1)]({'sqlCode':_0x2538d3[_0x5934ba(0x217)],'sqlName':_0x2538d3[_0x5934ba(0x201)],'filePath':_0x100773,'status':_0x10451c,'reason':_0x559b81});}return{'method':_0x5934ba(0x210),'url':'/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','body':{'appCode':_0x4dc823['appCode'],'sqlCode':_0x4dc823['str'](_0x5934ba(0x204))||null,'sqlName':_0x4dc823['str']('name')||null,'files':_0x57cc3d},'description':_0x5934ba(0x1ea)+_0x57cc3d[_0x5934ba(0x1d9)]+_0x5934ba(0x1ed)+_0x56be6b[_0x5934ba(0x1e6)]};},async 'execute'(_0x5eca45){const _0x5d2ee3=a127_0x336a76,_0x41d2a8=loadSqlProjectConfig(_0x5eca45[_0x5d2ee3(0x202)]),_0x1cdb3f=await readSqlLockFile(_0x41d2a8[_0x5d2ee3(0x203)]),{lockData:_0x30d94e,appLock:_0x201d28}=ensureSqlLockScope(_0x1cdb3f??createEmptySqlLock(),_0x41d2a8[_0x5d2ee3(0x202)],_0x41d2a8[_0x5d2ee3(0x1ff)],'pull'),_0x4a5488=_0x5eca45[_0x5d2ee3(0x1e8)](_0x5d2ee3(0x1fa)),_0x21ffa8=await fetchAllSqlQueries(_0x5eca45[_0x5d2ee3(0x202)],{'sqlCode':_0x5eca45['str'](_0x5d2ee3(0x204))||undefined,'sqlName':_0x5eca45[_0x5d2ee3(0x20c)](_0x5d2ee3(0x1eb))||undefined});if(_0x21ffa8[_0x5d2ee3(0x1d9)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x5d2ee3(0x212)};const _0x59ad3a=[],_0x450c1c=[];for(const _0x45b5b3 of _0x21ffa8){try{_0x59ad3a[_0x5d2ee3(0x1f1)](await ensureSqlContent(_0x45b5b3));}catch(_0x3c0a41){_0x450c1c[_0x5d2ee3(0x1f1)]({'sqlCode':_0x45b5b3[_0x5d2ee3(0x217)],'error':_0x3c0a41 instanceof Error?_0x3c0a41['message']:String(_0x3c0a41)});}}if(_0x4a5488&&!_0x5eca45['nonInteractive']){let _0x20d1d9=![];for(const _0xaebded of _0x59ad3a){const _0x429e12=detectModeFromSql(_0xaebded),_0x20d7b8=_0xaebded[_0x5d2ee3(0x208)]?await getDbName(_0x5eca45[_0x5d2ee3(0x202)],Number(_0xaebded[_0x5d2ee3(0x208)]))[_0x5d2ee3(0x1fb)](()=>undefined):undefined,_0x360838=buildLocalSqlFileContent({'sqlCode':_0xaebded[_0x5d2ee3(0x217)],'sqlName':_0xaebded[_0x5d2ee3(0x201)],'dbId':_0xaebded['dbId']},ensureRemoteSqlContent(_0xaebded),{'dbName':_0x20d7b8,'mode':_0x429e12,'syncedAt':new Date()[_0x5d2ee3(0x1ee)](),'description':_0xaebded[_0x5d2ee3(0x1fe)]}),_0x5a9c2c=resolveLocalSqlFilePath(_0x41d2a8,_0xaebded[_0x5d2ee3(0x217)],buildSqlLockEntry(_0xaebded,ensureRemoteSqlContent(_0xaebded),'',{'dbName':_0x20d7b8}));if(await fileExists(_0x5a9c2c)){const _0x5f1dc1=await readFile(_0x5a9c2c,_0x5d2ee3(0x1f3));if(!isEquivalentPulledSqlFile(_0x5f1dc1,_0x360838,_0x429e12)){_0x20d1d9=!![];break;}}}if(_0x20d1d9){const _0x5984bc=await confirmForceOverwrite('Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.');if(!_0x5984bc)throw CliErrors[_0x5d2ee3(0x209)]('Force\x20pull\x20cancelled.');}}const _0x495e17=cloneSqlLockData(_0x30d94e),_0x3fd35d=_0x495e17[_0x5d2ee3(0x213)][_0x41d2a8[_0x5d2ee3(0x202)]],_0x4a6bc1=[],_0x408938=[];for(const _0x26006c of _0x59ad3a){const _0x50fb35=_0x3fd35d[_0x5d2ee3(0x200)][_0x26006c['sqlCode']],_0x49f471=ensureRemoteSqlContent(_0x26006c),_0x39729a=detectModeFromSql(_0x26006c),_0x40faa7=_0x26006c[_0x5d2ee3(0x208)]?await getDbName(_0x5eca45[_0x5d2ee3(0x202)],Number(_0x26006c['dbId']))[_0x5d2ee3(0x1fb)](()=>undefined):undefined,_0x46d55b=buildLocalSqlFileContent({'sqlCode':_0x26006c['sqlCode'],'sqlName':_0x26006c[_0x5d2ee3(0x201)],'dbId':_0x26006c['dbId']},_0x49f471,{'dbName':_0x40faa7,'mode':_0x39729a,'syncedAt':new Date()[_0x5d2ee3(0x1ee)](),'description':_0x26006c[_0x5d2ee3(0x1fe)]}),_0xe267bf=buildSqlLockEntry(_0x26006c,_0x49f471,computeSqlContentHash(_0x46d55b),{'dbName':_0x40faa7}),_0x4d17a2=_0xe267bf[_0x5d2ee3(0x1e2)],_0x1b4824=join(_0x41d2a8[_0x5d2ee3(0x1e6)],_0x4d17a2);try{if(await fileExists(_0x1b4824)){const _0x59a231=await readFile(_0x1b4824,_0x5d2ee3(0x1f3));if(isEquivalentPulledSqlFile(_0x59a231,_0x46d55b,_0x39729a)){_0x408938[_0x5d2ee3(0x1f1)]({'sqlCode':_0x26006c['sqlCode'],'reason':_0x5d2ee3(0x20d)}),_0x3fd35d[_0x5d2ee3(0x200)][_0x26006c[_0x5d2ee3(0x217)]]={..._0xe267bf,'hash':computeSqlContentHash(_0x59a231),'path':_0x4d17a2};continue;}if(!_0x4a5488){_0x408938[_0x5d2ee3(0x1f1)]({'sqlCode':_0x26006c[_0x5d2ee3(0x217)],'reason':_0x5d2ee3(0x1ec)});continue;}}const _0x51e622=_0x50fb35?.['path']?join(_0x41d2a8['sqlRootDir'],_0x50fb35['path']):undefined;_0x51e622&&_0x51e622!==_0x1b4824&&await fileExists(_0x51e622)&&await rm(_0x51e622,{'force':!![]}),await ensureParentDirectory(_0x1b4824),await writeFile(_0x1b4824,_0x46d55b,_0x5d2ee3(0x1f3)),_0x3fd35d[_0x5d2ee3(0x200)][_0x26006c[_0x5d2ee3(0x217)]]={..._0xe267bf,'path':_0x4d17a2},_0x4a6bc1[_0x5d2ee3(0x1f1)]({'sqlCode':_0x26006c[_0x5d2ee3(0x217)],'filePath':_0x1b4824});}catch(_0xb0fde1){_0x450c1c[_0x5d2ee3(0x1f1)]({'sqlCode':_0x26006c['sqlCode'],'error':_0xb0fde1 instanceof Error?_0xb0fde1['message']:String(_0xb0fde1)});}}return _0x3fd35d['lastSync']=new Date()[_0x5d2ee3(0x1ee)](),await writeSqlLockFile(_0x41d2a8[_0x5d2ee3(0x203)],_0x495e17),{'ok':_0x450c1c[_0x5d2ee3(0x1d9)]===0x0,'data':{'pulled':_0x4a6bc1,'skipped':_0x408938,'failed':_0x450c1c},'message':_0x5d2ee3(0x1de)+_0x4a6bc1[_0x5d2ee3(0x1d9)]+_0x5d2ee3(0x20a)+_0x408938[_0x5d2ee3(0x1d9)]+_0x5d2ee3(0x214)+_0x450c1c[_0x5d2ee3(0x1d9)]+_0x5d2ee3(0x1e4)};}};function detectModeFromSql(_0x12defc){const _0xc3427=a127_0x336a76,_0x50290e=ensureRemoteSqlContent(_0x12defc),_0x32245d=stripLocalSqlMetadata(_0x50290e,_0xc3427(0x215))[_0xc3427(0x1e9)]();if(/^<(select|insert|update|delete)\b/i[_0xc3427(0x20b)](_0x32245d))return _0xc3427(0x215);return _0xc3427(0x1e1);}function isEquivalentPulledSqlFile(_0x4c336a,_0xb04510,_0x37aca7){return normalizePullComparableContent(_0x4c336a,_0x37aca7)===normalizePullComparableContent(_0xb04510,_0x37aca7);}function normalizePullComparableContent(_0x5b57c2,_0x463beb){const _0x3ae753=a127_0x336a76,_0x4370d5=_0x5b57c2[_0x3ae753(0x1f0)](/\r\n/g,'\x0a')[_0x3ae753(0x205)]('\x0a'),_0x3c0e55=_0x4370d5[_0x3ae753(0x1ef)](_0x570b5e=>!isSyncedAtMetadataLine(_0x570b5e,_0x463beb));return _0x3c0e55[_0x3ae753(0x20f)]('\x0a');}function isSyncedAtMetadataLine(_0x381656,_0x383ff1){const _0x277988=a127_0x336a76;if(_0x383ff1===_0x277988(0x215))return/^\s*<!--\s*@lovrabet\.syncedAt:/[_0x277988(0x20b)](_0x381656);return/^\s*--\s*@lovrabet\.syncedAt:/[_0x277988(0x20b)](_0x381656);}
|
package/lib/commands/sql/push.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a128_0x41ced6=a128_0x1ddd;(function(_0x2e3d23,_0x2849fb){const _0x10be5a=a128_0x1ddd,_0xf702d5=_0x2e3d23();while(!![]){try{const _0x3759e2=parseInt(_0x10be5a(0x156))/0x1+parseInt(_0x10be5a(0x13b))/0x2*(-parseInt(_0x10be5a(0x15b))/0x3)+parseInt(_0x10be5a(0x159))/0x4*(-parseInt(_0x10be5a(0x135))/0x5)+-parseInt(_0x10be5a(0x149))/0x6+-parseInt(_0x10be5a(0x151))/0x7+-parseInt(_0x10be5a(0x168))/0x8+parseInt(_0x10be5a(0x162))/0x9*(parseInt(_0x10be5a(0x13c))/0xa);if(_0x3759e2===_0x2849fb)break;else _0xf702d5['push'](_0xf702d5['shift']());}catch(_0x48d8f5){_0xf702d5['push'](_0xf702d5['shift']());}}}(a128_0x18d7,0x63cba));import{mkdir,readFile,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{updateSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{scanLocalSqlQueries}from'../../core/sql-sync/file-system.js';import{computeSqlFileHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{fileExists}from'../../core/bff/file-system.js';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(_0x1326a9,_0x77bd3d,_0x4e916b){const _0x4fca3c=a128_0x1ddd,_0x3f7a2b=await scanLocalSqlQueries(_0x1326a9),_0x4067dc=new Map();for(const _0x13d6cb of _0x3f7a2b){if(_0x4e916b&&_0x13d6cb['sqlCode']!==_0x4e916b)continue;const _0x33c105=_0x4067dc[_0x4fca3c(0x157)](_0x13d6cb['sqlCode'])??[];_0x33c105[_0x4fca3c(0x13f)](_0x13d6cb),_0x4067dc[_0x4fca3c(0x132)](_0x13d6cb[_0x4fca3c(0x166)],_0x33c105);}if(_0x4e916b&&!_0x4067dc[_0x4fca3c(0x12e)](_0x4e916b))throw CliErrors['validation'](_0x4fca3c(0x13e)+_0x4e916b);const _0x2d9326=[];for(const [_0x1b4848,_0x1efec2]of _0x4067dc['entries']()){if(_0x1efec2[_0x4fca3c(0x147)]===0x1){_0x2d9326[_0x4fca3c(0x13f)](_0x1efec2[0x0]);continue;}const _0x2fbdff=_0x77bd3d[_0x4fca3c(0x14b)][_0x1b4848],_0x55a1b3=_0x2fbdff?.[_0x4fca3c(0x137)],_0x5bcc5b=_0x55a1b3?_0x1efec2['filter'](_0x5a9f69=>_0x5a9f69[_0x4fca3c(0x165)]!==_0x55a1b3):_0x1efec2;if(_0x2fbdff&&_0x5bcc5b[_0x4fca3c(0x147)]===0x1){_0x2d9326[_0x4fca3c(0x13f)](_0x5bcc5b[0x0]);continue;}throw CliErrors[_0x4fca3c(0x14d)]('Multiple\x20local\x20SQL\x20files\x20found\x20for\x20sqlCode\x20'+_0x1b4848+_0x4fca3c(0x163));}return _0x2d9326;}export const sqlPush={'service':a128_0x41ced6(0x141),'command':a128_0x41ced6(0x13f),'description':a128_0x41ced6(0x153),'risk':a128_0x41ced6(0x14e),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a128_0x41ced6(0x14c),'type':a128_0x41ced6(0x130),'description':'Force\x20push\x20even\x20if\x20local\x20hash\x20matches\x20lock'}],async 'dryRun'(_0x1f7bd1){const _0x58a5df=a128_0x41ced6,_0x1602f4=loadSqlProjectConfig(_0x1f7bd1[_0x58a5df(0x15d)]),_0x1efb7c=await readSqlLockFile(_0x1602f4[_0x58a5df(0x158)]),{appLock:_0x3b71b7}=ensureSqlLockScope(_0x1efb7c??createEmptySqlLock(),_0x1f7bd1['appCode'],_0x1602f4[_0x58a5df(0x15c)],_0x58a5df(0x13f)),_0x5da79b=await getTargetSqlQueries(_0x1602f4,_0x3b71b7,_0x1f7bd1[_0x58a5df(0x134)]('sqlcode')||undefined),_0x644fc7=[];for(const _0x2920a2 of _0x5da79b){const _0x4a4e88=await computeSqlFileHash(_0x2920a2[_0x58a5df(0x154)]),_0x5b0ce5=_0x3b71b7[_0x58a5df(0x14b)][_0x2920a2[_0x58a5df(0x166)]],_0x5de208=!!_0x5b0ce5&&(_0x5b0ce5[_0x58a5df(0x137)]!==_0x2920a2[_0x58a5df(0x165)]||!!_0x2920a2[_0x58a5df(0x140)]&&_0x5b0ce5['sqlName']!==_0x2920a2[_0x58a5df(0x140)]);if(!_0x1f7bd1[_0x58a5df(0x145)](_0x58a5df(0x14c))&&_0x5b0ce5&&_0x5b0ce5[_0x58a5df(0x14a)]===_0x4a4e88&&!_0x5de208)continue;_0x644fc7[_0x58a5df(0x13f)](_0x2920a2[_0x58a5df(0x166)]);}return{'method':_0x58a5df(0x155),'url':'/smartapi/custom/updateUserCustomSql','body':{'sqlCodes':_0x644fc7,'appCode':_0x1f7bd1[_0x58a5df(0x15d)]},'description':_0x58a5df(0x16a)+_0x644fc7[_0x58a5df(0x147)]+'\x20SQL\x20file(s)'};},async 'execute'(_0x25bb8d){const _0x288951=a128_0x41ced6,_0x8fd2be=loadSqlProjectConfig(_0x25bb8d['appCode']),_0x537068=await readSqlLockFile(_0x8fd2be[_0x288951(0x158)]),{lockData:_0x17456c,appLock:_0x5113a7}=ensureSqlLockScope(_0x537068??createEmptySqlLock(),_0x25bb8d['appCode'],_0x8fd2be[_0x288951(0x15c)],'push'),_0x48aa25=await getTargetSqlQueries(_0x8fd2be,_0x5113a7,_0x25bb8d[_0x288951(0x134)](_0x288951(0x160))||undefined);if(_0x48aa25[_0x288951(0x147)]===0x0)return{'ok':!![],'data':{'pushed':[],'skipped':[],'failed':[]},'message':_0x288951(0x16b)};const _0x1c6a9f=[],_0x4891b8=[],_0x318875=[];for(const _0x2082ba of _0x48aa25){const _0x311e3d=_0x5113a7[_0x288951(0x14b)][_0x2082ba[_0x288951(0x166)]];if(!_0x311e3d){_0x318875['push']({'sqlCode':_0x2082ba[_0x288951(0x166)],'error':_0x288951(0x146)});continue;}try{const _0x5c73cd=await computeSqlFileHash(_0x2082ba[_0x288951(0x154)]),_0x2d2b2a=_0x311e3d[_0x288951(0x137)]!==_0x2082ba[_0x288951(0x165)]||!!_0x2082ba[_0x288951(0x140)]&&_0x311e3d[_0x288951(0x140)]!==_0x2082ba['sqlName'];if(!_0x25bb8d[_0x288951(0x145)](_0x288951(0x14c))&&_0x311e3d[_0x288951(0x14a)]===_0x5c73cd&&!_0x2d2b2a){_0x4891b8[_0x288951(0x13f)]({'sqlCode':_0x2082ba['sqlCode'],'reason':'unchanged'});continue;}if(_0x311e3d[_0x288951(0x138)]==null){_0x318875['push']({'sqlCode':_0x2082ba['sqlCode'],'error':_0x288951(0x152)});continue;}const _0x24eb7e=await readFile(_0x2082ba[_0x288951(0x154)],'utf8'),_0x3a2cd7=stripLocalSqlMetadata(_0x24eb7e,_0x2082ba[_0x288951(0x150)]),_0x212fc1=_0x2082ba[_0x288951(0x140)]||_0x311e3d[_0x288951(0x140)],_0x551a52=await resolveTargetDbBinding(_0x25bb8d['appCode'],_0x2082ba,_0x311e3d),_0x456025=await updateSqlQuery({'id':_0x311e3d[_0x288951(0x15e)],'appCode':_0x25bb8d['appCode'],'sqlCode':_0x2082ba[_0x288951(0x166)],'sqlName':_0x212fc1,'dbId':_0x551a52['dbId'],'version':_0x311e3d['version'],'sqlContent':_0x3a2cd7,'sqlConfig':_0x311e3d['sqlConfig']??undefined}),_0x32e3b7=_0x456025[_0x288951(0x13d)]?await getDbName(_0x25bb8d['appCode'],Number(_0x456025[_0x288951(0x13d)]))[_0x288951(0x139)](()=>_0x551a52[_0x288951(0x167)]):_0x551a52[_0x288951(0x167)];_0x5113a7[_0x288951(0x14b)][_0x2082ba[_0x288951(0x166)]]={...buildSqlLockEntry(_0x456025,_0x3a2cd7,_0x5c73cd,{'dbName':_0x32e3b7}),'path':_0x2082ba['relativePath'],'mode':_0x311e3d[_0x288951(0x150)]},await archivePreviousSqlFileIfNeeded(_0x8fd2be,_0x311e3d[_0x288951(0x137)],_0x2082ba[_0x288951(0x165)]),_0x1c6a9f[_0x288951(0x13f)]({'sqlCode':_0x2082ba['sqlCode'],'remoteId':_0x311e3d[_0x288951(0x15e)]});}catch(_0x2c7ee7){_0x318875[_0x288951(0x13f)]({'sqlCode':_0x2082ba['sqlCode'],'error':_0x2c7ee7 instanceof Error?_0x2c7ee7[_0x288951(0x16c)]:String(_0x2c7ee7)});}}return _0x5113a7[_0x288951(0x144)]=new Date()['toISOString'](),await writeSqlLockFile(_0x8fd2be[_0x288951(0x158)],_0x17456c),{'ok':_0x318875[_0x288951(0x147)]===0x0,'data':{'pushed':_0x1c6a9f,'skipped':_0x4891b8,'failed':_0x318875},'message':_0x288951(0x133)+_0x1c6a9f[_0x288951(0x147)]+_0x288951(0x142)+_0x4891b8[_0x288951(0x147)]+_0x288951(0x164)+_0x318875[_0x288951(0x147)]+'\x20failed'};}};async function archivePreviousSqlFileIfNeeded(_0x1a3a3a,_0x4e0ddb,_0x2cd77d){const _0x175f95=a128_0x41ced6;if(!_0x4e0ddb||_0x4e0ddb===_0x2cd77d)return;const _0x2d09f4=join(_0x1a3a3a[_0x175f95(0x12f)],_0x4e0ddb);if(!await fileExists(_0x2d09f4))return;const _0x35c115=await moveToTrash(_0x1a3a3a['projectRoot'],_0x1a3a3a[_0x175f95(0x15f)],_0x2d09f4);await cleanupEmptyDirectories(dirname(_0x2d09f4),_0x1a3a3a[_0x175f95(0x12f)]),void _0x35c115;}function a128_0x1ddd(_0x59d991,_0x6866d8){_0x59d991=_0x59d991-0x12e;const _0x18d790=a128_0x18d7();let _0x1ddd7f=_0x18d790[_0x59d991];return _0x1ddd7f;}async function moveToTrash(_0x403398,_0x4a382f,_0x48bd07){const _0x41f3d7=new Date()['toISOString']()['replace'](/[:.]/g,'-'),_0x1fcd36=relative(_0x403398,_0x48bd07),_0x18b49c=join(_0x4a382f,_0x41f3d7,_0x1fcd36);return await mkdir(dirname(_0x18b49c),{'recursive':!![]}),await rename(_0x48bd07,_0x18b49c),_0x18b49c;}async function cleanupEmptyDirectories(_0xe6ff9a,_0xe52137){let _0x579661=resolve(_0xe6ff9a);const _0x1ea44a=resolve(_0xe52137);while(_0x579661['startsWith'](''+_0x1ea44a+sep)||_0x579661===_0x1ea44a){if(_0x579661===_0x1ea44a)return;try{const _0x4038ab=await readdir(_0x579661);if(_0x4038ab['length']>0x0)return;await rmdir(_0x579661);}catch{return;}_0x579661=dirname(_0x579661);}}async function resolveTargetDbBinding(_0x2d5c6d,_0x16ca58,_0x5eeadf){const _0x2704b9=a128_0x41ced6,_0x36acc5=_0x16ca58[_0x2704b9(0x169)];if(!_0x36acc5)return{'dbId':_0x5eeadf[_0x2704b9(0x13d)],'dbName':_0x5eeadf[_0x2704b9(0x167)]};const _0x3b79ee=buildDbDirectoryName(_0x5eeadf[_0x2704b9(0x167)],_0x5eeadf[_0x2704b9(0x13d)]);if(_0x36acc5===_0x3b79ee)return{'dbId':_0x5eeadf['dbId'],'dbName':_0x5eeadf[_0x2704b9(0x167)]};const _0x6f95fa=parseExplicitDbDirectory(_0x36acc5);if(_0x6f95fa!=null)return{'dbId':_0x6f95fa,'dbName':await getDbName(_0x2d5c6d,_0x6f95fa)['catch'](()=>undefined)};const _0x4db32b=await listDatabases(_0x2d5c6d),_0x23c75e=_0x4db32b[_0x2704b9(0x14f)](_0x3cf6ee=>buildDbDirectoryName(_0x3cf6ee['dbName'],_0x3cf6ee['dbId'])===_0x36acc5);if(_0x23c75e['length']===0x1)return{'dbId':_0x23c75e[0x0]['dbId'],'dbName':_0x23c75e[0x0][_0x2704b9(0x167)]};if(_0x23c75e['length']===0x0)throw CliErrors[_0x2704b9(0x14d)](_0x2704b9(0x15a)+_0x36acc5+_0x2704b9(0x13a)+_0x16ca58[_0x2704b9(0x166)]+'.');const _0x8f51e2=_0x23c75e[_0x2704b9(0x143)](_0x22c6ec=>_0x22c6ec[_0x2704b9(0x167)]+'\x20('+_0x22c6ec[_0x2704b9(0x13d)]+')')[_0x2704b9(0x136)](',\x20');throw CliErrors[_0x2704b9(0x14d)](_0x2704b9(0x161)+_0x36acc5+'\x22\x20matches\x20multiple\x20databases\x20for\x20sqlCode\x20'+_0x16ca58[_0x2704b9(0x166)]+':\x20'+_0x8f51e2);}function parseExplicitDbDirectory(_0xd4426){const _0x5e4a5e=a128_0x41ced6,_0x58c4f2=/^db-(\d+)$/[_0x5e4a5e(0x148)](_0xd4426);if(!_0x58c4f2)return null;const _0x19c41b=Number(_0x58c4f2[0x1]);return Number[_0x5e4a5e(0x131)](_0x19c41b)&&_0x19c41b>0x0?_0x19c41b:null;}function a128_0x18d7(){const _0x2e083b=['Local\x20directory\x20\x22','12051yKBoVV','.\x20Keep\x20only\x20one\x20file\x20under\x20its\x20sqlCode\x20directory\x20before\x20pushing.','\x20skipped,\x20','relativePath','sqlCode','dbName','2890648LZiLbP','dbDirectory','Would\x20push\x20','No\x20local\x20SQL\x20files\x20found.','message','has','sqlRootDir','boolean','isFinite','set','Push\x20complete:\x20','str','2048935niDOol','join','path','version','catch','\x22\x20for\x20sqlCode\x20','8266LRkLMo','21610xdPOQP','dbId','Local\x20SQL\x20not\x20found:\x20','push','sqlName','sql','\x20pushed,\x20','map','lastSync','bool','local\x20SQL\x20is\x20not\x20tracked\x20by\x20sql.lock.json;\x20use\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first','length','exec','4188618QlCPAx','hash','sqls','force','validation','high-risk-write','filter','mode','2485378gQgWaz','missing\x20remote\x20version;\x20run\x20`rabetbase\x20sql\x20pull`\x20to\x20refresh\x20version\x20info\x20first','Push\x20local\x20SQL\x20files\x20to\x20remote','filePath','POST','4871ZlqvRr','get','lockFilePath','4iBStku','No\x20database\x20matches\x20local\x20directory\x20\x22','483JSwbkI','sqlRoot','appCode','remoteId','trashDir','sqlcode'];a128_0x18d7=function(){return _0x2e083b;};return a128_0x18d7();}
|
|
1
|
+
const a128_0xdcd7a3=a128_0x1d5f;(function(_0x2263af,_0x4b2b37){const _0x4de78d=a128_0x1d5f,_0x56410f=_0x2263af();while(!![]){try{const _0x1c22d7=parseInt(_0x4de78d(0x1dd))/0x1+parseInt(_0x4de78d(0x1cb))/0x2*(-parseInt(_0x4de78d(0x1eb))/0x3)+parseInt(_0x4de78d(0x1ca))/0x4*(parseInt(_0x4de78d(0x1ee))/0x5)+parseInt(_0x4de78d(0x1c1))/0x6+parseInt(_0x4de78d(0x1b9))/0x7+parseInt(_0x4de78d(0x1d7))/0x8+-parseInt(_0x4de78d(0x1df))/0x9;if(_0x1c22d7===_0x4b2b37)break;else _0x56410f['push'](_0x56410f['shift']());}catch(_0x367bed){_0x56410f['push'](_0x56410f['shift']());}}}(a128_0x1150,0x3eb4b));import{mkdir,readFile,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{updateSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{scanLocalSqlQueries}from'../../core/sql-sync/file-system.js';import{computeSqlFileHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{fileExists}from'../../core/bff/file-system.js';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(_0x53a00b,_0x3a3e0b,_0x2fa719){const _0x3b89de=a128_0x1d5f,_0x43d99b=await scanLocalSqlQueries(_0x53a00b),_0x5da300=new Map();for(const _0x44c34d of _0x43d99b){if(_0x2fa719&&_0x44c34d['sqlCode']!==_0x2fa719)continue;const _0x219b46=_0x5da300['get'](_0x44c34d['sqlCode'])??[];_0x219b46['push'](_0x44c34d),_0x5da300[_0x3b89de(0x1e7)](_0x44c34d['sqlCode'],_0x219b46);}if(_0x2fa719&&!_0x5da300[_0x3b89de(0x1bf)](_0x2fa719))throw CliErrors[_0x3b89de(0x1cf)](_0x3b89de(0x1d3)+_0x2fa719);const _0x32d261=[];for(const [_0x421a67,_0x63e6a0]of _0x5da300[_0x3b89de(0x1be)]()){if(_0x63e6a0[_0x3b89de(0x1c4)]===0x1){_0x32d261[_0x3b89de(0x1d2)](_0x63e6a0[0x0]);continue;}const _0x33ee58=_0x3a3e0b[_0x3b89de(0x1c6)][_0x421a67],_0xb8096f=_0x33ee58?.[_0x3b89de(0x1c9)],_0x2f8b19=_0xb8096f?_0x63e6a0[_0x3b89de(0x1c3)](_0x195de3=>_0x195de3[_0x3b89de(0x1f1)]!==_0xb8096f):_0x63e6a0;if(_0x33ee58&&_0x2f8b19[_0x3b89de(0x1c4)]===0x1){_0x32d261[_0x3b89de(0x1d2)](_0x2f8b19[0x0]);continue;}throw CliErrors[_0x3b89de(0x1cf)](_0x3b89de(0x1ea)+_0x421a67+_0x3b89de(0x1d6));}return _0x32d261;}export const sqlPush={'service':a128_0xdcd7a3(0x1e5),'command':a128_0xdcd7a3(0x1d2),'description':'Push\x20local\x20SQL\x20files\x20to\x20remote','risk':a128_0xdcd7a3(0x1e9),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a128_0xdcd7a3(0x1b6),'type':a128_0xdcd7a3(0x1e4),'description':'Force\x20push\x20even\x20if\x20local\x20hash\x20matches\x20lock'}],async 'dryRun'(_0x3d5bba){const _0xfc3e92=a128_0xdcd7a3,_0x86d9b=loadSqlProjectConfig(_0x3d5bba['appCode']),_0x1296e3=await readSqlLockFile(_0x86d9b[_0xfc3e92(0x1ed)]),{appLock:_0x50aaa0}=ensureSqlLockScope(_0x1296e3??createEmptySqlLock(),_0x3d5bba[_0xfc3e92(0x1ce)],_0x86d9b['sqlRoot'],_0xfc3e92(0x1d2)),_0x14a3b4=await getTargetSqlQueries(_0x86d9b,_0x50aaa0,_0x3d5bba['str'](_0xfc3e92(0x1b4))||undefined),_0x1e592c=[];for(const _0x4798f1 of _0x14a3b4){const _0xbc43e8=await computeSqlFileHash(_0x4798f1['filePath']),_0x41f230=_0x50aaa0[_0xfc3e92(0x1c6)][_0x4798f1[_0xfc3e92(0x1c0)]],_0x337948=!!_0x41f230&&(_0x41f230[_0xfc3e92(0x1c9)]!==_0x4798f1[_0xfc3e92(0x1f1)]||!!_0x4798f1[_0xfc3e92(0x1c5)]&&_0x41f230[_0xfc3e92(0x1c5)]!==_0x4798f1[_0xfc3e92(0x1c5)]);if(!_0x3d5bba['bool'](_0xfc3e92(0x1b6))&&_0x41f230&&_0x41f230[_0xfc3e92(0x1f0)]===_0xbc43e8&&!_0x337948)continue;_0x1e592c['push'](_0x4798f1['sqlCode']);}return{'method':_0xfc3e92(0x1b5),'url':_0xfc3e92(0x1cd),'body':{'sqlCodes':_0x1e592c,'appCode':_0x3d5bba[_0xfc3e92(0x1ce)]},'description':'Would\x20push\x20'+_0x1e592c[_0xfc3e92(0x1c4)]+_0xfc3e92(0x1da)};},async 'execute'(_0x5c777f){const _0xf43a8e=a128_0xdcd7a3,_0xf4403a=loadSqlProjectConfig(_0x5c777f['appCode']),_0x38a4e1=await readSqlLockFile(_0xf4403a[_0xf43a8e(0x1ed)]),{lockData:_0x148e88,appLock:_0x47de8}=ensureSqlLockScope(_0x38a4e1??createEmptySqlLock(),_0x5c777f[_0xf43a8e(0x1ce)],_0xf4403a[_0xf43a8e(0x1bd)],'push'),_0x56cb4b=await getTargetSqlQueries(_0xf4403a,_0x47de8,_0x5c777f['str'](_0xf43a8e(0x1b4))||undefined);if(_0x56cb4b[_0xf43a8e(0x1c4)]===0x0)return{'ok':!![],'data':{'pushed':[],'skipped':[],'failed':[]},'message':_0xf43a8e(0x1e1)};const _0x3e96b4=[],_0x1f4e11=[],_0x5ccaa9=[];for(const _0xf97f08 of _0x56cb4b){const _0x1fd275=_0x47de8[_0xf43a8e(0x1c6)][_0xf97f08[_0xf43a8e(0x1c0)]];if(!_0x1fd275){_0x5ccaa9['push']({'sqlCode':_0xf97f08[_0xf43a8e(0x1c0)],'error':_0xf43a8e(0x1d4)});continue;}try{const _0x576ffe=await computeSqlFileHash(_0xf97f08['filePath']),_0x100200=_0x1fd275['path']!==_0xf97f08['relativePath']||!!_0xf97f08[_0xf43a8e(0x1c5)]&&_0x1fd275[_0xf43a8e(0x1c5)]!==_0xf97f08[_0xf43a8e(0x1c5)];if(!_0x5c777f['bool'](_0xf43a8e(0x1b6))&&_0x1fd275[_0xf43a8e(0x1f0)]===_0x576ffe&&!_0x100200){_0x1f4e11[_0xf43a8e(0x1d2)]({'sqlCode':_0xf97f08[_0xf43a8e(0x1c0)],'reason':_0xf43a8e(0x1e0)});continue;}if(_0x1fd275[_0xf43a8e(0x1b3)]==null){_0x5ccaa9[_0xf43a8e(0x1d2)]({'sqlCode':_0xf97f08[_0xf43a8e(0x1c0)],'error':'missing\x20remote\x20version;\x20run\x20`rabetbase\x20sql\x20pull`\x20to\x20refresh\x20version\x20info\x20first'});continue;}const _0x3c1a5b=await readFile(_0xf97f08[_0xf43a8e(0x1d9)],_0xf43a8e(0x1c2)),_0x333130=stripLocalSqlMetadata(_0x3c1a5b,_0xf97f08[_0xf43a8e(0x1d1)]),_0x13934f=_0xf97f08['sqlName']||_0x1fd275[_0xf43a8e(0x1c5)],_0x5385ae=await resolveTargetDbBinding(_0x5c777f[_0xf43a8e(0x1ce)],_0xf97f08,_0x1fd275),_0x292e1f=await updateSqlQuery({'id':_0x1fd275[_0xf43a8e(0x1e8)],'appCode':_0x5c777f[_0xf43a8e(0x1ce)],'sqlCode':_0xf97f08['sqlCode'],'sqlName':_0x13934f,'dbId':_0x5385ae['dbId'],'version':_0x1fd275[_0xf43a8e(0x1b3)],'sqlContent':_0x333130,'sqlConfig':_0x1fd275[_0xf43a8e(0x1d0)]??undefined}),_0x1c777c=_0x292e1f[_0xf43a8e(0x1bb)]?await getDbName(_0x5c777f[_0xf43a8e(0x1ce)],Number(_0x292e1f[_0xf43a8e(0x1bb)]))['catch'](()=>_0x5385ae[_0xf43a8e(0x1c8)]):_0x5385ae['dbName'];_0x47de8[_0xf43a8e(0x1c6)][_0xf97f08[_0xf43a8e(0x1c0)]]={...buildSqlLockEntry(_0x292e1f,_0x333130,_0x576ffe,{'dbName':_0x1c777c}),'path':_0xf97f08['relativePath'],'mode':_0x1fd275[_0xf43a8e(0x1d1)]},await archivePreviousSqlFileIfNeeded(_0xf4403a,_0x1fd275['path'],_0xf97f08[_0xf43a8e(0x1f1)]),_0x3e96b4[_0xf43a8e(0x1d2)]({'sqlCode':_0xf97f08[_0xf43a8e(0x1c0)],'remoteId':_0x1fd275[_0xf43a8e(0x1e8)]});}catch(_0x2d1c52){_0x5ccaa9[_0xf43a8e(0x1d2)]({'sqlCode':_0xf97f08[_0xf43a8e(0x1c0)],'error':_0x2d1c52 instanceof Error?_0x2d1c52['message']:String(_0x2d1c52)});}}return _0x47de8[_0xf43a8e(0x1cc)]=new Date()[_0xf43a8e(0x1e3)](),await writeSqlLockFile(_0xf4403a[_0xf43a8e(0x1ed)],_0x148e88),{'ok':_0x5ccaa9[_0xf43a8e(0x1c4)]===0x0,'data':{'pushed':_0x3e96b4,'skipped':_0x1f4e11,'failed':_0x5ccaa9},'message':_0xf43a8e(0x1ec)+_0x3e96b4[_0xf43a8e(0x1c4)]+'\x20pushed,\x20'+_0x1f4e11[_0xf43a8e(0x1c4)]+_0xf43a8e(0x1e2)+_0x5ccaa9['length']+'\x20failed'};}};async function archivePreviousSqlFileIfNeeded(_0x41e90e,_0x413175,_0x413ffa){const _0x198cc4=a128_0xdcd7a3;if(!_0x413175||_0x413175===_0x413ffa)return;const _0x29e8ea=join(_0x41e90e[_0x198cc4(0x1dc)],_0x413175);if(!await fileExists(_0x29e8ea))return;const _0x56ea1e=await moveToTrash(_0x41e90e[_0x198cc4(0x1b8)],_0x41e90e[_0x198cc4(0x1e6)],_0x29e8ea);await cleanupEmptyDirectories(dirname(_0x29e8ea),_0x41e90e['sqlRootDir']),void _0x56ea1e;}function a128_0x1150(){const _0x42458a=['force','exec','projectRoot','1898078RUqJDW','\x22\x20for\x20sqlCode\x20','dbId','map','sqlRoot','entries','has','sqlCode','1058526tPKuZj','utf8','filter','length','sqlName','sqls','startsWith','dbName','path','9132viTOvq','73518jSfpNu','lastSync','/smartapi/custom/updateUserCustomSql','appCode','validation','sqlConfig','mode','push','Local\x20SQL\x20not\x20found:\x20','local\x20SQL\x20is\x20not\x20tracked\x20by\x20sql.lock.json;\x20use\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first','join','.\x20Keep\x20only\x20one\x20file\x20under\x20its\x20sqlCode\x20directory\x20before\x20pushing.','2496608ABkjRe','No\x20database\x20matches\x20local\x20directory\x20\x22','filePath','\x20SQL\x20file(s)','catch','sqlRootDir','168857GqRrBG','Local\x20directory\x20\x22','5603103hIkqkY','unchanged','No\x20local\x20SQL\x20files\x20found.','\x20skipped,\x20','toISOString','boolean','sql','trashDir','set','remoteId','high-risk-write','Multiple\x20local\x20SQL\x20files\x20found\x20for\x20sqlCode\x20','15nIEeOY','Push\x20complete:\x20','lockFilePath','295dwZzQI','dbDirectory','hash','relativePath','version','sqlcode','POST'];a128_0x1150=function(){return _0x42458a;};return a128_0x1150();}async function moveToTrash(_0x22e685,_0x8210ed,_0x1d2a96){const _0x4f8f7b=new Date()['toISOString']()['replace'](/[:.]/g,'-'),_0x3fc6ea=relative(_0x22e685,_0x1d2a96),_0x31a256=join(_0x8210ed,_0x4f8f7b,_0x3fc6ea);return await mkdir(dirname(_0x31a256),{'recursive':!![]}),await rename(_0x1d2a96,_0x31a256),_0x31a256;}async function cleanupEmptyDirectories(_0x33f8d0,_0x51a92a){const _0x5a40c4=a128_0xdcd7a3;let _0x39c1cd=resolve(_0x33f8d0);const _0xadc77d=resolve(_0x51a92a);while(_0x39c1cd[_0x5a40c4(0x1c7)](''+_0xadc77d+sep)||_0x39c1cd===_0xadc77d){if(_0x39c1cd===_0xadc77d)return;try{const _0x1462eb=await readdir(_0x39c1cd);if(_0x1462eb[_0x5a40c4(0x1c4)]>0x0)return;await rmdir(_0x39c1cd);}catch{return;}_0x39c1cd=dirname(_0x39c1cd);}}function a128_0x1d5f(_0x17237f,_0x5a10c6){_0x17237f=_0x17237f-0x1b3;const _0x115072=a128_0x1150();let _0x1d5fd4=_0x115072[_0x17237f];return _0x1d5fd4;}async function resolveTargetDbBinding(_0x538b8f,_0x3cc471,_0x2d33a4){const _0x105fdd=a128_0xdcd7a3,_0x54d4bf=_0x3cc471[_0x105fdd(0x1ef)];if(!_0x54d4bf)return{'dbId':_0x2d33a4[_0x105fdd(0x1bb)],'dbName':_0x2d33a4[_0x105fdd(0x1c8)]};const _0x5d2c14=buildDbDirectoryName(_0x2d33a4[_0x105fdd(0x1c8)],_0x2d33a4[_0x105fdd(0x1bb)]);if(_0x54d4bf===_0x5d2c14)return{'dbId':_0x2d33a4[_0x105fdd(0x1bb)],'dbName':_0x2d33a4['dbName']};const _0x348cae=parseExplicitDbDirectory(_0x54d4bf);if(_0x348cae!=null)return{'dbId':_0x348cae,'dbName':await getDbName(_0x538b8f,_0x348cae)[_0x105fdd(0x1db)](()=>undefined)};const _0xe08f29=await listDatabases(_0x538b8f),_0x143b05=_0xe08f29[_0x105fdd(0x1c3)](_0x52ac51=>buildDbDirectoryName(_0x52ac51[_0x105fdd(0x1c8)],_0x52ac51['dbId'])===_0x54d4bf);if(_0x143b05[_0x105fdd(0x1c4)]===0x1)return{'dbId':_0x143b05[0x0][_0x105fdd(0x1bb)],'dbName':_0x143b05[0x0][_0x105fdd(0x1c8)]};if(_0x143b05[_0x105fdd(0x1c4)]===0x0)throw CliErrors[_0x105fdd(0x1cf)](_0x105fdd(0x1d8)+_0x54d4bf+_0x105fdd(0x1ba)+_0x3cc471[_0x105fdd(0x1c0)]+'.');const _0x3090aa=_0x143b05[_0x105fdd(0x1bc)](_0x1b9540=>_0x1b9540[_0x105fdd(0x1c8)]+'\x20('+_0x1b9540[_0x105fdd(0x1bb)]+')')[_0x105fdd(0x1d5)](',\x20');throw CliErrors[_0x105fdd(0x1cf)](_0x105fdd(0x1de)+_0x54d4bf+'\x22\x20matches\x20multiple\x20databases\x20for\x20sqlCode\x20'+_0x3cc471[_0x105fdd(0x1c0)]+':\x20'+_0x3090aa);}function parseExplicitDbDirectory(_0x24f869){const _0x23de3c=a128_0xdcd7a3,_0x11430a=/^db-(\d+)$/[_0x23de3c(0x1b7)](_0x24f869);if(!_0x11430a)return null;const _0x363e2d=Number(_0x11430a[0x1]);return Number['isFinite'](_0x363e2d)&&_0x363e2d>0x0?_0x363e2d:null;}
|
package/lib/commands/sql/save.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a129_0x1a42(){const _0xa9d8c1=['3774024TiZfpU','Path\x20to\x20the\x20SQL\x20file','Target\x20database\x20—\x20accepts\x20a\x20numeric\x20ID\x20or\x20database\x20name\x20(e.g.\x20ecommerce_db)','661212qfwRtg','322525ybRPJo','20676IomJyv','112630RElwcV','688cTMnXv','Create\x20new\x20SQL\x20with\x20`rabetbase\x20sql\x20create\x20--name\x20<name>\x20--db-id\x20<id>\x20--mode\x20sql|mybatisXml`.','sql','save','645Sskdoh','join','description','string','Query\x20description','379786yqVTqW','sqlname','693aUpWkJ','43813RxOyMB','validation','Update\x20existing\x20SQL\x20by\x20editing\x20the\x20synced\x20file\x20under\x20`.rabetbase/sql/<appCode>/<dbName|db-<id>>/`\x20and\x20then\x20running\x20`rabetbase\x20sql\x20push\x20--sqlcode\x20<code>\x20--yes`.','write','file'];a129_0x1a42=function(){return _0xa9d8c1;};return a129_0x1a42();}const a129_0x2a6846=a129_0x4b5c;function a129_0x4b5c(_0x584e11,_0x473122){_0x584e11=_0x584e11-0x1b0;const _0x1a42c7=a129_0x1a42();let _0x4b5c5f=_0x1a42c7[_0x584e11];return _0x4b5c5f;}(function(_0x5dd9fd,_0x3865ce){const _0x19f37c=a129_0x4b5c,_0x4de046=_0x5dd9fd();while(!![]){try{const _0x46765a=parseInt(_0x19f37c(0x1c2))/0x1+parseInt(_0x19f37c(0x1b6))/0x2+parseInt(_0x19f37c(0x1c1))/0x3+parseInt(_0x19f37c(0x1c3))/0x4*(-parseInt(_0x19f37c(0x1b1))/0x5)+parseInt(_0x19f37c(0x1be))/0x6+-parseInt(_0x19f37c(0x1b9))/0x7*(-parseInt(_0x19f37c(0x1c5))/0x8)+parseInt(_0x19f37c(0x1b8))/0x9*(-parseInt(_0x19f37c(0x1c4))/0xa);if(_0x46765a===_0x3865ce)break;else _0x4de046['push'](_0x4de046['shift']());}catch(_0x4ad957){_0x4de046['push'](_0x4de046['shift']());}}}(a129_0x1a42,0x595e0));import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';const SQL_SAVE_DEPRECATED_HINT=['`rabetbase\x20sql\x20save`\x20has\x20been\x20deprecated.',a129_0x2a6846(0x1c6),a129_0x2a6846(0x1bb)][a129_0x2a6846(0x1b2)]('\x0a');export const sqlSave={'service':a129_0x2a6846(0x1c7),'command':a129_0x2a6846(0x1b0),'description':'Deprecated:\x20use\x20sql\x20create\x20to\x20create\x20and\x20sql\x20push\x20to\x20update','risk':a129_0x2a6846(0x1bc),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a129_0x2a6846(0x1bd),'type':a129_0x2a6846(0x1b4),'required':!![],'description':a129_0x2a6846(0x1bf)},SQLCODE_FLAG_OPTIONAL,{'name':a129_0x2a6846(0x1b7),'type':a129_0x2a6846(0x1b4),'description':'SQL\x20query\x20display\x20name'},{'name':'db','type':'string','description':a129_0x2a6846(0x1c0)},{'name':a129_0x2a6846(0x1b3),'type':'string','description':a129_0x2a6846(0x1b5)}],async 'validate'(){throw CliErrors['validation'](SQL_SAVE_DEPRECATED_HINT);},async 'execute'(){const _0x500f94=a129_0x2a6846;throw CliErrors[_0x500f94(0x1ba)](SQL_SAVE_DEPRECATED_HINT);}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x53a788,_0x548877){const _0x49f02a=a130_0x2798,_0x4c210d=_0x53a788();while(!![]){try{const _0x451698=-parseInt(_0x49f02a(0xac))/0x1+parseInt(_0x49f02a(0xbb))/0x2+-parseInt(_0x49f02a(0xae))/0x3+-parseInt(_0x49f02a(0xcb))/0x4+parseInt(_0x49f02a(0xa8))/0x5+parseInt(_0x49f02a(0xbf))/0x6+parseInt(_0x49f02a(0xb2))/0x7;if(_0x451698===_0x548877)break;else _0x4c210d['push'](_0x4c210d['shift']());}catch(_0x36029c){_0x4c210d['push'](_0x4c210d['shift']());}}}(a130_0x2cde,0x7495b));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='.rabetbase/sql';export function buildSqlLockEntry(_0x580e36,_0x278b00,_0x415865,_0x20015c){const _0x17cc0d=a130_0x2798,_0x22be39=detectSqlMode(_0x278b00);return{'path':buildSqlRelativePath(_0x580e36[_0x17cc0d(0xb8)],_0x580e36[_0x17cc0d(0xc0)],_0x20015c?.[_0x17cc0d(0xc5)],_0x22be39,_0x580e36['dbId']),'hash':_0x415865,'remoteId':_0x580e36['id'],'version':_0x580e36[_0x17cc0d(0xc2)],'dbId':Number(_0x580e36[_0x17cc0d(0xa6)]),'dbName':_0x20015c?.['dbName'],'sqlName':_0x580e36[_0x17cc0d(0xc0)],'sqlConfig':_0x580e36['sqlConfig']??undefined,'mode':_0x22be39};}export function cloneSqlLockData(_0x1c65ef){const _0x3d8bb1=a130_0x2798;return{'apps':Object[_0x3d8bb1(0xa7)](Object[_0x3d8bb1(0xc3)](_0x1c65ef['apps'])[_0x3d8bb1(0xc6)](([_0x49b505,_0x66636b])=>[_0x49b505,{'sqlRoot':_0x66636b[_0x3d8bb1(0xb0)],'lastSync':_0x66636b[_0x3d8bb1(0xa5)],'sqls':{..._0x66636b['sqls']}}]))};}export function ensureRemoteSqlContent(_0xa6c3db){const _0x9b366e=a130_0x2798;return _0xa6c3db[_0x9b366e(0xbc)]??'';}export function buildLocalSqlFileContent(_0x5bc09a,_0x1a2494,_0x728027){const _0x34fb4c=a130_0x2798,_0x269313=_0x728027?.[_0x34fb4c(0xc7)]??detectSqlMode(_0x1a2494),_0x46d17e=stripLocalSqlMetadata(_0x1a2494,_0x269313)[_0x34fb4c(0xb1)](),_0x5ba997=[...buildMetadataHeaderLines({'sqlCode':_0x5bc09a[_0x34fb4c(0xb8)],'sqlName':_0x5bc09a[_0x34fb4c(0xc0)],'dbId':_0x5bc09a[_0x34fb4c(0xa6)],'dbName':_0x728027?.[_0x34fb4c(0xc5)],'mode':_0x269313,'syncedAt':_0x728027?.['syncedAt'],'description':_0x728027?.[_0x34fb4c(0xca)]},_0x269313),'',_0x46d17e],_0x1bcd93=_0x5ba997[_0x34fb4c(0xc9)]('\x0a');return _0x1bcd93[_0x34fb4c(0xc1)]('\x0a')?_0x1bcd93:_0x1bcd93+'\x0a';}function a130_0x2cde(){const _0x508d79=['mybatisXml','trimStart','261082ZnOOPi','path','767637bWTClb','toLowerCase','sqlRoot','trim','396767WPkDAf','--\x20@lovrabet.','syncedAt','question','includes','stdin','sqlCode','test','replace','1694208CdgpQz','sqlContent','split','length','981822YdLlTS','sqlName','endsWith','version','entries','push','dbName','map','mode','yes','join','description','3043392TCcBlp','lastSync','dbId','fromEntries','3439590RhGzmc','stderr'];a130_0x2cde=function(){return _0x508d79;};return a130_0x2cde();}export function stripLocalSqlMetadata(_0x110a74,_0x40fd25){const _0x6ecc01=a130_0x2798,_0x14886d=_0x110a74[_0x6ecc01(0xba)](/\r\n/g,'\x0a')[_0x6ecc01(0xbd)]('\x0a'),_0x2d7fdb=[];let _0x2408f8=0x0;if(_0x40fd25===_0x6ecc01(0xaa))while(_0x2408f8<_0x14886d[_0x6ecc01(0xbe)]){const _0x52b519=_0x14886d[_0x2408f8]??'';if(/^\s*<!--\s*@lovrabet\./[_0x6ecc01(0xb9)](_0x52b519)){_0x2408f8++;continue;}if(_0x52b519[_0x6ecc01(0xb1)]()===''&&_0x2408f8>0x0){_0x2408f8++;continue;}break;}else while(_0x2408f8<_0x14886d[_0x6ecc01(0xbe)]){const _0x1ee138=_0x14886d[_0x2408f8]??'';if(/^\s*--\s*@lovrabet\./['test'](_0x1ee138)){_0x2408f8++;continue;}if(_0x1ee138['trim']()===''&&_0x2408f8>0x0){_0x2408f8++;continue;}break;}for(;_0x2408f8<_0x14886d[_0x6ecc01(0xbe)];_0x2408f8++){_0x2d7fdb[_0x6ecc01(0xc4)](_0x14886d[_0x2408f8]);}return _0x2d7fdb[_0x6ecc01(0xc9)]('\x0a')[_0x6ecc01(0xab)]();}export function resolveSqlMode(_0x452211,_0x4a8b1e){const _0x261320=a130_0x2798;if(_0x4a8b1e?.[_0x261320(0xc7)])return _0x4a8b1e[_0x261320(0xc7)];return detectSqlMode(_0x452211);}export function resolveSqlFileName(_0x3a0f39,_0xff2855,_0x1a165e){const _0x2b561c=a130_0x2798;if(_0x1a165e?.[_0x2b561c(0xad)])return _0x1a165e['path'];if(_0x1a165e?.['sqlName']||_0x1a165e?.[_0x2b561c(0xc5)])return buildSqlRelativePath(_0x3a0f39,_0x1a165e?.['sqlName'],_0x1a165e?.[_0x2b561c(0xc5)],resolveSqlMode(_0xff2855,_0x1a165e),_0x1a165e?.['dbId']);return buildDefaultSqlFileName(_0x3a0f39,resolveSqlMode(_0xff2855,_0x1a165e));}export function resolveSqlLocalDir(_0x296ffb,_0x2c8d83){return join(_0x296ffb,SQL_LOCAL_REL_DIR,_0x2c8d83);}export async function confirmForceOverwrite(_0x7cf285){const _0x1306d9=a130_0x2798,_0x31aee5=createInterface({'input':process[_0x1306d9(0xb7)],'output':process[_0x1306d9(0xa9)]}),_0x4a12e9=await new Promise(_0x39ba58=>{const _0x3d8437=_0x1306d9;_0x31aee5[_0x3d8437(0xb5)](_0x7cf285+'\x20[y/N]\x20',_0x39ba58);});return _0x31aee5['close'](),['y',_0x1306d9(0xc8)][_0x1306d9(0xb6)](_0x4a12e9[_0x1306d9(0xb1)]()[_0x1306d9(0xaf)]());}function a130_0x2798(_0x401e54,_0x3e4d18){_0x401e54=_0x401e54-0xa5;const _0x2cde87=a130_0x2cde();let _0x2798ef=_0x2cde87[_0x401e54];return _0x2798ef;}export function findSqlLockScope(_0xdac710,_0x3adf86){return _0xdac710['apps'][_0x3adf86];}function buildMetadataHeaderLines(_0x5d6f39,_0x2fd2b0){const _0x4b182c=a130_0x2798,_0x369488=[['sqlCode',_0x5d6f39[_0x4b182c(0xb8)]],[_0x4b182c(0xc0),_0x5d6f39['sqlName']],[_0x4b182c(0xa6),_0x5d6f39[_0x4b182c(0xa6)]],['dbName',_0x5d6f39[_0x4b182c(0xc5)]],[_0x4b182c(0xc7),_0x5d6f39[_0x4b182c(0xc7)]],['syncedAt',_0x5d6f39[_0x4b182c(0xb4)]],[_0x4b182c(0xca),_0x5d6f39[_0x4b182c(0xca)]]];if(_0x2fd2b0===_0x4b182c(0xaa))return _0x369488['filter'](([,_0x5b58cc])=>_0x5b58cc!==undefined&&_0x5b58cc!==null&&String(_0x5b58cc)[_0x4b182c(0xb1)]()!=='')[_0x4b182c(0xc6)](([_0x12e3c0,_0x161bb0])=>'<!--\x20@lovrabet.'+_0x12e3c0+':\x20'+String(_0x161bb0)+'\x20-->');return _0x369488['filter'](([,_0x145ee2])=>_0x145ee2!==undefined&&_0x145ee2!==null&&String(_0x145ee2)['trim']()!=='')[_0x4b182c(0xc6)](([_0x46a954,_0x59c44d])=>_0x4b182c(0xb3)+_0x46a954+':\x20'+String(_0x59c44d));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a131_0x1244d9=a131_0x3fa2;(function(_0x53759f,_0x29511e){const _0x477e59=a131_0x3fa2,_0x3e95d5=_0x53759f();while(!![]){try{const _0x550035=-parseInt(_0x477e59(0x1a8))/0x1*(-parseInt(_0x477e59(0x1a3))/0x2)+parseInt(_0x477e59(0x189))/0x3+-parseInt(_0x477e59(0x19e))/0x4+parseInt(_0x477e59(0x18d))/0x5+parseInt(_0x477e59(0x19c))/0x6+parseInt(_0x477e59(0x195))/0x7+-parseInt(_0x477e59(0x191))/0x8;if(_0x550035===_0x29511e)break;else _0x3e95d5['push'](_0x3e95d5['shift']());}catch(_0x2e8559){_0x3e95d5['push'](_0x3e95d5['shift']());}}}(a131_0x3775,0x535d0));import{listSqlQueries}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{scanLocalSqlQueries}from'../../core/sql-sync/file-system.js';function a131_0x3fa2(_0xe04bed,_0x41e32e){_0xe04bed=_0xe04bed-0x187;const _0x3775fd=a131_0x3775();let _0x3fa21a=_0x3775fd[_0xe04bed];return _0x3fa21a;}function a131_0x3775(){const _0x3424db=['706708zXPFMq','keys','sqlRoot','sqls','relativePath','2444raBjqg','sqlName','boolean','length','tableData','58uQXAZc','sql','\x20modified,\x20','396393VIrUeA','remote','has','totalCount','3004235PpgvMh','lockKey','bool','read','11734824HJDOaY','map','appCode','filePath','3669946CcycEr','All\x20SQL\x20queries\x20are\x20in\x20sync.','path','Check\x20local\x20SQL\x20sync\x20status\x20against\x20lock\x20file','\x20unchanged','sqlCode','push','3941124IhDnrv','status'];a131_0x3775=function(){return _0x3424db;};return a131_0x3775();}import{computeSqlFileHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile}from'../../core/sql-sync/lock.js';const PAGE_SIZE=0x64;async function fetchAllSqlCodes(_0x2a0d97){const _0x5f2bf0=a131_0x3fa2,_0xb4ddf3=[];let _0x6984b1=0x1;while(!![]){const _0x26dd14=await listSqlQueries(_0x2a0d97,{'currentPage':_0x6984b1,'pageSize':PAGE_SIZE}),_0x5ecfa7=_0x26dd14[_0x5f2bf0(0x1a7)]??[];_0xb4ddf3[_0x5f2bf0(0x19b)](..._0x5ecfa7[_0x5f2bf0(0x192)](_0x179a45=>_0x179a45[_0x5f2bf0(0x19a)]));if(_0x5ecfa7[_0x5f2bf0(0x1a6)]===0x0)break;const _0x4ef7e5=_0x26dd14['paging']?.[_0x5f2bf0(0x18c)];if(_0x4ef7e5!=null?_0xb4ddf3[_0x5f2bf0(0x1a6)]>=_0x4ef7e5:_0x5ecfa7[_0x5f2bf0(0x1a6)]<PAGE_SIZE)break;_0x6984b1++;}return _0xb4ddf3;}export const sqlStatus={'service':a131_0x1244d9(0x187),'command':a131_0x1244d9(0x19d),'description':a131_0x1244d9(0x198),'risk':a131_0x1244d9(0x190),'flags':[{'name':'remote','type':a131_0x1244d9(0x1a5),'description':'Also\x20check\x20for\x20remote-only\x20SQL\x20queries\x20not\x20present\x20locally'}],async 'execute'(_0x137f37){const _0x3f5390=a131_0x1244d9,_0x108217=loadSqlProjectConfig(_0x137f37[_0x3f5390(0x193)]),_0x40baf5=await readSqlLockFile(_0x108217['lockFilePath']),{appLock:_0x121862}=ensureSqlLockScope(_0x40baf5??createEmptySqlLock(),_0x108217[_0x3f5390(0x193)],_0x108217[_0x3f5390(0x1a0)],'status'),_0x1dd69c=await scanLocalSqlQueries(_0x108217),_0xfc60e9=[],_0x2988ab=[],_0x1a4e5d=[],_0xd1652=[],_0x250166=new Set(_0x1dd69c[_0x3f5390(0x192)](_0x3e801a=>_0x3e801a['lockKey']));for(const _0x3e98d2 of _0x1dd69c){const _0x2705e8=await computeSqlFileHash(_0x3e98d2[_0x3f5390(0x194)]),_0x1f167=_0x121862[_0x3f5390(0x1a1)][_0x3e98d2[_0x3f5390(0x18e)]],_0x459f7d=!!_0x1f167&&_0x1f167[_0x3f5390(0x197)]!==_0x3e98d2[_0x3f5390(0x1a2)],_0x859492=!!_0x1f167&&!!_0x3e98d2[_0x3f5390(0x1a4)]&&_0x1f167[_0x3f5390(0x1a4)]!==_0x3e98d2[_0x3f5390(0x1a4)];if(!_0x1f167)_0xfc60e9['push'](_0x3e98d2[_0x3f5390(0x18e)]);else _0x1f167['hash']!==_0x2705e8||_0x459f7d||_0x859492?_0x2988ab[_0x3f5390(0x19b)](_0x3e98d2['lockKey']):_0x1a4e5d[_0x3f5390(0x19b)](_0x3e98d2['lockKey']);}for(const _0x1e0da1 of Object[_0x3f5390(0x19f)](_0x121862[_0x3f5390(0x1a1)])){!_0x250166[_0x3f5390(0x18b)](_0x1e0da1)&&_0xd1652[_0x3f5390(0x19b)](_0x1e0da1);}const _0x4df440=[];if(_0x137f37[_0x3f5390(0x18f)](_0x3f5390(0x18a))){const _0x122af6=await fetchAllSqlCodes(_0x137f37[_0x3f5390(0x193)]);for(const _0x3ef56c of _0x122af6){!_0x250166[_0x3f5390(0x18b)](_0x3ef56c)&&!_0x121862[_0x3f5390(0x1a1)][_0x3ef56c]&&_0x4df440['push'](_0x3ef56c);}}const _0x30151e=_0xfc60e9[_0x3f5390(0x1a6)]===0x0&&_0x2988ab['length']===0x0&&_0xd1652[_0x3f5390(0x1a6)]===0x0&&_0x4df440[_0x3f5390(0x1a6)]===0x0;return{'ok':!![],'data':{'added':_0xfc60e9,'modified':_0x2988ab,'missing':_0xd1652,'unchanged':_0x1a4e5d,'remoteOnly':_0x4df440},'message':_0x30151e?_0x3f5390(0x196):_0xfc60e9[_0x3f5390(0x1a6)]+'\x20added,\x20'+_0x2988ab[_0x3f5390(0x1a6)]+_0x3f5390(0x188)+_0xd1652[_0x3f5390(0x1a6)]+'\x20missing,\x20'+_0x1a4e5d[_0x3f5390(0x1a6)]+_0x3f5390(0x199)+(_0x4df440[_0x3f5390(0x1a6)]>0x0?',\x20'+_0x4df440[_0x3f5390(0x1a6)]+'\x20remote-only':'')};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a132_0x23c7bb=a132_0x5300;(function(_0x4542b7,_0x161685){const _0x1788de=a132_0x5300,_0x1eb0c5=_0x4542b7();while(!![]){try{const _0x1ad938=parseInt(_0x1788de(0x1de))/0x1+-parseInt(_0x1788de(0x1da))/0x2+parseInt(_0x1788de(0x1d7))/0x3+parseInt(_0x1788de(0x1d2))/0x4+parseInt(_0x1788de(0x1e6))/0x5+-parseInt(_0x1788de(0x1e5))/0x6+-parseInt(_0x1788de(0x1cc))/0x7;if(_0x1ad938===_0x161685)break;else _0x1eb0c5['push'](_0x1eb0c5['shift']());}catch(_0x2c935b){_0x1eb0c5['push'](_0x1eb0c5['shift']());}}}(a132_0x2a47,0x1e995));import{readFileSync,existsSync}from'node:fs';import{resolve}from'node:path';function a132_0x2a47(){const _0x9c2108=['cwd','size','reason','961920CeqEbk','validate','file','trim','name','576201jfbibt','appCode','schemaWarnings','414620iYUQFA','Comma-separated\x20dataset\x20codes\x20to\x20cross-check\x20table/column\x20names\x20against','Table\x20\x22','read','125059SHjioM','from','dbtableConfig','message','isArray','SQL\x20schema\x20validation','schema:','223578GIVdvU','111770NZrtYj','fields','map','isSelectOnly','toLowerCase','parameters','Validate\x20SQL\x20content\x20without\x20saving\x20(type\x20detection,\x20parameter\x20extraction,\x20optional\x20schema\x20check)','str','\x22\x20not\x20found\x20in\x20any\x20dataset','Provide\x20--file\x20or\x20--sql','sqlType','length','tableName','\x22\x20not\x20found\x20or\x20not\x20accessible','flagMissing','Path\x20to\x20the\x20SQL\x20file\x20to\x20validate','valid','get','type','sql','string','push','utf-8','tables','1470378WeBCWX','isDangerous','schemas'];a132_0x2a47=function(){return _0x9c2108;};return a132_0x2a47();}import{validateSql}from'../../core/sql-validator.js';import{getDatasetDetail,listDatasets}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a132_0x5300(_0x3d2dfe,_0x1eb979){_0x3d2dfe=_0x3d2dfe-0x1bf;const _0x2a4742=a132_0x2a47();let _0x530071=_0x2a4742[_0x3d2dfe];return _0x530071;}import{assertDatasetIsDbTableBacked,filterDbTableBackedDatasets}from'../../commands/dataset/capability.js';export const sqlValidate={'service':a132_0x23c7bb(0x1c7),'command':a132_0x23c7bb(0x1d3),'description':a132_0x23c7bb(0x1ec),'risk':a132_0x23c7bb(0x1dd),'flags':[{'name':a132_0x23c7bb(0x1d4),'type':'string','description':a132_0x23c7bb(0x1c3)},{'name':a132_0x23c7bb(0x1c7),'type':a132_0x23c7bb(0x1c8),'description':'Inline\x20SQL\x20content\x20to\x20validate\x20(alternative\x20to\x20--file)'},{'name':'schemas','type':a132_0x23c7bb(0x1c8),'description':a132_0x23c7bb(0x1db)}],async 'execute'(_0x50e346){const _0x53625f=a132_0x23c7bb,_0x111761=_0x50e346[_0x53625f(0x1ed)](_0x53625f(0x1d4)),_0x3a601f=_0x50e346[_0x53625f(0x1ed)]('sql');if(!_0x111761&&!_0x3a601f)throw CliErrors[_0x53625f(0x1c2)](_0x53625f(0x1d4),_0x53625f(0x1ef));let _0x59e6e6;if(_0x111761){const _0xaa151d=resolve(process[_0x53625f(0x1cf)](),_0x111761);if(!existsSync(_0xaa151d))throw CliErrors['validation']('File\x20not\x20found:\x20'+_0xaa151d);_0x59e6e6=readFileSync(_0xaa151d,_0x53625f(0x1ca));}else _0x59e6e6=_0x3a601f;const _0x46c826=validateSql(_0x59e6e6),_0x26cb7e={'valid':_0x46c826[_0x53625f(0x1c4)],'sqlType':_0x46c826['sqlType'][_0x53625f(0x1c6)],'isSelectOnly':_0x46c826[_0x53625f(0x1f0)][_0x53625f(0x1e9)],'isDangerous':_0x46c826[_0x53625f(0x1f0)][_0x53625f(0x1cd)],'tables':_0x46c826[_0x53625f(0x1cb)],'parameters':_0x46c826[_0x53625f(0x1eb)],'message':_0x46c826[_0x53625f(0x1e1)]};_0x46c826['sqlType'][_0x53625f(0x1d1)]&&(_0x26cb7e[_0x53625f(0x1d1)]=_0x46c826[_0x53625f(0x1f0)][_0x53625f(0x1d1)]);const _0x5d3bef=_0x50e346[_0x53625f(0x1ed)](_0x53625f(0x1ce));if(_0x5d3bef&&_0x46c826[_0x53625f(0x1c4)]){const _0x5c8fdc=_0x5d3bef['split'](',')[_0x53625f(0x1e8)](_0x51727b=>_0x51727b[_0x53625f(0x1d5)]())['filter'](Boolean),_0x24178e=[],_0x6fdf78=filterDbTableBackedDatasets(await listDatasets(_0x50e346[_0x53625f(0x1d8)])),_0x4d132f=new Map(_0x6fdf78[_0x53625f(0x1e8)](_0x24f12e=>[_0x24f12e[_0x53625f(0x1e0)]?.['tableName']?.[_0x53625f(0x1ea)](),_0x24f12e]));for(const _0x3ba956 of _0x46c826[_0x53625f(0x1cb)]){const _0x3a30ba=_0x4d132f[_0x53625f(0x1c5)](_0x3ba956['toLowerCase']());!_0x3a30ba&&_0x24178e[_0x53625f(0x1c9)](_0x53625f(0x1dc)+_0x3ba956+_0x53625f(0x1ee));}for(const _0x2ab08f of _0x5c8fdc){let _0x12c5fc;try{_0x12c5fc=await getDatasetDetail(_0x2ab08f);}catch{_0x24178e[_0x53625f(0x1c9)]('Dataset\x20\x22'+_0x2ab08f+_0x53625f(0x1c1));continue;}assertDatasetIsDbTableBacked(_0x12c5fc,_0x53625f(0x1e3));const _0x35875e=Array[_0x53625f(0x1e2)](_0x12c5fc['fields'])?_0x12c5fc[_0x53625f(0x1e7)]:[],_0x13c101=new Set(_0x35875e[_0x53625f(0x1e8)](_0x2f7c0c=>_0x2f7c0c[_0x53625f(0x1d6)]?.[_0x53625f(0x1ea)]())),_0x9296e=_0x12c5fc[_0x53625f(0x1e0)]?.['tableName']||_0x12c5fc[_0x53625f(0x1c0)]||_0x2ab08f;_0x26cb7e[_0x53625f(0x1e4)+_0x9296e]={'code':_0x2ab08f,'tableName':_0x9296e,'fieldCount':_0x13c101[_0x53625f(0x1d0)],'fields':Array[_0x53625f(0x1df)](_0x13c101)};}_0x24178e[_0x53625f(0x1bf)]>0x0&&(_0x26cb7e[_0x53625f(0x1d9)]=_0x24178e);}return{'ok':_0x46c826['valid'],'data':_0x26cb7e,'message':_0x46c826['message']};}};
|
package/lib/config/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a133_0x8eb7ce=a133_0x34dd;(function(_0x38220c,_0x3aa59e){const _0x179cde=a133_0x34dd,_0x1af450=_0x38220c();while(!![]){try{const _0x3aa820=parseInt(_0x179cde(0x100))/0x1+-parseInt(_0x179cde(0x102))/0x2*(parseInt(_0x179cde(0xeb))/0x3)+-parseInt(_0x179cde(0xf8))/0x4*(-parseInt(_0x179cde(0xfe))/0x5)+parseInt(_0x179cde(0x107))/0x6*(-parseInt(_0x179cde(0xef))/0x7)+-parseInt(_0x179cde(0xfc))/0x8+parseInt(_0x179cde(0xe3))/0x9+parseInt(_0x179cde(0xe6))/0xa;if(_0x3aa820===_0x3aa59e)break;else _0x1af450['push'](_0x1af450['shift']());}catch(_0x54a6b0){_0x1af450['push'](_0x1af450['shift']());}}}(a133_0x2476,0x29c85));import{DEFAULT_CONFIG_VALUES}from'../constant/defaults.js';import{RABETBASE_ENV_VALUES}from'../constant/env.js';function a133_0x34dd(_0x7fdb04,_0x328fc4){_0x7fdb04=_0x7fdb04-0xe2;const _0x247672=a133_0x2476();let _0x34ddaf=_0x247672[_0x7fdb04];return _0x34ddaf;}import{RABETBASE_OUTPUT_FORMAT_VALUES}from'../constant/output.js';import{RISK_LEVEL_VALUES}from'../constant/risk.js';export{DEFAULT_CONFIG_VALUES}from'../constant/defaults.js';export const PROJECT_CREATE_INHERITABLE_KEYS=[a133_0x8eb7ce(0x106),a133_0x8eb7ce(0xee),a133_0x8eb7ce(0x103),a133_0x8eb7ce(0xf2),'riskLevel'];export const TOP_LEVEL_CONFIG_KEYS=new Set([a133_0x8eb7ce(0x105),a133_0x8eb7ce(0xf6),a133_0x8eb7ce(0x103),a133_0x8eb7ce(0xf2),'cookie',a133_0x8eb7ce(0xee),a133_0x8eb7ce(0xff)]);export const CONFIG_ENUM_VALUES={'env':[...RABETBASE_ENV_VALUES],'format':[...RABETBASE_OUTPUT_FORMAT_VALUES]};export function formatConfigKeyList(_0x47365c){return[..._0x47365c]['join'](',\x20');}export function getTopLevelConfigKeyList(){return[...TOP_LEVEL_CONFIG_KEYS];}export function isTopLevelConfigKey(_0x2b7609){return TOP_LEVEL_CONFIG_KEYS['has'](_0x2b7609);}export function getTopLevelConfigKeySummary(){return formatConfigKeyList(getTopLevelConfigKeyList());}export function getConfigCommandKeyDescription(){const _0x353258=a133_0x8eb7ce;return _0x353258(0xe4)+getTopLevelConfigKeySummary()+')';}export const APP_PROFILE_FLAG_KEY_MAP={'env':'env','apiDir':a133_0x8eb7ce(0xff),'cookie':'cookie','accessKey':a133_0x8eb7ce(0xee),'defaultFormat':'format','pageSize':'pageSize','riskLevel':a133_0x8eb7ce(0x101),'locale':'locale'};export function getAppProfileFlagDefs(){const _0x6c49cd=a133_0x8eb7ce;return[{'name':_0x6c49cd(0xf6),'type':_0x6c49cd(0xe8),'description':_0x6c49cd(0xfd),'enum':[...RABETBASE_ENV_VALUES]},{'name':_0x6c49cd(0xff),'type':_0x6c49cd(0xe8),'description':_0x6c49cd(0x108)},{'name':_0x6c49cd(0x106),'type':_0x6c49cd(0xe8),'description':_0x6c49cd(0xe7),'hidden':!![]},{'name':_0x6c49cd(0xee),'type':'string','description':_0x6c49cd(0xf9),'hidden':!![]},{'name':'defaultFormat','type':_0x6c49cd(0xe8),'description':'Default\x20output\x20format\x20for\x20this\x20app\x20(profile)','enum':[...RABETBASE_OUTPUT_FORMAT_VALUES]},{'name':_0x6c49cd(0xe5),'type':'number','description':_0x6c49cd(0xf1)},{'name':_0x6c49cd(0x101),'type':_0x6c49cd(0xe8),'description':_0x6c49cd(0xed),'enum':[...RISK_LEVEL_VALUES]},{'name':_0x6c49cd(0x103),'type':'string','description':_0x6c49cd(0x104)}];}export function collectAppProfileOverrides(_0x3d4789){const _0x58690e=a133_0x8eb7ce,_0x3054a8={};for(const [_0x1eba80,_0x5d5c53]of Object[_0x58690e(0xf4)](APP_PROFILE_FLAG_KEY_MAP)){const _0x50353d=_0x3d4789(_0x1eba80);if(!_0x50353d)continue;_0x3054a8[_0x5d5c53]=_0x5d5c53===_0x58690e(0xe5)?Number(_0x50353d):_0x50353d;}return _0x3054a8;}export function buildAppProfileListFields(_0x5190f1){const _0x1f235f=a133_0x8eb7ce;return{'env':_0x5190f1[_0x1f235f(0xf6)]??null,'apiDir':_0x5190f1[_0x1f235f(0xff)]??null,'hasCookie':!!_0x5190f1[_0x1f235f(0x106)],'hasAccessKey':!!_0x5190f1['accessKey'],'format':_0x5190f1['format']??null,'pageSize':_0x5190f1[_0x1f235f(0xe5)]??null,'riskLevel':_0x5190f1['riskLevel']??null,'locale':_0x5190f1['locale']??null};}export function buildAppDoctorFields(_0x399a87,_0x189e09){const _0x9b26c3=a133_0x8eb7ce;return{'env':{'value':_0x399a87[_0x9b26c3(0xf6)]||_0x189e09['env'],'source':_0x399a87[_0x9b26c3(0xf6)]?_0x9b26c3(0xfb):'inherit'},'apiDir':{'value':_0x399a87[_0x9b26c3(0xff)]||_0x189e09[_0x9b26c3(0xff)],'source':_0x399a87[_0x9b26c3(0xff)]?_0x9b26c3(0xfb):_0x9b26c3(0xf5)},'cookie':{'value':_0x399a87[_0x9b26c3(0x106)]||_0x189e09[_0x9b26c3(0x106)],'source':_0x399a87[_0x9b26c3(0x106)]?'app':_0x9b26c3(0xf5)},'accessKey':{'value':_0x399a87[_0x9b26c3(0xee)]||_0x189e09[_0x9b26c3(0xee)],'source':_0x399a87['accessKey']?'app':_0x9b26c3(0xf5)}};}function a133_0x2476(){const _0x294362=['entries','inherit','env','length','48084xviRCz','Access\x20key','filter','app','2344640KlpyiO','Target\x20environment','5kQfskT','apiDir','37232ICtecS','riskLevel','2UoFpRY','locale','Locale','appcode','cookie','513126CrJlFV','API\x20directory\x20path','apps','1448910VXOrQo','Config\x20key\x20(','pageSize','8213810YOejHy','Auth\x20cookie','string','zh-CN','keys','675957ZEonqo','defaultApp','Risk\x20level','accessKey','28IbNNUY','map','Default\x20page\x20size','format','en-US'];a133_0x2476=function(){return _0x294362;};return a133_0x2476();}export function buildCanonicalAppConfig(_0x12ed8d,_0x4f9d4f){const _0x47c8a4=a133_0x8eb7ce,_0x475512=_0x12ed8d[_0x47c8a4(0xf0)](_0x1c7e50=>String(_0x1c7e50||'')['trim']())[_0x47c8a4(0xfa)](Boolean);if(_0x475512[_0x47c8a4(0xf7)]===0x0)return{};const _0x207ce1={};for(const _0x58aee6 of _0x475512){_0x207ce1[_0x58aee6]=_0x4f9d4f?{'appcode':_0x58aee6,'env':_0x4f9d4f}:{'appcode':_0x58aee6};}return{'apps':_0x207ce1,'defaultApp':_0x475512[0x0]};}export function buildCanonicalProjectConfig(_0x498bc0,_0x42f737){const _0x113068=a133_0x8eb7ce,{appCodes:appCodes=[],env:_0x4ba1c4,metadata:_0x5d58fb}=_0x42f737,_0xb8fa3e={..._0x498bc0,..._0x5d58fb||{}};delete _0xb8fa3e[_0x113068(0x105)],delete _0xb8fa3e['app'];if(_0x4ba1c4)_0xb8fa3e[_0x113068(0xf6)]=_0x4ba1c4;else!_0xb8fa3e[_0x113068(0xf6)]&&(_0xb8fa3e[_0x113068(0xf6)]=DEFAULT_CONFIG_VALUES[_0x113068(0xf6)]);const _0x52fe65=buildCanonicalAppConfig(appCodes,_0xb8fa3e[_0x113068(0xf6)]);return Object[_0x113068(0xea)](_0x52fe65)['length']>0x0&&(_0xb8fa3e[_0x113068(0xe2)]=_0x52fe65['apps'],_0xb8fa3e['defaultApp']=_0x52fe65[_0x113068(0xec)]),_0xb8fa3e;}const LOCALE_MAP={'zh':a133_0x8eb7ce(0xe9),'zh-cn':'zh-CN','zh_cn':a133_0x8eb7ce(0xe9),'en':a133_0x8eb7ce(0xf3),'en-us':a133_0x8eb7ce(0xf3),'en_us':a133_0x8eb7ce(0xf3)};export function normalizeLocale(_0x1c9d61){if(!_0x1c9d61)return null;return LOCALE_MAP[_0x1c9d61['toLowerCase']()]??null;}
|
package/lib/constant/cdn.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a134_0x2dc4(_0x48eb35,_0x475780){_0x48eb35=_0x48eb35-0xa3;const _0x312f42=a134_0x312f();let _0x2dc4a4=_0x312f42[_0x48eb35];return _0x2dc4a4;}function a134_0x312f(){const _0x52476b=['2810ictZZm','76268IjYsiC','227435acjMwN','1580208lOeTwr','615450vpLFYV','749favgwb','1206xIdAqf','198snWNIK','9284VHQlKu','4taxOOR','5859VFCNOH','https://g.lovrabet.com/dist/rabetbase-cli/config/index.json'];a134_0x312f=function(){return _0x52476b;};return a134_0x312f();}const a134_0xe4f932=a134_0x2dc4;(function(_0x5c1677,_0xf2d397){const _0x22b47e=a134_0x2dc4,_0x381d81=_0x5c1677();while(!![]){try{const _0x4858ad=parseInt(_0x22b47e(0xa3))/0x1+-parseInt(_0x22b47e(0xaa))/0x2*(parseInt(_0x22b47e(0xa9))/0x3)+-parseInt(_0x22b47e(0xab))/0x4*(-parseInt(_0x22b47e(0xa4))/0x5)+-parseInt(_0x22b47e(0xa8))/0x6*(parseInt(_0x22b47e(0xa7))/0x7)+parseInt(_0x22b47e(0xa5))/0x8+-parseInt(_0x22b47e(0xac))/0x9*(-parseInt(_0x22b47e(0xae))/0xa)+parseInt(_0x22b47e(0xa6))/0xb;if(_0x4858ad===_0xf2d397)break;else _0x381d81['push'](_0x381d81['shift']());}catch(_0x46189d){_0x381d81['push'](_0x381d81['shift']());}}}(a134_0x312f,0x3838b));export const CLI_VERSION_POLICY_URL=a134_0xe4f932(0xad);
|
package/lib/constant/cli.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a135_0x441fea=a135_0x1a84;(function(_0x46dd7e,_0x2069c3){const _0x4fbbdf=a135_0x1a84,_0x58b3ab=_0x46dd7e();while(!![]){try{const _0x28e670=-parseInt(_0x4fbbdf(0x201))/0x1+-parseInt(_0x4fbbdf(0x1e3))/0x2+-parseInt(_0x4fbbdf(0x1e1))/0x3+-parseInt(_0x4fbbdf(0x21a))/0x4+-parseInt(_0x4fbbdf(0x1ed))/0x5*(-parseInt(_0x4fbbdf(0x222))/0x6)+parseInt(_0x4fbbdf(0x205))/0x7+-parseInt(_0x4fbbdf(0x217))/0x8*(-parseInt(_0x4fbbdf(0x21f))/0x9);if(_0x28e670===_0x2069c3)break;else _0x58b3ab['push'](_0x58b3ab['shift']());}catch(_0x340f18){_0x58b3ab['push'](_0x58b3ab['shift']());}}}(a135_0x5acd,0xcdf43));export const CLI_BIN_NAME=a135_0x441fea(0x21e);function a135_0x1a84(_0x43d364,_0x37fd79){_0x43d364=_0x43d364-0x1c5;const _0x5acd98=a135_0x5acd();let _0x1a8496=_0x5acd98[_0x43d364];return _0x1a8496;}export const CLI_DISPLAY_NAME=a135_0x441fea(0x1cf);export const NPM_PACKAGE_NAME=a135_0x441fea(0x214);export const GLOBAL_FLAGS=[{'name':a135_0x441fea(0x202),'meowKey':a135_0x441fea(0x202),'type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x1fd),'hint':a135_0x441fea(0x1d4)},{'name':'app','meowKey':a135_0x441fea(0x1e8),'type':'string','description':'Select\x20app\x20profile\x20by\x20name','hint':'<name>'},{'name':'env','meowKey':a135_0x441fea(0x225),'type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x224),'hint':'production\x20|\x20daily'},{'name':a135_0x441fea(0x1fe),'meowKey':a135_0x441fea(0x1fe),'type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x1ce),'hint':a135_0x441fea(0x1e5)},{'name':'jq','meowKey':'jq','type':a135_0x441fea(0x1e9),'description':'Filter\x20JSON\x20output\x20(JQ_PATH\x20>\x20bundled\x20jq\x20>\x20PATH;\x20use\x20with\x20--format\x20json\x20or\x20compress)','hint':a135_0x441fea(0x20b)},{'name':a135_0x441fea(0x200),'meowKey':a135_0x441fea(0x215),'type':a135_0x441fea(0x208),'description':a135_0x441fea(0x1f2)},{'name':a135_0x441fea(0x1da),'meowKey':a135_0x441fea(0x1da),'type':a135_0x441fea(0x208),'description':a135_0x441fea(0x216)},{'name':a135_0x441fea(0x204),'meowKey':'nonInteractive','type':a135_0x441fea(0x208),'description':a135_0x441fea(0x1d7)},{'name':'global','meowKey':a135_0x441fea(0x20c),'type':'boolean','description':'Use\x20global\x20config\x20scope'},{'name':a135_0x441fea(0x212),'meowKey':a135_0x441fea(0x212),'type':a135_0x441fea(0x208),'description':a135_0x441fea(0x1fa)},{'name':'ci','meowKey':'ci','type':'boolean','description':a135_0x441fea(0x21c),'hidden':!![]},{'name':a135_0x441fea(0x1eb),'meowKey':a135_0x441fea(0x1eb),'type':'boolean','description':a135_0x441fea(0x1f4)},{'name':'name','meowKey':a135_0x441fea(0x1f1),'type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x1f5),'hidden':!![]},{'name':a135_0x441fea(0x1ee),'meowKey':a135_0x441fea(0x1ee),'type':a135_0x441fea(0x1e9),'description':'Title','hidden':!![]},{'name':a135_0x441fea(0x1f0),'meowKey':a135_0x441fea(0x1f0),'type':'boolean','description':'Clear','hidden':!![]},{'name':'watch','meowKey':a135_0x441fea(0x1df),'type':'boolean','description':'Watch\x20mode','hidden':!![]},{'name':'output','meowKey':a135_0x441fea(0x1d3),'type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x223),'hidden':!![]},{'name':a135_0x441fea(0x21d),'meowKey':'params','type':a135_0x441fea(0x1e9),'description':'JSON\x20params','hidden':!![]},{'name':'datasetcode','meowKey':'datasetcode','type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x1e6),'hidden':!![]},{'name':a135_0x441fea(0x1cd),'meowKey':a135_0x441fea(0x1cd),'type':a135_0x441fea(0x208),'description':'Apply\x20to\x20all','hidden':!![]},{'name':'enable-bff-save','meowKey':a135_0x441fea(0x20e),'type':'boolean','description':a135_0x441fea(0x20f),'hidden':!![]},{'name':'id','meowKey':'id','type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x1fc),'hidden':!![]},{'name':a135_0x441fea(0x203),'meowKey':a135_0x441fea(0x203),'type':'string','description':a135_0x441fea(0x1e4),'hidden':!![]},{'name':'file','meowKey':a135_0x441fea(0x1d5),'type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x1dd),'hidden':!![]},{'name':a135_0x441fea(0x207),'meowKey':a135_0x441fea(0x207),'type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x1d0),'hidden':!![]},{'name':a135_0x441fea(0x20d),'meowKey':'sqlName','type':a135_0x441fea(0x1e9),'description':'SQL\x20name','hidden':!![]},{'name':'sqlname','meowKey':a135_0x441fea(0x1cb),'type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x1c9),'hidden':!![]},{'name':a135_0x441fea(0x1db),'meowKey':'dbId','type':'string','description':'DB\x20ID','hidden':!![]},{'name':a135_0x441fea(0x1c6),'meowKey':'dbid','type':a135_0x441fea(0x1e9),'description':'DB\x20ID','hidden':!![]},{'name':a135_0x441fea(0x210),'meowKey':a135_0x441fea(0x210),'type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x1d2),'hidden':!![]},{'name':'description-file','meowKey':a135_0x441fea(0x1e2),'type':a135_0x441fea(0x1e9),'description':'Description\x20file','hidden':!![]},{'name':a135_0x441fea(0x1ea),'meowKey':a135_0x441fea(0x1ea),'type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x221),'hidden':!![]},{'name':a135_0x441fea(0x1d6),'meowKey':a135_0x441fea(0x1d6),'type':a135_0x441fea(0x1e9),'description':'Page\x20size','hidden':!![]},{'name':a135_0x441fea(0x1f8),'meowKey':a135_0x441fea(0x1f8),'type':'string','description':a135_0x441fea(0x21b),'hidden':!![]},{'name':a135_0x441fea(0x1d1),'meowKey':'code','type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x1c8),'hidden':!![]},{'name':a135_0x441fea(0x1de),'meowKey':a135_0x441fea(0x1de),'type':'string','description':'SQL\x20string','hidden':!![]},{'name':a135_0x441fea(0x1e7),'meowKey':a135_0x441fea(0x1e7),'type':a135_0x441fea(0x1e9),'description':'Schemas','hidden':!![]},{'name':a135_0x441fea(0x1fb),'meowKey':a135_0x441fea(0x1fb),'type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x1c5),'hidden':!![]},{'name':'target','meowKey':a135_0x441fea(0x1d9),'type':'string','description':a135_0x441fea(0x1dc),'hidden':!![]},{'name':a135_0x441fea(0x1ca),'meowKey':a135_0x441fea(0x1c7),'type':a135_0x441fea(0x208),'description':a135_0x441fea(0x1d8),'hidden':!![]},{'name':a135_0x441fea(0x219),'meowKey':a135_0x441fea(0x219),'type':a135_0x441fea(0x1e9),'description':'Config\x20key','hidden':!![]},{'name':a135_0x441fea(0x211),'meowKey':a135_0x441fea(0x211),'type':a135_0x441fea(0x1e9),'description':'Config\x20value','hidden':!![]},{'name':a135_0x441fea(0x220),'meowKey':a135_0x441fea(0x220),'type':a135_0x441fea(0x208),'description':a135_0x441fea(0x1f9),'hidden':!![]},{'name':a135_0x441fea(0x20a),'meowKey':'confirm','type':a135_0x441fea(0x208),'description':a135_0x441fea(0x213),'hidden':!![]},{'name':a135_0x441fea(0x206),'meowKey':a135_0x441fea(0x206),'type':a135_0x441fea(0x208),'description':a135_0x441fea(0x1f3),'hidden':!![]},{'name':a135_0x441fea(0x218),'meowKey':a135_0x441fea(0x218),'type':a135_0x441fea(0x208),'description':'Verbose\x20output','hidden':!![]},{'name':a135_0x441fea(0x1f6),'meowKey':a135_0x441fea(0x1ef),'type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x209),'hidden':!![]},{'name':a135_0x441fea(0x1ff),'meowKey':a135_0x441fea(0x1cc),'type':a135_0x441fea(0x1e9),'description':a135_0x441fea(0x1c5),'hidden':!![]},{'name':a135_0x441fea(0x1f7),'meowKey':'functionNode','type':'string','description':'Function\x20node','hidden':!![]}];function a135_0x5acd(){const _0x52e3d4=['output','<code>','file','pagesize','Force\x20non-interactive\x20mode\x20(CI)','Skip\x20import\x20generation','target','yes','db-id','Target\x20path','File\x20path','sql','watch','meowKey','2429604bPGcVv','descriptionFile','863710rVMyll','Type\x20filter','json\x20|\x20pretty\x20|\x20compress','Dataset\x20code','schemas','app','string','page','help','map','1386985pMzCKu','title','expectedCount','clear','name','Preview\x20operation\x20without\x20executing','Use\x20remote','Show\x20help','Name','expected-count','function-node','keyword','Force\x20overwrite','Use\x20project\x20config\x20scope','operation','Record\x20ID','Override\x20appcode','format','operation-type','dry-run','1446445etpjCZ','appcode','type','non-interactive','6960807fIENkA','remote','sqlcode','boolean','Expected\x20affected\x20count','confirm','<expr>','global','sql-name','enableBffSave','Enable\x20BFF\x20save','description','value','project','Confirm\x20destructive\x20action','@lovrabet/rabetbase-cli','dryRun','Skip\x20confirmation\x20for\x20high-risk\x20writes','23458992YesojB','verbose','key','3799256OAfDvw','Keyword\x20filter','Alias\x20for\x20--non-interactive','params','rabetbase','9KBhzTJ','force','Page\x20number','12wbmInQ','Output\x20path','Environment','env','fromEntries','Operation\x20type','dbid','skipImports','Code\x20filter','SQL\x20name','skip-imports','sqlname','operationType','all','Output\x20format','Rabetbase\x20CLI','SQL\x20code','code','Description'];a135_0x5acd=function(){return _0x52e3d4;};return a135_0x5acd();}export const PIPELINE_FLAG_NAMES=new Set(['appcode','app',a135_0x441fea(0x225),a135_0x441fea(0x1fe),'jq',a135_0x441fea(0x200),a135_0x441fea(0x1da),a135_0x441fea(0x204),'ci']);export function buildMeowFlags(){const _0x2e1d7c=a135_0x441fea;return Object[_0x2e1d7c(0x226)](GLOBAL_FLAGS[_0x2e1d7c(0x1ec)](_0x14f4aa=>[_0x14f4aa[_0x2e1d7c(0x1e0)],{'type':_0x14f4aa[_0x2e1d7c(0x203)]}]));}
|
package/lib/constant/defaults.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a136_0xea3603=a136_0x5128;function a136_0x3483(){const _0x3c08cb=['8152tAgNiH','high-risk-write','42TjTJtx','36510xLORYI','27FWTGni','4781830hSMNfS','production','904692nLObbF','compress','500877RVeino','88ASOAeP','23463PjeOXF','en-US','1sVUDhJ','372CVWTCG','1876474RoAgiC'];a136_0x3483=function(){return _0x3c08cb;};return a136_0x3483();}(function(_0x18439b,_0x1e72a5){const _0xb19841=a136_0x5128,_0x5c793d=_0x18439b();while(!![]){try{const _0x15d823=parseInt(_0xb19841(0xf5))/0x1*(-parseInt(_0xb19841(0xf7))/0x2)+parseInt(_0xb19841(0xf1))/0x3+parseInt(_0xb19841(0xf2))/0x4*(-parseInt(_0xb19841(0xfb))/0x5)+parseInt(_0xb19841(0xff))/0x6*(parseInt(_0xb19841(0xfa))/0x7)+parseInt(_0xb19841(0xf8))/0x8*(-parseInt(_0xb19841(0xfc))/0x9)+parseInt(_0xb19841(0xfd))/0xa+parseInt(_0xb19841(0xf3))/0xb*(parseInt(_0xb19841(0xf6))/0xc);if(_0x15d823===_0x1e72a5)break;else _0x5c793d['push'](_0x5c793d['shift']());}catch(_0x334a6e){_0x5c793d['push'](_0x5c793d['shift']());}}}(a136_0x3483,0x7d7e3));import{DEFAULT_API_DIR}from'../constant/paths.js';export const DEFAULT_CONFIG_VALUES={'env':a136_0xea3603(0xfe),'format':a136_0xea3603(0xf0),'locale':a136_0xea3603(0xf4),'riskLevel':a136_0xea3603(0xf9),'apiDir':DEFAULT_API_DIR};function a136_0x5128(_0x4666ab,_0x26b1ce){_0x4666ab=_0x4666ab-0xf0;const _0x34831f=a136_0x3483();let _0x5128c6=_0x34831f[_0x4666ab];return _0x5128c6;}export const DEFAULT_COMMAND_OUTPUT_FORMAT='compress';
|
package/lib/constant/domain.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a137_0x4a78(_0x5732b3,_0x1d16c4){_0x5732b3=_0x5732b3-0xb6;const _0x5aebe4=a137_0x5aeb();let _0x4a78f8=_0x5aebe4[_0x5732b3];return _0x4a78f8;}const a137_0x2c2e0c=a137_0x4a78;(function(_0x3cb9be,_0x42276f){const _0x262d5e=a137_0x4a78,_0x50c684=_0x3cb9be();while(!![]){try{const _0xda22ae=-parseInt(_0x262d5e(0xbf))/0x1+parseInt(_0x262d5e(0xc5))/0x2+-parseInt(_0x262d5e(0xb8))/0x3*(parseInt(_0x262d5e(0xc4))/0x4)+parseInt(_0x262d5e(0xba))/0x5+-parseInt(_0x262d5e(0xc3))/0x6+-parseInt(_0x262d5e(0xc1))/0x7+-parseInt(_0x262d5e(0xbb))/0x8*(-parseInt(_0x262d5e(0xbc))/0x9);if(_0xda22ae===_0x42276f)break;else _0x50c684['push'](_0x50c684['shift']());}catch(_0x2658fa){_0x50c684['push'](_0x50c684['shift']());}}}(a137_0x5aeb,0x2cff2));import{getEnv,isProduction}from'../constant/env.js';let customApiDomain,customUserDomain,customRuntimeDomain;export function initDomains(_0x54df76){const _0x56261f=a137_0x4a78;customApiDomain=_0x54df76?.[_0x56261f(0xb7)],customUserDomain=_0x54df76?.[_0x56261f(0xb9)],customRuntimeDomain=_0x54df76?.['runtimeDomain'];}export const getUserDomain=()=>customUserDomain||(isProduction(getEnv())?a137_0x2c2e0c(0xbd):a137_0x2c2e0c(0xc2));export const getApiDomain=()=>customApiDomain||(isProduction(getEnv())?a137_0x2c2e0c(0xbe):'https://daily-api.lovrabet.com');function a137_0x5aeb(){const _0x22e75a=['8aMdKfF','7118568vVrxLa','https://user.lovrabet.com','https://api.lovrabet.com','278007QxsKHI','https://daily-runtime.lovrabet.com','963326UCcGmL','https://user-daily.lovrabet.com','1692654MWWpzD','39948sFWOBH','652044HSzojg','https://runtime.lovrabet.com','apiDomain','75xSgZxP','userDomain','73705bBFmdc'];a137_0x5aeb=function(){return _0x22e75a;};return a137_0x5aeb();}export const getRuntimeDomain=()=>customRuntimeDomain||(isProduction(getEnv())?a137_0x2c2e0c(0xb6):a137_0x2c2e0c(0xc0));
|
package/lib/constant/env.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a138_0x47d417=a138_0x1852;(function(_0x51d5b4,_0x31143b){const _0x34d30b=a138_0x1852,_0x3e89ec=_0x51d5b4();while(!![]){try{const _0x1b12a5=parseInt(_0x34d30b(0x171))/0x1+-parseInt(_0x34d30b(0x17a))/0x2+-parseInt(_0x34d30b(0x174))/0x3*(-parseInt(_0x34d30b(0x177))/0x4)+parseInt(_0x34d30b(0x17c))/0x5+-parseInt(_0x34d30b(0x172))/0x6+-parseInt(_0x34d30b(0x178))/0x7+-parseInt(_0x34d30b(0x17b))/0x8*(-parseInt(_0x34d30b(0x173))/0x9);if(_0x1b12a5===_0x31143b)break;else _0x3e89ec['push'](_0x3e89ec['shift']());}catch(_0x1e06de){_0x3e89ec['push'](_0x3e89ec['shift']());}}}(a138_0x1fef,0xb8993));function a138_0x1fef(){const _0x550f27=['dev','312384PDAMAY','5359296AnXXFd','10929483wMTzdu','21708MAEGcP','daily','production','636SWLwCJ','6528326NAelOL','online','1834704UhWSEQ','8QKHlDR','4110030cUbzuK'];a138_0x1fef=function(){return _0x550f27;};return a138_0x1fef();}function a138_0x1852(_0x7ef3f8,_0x737637){_0x7ef3f8=_0x7ef3f8-0x171;const _0x1fefe9=a138_0x1fef();let _0x1852f2=_0x1fefe9[_0x7ef3f8];return _0x1852f2;}export const RABETBASE_ENV_VALUES=['production',a138_0x47d417(0x175)];export function normalizeEnv(_0x49131c){const _0xc590f6=a138_0x47d417;return _0x49131c===_0xc590f6(0x179)?'production':_0x49131c;}export function isProduction(_0x22c35f){const _0xebc426=a138_0x47d417;return normalizeEnv(_0x22c35f)===_0xebc426(0x176);}export function isDaily(_0x151276){const _0x5a9345=a138_0x47d417;return normalizeEnv(_0x151276)===_0x5a9345(0x175);}export function isDev(_0x353dc7){const _0x41ff93=a138_0x47d417,_0x513938=normalizeEnv(_0x353dc7);return _0x513938==='development'||_0x513938===_0x41ff93(0x17d);}let env=normalizeEnv(process.env.RABETBASE_ENV||process.env.LOVRABET_ENV||a138_0x47d417(0x176));export function getEnv(){return env;}export function initEnv(_0x409789){env=normalizeEnv(_0x409789);}
|
package/lib/constant/output.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a139_0x43c8e3=a139_0x531a;function a139_0x531a(_0x440d2b,_0x4670c4){_0x440d2b=_0x440d2b-0x6d;const _0x3b8e0b=a139_0x3b8e();let _0x531ae0=_0x3b8e0b[_0x440d2b];return _0x531ae0;}(function(_0x4695f1,_0x35ae95){const _0x21b75b=a139_0x531a,_0x33ddf0=_0x4695f1();while(!![]){try{const _0x29ca8a=parseInt(_0x21b75b(0x71))/0x1+parseInt(_0x21b75b(0x70))/0x2+-parseInt(_0x21b75b(0x6e))/0x3*(-parseInt(_0x21b75b(0x6d))/0x4)+parseInt(_0x21b75b(0x6f))/0x5+-parseInt(_0x21b75b(0x73))/0x6+parseInt(_0x21b75b(0x78))/0x7*(-parseInt(_0x21b75b(0x76))/0x8)+-parseInt(_0x21b75b(0x74))/0x9;if(_0x29ca8a===_0x35ae95)break;else _0x33ddf0['push'](_0x33ddf0['shift']());}catch(_0xce3590){_0x33ddf0['push'](_0x33ddf0['shift']());}}}(a139_0x3b8e,0xe1acd));export const RABETBASE_OUTPUT_FORMAT_VALUES=[a139_0x43c8e3(0x75),a139_0x43c8e3(0x77),a139_0x43c8e3(0x72)];function a139_0x3b8e(){const _0x57f3c3=['3618120UcvHvN','1776267zLsKAv','json','1864gsiiZH','pretty','13405kwQFpG','12FgUlwJ','436575JYmYRU','5367825WDmqKt','1234216stsTic','43695PVCvwn','compress'];a139_0x3b8e=function(){return _0x57f3c3;};return a139_0x3b8e();}
|
package/lib/constant/paths.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a140_0x5111(){const _0x5657d5=['7mQCvri','267dwJFcH','6396492fvwnly','13EefTvI','./src/api','941272BgtTTX','814SUtzJF','6NhObge','1273315IVrHZC','1756eEiSOf','85570AMmKwW','4157964phczlO','2126764FMOfSy','6hXUogz'];a140_0x5111=function(){return _0x5657d5;};return a140_0x5111();}const a140_0x2c4594=a140_0x235f;(function(_0x4079b0,_0x4c959c){const _0x4e4b6e=a140_0x235f,_0x4d1c5d=_0x4079b0();while(!![]){try{const _0x3ffb40=-parseInt(_0x4e4b6e(0x12d))/0x1*(-parseInt(_0x4e4b6e(0x135))/0x2)+parseInt(_0x4e4b6e(0x133))/0x3*(parseInt(_0x4e4b6e(0x12a))/0x4)+parseInt(_0x4e4b6e(0x134))/0x5*(-parseInt(_0x4e4b6e(0x12b))/0x6)+parseInt(_0x4e4b6e(0x12c))/0x7*(parseInt(_0x4e4b6e(0x131))/0x8)+-parseInt(_0x4e4b6e(0x129))/0x9+parseInt(_0x4e4b6e(0x136))/0xa*(parseInt(_0x4e4b6e(0x132))/0xb)+-parseInt(_0x4e4b6e(0x12e))/0xc*(parseInt(_0x4e4b6e(0x12f))/0xd);if(_0x3ffb40===_0x4c959c)break;else _0x4d1c5d['push'](_0x4d1c5d['shift']());}catch(_0x703079){_0x4d1c5d['push'](_0x4d1c5d['shift']());}}}(a140_0x5111,0xc3109));function a140_0x235f(_0x1df3bc,_0xb1f295){_0x1df3bc=_0x1df3bc-0x129;const _0x5111d2=a140_0x5111();let _0x235f9=_0x5111d2[_0x1df3bc];return _0x235f9;}export const DEFAULT_API_DIR=a140_0x2c4594(0x130);
|
package/lib/constant/risk.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a141_0x4cb9(){const _0x169b9d=['118KHyhqg','1603616tFigss','3670444DECOyP','1893WNkyRP','5fWhBej','read','10789960IhWqzd','5807046MnpzkF','1162876UKRBCL','15715881bibVZg'];a141_0x4cb9=function(){return _0x169b9d;};return a141_0x4cb9();}const a141_0x2a9720=a141_0x5084;(function(_0x54ea60,_0x3ef54a){const _0x50c1be=a141_0x5084,_0x5863c3=_0x54ea60();while(!![]){try{const _0x283470=-parseInt(_0x50c1be(0x80))/0x1+parseInt(_0x50c1be(0x78))/0x2*(-parseInt(_0x50c1be(0x7b))/0x3)+parseInt(_0x50c1be(0x7a))/0x4*(parseInt(_0x50c1be(0x7c))/0x5)+parseInt(_0x50c1be(0x7f))/0x6+-parseInt(_0x50c1be(0x79))/0x7+-parseInt(_0x50c1be(0x7e))/0x8+parseInt(_0x50c1be(0x81))/0x9;if(_0x283470===_0x3ef54a)break;else _0x5863c3['push'](_0x5863c3['shift']());}catch(_0x3cfe1f){_0x5863c3['push'](_0x5863c3['shift']());}}}(a141_0x4cb9,0xd06db));function a141_0x5084(_0x414e02,_0x3e4821){_0x414e02=_0x414e02-0x78;const _0x4cb908=a141_0x4cb9();let _0x508454=_0x4cb908[_0x414e02];return _0x508454;}export const RISK_LEVEL_VALUES=[a141_0x2a9720(0x7d),'write','high-risk-write'];
|