@lovrabet/rabetbase-cli 2.2.0 → 2.2.1-beta.2
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_0x3e9caa=a127_0x53a8;(function(_0x55f4bc,_0x112f41){const _0x1e76f4=a127_0x53a8,_0x2741a5=_0x55f4bc();while(!![]){try{const _0x2809b6=parseInt(_0x1e76f4(0x1cc))/0x1*(parseInt(_0x1e76f4(0x1c7))/0x2)+-parseInt(_0x1e76f4(0x1c2))/0x3*(parseInt(_0x1e76f4(0x1c0))/0x4)+-parseInt(_0x1e76f4(0x1db))/0x5+-parseInt(_0x1e76f4(0x1f6))/0x6*(-parseInt(_0x1e76f4(0x1f1))/0x7)+-parseInt(_0x1e76f4(0x1cb))/0x8+-parseInt(_0x1e76f4(0x1ce))/0x9*(-parseInt(_0x1e76f4(0x1f8))/0xa)+-parseInt(_0x1e76f4(0x1e4))/0xb;if(_0x2809b6===_0x112f41)break;else _0x2741a5['push'](_0x2741a5['shift']());}catch(_0x596586){_0x2741a5['push'](_0x2741a5['shift']());}}}(a127_0x2b4f,0xb68c7));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_0x2b4f(){const _0x3b827e=['replace','No\x20remote\x20SQL\x20queries\x20matched.','lockFilePath','write','6800025VDvoTX','conflict','\x20written,\x20','utf8','sqlName','description','sqlContent','Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','Force\x20pull\x20cancelled.','8335184RGKfsv','filter','Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.','Would\x20pull\x20','sqlRoot','sqlcode','name','\x20skipped,\x20','catch','local\x20differs\x20from\x20remote','string','Filter\x20by\x20SQL\x20display\x20name','sqls','278803MVdJzz','boolean','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','Pull\x20complete:\x20','toISOString','156cxgDVg','dbId','14500820QUCmsl','pull','str','push','sqlCode','sql','apps','test','47180BbHUzp','lastSync','66dgdeos','unchanged','length','\x20SQL\x20file(s)\x20into\x20','POST','81188lLybTQ','would_pull','\x20failed','Force\x20overwrite\x20local\x20unsynced\x20changes','5277488gSTSgC','32HrlmdF','sqlRootDir','9HmvtyG','path','mybatisXml','split','force','cancelled','/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','tableData','appCode'];a127_0x2b4f=function(){return _0x3b827e;};return a127_0x2b4f();}import{computeSqlContentHash}from'../../core/sql-sync/hash.js';function a127_0x53a8(_0x2839d9,_0x429833){_0x2839d9=_0x2839d9-0x1bb;const _0x2b4fb9=a127_0x2b4f();let _0x53a8ca=_0x2b4fb9[_0x2839d9];return _0x53a8ca;}import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildLocalSqlFileContent,buildSqlLockEntry,cloneSqlLockData,confirmForceOverwrite,ensureRemoteSqlContent,stripLocalSqlMetadata}from'./shared.js';const PAGE_SIZE=0x64;async function fetchAllSqlQueries(_0x266ffd,_0x7eae3){const _0x700e43=a127_0x53a8,_0x5388d9=[];let _0x3358cd=0x1;while(!![]){const _0x244dde=await listSqlQueries(_0x266ffd,{'currentPage':_0x3358cd,'pageSize':PAGE_SIZE,'sqlCode':_0x7eae3['sqlCode'],'sqlName':_0x7eae3[_0x700e43(0x1df)]}),_0x494768=_0x244dde[_0x700e43(0x1d5)]??[];_0x5388d9[_0x700e43(0x1bb)](..._0x494768);if(_0x494768[_0x700e43(0x1c4)]===0x0)break;const _0x12a95b=_0x244dde['paging']?.['totalCount'];if(_0x12a95b!=null?_0x5388d9[_0x700e43(0x1c4)]>=_0x12a95b:_0x494768[_0x700e43(0x1c4)]<PAGE_SIZE)break;_0x3358cd++;}return _0x5388d9;}async function ensureSqlContent(_0x174791){const _0x508cd6=a127_0x53a8;if(_0x174791['sqlContent']!=null&&String(_0x174791[_0x508cd6(0x1e1)])['length']>0x0)return _0x174791;return getSqlQueryDetail(_0x174791[_0x508cd6(0x1bc)]);}export const sqlPull={'service':a127_0x3e9caa(0x1bd),'command':a127_0x3e9caa(0x1f9),'description':a127_0x3e9caa(0x1e2),'risk':a127_0x3e9caa(0x1da),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a127_0x3e9caa(0x1ea),'type':a127_0x3e9caa(0x1ee),'description':a127_0x3e9caa(0x1ef)},{'name':a127_0x3e9caa(0x1d2),'type':a127_0x3e9caa(0x1f2),'description':a127_0x3e9caa(0x1ca)}],async 'dryRun'(_0x3153cc){const _0x33ed81=a127_0x3e9caa,_0x15ef9b=loadSqlProjectConfig(_0x3153cc[_0x33ed81(0x1d6)]),_0x2ad256=await readSqlLockFile(_0x15ef9b[_0x33ed81(0x1d9)]),{appLock:_0x55974d}=ensureSqlLockScope(_0x2ad256??createEmptySqlLock(),_0x15ef9b[_0x33ed81(0x1d6)],_0x15ef9b[_0x33ed81(0x1e8)],_0x33ed81(0x1f9)),_0x2ef500=await fetchAllSqlQueries(_0x3153cc[_0x33ed81(0x1d6)],{'sqlCode':_0x3153cc['str']('sqlcode')||undefined,'sqlName':_0x3153cc[_0x33ed81(0x1fa)](_0x33ed81(0x1ea))||undefined}),_0x1a83f8=[];for(const _0x5966fc of _0x2ef500){const _0x517394=await ensureSqlContent(_0x5966fc),_0x599a9e=ensureRemoteSqlContent(_0x517394),_0x52a589=detectModeFromSql(_0x517394),_0x188f53=_0x517394[_0x33ed81(0x1f7)]?await getDbName(_0x3153cc['appCode'],Number(_0x517394[_0x33ed81(0x1f7)]))[_0x33ed81(0x1ec)](()=>undefined):undefined,_0x547ad3=buildLocalSqlFileContent({'sqlCode':_0x517394[_0x33ed81(0x1bc)],'sqlName':_0x517394[_0x33ed81(0x1df)],'dbId':_0x517394[_0x33ed81(0x1f7)]},_0x599a9e,{'dbName':_0x188f53,'mode':_0x52a589,'syncedAt':new Date()[_0x33ed81(0x1f5)](),'description':_0x517394['description']}),_0x51d9dc=buildSqlLockEntry(_0x517394,_0x599a9e,'',{'dbName':_0x188f53}),_0x15fcf4=resolveLocalSqlFilePath(_0x15ef9b,_0x517394['sqlCode'],_0x51d9dc);let _0x26e3c0=_0x33ed81(0x1c8),_0x475af8;if(await fileExists(_0x15fcf4)){const _0x45eb57=await readFile(_0x15fcf4,_0x33ed81(0x1de));isEquivalentPulledSqlFile(_0x45eb57,_0x547ad3,_0x52a589)?(_0x26e3c0='skipped',_0x475af8=_0x33ed81(0x1c3)):(_0x26e3c0=_0x33ed81(0x1dc),_0x475af8=_0x33ed81(0x1f3));}_0x1a83f8[_0x33ed81(0x1bb)]({'sqlCode':_0x517394['sqlCode'],'sqlName':_0x517394[_0x33ed81(0x1df)],'filePath':_0x15fcf4,'status':_0x26e3c0,'reason':_0x475af8});}return{'method':_0x33ed81(0x1c6),'url':_0x33ed81(0x1d4),'body':{'appCode':_0x3153cc['appCode'],'sqlCode':_0x3153cc[_0x33ed81(0x1fa)](_0x33ed81(0x1e9))||null,'sqlName':_0x3153cc[_0x33ed81(0x1fa)]('name')||null,'files':_0x1a83f8},'description':_0x33ed81(0x1e7)+_0x1a83f8['length']+_0x33ed81(0x1c5)+_0x15ef9b[_0x33ed81(0x1cd)]};},async 'execute'(_0x5c8dcb){const _0x6f6ec2=a127_0x3e9caa,_0x48ada9=loadSqlProjectConfig(_0x5c8dcb[_0x6f6ec2(0x1d6)]),_0x56418e=await readSqlLockFile(_0x48ada9[_0x6f6ec2(0x1d9)]),{lockData:_0x18ffa3,appLock:_0x28db20}=ensureSqlLockScope(_0x56418e??createEmptySqlLock(),_0x48ada9[_0x6f6ec2(0x1d6)],_0x48ada9[_0x6f6ec2(0x1e8)],_0x6f6ec2(0x1f9)),_0x5c0da4=_0x5c8dcb['bool'](_0x6f6ec2(0x1d2)),_0x262cd2=await fetchAllSqlQueries(_0x5c8dcb[_0x6f6ec2(0x1d6)],{'sqlCode':_0x5c8dcb[_0x6f6ec2(0x1fa)](_0x6f6ec2(0x1e9))||undefined,'sqlName':_0x5c8dcb['str'](_0x6f6ec2(0x1ea))||undefined});if(_0x262cd2[_0x6f6ec2(0x1c4)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x6f6ec2(0x1d8)};const _0x4e8e9e=[],_0x31d374=[];for(const _0x245f33 of _0x262cd2){try{_0x4e8e9e[_0x6f6ec2(0x1bb)](await ensureSqlContent(_0x245f33));}catch(_0x437dad){_0x31d374[_0x6f6ec2(0x1bb)]({'sqlCode':_0x245f33[_0x6f6ec2(0x1bc)],'error':_0x437dad instanceof Error?_0x437dad['message']:String(_0x437dad)});}}if(_0x5c0da4&&!_0x5c8dcb['nonInteractive']){let _0x33ccad=![];for(const _0x2c3130 of _0x4e8e9e){const _0x4d37ea=detectModeFromSql(_0x2c3130),_0x477190=_0x2c3130[_0x6f6ec2(0x1f7)]?await getDbName(_0x5c8dcb['appCode'],Number(_0x2c3130[_0x6f6ec2(0x1f7)]))['catch'](()=>undefined):undefined,_0x2e25f1=buildLocalSqlFileContent({'sqlCode':_0x2c3130['sqlCode'],'sqlName':_0x2c3130[_0x6f6ec2(0x1df)],'dbId':_0x2c3130['dbId']},ensureRemoteSqlContent(_0x2c3130),{'dbName':_0x477190,'mode':_0x4d37ea,'syncedAt':new Date()[_0x6f6ec2(0x1f5)](),'description':_0x2c3130['description']}),_0x48a823=resolveLocalSqlFilePath(_0x48ada9,_0x2c3130[_0x6f6ec2(0x1bc)],buildSqlLockEntry(_0x2c3130,ensureRemoteSqlContent(_0x2c3130),'',{'dbName':_0x477190}));if(await fileExists(_0x48a823)){const _0x16e0ef=await readFile(_0x48a823,'utf8');if(!isEquivalentPulledSqlFile(_0x16e0ef,_0x2e25f1,_0x4d37ea)){_0x33ccad=!![];break;}}}if(_0x33ccad){const _0x456115=await confirmForceOverwrite(_0x6f6ec2(0x1e6));if(!_0x456115)throw CliErrors[_0x6f6ec2(0x1d3)](_0x6f6ec2(0x1e3));}}const _0x259c91=cloneSqlLockData(_0x18ffa3),_0x3f37ae=_0x259c91[_0x6f6ec2(0x1be)][_0x48ada9[_0x6f6ec2(0x1d6)]],_0x551c0d=[],_0x24eafc=[];for(const _0x3ab526 of _0x4e8e9e){const _0x3a920e=_0x3f37ae[_0x6f6ec2(0x1f0)][_0x3ab526['sqlCode']],_0x171916=ensureRemoteSqlContent(_0x3ab526),_0x325ac4=detectModeFromSql(_0x3ab526),_0x56855b=_0x3ab526[_0x6f6ec2(0x1f7)]?await getDbName(_0x5c8dcb[_0x6f6ec2(0x1d6)],Number(_0x3ab526[_0x6f6ec2(0x1f7)]))[_0x6f6ec2(0x1ec)](()=>undefined):undefined,_0x2ac301=buildLocalSqlFileContent({'sqlCode':_0x3ab526[_0x6f6ec2(0x1bc)],'sqlName':_0x3ab526[_0x6f6ec2(0x1df)],'dbId':_0x3ab526['dbId']},_0x171916,{'dbName':_0x56855b,'mode':_0x325ac4,'syncedAt':new Date()[_0x6f6ec2(0x1f5)](),'description':_0x3ab526[_0x6f6ec2(0x1e0)]}),_0x16e6ed=buildSqlLockEntry(_0x3ab526,_0x171916,computeSqlContentHash(_0x2ac301),{'dbName':_0x56855b}),_0x84b0b7=_0x16e6ed['path'],_0x11cef7=join(_0x48ada9[_0x6f6ec2(0x1cd)],_0x84b0b7);try{if(await fileExists(_0x11cef7)){const _0x59c329=await readFile(_0x11cef7,_0x6f6ec2(0x1de));if(isEquivalentPulledSqlFile(_0x59c329,_0x2ac301,_0x325ac4)){_0x24eafc[_0x6f6ec2(0x1bb)]({'sqlCode':_0x3ab526['sqlCode'],'reason':'unchanged'}),_0x3f37ae[_0x6f6ec2(0x1f0)][_0x3ab526['sqlCode']]={..._0x16e6ed,'hash':computeSqlContentHash(_0x59c329),'path':_0x84b0b7};continue;}if(!_0x5c0da4){_0x24eafc[_0x6f6ec2(0x1bb)]({'sqlCode':_0x3ab526[_0x6f6ec2(0x1bc)],'reason':_0x6f6ec2(0x1ed)});continue;}}const _0x5863b3=_0x3a920e?.[_0x6f6ec2(0x1cf)]?join(_0x48ada9['sqlRootDir'],_0x3a920e[_0x6f6ec2(0x1cf)]):undefined;_0x5863b3&&_0x5863b3!==_0x11cef7&&await fileExists(_0x5863b3)&&await rm(_0x5863b3,{'force':!![]}),await ensureParentDirectory(_0x11cef7),await writeFile(_0x11cef7,_0x2ac301,_0x6f6ec2(0x1de)),_0x3f37ae[_0x6f6ec2(0x1f0)][_0x3ab526[_0x6f6ec2(0x1bc)]]={..._0x16e6ed,'path':_0x84b0b7},_0x551c0d[_0x6f6ec2(0x1bb)]({'sqlCode':_0x3ab526[_0x6f6ec2(0x1bc)],'filePath':_0x11cef7});}catch(_0x4bee49){_0x31d374[_0x6f6ec2(0x1bb)]({'sqlCode':_0x3ab526[_0x6f6ec2(0x1bc)],'error':_0x4bee49 instanceof Error?_0x4bee49['message']:String(_0x4bee49)});}}return _0x3f37ae[_0x6f6ec2(0x1c1)]=new Date()['toISOString'](),await writeSqlLockFile(_0x48ada9['lockFilePath'],_0x259c91),{'ok':_0x31d374[_0x6f6ec2(0x1c4)]===0x0,'data':{'pulled':_0x551c0d,'skipped':_0x24eafc,'failed':_0x31d374},'message':_0x6f6ec2(0x1f4)+_0x551c0d['length']+_0x6f6ec2(0x1dd)+_0x24eafc[_0x6f6ec2(0x1c4)]+_0x6f6ec2(0x1eb)+_0x31d374['length']+_0x6f6ec2(0x1c9)};}};function detectModeFromSql(_0x2dd021){const _0x36bd7c=a127_0x3e9caa,_0x4212d7=ensureRemoteSqlContent(_0x2dd021),_0x258af5=stripLocalSqlMetadata(_0x4212d7,_0x36bd7c(0x1d0))['trimStart']();if(/^<(select|insert|update|delete)\b/i['test'](_0x258af5))return _0x36bd7c(0x1d0);return _0x36bd7c(0x1bd);}function isEquivalentPulledSqlFile(_0xb64ea8,_0x419671,_0x77316c){return normalizePullComparableContent(_0xb64ea8,_0x77316c)===normalizePullComparableContent(_0x419671,_0x77316c);}function normalizePullComparableContent(_0xdfcfc1,_0x4fce48){const _0x6122fb=a127_0x3e9caa,_0x3db615=_0xdfcfc1[_0x6122fb(0x1d7)](/\r\n/g,'\x0a')[_0x6122fb(0x1d1)]('\x0a'),_0x411886=_0x3db615[_0x6122fb(0x1e5)](_0x4e4600=>!isSyncedAtMetadataLine(_0x4e4600,_0x4fce48));return _0x411886['join']('\x0a');}function isSyncedAtMetadataLine(_0x4e749b,_0x16baa1){const _0x19c144=a127_0x3e9caa;if(_0x16baa1===_0x19c144(0x1d0))return/^\s*<!--\s*@lovrabet\.syncedAt:/[_0x19c144(0x1bf)](_0x4e749b);return/^\s*--\s*@lovrabet\.syncedAt:/[_0x19c144(0x1bf)](_0x4e749b);}
|
|
1
|
+
const a127_0x2d0df4=a127_0x2cbc;(function(_0x4a4d21,_0x6607a){const _0x498331=a127_0x2cbc,_0x35fb8f=_0x4a4d21();while(!![]){try{const _0x3744d8=-parseInt(_0x498331(0x1b1))/0x1*(-parseInt(_0x498331(0x1c3))/0x2)+parseInt(_0x498331(0x1a8))/0x3+-parseInt(_0x498331(0x1c7))/0x4+-parseInt(_0x498331(0x1bf))/0x5*(-parseInt(_0x498331(0x1ca))/0x6)+-parseInt(_0x498331(0x19e))/0x7+parseInt(_0x498331(0x1a5))/0x8*(parseInt(_0x498331(0x1c4))/0x9)+parseInt(_0x498331(0x19f))/0xa*(parseInt(_0x498331(0x1be))/0xb);if(_0x3744d8===_0x6607a)break;else _0x35fb8f['push'](_0x35fb8f['shift']());}catch(_0x3ea2e2){_0x35fb8f['push'](_0x35fb8f['shift']());}}}(a127_0x50b6,0xde035));import{readFile,rm,writeFile}from'node:fs/promises';import{join}from'node:path';import{getSqlQueryDetail,listSqlQueries}from'../../core/api-client.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';function a127_0x2cbc(_0x1c7efe,_0x2def5e){_0x1c7efe=_0x1c7efe-0x194;const _0x50b60a=a127_0x50b6();let _0x2cbc7e=_0x50b60a[_0x1c7efe];return _0x2cbc7e;}import{getDbName}from'../../core/db-resolver.js';function a127_0x50b6(){const _0x4a4619=['Force\x20pull\x20cancelled.','join','4026696Nxbqny','unchanged','force','split','catch','POST','tableData','/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','nonInteractive','write','would_pull','pull','name','path','lockFilePath','Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','9969246XadKJy','720xxfGJV','test','sqlName','sqlRootDir','\x20skipped,\x20','local\x20differs\x20from\x20remote','95224QBSLGF','dbId','totalCount','2455410jZCzFr','bool','sqls','sql','conflict','utf8','skipped','Force\x20overwrite\x20local\x20unsynced\x20changes','sqlcode','69WdjZRE','sqlContent','description','replace','length','trimStart','lastSync','sqlCode','toISOString','str','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','appCode','Filter\x20by\x20SQL\x20display\x20name','146476nkOQHm','5YHdNar','Would\x20pull\x20','push','mybatisXml','17734KRFNaR','549ZHKibd','filter','string','5810804pGSOry'];a127_0x50b6=function(){return _0x4a4619;};return a127_0x50b6();}import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildLocalSqlFileContent,buildSqlLockEntry,cloneSqlLockData,confirmForceOverwrite,ensureRemoteSqlContent,stripLocalSqlMetadata}from'./shared.js';const PAGE_SIZE=0x64;async function fetchAllSqlQueries(_0x8912a,_0x451cb2){const _0x5e65bb=a127_0x2cbc,_0x35a51d=[];let _0x98ce7c=0x1;while(!![]){const _0x46e07e=await listSqlQueries(_0x8912a,{'currentPage':_0x98ce7c,'pageSize':PAGE_SIZE,'sqlCode':_0x451cb2[_0x5e65bb(0x1b8)],'sqlName':_0x451cb2[_0x5e65bb(0x1a1)]}),_0x535cdd=_0x46e07e[_0x5e65bb(0x194)]??[];_0x35a51d[_0x5e65bb(0x1c1)](..._0x535cdd);if(_0x535cdd[_0x5e65bb(0x1b5)]===0x0)break;const _0x35d387=_0x46e07e['paging']?.[_0x5e65bb(0x1a7)];if(_0x35d387!=null?_0x35a51d['length']>=_0x35d387:_0x535cdd[_0x5e65bb(0x1b5)]<PAGE_SIZE)break;_0x98ce7c++;}return _0x35a51d;}async function ensureSqlContent(_0xbb3677){const _0x3c905d=a127_0x2cbc;if(_0xbb3677[_0x3c905d(0x1b2)]!=null&&String(_0xbb3677[_0x3c905d(0x1b2)])[_0x3c905d(0x1b5)]>0x0)return _0xbb3677;return getSqlQueryDetail(_0xbb3677[_0x3c905d(0x1b8)]);}export const sqlPull={'service':a127_0x2d0df4(0x1ab),'command':a127_0x2d0df4(0x199),'description':a127_0x2d0df4(0x19d),'risk':a127_0x2d0df4(0x197),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':'name','type':a127_0x2d0df4(0x1c6),'description':a127_0x2d0df4(0x1bd)},{'name':'force','type':'boolean','description':a127_0x2d0df4(0x1af)}],async 'dryRun'(_0x1bf751){const _0x2da281=a127_0x2d0df4,_0xfae71f=loadSqlProjectConfig(_0x1bf751[_0x2da281(0x1bc)]),_0x1ea870=await readSqlLockFile(_0xfae71f[_0x2da281(0x19c)]),{appLock:_0x48cb5f}=ensureSqlLockScope(_0x1ea870??createEmptySqlLock(),_0xfae71f[_0x2da281(0x1bc)],_0xfae71f['sqlRoot'],_0x2da281(0x199)),_0x4ea9c9=await fetchAllSqlQueries(_0x1bf751[_0x2da281(0x1bc)],{'sqlCode':_0x1bf751[_0x2da281(0x1ba)](_0x2da281(0x1b0))||undefined,'sqlName':_0x1bf751[_0x2da281(0x1ba)](_0x2da281(0x19a))||undefined}),_0x11094e=[];for(const _0x4b97cd of _0x4ea9c9){const _0x19373b=await ensureSqlContent(_0x4b97cd),_0x191bf=ensureRemoteSqlContent(_0x19373b),_0xeab30a=detectModeFromSql(_0x19373b),_0x3779c0=_0x19373b['dbId']?await getDbName(_0x1bf751['appCode'],Number(_0x19373b[_0x2da281(0x1a6)]))['catch'](()=>undefined):undefined,_0x2927b9=buildLocalSqlFileContent({'sqlCode':_0x19373b[_0x2da281(0x1b8)],'sqlName':_0x19373b['sqlName'],'dbId':_0x19373b[_0x2da281(0x1a6)]},_0x191bf,{'dbName':_0x3779c0,'mode':_0xeab30a,'syncedAt':new Date()['toISOString'](),'description':_0x19373b['description']}),_0x16dc21=buildSqlLockEntry(_0x19373b,_0x191bf,'',{'dbName':_0x3779c0}),_0x169828=resolveLocalSqlFilePath(_0xfae71f,_0x19373b[_0x2da281(0x1b8)],_0x16dc21);let _0xbc2c82=_0x2da281(0x198),_0x56a1f0;if(await fileExists(_0x169828)){const _0x315d88=await readFile(_0x169828,_0x2da281(0x1ad));isEquivalentPulledSqlFile(_0x315d88,_0x2927b9,_0xeab30a)?(_0xbc2c82=_0x2da281(0x1ae),_0x56a1f0=_0x2da281(0x1cb)):(_0xbc2c82=_0x2da281(0x1ac),_0x56a1f0=_0x2da281(0x1bb));}_0x11094e['push']({'sqlCode':_0x19373b['sqlCode'],'sqlName':_0x19373b['sqlName'],'filePath':_0x169828,'status':_0xbc2c82,'reason':_0x56a1f0});}return{'method':_0x2da281(0x1cf),'url':_0x2da281(0x195),'body':{'appCode':_0x1bf751[_0x2da281(0x1bc)],'sqlCode':_0x1bf751[_0x2da281(0x1ba)](_0x2da281(0x1b0))||null,'sqlName':_0x1bf751[_0x2da281(0x1ba)](_0x2da281(0x19a))||null,'files':_0x11094e},'description':_0x2da281(0x1c0)+_0x11094e[_0x2da281(0x1b5)]+'\x20SQL\x20file(s)\x20into\x20'+_0xfae71f[_0x2da281(0x1a2)]};},async 'execute'(_0x26c383){const _0x460c42=a127_0x2d0df4,_0x218a84=loadSqlProjectConfig(_0x26c383['appCode']),_0x1d22cc=await readSqlLockFile(_0x218a84[_0x460c42(0x19c)]),{lockData:_0x5350,appLock:_0x2e2146}=ensureSqlLockScope(_0x1d22cc??createEmptySqlLock(),_0x218a84[_0x460c42(0x1bc)],_0x218a84['sqlRoot'],_0x460c42(0x199)),_0x303998=_0x26c383[_0x460c42(0x1a9)](_0x460c42(0x1cc)),_0xea3b27=await fetchAllSqlQueries(_0x26c383[_0x460c42(0x1bc)],{'sqlCode':_0x26c383['str'](_0x460c42(0x1b0))||undefined,'sqlName':_0x26c383[_0x460c42(0x1ba)](_0x460c42(0x19a))||undefined});if(_0xea3b27[_0x460c42(0x1b5)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':'No\x20remote\x20SQL\x20queries\x20matched.'};const _0x4e0d52=[],_0x5418e2=[];for(const _0x389852 of _0xea3b27){try{_0x4e0d52[_0x460c42(0x1c1)](await ensureSqlContent(_0x389852));}catch(_0x4b01f1){_0x5418e2['push']({'sqlCode':_0x389852[_0x460c42(0x1b8)],'error':_0x4b01f1 instanceof Error?_0x4b01f1['message']:String(_0x4b01f1)});}}if(_0x303998&&!_0x26c383[_0x460c42(0x196)]){let _0x5d9129=![];for(const _0x104482 of _0x4e0d52){const _0x10f0b5=detectModeFromSql(_0x104482),_0x4b8f74=_0x104482[_0x460c42(0x1a6)]?await getDbName(_0x26c383['appCode'],Number(_0x104482[_0x460c42(0x1a6)]))[_0x460c42(0x1ce)](()=>undefined):undefined,_0x1c1699=buildLocalSqlFileContent({'sqlCode':_0x104482[_0x460c42(0x1b8)],'sqlName':_0x104482[_0x460c42(0x1a1)],'dbId':_0x104482[_0x460c42(0x1a6)]},ensureRemoteSqlContent(_0x104482),{'dbName':_0x4b8f74,'mode':_0x10f0b5,'syncedAt':new Date()[_0x460c42(0x1b9)](),'description':_0x104482['description']}),_0x41b081=resolveLocalSqlFilePath(_0x218a84,_0x104482['sqlCode'],buildSqlLockEntry(_0x104482,ensureRemoteSqlContent(_0x104482),'',{'dbName':_0x4b8f74}));if(await fileExists(_0x41b081)){const _0x51bcf5=await readFile(_0x41b081,_0x460c42(0x1ad));if(!isEquivalentPulledSqlFile(_0x51bcf5,_0x1c1699,_0x10f0b5)){_0x5d9129=!![];break;}}}if(_0x5d9129){const _0x109cd7=await confirmForceOverwrite('Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.');if(!_0x109cd7)throw CliErrors['cancelled'](_0x460c42(0x1c8));}}const _0x203918=cloneSqlLockData(_0x5350),_0x491110=_0x203918['apps'][_0x218a84[_0x460c42(0x1bc)]],_0x130beb=[],_0x52f4b6=[];for(const _0x239e02 of _0x4e0d52){const _0x2cf27d=_0x491110[_0x460c42(0x1aa)][_0x239e02[_0x460c42(0x1b8)]],_0x2ccd86=ensureRemoteSqlContent(_0x239e02),_0x332725=detectModeFromSql(_0x239e02),_0x38e8c8=_0x239e02[_0x460c42(0x1a6)]?await getDbName(_0x26c383['appCode'],Number(_0x239e02[_0x460c42(0x1a6)]))[_0x460c42(0x1ce)](()=>undefined):undefined,_0x1f3e43=buildLocalSqlFileContent({'sqlCode':_0x239e02[_0x460c42(0x1b8)],'sqlName':_0x239e02[_0x460c42(0x1a1)],'dbId':_0x239e02[_0x460c42(0x1a6)]},_0x2ccd86,{'dbName':_0x38e8c8,'mode':_0x332725,'syncedAt':new Date()[_0x460c42(0x1b9)](),'description':_0x239e02[_0x460c42(0x1b3)]}),_0x2e2278=buildSqlLockEntry(_0x239e02,_0x2ccd86,computeSqlContentHash(_0x1f3e43),{'dbName':_0x38e8c8}),_0x88eba0=_0x2e2278[_0x460c42(0x19b)],_0x2022ce=join(_0x218a84[_0x460c42(0x1a2)],_0x88eba0);try{if(await fileExists(_0x2022ce)){const _0xc49a8e=await readFile(_0x2022ce,_0x460c42(0x1ad));if(isEquivalentPulledSqlFile(_0xc49a8e,_0x1f3e43,_0x332725)){_0x52f4b6[_0x460c42(0x1c1)]({'sqlCode':_0x239e02[_0x460c42(0x1b8)],'reason':'unchanged'}),_0x491110[_0x460c42(0x1aa)][_0x239e02[_0x460c42(0x1b8)]]={..._0x2e2278,'hash':computeSqlContentHash(_0xc49a8e),'path':_0x88eba0};continue;}if(!_0x303998){_0x52f4b6[_0x460c42(0x1c1)]({'sqlCode':_0x239e02[_0x460c42(0x1b8)],'reason':_0x460c42(0x1a4)});continue;}}const _0x16f6f2=_0x2cf27d?.[_0x460c42(0x19b)]?join(_0x218a84[_0x460c42(0x1a2)],_0x2cf27d[_0x460c42(0x19b)]):undefined;_0x16f6f2&&_0x16f6f2!==_0x2022ce&&await fileExists(_0x16f6f2)&&await rm(_0x16f6f2,{'force':!![]}),await ensureParentDirectory(_0x2022ce),await writeFile(_0x2022ce,_0x1f3e43,_0x460c42(0x1ad)),_0x491110[_0x460c42(0x1aa)][_0x239e02['sqlCode']]={..._0x2e2278,'path':_0x88eba0},_0x130beb[_0x460c42(0x1c1)]({'sqlCode':_0x239e02[_0x460c42(0x1b8)],'filePath':_0x2022ce});}catch(_0x58c464){_0x5418e2[_0x460c42(0x1c1)]({'sqlCode':_0x239e02[_0x460c42(0x1b8)],'error':_0x58c464 instanceof Error?_0x58c464['message']:String(_0x58c464)});}}return _0x491110[_0x460c42(0x1b7)]=new Date()[_0x460c42(0x1b9)](),await writeSqlLockFile(_0x218a84['lockFilePath'],_0x203918),{'ok':_0x5418e2['length']===0x0,'data':{'pulled':_0x130beb,'skipped':_0x52f4b6,'failed':_0x5418e2},'message':'Pull\x20complete:\x20'+_0x130beb[_0x460c42(0x1b5)]+'\x20written,\x20'+_0x52f4b6['length']+_0x460c42(0x1a3)+_0x5418e2[_0x460c42(0x1b5)]+'\x20failed'};}};function detectModeFromSql(_0x259fa2){const _0x7def74=a127_0x2d0df4,_0x117a80=ensureRemoteSqlContent(_0x259fa2),_0xf64e85=stripLocalSqlMetadata(_0x117a80,_0x7def74(0x1c2))[_0x7def74(0x1b6)]();if(/^<(select|insert|update|delete)\b/i[_0x7def74(0x1a0)](_0xf64e85))return _0x7def74(0x1c2);return _0x7def74(0x1ab);}function isEquivalentPulledSqlFile(_0x298f85,_0x5b2afb,_0x45ec84){return normalizePullComparableContent(_0x298f85,_0x45ec84)===normalizePullComparableContent(_0x5b2afb,_0x45ec84);}function normalizePullComparableContent(_0x5e89d5,_0x1775b2){const _0x4c1da8=a127_0x2d0df4,_0x2c8aa3=_0x5e89d5[_0x4c1da8(0x1b4)](/\r\n/g,'\x0a')[_0x4c1da8(0x1cd)]('\x0a'),_0x494834=_0x2c8aa3[_0x4c1da8(0x1c5)](_0x53567c=>!isSyncedAtMetadataLine(_0x53567c,_0x1775b2));return _0x494834[_0x4c1da8(0x1c9)]('\x0a');}function isSyncedAtMetadataLine(_0x4d43ca,_0x1c5d3b){const _0x24812c=a127_0x2d0df4;if(_0x1c5d3b===_0x24812c(0x1c2))return/^\s*<!--\s*@lovrabet\.syncedAt:/['test'](_0x4d43ca);return/^\s*--\s*@lovrabet\.syncedAt:/[_0x24812c(0x1a0)](_0x4d43ca);}
|
package/lib/commands/sql/push.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a128_0x5a0159=a128_0x2cbc;(function(_0x541e3d,_0x543f84){const _0x3e1442=a128_0x2cbc,_0x48fc03=_0x541e3d();while(!![]){try{const _0x23b555=parseInt(_0x3e1442(0x133))/0x1*(parseInt(_0x3e1442(0x131))/0x2)+parseInt(_0x3e1442(0x125))/0x3*(parseInt(_0x3e1442(0x138))/0x4)+parseInt(_0x3e1442(0x121))/0x5+parseInt(_0x3e1442(0x11f))/0x6*(-parseInt(_0x3e1442(0x122))/0x7)+parseInt(_0x3e1442(0xfd))/0x8*(-parseInt(_0x3e1442(0x12f))/0x9)+-parseInt(_0x3e1442(0x100))/0xa+-parseInt(_0x3e1442(0x132))/0xb*(-parseInt(_0x3e1442(0x10a))/0xc);if(_0x23b555===_0x543f84)break;else _0x48fc03['push'](_0x48fc03['shift']());}catch(_0x517ea9){_0x48fc03['push'](_0x48fc03['shift']());}}}(a128_0x3b26,0xdfae5));import{mkdir,readFile,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{updateSqlQuery}from'../../core/api-client.js';function a128_0x3b26(){const _0x330e21=['hash','high-risk-write','Force\x20push\x20even\x20if\x20local\x20hash\x20matches\x20lock','toISOString','catch','push','Push\x20complete:\x20','\x20skipped,\x20','bool','startsWith','sqlcode','lockFilePath','sqlConfig','unchanged','sql','1111170puCbsR','projectRoot','1350720tQyKaP','14ZtkPzx','POST','path','54zalKZo','\x20SQL\x20file(s)','sqls','sqlName','mode','\x20failed','lastSync','dbName','filter','remoteId','1063467guXiPc','length','94746aYWcAW','11CmoUTo','1xgHLzI','Local\x20directory\x20\x22','local\x20SQL\x20is\x20not\x20tracked\x20by\x20sql.lock.json;\x20use\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first','Push\x20local\x20SQL\x20files\x20to\x20remote','/smartapi/custom/updateUserCustomSql','361740kGslCx','relativePath','str','message','16WUpAvg','Would\x20push\x20','validation','14869640auEhEo','No\x20local\x20SQL\x20files\x20found.','No\x20database\x20matches\x20local\x20directory\x20\x22','Local\x20SQL\x20not\x20found:\x20','sqlRootDir','utf8','exec','sqlRoot','map','appCode','12774360VaueNe','boolean','force','sqlCode','filePath','dbId'];a128_0x3b26=function(){return _0x330e21;};return a128_0x3b26();}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';function a128_0x2cbc(_0x55d1e4,_0x5e6989){_0x55d1e4=_0x55d1e4-0xfc;const _0x3b26d7=a128_0x3b26();let _0x2cbcb1=_0x3b26d7[_0x55d1e4];return _0x2cbcb1;}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(_0x4b8099,_0x53eea5,_0x590845){const _0x46f830=a128_0x2cbc,_0x55ac80=await scanLocalSqlQueries(_0x4b8099),_0x333b1b=new Map();for(const _0xd1bce3 of _0x55ac80){if(_0x590845&&_0xd1bce3[_0x46f830(0x10d)]!==_0x590845)continue;const _0x225338=_0x333b1b['get'](_0xd1bce3[_0x46f830(0x10d)])??[];_0x225338[_0x46f830(0x115)](_0xd1bce3),_0x333b1b['set'](_0xd1bce3[_0x46f830(0x10d)],_0x225338);}if(_0x590845&&!_0x333b1b['has'](_0x590845))throw CliErrors[_0x46f830(0xff)](_0x46f830(0x103)+_0x590845);const _0x54771a=[];for(const [_0x1f20f9,_0x5d090d]of _0x333b1b['entries']()){if(_0x5d090d[_0x46f830(0x130)]===0x1){_0x54771a[_0x46f830(0x115)](_0x5d090d[0x0]);continue;}const _0x275533=_0x53eea5[_0x46f830(0x127)][_0x1f20f9],_0x39487f=_0x275533?.[_0x46f830(0x124)],_0x29219f=_0x39487f?_0x5d090d['filter'](_0x4c422a=>_0x4c422a[_0x46f830(0x139)]!==_0x39487f):_0x5d090d;if(_0x275533&&_0x29219f[_0x46f830(0x130)]===0x1){_0x54771a[_0x46f830(0x115)](_0x29219f[0x0]);continue;}throw CliErrors[_0x46f830(0xff)]('Multiple\x20local\x20SQL\x20files\x20found\x20for\x20sqlCode\x20'+_0x1f20f9+'.\x20Keep\x20only\x20one\x20file\x20under\x20its\x20sqlCode\x20directory\x20before\x20pushing.');}return _0x54771a;}export const sqlPush={'service':a128_0x5a0159(0x11e),'command':a128_0x5a0159(0x115),'description':a128_0x5a0159(0x136),'risk':a128_0x5a0159(0x111),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a128_0x5a0159(0x10c),'type':a128_0x5a0159(0x10b),'description':a128_0x5a0159(0x112)}],async 'dryRun'(_0x294ee3){const _0x315ea0=a128_0x5a0159,_0x557716=loadSqlProjectConfig(_0x294ee3[_0x315ea0(0x109)]),_0x545209=await readSqlLockFile(_0x557716[_0x315ea0(0x11b)]),{appLock:_0x37d6de}=ensureSqlLockScope(_0x545209??createEmptySqlLock(),_0x294ee3[_0x315ea0(0x109)],_0x557716[_0x315ea0(0x107)],'push'),_0x503990=await getTargetSqlQueries(_0x557716,_0x37d6de,_0x294ee3[_0x315ea0(0x13a)](_0x315ea0(0x11a))||undefined),_0x4a5745=[];for(const _0x4294a0 of _0x503990){const _0x50aa5e=await computeSqlFileHash(_0x4294a0['filePath']),_0x291fdd=_0x37d6de[_0x315ea0(0x127)][_0x4294a0['sqlCode']],_0x441652=!!_0x291fdd&&(_0x291fdd[_0x315ea0(0x124)]!==_0x4294a0[_0x315ea0(0x139)]||!!_0x4294a0[_0x315ea0(0x128)]&&_0x291fdd['sqlName']!==_0x4294a0[_0x315ea0(0x128)]);if(!_0x294ee3[_0x315ea0(0x118)](_0x315ea0(0x10c))&&_0x291fdd&&_0x291fdd[_0x315ea0(0x110)]===_0x50aa5e&&!_0x441652)continue;_0x4a5745['push'](_0x4294a0[_0x315ea0(0x10d)]);}return{'method':_0x315ea0(0x123),'url':_0x315ea0(0x137),'body':{'sqlCodes':_0x4a5745,'appCode':_0x294ee3[_0x315ea0(0x109)]},'description':_0x315ea0(0xfe)+_0x4a5745[_0x315ea0(0x130)]+_0x315ea0(0x126)};},async 'execute'(_0x68f184){const _0x46a8dd=a128_0x5a0159,_0x4c14f6=loadSqlProjectConfig(_0x68f184[_0x46a8dd(0x109)]),_0x3c5ac0=await readSqlLockFile(_0x4c14f6[_0x46a8dd(0x11b)]),{lockData:_0x3b17b4,appLock:_0x26d1b2}=ensureSqlLockScope(_0x3c5ac0??createEmptySqlLock(),_0x68f184[_0x46a8dd(0x109)],_0x4c14f6[_0x46a8dd(0x107)],_0x46a8dd(0x115)),_0x4422c3=await getTargetSqlQueries(_0x4c14f6,_0x26d1b2,_0x68f184[_0x46a8dd(0x13a)](_0x46a8dd(0x11a))||undefined);if(_0x4422c3[_0x46a8dd(0x130)]===0x0)return{'ok':!![],'data':{'pushed':[],'skipped':[],'failed':[]},'message':_0x46a8dd(0x101)};const _0x2fd888=[],_0x45803c=[],_0x268713=[];for(const _0x5df578 of _0x4422c3){const _0x89599f=_0x26d1b2[_0x46a8dd(0x127)][_0x5df578['sqlCode']];if(!_0x89599f){_0x268713[_0x46a8dd(0x115)]({'sqlCode':_0x5df578[_0x46a8dd(0x10d)],'error':_0x46a8dd(0x135)});continue;}try{const _0x2b887f=await computeSqlFileHash(_0x5df578[_0x46a8dd(0x10e)]),_0x35c7dc=_0x89599f[_0x46a8dd(0x124)]!==_0x5df578[_0x46a8dd(0x139)]||!!_0x5df578[_0x46a8dd(0x128)]&&_0x89599f[_0x46a8dd(0x128)]!==_0x5df578[_0x46a8dd(0x128)];if(!_0x68f184[_0x46a8dd(0x118)](_0x46a8dd(0x10c))&&_0x89599f[_0x46a8dd(0x110)]===_0x2b887f&&!_0x35c7dc){_0x45803c[_0x46a8dd(0x115)]({'sqlCode':_0x5df578[_0x46a8dd(0x10d)],'reason':_0x46a8dd(0x11d)});continue;}if(_0x89599f['version']==null){_0x268713['push']({'sqlCode':_0x5df578[_0x46a8dd(0x10d)],'error':'missing\x20remote\x20version;\x20run\x20`rabetbase\x20sql\x20pull`\x20to\x20refresh\x20version\x20info\x20first'});continue;}const _0x4c63a4=await readFile(_0x5df578[_0x46a8dd(0x10e)],_0x46a8dd(0x105)),_0x58b5e7=stripLocalSqlMetadata(_0x4c63a4,_0x5df578[_0x46a8dd(0x129)]),_0x403b33=_0x5df578[_0x46a8dd(0x128)]||_0x89599f['sqlName'],_0x134146=await resolveTargetDbBinding(_0x68f184[_0x46a8dd(0x109)],_0x5df578,_0x89599f),_0x7f2332=await updateSqlQuery({'id':_0x89599f[_0x46a8dd(0x12e)],'appCode':_0x68f184['appCode'],'sqlCode':_0x5df578[_0x46a8dd(0x10d)],'sqlName':_0x403b33,'dbId':_0x134146[_0x46a8dd(0x10f)],'version':_0x89599f['version'],'sqlContent':_0x58b5e7,'sqlConfig':_0x89599f[_0x46a8dd(0x11c)]??undefined}),_0x31c358=_0x7f2332['dbId']?await getDbName(_0x68f184[_0x46a8dd(0x109)],Number(_0x7f2332[_0x46a8dd(0x10f)]))[_0x46a8dd(0x114)](()=>_0x134146[_0x46a8dd(0x12c)]):_0x134146['dbName'];_0x26d1b2[_0x46a8dd(0x127)][_0x5df578[_0x46a8dd(0x10d)]]={...buildSqlLockEntry(_0x7f2332,_0x58b5e7,_0x2b887f,{'dbName':_0x31c358}),'path':_0x5df578[_0x46a8dd(0x139)],'mode':_0x89599f[_0x46a8dd(0x129)]},await archivePreviousSqlFileIfNeeded(_0x4c14f6,_0x89599f['path'],_0x5df578['relativePath']),_0x2fd888[_0x46a8dd(0x115)]({'sqlCode':_0x5df578[_0x46a8dd(0x10d)],'remoteId':_0x89599f['remoteId']});}catch(_0x5d79d4){_0x268713['push']({'sqlCode':_0x5df578[_0x46a8dd(0x10d)],'error':_0x5d79d4 instanceof Error?_0x5d79d4[_0x46a8dd(0xfc)]:String(_0x5d79d4)});}}return _0x26d1b2[_0x46a8dd(0x12b)]=new Date()[_0x46a8dd(0x113)](),await writeSqlLockFile(_0x4c14f6[_0x46a8dd(0x11b)],_0x3b17b4),{'ok':_0x268713[_0x46a8dd(0x130)]===0x0,'data':{'pushed':_0x2fd888,'skipped':_0x45803c,'failed':_0x268713},'message':_0x46a8dd(0x116)+_0x2fd888['length']+'\x20pushed,\x20'+_0x45803c['length']+_0x46a8dd(0x117)+_0x268713[_0x46a8dd(0x130)]+_0x46a8dd(0x12a)};}};async function archivePreviousSqlFileIfNeeded(_0x3f4892,_0x1755ff,_0x1ebf49){const _0x481551=a128_0x5a0159;if(!_0x1755ff||_0x1755ff===_0x1ebf49)return;const _0x32801e=join(_0x3f4892['sqlRootDir'],_0x1755ff);if(!await fileExists(_0x32801e))return;const _0x2bd998=await moveToTrash(_0x3f4892[_0x481551(0x120)],_0x3f4892['trashDir'],_0x32801e);await cleanupEmptyDirectories(dirname(_0x32801e),_0x3f4892[_0x481551(0x104)]),void _0x2bd998;}async function moveToTrash(_0x76fab7,_0x18f141,_0x5c00dc){const _0x2b47dc=new Date()['toISOString']()['replace'](/[:.]/g,'-'),_0x37e64f=relative(_0x76fab7,_0x5c00dc),_0x448870=join(_0x18f141,_0x2b47dc,_0x37e64f);return await mkdir(dirname(_0x448870),{'recursive':!![]}),await rename(_0x5c00dc,_0x448870),_0x448870;}async function cleanupEmptyDirectories(_0x59264b,_0x236694){const _0x303dd6=a128_0x5a0159;let _0x4a047f=resolve(_0x59264b);const _0x38862d=resolve(_0x236694);while(_0x4a047f[_0x303dd6(0x119)](''+_0x38862d+sep)||_0x4a047f===_0x38862d){if(_0x4a047f===_0x38862d)return;try{const _0x25f2be=await readdir(_0x4a047f);if(_0x25f2be[_0x303dd6(0x130)]>0x0)return;await rmdir(_0x4a047f);}catch{return;}_0x4a047f=dirname(_0x4a047f);}}async function resolveTargetDbBinding(_0x3ee260,_0x17b1ac,_0xb1c681){const _0x232d12=a128_0x5a0159,_0x3fea3f=_0x17b1ac['dbDirectory'];if(!_0x3fea3f)return{'dbId':_0xb1c681[_0x232d12(0x10f)],'dbName':_0xb1c681[_0x232d12(0x12c)]};const _0x5e664b=buildDbDirectoryName(_0xb1c681['dbName'],_0xb1c681[_0x232d12(0x10f)]);if(_0x3fea3f===_0x5e664b)return{'dbId':_0xb1c681[_0x232d12(0x10f)],'dbName':_0xb1c681[_0x232d12(0x12c)]};const _0xcee13c=parseExplicitDbDirectory(_0x3fea3f);if(_0xcee13c!=null)return{'dbId':_0xcee13c,'dbName':await getDbName(_0x3ee260,_0xcee13c)[_0x232d12(0x114)](()=>undefined)};const _0x467e9c=await listDatabases(_0x3ee260),_0x1c5233=_0x467e9c[_0x232d12(0x12d)](_0x509890=>buildDbDirectoryName(_0x509890['dbName'],_0x509890['dbId'])===_0x3fea3f);if(_0x1c5233[_0x232d12(0x130)]===0x1)return{'dbId':_0x1c5233[0x0][_0x232d12(0x10f)],'dbName':_0x1c5233[0x0]['dbName']};if(_0x1c5233[_0x232d12(0x130)]===0x0)throw CliErrors[_0x232d12(0xff)](_0x232d12(0x102)+_0x3fea3f+'\x22\x20for\x20sqlCode\x20'+_0x17b1ac[_0x232d12(0x10d)]+'.');const _0x5d0959=_0x1c5233[_0x232d12(0x108)](_0x1f27c0=>_0x1f27c0['dbName']+'\x20('+_0x1f27c0[_0x232d12(0x10f)]+')')['join'](',\x20');throw CliErrors[_0x232d12(0xff)](_0x232d12(0x134)+_0x3fea3f+'\x22\x20matches\x20multiple\x20databases\x20for\x20sqlCode\x20'+_0x17b1ac[_0x232d12(0x10d)]+':\x20'+_0x5d0959);}function parseExplicitDbDirectory(_0x530b66){const _0x2b6ca7=a128_0x5a0159,_0x5b8c59=/^db-(\d+)$/[_0x2b6ca7(0x106)](_0x530b66);if(!_0x5b8c59)return null;const _0xcfc91=Number(_0x5b8c59[0x1]);return Number['isFinite'](_0xcfc91)&&_0xcfc91>0x0?_0xcfc91:null;}
|
|
1
|
+
const a128_0x5cf880=a128_0x4618;(function(_0x470965,_0x3fa04d){const _0x563285=a128_0x4618,_0xfd6194=_0x470965();while(!![]){try{const _0x383729=parseInt(_0x563285(0x15c))/0x1*(parseInt(_0x563285(0x18d))/0x2)+parseInt(_0x563285(0x180))/0x3*(parseInt(_0x563285(0x168))/0x4)+parseInt(_0x563285(0x176))/0x5+-parseInt(_0x563285(0x16d))/0x6*(-parseInt(_0x563285(0x18a))/0x7)+parseInt(_0x563285(0x164))/0x8+parseInt(_0x563285(0x14f))/0x9*(-parseInt(_0x563285(0x153))/0xa)+parseInt(_0x563285(0x162))/0xb*(-parseInt(_0x563285(0x170))/0xc);if(_0x383729===_0x3fa04d)break;else _0xfd6194['push'](_0xfd6194['shift']());}catch(_0x1b14ca){_0xfd6194['push'](_0xfd6194['shift']());}}}(a128_0x5420,0x7414c));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';function a128_0x4618(_0xce0fd9,_0x4d082d){_0xce0fd9=_0xce0fd9-0x14b;const _0x5420bb=a128_0x5420();let _0x46185b=_0x5420bb[_0xce0fd9];return _0x46185b;}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(_0x4afb2f,_0x47a392,_0x532b94){const _0x2f2b85=a128_0x4618,_0x1342ef=await scanLocalSqlQueries(_0x4afb2f),_0x27de5a=new Map();for(const _0x46abf2 of _0x1342ef){if(_0x532b94&&_0x46abf2[_0x2f2b85(0x17a)]!==_0x532b94)continue;const _0x3a424e=_0x27de5a['get'](_0x46abf2[_0x2f2b85(0x17a)])??[];_0x3a424e[_0x2f2b85(0x17e)](_0x46abf2),_0x27de5a['set'](_0x46abf2['sqlCode'],_0x3a424e);}if(_0x532b94&&!_0x27de5a[_0x2f2b85(0x160)](_0x532b94))throw CliErrors[_0x2f2b85(0x161)](_0x2f2b85(0x17b)+_0x532b94);const _0x58f2e5=[];for(const [_0x3c30ab,_0x422466]of _0x27de5a[_0x2f2b85(0x14d)]()){if(_0x422466['length']===0x1){_0x58f2e5[_0x2f2b85(0x17e)](_0x422466[0x0]);continue;}const _0x440f7a=_0x47a392[_0x2f2b85(0x187)][_0x3c30ab],_0xe99304=_0x440f7a?.[_0x2f2b85(0x15b)],_0x3c6b6e=_0xe99304?_0x422466[_0x2f2b85(0x169)](_0xd0d81a=>_0xd0d81a[_0x2f2b85(0x154)]!==_0xe99304):_0x422466;if(_0x440f7a&&_0x3c6b6e[_0x2f2b85(0x16f)]===0x1){_0x58f2e5['push'](_0x3c6b6e[0x0]);continue;}throw CliErrors[_0x2f2b85(0x161)](_0x2f2b85(0x181)+_0x3c30ab+_0x2f2b85(0x185));}return _0x58f2e5;}export const sqlPush={'service':a128_0x5cf880(0x14e),'command':a128_0x5cf880(0x17e),'description':a128_0x5cf880(0x15e),'risk':a128_0x5cf880(0x16c),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a128_0x5cf880(0x158),'type':a128_0x5cf880(0x155),'description':'Force\x20push\x20even\x20if\x20local\x20hash\x20matches\x20lock'}],async 'dryRun'(_0x3cdb8b){const _0x37a08b=a128_0x5cf880,_0x132661=loadSqlProjectConfig(_0x3cdb8b[_0x37a08b(0x165)]),_0x42b86c=await readSqlLockFile(_0x132661[_0x37a08b(0x179)]),{appLock:_0x1ba841}=ensureSqlLockScope(_0x42b86c??createEmptySqlLock(),_0x3cdb8b['appCode'],_0x132661[_0x37a08b(0x17c)],_0x37a08b(0x17e)),_0x24a36d=await getTargetSqlQueries(_0x132661,_0x1ba841,_0x3cdb8b[_0x37a08b(0x186)](_0x37a08b(0x172))||undefined),_0x45697e=[];for(const _0x593e7a of _0x24a36d){const _0xe451bc=await computeSqlFileHash(_0x593e7a[_0x37a08b(0x17f)]),_0x5d1765=_0x1ba841[_0x37a08b(0x187)][_0x593e7a[_0x37a08b(0x17a)]],_0x3cf702=!!_0x5d1765&&(_0x5d1765[_0x37a08b(0x15b)]!==_0x593e7a[_0x37a08b(0x154)]||!!_0x593e7a[_0x37a08b(0x17d)]&&_0x5d1765[_0x37a08b(0x17d)]!==_0x593e7a[_0x37a08b(0x17d)]);if(!_0x3cdb8b[_0x37a08b(0x16b)]('force')&&_0x5d1765&&_0x5d1765[_0x37a08b(0x174)]===_0xe451bc&&!_0x3cf702)continue;_0x45697e[_0x37a08b(0x17e)](_0x593e7a[_0x37a08b(0x17a)]);}return{'method':_0x37a08b(0x18c),'url':_0x37a08b(0x175),'body':{'sqlCodes':_0x45697e,'appCode':_0x3cdb8b[_0x37a08b(0x165)]},'description':_0x37a08b(0x182)+_0x45697e['length']+_0x37a08b(0x18b)};},async 'execute'(_0x2e2e69){const _0x274385=a128_0x5cf880,_0x21207c=loadSqlProjectConfig(_0x2e2e69[_0x274385(0x165)]),_0x10e8c1=await readSqlLockFile(_0x21207c[_0x274385(0x179)]),{lockData:_0x29148e,appLock:_0x227a2b}=ensureSqlLockScope(_0x10e8c1??createEmptySqlLock(),_0x2e2e69[_0x274385(0x165)],_0x21207c['sqlRoot'],_0x274385(0x17e)),_0x161df6=await getTargetSqlQueries(_0x21207c,_0x227a2b,_0x2e2e69['str'](_0x274385(0x172))||undefined);if(_0x161df6['length']===0x0)return{'ok':!![],'data':{'pushed':[],'skipped':[],'failed':[]},'message':_0x274385(0x173)};const _0x4def20=[],_0xff2f6b=[],_0x1e7ce7=[];for(const _0x5524e5 of _0x161df6){const _0x1917f5=_0x227a2b['sqls'][_0x5524e5[_0x274385(0x17a)]];if(!_0x1917f5){_0x1e7ce7[_0x274385(0x17e)]({'sqlCode':_0x5524e5[_0x274385(0x17a)],'error':_0x274385(0x159)});continue;}try{const _0x3eb66a=await computeSqlFileHash(_0x5524e5[_0x274385(0x17f)]),_0x3af6df=_0x1917f5['path']!==_0x5524e5[_0x274385(0x154)]||!!_0x5524e5[_0x274385(0x17d)]&&_0x1917f5[_0x274385(0x17d)]!==_0x5524e5[_0x274385(0x17d)];if(!_0x2e2e69[_0x274385(0x16b)](_0x274385(0x158))&&_0x1917f5['hash']===_0x3eb66a&&!_0x3af6df){_0xff2f6b[_0x274385(0x17e)]({'sqlCode':_0x5524e5[_0x274385(0x17a)],'reason':_0x274385(0x15f)});continue;}if(_0x1917f5[_0x274385(0x163)]==null){_0x1e7ce7[_0x274385(0x17e)]({'sqlCode':_0x5524e5[_0x274385(0x17a)],'error':_0x274385(0x184)});continue;}const _0x15c606=await readFile(_0x5524e5[_0x274385(0x17f)],'utf8'),_0x19ac07=stripLocalSqlMetadata(_0x15c606,_0x5524e5[_0x274385(0x171)]),_0x4889ad=_0x5524e5[_0x274385(0x17d)]||_0x1917f5['sqlName'],_0x4a7666=await resolveTargetDbBinding(_0x2e2e69[_0x274385(0x165)],_0x5524e5,_0x1917f5),_0x3cfd10=await updateSqlQuery({'id':_0x1917f5[_0x274385(0x15d)],'appCode':_0x2e2e69[_0x274385(0x165)],'sqlCode':_0x5524e5[_0x274385(0x17a)],'sqlName':_0x4889ad,'dbId':_0x4a7666[_0x274385(0x150)],'version':_0x1917f5[_0x274385(0x163)],'sqlContent':_0x19ac07,'sqlConfig':_0x1917f5['sqlConfig']??undefined}),_0x3e4ddd=_0x3cfd10[_0x274385(0x150)]?await getDbName(_0x2e2e69[_0x274385(0x165)],Number(_0x3cfd10[_0x274385(0x150)]))[_0x274385(0x151)](()=>_0x4a7666[_0x274385(0x189)]):_0x4a7666['dbName'];_0x227a2b[_0x274385(0x187)][_0x5524e5[_0x274385(0x17a)]]={...buildSqlLockEntry(_0x3cfd10,_0x19ac07,_0x3eb66a,{'dbName':_0x3e4ddd}),'path':_0x5524e5['relativePath'],'mode':_0x1917f5[_0x274385(0x171)]},await archivePreviousSqlFileIfNeeded(_0x21207c,_0x1917f5['path'],_0x5524e5[_0x274385(0x154)]),_0x4def20['push']({'sqlCode':_0x5524e5[_0x274385(0x17a)],'remoteId':_0x1917f5[_0x274385(0x15d)]});}catch(_0xcc81b6){_0x1e7ce7['push']({'sqlCode':_0x5524e5[_0x274385(0x17a)],'error':_0xcc81b6 instanceof Error?_0xcc81b6['message']:String(_0xcc81b6)});}}return _0x227a2b[_0x274385(0x16e)]=new Date()[_0x274385(0x16a)](),await writeSqlLockFile(_0x21207c[_0x274385(0x179)],_0x29148e),{'ok':_0x1e7ce7[_0x274385(0x16f)]===0x0,'data':{'pushed':_0x4def20,'skipped':_0xff2f6b,'failed':_0x1e7ce7},'message':_0x274385(0x15a)+_0x4def20[_0x274385(0x16f)]+_0x274385(0x183)+_0xff2f6b['length']+_0x274385(0x178)+_0x1e7ce7[_0x274385(0x16f)]+'\x20failed'};}};async function archivePreviousSqlFileIfNeeded(_0x5f02c6,_0x348aec,_0x155f71){const _0x325d1a=a128_0x5cf880;if(!_0x348aec||_0x348aec===_0x155f71)return;const _0x185f39=join(_0x5f02c6[_0x325d1a(0x156)],_0x348aec);if(!await fileExists(_0x185f39))return;const _0x26633e=await moveToTrash(_0x5f02c6[_0x325d1a(0x14b)],_0x5f02c6[_0x325d1a(0x188)],_0x185f39);await cleanupEmptyDirectories(dirname(_0x185f39),_0x5f02c6['sqlRootDir']),void _0x26633e;}async function moveToTrash(_0x581793,_0x3226b2,_0x8bbd06){const _0x57343d=a128_0x5cf880,_0x402b72=new Date()[_0x57343d(0x16a)]()[_0x57343d(0x157)](/[:.]/g,'-'),_0x2d03f1=relative(_0x581793,_0x8bbd06),_0x5046c2=join(_0x3226b2,_0x402b72,_0x2d03f1);return await mkdir(dirname(_0x5046c2),{'recursive':!![]}),await rename(_0x8bbd06,_0x5046c2),_0x5046c2;}async function cleanupEmptyDirectories(_0x598373,_0x4325c8){const _0x9f6a4c=a128_0x5cf880;let _0x177e6d=resolve(_0x598373);const _0x4ffad2=resolve(_0x4325c8);while(_0x177e6d[_0x9f6a4c(0x177)](''+_0x4ffad2+sep)||_0x177e6d===_0x4ffad2){if(_0x177e6d===_0x4ffad2)return;try{const _0x22998d=await readdir(_0x177e6d);if(_0x22998d[_0x9f6a4c(0x16f)]>0x0)return;await rmdir(_0x177e6d);}catch{return;}_0x177e6d=dirname(_0x177e6d);}}async function resolveTargetDbBinding(_0x748a86,_0x46c498,_0x370ebb){const _0x9ab199=a128_0x5cf880,_0x164d14=_0x46c498[_0x9ab199(0x166)];if(!_0x164d14)return{'dbId':_0x370ebb[_0x9ab199(0x150)],'dbName':_0x370ebb[_0x9ab199(0x189)]};const _0x277dbc=buildDbDirectoryName(_0x370ebb[_0x9ab199(0x189)],_0x370ebb[_0x9ab199(0x150)]);if(_0x164d14===_0x277dbc)return{'dbId':_0x370ebb[_0x9ab199(0x150)],'dbName':_0x370ebb['dbName']};const _0x4324e2=parseExplicitDbDirectory(_0x164d14);if(_0x4324e2!=null)return{'dbId':_0x4324e2,'dbName':await getDbName(_0x748a86,_0x4324e2)[_0x9ab199(0x151)](()=>undefined)};const _0xbf70c8=await listDatabases(_0x748a86),_0x4395b8=_0xbf70c8['filter'](_0x3c2e4f=>buildDbDirectoryName(_0x3c2e4f['dbName'],_0x3c2e4f[_0x9ab199(0x150)])===_0x164d14);if(_0x4395b8['length']===0x1)return{'dbId':_0x4395b8[0x0][_0x9ab199(0x150)],'dbName':_0x4395b8[0x0][_0x9ab199(0x189)]};if(_0x4395b8[_0x9ab199(0x16f)]===0x0)throw CliErrors[_0x9ab199(0x161)]('No\x20database\x20matches\x20local\x20directory\x20\x22'+_0x164d14+'\x22\x20for\x20sqlCode\x20'+_0x46c498[_0x9ab199(0x17a)]+'.');const _0x4df4b2=_0x4395b8[_0x9ab199(0x14c)](_0x21c19a=>_0x21c19a['dbName']+'\x20('+_0x21c19a[_0x9ab199(0x150)]+')')['join'](',\x20');throw CliErrors['validation'](_0x9ab199(0x152)+_0x164d14+_0x9ab199(0x167)+_0x46c498['sqlCode']+':\x20'+_0x4df4b2);}function a128_0x5420(){const _0x50b351=['push','filePath','132wTXBbM','Multiple\x20local\x20SQL\x20files\x20found\x20for\x20sqlCode\x20','Would\x20push\x20','\x20pushed,\x20','missing\x20remote\x20version;\x20run\x20`rabetbase\x20sql\x20pull`\x20to\x20refresh\x20version\x20info\x20first','.\x20Keep\x20only\x20one\x20file\x20under\x20its\x20sqlCode\x20directory\x20before\x20pushing.','str','sqls','trashDir','dbName','581IdWJAL','\x20SQL\x20file(s)','POST','34HbBGjA','projectRoot','map','entries','sql','5985JgrxTF','dbId','catch','Local\x20directory\x20\x22','240VHqkAx','relativePath','boolean','sqlRootDir','replace','force','local\x20SQL\x20is\x20not\x20tracked\x20by\x20sql.lock.json;\x20use\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first','Push\x20complete:\x20','path','29453zneTqr','remoteId','Push\x20local\x20SQL\x20files\x20to\x20remote','unchanged','has','validation','2004365TsAgNk','version','6525328UMifDg','appCode','dbDirectory','\x22\x20matches\x20multiple\x20databases\x20for\x20sqlCode\x20','40804KPWujp','filter','toISOString','bool','high-risk-write','53142vQreCz','lastSync','length','156WUIWel','mode','sqlcode','No\x20local\x20SQL\x20files\x20found.','hash','/smartapi/custom/updateUserCustomSql','1799405GsIXCZ','startsWith','\x20skipped,\x20','lockFilePath','sqlCode','Local\x20SQL\x20not\x20found:\x20','sqlRoot','sqlName'];a128_0x5420=function(){return _0x50b351;};return a128_0x5420();}function parseExplicitDbDirectory(_0x5d3956){const _0x35176f=/^db-(\d+)$/['exec'](_0x5d3956);if(!_0x35176f)return null;const _0x23f986=Number(_0x35176f[0x1]);return Number['isFinite'](_0x23f986)&&_0x23f986>0x0?_0x23f986:null;}
|
package/lib/commands/sql/save.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a129_0x4d5a(_0x42e17a,_0xefc3b3){_0x42e17a=_0x42e17a-0x83;const _0x31548f=a129_0x3154();let _0x4d5a06=_0x31548f[_0x42e17a];return _0x4d5a06;}const a129_0x431c8c=a129_0x4d5a;function a129_0x3154(){const _0x1e1b19=['557313YeGPUA','`rabetbase\x20sql\x20save`\x20has\x20been\x20deprecated.','5vTVrlQ','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`.','Target\x20database\x20—\x20accepts\x20a\x20numeric\x20ID\x20or\x20database\x20name\x20(e.g.\x20ecommerce_db)','4269904zFBdXi','sqlname','SQL\x20query\x20display\x20name','join','5071509yHwSll','validation','927292MACbyA','3bvFaLu','134974lRIhpe','3430833bGguef','write','3512586SMtsPG','string','Deprecated:\x20use\x20sql\x20create\x20to\x20create\x20and\x20sql\x20push\x20to\x20update','description'];a129_0x3154=function(){return _0x1e1b19;};return a129_0x3154();}(function(_0x1c6f90,_0x22f741){const _0x22a2f8=a129_0x4d5a,_0x4020c2=_0x1c6f90();while(!![]){try{const _0x1de763=parseInt(_0x22a2f8(0x90))/0x1+parseInt(_0x22a2f8(0x89))/0x2*(-parseInt(_0x22a2f8(0x88))/0x3)+parseInt(_0x22a2f8(0x87))/0x4*(-parseInt(_0x22a2f8(0x92))/0x5)+parseInt(_0x22a2f8(0x8c))/0x6+-parseInt(_0x22a2f8(0x8a))/0x7+parseInt(_0x22a2f8(0x95))/0x8+-parseInt(_0x22a2f8(0x85))/0x9;if(_0x1de763===_0x22f741)break;else _0x4020c2['push'](_0x4020c2['shift']());}catch(_0x3503b8){_0x4020c2['push'](_0x4020c2['shift']());}}}(a129_0x3154,0x4efe0));import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';const SQL_SAVE_DEPRECATED_HINT=[a129_0x431c8c(0x91),'Create\x20new\x20SQL\x20with\x20`rabetbase\x20sql\x20create\x20--name\x20<name>\x20--db-id\x20<id>\x20--mode\x20sql|mybatisXml`.',a129_0x431c8c(0x93)][a129_0x431c8c(0x84)]('\x0a');export const sqlSave={'service':'sql','command':'save','description':a129_0x431c8c(0x8e),'risk':a129_0x431c8c(0x8b),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':'file','type':a129_0x431c8c(0x8d),'required':!![],'description':'Path\x20to\x20the\x20SQL\x20file'},SQLCODE_FLAG_OPTIONAL,{'name':a129_0x431c8c(0x96),'type':a129_0x431c8c(0x8d),'description':a129_0x431c8c(0x83)},{'name':'db','type':a129_0x431c8c(0x8d),'description':a129_0x431c8c(0x94)},{'name':a129_0x431c8c(0x8f),'type':a129_0x431c8c(0x8d),'description':'Query\x20description'}],async 'validate'(){const _0x352a99=a129_0x431c8c;throw CliErrors[_0x352a99(0x86)](SQL_SAVE_DEPRECATED_HINT);},async 'execute'(){const _0x17fe77=a129_0x431c8c;throw CliErrors[_0x17fe77(0x86)](SQL_SAVE_DEPRECATED_HINT);}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
const a130_0xa3c748=a130_0x3875;function a130_0x3875(_0x359393,_0xf90f34){_0x359393=_0x359393-0xe8;const _0x1d6edb=a130_0x1d6e();let _0x3875fa=_0x1d6edb[_0x359393];return _0x3875fa;}(function(_0x870d59,_0x51cb2c){const _0x7a8194=a130_0x3875,_0x12783f=_0x870d59();while(!![]){try{const _0x5621af=parseInt(_0x7a8194(0xf0))/0x1+parseInt(_0x7a8194(0x107))/0x2+parseInt(_0x7a8194(0x104))/0x3+parseInt(_0x7a8194(0xfb))/0x4*(-parseInt(_0x7a8194(0xfe))/0x5)+parseInt(_0x7a8194(0x108))/0x6+-parseInt(_0x7a8194(0x110))/0x7*(parseInt(_0x7a8194(0xee))/0x8)+-parseInt(_0x7a8194(0xf5))/0x9*(parseInt(_0x7a8194(0x10f))/0xa);if(_0x5621af===_0x51cb2c)break;else _0x12783f['push'](_0x12783f['shift']());}catch(_0x1b0185){_0x12783f['push'](_0x12783f['shift']());}}}(a130_0x1d6e,0x61c70));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=a130_0xa3c748(0xf6);export function buildSqlLockEntry(_0x37f774,_0x8d7012,_0x378b81,_0x679987){const _0x59e067=a130_0xa3c748,_0x5d226c=detectSqlMode(_0x8d7012);return{'path':buildSqlRelativePath(_0x37f774[_0x59e067(0x114)],_0x37f774[_0x59e067(0xf3)],_0x679987?.[_0x59e067(0xe9)],_0x5d226c,_0x37f774[_0x59e067(0xfc)]),'hash':_0x378b81,'remoteId':_0x37f774['id'],'version':_0x37f774[_0x59e067(0x10e)],'dbId':Number(_0x37f774[_0x59e067(0xfc)]),'dbName':_0x679987?.[_0x59e067(0xe9)],'sqlName':_0x37f774[_0x59e067(0xf3)],'sqlConfig':_0x37f774[_0x59e067(0xea)]??undefined,'mode':_0x5d226c};}export function cloneSqlLockData(_0x346858){const _0xa9fb86=a130_0xa3c748;return{'apps':Object[_0xa9fb86(0x112)](Object[_0xa9fb86(0xef)](_0x346858[_0xa9fb86(0x102)])[_0xa9fb86(0x103)](([_0x2bafe2,_0xbbe654])=>[_0x2bafe2,{'sqlRoot':_0xbbe654['sqlRoot'],'lastSync':_0xbbe654[_0xa9fb86(0xf8)],'sqls':{..._0xbbe654[_0xa9fb86(0xe8)]}}]))};}export function ensureRemoteSqlContent(_0x870ec1){const _0x418669=a130_0xa3c748;return _0x870ec1[_0x418669(0x111)]??'';}export function buildLocalSqlFileContent(_0x1cd913,_0x303921,_0x588464){const _0x1d5c92=a130_0xa3c748,_0x2676fe=_0x588464?.[_0x1d5c92(0xf4)]??detectSqlMode(_0x303921),_0x5e75c1=stripLocalSqlMetadata(_0x303921,_0x2676fe)[_0x1d5c92(0xec)](),_0x1ac3cb=[...buildMetadataHeaderLines({'sqlCode':_0x1cd913[_0x1d5c92(0x114)],'sqlName':_0x1cd913[_0x1d5c92(0xf3)],'dbId':_0x1cd913[_0x1d5c92(0xfc)],'dbName':_0x588464?.['dbName'],'mode':_0x2676fe,'syncedAt':_0x588464?.[_0x1d5c92(0x10c)],'description':_0x588464?.[_0x1d5c92(0xed)]},_0x2676fe),'',_0x5e75c1],_0x54661e=_0x1ac3cb[_0x1d5c92(0xfa)]('\x0a');return _0x54661e[_0x1d5c92(0xf9)]('\x0a')?_0x54661e:_0x54661e+'\x0a';}export function stripLocalSqlMetadata(_0x7ef0be,_0x29621f){const _0x3a7c15=a130_0xa3c748,_0x29ea51=_0x7ef0be[_0x3a7c15(0xff)](/\r\n/g,'\x0a')['split']('\x0a'),_0x39b33c=[];let _0x50c619=0x0;if(_0x29621f==='mybatisXml')while(_0x50c619<_0x29ea51[_0x3a7c15(0xf2)]){const _0x159e19=_0x29ea51[_0x50c619]??'';if(/^\s*<!--\s*@lovrabet\./[_0x3a7c15(0x113)](_0x159e19)){_0x50c619++;continue;}if(_0x159e19[_0x3a7c15(0xec)]()===''&&_0x50c619>0x0){_0x50c619++;continue;}break;}else while(_0x50c619<_0x29ea51['length']){const _0x97ad34=_0x29ea51[_0x50c619]??'';if(/^\s*--\s*@lovrabet\./[_0x3a7c15(0x113)](_0x97ad34)){_0x50c619++;continue;}if(_0x97ad34[_0x3a7c15(0xec)]()===''&&_0x50c619>0x0){_0x50c619++;continue;}break;}for(;_0x50c619<_0x29ea51[_0x3a7c15(0xf2)];_0x50c619++){_0x39b33c[_0x3a7c15(0xf7)](_0x29ea51[_0x50c619]);}return _0x39b33c[_0x3a7c15(0xfa)]('\x0a')[_0x3a7c15(0x105)]();}export function resolveSqlMode(_0x51dfc9,_0x15e7f5){const _0x97215f=a130_0xa3c748;if(_0x15e7f5?.[_0x97215f(0xf4)])return _0x15e7f5[_0x97215f(0xf4)];return detectSqlMode(_0x51dfc9);}function a130_0x1d6e(){const _0x481c69=['path','version','20dGKLjW','23597xWTprx','sqlContent','fromEntries','test','sqlCode','sqls','dbName','sqlConfig','toLowerCase','trim','description','712viqzit','entries','762375QeBBgC','filter','length','sqlName','mode','1976085flSHLK','.rabetbase/sql','push','lastSync','endsWith','join','1364424LVljcS','dbId','stdin','10umfQqe','replace','yes','<!--\x20@lovrabet.','apps','map','2087487YHmcqZ','trimStart','\x20[y/N]\x20','374258loDLck','1059144dIRfxy','--\x20@lovrabet.','close','mybatisXml','syncedAt'];a130_0x1d6e=function(){return _0x481c69;};return a130_0x1d6e();}export function resolveSqlFileName(_0x38e593,_0x4076ca,_0x45daa6){const _0x5f48df=a130_0xa3c748;if(_0x45daa6?.['path'])return _0x45daa6[_0x5f48df(0x10d)];if(_0x45daa6?.[_0x5f48df(0xf3)]||_0x45daa6?.[_0x5f48df(0xe9)])return buildSqlRelativePath(_0x38e593,_0x45daa6?.[_0x5f48df(0xf3)],_0x45daa6?.[_0x5f48df(0xe9)],resolveSqlMode(_0x4076ca,_0x45daa6),_0x45daa6?.[_0x5f48df(0xfc)]);return buildDefaultSqlFileName(_0x38e593,resolveSqlMode(_0x4076ca,_0x45daa6));}export function resolveSqlLocalDir(_0x1060c6,_0x2674f8){return join(_0x1060c6,SQL_LOCAL_REL_DIR,_0x2674f8);}export async function confirmForceOverwrite(_0x3d011d){const _0x518f29=a130_0xa3c748,_0x165196=createInterface({'input':process[_0x518f29(0xfd)],'output':process['stderr']}),_0x23d2a1=await new Promise(_0x225063=>{const _0x55134a=_0x518f29;_0x165196['question'](_0x3d011d+_0x55134a(0x106),_0x225063);});return _0x165196[_0x518f29(0x10a)](),['y',_0x518f29(0x100)]['includes'](_0x23d2a1[_0x518f29(0xec)]()[_0x518f29(0xeb)]());}export function findSqlLockScope(_0x59f20e,_0x4a666e){const _0x1ecbf3=a130_0xa3c748;return _0x59f20e[_0x1ecbf3(0x102)][_0x4a666e];}function buildMetadataHeaderLines(_0x50a61d,_0x1917f7){const _0x51aa5a=a130_0xa3c748,_0x1edac7=[[_0x51aa5a(0x114),_0x50a61d[_0x51aa5a(0x114)]],[_0x51aa5a(0xf3),_0x50a61d['sqlName']],[_0x51aa5a(0xfc),_0x50a61d[_0x51aa5a(0xfc)]],[_0x51aa5a(0xe9),_0x50a61d['dbName']],[_0x51aa5a(0xf4),_0x50a61d[_0x51aa5a(0xf4)]],['syncedAt',_0x50a61d[_0x51aa5a(0x10c)]],[_0x51aa5a(0xed),_0x50a61d['description']]];if(_0x1917f7===_0x51aa5a(0x10b))return _0x1edac7[_0x51aa5a(0xf1)](([,_0x1fd029])=>_0x1fd029!==undefined&&_0x1fd029!==null&&String(_0x1fd029)[_0x51aa5a(0xec)]()!=='')[_0x51aa5a(0x103)](([_0x458b6a,_0x2e92ee])=>_0x51aa5a(0x101)+_0x458b6a+':\x20'+String(_0x2e92ee)+'\x20-->');return _0x1edac7[_0x51aa5a(0xf1)](([,_0x429af6])=>_0x429af6!==undefined&&_0x429af6!==null&&String(_0x429af6)[_0x51aa5a(0xec)]()!=='')[_0x51aa5a(0x103)](([_0x472604,_0x1b69ee])=>_0x51aa5a(0x109)+_0x472604+':\x20'+String(_0x1b69ee));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a131_0x11d6ff=a131_0x7981;(function(_0x4c6672,_0xa4c72b){const _0x1a9011=a131_0x7981,_0x327bf5=_0x4c6672();while(!![]){try{const _0x400662=-parseInt(_0x1a9011(0xe4))/0x1*(parseInt(_0x1a9011(0xfb))/0x2)+parseInt(_0x1a9011(0xf3))/0x3*(-parseInt(_0x1a9011(0xf6))/0x4)+parseInt(_0x1a9011(0x104))/0x5*(-parseInt(_0x1a9011(0xfa))/0x6)+-parseInt(_0x1a9011(0x105))/0x7*(parseInt(_0x1a9011(0xe7))/0x8)+parseInt(_0x1a9011(0xeb))/0x9*(-parseInt(_0x1a9011(0xef))/0xa)+-parseInt(_0x1a9011(0xf1))/0xb*(parseInt(_0x1a9011(0xfe))/0xc)+-parseInt(_0x1a9011(0xf2))/0xd*(-parseInt(_0x1a9011(0xf5))/0xe);if(_0x400662===_0xa4c72b)break;else _0x327bf5['push'](_0x327bf5['shift']());}catch(_0x5e1727){_0x327bf5['push'](_0x327bf5['shift']());}}}(a131_0x7e41,0x65177));import{listSqlQueries}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{scanLocalSqlQueries}from'../../core/sql-sync/file-system.js';import{computeSqlFileHash}from'../../core/sql-sync/hash.js';function a131_0x7981(_0x3e323b,_0x2888ae){_0x3e323b=_0x3e323b-0xe4;const _0x7e418e=a131_0x7e41();let _0x798128=_0x7e418e[_0x3e323b];return _0x798128;}function a131_0x7e41(){const _0x552d64=['Also\x20check\x20for\x20remote-only\x20SQL\x20queries\x20not\x20present\x20locally','\x20added,\x20','map','10uzkmBB','bool','319ZWtrGC','130jKhzTh','3HsdRdi','relativePath','4581220pXbzTC','446300RfhUrW','remote','keys','\x20remote-only','54yLXZwt','203482GNrxvW','lockFilePath','sqls','81936iawkQo','appCode','boolean','Check\x20local\x20SQL\x20sync\x20status\x20against\x20lock\x20file','length','status','349235EDmGOg','216559PBUMdn','sqlName','lockKey','sqlRoot','paging','has','7FMqZYr','\x20unchanged','filePath','152pKdzVS','push','hash','\x20modified,\x20','5580261lSHjPt'];a131_0x7e41=function(){return _0x552d64;};return a131_0x7e41();}import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile}from'../../core/sql-sync/lock.js';const PAGE_SIZE=0x64;async function fetchAllSqlCodes(_0x8b29f9){const _0x3a0dde=a131_0x7981,_0x1cb16e=[];let _0x45a5fe=0x1;while(!![]){const _0x9ea499=await listSqlQueries(_0x8b29f9,{'currentPage':_0x45a5fe,'pageSize':PAGE_SIZE}),_0x30e0e5=_0x9ea499['tableData']??[];_0x1cb16e[_0x3a0dde(0xe8)](..._0x30e0e5[_0x3a0dde(0xee)](_0x5e7426=>_0x5e7426['sqlCode']));if(_0x30e0e5[_0x3a0dde(0x102)]===0x0)break;const _0x2e50d0=_0x9ea499[_0x3a0dde(0x109)]?.['totalCount'];if(_0x2e50d0!=null?_0x1cb16e[_0x3a0dde(0x102)]>=_0x2e50d0:_0x30e0e5[_0x3a0dde(0x102)]<PAGE_SIZE)break;_0x45a5fe++;}return _0x1cb16e;}export const sqlStatus={'service':'sql','command':a131_0x11d6ff(0x103),'description':a131_0x11d6ff(0x101),'risk':'read','flags':[{'name':a131_0x11d6ff(0xf7),'type':a131_0x11d6ff(0x100),'description':a131_0x11d6ff(0xec)}],async 'execute'(_0x3ca3c1){const _0x441a65=a131_0x11d6ff,_0x57fa7a=loadSqlProjectConfig(_0x3ca3c1[_0x441a65(0xff)]),_0x426842=await readSqlLockFile(_0x57fa7a[_0x441a65(0xfc)]),{appLock:_0x2ea26c}=ensureSqlLockScope(_0x426842??createEmptySqlLock(),_0x57fa7a[_0x441a65(0xff)],_0x57fa7a[_0x441a65(0x108)],_0x441a65(0x103)),_0x47a45a=await scanLocalSqlQueries(_0x57fa7a),_0x1aa817=[],_0x2a5a61=[],_0x46b7de=[],_0x29937a=[],_0x4d22e3=new Set(_0x47a45a['map'](_0xe93715=>_0xe93715[_0x441a65(0x107)]));for(const _0x18a928 of _0x47a45a){const _0x26539f=await computeSqlFileHash(_0x18a928[_0x441a65(0xe6)]),_0x17ca31=_0x2ea26c[_0x441a65(0xfd)][_0x18a928['lockKey']],_0x28f177=!!_0x17ca31&&_0x17ca31['path']!==_0x18a928[_0x441a65(0xf4)],_0x33817d=!!_0x17ca31&&!!_0x18a928['sqlName']&&_0x17ca31[_0x441a65(0x106)]!==_0x18a928[_0x441a65(0x106)];if(!_0x17ca31)_0x1aa817['push'](_0x18a928['lockKey']);else _0x17ca31[_0x441a65(0xe9)]!==_0x26539f||_0x28f177||_0x33817d?_0x2a5a61[_0x441a65(0xe8)](_0x18a928['lockKey']):_0x46b7de[_0x441a65(0xe8)](_0x18a928[_0x441a65(0x107)]);}for(const _0x2bcc45 of Object[_0x441a65(0xf8)](_0x2ea26c[_0x441a65(0xfd)])){!_0x4d22e3[_0x441a65(0x10a)](_0x2bcc45)&&_0x29937a['push'](_0x2bcc45);}const _0x55ca50=[];if(_0x3ca3c1[_0x441a65(0xf0)](_0x441a65(0xf7))){const _0x69b49d=await fetchAllSqlCodes(_0x3ca3c1[_0x441a65(0xff)]);for(const _0x194f05 of _0x69b49d){!_0x4d22e3['has'](_0x194f05)&&!_0x2ea26c[_0x441a65(0xfd)][_0x194f05]&&_0x55ca50[_0x441a65(0xe8)](_0x194f05);}}const _0x366915=_0x1aa817[_0x441a65(0x102)]===0x0&&_0x2a5a61[_0x441a65(0x102)]===0x0&&_0x29937a[_0x441a65(0x102)]===0x0&&_0x55ca50['length']===0x0;return{'ok':!![],'data':{'added':_0x1aa817,'modified':_0x2a5a61,'missing':_0x29937a,'unchanged':_0x46b7de,'remoteOnly':_0x55ca50},'message':_0x366915?'All\x20SQL\x20queries\x20are\x20in\x20sync.':_0x1aa817['length']+_0x441a65(0xed)+_0x2a5a61[_0x441a65(0x102)]+_0x441a65(0xea)+_0x29937a['length']+'\x20missing,\x20'+_0x46b7de[_0x441a65(0x102)]+_0x441a65(0xe5)+(_0x55ca50['length']>0x0?',\x20'+_0x55ca50[_0x441a65(0x102)]+_0x441a65(0xf9):'')};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a132_0x58043a=a132_0x497c;(function(_0x524646,_0x5a6c99){const _0x5563b1=a132_0x497c,_0xd12ccf=_0x524646();while(!![]){try{const _0x3860cf=-parseInt(_0x5563b1(0x1f1))/0x1+parseInt(_0x5563b1(0x1f7))/0x2*(-parseInt(_0x5563b1(0x1dc))/0x3)+-parseInt(_0x5563b1(0x1e8))/0x4+parseInt(_0x5563b1(0x1e3))/0x5+parseInt(_0x5563b1(0x201))/0x6+-parseInt(_0x5563b1(0x1e7))/0x7*(-parseInt(_0x5563b1(0x208))/0x8)+parseInt(_0x5563b1(0x1fc))/0x9;if(_0x3860cf===_0x5a6c99)break;else _0xd12ccf['push'](_0xd12ccf['shift']());}catch(_0x1225ce){_0xd12ccf['push'](_0xd12ccf['shift']());}}}(a132_0x3d0b,0x629d1));function a132_0x3d0b(){const _0x5525d8=['message','str','valid','\x22\x20not\x20found\x20or\x20not\x20accessible','43288HLSOey','utf-8','push','470853ZeEeZS','trim','tableName','schemas','cwd','Inline\x20SQL\x20content\x20to\x20validate\x20(alternative\x20to\x20--file)','fields','2434610ljPbUa','split','validate','size','119tliudY','1221096OVmLtQ','file','File\x20not\x20found:\x20','type','parameters','filter','Comma-separated\x20dataset\x20codes\x20to\x20cross-check\x20table/column\x20names\x20against','get','isArray','359162ISDTVC','Validate\x20SQL\x20content\x20without\x20saving\x20(type\x20detection,\x20parameter\x20extraction,\x20optional\x20schema\x20check)','reason','map','string','Dataset\x20\x22','6VrotHT','validation','sql','isDangerous','schema:','5856570OTYEuF','dbtableConfig','\x22\x20not\x20found\x20in\x20any\x20dataset','sqlType','toLowerCase','1857426MqakSX','appCode','Table\x20\x22'];a132_0x3d0b=function(){return _0x5525d8;};return a132_0x3d0b();}import{readFileSync,existsSync}from'node:fs';import{resolve}from'node:path';function a132_0x497c(_0x357f1a,_0x545ef7){_0x357f1a=_0x357f1a-0x1db;const _0x3d0b13=a132_0x3d0b();let _0x497c94=_0x3d0b13[_0x357f1a];return _0x497c94;}import{validateSql}from'../../core/sql-validator.js';import{getDatasetDetail,listDatasets}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{assertDatasetIsDbTableBacked,filterDbTableBackedDatasets}from'../../commands/dataset/capability.js';export const sqlValidate={'service':a132_0x58043a(0x1f9),'command':a132_0x58043a(0x1e5),'description':a132_0x58043a(0x1f2),'risk':'read','flags':[{'name':'file','type':a132_0x58043a(0x1f5),'description':'Path\x20to\x20the\x20SQL\x20file\x20to\x20validate'},{'name':a132_0x58043a(0x1f9),'type':a132_0x58043a(0x1f5),'description':a132_0x58043a(0x1e1)},{'name':a132_0x58043a(0x1df),'type':a132_0x58043a(0x1f5),'description':a132_0x58043a(0x1ee)}],async 'execute'(_0x185bd8){const _0xba3cbd=a132_0x58043a,_0x278dbd=_0x185bd8[_0xba3cbd(0x205)](_0xba3cbd(0x1e9)),_0x25bceb=_0x185bd8[_0xba3cbd(0x205)]('sql');if(!_0x278dbd&&!_0x25bceb)throw CliErrors['flagMissing'](_0xba3cbd(0x1e9),'Provide\x20--file\x20or\x20--sql');let _0x4ad2b1;if(_0x278dbd){const _0x47dde1=resolve(process[_0xba3cbd(0x1e0)](),_0x278dbd);if(!existsSync(_0x47dde1))throw CliErrors[_0xba3cbd(0x1f8)](_0xba3cbd(0x1ea)+_0x47dde1);_0x4ad2b1=readFileSync(_0x47dde1,_0xba3cbd(0x209));}else _0x4ad2b1=_0x25bceb;const _0xe81b4c=validateSql(_0x4ad2b1),_0x32d504={'valid':_0xe81b4c[_0xba3cbd(0x206)],'sqlType':_0xe81b4c[_0xba3cbd(0x1ff)][_0xba3cbd(0x1eb)],'isSelectOnly':_0xe81b4c['sqlType']['isSelectOnly'],'isDangerous':_0xe81b4c[_0xba3cbd(0x1ff)][_0xba3cbd(0x1fa)],'tables':_0xe81b4c['tables'],'parameters':_0xe81b4c[_0xba3cbd(0x1ec)],'message':_0xe81b4c['message']};_0xe81b4c[_0xba3cbd(0x1ff)][_0xba3cbd(0x1f3)]&&(_0x32d504[_0xba3cbd(0x1f3)]=_0xe81b4c[_0xba3cbd(0x1ff)][_0xba3cbd(0x1f3)]);const _0x3703b0=_0x185bd8[_0xba3cbd(0x205)](_0xba3cbd(0x1df));if(_0x3703b0&&_0xe81b4c['valid']){const _0x2b8927=_0x3703b0[_0xba3cbd(0x1e4)](',')[_0xba3cbd(0x1f4)](_0x275083=>_0x275083[_0xba3cbd(0x1dd)]())[_0xba3cbd(0x1ed)](Boolean),_0x20497f=[],_0x2d1ed0=filterDbTableBackedDatasets(await listDatasets(_0x185bd8[_0xba3cbd(0x202)])),_0x4265fb=new Map(_0x2d1ed0[_0xba3cbd(0x1f4)](_0x4938e4=>[_0x4938e4['dbtableConfig']?.['tableName']?.[_0xba3cbd(0x200)](),_0x4938e4]));for(const _0x21b9b1 of _0xe81b4c['tables']){const _0x52e53f=_0x4265fb[_0xba3cbd(0x1ef)](_0x21b9b1[_0xba3cbd(0x200)]());!_0x52e53f&&_0x20497f[_0xba3cbd(0x1db)](_0xba3cbd(0x203)+_0x21b9b1+_0xba3cbd(0x1fe));}for(const _0x36f83d of _0x2b8927){let _0x598999;try{_0x598999=await getDatasetDetail(_0x36f83d);}catch{_0x20497f[_0xba3cbd(0x1db)](_0xba3cbd(0x1f6)+_0x36f83d+_0xba3cbd(0x207));continue;}assertDatasetIsDbTableBacked(_0x598999,'SQL\x20schema\x20validation');const _0x1db67f=Array[_0xba3cbd(0x1f0)](_0x598999[_0xba3cbd(0x1e2)])?_0x598999['fields']:[],_0x416c4a=new Set(_0x1db67f[_0xba3cbd(0x1f4)](_0x3432b2=>_0x3432b2['name']?.[_0xba3cbd(0x200)]())),_0x4cade6=_0x598999[_0xba3cbd(0x1fd)]?.['tableName']||_0x598999[_0xba3cbd(0x1de)]||_0x36f83d;_0x32d504[_0xba3cbd(0x1fb)+_0x4cade6]={'code':_0x36f83d,'tableName':_0x4cade6,'fieldCount':_0x416c4a[_0xba3cbd(0x1e6)],'fields':Array['from'](_0x416c4a)};}_0x20497f['length']>0x0&&(_0x32d504['schemaWarnings']=_0x20497f);}return{'ok':_0xe81b4c[_0xba3cbd(0x206)],'data':_0x32d504,'message':_0xe81b4c[_0xba3cbd(0x204)]};}};
|
package/lib/config/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a133_0x1aa9e0=a133_0x2038;(function(_0x2e64f2,_0x4abdd9){const _0x52a856=a133_0x2038,_0x414f9f=_0x2e64f2();while(!![]){try{const _0x1ba2c9=parseInt(_0x52a856(0x151))/0x1*(parseInt(_0x52a856(0x158))/0x2)+-parseInt(_0x52a856(0x16d))/0x3*(parseInt(_0x52a856(0x160))/0x4)+-parseInt(_0x52a856(0x150))/0x5*(-parseInt(_0x52a856(0x170))/0x6)+-parseInt(_0x52a856(0x15b))/0x7+-parseInt(_0x52a856(0x15a))/0x8+parseInt(_0x52a856(0x174))/0x9*(parseInt(_0x52a856(0x169))/0xa)+-parseInt(_0x52a856(0x16a))/0xb;if(_0x1ba2c9===_0x4abdd9)break;else _0x414f9f['push'](_0x414f9f['shift']());}catch(_0x591940){_0x414f9f['push'](_0x414f9f['shift']());}}}(a133_0x33e4,0xbadd3));import{DEFAULT_CONFIG_VALUES}from'../constant/defaults.js';import{RABETBASE_ENV_VALUES}from'../constant/env.js';function a133_0x33e4(){const _0x2086a3=['Auth\x20cookie','apiDir','string','appcode','defaultApp','Access\x20key','3372bwiFbb','keys','1919816KMNqlJ','7633997nMgSHg','inherit','toLowerCase','en-US','entries','8fbSVtj','Config\x20key\x20(','trim','cookie','locale','apps','defaultFormat','riskLevel','filter','174470osnWKr','1221253opNlNz','zh-CN','app','593841unKGuq','Default\x20page\x20size','accessKey','6242466QZXEjM','format','has','Risk\x20level','639aoltXE','Default\x20output\x20format\x20for\x20this\x20app\x20(profile)','API\x20directory\x20path','env','number','join','map','pageSize','Locale','5NuKAbI','192lyVYXl'];a133_0x33e4=function(){return _0x2086a3;};return a133_0x33e4();}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_0x1aa9e0(0x163),'accessKey',a133_0x1aa9e0(0x164),a133_0x1aa9e0(0x171),a133_0x1aa9e0(0x167)];export const TOP_LEVEL_CONFIG_KEYS=new Set([a133_0x1aa9e0(0x155),a133_0x1aa9e0(0x177),a133_0x1aa9e0(0x164),'format',a133_0x1aa9e0(0x163),a133_0x1aa9e0(0x16f),a133_0x1aa9e0(0x153)]);export const CONFIG_ENUM_VALUES={'env':[...RABETBASE_ENV_VALUES],'format':[...RABETBASE_OUTPUT_FORMAT_VALUES]};export function formatConfigKeyList(_0x3d6dc5){const _0x52e11a=a133_0x1aa9e0;return[..._0x3d6dc5][_0x52e11a(0x179)](',\x20');}export function getTopLevelConfigKeyList(){return[...TOP_LEVEL_CONFIG_KEYS];}export function isTopLevelConfigKey(_0x4764fb){const _0x47d8b5=a133_0x1aa9e0;return TOP_LEVEL_CONFIG_KEYS[_0x47d8b5(0x172)](_0x4764fb);}export function getTopLevelConfigKeySummary(){return formatConfigKeyList(getTopLevelConfigKeyList());}export function getConfigCommandKeyDescription(){const _0x1f27ce=a133_0x1aa9e0;return _0x1f27ce(0x161)+getTopLevelConfigKeySummary()+')';}export const APP_PROFILE_FLAG_KEY_MAP={'env':'env','apiDir':a133_0x1aa9e0(0x153),'cookie':'cookie','accessKey':a133_0x1aa9e0(0x16f),'defaultFormat':a133_0x1aa9e0(0x171),'pageSize':a133_0x1aa9e0(0x14e),'riskLevel':a133_0x1aa9e0(0x167),'locale':'locale'};export function getAppProfileFlagDefs(){const _0x56c181=a133_0x1aa9e0;return[{'name':_0x56c181(0x177),'type':_0x56c181(0x154),'description':'Target\x20environment','enum':[...RABETBASE_ENV_VALUES]},{'name':'apiDir','type':'string','description':_0x56c181(0x176)},{'name':_0x56c181(0x163),'type':'string','description':_0x56c181(0x152),'hidden':!![]},{'name':_0x56c181(0x16f),'type':_0x56c181(0x154),'description':_0x56c181(0x157),'hidden':!![]},{'name':_0x56c181(0x166),'type':_0x56c181(0x154),'description':_0x56c181(0x175),'enum':[...RABETBASE_OUTPUT_FORMAT_VALUES]},{'name':'pageSize','type':_0x56c181(0x178),'description':_0x56c181(0x16e)},{'name':_0x56c181(0x167),'type':_0x56c181(0x154),'description':_0x56c181(0x173),'enum':[...RISK_LEVEL_VALUES]},{'name':_0x56c181(0x164),'type':_0x56c181(0x154),'description':_0x56c181(0x14f)}];}function a133_0x2038(_0x17ebda,_0x35e9b7){_0x17ebda=_0x17ebda-0x14d;const _0x33e47c=a133_0x33e4();let _0x2038f4=_0x33e47c[_0x17ebda];return _0x2038f4;}export function collectAppProfileOverrides(_0x208375){const _0x219e65=a133_0x1aa9e0,_0x52d243={};for(const [_0x3a26b0,_0x58ceae]of Object[_0x219e65(0x15f)](APP_PROFILE_FLAG_KEY_MAP)){const _0x20ce6e=_0x208375(_0x3a26b0);if(!_0x20ce6e)continue;_0x52d243[_0x58ceae]=_0x58ceae===_0x219e65(0x14e)?Number(_0x20ce6e):_0x20ce6e;}return _0x52d243;}export function buildAppProfileListFields(_0x4dead4){const _0x499a66=a133_0x1aa9e0;return{'env':_0x4dead4[_0x499a66(0x177)]??null,'apiDir':_0x4dead4[_0x499a66(0x153)]??null,'hasCookie':!!_0x4dead4['cookie'],'hasAccessKey':!!_0x4dead4[_0x499a66(0x16f)],'format':_0x4dead4['format']??null,'pageSize':_0x4dead4['pageSize']??null,'riskLevel':_0x4dead4['riskLevel']??null,'locale':_0x4dead4['locale']??null};}export function buildAppDoctorFields(_0x21b7d6,_0xb84ac5){const _0xa1c0a9=a133_0x1aa9e0;return{'env':{'value':_0x21b7d6[_0xa1c0a9(0x177)]||_0xb84ac5[_0xa1c0a9(0x177)],'source':_0x21b7d6['env']?'app':_0xa1c0a9(0x15c)},'apiDir':{'value':_0x21b7d6[_0xa1c0a9(0x153)]||_0xb84ac5[_0xa1c0a9(0x153)],'source':_0x21b7d6[_0xa1c0a9(0x153)]?_0xa1c0a9(0x16c):_0xa1c0a9(0x15c)},'cookie':{'value':_0x21b7d6['cookie']||_0xb84ac5[_0xa1c0a9(0x163)],'source':_0x21b7d6[_0xa1c0a9(0x163)]?_0xa1c0a9(0x16c):'inherit'},'accessKey':{'value':_0x21b7d6[_0xa1c0a9(0x16f)]||_0xb84ac5[_0xa1c0a9(0x16f)],'source':_0x21b7d6[_0xa1c0a9(0x16f)]?_0xa1c0a9(0x16c):_0xa1c0a9(0x15c)}};}export function buildCanonicalAppConfig(_0x412b53,_0x18a1be){const _0x240835=a133_0x1aa9e0,_0x59617a=_0x412b53[_0x240835(0x14d)](_0x100ee3=>String(_0x100ee3||'')[_0x240835(0x162)]())[_0x240835(0x168)](Boolean);if(_0x59617a['length']===0x0)return{};const _0x4fec6d={};for(const _0x6f004c of _0x59617a){_0x4fec6d[_0x6f004c]=_0x18a1be?{'appcode':_0x6f004c,'env':_0x18a1be}:{'appcode':_0x6f004c};}return{'apps':_0x4fec6d,'defaultApp':_0x59617a[0x0]};}export function buildCanonicalProjectConfig(_0x23755e,_0xbab17e){const _0x9fc2e1=a133_0x1aa9e0,{appCodes:appCodes=[],env:_0xf1d998,metadata:_0x3f0168}=_0xbab17e,_0x4a0170={..._0x23755e,..._0x3f0168||{}};delete _0x4a0170[_0x9fc2e1(0x155)],delete _0x4a0170['app'];if(_0xf1d998)_0x4a0170['env']=_0xf1d998;else!_0x4a0170[_0x9fc2e1(0x177)]&&(_0x4a0170['env']=DEFAULT_CONFIG_VALUES[_0x9fc2e1(0x177)]);const _0x5e3c47=buildCanonicalAppConfig(appCodes,_0x4a0170[_0x9fc2e1(0x177)]);return Object[_0x9fc2e1(0x159)](_0x5e3c47)['length']>0x0&&(_0x4a0170[_0x9fc2e1(0x165)]=_0x5e3c47[_0x9fc2e1(0x165)],_0x4a0170[_0x9fc2e1(0x156)]=_0x5e3c47['defaultApp']),_0x4a0170;}const LOCALE_MAP={'zh':a133_0x1aa9e0(0x16b),'zh-cn':a133_0x1aa9e0(0x16b),'zh_cn':a133_0x1aa9e0(0x16b),'en':'en-US','en-us':a133_0x1aa9e0(0x15e),'en_us':a133_0x1aa9e0(0x15e)};export function normalizeLocale(_0x1ad164){const _0x9628cd=a133_0x1aa9e0;if(!_0x1ad164)return null;return LOCALE_MAP[_0x1ad164[_0x9628cd(0x15d)]()]??null;}
|
package/lib/constant/cdn.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a134_0x1264f6=a134_0x2c33;function a134_0x2c33(_0x51e29a,_0x59a402){_0x51e29a=_0x51e29a-0x1ef;const _0xedb35e=a134_0xedb3();let _0x2c3380=_0xedb35e[_0x51e29a];return _0x2c3380;}function a134_0xedb3(){const _0xfd39ca=['24212556RjMWnZ','2tIAoAz','6hkxddc','https://g.lovrabet.com/dist/rabetbase-cli/config/index.json','662985EuKCbc','1223365Wdmmwg','1340176fHnixs','8715469JoZDwW','5052512JXmSan','4290753QpWHex'];a134_0xedb3=function(){return _0xfd39ca;};return a134_0xedb3();}(function(_0x22fc64,_0x345c07){const _0x533a3b=a134_0x2c33,_0x4c7450=_0x22fc64();while(!![]){try{const _0x42f4de=-parseInt(_0x533a3b(0x1f3))/0x1+parseInt(_0x533a3b(0x1ef))/0x2*(parseInt(_0x533a3b(0x1f7))/0x3)+-parseInt(_0x533a3b(0x1f4))/0x4+parseInt(_0x533a3b(0x1f2))/0x5+parseInt(_0x533a3b(0x1f0))/0x6*(-parseInt(_0x533a3b(0x1f5))/0x7)+-parseInt(_0x533a3b(0x1f6))/0x8+parseInt(_0x533a3b(0x1f8))/0x9;if(_0x42f4de===_0x345c07)break;else _0x4c7450['push'](_0x4c7450['shift']());}catch(_0x377990){_0x4c7450['push'](_0x4c7450['shift']());}}}(a134_0xedb3,0xc7bac));export const CLI_VERSION_POLICY_URL=a134_0x1264f6(0x1f1);
|
package/lib/constant/cli.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a135_0x2beecb=a135_0x22cf;(function(_0x5f3555,_0x2cbdc1){const _0x4476ce=a135_0x22cf,_0x3e809b=_0x5f3555();while(!![]){try{const _0x39ac0c=-parseInt(_0x4476ce(0xc8))/0x1+parseInt(_0x4476ce(0xe1))/0x2*(-parseInt(_0x4476ce(0x105))/0x3)+-parseInt(_0x4476ce(0x10d))/0x4+-parseInt(_0x4476ce(0x11b))/0x5+-parseInt(_0x4476ce(0xe5))/0x6+parseInt(_0x4476ce(0xbe))/0x7+parseInt(_0x4476ce(0x10e))/0x8;if(_0x39ac0c===_0x2cbdc1)break;else _0x3e809b['push'](_0x3e809b['shift']());}catch(_0x478665){_0x3e809b['push'](_0x3e809b['shift']());}}}(a135_0x5ee9,0x616df));export const CLI_BIN_NAME=a135_0x2beecb(0x113);function a135_0x22cf(_0x397c25,_0x17d18a){_0x397c25=_0x397c25-0xba;const _0x5ee9ba=a135_0x5ee9();let _0x22cf82=_0x5ee9ba[_0x397c25];return _0x22cf82;}export const CLI_DISPLAY_NAME=a135_0x2beecb(0x108);export const NPM_PACKAGE_NAME=a135_0x2beecb(0xce);function a135_0x5ee9(){const _0x28fe3e=['code','SQL\x20name','boolean','rabetbase','description','<name>','Output\x20path','JSON\x20params','Clear','Skip\x20import\x20generation','meowKey','2293980wgrXGd','DB\x20ID','confirm','file','page','type','map','yes','verbose','5364401OTKXVJ','description-file','Function\x20node','operation','sql-name','Name','value','enable-bff-save','Config\x20value','Show\x20help','634383JQVfVm','expectedCount','key','Enable\x20BFF\x20save','watch','Type\x20filter','@lovrabet/rabetbase-cli','production\x20|\x20daily','Target\x20path','Expected\x20affected\x20count','descriptionFile','Operation\x20type','dbid','Alias\x20for\x20--non-interactive','keyword','Filter\x20JSON\x20output\x20(JQ_PATH\x20>\x20bundled\x20jq\x20>\x20PATH;\x20use\x20with\x20--format\x20json\x20or\x20compress)','SQL\x20code','remote','Environment','nonInteractive','pagesize','Title','Skip\x20confirmation\x20for\x20high-risk\x20writes','<expr>','Schemas','928AquqzU','sql','target','sqlName','4625304VzvurU','operation-type','appcode','dry-run','format','Preview\x20operation\x20without\x20executing','force','all','skip-imports','Confirm\x20destructive\x20action','Record\x20ID','help','function-node','Verbose\x20output','project','SQL\x20string','Page\x20number','operationType','sqlcode','string','Use\x20global\x20config\x20scope','output','Keyword\x20filter','datasetcode','Config\x20key','name','env','params','app','File\x20path','Override\x20appcode','non-interactive','3177JsDJdB','sqlname','title','Rabetbase\x20CLI','db-id','clear','global','Force\x20overwrite','1896852ROseWT','19699040uPKyhX','Code\x20filter'];a135_0x5ee9=function(){return _0x28fe3e;};return a135_0x5ee9();}export const GLOBAL_FLAGS=[{'name':'appcode','meowKey':a135_0x2beecb(0xe7),'type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0x103),'hint':'<code>'},{'name':a135_0x2beecb(0x101),'meowKey':a135_0x2beecb(0x101),'type':'string','description':'Select\x20app\x20profile\x20by\x20name','hint':a135_0x2beecb(0x115)},{'name':a135_0x2beecb(0xff),'meowKey':'env','type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0xda),'hint':a135_0x2beecb(0xcf)},{'name':a135_0x2beecb(0xe9),'meowKey':a135_0x2beecb(0xe9),'type':'string','description':'Output\x20format','hint':'json\x20|\x20pretty\x20|\x20compress'},{'name':'jq','meowKey':'jq','type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0xd7),'hint':a135_0x2beecb(0xdf)},{'name':a135_0x2beecb(0xe8),'meowKey':'dryRun','type':a135_0x2beecb(0x112),'description':a135_0x2beecb(0xea)},{'name':a135_0x2beecb(0xbc),'meowKey':a135_0x2beecb(0xbc),'type':a135_0x2beecb(0x112),'description':a135_0x2beecb(0xde)},{'name':a135_0x2beecb(0x104),'meowKey':a135_0x2beecb(0xdb),'type':a135_0x2beecb(0x112),'description':'Force\x20non-interactive\x20mode\x20(CI)'},{'name':a135_0x2beecb(0x10b),'meowKey':a135_0x2beecb(0x10b),'type':'boolean','description':a135_0x2beecb(0xf9)},{'name':a135_0x2beecb(0xf3),'meowKey':'project','type':a135_0x2beecb(0x112),'description':'Use\x20project\x20config\x20scope'},{'name':'ci','meowKey':'ci','type':'boolean','description':a135_0x2beecb(0xd5),'hidden':!![]},{'name':'help','meowKey':a135_0x2beecb(0xf0),'type':a135_0x2beecb(0x112),'description':a135_0x2beecb(0xc7)},{'name':a135_0x2beecb(0xfe),'meowKey':a135_0x2beecb(0xfe),'type':'string','description':a135_0x2beecb(0xc3),'hidden':!![]},{'name':'title','meowKey':a135_0x2beecb(0x107),'type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0xdd),'hidden':!![]},{'name':a135_0x2beecb(0x10a),'meowKey':'clear','type':a135_0x2beecb(0x112),'description':a135_0x2beecb(0x118),'hidden':!![]},{'name':a135_0x2beecb(0xcc),'meowKey':a135_0x2beecb(0xcc),'type':'boolean','description':'Watch\x20mode','hidden':!![]},{'name':'output','meowKey':a135_0x2beecb(0xfa),'type':'string','description':a135_0x2beecb(0x116),'hidden':!![]},{'name':a135_0x2beecb(0x100),'meowKey':'params','type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0x117),'hidden':!![]},{'name':a135_0x2beecb(0xfc),'meowKey':'datasetcode','type':'string','description':'Dataset\x20code','hidden':!![]},{'name':a135_0x2beecb(0xec),'meowKey':a135_0x2beecb(0xec),'type':a135_0x2beecb(0x112),'description':'Apply\x20to\x20all','hidden':!![]},{'name':a135_0x2beecb(0xc5),'meowKey':'enableBffSave','type':a135_0x2beecb(0x112),'description':a135_0x2beecb(0xcb),'hidden':!![]},{'name':'id','meowKey':'id','type':'string','description':a135_0x2beecb(0xef),'hidden':!![]},{'name':a135_0x2beecb(0xba),'meowKey':'type','type':'string','description':a135_0x2beecb(0xcd),'hidden':!![]},{'name':'file','meowKey':a135_0x2beecb(0x11e),'type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0x102),'hidden':!![]},{'name':a135_0x2beecb(0xf7),'meowKey':a135_0x2beecb(0xf7),'type':'string','description':a135_0x2beecb(0xd8),'hidden':!![]},{'name':a135_0x2beecb(0xc2),'meowKey':a135_0x2beecb(0xe4),'type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0x111),'hidden':!![]},{'name':a135_0x2beecb(0x106),'meowKey':a135_0x2beecb(0x106),'type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0x111),'hidden':!![]},{'name':a135_0x2beecb(0x109),'meowKey':'dbId','type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0x11c),'hidden':!![]},{'name':a135_0x2beecb(0xd4),'meowKey':a135_0x2beecb(0xd4),'type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0x11c),'hidden':!![]},{'name':a135_0x2beecb(0x114),'meowKey':a135_0x2beecb(0x114),'type':a135_0x2beecb(0xf8),'description':'Description','hidden':!![]},{'name':a135_0x2beecb(0xbf),'meowKey':a135_0x2beecb(0xd2),'type':a135_0x2beecb(0xf8),'description':'Description\x20file','hidden':!![]},{'name':'page','meowKey':a135_0x2beecb(0x11f),'type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0xf5),'hidden':!![]},{'name':a135_0x2beecb(0xdc),'meowKey':'pagesize','type':'string','description':'Page\x20size','hidden':!![]},{'name':'keyword','meowKey':a135_0x2beecb(0xd6),'type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0xfb),'hidden':!![]},{'name':a135_0x2beecb(0x110),'meowKey':a135_0x2beecb(0x110),'type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0x10f),'hidden':!![]},{'name':a135_0x2beecb(0xe2),'meowKey':a135_0x2beecb(0xe2),'type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0xf4),'hidden':!![]},{'name':'schemas','meowKey':'schemas','type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0xe0),'hidden':!![]},{'name':a135_0x2beecb(0xc1),'meowKey':a135_0x2beecb(0xc1),'type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0xd3),'hidden':!![]},{'name':a135_0x2beecb(0xe3),'meowKey':a135_0x2beecb(0xe3),'type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0xd0),'hidden':!![]},{'name':a135_0x2beecb(0xed),'meowKey':'skipImports','type':a135_0x2beecb(0x112),'description':a135_0x2beecb(0x119),'hidden':!![]},{'name':a135_0x2beecb(0xca),'meowKey':'key','type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0xfd),'hidden':!![]},{'name':a135_0x2beecb(0xc4),'meowKey':a135_0x2beecb(0xc4),'type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0xc6),'hidden':!![]},{'name':a135_0x2beecb(0xeb),'meowKey':'force','type':'boolean','description':a135_0x2beecb(0x10c),'hidden':!![]},{'name':a135_0x2beecb(0x11d),'meowKey':'confirm','type':a135_0x2beecb(0x112),'description':a135_0x2beecb(0xee),'hidden':!![]},{'name':a135_0x2beecb(0xd9),'meowKey':a135_0x2beecb(0xd9),'type':'boolean','description':'Use\x20remote','hidden':!![]},{'name':a135_0x2beecb(0xbd),'meowKey':a135_0x2beecb(0xbd),'type':a135_0x2beecb(0x112),'description':a135_0x2beecb(0xf2),'hidden':!![]},{'name':'expected-count','meowKey':a135_0x2beecb(0xc9),'type':'string','description':a135_0x2beecb(0xd1),'hidden':!![]},{'name':a135_0x2beecb(0xe6),'meowKey':a135_0x2beecb(0xf6),'type':a135_0x2beecb(0xf8),'description':'Operation\x20type','hidden':!![]},{'name':a135_0x2beecb(0xf1),'meowKey':'functionNode','type':a135_0x2beecb(0xf8),'description':a135_0x2beecb(0xc0),'hidden':!![]}];export const PIPELINE_FLAG_NAMES=new Set(['appcode',a135_0x2beecb(0x101),'env',a135_0x2beecb(0xe9),'jq',a135_0x2beecb(0xe8),'yes','non-interactive','ci']);export function buildMeowFlags(){const _0x2093c6=a135_0x2beecb;return Object['fromEntries'](GLOBAL_FLAGS[_0x2093c6(0xbb)](_0x19e847=>[_0x19e847[_0x2093c6(0x11a)],{'type':_0x19e847[_0x2093c6(0xba)]}]));}
|
package/lib/constant/defaults.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a136_0x33a6eb=a136_0x1cd1;(function(_0x49eab7,_0x3dffc2){const _0x496d0b=a136_0x1cd1,_0x522ce4=_0x49eab7();while(!![]){try{const _0x326f5=parseInt(_0x496d0b(0x1e4))/0x1+parseInt(_0x496d0b(0x1eb))/0x2+-parseInt(_0x496d0b(0x1ea))/0x3+-parseInt(_0x496d0b(0x1e7))/0x4*(parseInt(_0x496d0b(0x1e2))/0x5)+parseInt(_0x496d0b(0x1e5))/0x6+-parseInt(_0x496d0b(0x1e3))/0x7*(parseInt(_0x496d0b(0x1ed))/0x8)+-parseInt(_0x496d0b(0x1e9))/0x9;if(_0x326f5===_0x3dffc2)break;else _0x522ce4['push'](_0x522ce4['shift']());}catch(_0x39a0c4){_0x522ce4['push'](_0x522ce4['shift']());}}}(a136_0x3df0,0xdd910));import{DEFAULT_API_DIR}from'../constant/paths.js';export const DEFAULT_CONFIG_VALUES={'env':a136_0x33a6eb(0x1e8),'format':a136_0x33a6eb(0x1e1),'locale':a136_0x33a6eb(0x1ec),'riskLevel':a136_0x33a6eb(0x1e6),'apiDir':DEFAULT_API_DIR};function a136_0x1cd1(_0x3b43cc,_0x574168){_0x3b43cc=_0x3b43cc-0x1e1;const _0x3df01c=a136_0x3df0();let _0x1cd1f0=_0x3df01c[_0x3b43cc];return _0x1cd1f0;}function a136_0x3df0(){const _0x48f632=['5KABPNe','11998qDleRI','1071269uDVNkf','9936768QLUYYf','high-risk-write','2792284HMNnsN','production','7384599qcoXim','3350811jkmuVb','2697424JSPxfo','en-US','2488hvfqCU','compress'];a136_0x3df0=function(){return _0x48f632;};return a136_0x3df0();}export const DEFAULT_COMMAND_OUTPUT_FORMAT='compress';
|
package/lib/constant/domain.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a137_0x410c(_0x19dea6,_0x37c3bc){_0x19dea6=_0x19dea6-0x1aa;const _0x1fdfe7=a137_0x1fdf();let _0x410c47=_0x1fdfe7[_0x19dea6];return _0x410c47;}const a137_0x399135=a137_0x410c;(function(_0x497d63,_0x5b2723){const _0x4db678=a137_0x410c,_0x258909=_0x497d63();while(!![]){try{const _0xc48654=-parseInt(_0x4db678(0x1b9))/0x1*(-parseInt(_0x4db678(0x1b7))/0x2)+parseInt(_0x4db678(0x1b4))/0x3+parseInt(_0x4db678(0x1af))/0x4*(-parseInt(_0x4db678(0x1ba))/0x5)+parseInt(_0x4db678(0x1b5))/0x6+-parseInt(_0x4db678(0x1ad))/0x7+-parseInt(_0x4db678(0x1b0))/0x8*(-parseInt(_0x4db678(0x1b1))/0x9)+parseInt(_0x4db678(0x1b3))/0xa;if(_0xc48654===_0x5b2723)break;else _0x258909['push'](_0x258909['shift']());}catch(_0x5d4abd){_0x258909['push'](_0x258909['shift']());}}}(a137_0x1fdf,0xd8bf6));function a137_0x1fdf(){const _0x92fc6f=['https://api.lovrabet.com','https://runtime.lovrabet.com','7680267yQscmX','userDomain','27796AWxqWc','279856fbwfKp','252HmoKIb','https://daily-api.lovrabet.com','7723680fbNNJD','821076ethGgh','2199138OHvEFF','runtimeDomain','2bUSwUL','https://user-daily.lovrabet.com','155769lNDHbl','405BbYFYF','https://daily-runtime.lovrabet.com'];a137_0x1fdf=function(){return _0x92fc6f;};return a137_0x1fdf();}import{getEnv,isProduction}from'../constant/env.js';let customApiDomain,customUserDomain,customRuntimeDomain;export function initDomains(_0x4fd026){const _0xf06b1b=a137_0x410c;customApiDomain=_0x4fd026?.['apiDomain'],customUserDomain=_0x4fd026?.[_0xf06b1b(0x1ae)],customRuntimeDomain=_0x4fd026?.[_0xf06b1b(0x1b6)];}export const getUserDomain=()=>customUserDomain||(isProduction(getEnv())?'https://user.lovrabet.com':a137_0x399135(0x1b8));export const getApiDomain=()=>customApiDomain||(isProduction(getEnv())?a137_0x399135(0x1ab):a137_0x399135(0x1b2));export const getRuntimeDomain=()=>customRuntimeDomain||(isProduction(getEnv())?a137_0x399135(0x1ac):a137_0x399135(0x1aa));
|
package/lib/constant/env.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a138_0x142067=a138_0x3ea0;(function(_0x2ca887,_0x270a4b){const _0x299d3c=a138_0x3ea0,_0x5b2ffc=_0x2ca887();while(!![]){try{const _0x1ced60=-parseInt(_0x299d3c(0xec))/0x1*(-parseInt(_0x299d3c(0xf3))/0x2)+-parseInt(_0x299d3c(0xed))/0x3+-parseInt(_0x299d3c(0xe9))/0x4*(-parseInt(_0x299d3c(0xf4))/0x5)+parseInt(_0x299d3c(0xef))/0x6+-parseInt(_0x299d3c(0xeb))/0x7*(parseInt(_0x299d3c(0xe7))/0x8)+-parseInt(_0x299d3c(0xea))/0x9*(parseInt(_0x299d3c(0xe8))/0xa)+parseInt(_0x299d3c(0xee))/0xb;if(_0x1ced60===_0x270a4b)break;else _0x5b2ffc['push'](_0x5b2ffc['shift']());}catch(_0x52c9b1){_0x5b2ffc['push'](_0x5b2ffc['shift']());}}}(a138_0x8c2b,0x95f20));export const RABETBASE_ENV_VALUES=[a138_0x142067(0xf0),'daily'];export function normalizeEnv(_0xa02ccc){const _0x58a8ea=a138_0x142067;return _0xa02ccc===_0x58a8ea(0xf2)?_0x58a8ea(0xf0):_0xa02ccc;}function a138_0x8c2b(){const _0x44f2d2=['6883620rQDexa','production','daily','online','1580042OfPKiJ','1520DQCHqJ','dev','21856XxiSjq','1452460nKanGu','4496Wvhsgj','18qdgHdz','2142UkwqbB','1AkpVzl','2017323YggpPC','1475254UZEjxq'];a138_0x8c2b=function(){return _0x44f2d2;};return a138_0x8c2b();}export function isProduction(_0x41c9df){const _0x34afc1=a138_0x142067;return normalizeEnv(_0x41c9df)===_0x34afc1(0xf0);}function a138_0x3ea0(_0x38438b,_0xef5d24){_0x38438b=_0x38438b-0xe7;const _0x8c2b22=a138_0x8c2b();let _0x3ea058=_0x8c2b22[_0x38438b];return _0x3ea058;}export function isDaily(_0x17bc9a){const _0x1bb9c2=a138_0x142067;return normalizeEnv(_0x17bc9a)===_0x1bb9c2(0xf1);}export function isDev(_0x4ccd23){const _0x143683=a138_0x142067,_0x5c3671=normalizeEnv(_0x4ccd23);return _0x5c3671==='development'||_0x5c3671===_0x143683(0xf5);}let env=normalizeEnv(process.env.RABETBASE_ENV||process.env.LOVRABET_ENV||a138_0x142067(0xf0));export function getEnv(){return env;}export function initEnv(_0x5b2f7c){env=normalizeEnv(_0x5b2f7c);}
|
package/lib/constant/output.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a139_0x1163(_0x142a17,_0x49badd){_0x142a17=_0x142a17-0xf9;const _0x2ce3f0=a139_0x2ce3();let _0x1163fa=_0x2ce3f0[_0x142a17];return _0x1163fa;}function a139_0x2ce3(){const _0x39be54=['136nsfkqW','28622dvrXCw','compress','16zKjHcp','30EokoYT','516ouxzSc','5HpqRoT','10027470vzswMg','1698403MFYfxT','json','6060258YVsACG','19278cFyHKw','2348MyBoIy','981258LkVJfY'];a139_0x2ce3=function(){return _0x39be54;};return a139_0x2ce3();}const a139_0x5d02d2=a139_0x1163;(function(_0x7728fa,_0x151f9b){const _0x29ebd1=a139_0x1163,_0x320277=_0x7728fa();while(!![]){try{const _0x6648d9=parseInt(_0x29ebd1(0xf9))/0x1*(-parseInt(_0x29ebd1(0xff))/0x2)+-parseInt(_0x29ebd1(0x106))/0x3*(-parseInt(_0x29ebd1(0xfb))/0x4)+parseInt(_0x29ebd1(0x101))/0x5*(-parseInt(_0x29ebd1(0xfa))/0x6)+parseInt(_0x29ebd1(0x103))/0x7+-parseInt(_0x29ebd1(0xfe))/0x8*(-parseInt(_0x29ebd1(0x105))/0x9)+-parseInt(_0x29ebd1(0x102))/0xa+-parseInt(_0x29ebd1(0xfc))/0xb*(-parseInt(_0x29ebd1(0x100))/0xc);if(_0x6648d9===_0x151f9b)break;else _0x320277['push'](_0x320277['shift']());}catch(_0x779739){_0x320277['push'](_0x320277['shift']());}}}(a139_0x2ce3,0xaf585));export const RABETBASE_OUTPUT_FORMAT_VALUES=[a139_0x5d02d2(0x104),'pretty',a139_0x5d02d2(0xfd)];
|
package/lib/constant/paths.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a140_0x1928(_0x4d2375,_0x875b48){_0x4d2375=_0x4d2375-0xf5;const _0x1d30a9=a140_0x1d30();let _0x1928b6=_0x1d30a9[_0x4d2375];return _0x1928b6;}const a140_0x21f03b=a140_0x1928;(function(_0x4dda36,_0x317a83){const _0x3ed3ca=a140_0x1928,_0x3c0ea7=_0x4dda36();while(!![]){try{const _0x2a2f5f=-parseInt(_0x3ed3ca(0xfd))/0x1*(-parseInt(_0x3ed3ca(0xf5))/0x2)+parseInt(_0x3ed3ca(0x100))/0x3*(parseInt(_0x3ed3ca(0x101))/0x4)+-parseInt(_0x3ed3ca(0xfa))/0x5*(parseInt(_0x3ed3ca(0xff))/0x6)+-parseInt(_0x3ed3ca(0xfe))/0x7*(-parseInt(_0x3ed3ca(0xf8))/0x8)+-parseInt(_0x3ed3ca(0xf9))/0x9+-parseInt(_0x3ed3ca(0xf7))/0xa*(-parseInt(_0x3ed3ca(0xf6))/0xb)+-parseInt(_0x3ed3ca(0xfc))/0xc;if(_0x2a2f5f===_0x317a83)break;else _0x3c0ea7['push'](_0x3c0ea7['shift']());}catch(_0x657eb1){_0x3c0ea7['push'](_0x3c0ea7['shift']());}}}(a140_0x1d30,0x1c1c7));export const DEFAULT_API_DIR=a140_0x21f03b(0xfb);function a140_0x1d30(){const _0x5f39c2=['8ZnkOIK','1173105JwtDFr','178010ZcIrpq','./src/api','4376460sSKMfN','7818BfYRkE','1178219VDvzbl','6KiHCJw','222744eEuxPY','12tOqOoO','26PJRxBp','16841smoAcj','1000wrnqHN'];a140_0x1d30=function(){return _0x5f39c2;};return a140_0x1d30();}
|
package/lib/constant/risk.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a141_0x47298d=a141_0x4a5c;(function(_0x52c01f,_0x3e90d9){const _0x2b7501=a141_0x4a5c,_0x447d6a=_0x52c01f();while(!![]){try{const _0x53a729=-parseInt(_0x2b7501(0x69))/0x1*(-parseInt(_0x2b7501(0x6b))/0x2)+parseInt(_0x2b7501(0x6e))/0x3*(parseInt(_0x2b7501(0x65))/0x4)+parseInt(_0x2b7501(0x66))/0x5+-parseInt(_0x2b7501(0x67))/0x6+parseInt(_0x2b7501(0x71))/0x7+-parseInt(_0x2b7501(0x6d))/0x8+-parseInt(_0x2b7501(0x6a))/0x9*(parseInt(_0x2b7501(0x6f))/0xa);if(_0x53a729===_0x3e90d9)break;else _0x447d6a['push'](_0x447d6a['shift']());}catch(_0x1d1225){_0x447d6a['push'](_0x447d6a['shift']());}}}(a141_0x27bc,0x9390c));export const RISK_LEVEL_VALUES=[a141_0x47298d(0x68),a141_0x47298d(0x70),a141_0x47298d(0x6c)];function a141_0x4a5c(_0x26edcd,_0x557072){_0x26edcd=_0x26edcd-0x65;const _0x27bc98=a141_0x27bc();let _0x4a5c38=_0x27bc98[_0x26edcd];return _0x4a5c38;}function a141_0x27bc(){const _0x18f045=['778384MDFFXJ','3147JKCyvI','20nevjwq','write','5753496bmVCEr','828WvmSgC','4295735mkkjRd','6902136xWqCnL','read','9170lMEAxn','4210317ZgkQXV','194dZgNOv','high-risk-write'];a141_0x27bc=function(){return _0x18f045;};return a141_0x27bc();}
|