@lovrabet/rabetbase-cli 2.1.8 → 2.1.9
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/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/link-create.js +1 -1
- package/lib/commands/dataset/link-delete.js +1 -1
- package/lib/commands/dataset/link-shared.js +1 -1
- package/lib/commands/dataset/link-update.js +1 -1
- package/lib/commands/dataset/links.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.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/report.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/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/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
|
@@ -1 +1 @@
|
|
|
1
|
-
const a109_0x44a648=a109_0x3bf9;(function(_0x1455d7,_0x451338){const _0x4bb61f=a109_0x3bf9,_0x518c5e=_0x1455d7();while(!![]){try{const _0x46134b=-parseInt(_0x4bb61f(0x1aa))/0x1*(-parseInt(_0x4bb61f(0x1b9))/0x2)+-parseInt(_0x4bb61f(0x1a7))/0x3*(parseInt(_0x4bb61f(0x164))/0x4)+parseInt(_0x4bb61f(0x19b))/0x5*(parseInt(_0x4bb61f(0x196))/0x6)+parseInt(_0x4bb61f(0x1bd))/0x7*(-parseInt(_0x4bb61f(0x1a0))/0x8)+-parseInt(_0x4bb61f(0x167))/0x9+-parseInt(_0x4bb61f(0x177))/0xa*(parseInt(_0x4bb61f(0x1b7))/0xb)+-parseInt(_0x4bb61f(0x1d4))/0xc*(-parseInt(_0x4bb61f(0x19d))/0xd);if(_0x46134b===_0x451338)break;else _0x518c5e['push'](_0x518c5e['shift']());}catch(_0x3d429d){_0x518c5e['push'](_0x518c5e['shift']());}}}(a109_0x53d9,0x59e18));import a109_0x24f616 from'chalk';import a109_0x5dc98f from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';import{CONFIG_NAMES,NEW_CONFIG_NAME,readConfigFile,writeConfigFile}from'../../context.js';import{CORE_IDE_CONFIGS}from'../../utils/ai_config.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE,runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=CONFIG_NAMES[a109_0x44a648(0x17e)](_0x47846d=>_0x47846d!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x1af3f9){const _0x1d5b1b=a109_0x44a648,_0x380936=[];for(const _0x473ccf of Object[_0x1d5b1b(0x17c)](CORE_IDE_CONFIGS)){if(_0x473ccf[_0x1d5b1b(0x186)])for(const _0x3268e7 of _0x473ccf[_0x1d5b1b(0x186)]){_0x380936[_0x1d5b1b(0x17d)](resolve(_0x1af3f9,_0x3268e7[_0x1d5b1b(0x161)]));}}return _0x380936;}function analyse(_0xcea2b1){const _0x348d31=a109_0x44a648;let _0x1f7200=null;const _0x3a6246=resolve(_0xcea2b1,NEW_CONFIG_NAME),_0x4ba90a=existsSync(_0x3a6246);for(const _0x5346d1 of LEGACY_CONFIG_NAMES){const _0x464096=resolve(_0xcea2b1,_0x5346d1);if(existsSync(_0x464096)){const _0x24b47d=readConfigFile(_0x464096),_0x378e06=Object['keys'](_0x24b47d)[_0x348d31(0x17e)](_0x11ed43=>typeof _0x24b47d[_0x11ed43]!=='undefined');_0x1f7200={'oldPath':_0x464096,'hasNewConfig':_0x4ba90a,'fields':_0x378e06};break;}}const _0xc32f9f=[],_0x436ef3=resolve(_0xcea2b1,_0x348d31(0x1cf));if(existsSync(_0x436ef3))_0xc32f9f['push'](_0x436ef3);const _0x1beeb4=resolve(_0xcea2b1,_0x348d31(0x1b5));if(existsSync(_0x1beeb4))_0xc32f9f[_0x348d31(0x17d)](_0x1beeb4);const _0x33ac1b=resolve(_0xcea2b1,_0x348d31(0x1e0));if(existsSync(_0x33ac1b))_0xc32f9f[_0x348d31(0x17d)](_0x33ac1b);for(const _0x55274c of collectIdeSkillFiles(_0xcea2b1)){if(existsSync(_0x55274c))_0xc32f9f[_0x348d31(0x17d)](_0x55274c);}let _0x2017f8=null;const _0x2a98ff=resolve(_0xcea2b1,'.cursor/mcp.json');if(existsSync(_0x2a98ff))try{const _0xff06aa=JSON['parse'](readFileSync(_0x2a98ff,_0x348d31(0x1bf)));if(_0xff06aa?.[_0x348d31(0x15d)]&&typeof _0xff06aa['mcpServers']===_0x348d31(0x1d9)){const _0x465199=[];for(const [_0x32e589,_0x3791f4]of Object['entries'](_0xff06aa[_0x348d31(0x15d)])){const _0x952533=_0x3791f4;_0x952533?.['args']&&Array[_0x348d31(0x1dc)](_0x952533['args'])&&_0x952533['args']['some'](_0x4e08ff=>typeof _0x4e08ff===_0x348d31(0x1b0)&&_0x4e08ff['includes'](_0x348d31(0x171)))&&_0x465199['push'](_0x32e589);}_0x465199[_0x348d31(0x162)]>0x0&&(_0x2017f8={'path':_0x2a98ff,'keys':_0x465199});}}catch{}const _0x53f0eb=_0xc32f9f[_0x348d31(0x162)]>0x0||_0x1f7200!==null;let _0x336f02=null;const _0x16fb47=resolve(_0xcea2b1,'package.json');if(existsSync(_0x16fb47))try{const _0x521e18=JSON[_0x348d31(0x15f)](readFileSync(_0x16fb47,_0x348d31(0x1bf)));for(const _0x542fd9 of[_0x348d31(0x17f),_0x348d31(0x191)]){const _0x3d253d=_0x521e18?.[_0x542fd9]?.[_0x348d31(0x172)];if(typeof _0x3d253d===_0x348d31(0x1b0)){_0x3d253d!==_0x348d31(0x1b8)&&(_0x336f02={'pkgPath':_0x16fb47,'currentVersion':_0x3d253d,'field':_0x542fd9});break;}}}catch{}return{'configMigration':_0x1f7200,'oldArtifacts':_0xc32f9f,'oldMcpConfig':_0x2017f8,'needsSkillSwap':_0x53f0eb,'sdkUpgrade':_0x336f02};}function a109_0x3bf9(_0x4a778e,_0x475852){_0x4a778e=_0x4a778e-0x15c;const _0x53d9ef=a109_0x53d9();let _0x3bf9a5=_0x53d9ef[_0x4a778e];return _0x3bf9a5;}function printReport(_0x2a93c7){const _0x1c0b96=a109_0x44a648,{configMigration:_0x1abf26,oldArtifacts:_0x22de7e,oldMcpConfig:_0x3aaf26,needsSkillSwap:_0x54a4bd}=_0x2a93c7;console['log'](''),console[_0x1c0b96(0x180)](a109_0x24f616[_0x1c0b96(0x17a)](_0x1c0b96(0x1ab))),console['log']('');_0x1abf26?(console[_0x1c0b96(0x180)](a109_0x24f616[_0x1c0b96(0x1dd)](_0x1c0b96(0x193))+('\x20\x20'+a109_0x24f616[_0x1c0b96(0x190)](_0x1abf26[_0x1c0b96(0x1c8)]))),console[_0x1c0b96(0x180)](_0x1c0b96(0x1c5)+(_0x1abf26[_0x1c0b96(0x165)]?a109_0x24f616[_0x1c0b96(0x1d6)]('already\x20exists\x20(will\x20merge)'):a109_0x24f616['gray'](_0x1c0b96(0x1b1)))),console['log'](_0x1c0b96(0x1cb)+_0x1abf26[_0x1c0b96(0x1bb)][_0x1c0b96(0x169)](',\x20')),console['log'](_0x1c0b96(0x16c))):console[_0x1c0b96(0x180)](a109_0x24f616['cyan']('Config\x20file:')+'\x20\x20'+a109_0x24f616[_0x1c0b96(0x1c9)](_0x1c0b96(0x197)));console[_0x1c0b96(0x180)]('');if(_0x22de7e[_0x1c0b96(0x162)]>0x0){console[_0x1c0b96(0x180)](a109_0x24f616[_0x1c0b96(0x1dd)](_0x1c0b96(0x1b6)));for(const _0x18ee3f of _0x22de7e){console['log']('\x20\x20'+a109_0x24f616[_0x1c0b96(0x1a6)](_0x1c0b96(0x19a))+'\x20\x20'+_0x18ee3f);}console[_0x1c0b96(0x180)]('\x20\x20Action:\x20delete');}else console[_0x1c0b96(0x180)](a109_0x24f616['cyan'](_0x1c0b96(0x1b6))+'\x20\x20'+a109_0x24f616[_0x1c0b96(0x1c9)](_0x1c0b96(0x182)));console[_0x1c0b96(0x180)]('');_0x3aaf26?(console['log'](a109_0x24f616[_0x1c0b96(0x1dd)](_0x1c0b96(0x1d1))+('\x20\x20'+a109_0x24f616[_0x1c0b96(0x190)](_0x3aaf26['path'])+_0x1c0b96(0x1d3)+_0x3aaf26[_0x1c0b96(0x185)][_0x1c0b96(0x169)](',\x20'))),console[_0x1c0b96(0x180)](_0x1c0b96(0x1a1))):console['log'](a109_0x24f616[_0x1c0b96(0x1dd)](_0x1c0b96(0x1d1))+'\x20\x20'+a109_0x24f616['gray']('no\x20legacy\x20entry'));console['log'](''),console[_0x1c0b96(0x180)](a109_0x24f616['cyan'](_0x1c0b96(0x1ce))+('\x20\x20'+(_0x54a4bd?a109_0x24f616[_0x1c0b96(0x190)](_0x1c0b96(0x183)):a109_0x24f616['green']('not\x20needed'))));_0x54a4bd&&console[_0x1c0b96(0x180)](_0x1c0b96(0x1ae)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x1c0b96(0x180)]('');if(_0x2a93c7['sdkUpgrade']){const {currentVersion:_0x5e8836,field:_0x5b497c,pkgPath:_0x44185f}=_0x2a93c7[_0x1c0b96(0x1d8)];console['log'](a109_0x24f616[_0x1c0b96(0x1dd)](_0x1c0b96(0x1de))+('\x20\x20'+a109_0x24f616['yellow'](_0x44185f))),console[_0x1c0b96(0x180)](_0x1c0b96(0x179)+_0x5b497c+':\x20'+a109_0x24f616[_0x1c0b96(0x190)](_0x5e8836)+_0x1c0b96(0x18d)+a109_0x24f616[_0x1c0b96(0x1d6)](_0x1c0b96(0x1b8))),console[_0x1c0b96(0x180)](_0x1c0b96(0x176));}else console[_0x1c0b96(0x180)](a109_0x24f616[_0x1c0b96(0x1dd)](_0x1c0b96(0x1de))+'\x20\x20'+a109_0x24f616[_0x1c0b96(0x1c9)](_0x1c0b96(0x195)));console[_0x1c0b96(0x180)]('');}function a109_0x53d9(){const _0x5220dd=['132HsLitS','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','green','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','sdkUpgrade','object','\x20\x20npm\x20install','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','isArray','cyan','@lovrabet/sdk:','===\x20Upgrade\x20Summary\x20===','.claude/skills/lovrabet','stringify','mcpServers','lovrabet/lovrabet-skill\x20removed','parse','[\x22@lovrabet/sdk\x22]:\x20','path','length','\x20\x20bun\x20install','16588omvjty','hasNewConfig','step','5879025KMgiMD','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','join','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','Remove\x20.lovrabet/','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','inherit','Step\x204/7:\x20Cleaning\x20MCP\x20config...','succeed','@lovrabet/dataset-mcp-server','@lovrabet/sdk','Step\x201/7:\x20Migrating\x20config...','oldArtifacts','lovrabet/rabetbase','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','1790FjyDEG','args','\x20\x20Current\x20version\x20in\x20','bold','start','values','push','filter','dependencies','log','some','none\x20found','needed','Remove\x20old\x20skill','keys','files','Install\x20new\x20skill','.bak','done','Upgrade\x20completed\x20successfully!','Step\x205/7:\x20Removing\x20old\x20skill...','info','\x20→\x20','Clean\x20MCP\x20config','Step\x204/7:\x20MCP\x20config\x20—\x20','yellow','devDependencies','entries','Config\x20file:','\x20\x20#\x20or','not\x20found\x20or\x20already\x20at\x20latest','7908TyOkRh','no\x20legacy\x20config\x20found','removed\x20','needsSkillSwap','FOUND','35steTGA','\x20removed\x20(','2109094bfAxOZ','Config\x20migration','yes','1804216BfupTI','\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server','\x20removed','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','configMigration','failed','red','93sYIhEb','cwd','\x20from\x20','189793YYUGHz','===\x20Upgrade\x20Analysis\x20===','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','Upgrade\x20@lovrabet/sdk','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','fail','string','not\x20found\x20(will\x20create)','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','exit\x20','includes','.cursor/rules/lovrabet_rules.mdc','Legacy\x20artifacts:','35178CwWczR','latest','4oyswzE','\x20\x20\x20\x20\x20\x20\x20','fields','error','14oLiiWW','isDirectory','utf8','status','label','Upgrade\x20cancelled.','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','\x20→\x20latest','\x20\x20New\x20config\x20(.rabetbase.json):\x20','detail','skipped','oldPath','gray','message','\x20\x20Fields\x20to\x20migrate:\x20','lovrabet/rabetbase\x20installed\x20globally','oldMcpConfig','Skill\x20swap:','.lovrabet','\x20(backup:\x20','MCP\x20config:','white','\x20→\x20keys:\x20'];a109_0x53d9=function(){return _0x5220dd;};return a109_0x53d9();}function execConfigMigration(_0x36cfa3,_0x42871e){const _0x54a13c=a109_0x44a648,{configMigration:_0x320d8b}=_0x36cfa3;if(!_0x320d8b?.['oldPath'])return{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x67ef4f=readConfigFile(_0x320d8b['oldPath']),_0x5d5853=resolve(_0x42871e,NEW_CONFIG_NAME),_0x892f43=_0x320d8b[_0x54a13c(0x165)]?readConfigFile(_0x5d5853):{};for(const [_0x43a8d7,_0x2ddd01]of Object[_0x54a13c(0x192)](_0x67ef4f)){!(_0x43a8d7 in _0x892f43)&&(_0x892f43[_0x43a8d7]=_0x2ddd01);}writeConfigFile(_0x5d5853,_0x892f43);const _0x2fbc61=_0x320d8b[_0x54a13c(0x1c8)]+_0x54a13c(0x188);return renameSync(_0x320d8b[_0x54a13c(0x1c8)],_0x2fbc61),{'step':0x1,'label':_0x54a13c(0x19e),'ok':!![],'detail':_0x320d8b[_0x54a13c(0x1c8)]+'\x20→\x20'+_0x5d5853+_0x54a13c(0x1d0)+_0x2fbc61+')'};}function execRemoveOldArtifacts(_0xe11b6f){const _0xdcd975=a109_0x44a648,_0x344ee6=[];for(const _0x585f55 of _0xe11b6f){try{if(!existsSync(_0x585f55))continue;const _0x2bd608=tryStat(_0x585f55);_0x2bd608?.[_0xdcd975(0x1be)]()?rmSync(_0x585f55,{'recursive':!![],'force':!![]}):unlinkSync(_0x585f55);}catch(_0x25c559){_0x344ee6[_0xdcd975(0x17d)](_0x585f55+':\x20'+_0x25c559['message']);}}return{'step':0x3,'label':'Remove\x20legacy\x20artifacts','ok':_0x344ee6[_0xdcd975(0x162)]===0x0,'detail':_0x344ee6[_0xdcd975(0x162)]>0x0?_0xe11b6f[_0xdcd975(0x162)]-_0x344ee6[_0xdcd975(0x162)]+'/'+_0xe11b6f[_0xdcd975(0x162)]+_0xdcd975(0x19c)+_0x344ee6['join'](';\x20')+')':_0xe11b6f[_0xdcd975(0x162)]+_0xdcd975(0x1a2)};}function execCleanMcp(_0x2c088b){const _0x1b7872=a109_0x44a648;if(!_0x2c088b[_0x1b7872(0x1cd)])return{'step':0x4,'label':_0x1b7872(0x18e),'ok':!![],'detail':_0x1b7872(0x1c7)};try{const _0x114d41=readFileSync(_0x2c088b[_0x1b7872(0x1cd)][_0x1b7872(0x161)],_0x1b7872(0x1bf)),_0xb31483=JSON[_0x1b7872(0x15f)](_0x114d41);if(_0xb31483?.['mcpServers']&&typeof _0xb31483[_0x1b7872(0x15d)]===_0x1b7872(0x1d9)){const _0x176228=[];for(const [_0x2705f9,_0x4d2692]of Object[_0x1b7872(0x192)](_0xb31483[_0x1b7872(0x15d)])){_0x4d2692?.[_0x1b7872(0x178)]&&Array['isArray'](_0x4d2692['args'])&&_0x4d2692[_0x1b7872(0x178)][_0x1b7872(0x181)](_0x348e60=>typeof _0x348e60==='string'&&_0x348e60[_0x1b7872(0x1b4)](_0x1b7872(0x171)))&&_0x176228[_0x1b7872(0x17d)](_0x2705f9);}for(const _0xf509cd of _0x176228){delete _0xb31483[_0x1b7872(0x15d)][_0xf509cd];}return _0x176228[_0x1b7872(0x162)]>0x0&&writeFileSync(_0x2c088b[_0x1b7872(0x1cd)][_0x1b7872(0x161)],JSON[_0x1b7872(0x15c)](_0xb31483,null,0x2)+'\x0a','utf8'),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x1b7872(0x198)+_0x176228['join'](',\x20')+_0x1b7872(0x1a9)+_0x2c088b[_0x1b7872(0x1cd)][_0x1b7872(0x161)]};}return{'step':0x4,'label':_0x1b7872(0x18e),'ok':!![],'detail':'no\x20matching\x20entry\x20found'};}catch(_0x17bd6f){return{'step':0x4,'label':_0x1b7872(0x18e),'ok':![],'detail':_0x17bd6f[_0x1b7872(0x1ca)]};}}function execSkillsRemove(_0x260b05,_0x37ee55){const _0x4dc7ca=a109_0x44a648,_0x48b6ec=runNpxSkillsRemove(_0x260b05,{'stdio':_0x4dc7ca(0x16e),'yes':_0x37ee55});return{'step':0x5,'label':_0x4dc7ca(0x184),'ok':_0x48b6ec['ok'],'detail':_0x48b6ec['ok']?_0x4dc7ca(0x15e):_0x48b6ec[_0x4dc7ca(0x1bc)]??_0x4dc7ca(0x1b3)+_0x48b6ec['status']};}function execSkillsAdd(_0x544c4b,_0x12e8a8){const _0x4b59e0=a109_0x44a648,_0x37db09=runNpxSkillsAddGlobal(_0x544c4b,_0x4b59e0(0x175),{'stdio':_0x4b59e0(0x16e),'yes':_0x12e8a8});return{'step':0x6,'label':_0x4b59e0(0x187),'ok':_0x37db09['ok'],'detail':_0x37db09['ok']?_0x4b59e0(0x1cc):_0x37db09['error']??_0x4b59e0(0x1b3)+_0x37db09[_0x4b59e0(0x1c0)]};}function execUpgradeSdk(_0x5c6898){const _0x4a2619=a109_0x44a648;if(!_0x5c6898['sdkUpgrade'])return{'step':0x7,'label':_0x4a2619(0x1ad),'ok':!![],'detail':_0x4a2619(0x1db)};const {pkgPath:_0x5ce7c4,currentVersion:_0x161570,field:_0x224c75}=_0x5c6898[_0x4a2619(0x1d8)];try{const _0xb78c49=readFileSync(_0x5ce7c4,_0x4a2619(0x1bf)),_0x183345=JSON[_0x4a2619(0x15f)](_0xb78c49);return _0x183345[_0x224c75]['@lovrabet/sdk']='latest',writeFileSync(_0x5ce7c4,JSON[_0x4a2619(0x15c)](_0x183345,null,0x2)+'\x0a','utf8'),{'step':0x7,'label':_0x4a2619(0x1ad),'ok':!![],'detail':_0x224c75+_0x4a2619(0x160)+_0x161570+_0x4a2619(0x1c4)};}catch(_0x46acae){return{'step':0x7,'label':_0x4a2619(0x1ad),'ok':![],'detail':_0x46acae[_0x4a2619(0x1ca)]};}}function tryStat(_0x6e1b10){try{return statSync(_0x6e1b10);}catch{return undefined;}}function printSummary(_0x261388){const _0x287c7e=a109_0x44a648;console[_0x287c7e(0x180)](''),console[_0x287c7e(0x180)](a109_0x24f616['bold'](_0x287c7e(0x1df))),console[_0x287c7e(0x180)]('');for(const _0x22b018 of _0x261388){const _0x28ba99=_0x22b018['ok']?a109_0x24f616[_0x287c7e(0x1d6)]('OK'):a109_0x24f616[_0x287c7e(0x1a6)]('FAIL');console['log']('\x20\x20'+_0x28ba99+'\x20\x20Step\x20'+_0x22b018[_0x287c7e(0x166)]+':\x20'+_0x22b018[_0x287c7e(0x1c1)]);if(_0x22b018[_0x287c7e(0x1c6)])console[_0x287c7e(0x180)](_0x287c7e(0x1ba)+a109_0x24f616['gray'](_0x22b018[_0x287c7e(0x1c6)]));}console[_0x287c7e(0x180)]('');}export async function upgradeApp(_0x149ddc,_0x87386d){const _0x252c7d=a109_0x44a648,_0x27c493=process[_0x252c7d(0x1a8)](),_0x293fc6=analyse(_0x27c493),_0x5da639=!_0x293fc6[_0x252c7d(0x1a4)]&&_0x293fc6['oldArtifacts'][_0x252c7d(0x162)]===0x0&&!_0x293fc6[_0x252c7d(0x1cd)]&&!_0x293fc6[_0x252c7d(0x199)]&&!_0x293fc6[_0x252c7d(0x1d8)];if(_0x5da639){console[_0x252c7d(0x180)](a109_0x24f616[_0x252c7d(0x1d6)](_0x252c7d(0x168)));return;}printReport(_0x293fc6);const _0xeb6410=!!(_0x87386d[_0x252c7d(0x19f)]||_0x87386d['Y']||_0x149ddc);if(!_0xeb6410)try{const _0x4acd54=await askConfirm('Proceed\x20with\x20upgrade?');if(!_0x4acd54){console[_0x252c7d(0x180)](a109_0x24f616[_0x252c7d(0x1c9)](_0x252c7d(0x1c2)));return;}}catch(_0x527598){if(_0x527598?.[_0x252c7d(0x1ca)]==='CANCEL'){console['log'](a109_0x24f616[_0x252c7d(0x1c9)](_0x252c7d(0x1c2)));return;}throw _0x527598;}const _0x47d2f9=[],_0x9bf950=a109_0x5dc98f({'text':_0x252c7d(0x173),'color':_0x252c7d(0x1dd)})['start'](),_0xd6606=execConfigMigration(_0x293fc6,_0x27c493);_0x47d2f9[_0x252c7d(0x17d)](_0xd6606),_0x9bf950[_0xd6606['ok']?_0x252c7d(0x170):_0x252c7d(0x1af)]('Step\x201/7:\x20Config\x20migration\x20—\x20'+(_0xd6606['detail']??(_0xd6606['ok']?_0x252c7d(0x189):_0x252c7d(0x1a5))));const _0x304732=resolve(_0x27c493,_0x252c7d(0x1cf)),_0x152f3b=a109_0x5dc98f({'text':_0x252c7d(0x1d5),'color':_0x252c7d(0x1dd)})[_0x252c7d(0x17b)]();if(existsSync(_0x304732))try{rmSync(_0x304732,{'recursive':!![],'force':!![]}),_0x152f3b[_0x252c7d(0x170)](_0x252c7d(0x1a3)),_0x47d2f9[_0x252c7d(0x17d)]({'step':0x2,'label':_0x252c7d(0x16b),'ok':!![]});}catch(_0x19ecb5){_0x152f3b[_0x252c7d(0x1af)]('Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20'+_0x19ecb5[_0x252c7d(0x1ca)]),_0x47d2f9[_0x252c7d(0x17d)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':![],'detail':_0x19ecb5[_0x252c7d(0x1ca)]});}else _0x152f3b[_0x252c7d(0x18c)]('Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped'),_0x47d2f9[_0x252c7d(0x17d)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![],'detail':_0x252c7d(0x1c7)});const _0x246d34=a109_0x5dc98f({'text':_0x252c7d(0x1d7),'color':'cyan'})['start'](),_0x37bcc9=execRemoveOldArtifacts(_0x293fc6[_0x252c7d(0x174)]);_0x47d2f9[_0x252c7d(0x17d)](_0x37bcc9),_0x246d34[_0x37bcc9['ok']?_0x252c7d(0x170):_0x252c7d(0x1af)]('Step\x203/7:\x20Legacy\x20artifacts\x20—\x20'+(_0x37bcc9[_0x252c7d(0x1c6)]??(_0x37bcc9['ok']?_0x252c7d(0x189):_0x252c7d(0x1a5))));const _0x3959ca=a109_0x5dc98f({'text':_0x252c7d(0x16f),'color':_0x252c7d(0x1dd)})[_0x252c7d(0x17b)](),_0x422ca9=execCleanMcp(_0x293fc6);_0x47d2f9[_0x252c7d(0x17d)](_0x422ca9),_0x3959ca[_0x422ca9['ok']?_0x252c7d(0x170):_0x252c7d(0x1af)](_0x252c7d(0x18f)+(_0x422ca9[_0x252c7d(0x1c6)]??(_0x422ca9['ok']?_0x252c7d(0x189):_0x252c7d(0x1a5))));const _0x1cdc0f=a109_0x5dc98f({'text':_0x252c7d(0x18b),'color':_0x252c7d(0x1dd)})[_0x252c7d(0x17b)](),_0x1b5f6d=execSkillsRemove(_0x27c493,_0xeb6410);_0x47d2f9['push'](_0x1b5f6d),_0x1cdc0f[_0x1b5f6d['ok']?'succeed':_0x252c7d(0x1af)](_0x252c7d(0x1ac)+(_0x1b5f6d[_0x252c7d(0x1c6)]??(_0x1b5f6d['ok']?_0x252c7d(0x189):_0x252c7d(0x1a5))));const _0x4b56c4=a109_0x5dc98f({'text':'Step\x206/7:\x20Installing\x20new\x20skill...','color':_0x252c7d(0x1dd)})[_0x252c7d(0x17b)](),_0xe44441=execSkillsAdd(_0x27c493,_0xeb6410);_0x47d2f9[_0x252c7d(0x17d)](_0xe44441),_0x4b56c4[_0xe44441['ok']?_0x252c7d(0x170):_0x252c7d(0x1af)]('Step\x206/7:\x20Install\x20new\x20skill\x20—\x20'+(_0xe44441[_0x252c7d(0x1c6)]??(_0xe44441['ok']?_0x252c7d(0x189):_0x252c7d(0x1a5))));const _0x29d9d1=a109_0x5dc98f({'text':_0x252c7d(0x16a),'color':_0x252c7d(0x1dd)})[_0x252c7d(0x17b)](),_0xf4e923=execUpgradeSdk(_0x293fc6);_0x47d2f9['push'](_0xf4e923),_0x29d9d1[_0xf4e923['ok']?_0x252c7d(0x170):_0x252c7d(0x1af)](_0x252c7d(0x1b2)+(_0xf4e923[_0x252c7d(0x1c6)]??(_0xf4e923['ok']?'done':_0x252c7d(0x1a5)))),printSummary(_0x47d2f9);const _0x4be612=_0x47d2f9['some'](_0x1adb9f=>!_0x1adb9f['ok']);_0x4be612?console[_0x252c7d(0x180)](a109_0x24f616[_0x252c7d(0x190)]('Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.')):console[_0x252c7d(0x180)](a109_0x24f616[_0x252c7d(0x1d6)](_0x252c7d(0x18a))),_0xf4e923['ok']&&_0x293fc6[_0x252c7d(0x1d8)]&&(console[_0x252c7d(0x180)](''),console['log'](a109_0x24f616[_0x252c7d(0x17a)][_0x252c7d(0x1dd)](_0x252c7d(0x16d))),console[_0x252c7d(0x180)](a109_0x24f616[_0x252c7d(0x1dd)](_0x252c7d(0x1c3))),console[_0x252c7d(0x180)](''),console[_0x252c7d(0x180)](a109_0x24f616[_0x252c7d(0x1d2)](_0x252c7d(0x1da))),console[_0x252c7d(0x180)](a109_0x24f616[_0x252c7d(0x1d2)](_0x252c7d(0x194))),console[_0x252c7d(0x180)](a109_0x24f616[_0x252c7d(0x1d2)](_0x252c7d(0x163))),console[_0x252c7d(0x180)](''));}
|
|
1
|
+
const a109_0x4933b9=a109_0x1318;(function(_0x3ce0ec,_0x1152c1){const _0x4a9e74=a109_0x1318,_0x135d64=_0x3ce0ec();while(!![]){try{const _0x49d1d4=-parseInt(_0x4a9e74(0x191))/0x1+-parseInt(_0x4a9e74(0x1a3))/0x2+parseInt(_0x4a9e74(0x151))/0x3+parseInt(_0x4a9e74(0x174))/0x4+parseInt(_0x4a9e74(0x163))/0x5+-parseInt(_0x4a9e74(0x189))/0x6*(-parseInt(_0x4a9e74(0x132))/0x7)+parseInt(_0x4a9e74(0x178))/0x8*(-parseInt(_0x4a9e74(0x13d))/0x9);if(_0x49d1d4===_0x1152c1)break;else _0x135d64['push'](_0x135d64['shift']());}catch(_0x57f356){_0x135d64['push'](_0x135d64['shift']());}}}(a109_0x243b,0x3591f));function a109_0x243b(){const _0x448dfa=['some','111534vlfmMd','sdkUpgrade','oldArtifacts','removed\x20','info','red','.lovrabet','===\x20Upgrade\x20Analysis\x20===','utf8','lovrabet/rabetbase\x20installed\x20globally','cyan','\x20removed','Step\x205/7:\x20Removing\x20old\x20skill...','not\x20found\x20or\x20already\x20at\x20latest','Step\x206/7:\x20Installing\x20new\x20skill...','\x20\x20bun\x20install','white','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','undefined','280hWbwBH','oldMcpConfig','\x20\x20Fields\x20to\x20migrate:\x20','string','no\x20matching\x20entry\x20found','.cursor/mcp.json','\x20→\x20','no\x20legacy\x20config\x20found','Proceed\x20with\x20upgrade?','yellow','isArray','2280843hGFPUi','Legacy\x20artifacts:','not\x20found\x20(will\x20create)','dependencies','Upgrade\x20completed\x20successfully!','error','isDirectory','MCP\x20config:','object','Upgrade\x20cancelled.','Skill\x20swap:','devDependencies','Step\x202/7:\x20.lovrabet/\x20directory\x20removed','FAIL','exit\x20','\x20\x20npm\x20install','log','Install\x20new\x20skill','CANCEL','needed','986322XnXJFW','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','green','cwd','Upgrade\x20@lovrabet/sdk','configMigration','parse','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','status','@lovrabet/dataset-mcp-server','fields','already\x20exists\x20(will\x20merge)','values','needsSkillSwap','push','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','Step\x204/7:\x20MCP\x20config\x20—\x20','length','1105680vdmcxK','Clean\x20MCP\x20config','oldPath','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','FOUND','[\x22@lovrabet/sdk\x22]:\x20','\x20→\x20keys:\x20','\x20→\x20latest','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','message','Config\x20file:','bold','join','detail','@lovrabet/sdk:','Step\x204/7:\x20Cleaning\x20MCP\x20config...','990368MsYWmG','gray','not\x20needed','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','24Ehjigw','includes','Remove\x20.lovrabet/','package.json','path','Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','files','done','hasNewConfig','\x20\x20\x20\x20\x20\x20\x20','args','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','\x20\x20Step\x20','mcpServers','start','Step\x201/7:\x20Migrating\x20config...','none\x20found','48558szmDYs','.cursor/rules/lovrabet_rules.mdc','@lovrabet/sdk','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','\x20\x20Current\x20version\x20in\x20','lovrabet/rabetbase','stringify','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','85751KXnYgc','.claude/skills/lovrabet','keys','fail','filter','label','skipped','Remove\x20legacy\x20artifacts','succeed','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','Step\x201/7:\x20Config\x20migration\x20—\x20','failed','\x20\x20Action:\x20delete','Config\x20migration','\x20(backup:\x20','inherit','entries'];a109_0x243b=function(){return _0x448dfa;};return a109_0x243b();}import a109_0x2de4fe from'chalk';import a109_0x563880 from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';import{CONFIG_NAMES,NEW_CONFIG_NAME,readConfigFile,writeConfigFile}from'../../context.js';import{CORE_IDE_CONFIGS}from'../../utils/ai_config.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE,runNpxSkillsAddGlobal,runNpxSkillsRemove}from'../../skills/npx-skills-add.js';import{askConfirm}from'../../commands/menu/shared/inquirer.js';const LEGACY_CONFIG_NAMES=CONFIG_NAMES[a109_0x4933b9(0x195)](_0x2ba821=>_0x2ba821!==NEW_CONFIG_NAME);function collectIdeSkillFiles(_0x47b705){const _0x134333=a109_0x4933b9,_0x125b5b=[];for(const _0x135c83 of Object[_0x134333(0x15d)](CORE_IDE_CONFIGS)){if(_0x135c83[_0x134333(0x17e)])for(const _0x165b4c of _0x135c83[_0x134333(0x17e)]){_0x125b5b['push'](resolve(_0x47b705,_0x165b4c[_0x134333(0x17c)]));}}return _0x125b5b;}function analyse(_0x4f8ea2){const _0x6d2307=a109_0x4933b9;let _0x8523fb=null;const _0x3846e8=resolve(_0x4f8ea2,NEW_CONFIG_NAME),_0x517546=existsSync(_0x3846e8);for(const _0x60d436 of LEGACY_CONFIG_NAMES){const _0x530d20=resolve(_0x4f8ea2,_0x60d436);if(existsSync(_0x530d20)){const _0x12809b=readConfigFile(_0x530d20),_0x549b4e=Object[_0x6d2307(0x193)](_0x12809b)['filter'](_0x108ebc=>typeof _0x12809b[_0x108ebc]!==_0x6d2307(0x131));_0x8523fb={'oldPath':_0x530d20,'hasNewConfig':_0x517546,'fields':_0x549b4e};break;}}const _0x599112=[],_0x22985f=resolve(_0x4f8ea2,_0x6d2307(0x1a9));if(existsSync(_0x22985f))_0x599112['push'](_0x22985f);const _0x2aba89=resolve(_0x4f8ea2,_0x6d2307(0x18a));if(existsSync(_0x2aba89))_0x599112[_0x6d2307(0x15f)](_0x2aba89);const _0x40b145=resolve(_0x4f8ea2,_0x6d2307(0x192));if(existsSync(_0x40b145))_0x599112[_0x6d2307(0x15f)](_0x40b145);for(const _0x1e0df1 of collectIdeSkillFiles(_0x4f8ea2)){if(existsSync(_0x1e0df1))_0x599112[_0x6d2307(0x15f)](_0x1e0df1);}let _0x12683c=null;const _0xd877f3=resolve(_0x4f8ea2,_0x6d2307(0x137));if(existsSync(_0xd877f3))try{const _0x491c65=JSON[_0x6d2307(0x157)](readFileSync(_0xd877f3,_0x6d2307(0x1ab)));if(_0x491c65?.['mcpServers']&&typeof _0x491c65[_0x6d2307(0x185)]===_0x6d2307(0x145)){const _0x125f83=[];for(const [_0x1adea2,_0x3c9ce6]of Object['entries'](_0x491c65[_0x6d2307(0x185)])){const _0x24710c=_0x3c9ce6;_0x24710c?.[_0x6d2307(0x182)]&&Array['isArray'](_0x24710c[_0x6d2307(0x182)])&&_0x24710c[_0x6d2307(0x182)]['some'](_0x5d983c=>typeof _0x5d983c==='string'&&_0x5d983c['includes'](_0x6d2307(0x15a)))&&_0x125f83[_0x6d2307(0x15f)](_0x1adea2);}_0x125f83[_0x6d2307(0x162)]>0x0&&(_0x12683c={'path':_0xd877f3,'keys':_0x125f83});}}catch{}const _0x42273a=_0x599112[_0x6d2307(0x162)]>0x0||_0x8523fb!==null;let _0x3dbc01=null;const _0x25fbcf=resolve(_0x4f8ea2,_0x6d2307(0x17b));if(existsSync(_0x25fbcf))try{const _0x4d9a7f=JSON[_0x6d2307(0x157)](readFileSync(_0x25fbcf,_0x6d2307(0x1ab)));for(const _0x1a3960 of[_0x6d2307(0x140),_0x6d2307(0x148)]){const _0x3844f2=_0x4d9a7f?.[_0x1a3960]?.[_0x6d2307(0x18b)];if(typeof _0x3844f2===_0x6d2307(0x135)){_0x3844f2!=='latest'&&(_0x3dbc01={'pkgPath':_0x25fbcf,'currentVersion':_0x3844f2,'field':_0x1a3960});break;}}}catch{}return{'configMigration':_0x8523fb,'oldArtifacts':_0x599112,'oldMcpConfig':_0x12683c,'needsSkillSwap':_0x42273a,'sdkUpgrade':_0x3dbc01};}function a109_0x1318(_0x5d9255,_0x5e0423){_0x5d9255=_0x5d9255-0x12f;const _0x243bea=a109_0x243b();let _0x131844=_0x243bea[_0x5d9255];return _0x131844;}function printReport(_0x33052c){const _0x4e835e=a109_0x4933b9,{configMigration:_0x2a9028,oldArtifacts:_0x218860,oldMcpConfig:_0x153aac,needsSkillSwap:_0x231dbd}=_0x33052c;console['log'](''),console[_0x4e835e(0x14d)](a109_0x2de4fe['bold'](_0x4e835e(0x1aa))),console[_0x4e835e(0x14d)]('');_0x2a9028?(console['log'](a109_0x2de4fe[_0x4e835e(0x1ad)](_0x4e835e(0x16e))+('\x20\x20'+a109_0x2de4fe[_0x4e835e(0x13b)](_0x2a9028[_0x4e835e(0x165)]))),console[_0x4e835e(0x14d)]('\x20\x20New\x20config\x20(.rabetbase.json):\x20'+(_0x2a9028[_0x4e835e(0x180)]?a109_0x2de4fe['green'](_0x4e835e(0x15c)):a109_0x2de4fe[_0x4e835e(0x175)](_0x4e835e(0x13f)))),console['log'](_0x4e835e(0x134)+_0x2a9028[_0x4e835e(0x15b)][_0x4e835e(0x170)](',\x20')),console['log']('\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak')):console[_0x4e835e(0x14d)](a109_0x2de4fe[_0x4e835e(0x1ad)](_0x4e835e(0x16e))+'\x20\x20'+a109_0x2de4fe['gray'](_0x4e835e(0x139)));console['log']('');if(_0x218860[_0x4e835e(0x162)]>0x0){console[_0x4e835e(0x14d)](a109_0x2de4fe[_0x4e835e(0x1ad)](_0x4e835e(0x13e)));for(const _0x119f70 of _0x218860){console['log']('\x20\x20'+a109_0x2de4fe[_0x4e835e(0x1a8)](_0x4e835e(0x168))+'\x20\x20'+_0x119f70);}console['log'](_0x4e835e(0x19d));}else console['log'](a109_0x2de4fe[_0x4e835e(0x1ad)](_0x4e835e(0x13e))+'\x20\x20'+a109_0x2de4fe['gray'](_0x4e835e(0x188)));console[_0x4e835e(0x14d)]('');_0x153aac?(console[_0x4e835e(0x14d)](a109_0x2de4fe[_0x4e835e(0x1ad)]('MCP\x20config:')+('\x20\x20'+a109_0x2de4fe['yellow'](_0x153aac[_0x4e835e(0x17c)])+_0x4e835e(0x16a)+_0x153aac[_0x4e835e(0x193)][_0x4e835e(0x170)](',\x20'))),console['log']('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console[_0x4e835e(0x14d)](a109_0x2de4fe['cyan'](_0x4e835e(0x144))+'\x20\x20'+a109_0x2de4fe['gray']('no\x20legacy\x20entry'));console['log'](''),console[_0x4e835e(0x14d)](a109_0x2de4fe[_0x4e835e(0x1ad)](_0x4e835e(0x147))+('\x20\x20'+(_0x231dbd?a109_0x2de4fe[_0x4e835e(0x13b)](_0x4e835e(0x150)):a109_0x2de4fe['green'](_0x4e835e(0x176)))));_0x231dbd&&console['log']('\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`'+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console['log']('');if(_0x33052c[_0x4e835e(0x1a4)]){const {currentVersion:_0xbeb4ac,field:_0x471d81,pkgPath:_0x4a62ad}=_0x33052c[_0x4e835e(0x1a4)];console['log'](a109_0x2de4fe[_0x4e835e(0x1ad)](_0x4e835e(0x172))+('\x20\x20'+a109_0x2de4fe[_0x4e835e(0x13b)](_0x4a62ad))),console[_0x4e835e(0x14d)](_0x4e835e(0x18d)+_0x471d81+':\x20'+a109_0x2de4fe[_0x4e835e(0x13b)](_0xbeb4ac)+_0x4e835e(0x138)+a109_0x2de4fe[_0x4e835e(0x153)]('latest')),console['log'](_0x4e835e(0x130));}else console[_0x4e835e(0x14d)](a109_0x2de4fe[_0x4e835e(0x1ad)](_0x4e835e(0x172))+'\x20\x20'+a109_0x2de4fe[_0x4e835e(0x175)](_0x4e835e(0x1b0)));console[_0x4e835e(0x14d)]('');}function execConfigMigration(_0x503ac1,_0x4028bb){const _0x4c7e6f=a109_0x4933b9,{configMigration:_0x372f84}=_0x503ac1;if(!_0x372f84?.[_0x4c7e6f(0x165)])return{'step':0x1,'label':_0x4c7e6f(0x19e),'ok':!![],'detail':'skipped\x20(no\x20legacy\x20config)'};const _0x281aea=readConfigFile(_0x372f84['oldPath']),_0x2b3e76=resolve(_0x4028bb,NEW_CONFIG_NAME),_0x500eab=_0x372f84['hasNewConfig']?readConfigFile(_0x2b3e76):{};for(const [_0x58d3cf,_0x28be04]of Object['entries'](_0x281aea)){!(_0x58d3cf in _0x500eab)&&(_0x500eab[_0x58d3cf]=_0x28be04);}writeConfigFile(_0x2b3e76,_0x500eab);const _0x46873b=_0x372f84['oldPath']+'.bak';return renameSync(_0x372f84['oldPath'],_0x46873b),{'step':0x1,'label':_0x4c7e6f(0x19e),'ok':!![],'detail':_0x372f84[_0x4c7e6f(0x165)]+_0x4c7e6f(0x138)+_0x2b3e76+_0x4c7e6f(0x19f)+_0x46873b+')'};}function execRemoveOldArtifacts(_0x51eb73){const _0x59be21=a109_0x4933b9,_0x40a2c2=[];for(const _0x4e50cc of _0x51eb73){try{if(!existsSync(_0x4e50cc))continue;const _0x41eb86=tryStat(_0x4e50cc);_0x41eb86?.[_0x59be21(0x143)]()?rmSync(_0x4e50cc,{'recursive':!![],'force':!![]}):unlinkSync(_0x4e50cc);}catch(_0x129716){_0x40a2c2[_0x59be21(0x15f)](_0x4e50cc+':\x20'+_0x129716['message']);}}return{'step':0x3,'label':_0x59be21(0x198),'ok':_0x40a2c2[_0x59be21(0x162)]===0x0,'detail':_0x40a2c2[_0x59be21(0x162)]>0x0?_0x51eb73[_0x59be21(0x162)]-_0x40a2c2[_0x59be21(0x162)]+'/'+_0x51eb73[_0x59be21(0x162)]+'\x20removed\x20('+_0x40a2c2['join'](';\x20')+')':_0x51eb73['length']+_0x59be21(0x1ae)};}function execCleanMcp(_0xfec50d){const _0x597f1d=a109_0x4933b9;if(!_0xfec50d['oldMcpConfig'])return{'step':0x4,'label':_0x597f1d(0x164),'ok':!![],'detail':_0x597f1d(0x197)};try{const _0x57e2ca=readFileSync(_0xfec50d[_0x597f1d(0x133)][_0x597f1d(0x17c)],'utf8'),_0x12820d=JSON[_0x597f1d(0x157)](_0x57e2ca);if(_0x12820d?.[_0x597f1d(0x185)]&&typeof _0x12820d[_0x597f1d(0x185)]===_0x597f1d(0x145)){const _0x4fd956=[];for(const [_0x518715,_0x34d49d]of Object[_0x597f1d(0x1a1)](_0x12820d['mcpServers'])){_0x34d49d?.[_0x597f1d(0x182)]&&Array[_0x597f1d(0x13c)](_0x34d49d[_0x597f1d(0x182)])&&_0x34d49d['args'][_0x597f1d(0x1a2)](_0x533236=>typeof _0x533236===_0x597f1d(0x135)&&_0x533236[_0x597f1d(0x179)](_0x597f1d(0x15a)))&&_0x4fd956[_0x597f1d(0x15f)](_0x518715);}for(const _0x39d990 of _0x4fd956){delete _0x12820d[_0x597f1d(0x185)][_0x39d990];}return _0x4fd956['length']>0x0&&writeFileSync(_0xfec50d[_0x597f1d(0x133)][_0x597f1d(0x17c)],JSON[_0x597f1d(0x18f)](_0x12820d,null,0x2)+'\x0a',_0x597f1d(0x1ab)),{'step':0x4,'label':'Clean\x20MCP\x20config','ok':!![],'detail':_0x597f1d(0x1a6)+_0x4fd956[_0x597f1d(0x170)](',\x20')+'\x20from\x20'+_0xfec50d[_0x597f1d(0x133)][_0x597f1d(0x17c)]};}return{'step':0x4,'label':_0x597f1d(0x164),'ok':!![],'detail':_0x597f1d(0x136)};}catch(_0x3ae6c4){return{'step':0x4,'label':_0x597f1d(0x164),'ok':![],'detail':_0x3ae6c4[_0x597f1d(0x16d)]};}}function execSkillsRemove(_0x1ef4de,_0x14d37a){const _0x4770f7=a109_0x4933b9,_0x1dd77b=runNpxSkillsRemove(_0x1ef4de,{'stdio':'inherit','yes':_0x14d37a});return{'step':0x5,'label':'Remove\x20old\x20skill','ok':_0x1dd77b['ok'],'detail':_0x1dd77b['ok']?'lovrabet/lovrabet-skill\x20removed':_0x1dd77b[_0x4770f7(0x142)]??_0x4770f7(0x14b)+_0x1dd77b[_0x4770f7(0x159)]};}function execSkillsAdd(_0xec9a0b,_0x1253c6){const _0x30bb8c=a109_0x4933b9,_0x38a81f=runNpxSkillsAddGlobal(_0xec9a0b,_0x30bb8c(0x18e),{'stdio':_0x30bb8c(0x1a0),'yes':_0x1253c6});return{'step':0x6,'label':_0x30bb8c(0x14e),'ok':_0x38a81f['ok'],'detail':_0x38a81f['ok']?_0x30bb8c(0x1ac):_0x38a81f['error']??'exit\x20'+_0x38a81f[_0x30bb8c(0x159)]};}function execUpgradeSdk(_0x5ede43){const _0x35ddc4=a109_0x4933b9;if(!_0x5ede43[_0x35ddc4(0x1a4)])return{'step':0x7,'label':_0x35ddc4(0x155),'ok':!![],'detail':_0x35ddc4(0x158)};const {pkgPath:_0x38e1bc,currentVersion:_0x27021b,field:_0x54cb03}=_0x5ede43[_0x35ddc4(0x1a4)];try{const _0x370dc8=readFileSync(_0x38e1bc,_0x35ddc4(0x1ab)),_0x398555=JSON['parse'](_0x370dc8);return _0x398555[_0x54cb03]['@lovrabet/sdk']='latest',writeFileSync(_0x38e1bc,JSON[_0x35ddc4(0x18f)](_0x398555,null,0x2)+'\x0a',_0x35ddc4(0x1ab)),{'step':0x7,'label':_0x35ddc4(0x155),'ok':!![],'detail':_0x54cb03+_0x35ddc4(0x169)+_0x27021b+_0x35ddc4(0x16b)};}catch(_0x2ec22f){return{'step':0x7,'label':_0x35ddc4(0x155),'ok':![],'detail':_0x2ec22f[_0x35ddc4(0x16d)]};}}function tryStat(_0x51026e){try{return statSync(_0x51026e);}catch{return undefined;}}function printSummary(_0x142737){const _0x547aaa=a109_0x4933b9;console[_0x547aaa(0x14d)](''),console[_0x547aaa(0x14d)](a109_0x2de4fe[_0x547aaa(0x16f)]('===\x20Upgrade\x20Summary\x20===')),console[_0x547aaa(0x14d)]('');for(const _0x381728 of _0x142737){const _0x127504=_0x381728['ok']?a109_0x2de4fe['green']('OK'):a109_0x2de4fe[_0x547aaa(0x1a8)](_0x547aaa(0x14a));console[_0x547aaa(0x14d)]('\x20\x20'+_0x127504+_0x547aaa(0x184)+_0x381728['step']+':\x20'+_0x381728[_0x547aaa(0x196)]);if(_0x381728['detail'])console[_0x547aaa(0x14d)](_0x547aaa(0x181)+a109_0x2de4fe[_0x547aaa(0x175)](_0x381728[_0x547aaa(0x171)]));}console[_0x547aaa(0x14d)]('');}export async function upgradeApp(_0x5fa534,_0x2fbee3){const _0x315ded=a109_0x4933b9,_0x26a00d=process[_0x315ded(0x154)](),_0x5b1f66=analyse(_0x26a00d),_0x4b54c4=!_0x5b1f66[_0x315ded(0x156)]&&_0x5b1f66[_0x315ded(0x1a5)][_0x315ded(0x162)]===0x0&&!_0x5b1f66['oldMcpConfig']&&!_0x5b1f66[_0x315ded(0x15e)]&&!_0x5b1f66[_0x315ded(0x1a4)];if(_0x4b54c4){console[_0x315ded(0x14d)](a109_0x2de4fe[_0x315ded(0x153)](_0x315ded(0x19a)));return;}printReport(_0x5b1f66);const _0x1b363a=!!(_0x2fbee3['yes']||_0x2fbee3['Y']||_0x5fa534);if(!_0x1b363a)try{const _0x5a8d07=await askConfirm(_0x315ded(0x13a));if(!_0x5a8d07){console[_0x315ded(0x14d)](a109_0x2de4fe['gray'](_0x315ded(0x146)));return;}}catch(_0x1d9d02){if(_0x1d9d02?.[_0x315ded(0x16d)]===_0x315ded(0x14f)){console['log'](a109_0x2de4fe[_0x315ded(0x175)](_0x315ded(0x146)));return;}throw _0x1d9d02;}const _0x54a49e=[],_0x2eec8a=a109_0x563880({'text':_0x315ded(0x187),'color':_0x315ded(0x1ad)})['start'](),_0x1407d7=execConfigMigration(_0x5b1f66,_0x26a00d);_0x54a49e[_0x315ded(0x15f)](_0x1407d7),_0x2eec8a[_0x1407d7['ok']?_0x315ded(0x199):'fail'](_0x315ded(0x19b)+(_0x1407d7[_0x315ded(0x171)]??(_0x1407d7['ok']?_0x315ded(0x17f):'failed')));const _0x30d062=resolve(_0x26a00d,_0x315ded(0x1a9)),_0x53311c=a109_0x563880({'text':'Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','color':_0x315ded(0x1ad)})[_0x315ded(0x186)]();if(existsSync(_0x30d062))try{rmSync(_0x30d062,{'recursive':!![],'force':!![]}),_0x53311c[_0x315ded(0x199)](_0x315ded(0x149)),_0x54a49e[_0x315ded(0x15f)]({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![]});}catch(_0x1f674b){_0x53311c[_0x315ded(0x194)](_0x315ded(0x12f)+_0x1f674b[_0x315ded(0x16d)]),_0x54a49e[_0x315ded(0x15f)]({'step':0x2,'label':_0x315ded(0x17a),'ok':![],'detail':_0x1f674b[_0x315ded(0x16d)]});}else _0x53311c[_0x315ded(0x1a7)](_0x315ded(0x167)),_0x54a49e['push']({'step':0x2,'label':'Remove\x20.lovrabet/','ok':!![],'detail':'skipped'});const _0x23a489=a109_0x563880({'text':_0x315ded(0x16c),'color':_0x315ded(0x1ad)})[_0x315ded(0x186)](),_0x10c1be=execRemoveOldArtifacts(_0x5b1f66['oldArtifacts']);_0x54a49e[_0x315ded(0x15f)](_0x10c1be),_0x23a489[_0x10c1be['ok']?_0x315ded(0x199):_0x315ded(0x194)](_0x315ded(0x166)+(_0x10c1be[_0x315ded(0x171)]??(_0x10c1be['ok']?_0x315ded(0x17f):'failed')));const _0x2b8a88=a109_0x563880({'text':_0x315ded(0x173),'color':_0x315ded(0x1ad)})[_0x315ded(0x186)](),_0x1c0fae=execCleanMcp(_0x5b1f66);_0x54a49e[_0x315ded(0x15f)](_0x1c0fae),_0x2b8a88[_0x1c0fae['ok']?_0x315ded(0x199):_0x315ded(0x194)](_0x315ded(0x161)+(_0x1c0fae[_0x315ded(0x171)]??(_0x1c0fae['ok']?_0x315ded(0x17f):_0x315ded(0x19c))));const _0xf6f5dc=a109_0x563880({'text':_0x315ded(0x1af),'color':_0x315ded(0x1ad)})[_0x315ded(0x186)](),_0x2eb588=execSkillsRemove(_0x26a00d,_0x1b363a);_0x54a49e['push'](_0x2eb588),_0xf6f5dc[_0x2eb588['ok']?_0x315ded(0x199):'fail'](_0x315ded(0x152)+(_0x2eb588[_0x315ded(0x171)]??(_0x2eb588['ok']?_0x315ded(0x17f):'failed')));const _0x3997cc=a109_0x563880({'text':_0x315ded(0x1b1),'color':_0x315ded(0x1ad)})['start'](),_0x106561=execSkillsAdd(_0x26a00d,_0x1b363a);_0x54a49e['push'](_0x106561),_0x3997cc[_0x106561['ok']?'succeed':_0x315ded(0x194)](_0x315ded(0x18c)+(_0x106561['detail']??(_0x106561['ok']?_0x315ded(0x17f):_0x315ded(0x19c))));const _0x68ce06=a109_0x563880({'text':_0x315ded(0x17d),'color':_0x315ded(0x1ad)})['start'](),_0xd529e3=execUpgradeSdk(_0x5b1f66);_0x54a49e[_0x315ded(0x15f)](_0xd529e3),_0x68ce06[_0xd529e3['ok']?_0x315ded(0x199):'fail'](_0x315ded(0x190)+(_0xd529e3[_0x315ded(0x171)]??(_0xd529e3['ok']?'done':_0x315ded(0x19c)))),printSummary(_0x54a49e);const _0x5492a3=_0x54a49e[_0x315ded(0x1a2)](_0x3fddcb=>!_0x3fddcb['ok']);_0x5492a3?console[_0x315ded(0x14d)](a109_0x2de4fe[_0x315ded(0x13b)](_0x315ded(0x160))):console['log'](a109_0x2de4fe[_0x315ded(0x153)](_0x315ded(0x141))),_0xd529e3['ok']&&_0x5b1f66[_0x315ded(0x1a4)]&&(console[_0x315ded(0x14d)](''),console['log'](a109_0x2de4fe[_0x315ded(0x16f)]['cyan'](_0x315ded(0x183))),console[_0x315ded(0x14d)](a109_0x2de4fe[_0x315ded(0x1ad)](_0x315ded(0x177))),console['log'](''),console[_0x315ded(0x14d)](a109_0x2de4fe[_0x315ded(0x1b3)](_0x315ded(0x14c))),console[_0x315ded(0x14d)](a109_0x2de4fe[_0x315ded(0x1b3)]('\x20\x20#\x20or')),console[_0x315ded(0x14d)](a109_0x2de4fe[_0x315ded(0x1b3)](_0x315ded(0x1b2))),console[_0x315ded(0x14d)](''));}
|
package/lib/commands/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a110_0x304720=a110_0x2f24;(function(_0x37db36,_0x37d4cc){const _0x538ca7=a110_0x2f24,_0x26682d=_0x37db36();while(!![]){try{const _0x11ee80=-parseInt(_0x538ca7(0x17c))/0x1*(-parseInt(_0x538ca7(0x16f))/0x2)+parseInt(_0x538ca7(0x15d))/0x3*(-parseInt(_0x538ca7(0x155))/0x4)+parseInt(_0x538ca7(0x14d))/0x5+-parseInt(_0x538ca7(0x152))/0x6*(-parseInt(_0x538ca7(0x150))/0x7)+-parseInt(_0x538ca7(0x15b))/0x8+parseInt(_0x538ca7(0x17a))/0x9*(parseInt(_0x538ca7(0x161))/0xa)+-parseInt(_0x538ca7(0x157))/0xb*(-parseInt(_0x538ca7(0x167))/0xc);if(_0x11ee80===_0x37d4cc)break;else _0x26682d['push'](_0x26682d['shift']());}catch(_0x17fbe9){_0x26682d['push'](_0x26682d['shift']());}}}(a110_0x4c2e,0x83348));import{apiDefinitions}from'../commands/api/index.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{pageDefinitions}from'../commands/page/index.js';import{dataDefinitions}from'../commands/data/index.js';import{dbDefinitions}from'../commands/db/index.js';import{codegenDefinitions}from'../commands/codegen/index.js';import{menuDefinitions}from'../commands/menu/index.js';import{appDefinitions}from'../commands/app/index.js';import{configDefinitions}from'../commands/config/index.js';import{doctorDefinition}from'../commands/doctor.js';import{updateDefinition}from'../commands/cli-update.js';import{schemaDefinition}from'../commands/schema.js';import{issueDefinitions}from'../commands/issue/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{skillDefinitions}from'../commands/skill/index.js';import{projectDefinitions}from'../commands/project/index.js';import{initDefinitions}from'../commands/init/index.js';import{runDefinition}from'../commands/run/index.js';function a110_0x4c2e(){const _0x14665e=['write','build','install','4110GVsaFe','auth','API','Dataset\x20&\x20Operations','risk','<script>','312324qzajpq','Smart\x20List\x20Pages','logout','\x20\x20[high-risk-write]','set','\x20\x20[write]','from','SQL\x20Queries','389798IZCccU','read','defaultCommand','Menu','Quick\x20Start','Project','command','Configuration','wildcardDef','Self\x20Update','create','6084BUbUPy','service','3VheGVh','project','Platform\x20Issue','BFF\x20Scripts','Code\x20Generation','push','has','get','Skills','2482240ByQziI','isSingleCommand','Run\x20Scripts','421456mqGAyy','Run\x20any\x20package.json\x20script','84hAyVWL','show','App\x20Management','13224nwFcOu','login','55SNvQIt','preview','commands','run','8088720kyPEKb','skill','711VfAIMh'];a110_0x4c2e=function(){return _0x14665e;};return a110_0x4c2e();}function a110_0x2f24(_0x141e37,_0x2d5309){_0x141e37=_0x141e37-0x145;const _0x4c2e52=a110_0x4c2e();let _0x2f2485=_0x4c2e52[_0x141e37];return _0x2f2485;}export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x259c1c){const _0x38616d=a110_0x2f24;for(const _0x4c7984 of _0x259c1c){definitions[_0x38616d(0x16b)](_0x4c7984['service']+':'+_0x4c7984['command'],_0x4c7984);let _0x2d3b07=serviceGroups['get'](_0x4c7984[_0x38616d(0x17b)]);!_0x2d3b07&&(_0x2d3b07=[],serviceGroups[_0x38616d(0x16b)](_0x4c7984[_0x38616d(0x17b)],_0x2d3b07)),_0x2d3b07[_0x38616d(0x149)](_0x4c7984);}}function registerDeclarativeService(_0x4e37e7,_0x341e52,_0x40fc68){const _0x2d2f61=a110_0x2f24;registerDefinitions(_0x341e52);_0x40fc68?.[_0x2d2f61(0x177)]&®isterDefinitions([_0x40fc68[_0x2d2f61(0x177)]]);const _0x25cd9c=_0x8e3302=>_0x8e3302===_0x2d2f61(0x170)?'':_0x8e3302===_0x2d2f61(0x15e)?_0x2d2f61(0x16c):_0x2d2f61(0x16a),_0x58cc85={'service':_0x341e52[0x0][_0x2d2f61(0x17b)],'label':_0x4e37e7,'commands':_0x341e52['map'](_0x5af7fc=>({'command':_0x5af7fc[_0x2d2f61(0x175)],'description':_0x5af7fc['description'],'tag':_0x25cd9c(_0x5af7fc[_0x2d2f61(0x165)])})),'declarative':!![],'defaultCommand':_0x40fc68?.[_0x2d2f61(0x171)]??(_0x40fc68?.[_0x2d2f61(0x14e)]?_0x341e52[0x0][_0x2d2f61(0x175)]:undefined),'wildcardDef':_0x40fc68?.[_0x2d2f61(0x177)],'isSingleCommand':_0x40fc68?.[_0x2d2f61(0x14e)]};serviceRegistry[_0x2d2f61(0x149)](_0x58cc85),serviceByName[_0x2d2f61(0x16b)](_0x58cc85[_0x2d2f61(0x17b)],_0x58cc85);}registerDeclarativeService(a110_0x304720(0x173),initDefinitions,{'defaultCommand':a110_0x304720(0x15a),'isSingleCommand':!![]}),registerDeclarativeService(a110_0x304720(0x174),projectDefinitions),registerDeclarativeService(a110_0x304720(0x154),appDefinitions),registerDeclarativeService(a110_0x304720(0x14f),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry['length']-0x1];last[a110_0x304720(0x159)]=[{'command':a110_0x304720(0x166),'description':a110_0x304720(0x151),'tag':''}];}registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':a110_0x304720(0x156)}),registerDeclarativeService(a110_0x304720(0x178),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Schema',[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a110_0x304720(0x176),configDefinitions),registerDeclarativeService(a110_0x304720(0x146),issueDefinitions),registerDeclarativeService(a110_0x304720(0x163),apiDefinitions),registerDeclarativeService(a110_0x304720(0x172),menuDefinitions),registerDeclarativeService('Database\x20Connections',dbDefinitions),registerDeclarativeService(a110_0x304720(0x164),datasetDefinitions),registerDeclarativeService(a110_0x304720(0x168),pageDefinitions),registerDeclarativeService('Instant\x20API',dataDefinitions),registerDeclarativeService(a110_0x304720(0x147),bffDefinitions),registerDeclarativeService(a110_0x304720(0x16e),sqlDefinitions),registerDeclarativeService(a110_0x304720(0x148),codegenDefinitions),registerDeclarativeService(a110_0x304720(0x14c),skillDefinitions),registerDeclarativeService('Logs',logsDefinitions,{'defaultCommand':a110_0x304720(0x153)});export const deprecatedAliases={'create':{'service':a110_0x304720(0x145),'command':a110_0x304720(0x179)},'start':{'service':a110_0x304720(0x15a),'command':'start'},'build':{'service':'run','command':a110_0x304720(0x15f)},'preview':{'service':a110_0x304720(0x15a),'command':a110_0x304720(0x158)},'logout':{'service':a110_0x304720(0x162),'command':a110_0x304720(0x169)},'skills':{'service':a110_0x304720(0x15c),'command':a110_0x304720(0x160)}};export const deprecatedSubcommands={'bff':{'new':'create'},'sql':{'new':'create'}};export function resolveDeprecatedSubcommand(_0x3e04c1,_0x488192){return deprecatedSubcommands[_0x3e04c1]?.[_0x488192];}export function findDefinition(_0x28bfeb,_0xc9e46b){const _0x1da520=a110_0x304720;return definitions[_0x1da520(0x14b)](_0x28bfeb+':'+_0xc9e46b);}export function isKnownService(_0x4fd220){const _0x442f82=a110_0x304720;return serviceByName[_0x442f82(0x14a)](_0x4fd220);}export function isDeclarativeService(_0x4fca2e){const _0x7c27e4=a110_0x304720;return serviceGroups[_0x7c27e4(0x14a)](_0x4fca2e)||serviceByName[_0x7c27e4(0x14b)](_0x4fca2e)?.[_0x7c27e4(0x177)]!==undefined;}export function getServiceEntry(_0x312579){const _0x4b23ff=a110_0x304720;return serviceByName[_0x4b23ff(0x14b)](_0x312579);}export function getLegacyHandler(_0x15c746,_0xa80413){return undefined;}export function getAllDefinitions(){const _0x34cb34=a110_0x304720;return Array[_0x34cb34(0x16d)](definitions['values']());}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a111_0x34d413=a111_0x16e5;(function(_0x27cda0,_0x8486f2){const _0x18161a=a111_0x16e5,_0x1eafec=_0x27cda0();while(!![]){try{const _0xc4a7c2=parseInt(_0x18161a(0xa6))/0x1*(parseInt(_0x18161a(0x9d))/0x2)+parseInt(_0x18161a(0x73))/0x3+parseInt(_0x18161a(0x68))/0x4*(-parseInt(_0x18161a(0x99))/0x5)+-parseInt(_0x18161a(0x8e))/0x6+-parseInt(_0x18161a(0x72))/0x7+parseInt(_0x18161a(0x7e))/0x8*(parseInt(_0x18161a(0x80))/0x9)+parseInt(_0x18161a(0x67))/0xa;if(_0xc4a7c2===_0x8486f2)break;else _0x1eafec['push'](_0x1eafec['shift']());}catch(_0x2af2d4){_0x1eafec['push'](_0x1eafec['shift']());}}}(a111_0x4c7c,0xc7c77));import{readFileSync,existsSync}from'node:fs';import{CLI_BIN_NAME}from'../../constant/cli.js';import{resolve,delimiter,join}from'node:path';import{spawn}from'node:child_process';import{CliErrors}from'../../errors.js';import{checkSdkVersion,printSdkUpgradeWarning}from'../../utils/check-sdk-version.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../utils/cli-version-check.js';const VERSION_CHECK_SCRIPTS=new Set([a111_0x34d413(0xa1),a111_0x34d413(0x85)]);function readPackageScripts(_0x4fa494){const _0x586a75=a111_0x34d413,_0x3de6bf=resolve(_0x4fa494,_0x586a75(0x78));if(!existsSync(_0x3de6bf))return null;try{const _0x4a82c5=JSON['parse'](readFileSync(_0x3de6bf,_0x586a75(0x74)));return _0x4a82c5[_0x586a75(0x96)]??{};}catch{return null;}}function a111_0x4c7c(){const _0x5f2b58=['build','validation','dev','cwd','\x0a\x20\x20Usage:\x20','all','belowMinimum','max','(none)','\x20\x20AVAILABLE\x20SCRIPTS\x20\x20(current\x20project)','slice','1022514hdMTXf','read','error','keys','node_modules','\x20run\x20','pnpm-lock.yaml','args','scripts','push','bun','100glyrQZ','entries','--watch','\x20\x20\x20\x20','92fiyskw','boolean','length','log','start','bun.lockb','yarn.lock','map','preview','24342TURGyy','No\x20package.json\x20found\x20in\x20current\x20directory.','8549240pyiGGJ','206284XoWygL','bool','\x20run\x20preview\x20--watch\x20\x20\x20#\x20parallel\x20build\x20--watch\x20+\x20preview','\x20run\x20<script>\x0a','bun.lock','Script\x20\x22','needsUpgrade','watch','join','npm','6901972rpIoAp','204195YKLAfa','utf-8','.bin','Available:\x20','\x0a\x20\x20Available\x20scripts:\x0a','package.json','inherit','run','vite\x20build\x20--watch\x20exited\x20with\x20code\x20','\x22\x20not\x20found\x20in\x20package.json.','padEnd','265768ZlseLE','yarn','261xOeVkF','has','\x20run\x20build'];a111_0x4c7c=function(){return _0x5f2b58;};return a111_0x4c7c();}function a111_0x16e5(_0x59ea3d,_0x559ec4){_0x59ea3d=_0x59ea3d-0x67;const _0x4c7cd1=a111_0x4c7c();let _0x16e599=_0x4c7cd1[_0x59ea3d];return _0x16e599;}function detectPackageManager(_0x545973){const _0x21d95a=a111_0x34d413;if(existsSync(resolve(_0x545973,_0x21d95a(0xa2)))||existsSync(resolve(_0x545973,_0x21d95a(0x6c))))return _0x21d95a(0x98);if(existsSync(resolve(_0x545973,_0x21d95a(0x94))))return'pnpm';if(existsSync(resolve(_0x545973,_0x21d95a(0xa3))))return _0x21d95a(0x7f);return _0x21d95a(0x71);}async function versionCheck(_0x444203){const _0xc18546=a111_0x34d413,_0xbf80bf=await checkCliVersion();(_0xbf80bf[_0xc18546(0x6e)]||_0xbf80bf[_0xc18546(0x89)])&&(printCliUpgradeWarning(_0xbf80bf),assertCliVersionSupported(_0xbf80bf));const _0x31084f=await checkSdkVersion(_0x444203);if(_0x31084f[_0xc18546(0x6e)])printSdkUpgradeWarning(_0x31084f);}function spawnScript(_0x4f817d,_0x209f60,_0x2309be,_0x134f28){return new Promise((_0x1a5985,_0x48e64c)=>{const _0x237f5e=a111_0x16e5,_0x21959a=[_0x237f5e(0x7a),_0x209f60,..._0x2309be],_0x4b84e=spawn(_0x4f817d,_0x21959a,{'cwd':_0x134f28,'stdio':_0x237f5e(0x79),'shell':!![],'env':{...process.env,'PATH':''+join(_0x134f28,_0x237f5e(0x92),_0x237f5e(0x75))+delimiter+process.env.PATH}});_0x4b84e['on']('close',_0x283f65=>{const _0x52794d=_0x237f5e;if(_0x283f65===0x0||_0x283f65===null)_0x1a5985();else _0x48e64c(new Error(_0x4f817d+_0x52794d(0x93)+_0x209f60+'\x20exited\x20with\x20code\x20'+_0x283f65));}),_0x4b84e['on'](_0x237f5e(0x90),_0x48e64c);});}function spawnViteBuildWatch(_0x38a05f){return new Promise((_0x5edcd9,_0x262705)=>{const _0x45f1de=a111_0x16e5,_0x4aed93=spawn('vite',[_0x45f1de(0x83),_0x45f1de(0x9b)],{'cwd':_0x38a05f,'stdio':'inherit','shell':!![],'env':{...process.env,'PATH':''+join(_0x38a05f,_0x45f1de(0x92),_0x45f1de(0x75))+delimiter+process.env.PATH}});_0x4aed93['on']('close',_0x110df1=>{const _0x6920bc=_0x45f1de;if(_0x110df1===0x0||_0x110df1===null)_0x5edcd9();else _0x262705(new Error(_0x6920bc(0x7b)+_0x110df1));}),_0x4aed93['on']('error',_0x262705);});}function spawnVitePreview(_0xb0788c){return new Promise((_0x5700e8,_0x234cba)=>{const _0x1a8a3e=a111_0x16e5,_0x2757e4=spawn('vite',[_0x1a8a3e(0xa5)],{'cwd':_0xb0788c,'stdio':'inherit','shell':!![],'env':{...process.env,'PATH':''+join(_0xb0788c,_0x1a8a3e(0x92),_0x1a8a3e(0x75))+delimiter+process.env.PATH}});_0x2757e4['on']('close',_0x283022=>{if(_0x283022===0x0||_0x283022===null)_0x5700e8();else _0x234cba(new Error('vite\x20preview\x20exited\x20with\x20code\x20'+_0x283022));}),_0x2757e4['on']('error',_0x234cba);});}const runFlags=[{'name':a111_0x34d413(0x6f),'type':a111_0x34d413(0x9e),'description':'Enable\x20watch\x20mode\x20for\x20preview','default':![]}];export const runDefinition={'service':a111_0x34d413(0x7a),'command':'run','description':'Run\x20a\x20package.json\x20script','risk':a111_0x34d413(0x8f),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':'script','description':'Script\x20name\x20defined\x20in\x20package.json','required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x2c4d1d=a111_0x34d413,_0x1b65c4=readPackageScripts(process['cwd']()),_0x250d50=[];if(_0x1b65c4&&Object['keys'](_0x1b65c4)[_0x2c4d1d(0x9f)]>0x0){const _0x488bef=Object[_0x2c4d1d(0x91)](_0x1b65c4),_0x1147f5=Math[_0x2c4d1d(0x8a)](..._0x488bef[_0x2c4d1d(0xa4)](_0x486647=>_0x486647[_0x2c4d1d(0x9f)]));_0x250d50[_0x2c4d1d(0x97)](_0x2c4d1d(0x8c));for(const [_0xf94a23,_0xf6c0d9]of Object['entries'](_0x1b65c4)){_0x250d50[_0x2c4d1d(0x97)]('\x20\x20\x20\x20'+CLI_BIN_NAME+'\x20run\x20'+_0xf94a23[_0x2c4d1d(0x7d)](_0x1147f5+0x2)+'#\x20'+_0xf6c0d9);}}else _0x250d50[_0x2c4d1d(0x97)]('\x20\x20EXAMPLES'),_0x250d50['push'](_0x2c4d1d(0x9c)+CLI_BIN_NAME+'\x20run\x20start'),_0x250d50[_0x2c4d1d(0x97)](_0x2c4d1d(0x9c)+CLI_BIN_NAME+_0x2c4d1d(0x82)),_0x250d50[_0x2c4d1d(0x97)](_0x2c4d1d(0x9c)+CLI_BIN_NAME+'\x20run\x20preview'),_0x250d50[_0x2c4d1d(0x97)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x2c4d1d(0x6a));return _0x250d50[_0x2c4d1d(0x70)]('\x0a');},async 'execute'(_0x3ee821){const _0x9aa98d=a111_0x34d413,_0x311395=process[_0x9aa98d(0x86)](),_0x4ae7f5=_0x3ee821[_0x9aa98d(0x95)][0x0],_0x448741=_0x3ee821[_0x9aa98d(0x95)][_0x9aa98d(0x8d)](0x1),_0x5a7396=readPackageScripts(_0x311395);if(!_0x5a7396)throw CliErrors[_0x9aa98d(0x84)](_0x9aa98d(0xa7));if(!_0x4ae7f5){const _0xa58de2=Object[_0x9aa98d(0x91)](_0x5a7396);if(_0xa58de2['length']===0x0)console[_0x9aa98d(0xa0)]('No\x20scripts\x20defined\x20in\x20package.json.');else{console[_0x9aa98d(0xa0)](_0x9aa98d(0x77));const _0x2b82eb=Math[_0x9aa98d(0x8a)](..._0xa58de2[_0x9aa98d(0xa4)](_0xac2ad2=>_0xac2ad2[_0x9aa98d(0x9f)]));for(const [_0x302621,_0x314ea5]of Object[_0x9aa98d(0x9a)](_0x5a7396)){console['log']('\x20\x20\x20\x20'+_0x302621[_0x9aa98d(0x7d)](_0x2b82eb+0x2)+_0x314ea5);}console['log'](_0x9aa98d(0x87)+CLI_BIN_NAME+_0x9aa98d(0x6b));}return{'ok':!![]};}if(!_0x5a7396[_0x4ae7f5])throw CliErrors[_0x9aa98d(0x84)](_0x9aa98d(0x6d)+_0x4ae7f5+_0x9aa98d(0x7c),_0x9aa98d(0x76)+(Object[_0x9aa98d(0x91)](_0x5a7396)[_0x9aa98d(0x70)](',\x20')||_0x9aa98d(0x8b)));const _0x943779=detectPackageManager(_0x311395);VERSION_CHECK_SCRIPTS[_0x9aa98d(0x81)](_0x4ae7f5)&&await versionCheck(_0x311395);if(_0x4ae7f5===_0x9aa98d(0xa5)&&_0x3ee821[_0x9aa98d(0x69)](_0x9aa98d(0x6f)))return await Promise[_0x9aa98d(0x88)]([spawnViteBuildWatch(_0x311395),spawnVitePreview(_0x311395)]),{'ok':!![]};return await spawnScript(_0x943779,_0x4ae7f5,_0x448741,_0x311395),{'ok':!![]};}};
|
package/lib/commands/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
const a112_0x96c6dc=a112_0x424e;function a112_0x424e(_0x38ee7d,_0x4696b0){_0x38ee7d=_0x38ee7d-0x10b;const _0x4a5dd2=a112_0x4a5d();let _0x424ec5=_0x4a5dd2[_0x38ee7d];return _0x424ec5;}(function(_0x18a0a7,_0x432a5d){const _0x5d13ab=a112_0x424e,_0x2272c9=_0x18a0a7();while(!![]){try{const _0x2058e6=parseInt(_0x5d13ab(0x111))/0x1*(-parseInt(_0x5d13ab(0x10b))/0x2)+-parseInt(_0x5d13ab(0x10f))/0x3+-parseInt(_0x5d13ab(0x117))/0x4*(-parseInt(_0x5d13ab(0x10d))/0x5)+parseInt(_0x5d13ab(0x10c))/0x6*(parseInt(_0x5d13ab(0x119))/0x7)+-parseInt(_0x5d13ab(0x112))/0x8+-parseInt(_0x5d13ab(0x115))/0x9*(parseInt(_0x5d13ab(0x10e))/0xa)+parseInt(_0x5d13ab(0x114))/0xb;if(_0x2058e6===_0x432a5d)break;else _0x2272c9['push'](_0x2272c9['shift']());}catch(_0x534e36){_0x2272c9['push'](_0x2272c9['shift']());}}}(a112_0x4a5d,0xdbdcd));function a112_0x4a5d(){const _0x2274d6=['45624CNbgoo','207095fLIoCQ','20FRniTN','791217SAZWyc','read','65GoIObK','10491208jHYYRL','json','18905040YYHjwp','2197017gieVVh','export','124cFdWHM','Export\x20machine-readable\x20command\x20schema\x20(JSON)','1582RrVPpD','54068xcmHmZ'];a112_0x4a5d=function(){return _0x2274d6;};return a112_0x4a5d();}import{buildSchemaPayload}from'../framework/schema-export.js';async function execute(_0x1fd860){const _0x5a463e=await buildSchemaPayload();return{'ok':!![],'data':_0x5a463e};}export const schemaDefinition={'service':'schema','command':a112_0x96c6dc(0x116),'description':a112_0x96c6dc(0x118),'risk':a112_0x96c6dc(0x110),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a112_0x96c6dc(0x113),'flags':[],'execute':execute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a113_0x13c3(){const _0x2a8f2d=['执行安装技能包命令(委托给\x20npx\x20skills\x20add\x20-g\x20-y)','7652840gykOyy','9746060stLtmA',')...','36rqQBzc','Check\x20network\x20connectivity\x20and\x20try\x20again.','Install\x20developer\x20skill\x20package','Skipped\x20npx\x20(RABETBASE_SKIP_NPX_SKILLS=1);\x20assuming\x20skill\x20is\x20already\x20present.','lovrabet/rabetbase','2665205KwCDop','cwd','skill','5970016KDUkxP','8567034eWeNWQ','setLogPath','61764VWFGiI','skipped','skill-install','write','inherit','1151749laWNKv','6WugEUb','npx\x20skills\x20add\x20failed:\x20','error','114OsGbdQ','log'];a113_0x13c3=function(){return _0x2a8f2d;};return a113_0x13c3();}const a113_0x4a4f9c=a113_0x5cfc;(function(_0x134e44,_0x10544b){const _0x992936=a113_0x5cfc,_0x24c7b6=_0x134e44();while(!![]){try{const _0x4abd65=-parseInt(_0x992936(0xa2))/0x1+-parseInt(_0x992936(0x9d))/0x2*(parseInt(_0x992936(0xa6))/0x3)+-parseInt(_0x992936(0x9a))/0x4+parseInt(_0x992936(0x97))/0x5+parseInt(_0x992936(0xa3))/0x6*(parseInt(_0x992936(0x9b))/0x7)+-parseInt(_0x992936(0x8f))/0x8+-parseInt(_0x992936(0x92))/0x9*(-parseInt(_0x992936(0x90))/0xa);if(_0x4abd65===_0x10544b)break;else _0x24c7b6['push'](_0x24c7b6['shift']());}catch(_0x575ff9){_0x24c7b6['push'](_0x24c7b6['shift']());}}}(a113_0x13c3,0xd7139));import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';function a113_0x5cfc(_0x1c9955,_0x4a0461){_0x1c9955=_0x1c9955-0x8f;const _0x13c39a=a113_0x13c3();let _0x5cfc88=_0x13c39a[_0x1c9955];return _0x5cfc88;}import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE}from'../../skills/npx-skills-add.js';export const skillDefinitions=[{'service':a113_0x4a4f9c(0x99),'command':'install','description':a113_0x4a4f9c(0x94),'risk':a113_0x4a4f9c(0xa0),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0xb3f817){const _0x1764d4=a113_0x4a4f9c;logger[_0x1764d4(0x9c)](process[_0x1764d4(0x98)]()),logger['info'](_0x1764d4(0x9f),_0x1764d4(0xa8));const {runNpxSkillsAddGlobal:_0x24af94}=await import('../../skills/npx-skills-add.js'),_0x5bf5cd=_0xb3f817['nonInteractive']?'pipe':_0x1764d4(0xa1);console[_0x1764d4(0xa7)]('Installing\x20official\x20skill\x20via\x20npx\x20('+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+_0x1764d4(0x91));const _0x144f6f=_0x24af94(process['cwd'](),_0x1764d4(0x96),{'stdio':_0x5bf5cd});if(_0x144f6f[_0x1764d4(0x9e)])console[_0x1764d4(0xa7)](_0x1764d4(0x95));else{if(_0x144f6f['ok'])console[_0x1764d4(0xa7)](CLI_BIN_NAME+'\x20skill\x20installed');else throw CliErrors['apiError'](_0x1764d4(0xa4)+(_0x144f6f[_0x1764d4(0xa5)]||'unknown'),_0x1764d4(0x93));}return{'ok':!![]};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a114_0x5731d0=a114_0x4fb5;(function(_0x402598,_0x176709){const _0xe49289=a114_0x4fb5,_0xdbb87=_0x402598();while(!![]){try{const _0x539e86=parseInt(_0xe49289(0x167))/0x1+parseInt(_0xe49289(0x169))/0x2*(parseInt(_0xe49289(0x15c))/0x3)+parseInt(_0xe49289(0x195))/0x4+-parseInt(_0xe49289(0x194))/0x5+parseInt(_0xe49289(0x174))/0x6+parseInt(_0xe49289(0x151))/0x7*(-parseInt(_0xe49289(0x153))/0x8)+-parseInt(_0xe49289(0x158))/0x9*(-parseInt(_0xe49289(0x15f))/0xa);if(_0x539e86===_0x176709)break;else _0xdbb87['push'](_0xdbb87['shift']());}catch(_0x225801){_0xdbb87['push'](_0xdbb87['shift']());}}}(a114_0x4e78,0xa6ed5));import{writeFile}from'node:fs/promises';function a114_0x4e78(){const _0x5607e7=['--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','lastSync','parse','sqlName','new','请选择本地\x20SQL\x20模式:','SQL\x20名称不能为空','1720780iHNnvf','453128AOPxGC','42196eNHsHO','length','1528UHTZXF','string','db-id','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','create','36LTxzdC','isInteger','description','flagMissing','231aZbnBT','number','lockFilePath','1147780jMzzrC','Created\x20SQL\x20query\x20','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','mybatisXml','Invalid\x20database\x20selection\x20payload:\x20','validation','dbName','sqls','961008XSAsDF','join','7572CGcsKC','SQL\x20query\x20display\x20name','trim','catch','/smartapi/custom/saveUserCustomSql','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','high-risk-write','POST','请选择目标数据库:','sqlRootDir','MyBatis\x20XML(mybatisXml)','2125878jRapsP','stringify','sql','utf8','str','File\x20already\x20exists:\x20','dbId\x20不能为空','nonInteractive','请输入\x20SQL\x20名称:','sqlCode','SELECT\x201\x20AS\x20id;','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','dbId','✎\x20手动输入\x20dbId','toISOString','普通\x20SQL(sql)','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','Local\x20SQL\x20file\x20mode','name','appCode','isFinite','适合带动态标签的\x20MyBatis\x20XML\x20SQL','mode','__manual__','dbId\x20必须为正整数'];a114_0x4e78=function(){return _0x5607e7;};return a114_0x4e78();}import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{buildSqlRelativePath}from'../../core/sql-sync/utils.js';import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0xafe9e4){const _0x375d27=a114_0x4fb5;if(_0xafe9e4===_0x375d27(0x162))return['<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','\x20\x20SELECT\x201\x20AS\x20id','</select>',''][_0x375d27(0x168)]('\x0a');return[_0x375d27(0x17e),''][_0x375d27(0x168)]('\x0a');}export const sqlCreate={'service':a114_0x5731d0(0x176),'command':a114_0x5731d0(0x157),'description':a114_0x5731d0(0x156),'risk':a114_0x5731d0(0x16f),'flags':[{'name':a114_0x5731d0(0x186),'type':'string','description':a114_0x5731d0(0x16a)},{'name':'db-id','type':a114_0x5731d0(0x15d),'description':'Target\x20database\x20ID'},{'name':a114_0x5731d0(0x18a),'type':a114_0x5731d0(0x154),'enum':['sql',a114_0x5731d0(0x162)],'description':a114_0x5731d0(0x185)}],async 'validate'(_0x25dd91){const _0x4bceab=a114_0x5731d0;if(!_0x25dd91[_0x4bceab(0x17b)])return;if(!_0x25dd91[_0x4bceab(0x178)](_0x4bceab(0x186))[_0x4bceab(0x16b)]())throw CliErrors[_0x4bceab(0x15b)](_0x4bceab(0x186),'--name\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x3d5f0a=resolveProvidedDbId(_0x25dd91);if(typeof _0x3d5f0a!==_0x4bceab(0x15d)||!Number[_0x4bceab(0x188)](_0x3d5f0a)||_0x3d5f0a<=0x0)throw CliErrors[_0x4bceab(0x15b)](_0x4bceab(0x155),_0x4bceab(0x18d));if(!_0x25dd91[_0x4bceab(0x178)](_0x4bceab(0x18a))[_0x4bceab(0x16b)]())throw CliErrors[_0x4bceab(0x15b)](_0x4bceab(0x18a),_0x4bceab(0x184));},async 'dryRun'(_0x37859b){const _0x55fa84=a114_0x5731d0,_0x541840=loadSqlProjectConfig(_0x37859b[_0x55fa84(0x187)]),{sqlName:_0x2eb132,dbId:_0x36c8fa,dbName:_0x5d9f9b,mode:_0x4266dc}=await resolveSqlNewInputs(_0x37859b),_0x168461=buildSqlRelativePath('<server-generated-sqlCode>',_0x2eb132,_0x5d9f9b,_0x4266dc,_0x36c8fa),_0x15f9a1=_0x541840['sqlRootDir']+'/'+_0x168461;return{'method':_0x55fa84(0x170),'url':_0x55fa84(0x16d),'body':{'appCode':_0x37859b[_0x55fa84(0x187)],'sqlName':_0x2eb132,'dbId':_0x36c8fa,'mode':_0x4266dc,'localPath':_0x15f9a1},'description':_0x55fa84(0x161)+_0x541840[_0x55fa84(0x172)]};},async 'execute'(_0x387583){const _0x4e8dea=a114_0x5731d0,_0x17faa7=loadSqlProjectConfig(_0x387583['appCode']),{sqlName:_0x586efa,dbId:_0x3ebd85,dbName:_0x339fde,mode:_0x39897c}=await resolveSqlNewInputs(_0x387583),_0x461942=generateSqlTemplate(_0x39897c),_0x33b29d=await createSqlQuery({'appCode':_0x387583[_0x4e8dea(0x187)],'sqlName':_0x586efa,'dbId':_0x3ebd85,'sqlContent':_0x461942}),_0x5babb9=ensureRemoteSqlContent(_0x33b29d),_0x12ec05=_0x339fde||await getDbName(_0x387583[_0x4e8dea(0x187)],_0x3ebd85)['catch'](()=>undefined),_0x46354b=buildSqlRelativePath(_0x33b29d['sqlCode'],_0x33b29d[_0x4e8dea(0x190)],_0x12ec05,_0x39897c,_0x3ebd85),_0x1dd25e=_0x17faa7[_0x4e8dea(0x172)]+'/'+_0x46354b,_0x16f4f4=buildLocalSqlFileContent({'sqlCode':_0x33b29d['sqlCode'],'sqlName':_0x33b29d['sqlName'],'dbId':_0x33b29d[_0x4e8dea(0x180)]},_0x5babb9,{'dbName':_0x12ec05,'mode':_0x39897c,'syncedAt':new Date()[_0x4e8dea(0x182)](),'description':_0x33b29d[_0x4e8dea(0x15a)]});if(await fileExists(_0x1dd25e))throw CliErrors[_0x4e8dea(0x164)](_0x4e8dea(0x179)+_0x1dd25e);await ensureParentDirectory(_0x1dd25e),await writeFile(_0x1dd25e,_0x16f4f4,_0x4e8dea(0x177));const _0x597956=await readSqlLockFile(_0x17faa7[_0x4e8dea(0x15e)]),{lockData:_0x3d3bac,appLock:_0xd119e}=ensureSqlLockScope(_0x597956??createEmptySqlLock(),_0x17faa7['appCode'],_0x17faa7['sqlRoot'],_0x4e8dea(0x191));return _0xd119e[_0x4e8dea(0x166)][_0x33b29d[_0x4e8dea(0x17d)]]={...buildSqlLockEntry(_0x33b29d,_0x5babb9,computeSqlContentHash(_0x16f4f4),{'dbName':_0x12ec05}),'path':_0x46354b,'mode':_0x39897c},_0xd119e[_0x4e8dea(0x18e)]=new Date()[_0x4e8dea(0x182)](),await writeSqlLockFile(_0x17faa7[_0x4e8dea(0x15e)],_0x3d3bac),{'ok':!![],'data':{'id':_0x33b29d['id'],'sqlCode':_0x33b29d[_0x4e8dea(0x17d)],'sqlName':_0x33b29d[_0x4e8dea(0x190)],'dbId':_0x33b29d[_0x4e8dea(0x180)],'path':_0x1dd25e,'mode':_0x39897c},'message':_0x4e8dea(0x160)+_0x33b29d[_0x4e8dea(0x17d)]};}};async function resolveSqlNewInputs(_0x47c66a){const _0x292755=await resolveSqlNameInput(_0x47c66a),{dbId:_0x595afc,dbName:_0x31b27e}=await resolveDbSelection(_0x47c66a),_0x50c637=await resolveSqlModeInput(_0x47c66a);return{'sqlName':_0x292755,'dbId':_0x595afc,'dbName':_0x31b27e,'mode':_0x50c637};}async function resolveSqlNameInput(_0x172017){const _0x51489f=a114_0x5731d0,_0x281c59=_0x172017[_0x51489f(0x178)](_0x51489f(0x186))['trim']();if(_0x281c59)return _0x281c59;if(_0x172017[_0x51489f(0x17b)])throw CliErrors['flagMissing'](_0x51489f(0x186),_0x51489f(0x16e));return(await input({'message':_0x51489f(0x17c),'validate':_0x173c66=>_0x173c66[_0x51489f(0x16b)]()?!![]:_0x51489f(0x193)}))['trim']();}async function resolveDbSelection(_0xb63789){const _0x2f607e=a114_0x5731d0,_0x45f249=resolveProvidedDbId(_0xb63789);if(typeof _0x45f249==='number'&&Number[_0x2f607e(0x188)](_0x45f249)&&_0x45f249>0x0)return{'dbId':_0x45f249,'dbName':await getDbName(_0xb63789[_0x2f607e(0x187)],_0x45f249)[_0x2f607e(0x16c)](()=>undefined)};if(_0xb63789[_0x2f607e(0x17b)])throw CliErrors[_0x2f607e(0x15b)](_0x2f607e(0x155),'--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0xf93e95=await listDatabases(_0xb63789[_0x2f607e(0x187)])[_0x2f607e(0x16c)](()=>[]);if(_0xf93e95[_0x2f607e(0x152)]===0x1)return{'dbId':_0xf93e95[0x0][_0x2f607e(0x180)],'dbName':_0xf93e95[0x0]['dbName']};if(_0xf93e95[_0x2f607e(0x152)]>0x1){const _0x36a620=await select({'message':_0x2f607e(0x171),'choices':[..._0xf93e95['map'](_0x35860f=>({'name':_0x35860f[_0x2f607e(0x165)]+'\x20('+_0x35860f[_0x2f607e(0x180)]+')','value':serializeDbSelection(_0x35860f)})),{'name':_0x2f607e(0x181),'value':_0x2f607e(0x18b)}]});if(_0x36a620!=='__manual__')return deserializeDbSelection(_0x36a620);}const _0x503f1e=await input({'message':'请输入目标数据库\x20dbId:','validate':_0x1e17d7=>{const _0x2affa1=_0x2f607e,_0x518141=_0x1e17d7[_0x2affa1(0x16b)]();if(!_0x518141)return _0x2affa1(0x17a);const _0xf6716e=Number(_0x518141);if(!Number[_0x2affa1(0x159)](_0xf6716e)||_0xf6716e<=0x0)return _0x2affa1(0x18c);return!![];}});return{'dbId':Number(_0x503f1e[_0x2f607e(0x16b)]())};}function a114_0x4fb5(_0x28f27f,_0x5d5acc){_0x28f27f=_0x28f27f-0x151;const _0x4e78c0=a114_0x4e78();let _0x4fb501=_0x4e78c0[_0x28f27f];return _0x4fb501;}async function resolveSqlModeInput(_0x8d0a08){const _0x45ca99=a114_0x5731d0,_0x5e284e=_0x8d0a08[_0x45ca99(0x178)](_0x45ca99(0x18a))[_0x45ca99(0x16b)]();if(_0x5e284e===_0x45ca99(0x176)||_0x5e284e==='mybatisXml')return _0x5e284e;if(_0x8d0a08['nonInteractive'])throw CliErrors[_0x45ca99(0x15b)]('mode',_0x45ca99(0x184));return await select({'message':_0x45ca99(0x192),'choices':[{'name':_0x45ca99(0x183),'value':_0x45ca99(0x176),'description':_0x45ca99(0x17f)},{'name':_0x45ca99(0x173),'value':_0x45ca99(0x162),'description':_0x45ca99(0x189)}]});}function serializeDbSelection(_0x3c13fb){const _0x23d547=a114_0x5731d0;return JSON[_0x23d547(0x175)]({'dbId':_0x3c13fb[_0x23d547(0x180)],'dbName':_0x3c13fb[_0x23d547(0x165)]});}function deserializeDbSelection(_0x1b6cdd){const _0xfae2cb=a114_0x5731d0;try{const _0x533fdd=JSON[_0xfae2cb(0x18f)](_0x1b6cdd);if(typeof _0x533fdd[_0xfae2cb(0x180)]===_0xfae2cb(0x15d)&&Number[_0xfae2cb(0x188)](_0x533fdd[_0xfae2cb(0x180)]))return{'dbId':_0x533fdd[_0xfae2cb(0x180)],'dbName':_0x533fdd[_0xfae2cb(0x165)]};}catch{}throw CliErrors[_0xfae2cb(0x164)](_0xfae2cb(0x163)+_0x1b6cdd);}function resolveProvidedDbId(_0x2ed0a1){const _0x4c55a7=a114_0x5731d0,_0x19d8e3=_0x2ed0a1['flag'](_0x4c55a7(0x155));if(typeof _0x19d8e3===_0x4c55a7(0x15d)&&Number[_0x4c55a7(0x188)](_0x19d8e3))return _0x19d8e3;return undefined;}
|
|
1
|
+
const a114_0x53adff=a114_0x51a8;(function(_0x3d7574,_0x4d2b21){const _0x48b020=a114_0x51a8,_0xba76da=_0x3d7574();while(!![]){try{const _0x779122=-parseInt(_0x48b020(0x10c))/0x1+-parseInt(_0x48b020(0x11a))/0x2+-parseInt(_0x48b020(0x121))/0x3*(parseInt(_0x48b020(0x142))/0x4)+parseInt(_0x48b020(0x13f))/0x5+parseInt(_0x48b020(0x123))/0x6*(-parseInt(_0x48b020(0x106))/0x7)+parseInt(_0x48b020(0x144))/0x8*(-parseInt(_0x48b020(0x137))/0x9)+parseInt(_0x48b020(0x140))/0xa*(parseInt(_0x48b020(0x133))/0xb);if(_0x779122===_0x4d2b21)break;else _0xba76da['push'](_0xba76da['shift']());}catch(_0x70e84b){_0xba76da['push'](_0xba76da['shift']());}}}(a114_0x5070,0xab510));import{writeFile}from'node:fs/promises';import{input,select}from'@inquirer/prompts';import{createSqlQuery}from'../../core/api-client.js';import{getDbName,listDatabases}from'../../core/db-resolver.js';function a114_0x51a8(_0xbe0407,_0x1c461e){_0xbe0407=_0xbe0407-0x105;const _0x507014=a114_0x5070();let _0x51a8c8=_0x507014[_0xbe0407];return _0x51a8c8;}import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{buildSqlRelativePath}from'../../core/sql-sync/utils.js';import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x41d484){const _0xe332e0=a114_0x51a8;if(_0x41d484===_0xe332e0(0x118))return['<select\x20id=\x22query\x22\x20resultType=\x22map\x22>',_0xe332e0(0x148),_0xe332e0(0x117),''][_0xe332e0(0x129)]('\x0a');return[_0xe332e0(0x130),''][_0xe332e0(0x129)]('\x0a');}export const sqlCreate={'service':a114_0x53adff(0x13e),'command':a114_0x53adff(0x122),'description':a114_0x53adff(0x11d),'risk':a114_0x53adff(0x13c),'flags':[{'name':'name','type':a114_0x53adff(0x112),'description':'SQL\x20query\x20display\x20name'},{'name':a114_0x53adff(0x11e),'type':a114_0x53adff(0x13d),'description':'Target\x20database\x20ID'},{'name':'mode','type':'string','enum':['sql',a114_0x53adff(0x118)],'description':'Local\x20SQL\x20file\x20mode'}],async 'validate'(_0xa36ab4){const _0x5abc8e=a114_0x53adff;if(!_0xa36ab4[_0x5abc8e(0x10e)])return;if(!_0xa36ab4[_0x5abc8e(0x12b)](_0x5abc8e(0x147))['trim']())throw CliErrors[_0x5abc8e(0x114)](_0x5abc8e(0x147),_0x5abc8e(0x12a));const _0x5b6ce7=resolveProvidedDbId(_0xa36ab4);if(typeof _0x5b6ce7!==_0x5abc8e(0x13d)||!Number[_0x5abc8e(0x109)](_0x5b6ce7)||_0x5b6ce7<=0x0)throw CliErrors[_0x5abc8e(0x114)](_0x5abc8e(0x11e),_0x5abc8e(0x134));if(!_0xa36ab4[_0x5abc8e(0x12b)](_0x5abc8e(0x13a))['trim']())throw CliErrors[_0x5abc8e(0x114)](_0x5abc8e(0x13a),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');},async 'dryRun'(_0x15ae41){const _0x5b4dc4=a114_0x53adff,_0x14fc9a=loadSqlProjectConfig(_0x15ae41[_0x5b4dc4(0x125)]),{sqlName:_0x1dd754,dbId:_0x52ebaf,dbName:_0x1e1c18,mode:_0x5f0681}=await resolveSqlNewInputs(_0x15ae41),_0x90760d=buildSqlRelativePath(_0x5b4dc4(0x10d),_0x1dd754,_0x1e1c18,_0x5f0681,_0x52ebaf),_0x454221=_0x14fc9a[_0x5b4dc4(0x10f)]+'/'+_0x90760d;return{'method':_0x5b4dc4(0x146),'url':_0x5b4dc4(0x116),'body':{'appCode':_0x15ae41[_0x5b4dc4(0x125)],'sqlName':_0x1dd754,'dbId':_0x52ebaf,'mode':_0x5f0681,'localPath':_0x454221},'description':_0x5b4dc4(0x107)+_0x14fc9a['sqlRootDir']};},async 'execute'(_0x18ef6e){const _0x5f5b83=a114_0x53adff,_0x43d522=loadSqlProjectConfig(_0x18ef6e[_0x5f5b83(0x125)]),{sqlName:_0x3a0a65,dbId:_0x69e80c,dbName:_0x32ec05,mode:_0x33935a}=await resolveSqlNewInputs(_0x18ef6e),_0x2a8d54=generateSqlTemplate(_0x33935a),_0x5b2a0e=await createSqlQuery({'appCode':_0x18ef6e['appCode'],'sqlName':_0x3a0a65,'dbId':_0x69e80c,'sqlContent':_0x2a8d54}),_0x5b47a6=ensureRemoteSqlContent(_0x5b2a0e),_0x520963=_0x32ec05||await getDbName(_0x18ef6e[_0x5f5b83(0x125)],_0x69e80c)[_0x5f5b83(0x124)](()=>undefined),_0x1e0ea5=buildSqlRelativePath(_0x5b2a0e[_0x5f5b83(0x143)],_0x5b2a0e[_0x5f5b83(0x128)],_0x520963,_0x33935a,_0x69e80c),_0x178793=_0x43d522['sqlRootDir']+'/'+_0x1e0ea5,_0x284912=buildLocalSqlFileContent({'sqlCode':_0x5b2a0e['sqlCode'],'sqlName':_0x5b2a0e[_0x5f5b83(0x128)],'dbId':_0x5b2a0e[_0x5f5b83(0x126)]},_0x5b47a6,{'dbName':_0x520963,'mode':_0x33935a,'syncedAt':new Date()[_0x5f5b83(0x111)](),'description':_0x5b2a0e[_0x5f5b83(0x113)]});if(await fileExists(_0x178793))throw CliErrors[_0x5f5b83(0x136)](_0x5f5b83(0x115)+_0x178793);await ensureParentDirectory(_0x178793),await writeFile(_0x178793,_0x284912,_0x5f5b83(0x138));const _0x152985=await readSqlLockFile(_0x43d522[_0x5f5b83(0x145)]),{lockData:_0x387ea1,appLock:_0x5768d6}=ensureSqlLockScope(_0x152985??createEmptySqlLock(),_0x43d522[_0x5f5b83(0x125)],_0x43d522['sqlRoot'],_0x5f5b83(0x149));return _0x5768d6['sqls'][_0x5b2a0e[_0x5f5b83(0x143)]]={...buildSqlLockEntry(_0x5b2a0e,_0x5b47a6,computeSqlContentHash(_0x284912),{'dbName':_0x520963}),'path':_0x1e0ea5,'mode':_0x33935a},_0x5768d6[_0x5f5b83(0x12c)]=new Date()[_0x5f5b83(0x111)](),await writeSqlLockFile(_0x43d522[_0x5f5b83(0x145)],_0x387ea1),{'ok':!![],'data':{'id':_0x5b2a0e['id'],'sqlCode':_0x5b2a0e[_0x5f5b83(0x143)],'sqlName':_0x5b2a0e[_0x5f5b83(0x128)],'dbId':_0x5b2a0e[_0x5f5b83(0x126)],'path':_0x178793,'mode':_0x33935a},'message':_0x5f5b83(0x10b)+_0x5b2a0e['sqlCode']};}};async function resolveSqlNewInputs(_0x521700){const _0x2fb052=await resolveSqlNameInput(_0x521700),{dbId:_0x127088,dbName:_0x508f68}=await resolveDbSelection(_0x521700),_0x2cad5b=await resolveSqlModeInput(_0x521700);return{'sqlName':_0x2fb052,'dbId':_0x127088,'dbName':_0x508f68,'mode':_0x2cad5b};}async function resolveSqlNameInput(_0x38187e){const _0xbd708d=a114_0x53adff,_0x4b7a45=_0x38187e[_0xbd708d(0x12b)](_0xbd708d(0x147))[_0xbd708d(0x10a)]();if(_0x4b7a45)return _0x4b7a45;if(_0x38187e[_0xbd708d(0x10e)])throw CliErrors[_0xbd708d(0x114)](_0xbd708d(0x147),'--name\x20is\x20required\x20in\x20non-interactive\x20mode.');return(await input({'message':'请输入\x20SQL\x20名称:','validate':_0x349666=>_0x349666[_0xbd708d(0x10a)]()?!![]:_0xbd708d(0x12d)}))[_0xbd708d(0x10a)]();}async function resolveDbSelection(_0xef990e){const _0x60c1a1=a114_0x53adff,_0x467ff8=resolveProvidedDbId(_0xef990e);if(typeof _0x467ff8==='number'&&Number['isFinite'](_0x467ff8)&&_0x467ff8>0x0)return{'dbId':_0x467ff8,'dbName':await getDbName(_0xef990e[_0x60c1a1(0x125)],_0x467ff8)['catch'](()=>undefined)};if(_0xef990e[_0x60c1a1(0x10e)])throw CliErrors[_0x60c1a1(0x114)](_0x60c1a1(0x11e),_0x60c1a1(0x134));const _0x108e29=await listDatabases(_0xef990e['appCode'])['catch'](()=>[]);if(_0x108e29[_0x60c1a1(0x13b)]===0x1)return{'dbId':_0x108e29[0x0][_0x60c1a1(0x126)],'dbName':_0x108e29[0x0][_0x60c1a1(0x139)]};if(_0x108e29['length']>0x1){const _0x370f0c=await select({'message':_0x60c1a1(0x132),'choices':[..._0x108e29[_0x60c1a1(0x120)](_0x45578d=>({'name':_0x45578d[_0x60c1a1(0x139)]+'\x20('+_0x45578d[_0x60c1a1(0x126)]+')','value':serializeDbSelection(_0x45578d)})),{'name':_0x60c1a1(0x131),'value':_0x60c1a1(0x141)}]});if(_0x370f0c!==_0x60c1a1(0x141))return deserializeDbSelection(_0x370f0c);}const _0x192d77=await input({'message':'请输入目标数据库\x20dbId:','validate':_0x12d144=>{const _0x344ded=_0x60c1a1,_0x46ed78=_0x12d144[_0x344ded(0x10a)]();if(!_0x46ed78)return'dbId\x20不能为空';const _0x12ba08=Number(_0x46ed78);if(!Number[_0x344ded(0x105)](_0x12ba08)||_0x12ba08<=0x0)return _0x344ded(0x12f);return!![];}});return{'dbId':Number(_0x192d77[_0x60c1a1(0x10a)]())};}async function resolveSqlModeInput(_0x2887c5){const _0x36863a=a114_0x53adff,_0x1f8595=_0x2887c5[_0x36863a(0x12b)](_0x36863a(0x13a))[_0x36863a(0x10a)]();if(_0x1f8595===_0x36863a(0x13e)||_0x1f8595===_0x36863a(0x118))return _0x1f8595;if(_0x2887c5[_0x36863a(0x10e)])throw CliErrors['flagMissing'](_0x36863a(0x13a),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');return await select({'message':_0x36863a(0x108),'choices':[{'name':_0x36863a(0x110),'value':_0x36863a(0x13e),'description':_0x36863a(0x127)},{'name':_0x36863a(0x12e),'value':_0x36863a(0x118),'description':_0x36863a(0x11c)}]});}function serializeDbSelection(_0x356374){const _0x54ca8=a114_0x53adff;return JSON[_0x54ca8(0x119)]({'dbId':_0x356374[_0x54ca8(0x126)],'dbName':_0x356374[_0x54ca8(0x139)]});}function a114_0x5070(){const _0x288b62=['sqlCode','448xjhfsi','lockFilePath','POST','name','\x20\x20SELECT\x201\x20AS\x20id','new','isInteger','3227SziChj','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','请选择本地\x20SQL\x20模式:','isFinite','trim','Created\x20SQL\x20query\x20','433873XjTrrb','<server-generated-sqlCode>','nonInteractive','sqlRootDir','普通\x20SQL(sql)','toISOString','string','description','flagMissing','File\x20already\x20exists:\x20','/smartapi/custom/saveUserCustomSql','</select>','mybatisXml','stringify','857006wZUfEQ','flag','适合带动态标签的\x20MyBatis\x20XML\x20SQL','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','db-id','parse','map','156zhXDvf','create','10452OuavIm','catch','appCode','dbId','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','sqlName','join','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','str','lastSync','SQL\x20名称不能为空','MyBatis\x20XML(mybatisXml)','dbId\x20必须为正整数','SELECT\x201\x20AS\x20id;','✎\x20手动输入\x20dbId','请选择目标数据库:','11EIyPvL','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','Invalid\x20database\x20selection\x20payload:\x20','validation','1215UmWZMj','utf8','dbName','mode','length','high-risk-write','number','sql','2349595HxtbzB','23475710sVEJGT','__manual__','34060bpkCLy'];a114_0x5070=function(){return _0x288b62;};return a114_0x5070();}function deserializeDbSelection(_0x4754b7){const _0x379193=a114_0x53adff;try{const _0x258977=JSON[_0x379193(0x11f)](_0x4754b7);if(typeof _0x258977[_0x379193(0x126)]===_0x379193(0x13d)&&Number[_0x379193(0x109)](_0x258977['dbId']))return{'dbId':_0x258977[_0x379193(0x126)],'dbName':_0x258977[_0x379193(0x139)]};}catch{}throw CliErrors[_0x379193(0x136)](_0x379193(0x135)+_0x4754b7);}function resolveProvidedDbId(_0x2d6b74){const _0x5912c9=a114_0x53adff,_0x6f332f=_0x2d6b74[_0x5912c9(0x11b)](_0x5912c9(0x11e));if(typeof _0x6f332f===_0x5912c9(0x13d)&&Number[_0x5912c9(0x109)](_0x6f332f))return _0x6f332f;return undefined;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a115_0x42a62e=a115_0x37a8;(function(_0x30089a,_0x5f1188){const _0x3b1abb=a115_0x37a8,_0x47d64c=_0x30089a();while(!![]){try{const _0x450873=parseInt(_0x3b1abb(0x17a))/0x1+parseInt(_0x3b1abb(0x174))/0x2+parseInt(_0x3b1abb(0x16d))/0x3+parseInt(_0x3b1abb(0x173))/0x4+-parseInt(_0x3b1abb(0x166))/0x5+-parseInt(_0x3b1abb(0x169))/0x6+-parseInt(_0x3b1abb(0x165))/0x7*(parseInt(_0x3b1abb(0x183))/0x8);if(_0x450873===_0x5f1188)break;else _0x47d64c['push'](_0x47d64c['shift']());}catch(_0x3e2ce6){_0x47d64c['push'](_0x47d64c['shift']());}}}(a115_0xdd5d,0x5dc00));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{fileExists}from'../../core/bff/file-system.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';function a115_0x37a8(_0x5a6d3b,_0x49cf64){_0x5a6d3b=_0x5a6d3b-0x163;const _0xdd5d8e=a115_0xdd5d();let _0x37a845=_0xdd5d8e[_0x5a6d3b];return _0x37a845;}function a115_0xdd5d(){const _0x1d0295=['Deleted\x20','toISOString','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','424icXHQN','Would\x20delete\x20SQL\x20','sqls','SQL\x20lock\x20file\x20not\x20found.','35749vtCFuv','678005MIGsZa','sqlcode','sqlRoot','3745764SEgTvj','fromEntries','entries','filter','476376vRoMXS','length','str','appCode','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','/smartapi/custom/deleteUserCustomSql','1591088SORyQj','541242jLkiCs','remoteId','delete','lockFilePath','trashedTo','Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','587381PSpdSM','\x20(local\x20file\x20moved\x20to\x20trash)','validation','lastSync','trashDir','startsWith'];a115_0xdd5d=function(){return _0x1d0295;};return a115_0xdd5d();}export const sqlDelete={'service':'sql','command':a115_0x42a62e(0x176),'description':a115_0x42a62e(0x179),'risk':'high-risk-write','flags':[SQLCODE_FLAG],async 'validate'(_0x5ce1be){const _0xa2e143=a115_0x42a62e,_0x11380f=loadSqlProjectConfig(_0x5ce1be[_0xa2e143(0x170)]),_0x1bf609=await readSqlLockFile(_0x11380f[_0xa2e143(0x177)]);if(!_0x1bf609)throw CliErrors[_0xa2e143(0x17c)](_0xa2e143(0x171));},async 'dryRun'(_0x463b07){const _0x2139d5=a115_0x42a62e,_0x56084b=loadSqlProjectConfig(_0x463b07[_0x2139d5(0x170)]),_0x278cbc=await readSqlLockFile(_0x56084b[_0x2139d5(0x177)]);if(!_0x278cbc)throw CliErrors[_0x2139d5(0x17c)]('SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.');const {appLock:_0x1cd8f1}=ensureSqlLockScope(_0x278cbc,_0x463b07[_0x2139d5(0x170)],_0x56084b[_0x2139d5(0x168)],_0x2139d5(0x176)),_0x2a1dbf=_0x463b07[_0x2139d5(0x16f)](_0x2139d5(0x167)),_0x219e7d=_0x1cd8f1[_0x2139d5(0x163)][_0x2a1dbf];if(!_0x219e7d)throw CliErrors['validation']('No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22'+_0x2a1dbf+'\x22.');return{'method':'POST','url':_0x2139d5(0x172),'body':{'sqlCode':_0x2a1dbf,'id':_0x219e7d[_0x2139d5(0x175)],'localPath':resolveLocalSqlFilePath(_0x56084b,_0x2a1dbf,_0x219e7d)},'description':_0x2139d5(0x184)+_0x2a1dbf+'\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20'+_0x56084b[_0x2139d5(0x17e)]};},async 'execute'(_0x2810b7){const _0x4a3ddb=a115_0x42a62e,_0x5ba142=loadSqlProjectConfig(_0x2810b7[_0x4a3ddb(0x170)]),_0x3d41e1=await readSqlLockFile(_0x5ba142[_0x4a3ddb(0x177)]);if(!_0x3d41e1)throw CliErrors[_0x4a3ddb(0x17c)](_0x4a3ddb(0x164));const {lockData:_0x1efc01,appLock:_0x23e146}=ensureSqlLockScope(_0x3d41e1,_0x2810b7['appCode'],_0x5ba142[_0x4a3ddb(0x168)],_0x4a3ddb(0x176)),_0x9c6f6f=_0x2810b7[_0x4a3ddb(0x16f)](_0x4a3ddb(0x167)),_0x5397f7=_0x23e146[_0x4a3ddb(0x163)][_0x9c6f6f];if(!_0x5397f7)throw CliErrors['validation'](_0x4a3ddb(0x182)+_0x9c6f6f+'\x22.');await deleteSqlQuery({'id':_0x5397f7[_0x4a3ddb(0x175)],'sqlCode':_0x9c6f6f}),_0x23e146['sqls']=Object[_0x4a3ddb(0x16a)](Object[_0x4a3ddb(0x16b)](_0x23e146[_0x4a3ddb(0x163)])[_0x4a3ddb(0x16c)](([_0x2511ec])=>_0x2511ec!==_0x9c6f6f)),_0x23e146[_0x4a3ddb(0x17d)]=new Date()['toISOString'](),await writeSqlLockFile(_0x5ba142[_0x4a3ddb(0x177)],_0x1efc01);const _0x1a7c28=resolveLocalSqlFilePath(_0x5ba142,_0x9c6f6f,_0x5397f7);let _0x226fe8;await fileExists(_0x1a7c28)&&(_0x226fe8=await moveToTrash(_0x5ba142['projectRoot'],_0x5ba142['trashDir'],_0x1a7c28),await cleanupEmptyDirectories(dirname(_0x1a7c28),_0x5ba142['sqlRootDir']));const _0x2fa6cc={'deleted':_0x9c6f6f,'remoteId':_0x5397f7[_0x4a3ddb(0x175)]};if(_0x226fe8)_0x2fa6cc[_0x4a3ddb(0x178)]=_0x226fe8;return{'ok':!![],'data':_0x2fa6cc,'message':_0x4a3ddb(0x180)+_0x9c6f6f+(_0x226fe8?_0x4a3ddb(0x17b):'')};}};async function moveToTrash(_0x58f0f,_0xeaabd7,_0x230c83){const _0x279eca=a115_0x42a62e,_0x395177=new Date()[_0x279eca(0x181)]()['replace'](/[:.]/g,'-'),_0x3416c5=relative(_0x58f0f,_0x230c83),_0x566141=join(_0xeaabd7,_0x395177,_0x3416c5);return await mkdir(dirname(_0x566141),{'recursive':!![]}),await rename(_0x230c83,_0x566141),_0x566141;}async function cleanupEmptyDirectories(_0x5e0bf7,_0x198f65){const _0x1db6bd=a115_0x42a62e;let _0x3cd24f=resolve(_0x5e0bf7);const _0x5f6f23=resolve(_0x198f65);while(_0x3cd24f[_0x1db6bd(0x17f)](''+_0x5f6f23+sep)||_0x3cd24f===_0x5f6f23){if(_0x3cd24f===_0x5f6f23)return;try{const _0x107c73=await readdir(_0x3cd24f);if(_0x107c73[_0x1db6bd(0x16e)]>0x0)return;await rmdir(_0x3cd24f);}catch{return;}_0x3cd24f=dirname(_0x3cd24f);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a116_0x3e8623=a116_0x460c;(function(_0x1b5650,_0x56c3af){const _0x4a5596=a116_0x460c,_0x491af8=_0x1b5650();while(!![]){try{const _0x12cd5a=-parseInt(_0x4a5596(0x1d8))/0x1+-parseInt(_0x4a5596(0x1d9))/0x2+parseInt(_0x4a5596(0x1cf))/0x3*(parseInt(_0x4a5596(0x1d2))/0x4)+-parseInt(_0x4a5596(0x1d7))/0x5*(parseInt(_0x4a5596(0x1d4))/0x6)+parseInt(_0x4a5596(0x1da))/0x7*(-parseInt(_0x4a5596(0x1d5))/0x8)+-parseInt(_0x4a5596(0x1d1))/0x9+parseInt(_0x4a5596(0x1dc))/0xa;if(_0x12cd5a===_0x56c3af)break;else _0x491af8['push'](_0x491af8['shift']());}catch(_0x26e63f){_0x491af8['push'](_0x491af8['shift']());}}}(a116_0x53eb,0x3913a));import{getSqlQueryInfo}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';function a116_0x53eb(){const _0x95cf3a=['sqlCode','verbose','appCode','description','detail','1138281fcIZrB','str','1437471OhunkM','4TcCQXV','bool','6UcVapa','857512vQhHYg','dbId','1524620HtRpWI','444953NVVrbF','680260aQUXpF','14TZEdmk','sql','13184630vKaJRo','boolean'];a116_0x53eb=function(){return _0x95cf3a;};return a116_0x53eb();}import{SQLCODE_FLAG}from'../../commands/common/flags.js';function a116_0x460c(_0x38d27d,_0x367436){_0x38d27d=_0x38d27d-0x1cf;const _0x53eb1d=a116_0x53eb();let _0x460c43=_0x53eb1d[_0x38d27d];return _0x460c43;}export const sqlDetail={'service':a116_0x3e8623(0x1db),'command':a116_0x3e8623(0x1e2),'description':'Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','risk':'read','flags':[SQLCODE_FLAG,{'name':a116_0x3e8623(0x1df),'type':a116_0x3e8623(0x1dd),'description':'Return\x20full\x20raw\x20SQL\x20query\x20object'}],async 'execute'(_0x35a2c8){const _0x2565b0=a116_0x3e8623,_0x3d748a=await getSqlQueryInfo(_0x35a2c8[_0x2565b0(0x1e0)],_0x35a2c8[_0x2565b0(0x1d0)]('sqlcode')),_0x34c86c=_0x35a2c8[_0x2565b0(0x1d3)](_0x2565b0(0x1df));if(_0x34c86c)return{'ok':!![],'data':_0x3d748a};const _0x130e0d=_0x3d748a[_0x2565b0(0x1d6)]?await getDbName(_0x35a2c8[_0x2565b0(0x1e0)],_0x3d748a[_0x2565b0(0x1d6)]):undefined;return{'ok':!![],'data':{'sqlCode':_0x3d748a[_0x2565b0(0x1de)],'sqlName':_0x3d748a['sqlName'],'db':_0x130e0d?_0x130e0d+'\x20('+_0x3d748a['dbId']+')':_0x3d748a['dbId']??'','description':_0x3d748a[_0x2565b0(0x1e1)]??'','sqlContent':_0x3d748a['sqlContent']??''}};}};
|
package/lib/commands/sql/exec.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a117_0x208b90=a117_0xffce;(function(_0x16eaef,_0x4ff566){const _0x3892b1=a117_0xffce,_0x56214c=_0x16eaef();while(!![]){try{const _0x15ade5=-parseInt(_0x3892b1(0xb8))/0x1+-parseInt(_0x3892b1(0xc8))/0x2+parseInt(_0x3892b1(0xb9))/0x3*(parseInt(_0x3892b1(0xcd))/0x4)+-parseInt(_0x3892b1(0xc0))/0x5+parseInt(_0x3892b1(0xbe))/0x6*(parseInt(_0x3892b1(0xcc))/0x7)+parseInt(_0x3892b1(0xc4))/0x8*(parseInt(_0x3892b1(0xc3))/0x9)+-parseInt(_0x3892b1(0xb5))/0xa*(-parseInt(_0x3892b1(0xc7))/0xb);if(_0x15ade5===_0x4ff566)break;else _0x56214c['push'](_0x56214c['shift']());}catch(_0x4b0be5){_0x56214c['push'](_0x56214c['shift']());}}}(a117_0x37dd,0x6b827));function a117_0xffce(_0x5bb875,_0x1a4073){_0x5bb875=_0x5bb875-0xb5;const _0x37dd2e=a117_0x37dd();let _0xffceb1=_0x37dd2e[_0x5bb875];return _0xffceb1;}import{executeSql}from'../../core/api-client.js';function a117_0x37dd(){const _0x42f5cd=['sqlcode','sql','params','91uubyfq','8940OsOIMr','47870tFlBrc','SQL\x20parameters\x20as\x20JSON\x20string\x20(e.g.\x20\x27{\x22key\x22:\x22value\x22}\x27)','SQL\x20execution\x20failed','258004EvfYRv','222hutzJK','now','length','string','Returned\x20','308874FaeRpl','exec','255515abGhwY','execResult','appCode','81ELPyDl','410776KkLYyB','\x20row(s)\x20in\x20','str','66QtMjMZ','1151992kyeVJh'];a117_0x37dd=function(){return _0x42f5cd;};return a117_0x37dd();}import{SQLCODE_FLAG}from'../../commands/common/flags.js';import{parseJsonParams}from'../../utils/params.js';export const sqlExec={'service':a117_0x208b90(0xca),'command':a117_0x208b90(0xbf),'description':'Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode','risk':'read','flags':[SQLCODE_FLAG,{'name':a117_0x208b90(0xcb),'type':a117_0x208b90(0xbc),'description':a117_0x208b90(0xb6)}],async 'execute'(_0x2af5e8){const _0x51fb0d=a117_0x208b90,_0x14dbe7=parseJsonParams(_0x2af5e8[_0x51fb0d(0xc6)](_0x51fb0d(0xcb))),_0x1c537a=Date['now'](),_0x21ff7a=await executeSql(_0x2af5e8[_0x51fb0d(0xc2)],_0x2af5e8['str'](_0x51fb0d(0xc9)),_0x14dbe7),_0x4d003f=Date[_0x51fb0d(0xba)]()-_0x1c537a,_0x4a0578=_0x21ff7a?.[_0x51fb0d(0xc1)]??_0x21ff7a,_0x3b1fbf=_0x21ff7a?.['execSuccess']??!![];if(!_0x3b1fbf)return{'ok':![],'data':{'error':_0x21ff7a?.['execError']||_0x51fb0d(0xb7),'elapsed':_0x4d003f},'message':'SQL\x20execution\x20failed'};const _0x59b23b=Array['isArray'](_0x4a0578)?_0x4a0578:[];return{'ok':!![],'data':{'rows':_0x59b23b,'rowCount':_0x59b23b[_0x51fb0d(0xbb)],'elapsed':_0x4d003f},'message':_0x51fb0d(0xbd)+_0x59b23b[_0x51fb0d(0xbb)]+_0x51fb0d(0xc5)+_0x4d003f+'ms'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3c3e5a,_0x2664d3){const _0x378b51=a118_0x58ef,_0x588c54=_0x3c3e5a();while(!![]){try{const _0x5a0af7=parseInt(_0x378b51(0x171))/0x1*(-parseInt(_0x378b51(0x175))/0x2)+parseInt(_0x378b51(0x172))/0x3*(parseInt(_0x378b51(0x178))/0x4)+parseInt(_0x378b51(0x174))/0x5+parseInt(_0x378b51(0x177))/0x6*(parseInt(_0x378b51(0x176))/0x7)+-parseInt(_0x378b51(0x170))/0x8+-parseInt(_0x378b51(0x16f))/0x9*(parseInt(_0x378b51(0x173))/0xa)+-parseInt(_0x378b51(0x179))/0xb;if(_0x5a0af7===_0x2664d3)break;else _0x588c54['push'](_0x588c54['shift']());}catch(_0x4d1a6c){_0x588c54['push'](_0x588c54['shift']());}}}(a118_0x2314,0x890e5));import{sqlList}from'../../commands/sql/list.js';function a118_0x58ef(_0x7eae71,_0x35b51a){_0x7eae71=_0x7eae71-0x16f;const _0x2314c0=a118_0x2314();let _0x58ef7a=_0x2314c0[_0x7eae71];return _0x58ef7a;}import{sqlDetail}from'../../commands/sql/detail.js';import{sqlValidate}from'../../commands/sql/validate.js';import{sqlSave}from'../../commands/sql/save.js';import{sqlExec}from'../../commands/sql/exec.js';import{sqlPull}from'../../commands/sql/pull.js';import{sqlCreate}from'../../commands/sql/create.js';import{sqlStatus}from'../../commands/sql/status.js';import{sqlPush}from'../../commands/sql/push.js';import{sqlDelete}from'../../commands/sql/delete.js';function a118_0x2314(){const _0x1ee9c6=['26643ysDvCV','1110WJyKZR','2837625IzwlTw','852386FSlOQk','7eFdQUu','4402446dlTPZV','396bFpmGO','6461048sSBPzR','38520WuwbiQ','1043704LFZqtm','1DkYLUG'];a118_0x2314=function(){return _0x1ee9c6;};return a118_0x2314();}export const sqlDefinitions=[sqlList,sqlDetail,sqlStatus,sqlCreate,sqlPush,sqlValidate,sqlSave,sqlExec,sqlPull,sqlDelete];
|
package/lib/commands/sql/list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a119_0x4f2f13=a119_0x429e;(function(_0x4d109d,_0x5eccbc){const _0x2ae993=a119_0x429e,_0x48a3e3=_0x4d109d();while(!![]){try{const _0x505b07=-parseInt(_0x2ae993(0xee))/0x1+parseInt(_0x2ae993(0xe6))/0x2*(parseInt(_0x2ae993(0xf6))/0x3)+-parseInt(_0x2ae993(0xf1))/0x4*(-parseInt(_0x2ae993(0xfe))/0x5)+parseInt(_0x2ae993(0xfa))/0x6+-parseInt(_0x2ae993(0x107))/0x7+-parseInt(_0x2ae993(0xfd))/0x8+-parseInt(_0x2ae993(0xf5))/0x9*(-parseInt(_0x2ae993(0xeb))/0xa);if(_0x505b07===_0x5eccbc)break;else _0x48a3e3['push'](_0x48a3e3['shift']());}catch(_0x429201){_0x48a3e3['push'](_0x48a3e3['shift']());}}}(a119_0x2231,0x3e6e3));import{listSqlQueries}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';function a119_0x2231(){const _0x5779f3=['name','3094511KEFmQU','pagesize','list','map','sql','192130aoxBMr','num','List\x20custom\x20SQL\x20queries','string','page','5576280ifKtxe','Filter\x20by\x20SQL\x20name','totalCount','174747vNEcan','dbId','bool','4qGJKWE','Page\x20size','Return\x20full\x20SQL\x20query\x20objects\x20including\x20parameters\x20and\x20SQL\x20content','verbose','9veMJFY','12LsxgZI','sqlCode','No\x20custom\x20SQL\x20queries\x20found.','length','1534656GcKXMR','boolean','read','3197944veBiPP','373070qlxetb','number','sqlcode','\x20SQL\x20queries\x20(total:\x20','tableData','all','Page\x20number','appCode'];a119_0x2231=function(){return _0x5779f3;};return a119_0x2231();}function a119_0x429e(_0x20caec,_0x39d477){_0x20caec=_0x20caec-0xe2;const _0x22317b=a119_0x2231();let _0x429ec7=_0x22317b[_0x20caec];return _0x429ec7;}import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';export const sqlList={'service':a119_0x4f2f13(0xe5),'command':a119_0x4f2f13(0xe3),'description':a119_0x4f2f13(0xe8),'risk':a119_0x4f2f13(0xfc),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a119_0x4f2f13(0x106),'type':a119_0x4f2f13(0xe9),'description':a119_0x4f2f13(0xec)},{'name':a119_0x4f2f13(0xea),'type':a119_0x4f2f13(0xff),'description':a119_0x4f2f13(0x104),'default':0x1},{'name':'pagesize','type':a119_0x4f2f13(0xff),'description':a119_0x4f2f13(0xf2)},{'name':a119_0x4f2f13(0xf4),'type':a119_0x4f2f13(0xfb),'description':a119_0x4f2f13(0xf3)}],async 'execute'(_0x564a4d){const _0x404ba=a119_0x4f2f13,_0x107890=await listSqlQueries(_0x564a4d[_0x404ba(0x105)],{'sqlCode':_0x564a4d['str'](_0x404ba(0x100))||undefined,'sqlName':_0x564a4d['str'](_0x404ba(0x106))||undefined,'currentPage':_0x564a4d[_0x404ba(0xe7)](_0x404ba(0xea)),'pageSize':_0x564a4d[_0x404ba(0xe7)](_0x404ba(0xe2),0x32)}),_0x37d278=_0x564a4d[_0x404ba(0xf0)](_0x404ba(0xf4)),_0x3280af=_0x107890[_0x404ba(0x102)]??[],_0x438797=_0x107890['paging']?.[_0x404ba(0xed)]??_0x3280af[_0x404ba(0xf9)];let _0x1c3836;return _0x37d278?_0x1c3836=_0x3280af:_0x1c3836=await Promise[_0x404ba(0x103)](_0x3280af[_0x404ba(0xe4)](async _0x5182b1=>{const _0xd23202=_0x404ba;let _0x1955c0;try{_0x1955c0=_0x5182b1['dbId']?await getDbName(_0x564a4d['appCode'],_0x5182b1[_0xd23202(0xef)]):undefined;}catch{}return{'sqlCode':_0x5182b1[_0xd23202(0xf7)],'sqlName':_0x5182b1['sqlName'],'description':_0x5182b1['description']??'','db':_0x1955c0?_0x1955c0+'\x20('+_0x5182b1['dbId']+')':_0x5182b1[_0xd23202(0xef)]??''};})),{'ok':!![],'data':_0x1c3836,'message':_0x3280af[_0x404ba(0xf9)]===0x0?_0x404ba(0xf8):'Found\x20'+_0x3280af[_0x404ba(0xf9)]+_0x404ba(0x101)+_0x438797+').'};}};
|
package/lib/commands/sql/pull.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a120_0x4889ed=a120_0x54fb;(function(_0x21013a,_0x1db557){const _0x773419=a120_0x54fb,_0x10028a=_0x21013a();while(!![]){try{const _0x48e00f=parseInt(_0x773419(0x17b))/0x1*(-parseInt(_0x773419(0x1aa))/0x2)+-parseInt(_0x773419(0x18a))/0x3*(-parseInt(_0x773419(0x19f))/0x4)+parseInt(_0x773419(0x1a9))/0x5+parseInt(_0x773419(0x1b6))/0x6*(-parseInt(_0x773419(0x183))/0x7)+parseInt(_0x773419(0x1ac))/0x8+-parseInt(_0x773419(0x181))/0x9+parseInt(_0x773419(0x17a))/0xa*(parseInt(_0x773419(0x182))/0xb);if(_0x48e00f===_0x1db557)break;else _0x10028a['push'](_0x10028a['shift']());}catch(_0x151f98){_0x10028a['push'](_0x10028a['shift']());}}}(a120_0x549c,0xd29c7));import{readFile,rm,writeFile}from'node:fs/promises';import{join}from'node:path';import{getSqlQueryDetail,listSqlQueries}from'../../core/api-client.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{getDbName}from'../../core/db-resolver.js';function a120_0x549c(){const _0x13278b=['mybatisXml','conflict','\x20failed','totalCount','7104663lMKyTI','22AyXFVr','3031mIYNgw','length','str','path','nonInteractive','force','write','2409KtQkEO','catch','Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.','filter','unchanged','Would\x20pull\x20','description','/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','apps','string','bool','sqlRoot','name','test','pull','message','Pull\x20complete:\x20','push','\x20skipped,\x20','sqlContent','tableData','7444SwJZjn','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','sqls','sqlRootDir','toISOString','Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','paging','No\x20remote\x20SQL\x20queries\x20matched.','boolean','cancelled','1458875NIyJOd','838364mjcDDU','sqlName','7981024HnbqvR','sql','lastSync','\x20written,\x20','Force\x20pull\x20cancelled.','Force\x20overwrite\x20local\x20unsynced\x20changes','dbId','appCode','sqlCode','sqlcode','11028LfakGa','skipped','utf8','split','POST','would_pull','4608420TIwyEI','3BuKRBV','lockFilePath'];a120_0x549c=function(){return _0x13278b;};return a120_0x549c();}import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildLocalSqlFileContent,buildSqlLockEntry,cloneSqlLockData,confirmForceOverwrite,ensureRemoteSqlContent,stripLocalSqlMetadata}from'./shared.js';const PAGE_SIZE=0x64;function a120_0x54fb(_0x52ec6e,_0x328825){_0x52ec6e=_0x52ec6e-0x179;const _0x549cbd=a120_0x549c();let _0x54fbc7=_0x549cbd[_0x52ec6e];return _0x54fbc7;}async function fetchAllSqlQueries(_0x18128f,_0x14f909){const _0x4eb69f=a120_0x54fb,_0x565c43=[];let _0xc7cb44=0x1;while(!![]){const _0x33f782=await listSqlQueries(_0x18128f,{'currentPage':_0xc7cb44,'pageSize':PAGE_SIZE,'sqlCode':_0x14f909[_0x4eb69f(0x1b4)],'sqlName':_0x14f909[_0x4eb69f(0x1ab)]}),_0x1c1e52=_0x33f782[_0x4eb69f(0x19e)]??[];_0x565c43['push'](..._0x1c1e52);if(_0x1c1e52[_0x4eb69f(0x184)]===0x0)break;const _0x17179f=_0x33f782[_0x4eb69f(0x1a5)]?.[_0x4eb69f(0x180)];if(_0x17179f!=null?_0x565c43[_0x4eb69f(0x184)]>=_0x17179f:_0x1c1e52[_0x4eb69f(0x184)]<PAGE_SIZE)break;_0xc7cb44++;}return _0x565c43;}async function ensureSqlContent(_0x19f1d4){const _0x3b6b10=a120_0x54fb;if(_0x19f1d4['sqlContent']!=null&&String(_0x19f1d4[_0x3b6b10(0x19d)])['length']>0x0)return _0x19f1d4;return getSqlQueryDetail(_0x19f1d4[_0x3b6b10(0x1b4)]);}export const sqlPull={'service':a120_0x4889ed(0x1ad),'command':a120_0x4889ed(0x198),'description':a120_0x4889ed(0x1a4),'risk':a120_0x4889ed(0x189),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a120_0x4889ed(0x196),'type':a120_0x4889ed(0x193),'description':'Filter\x20by\x20SQL\x20display\x20name'},{'name':'force','type':a120_0x4889ed(0x1a7),'description':a120_0x4889ed(0x1b1)}],async 'dryRun'(_0x2d8d6b){const _0x503e05=a120_0x4889ed,_0x29d6b2=loadSqlProjectConfig(_0x2d8d6b[_0x503e05(0x1b3)]),_0x47f34b=await readSqlLockFile(_0x29d6b2[_0x503e05(0x17c)]),{appLock:_0x336d5c}=ensureSqlLockScope(_0x47f34b??createEmptySqlLock(),_0x29d6b2[_0x503e05(0x1b3)],_0x29d6b2[_0x503e05(0x195)],_0x503e05(0x198)),_0x29f617=await fetchAllSqlQueries(_0x2d8d6b[_0x503e05(0x1b3)],{'sqlCode':_0x2d8d6b[_0x503e05(0x185)](_0x503e05(0x1b5))||undefined,'sqlName':_0x2d8d6b[_0x503e05(0x185)](_0x503e05(0x196))||undefined}),_0x2dda48=[];for(const _0x318ca7 of _0x29f617){const _0x7e49c0=await ensureSqlContent(_0x318ca7),_0x188a7a=ensureRemoteSqlContent(_0x7e49c0),_0x4eeb71=detectModeFromSql(_0x7e49c0),_0x20718e=_0x7e49c0['dbId']?await getDbName(_0x2d8d6b[_0x503e05(0x1b3)],Number(_0x7e49c0[_0x503e05(0x1b2)]))[_0x503e05(0x18b)](()=>undefined):undefined,_0x4bea53=buildLocalSqlFileContent({'sqlCode':_0x7e49c0[_0x503e05(0x1b4)],'sqlName':_0x7e49c0[_0x503e05(0x1ab)],'dbId':_0x7e49c0[_0x503e05(0x1b2)]},_0x188a7a,{'dbName':_0x20718e,'mode':_0x4eeb71,'syncedAt':new Date()[_0x503e05(0x1a3)](),'description':_0x7e49c0[_0x503e05(0x190)]}),_0x3dfdc7=buildSqlLockEntry(_0x7e49c0,_0x188a7a,'',{'dbName':_0x20718e}),_0x1630d6=resolveLocalSqlFilePath(_0x29d6b2,_0x7e49c0[_0x503e05(0x1b4)],_0x3dfdc7);let _0x6c617d=_0x503e05(0x179),_0x359a93;if(await fileExists(_0x1630d6)){const _0x1c5c71=await readFile(_0x1630d6,_0x503e05(0x1b8));isEquivalentPulledSqlFile(_0x1c5c71,_0x4bea53,_0x4eeb71)?(_0x6c617d=_0x503e05(0x1b7),_0x359a93=_0x503e05(0x18e)):(_0x6c617d=_0x503e05(0x17e),_0x359a93=_0x503e05(0x1a0));}_0x2dda48[_0x503e05(0x19b)]({'sqlCode':_0x7e49c0[_0x503e05(0x1b4)],'sqlName':_0x7e49c0[_0x503e05(0x1ab)],'filePath':_0x1630d6,'status':_0x6c617d,'reason':_0x359a93});}return{'method':_0x503e05(0x1ba),'url':_0x503e05(0x191),'body':{'appCode':_0x2d8d6b['appCode'],'sqlCode':_0x2d8d6b[_0x503e05(0x185)](_0x503e05(0x1b5))||null,'sqlName':_0x2d8d6b[_0x503e05(0x185)]('name')||null,'files':_0x2dda48},'description':_0x503e05(0x18f)+_0x2dda48['length']+'\x20SQL\x20file(s)\x20into\x20'+_0x29d6b2[_0x503e05(0x1a2)]};},async 'execute'(_0x63da69){const _0x1e50fb=a120_0x4889ed,_0x4e4f27=loadSqlProjectConfig(_0x63da69[_0x1e50fb(0x1b3)]),_0x193ef0=await readSqlLockFile(_0x4e4f27[_0x1e50fb(0x17c)]),{lockData:_0xbad6c3,appLock:_0x5d26cf}=ensureSqlLockScope(_0x193ef0??createEmptySqlLock(),_0x4e4f27['appCode'],_0x4e4f27[_0x1e50fb(0x195)],_0x1e50fb(0x198)),_0x59f8e6=_0x63da69[_0x1e50fb(0x194)](_0x1e50fb(0x188)),_0x1396b4=await fetchAllSqlQueries(_0x63da69['appCode'],{'sqlCode':_0x63da69['str'](_0x1e50fb(0x1b5))||undefined,'sqlName':_0x63da69[_0x1e50fb(0x185)]('name')||undefined});if(_0x1396b4[_0x1e50fb(0x184)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x1e50fb(0x1a6)};const _0x2c787a=[],_0x5d65f0=[];for(const _0x5f196c of _0x1396b4){try{_0x2c787a[_0x1e50fb(0x19b)](await ensureSqlContent(_0x5f196c));}catch(_0x57dfa6){_0x5d65f0[_0x1e50fb(0x19b)]({'sqlCode':_0x5f196c[_0x1e50fb(0x1b4)],'error':_0x57dfa6 instanceof Error?_0x57dfa6[_0x1e50fb(0x199)]:String(_0x57dfa6)});}}if(_0x59f8e6&&!_0x63da69[_0x1e50fb(0x187)]){let _0x19c305=![];for(const _0x339566 of _0x2c787a){const _0x3ea473=detectModeFromSql(_0x339566),_0x1f35d4=_0x339566[_0x1e50fb(0x1b2)]?await getDbName(_0x63da69['appCode'],Number(_0x339566['dbId']))[_0x1e50fb(0x18b)](()=>undefined):undefined,_0x5a6360=buildLocalSqlFileContent({'sqlCode':_0x339566['sqlCode'],'sqlName':_0x339566['sqlName'],'dbId':_0x339566[_0x1e50fb(0x1b2)]},ensureRemoteSqlContent(_0x339566),{'dbName':_0x1f35d4,'mode':_0x3ea473,'syncedAt':new Date()['toISOString'](),'description':_0x339566[_0x1e50fb(0x190)]}),_0xd424b1=resolveLocalSqlFilePath(_0x4e4f27,_0x339566[_0x1e50fb(0x1b4)],buildSqlLockEntry(_0x339566,ensureRemoteSqlContent(_0x339566),'',{'dbName':_0x1f35d4}));if(await fileExists(_0xd424b1)){const _0x26f695=await readFile(_0xd424b1,'utf8');if(!isEquivalentPulledSqlFile(_0x26f695,_0x5a6360,_0x3ea473)){_0x19c305=!![];break;}}}if(_0x19c305){const _0x531ad4=await confirmForceOverwrite(_0x1e50fb(0x18c));if(!_0x531ad4)throw CliErrors[_0x1e50fb(0x1a8)](_0x1e50fb(0x1b0));}}const _0x84884a=cloneSqlLockData(_0xbad6c3),_0x4a11c7=_0x84884a[_0x1e50fb(0x192)][_0x4e4f27[_0x1e50fb(0x1b3)]],_0xb0d6fe=[],_0x4cc8bd=[];for(const _0x3087ab of _0x2c787a){const _0x53b9f8=_0x4a11c7['sqls'][_0x3087ab['sqlCode']],_0xa64e1f=ensureRemoteSqlContent(_0x3087ab),_0x4e799a=detectModeFromSql(_0x3087ab),_0x5b70b6=_0x3087ab[_0x1e50fb(0x1b2)]?await getDbName(_0x63da69[_0x1e50fb(0x1b3)],Number(_0x3087ab['dbId']))['catch'](()=>undefined):undefined,_0x4539f7=buildLocalSqlFileContent({'sqlCode':_0x3087ab[_0x1e50fb(0x1b4)],'sqlName':_0x3087ab[_0x1e50fb(0x1ab)],'dbId':_0x3087ab[_0x1e50fb(0x1b2)]},_0xa64e1f,{'dbName':_0x5b70b6,'mode':_0x4e799a,'syncedAt':new Date()[_0x1e50fb(0x1a3)](),'description':_0x3087ab[_0x1e50fb(0x190)]}),_0x2199a9=buildSqlLockEntry(_0x3087ab,_0xa64e1f,computeSqlContentHash(_0x4539f7),{'dbName':_0x5b70b6}),_0x272b57=_0x2199a9['path'],_0x3f144b=join(_0x4e4f27['sqlRootDir'],_0x272b57);try{if(await fileExists(_0x3f144b)){const _0x55e838=await readFile(_0x3f144b,_0x1e50fb(0x1b8));if(isEquivalentPulledSqlFile(_0x55e838,_0x4539f7,_0x4e799a)){_0x4cc8bd['push']({'sqlCode':_0x3087ab[_0x1e50fb(0x1b4)],'reason':_0x1e50fb(0x18e)}),_0x4a11c7[_0x1e50fb(0x1a1)][_0x3087ab['sqlCode']]={..._0x2199a9,'hash':computeSqlContentHash(_0x55e838),'path':_0x272b57};continue;}if(!_0x59f8e6){_0x4cc8bd['push']({'sqlCode':_0x3087ab[_0x1e50fb(0x1b4)],'reason':'local\x20differs\x20from\x20remote'});continue;}}const _0xf549d9=_0x53b9f8?.[_0x1e50fb(0x186)]?join(_0x4e4f27[_0x1e50fb(0x1a2)],_0x53b9f8['path']):undefined;_0xf549d9&&_0xf549d9!==_0x3f144b&&await fileExists(_0xf549d9)&&await rm(_0xf549d9,{'force':!![]}),await ensureParentDirectory(_0x3f144b),await writeFile(_0x3f144b,_0x4539f7,_0x1e50fb(0x1b8)),_0x4a11c7[_0x1e50fb(0x1a1)][_0x3087ab[_0x1e50fb(0x1b4)]]={..._0x2199a9,'path':_0x272b57},_0xb0d6fe[_0x1e50fb(0x19b)]({'sqlCode':_0x3087ab['sqlCode'],'filePath':_0x3f144b});}catch(_0x544c2b){_0x5d65f0['push']({'sqlCode':_0x3087ab[_0x1e50fb(0x1b4)],'error':_0x544c2b instanceof Error?_0x544c2b[_0x1e50fb(0x199)]:String(_0x544c2b)});}}return _0x4a11c7[_0x1e50fb(0x1ae)]=new Date()[_0x1e50fb(0x1a3)](),await writeSqlLockFile(_0x4e4f27[_0x1e50fb(0x17c)],_0x84884a),{'ok':_0x5d65f0[_0x1e50fb(0x184)]===0x0,'data':{'pulled':_0xb0d6fe,'skipped':_0x4cc8bd,'failed':_0x5d65f0},'message':_0x1e50fb(0x19a)+_0xb0d6fe['length']+_0x1e50fb(0x1af)+_0x4cc8bd['length']+_0x1e50fb(0x19c)+_0x5d65f0[_0x1e50fb(0x184)]+_0x1e50fb(0x17f)};}};function detectModeFromSql(_0xde3e6f){const _0x14b0c6=a120_0x4889ed,_0x79c20e=ensureRemoteSqlContent(_0xde3e6f),_0x2ad92c=stripLocalSqlMetadata(_0x79c20e,'mybatisXml')['trimStart']();if(/^<(select|insert|update|delete)\b/i[_0x14b0c6(0x197)](_0x2ad92c))return _0x14b0c6(0x17d);return'sql';}function isEquivalentPulledSqlFile(_0xb46ecb,_0x565115,_0x3115ed){return normalizePullComparableContent(_0xb46ecb,_0x3115ed)===normalizePullComparableContent(_0x565115,_0x3115ed);}function normalizePullComparableContent(_0x42b1fd,_0x10da84){const _0x17330c=a120_0x4889ed,_0x416da8=_0x42b1fd['replace'](/\r\n/g,'\x0a')[_0x17330c(0x1b9)]('\x0a'),_0x3635d7=_0x416da8[_0x17330c(0x18d)](_0x4a4236=>!isSyncedAtMetadataLine(_0x4a4236,_0x10da84));return _0x3635d7['join']('\x0a');}function isSyncedAtMetadataLine(_0x15ded,_0x301c54){const _0x410517=a120_0x4889ed;if(_0x301c54===_0x410517(0x17d))return/^\s*<!--\s*@lovrabet\.syncedAt:/[_0x410517(0x197)](_0x15ded);return/^\s*--\s*@lovrabet\.syncedAt:/['test'](_0x15ded);}
|
|
1
|
+
const a120_0x5bda34=a120_0x3f66;(function(_0x2a9746,_0xc5633c){const _0x240a83=a120_0x3f66,_0x5115c4=_0x2a9746();while(!![]){try{const _0x46d33b=parseInt(_0x240a83(0x20d))/0x1*(-parseInt(_0x240a83(0x1e7))/0x2)+-parseInt(_0x240a83(0x1e6))/0x3+parseInt(_0x240a83(0x201))/0x4+-parseInt(_0x240a83(0x1e5))/0x5+-parseInt(_0x240a83(0x225))/0x6*(parseInt(_0x240a83(0x204))/0x7)+parseInt(_0x240a83(0x1eb))/0x8*(-parseInt(_0x240a83(0x1fb))/0x9)+parseInt(_0x240a83(0x223))/0xa;if(_0x46d33b===_0xc5633c)break;else _0x5115c4['push'](_0x5115c4['shift']());}catch(_0x48d81f){_0x5115c4['push'](_0x5115c4['shift']());}}}(a120_0x3794,0xc9a34));import{readFile,rm,writeFile}from'node:fs/promises';import{join}from'node:path';import{getSqlQueryDetail,listSqlQueries}from'../../core/api-client.js';function a120_0x3f66(_0x224227,_0x4a62ba){_0x224227=_0x224227-0x1e3;const _0x3794dd=a120_0x3794();let _0x3f6607=_0x3794dd[_0x224227];return _0x3f6607;}import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{getDbName}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildLocalSqlFileContent,buildSqlLockEntry,cloneSqlLockData,confirmForceOverwrite,ensureRemoteSqlContent,stripLocalSqlMetadata}from'./shared.js';const PAGE_SIZE=0x64;async function fetchAllSqlQueries(_0x453d42,_0x11f6b3){const _0x38d57c=a120_0x3f66,_0x330d38=[];let _0xa6680a=0x1;while(!![]){const _0x82a2ba=await listSqlQueries(_0x453d42,{'currentPage':_0xa6680a,'pageSize':PAGE_SIZE,'sqlCode':_0x11f6b3[_0x38d57c(0x1f8)],'sqlName':_0x11f6b3[_0x38d57c(0x1f4)]}),_0xc1f96c=_0x82a2ba['tableData']??[];_0x330d38[_0x38d57c(0x210)](..._0xc1f96c);if(_0xc1f96c[_0x38d57c(0x208)]===0x0)break;const _0xfbadd3=_0x82a2ba[_0x38d57c(0x220)]?.[_0x38d57c(0x1f0)];if(_0xfbadd3!=null?_0x330d38[_0x38d57c(0x208)]>=_0xfbadd3:_0xc1f96c[_0x38d57c(0x208)]<PAGE_SIZE)break;_0xa6680a++;}return _0x330d38;}async function ensureSqlContent(_0x57439c){const _0x23bfac=a120_0x3f66;if(_0x57439c[_0x23bfac(0x218)]!=null&&String(_0x57439c[_0x23bfac(0x218)])[_0x23bfac(0x208)]>0x0)return _0x57439c;return getSqlQueryDetail(_0x57439c[_0x23bfac(0x1f8)]);}export const sqlPull={'service':'sql','command':'pull','description':a120_0x5bda34(0x1ee),'risk':a120_0x5bda34(0x214),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a120_0x5bda34(0x216),'type':a120_0x5bda34(0x21d),'description':a120_0x5bda34(0x1fd)},{'name':a120_0x5bda34(0x1f2),'type':a120_0x5bda34(0x1f9),'description':a120_0x5bda34(0x222)}],async 'dryRun'(_0x382cbf){const _0x330a03=a120_0x5bda34,_0x46a784=loadSqlProjectConfig(_0x382cbf[_0x330a03(0x1f5)]),_0x42a900=await readSqlLockFile(_0x46a784['lockFilePath']),{appLock:_0x189f7c}=ensureSqlLockScope(_0x42a900??createEmptySqlLock(),_0x46a784[_0x330a03(0x1f5)],_0x46a784[_0x330a03(0x21a)],_0x330a03(0x1ff)),_0x406fb5=await fetchAllSqlQueries(_0x382cbf[_0x330a03(0x1f5)],{'sqlCode':_0x382cbf['str'](_0x330a03(0x219))||undefined,'sqlName':_0x382cbf[_0x330a03(0x1ef)](_0x330a03(0x216))||undefined}),_0x532913=[];for(const _0x19d590 of _0x406fb5){const _0x18255f=await ensureSqlContent(_0x19d590),_0x5bcfe6=ensureRemoteSqlContent(_0x18255f),_0x43ebb5=detectModeFromSql(_0x18255f),_0x3a122d=_0x18255f[_0x330a03(0x1e4)]?await getDbName(_0x382cbf['appCode'],Number(_0x18255f[_0x330a03(0x1e4)]))[_0x330a03(0x215)](()=>undefined):undefined,_0xe05460=buildLocalSqlFileContent({'sqlCode':_0x18255f[_0x330a03(0x1f8)],'sqlName':_0x18255f[_0x330a03(0x1f4)],'dbId':_0x18255f[_0x330a03(0x1e4)]},_0x5bcfe6,{'dbName':_0x3a122d,'mode':_0x43ebb5,'syncedAt':new Date()[_0x330a03(0x209)](),'description':_0x18255f[_0x330a03(0x20b)]}),_0x344e04=buildSqlLockEntry(_0x18255f,_0x5bcfe6,'',{'dbName':_0x3a122d}),_0x5e105b=resolveLocalSqlFilePath(_0x46a784,_0x18255f['sqlCode'],_0x344e04);let _0x5dfb3e=_0x330a03(0x202),_0x4b506a;if(await fileExists(_0x5e105b)){const _0x4974d3=await readFile(_0x5e105b,_0x330a03(0x1f7));isEquivalentPulledSqlFile(_0x4974d3,_0xe05460,_0x43ebb5)?(_0x5dfb3e=_0x330a03(0x217),_0x4b506a=_0x330a03(0x1fe)):(_0x5dfb3e=_0x330a03(0x207),_0x4b506a=_0x330a03(0x205));}_0x532913['push']({'sqlCode':_0x18255f[_0x330a03(0x1f8)],'sqlName':_0x18255f[_0x330a03(0x1f4)],'filePath':_0x5e105b,'status':_0x5dfb3e,'reason':_0x4b506a});}return{'method':_0x330a03(0x1fa),'url':'/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','body':{'appCode':_0x382cbf[_0x330a03(0x1f5)],'sqlCode':_0x382cbf[_0x330a03(0x1ef)](_0x330a03(0x219))||null,'sqlName':_0x382cbf[_0x330a03(0x1ef)](_0x330a03(0x216))||null,'files':_0x532913},'description':'Would\x20pull\x20'+_0x532913[_0x330a03(0x208)]+_0x330a03(0x1e9)+_0x46a784[_0x330a03(0x1f1)]};},async 'execute'(_0x4b749d){const _0x31579c=a120_0x5bda34,_0x289249=loadSqlProjectConfig(_0x4b749d[_0x31579c(0x1f5)]),_0x41b30a=await readSqlLockFile(_0x289249[_0x31579c(0x1f3)]),{lockData:_0x3a116d,appLock:_0x300120}=ensureSqlLockScope(_0x41b30a??createEmptySqlLock(),_0x289249[_0x31579c(0x1f5)],_0x289249[_0x31579c(0x21a)],_0x31579c(0x1ff)),_0x422c2d=_0x4b749d[_0x31579c(0x221)](_0x31579c(0x1f2)),_0x4d7bcc=await fetchAllSqlQueries(_0x4b749d[_0x31579c(0x1f5)],{'sqlCode':_0x4b749d[_0x31579c(0x1ef)](_0x31579c(0x219))||undefined,'sqlName':_0x4b749d[_0x31579c(0x1ef)](_0x31579c(0x216))||undefined});if(_0x4d7bcc[_0x31579c(0x208)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x31579c(0x21c)};const _0x5133d1=[],_0x2ea1b1=[];for(const _0x578c53 of _0x4d7bcc){try{_0x5133d1['push'](await ensureSqlContent(_0x578c53));}catch(_0x579d20){_0x2ea1b1[_0x31579c(0x210)]({'sqlCode':_0x578c53['sqlCode'],'error':_0x579d20 instanceof Error?_0x579d20[_0x31579c(0x1fc)]:String(_0x579d20)});}}if(_0x422c2d&&!_0x4b749d[_0x31579c(0x20c)]){let _0x183522=![];for(const _0x171793 of _0x5133d1){const _0x5ea632=detectModeFromSql(_0x171793),_0x1a0018=_0x171793[_0x31579c(0x1e4)]?await getDbName(_0x4b749d['appCode'],Number(_0x171793[_0x31579c(0x1e4)]))[_0x31579c(0x215)](()=>undefined):undefined,_0x2f8771=buildLocalSqlFileContent({'sqlCode':_0x171793[_0x31579c(0x1f8)],'sqlName':_0x171793[_0x31579c(0x1f4)],'dbId':_0x171793['dbId']},ensureRemoteSqlContent(_0x171793),{'dbName':_0x1a0018,'mode':_0x5ea632,'syncedAt':new Date()[_0x31579c(0x209)](),'description':_0x171793[_0x31579c(0x20b)]}),_0x40b6a1=resolveLocalSqlFilePath(_0x289249,_0x171793['sqlCode'],buildSqlLockEntry(_0x171793,ensureRemoteSqlContent(_0x171793),'',{'dbName':_0x1a0018}));if(await fileExists(_0x40b6a1)){const _0x4cff03=await readFile(_0x40b6a1,_0x31579c(0x1f7));if(!isEquivalentPulledSqlFile(_0x4cff03,_0x2f8771,_0x5ea632)){_0x183522=!![];break;}}}if(_0x183522){const _0xad85f2=await confirmForceOverwrite('Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.');if(!_0xad85f2)throw CliErrors[_0x31579c(0x1ec)](_0x31579c(0x1f6));}}const _0x226754=cloneSqlLockData(_0x3a116d),_0xcd2919=_0x226754[_0x31579c(0x200)][_0x289249[_0x31579c(0x1f5)]],_0x4275d0=[],_0x3ad743=[];for(const _0x4110cb of _0x5133d1){const _0x5c80d6=_0xcd2919['sqls'][_0x4110cb[_0x31579c(0x1f8)]],_0x53e275=ensureRemoteSqlContent(_0x4110cb),_0x42fa6a=detectModeFromSql(_0x4110cb),_0x57f5cf=_0x4110cb['dbId']?await getDbName(_0x4b749d[_0x31579c(0x1f5)],Number(_0x4110cb[_0x31579c(0x1e4)]))[_0x31579c(0x215)](()=>undefined):undefined,_0x4a2c32=buildLocalSqlFileContent({'sqlCode':_0x4110cb[_0x31579c(0x1f8)],'sqlName':_0x4110cb[_0x31579c(0x1f4)],'dbId':_0x4110cb[_0x31579c(0x1e4)]},_0x53e275,{'dbName':_0x57f5cf,'mode':_0x42fa6a,'syncedAt':new Date()[_0x31579c(0x209)](),'description':_0x4110cb[_0x31579c(0x20b)]}),_0xde1cb=buildSqlLockEntry(_0x4110cb,_0x53e275,computeSqlContentHash(_0x4a2c32),{'dbName':_0x57f5cf}),_0x30606f=_0xde1cb[_0x31579c(0x1e3)],_0x553850=join(_0x289249[_0x31579c(0x1f1)],_0x30606f);try{if(await fileExists(_0x553850)){const _0x5e23b4=await readFile(_0x553850,'utf8');if(isEquivalentPulledSqlFile(_0x5e23b4,_0x4a2c32,_0x42fa6a)){_0x3ad743[_0x31579c(0x210)]({'sqlCode':_0x4110cb[_0x31579c(0x1f8)],'reason':_0x31579c(0x1fe)}),_0xcd2919['sqls'][_0x4110cb[_0x31579c(0x1f8)]]={..._0xde1cb,'hash':computeSqlContentHash(_0x5e23b4),'path':_0x30606f};continue;}if(!_0x422c2d){_0x3ad743[_0x31579c(0x210)]({'sqlCode':_0x4110cb[_0x31579c(0x1f8)],'reason':_0x31579c(0x211)});continue;}}const _0x1eb960=_0x5c80d6?.[_0x31579c(0x1e3)]?join(_0x289249[_0x31579c(0x1f1)],_0x5c80d6['path']):undefined;_0x1eb960&&_0x1eb960!==_0x553850&&await fileExists(_0x1eb960)&&await rm(_0x1eb960,{'force':!![]}),await ensureParentDirectory(_0x553850),await writeFile(_0x553850,_0x4a2c32,_0x31579c(0x1f7)),_0xcd2919[_0x31579c(0x20e)][_0x4110cb[_0x31579c(0x1f8)]]={..._0xde1cb,'path':_0x30606f},_0x4275d0[_0x31579c(0x210)]({'sqlCode':_0x4110cb[_0x31579c(0x1f8)],'filePath':_0x553850});}catch(_0x934e7){_0x2ea1b1[_0x31579c(0x210)]({'sqlCode':_0x4110cb[_0x31579c(0x1f8)],'error':_0x934e7 instanceof Error?_0x934e7[_0x31579c(0x1fc)]:String(_0x934e7)});}}return _0xcd2919[_0x31579c(0x20a)]=new Date()[_0x31579c(0x209)](),await writeSqlLockFile(_0x289249[_0x31579c(0x1f3)],_0x226754),{'ok':_0x2ea1b1[_0x31579c(0x208)]===0x0,'data':{'pulled':_0x4275d0,'skipped':_0x3ad743,'failed':_0x2ea1b1},'message':_0x31579c(0x224)+_0x4275d0['length']+_0x31579c(0x21b)+_0x3ad743[_0x31579c(0x208)]+_0x31579c(0x1e8)+_0x2ea1b1[_0x31579c(0x208)]+_0x31579c(0x1ea)};}};function detectModeFromSql(_0x28a0ba){const _0x3174ac=a120_0x5bda34,_0x58fd97=ensureRemoteSqlContent(_0x28a0ba),_0x237e43=stripLocalSqlMetadata(_0x58fd97,'mybatisXml')[_0x3174ac(0x212)]();if(/^<(select|insert|update|delete)\b/i['test'](_0x237e43))return _0x3174ac(0x203);return _0x3174ac(0x213);}function a120_0x3794(){const _0x31d3b6=['72432VLlkSD','6NcQxTO','\x20skipped,\x20','\x20SQL\x20file(s)\x20into\x20','\x20failed','1432PZJIDD','cancelled','split','Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','str','totalCount','sqlRootDir','force','lockFilePath','sqlName','appCode','Force\x20pull\x20cancelled.','utf8','sqlCode','boolean','POST','55899IHcLrB','message','Filter\x20by\x20SQL\x20display\x20name','unchanged','pull','apps','4248396iCBnJN','would_pull','mybatisXml','416948DibGsa','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','filter','conflict','length','toISOString','lastSync','description','nonInteractive','42597pBLRDg','sqls','join','push','local\x20differs\x20from\x20remote','trimStart','sql','write','catch','name','skipped','sqlContent','sqlcode','sqlRoot','\x20written,\x20','No\x20remote\x20SQL\x20queries\x20matched.','string','replace','test','paging','bool','Force\x20overwrite\x20local\x20unsynced\x20changes','21130050VEjPQs','Pull\x20complete:\x20','36kGWSRK','path','dbId','3640540LYyjqn'];a120_0x3794=function(){return _0x31d3b6;};return a120_0x3794();}function isEquivalentPulledSqlFile(_0x1b0750,_0x299575,_0x3e099e){return normalizePullComparableContent(_0x1b0750,_0x3e099e)===normalizePullComparableContent(_0x299575,_0x3e099e);}function normalizePullComparableContent(_0x17e1a8,_0x414db3){const _0x11928d=a120_0x5bda34,_0xbc1a82=_0x17e1a8[_0x11928d(0x21e)](/\r\n/g,'\x0a')[_0x11928d(0x1ed)]('\x0a'),_0x3359aa=_0xbc1a82[_0x11928d(0x206)](_0x20a07b=>!isSyncedAtMetadataLine(_0x20a07b,_0x414db3));return _0x3359aa[_0x11928d(0x20f)]('\x0a');}function isSyncedAtMetadataLine(_0x41bebf,_0x307136){const _0x1d409a=a120_0x5bda34;if(_0x307136===_0x1d409a(0x203))return/^\s*<!--\s*@lovrabet\.syncedAt:/[_0x1d409a(0x21f)](_0x41bebf);return/^\s*--\s*@lovrabet\.syncedAt:/['test'](_0x41bebf);}
|