@lovrabet/rabetbase-cli 2.1.8 → 2.1.10-beta.0
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/field-update.js +1 -0
- 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 a110_0x1cfbba=a110_0x1b2d;(function(_0x353eac,_0x415c1d){const _0xea4e19=a110_0x1b2d,_0x33d858=_0x353eac();while(!![]){try{const _0x16bd63=-parseInt(_0xea4e19(0x86))/0x1+-parseInt(_0xea4e19(0xd1))/0x2*(-parseInt(_0xea4e19(0xe0))/0x3)+parseInt(_0xea4e19(0xa0))/0x4*(parseInt(_0xea4e19(0xb1))/0x5)+parseInt(_0xea4e19(0x95))/0x6*(parseInt(_0xea4e19(0xbf))/0x7)+parseInt(_0xea4e19(0xe8))/0x8+parseInt(_0xea4e19(0xdc))/0x9*(parseInt(_0xea4e19(0xc7))/0xa)+-parseInt(_0xea4e19(0xd0))/0xb;if(_0x16bd63===_0x415c1d)break;else _0x33d858['push'](_0x33d858['shift']());}catch(_0x46857c){_0x33d858['push'](_0x33d858['shift']());}}}(a110_0x33c5,0x5881d));import a110_0x50e6a2 from'chalk';import a110_0x29940f from'ora';import{existsSync,readFileSync,renameSync,rmSync,statSync,unlinkSync,writeFileSync}from'node:fs';import{resolve}from'node:path';function a110_0x33c5(){const _0xdc8fa2=['Step\x201/7:\x20Config\x20migration\x20—\x20','path','Proceed\x20with\x20upgrade?','filter','no\x20legacy\x20entry','isArray','object','package.json','134769HUPrBx','lovrabet/rabetbase\x20installed\x20globally','string','hasNewConfig','lovrabet/rabetbase','Remove\x20old\x20skill','Remove\x20.lovrabet/','cwd','oldArtifacts','===\x20Upgrade\x20Summary\x20===','Legacy\x20artifacts:','log','exit\x20','@lovrabet/sdk\x20has\x20been\x20updated\x20to\x20latest\x20in\x20package.json.','\x20\x20Action:\x20remove\x20old\x20lovrabet/lovrabet-skill,\x20add\x20via\x20`','1553106cGLnrz','parse','not\x20found\x20or\x20already\x20at\x20latest','\x20removed','MCP\x20config:','cyan','detail','Step\x203/7:\x20Legacy\x20artifacts\x20—\x20','yes','no\x20legacy\x20config\x20found','Config\x20migration','557572VwXkMe','.cursor/rules/lovrabet_rules.mdc','Step\x202/7:\x20Removing\x20.lovrabet/\x20directory...','green','\x20\x20npm\x20install','Step\x202/7:\x20.lovrabet/\x20removal\x20failed\x20—\x20','label','join','red','Step\x205/7:\x20Removing\x20old\x20skill...','Step\x206/7:\x20Installing\x20new\x20skill...','FOUND','.bak','status','latest','\x20removed\x20(','entries','5jDoHjQ','stringify','Step\x201/7:\x20Migrating\x20config...','oldPath','\x20→\x20keys:\x20','not\x20found\x20(will\x20create)','skipped','Config\x20file:','start','step','sdkUpgrade','push','.claude/skills/lovrabet','no\x20matching\x20entry\x20found','7JMtpXM','not\x20needed','skipped\x20(not\x20found\x20or\x20already\x20at\x20latest)','error','Upgrade\x20cancelled.','args','No\x20legacy\x20artifacts\x20found.\x20Your\x20project\x20is\x20already\x20up-to-date.','Step\x206/7:\x20Install\x20new\x20skill\x20—\x20','60jPsuSF','Some\x20steps\x20failed.\x20Check\x20the\x20summary\x20above\x20for\x20details.','Step\x204/7:\x20MCP\x20config\x20—\x20','skipped\x20(no\x20legacy\x20config)','\x20\x20Action:\x20delete','configMigration','isDirectory','\x20→\x20latest','devDependencies','9838037MyfGTK','21950ptjnEZ','failed','Clean\x20MCP\x20config','gray','succeed','oldMcpConfig','white','Upgrade\x20@lovrabet/sdk','includes','Step\x205/7:\x20Remove\x20old\x20skill\x20—\x20','needsSkillSwap','521415gMSiMq','length','done','Step\x204/7:\x20Cleaning\x20MCP\x20config...','69GumAVY','fields','Please\x20re-install\x20dependencies\x20to\x20apply\x20the\x20change:','lovrabet/lovrabet-skill\x20removed','some','Skill\x20swap:','\x20\x20bun\x20install','Step\x207/7:\x20@lovrabet/sdk\x20—\x20','3147056cubpPE','fail','mcpServers','message','already\x20exists\x20(will\x20merge)','\x20→\x20','Step\x202/7:\x20.lovrabet/\x20not\x20found,\x20skipped','values','\x20(backup:\x20','@lovrabet/sdk:','@lovrabet/dataset-mcp-server','CANCEL','\x20\x20Current\x20version\x20in\x20','\x20\x20Action:\x20update\x20package.json\x20(you\x20will\x20need\x20to\x20re-run\x20install)','keys','bold','removed\x20','\x20\x20#\x20or','Install\x20new\x20skill','needed','yellow','Step\x203/7:\x20Removing\x20legacy\x20IDE\x20skill\x20files...','.lovrabet','\x20\x20Fields\x20to\x20migrate:\x20','utf8','\x20\x20Action:\x20migrate\x20→\x20backup\x20old\x20as\x20.bak','files','@lovrabet/sdk'];a110_0x33c5=function(){return _0xdc8fa2;};return a110_0x33c5();}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[a110_0x1cfbba(0x81)](_0x2df21f=>_0x2df21f!==NEW_CONFIG_NAME);function a110_0x1b2d(_0x3ff7dc,_0x1bcb7e){_0x3ff7dc=_0x3ff7dc-0x7d;const _0x33c59c=a110_0x33c5();let _0x1b2db3=_0x33c59c[_0x3ff7dc];return _0x1b2db3;}function collectIdeSkillFiles(_0x4fc395){const _0x53d096=a110_0x1cfbba,_0x184478=[];for(const _0x44ae70 of Object[_0x53d096(0xef)](CORE_IDE_CONFIGS)){if(_0x44ae70[_0x53d096(0x102)])for(const _0x346977 of _0x44ae70['files']){_0x184478[_0x53d096(0xbc)](resolve(_0x4fc395,_0x346977[_0x53d096(0x7f)]));}}return _0x184478;}function analyse(_0x9370aa){const _0x177d20=a110_0x1cfbba;let _0x1b8928=null;const _0x177a11=resolve(_0x9370aa,NEW_CONFIG_NAME),_0x27290f=existsSync(_0x177a11);for(const _0x3951ee of LEGACY_CONFIG_NAMES){const _0x24a7a1=resolve(_0x9370aa,_0x3951ee);if(existsSync(_0x24a7a1)){const _0x46512c=readConfigFile(_0x24a7a1),_0x1a8fba=Object[_0x177d20(0xf6)](_0x46512c)[_0x177d20(0x81)](_0x219042=>typeof _0x46512c[_0x219042]!=='undefined');_0x1b8928={'oldPath':_0x24a7a1,'hasNewConfig':_0x27290f,'fields':_0x1a8fba};break;}}const _0x23f0ac=[],_0x1184ef=resolve(_0x9370aa,'.lovrabet');if(existsSync(_0x1184ef))_0x23f0ac[_0x177d20(0xbc)](_0x1184ef);const _0x129a2a=resolve(_0x9370aa,_0x177d20(0xa1));if(existsSync(_0x129a2a))_0x23f0ac[_0x177d20(0xbc)](_0x129a2a);const _0x434232=resolve(_0x9370aa,_0x177d20(0xbd));if(existsSync(_0x434232))_0x23f0ac[_0x177d20(0xbc)](_0x434232);for(const _0x4ff74c of collectIdeSkillFiles(_0x9370aa)){if(existsSync(_0x4ff74c))_0x23f0ac[_0x177d20(0xbc)](_0x4ff74c);}let _0x1e8490=null;const _0x34a28c=resolve(_0x9370aa,'.cursor/mcp.json');if(existsSync(_0x34a28c))try{const _0x21c2e3=JSON[_0x177d20(0x96)](readFileSync(_0x34a28c,'utf8'));if(_0x21c2e3?.[_0x177d20(0xea)]&&typeof _0x21c2e3['mcpServers']===_0x177d20(0x84)){const _0x5a7cb2=[];for(const [_0x16a434,_0x181331]of Object[_0x177d20(0xb0)](_0x21c2e3[_0x177d20(0xea)])){const _0x1fed07=_0x181331;_0x1fed07?.[_0x177d20(0xc4)]&&Array[_0x177d20(0x83)](_0x1fed07[_0x177d20(0xc4)])&&_0x1fed07[_0x177d20(0xc4)]['some'](_0x1c927e=>typeof _0x1c927e===_0x177d20(0x88)&&_0x1c927e[_0x177d20(0xd9)](_0x177d20(0xf2)))&&_0x5a7cb2[_0x177d20(0xbc)](_0x16a434);}_0x5a7cb2[_0x177d20(0xdd)]>0x0&&(_0x1e8490={'path':_0x34a28c,'keys':_0x5a7cb2});}}catch{}const _0x4dcb38=_0x23f0ac[_0x177d20(0xdd)]>0x0||_0x1b8928!==null;let _0x5eec91=null;const _0x324c0c=resolve(_0x9370aa,_0x177d20(0x85));if(existsSync(_0x324c0c))try{const _0x53759b=JSON[_0x177d20(0x96)](readFileSync(_0x324c0c,'utf8'));for(const _0x563672 of['dependencies',_0x177d20(0xcf)]){const _0x2b7b0a=_0x53759b?.[_0x563672]?.[_0x177d20(0x7d)];if(typeof _0x2b7b0a===_0x177d20(0x88)){_0x2b7b0a!==_0x177d20(0xae)&&(_0x5eec91={'pkgPath':_0x324c0c,'currentVersion':_0x2b7b0a,'field':_0x563672});break;}}}catch{}return{'configMigration':_0x1b8928,'oldArtifacts':_0x23f0ac,'oldMcpConfig':_0x1e8490,'needsSkillSwap':_0x4dcb38,'sdkUpgrade':_0x5eec91};}function printReport(_0x1c8764){const _0x402389=a110_0x1cfbba,{configMigration:_0x1afe0b,oldArtifacts:_0x3540c9,oldMcpConfig:_0x37da56,needsSkillSwap:_0x9374ba}=_0x1c8764;console[_0x402389(0x91)](''),console[_0x402389(0x91)](a110_0x50e6a2[_0x402389(0xf7)]('===\x20Upgrade\x20Analysis\x20===')),console[_0x402389(0x91)]('');_0x1afe0b?(console[_0x402389(0x91)](a110_0x50e6a2[_0x402389(0x9a)](_0x402389(0xb8))+('\x20\x20'+a110_0x50e6a2['yellow'](_0x1afe0b[_0x402389(0xb4)]))),console[_0x402389(0x91)]('\x20\x20New\x20config\x20(.rabetbase.json):\x20'+(_0x1afe0b[_0x402389(0x89)]?a110_0x50e6a2[_0x402389(0xa3)](_0x402389(0xec)):a110_0x50e6a2[_0x402389(0xd4)](_0x402389(0xb6)))),console[_0x402389(0x91)](_0x402389(0xff)+_0x1afe0b[_0x402389(0xe1)][_0x402389(0xa7)](',\x20')),console[_0x402389(0x91)](_0x402389(0x101))):console['log'](a110_0x50e6a2[_0x402389(0x9a)]('Config\x20file:')+'\x20\x20'+a110_0x50e6a2['gray'](_0x402389(0x9e)));console[_0x402389(0x91)]('');if(_0x3540c9[_0x402389(0xdd)]>0x0){console[_0x402389(0x91)](a110_0x50e6a2[_0x402389(0x9a)](_0x402389(0x90)));for(const _0x43cfe8 of _0x3540c9){console['log']('\x20\x20'+a110_0x50e6a2[_0x402389(0xa8)](_0x402389(0xab))+'\x20\x20'+_0x43cfe8);}console[_0x402389(0x91)](_0x402389(0xcb));}else console[_0x402389(0x91)](a110_0x50e6a2['cyan'](_0x402389(0x90))+'\x20\x20'+a110_0x50e6a2[_0x402389(0xd4)]('none\x20found'));console[_0x402389(0x91)]('');_0x37da56?(console[_0x402389(0x91)](a110_0x50e6a2[_0x402389(0x9a)](_0x402389(0x99))+('\x20\x20'+a110_0x50e6a2[_0x402389(0xfc)](_0x37da56[_0x402389(0x7f)])+_0x402389(0xb5)+_0x37da56['keys'][_0x402389(0xa7)](',\x20'))),console[_0x402389(0x91)]('\x20\x20Action:\x20remove\x20entries\x20containing\x20@lovrabet/dataset-mcp-server')):console['log'](a110_0x50e6a2[_0x402389(0x9a)](_0x402389(0x99))+'\x20\x20'+a110_0x50e6a2[_0x402389(0xd4)](_0x402389(0x82)));console['log'](''),console[_0x402389(0x91)](a110_0x50e6a2['cyan'](_0x402389(0xe5))+('\x20\x20'+(_0x9374ba?a110_0x50e6a2[_0x402389(0xfc)](_0x402389(0xfb)):a110_0x50e6a2[_0x402389(0xa3)](_0x402389(0xc0)))));_0x9374ba&&console['log'](_0x402389(0x94)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+'`');console[_0x402389(0x91)]('');if(_0x1c8764[_0x402389(0xbb)]){const {currentVersion:_0x1914e0,field:_0x3dc8c7,pkgPath:_0x5b2396}=_0x1c8764[_0x402389(0xbb)];console[_0x402389(0x91)](a110_0x50e6a2[_0x402389(0x9a)]('@lovrabet/sdk:')+('\x20\x20'+a110_0x50e6a2[_0x402389(0xfc)](_0x5b2396))),console['log'](_0x402389(0xf4)+_0x3dc8c7+':\x20'+a110_0x50e6a2[_0x402389(0xfc)](_0x1914e0)+'\x20→\x20'+a110_0x50e6a2['green'](_0x402389(0xae))),console[_0x402389(0x91)](_0x402389(0xf5));}else console['log'](a110_0x50e6a2['cyan'](_0x402389(0xf1))+'\x20\x20'+a110_0x50e6a2[_0x402389(0xd4)](_0x402389(0x97)));console[_0x402389(0x91)]('');}function execConfigMigration(_0x1d87b5,_0xb373a8){const _0x81215e=a110_0x1cfbba,{configMigration:_0x27ca6f}=_0x1d87b5;if(!_0x27ca6f?.['oldPath'])return{'step':0x1,'label':_0x81215e(0x9f),'ok':!![],'detail':_0x81215e(0xca)};const _0x566847=readConfigFile(_0x27ca6f['oldPath']),_0x21971c=resolve(_0xb373a8,NEW_CONFIG_NAME),_0xac8b81=_0x27ca6f[_0x81215e(0x89)]?readConfigFile(_0x21971c):{};for(const [_0x1cfbaf,_0x2ed526]of Object[_0x81215e(0xb0)](_0x566847)){!(_0x1cfbaf in _0xac8b81)&&(_0xac8b81[_0x1cfbaf]=_0x2ed526);}writeConfigFile(_0x21971c,_0xac8b81);const _0x38302d=_0x27ca6f[_0x81215e(0xb4)]+_0x81215e(0xac);return renameSync(_0x27ca6f[_0x81215e(0xb4)],_0x38302d),{'step':0x1,'label':'Config\x20migration','ok':!![],'detail':_0x27ca6f['oldPath']+_0x81215e(0xed)+_0x21971c+_0x81215e(0xf0)+_0x38302d+')'};}function execRemoveOldArtifacts(_0x1a9749){const _0x4b5c8b=a110_0x1cfbba,_0x15c8ef=[];for(const _0x39d0e1 of _0x1a9749){try{if(!existsSync(_0x39d0e1))continue;const _0x5eb4d4=tryStat(_0x39d0e1);_0x5eb4d4?.[_0x4b5c8b(0xcd)]()?rmSync(_0x39d0e1,{'recursive':!![],'force':!![]}):unlinkSync(_0x39d0e1);}catch(_0x4fa9bb){_0x15c8ef[_0x4b5c8b(0xbc)](_0x39d0e1+':\x20'+_0x4fa9bb[_0x4b5c8b(0xeb)]);}}return{'step':0x3,'label':'Remove\x20legacy\x20artifacts','ok':_0x15c8ef[_0x4b5c8b(0xdd)]===0x0,'detail':_0x15c8ef[_0x4b5c8b(0xdd)]>0x0?_0x1a9749[_0x4b5c8b(0xdd)]-_0x15c8ef[_0x4b5c8b(0xdd)]+'/'+_0x1a9749[_0x4b5c8b(0xdd)]+_0x4b5c8b(0xaf)+_0x15c8ef['join'](';\x20')+')':_0x1a9749[_0x4b5c8b(0xdd)]+_0x4b5c8b(0x98)};}function execCleanMcp(_0x32eeba){const _0x42bfbf=a110_0x1cfbba;if(!_0x32eeba[_0x42bfbf(0xd6)])return{'step':0x4,'label':_0x42bfbf(0xd3),'ok':!![],'detail':_0x42bfbf(0xb7)};try{const _0x2fb41d=readFileSync(_0x32eeba['oldMcpConfig']['path'],_0x42bfbf(0x100)),_0x5f38e6=JSON[_0x42bfbf(0x96)](_0x2fb41d);if(_0x5f38e6?.[_0x42bfbf(0xea)]&&typeof _0x5f38e6[_0x42bfbf(0xea)]==='object'){const _0x15949f=[];for(const [_0x3d765b,_0x44e48c]of Object[_0x42bfbf(0xb0)](_0x5f38e6['mcpServers'])){_0x44e48c?.[_0x42bfbf(0xc4)]&&Array[_0x42bfbf(0x83)](_0x44e48c['args'])&&_0x44e48c['args']['some'](_0x1fb340=>typeof _0x1fb340===_0x42bfbf(0x88)&&_0x1fb340['includes'](_0x42bfbf(0xf2)))&&_0x15949f[_0x42bfbf(0xbc)](_0x3d765b);}for(const _0x381e8c of _0x15949f){delete _0x5f38e6[_0x42bfbf(0xea)][_0x381e8c];}return _0x15949f[_0x42bfbf(0xdd)]>0x0&&writeFileSync(_0x32eeba['oldMcpConfig'][_0x42bfbf(0x7f)],JSON[_0x42bfbf(0xb2)](_0x5f38e6,null,0x2)+'\x0a',_0x42bfbf(0x100)),{'step':0x4,'label':_0x42bfbf(0xd3),'ok':!![],'detail':_0x42bfbf(0xf8)+_0x15949f[_0x42bfbf(0xa7)](',\x20')+'\x20from\x20'+_0x32eeba[_0x42bfbf(0xd6)][_0x42bfbf(0x7f)]};}return{'step':0x4,'label':_0x42bfbf(0xd3),'ok':!![],'detail':_0x42bfbf(0xbe)};}catch(_0x173a64){return{'step':0x4,'label':_0x42bfbf(0xd3),'ok':![],'detail':_0x173a64[_0x42bfbf(0xeb)]};}}function execSkillsRemove(_0x1b5d4b,_0xc76ed1){const _0x5e94f8=a110_0x1cfbba,_0x5e7dba=runNpxSkillsRemove(_0x1b5d4b,{'stdio':'inherit','yes':_0xc76ed1});return{'step':0x5,'label':_0x5e94f8(0x8b),'ok':_0x5e7dba['ok'],'detail':_0x5e7dba['ok']?_0x5e94f8(0xe3):_0x5e7dba[_0x5e94f8(0xc2)]??_0x5e94f8(0x92)+_0x5e7dba[_0x5e94f8(0xad)]};}function execSkillsAdd(_0x3c1462,_0x173e3c){const _0x47a948=a110_0x1cfbba,_0x88a4ad=runNpxSkillsAddGlobal(_0x3c1462,_0x47a948(0x8a),{'stdio':'inherit','yes':_0x173e3c});return{'step':0x6,'label':_0x47a948(0xfa),'ok':_0x88a4ad['ok'],'detail':_0x88a4ad['ok']?_0x47a948(0x87):_0x88a4ad[_0x47a948(0xc2)]??_0x47a948(0x92)+_0x88a4ad[_0x47a948(0xad)]};}function execUpgradeSdk(_0x299da8){const _0x29d469=a110_0x1cfbba;if(!_0x299da8[_0x29d469(0xbb)])return{'step':0x7,'label':_0x29d469(0xd8),'ok':!![],'detail':_0x29d469(0xc1)};const {pkgPath:_0x43e7a1,currentVersion:_0x3f9906,field:_0x56da93}=_0x299da8[_0x29d469(0xbb)];try{const _0x1d5d52=readFileSync(_0x43e7a1,_0x29d469(0x100)),_0x57b883=JSON[_0x29d469(0x96)](_0x1d5d52);return _0x57b883[_0x56da93][_0x29d469(0x7d)]=_0x29d469(0xae),writeFileSync(_0x43e7a1,JSON[_0x29d469(0xb2)](_0x57b883,null,0x2)+'\x0a',_0x29d469(0x100)),{'step':0x7,'label':_0x29d469(0xd8),'ok':!![],'detail':_0x56da93+'[\x22@lovrabet/sdk\x22]:\x20'+_0x3f9906+_0x29d469(0xce)};}catch(_0x3b916){return{'step':0x7,'label':_0x29d469(0xd8),'ok':![],'detail':_0x3b916[_0x29d469(0xeb)]};}}function tryStat(_0x47edda){try{return statSync(_0x47edda);}catch{return undefined;}}function printSummary(_0xad1cc5){const _0x49d331=a110_0x1cfbba;console[_0x49d331(0x91)](''),console[_0x49d331(0x91)](a110_0x50e6a2[_0x49d331(0xf7)](_0x49d331(0x8f))),console[_0x49d331(0x91)]('');for(const _0xf1dcaa of _0xad1cc5){const _0x5698c1=_0xf1dcaa['ok']?a110_0x50e6a2[_0x49d331(0xa3)]('OK'):a110_0x50e6a2[_0x49d331(0xa8)]('FAIL');console[_0x49d331(0x91)]('\x20\x20'+_0x5698c1+'\x20\x20Step\x20'+_0xf1dcaa[_0x49d331(0xba)]+':\x20'+_0xf1dcaa[_0x49d331(0xa6)]);if(_0xf1dcaa[_0x49d331(0x9b)])console[_0x49d331(0x91)]('\x20\x20\x20\x20\x20\x20\x20'+a110_0x50e6a2[_0x49d331(0xd4)](_0xf1dcaa[_0x49d331(0x9b)]));}console[_0x49d331(0x91)]('');}export async function upgradeApp(_0x1d3c6f,_0x4797e4){const _0x462ac2=a110_0x1cfbba,_0x3e1c8e=process[_0x462ac2(0x8d)](),_0x36489a=analyse(_0x3e1c8e),_0x46c369=!_0x36489a[_0x462ac2(0xcc)]&&_0x36489a[_0x462ac2(0x8e)][_0x462ac2(0xdd)]===0x0&&!_0x36489a['oldMcpConfig']&&!_0x36489a[_0x462ac2(0xdb)]&&!_0x36489a[_0x462ac2(0xbb)];if(_0x46c369){console['log'](a110_0x50e6a2[_0x462ac2(0xa3)](_0x462ac2(0xc5)));return;}printReport(_0x36489a);const _0x4f41d0=!!(_0x4797e4[_0x462ac2(0x9d)]||_0x4797e4['Y']||_0x1d3c6f);if(!_0x4f41d0)try{const _0x42c2e9=await askConfirm(_0x462ac2(0x80));if(!_0x42c2e9){console[_0x462ac2(0x91)](a110_0x50e6a2[_0x462ac2(0xd4)](_0x462ac2(0xc3)));return;}}catch(_0x2e65c0){if(_0x2e65c0?.['message']===_0x462ac2(0xf3)){console[_0x462ac2(0x91)](a110_0x50e6a2[_0x462ac2(0xd4)](_0x462ac2(0xc3)));return;}throw _0x2e65c0;}const _0x3a1180=[],_0x391a83=a110_0x29940f({'text':_0x462ac2(0xb3),'color':'cyan'})['start'](),_0x29362a=execConfigMigration(_0x36489a,_0x3e1c8e);_0x3a1180['push'](_0x29362a),_0x391a83[_0x29362a['ok']?_0x462ac2(0xd5):_0x462ac2(0xe9)](_0x462ac2(0x7e)+(_0x29362a['detail']??(_0x29362a['ok']?_0x462ac2(0xde):'failed')));const _0x4b8a0d=resolve(_0x3e1c8e,_0x462ac2(0xfe)),_0x5be0a2=a110_0x29940f({'text':_0x462ac2(0xa2),'color':'cyan'})[_0x462ac2(0xb9)]();if(existsSync(_0x4b8a0d))try{rmSync(_0x4b8a0d,{'recursive':!![],'force':!![]}),_0x5be0a2['succeed']('Step\x202/7:\x20.lovrabet/\x20directory\x20removed'),_0x3a1180['push']({'step':0x2,'label':_0x462ac2(0x8c),'ok':!![]});}catch(_0x2d0cfb){_0x5be0a2[_0x462ac2(0xe9)](_0x462ac2(0xa5)+_0x2d0cfb[_0x462ac2(0xeb)]),_0x3a1180['push']({'step':0x2,'label':_0x462ac2(0x8c),'ok':![],'detail':_0x2d0cfb[_0x462ac2(0xeb)]});}else _0x5be0a2['info'](_0x462ac2(0xee)),_0x3a1180[_0x462ac2(0xbc)]({'step':0x2,'label':_0x462ac2(0x8c),'ok':!![],'detail':_0x462ac2(0xb7)});const _0x1ddeba=a110_0x29940f({'text':_0x462ac2(0xfd),'color':_0x462ac2(0x9a)})[_0x462ac2(0xb9)](),_0x5eb5d2=execRemoveOldArtifacts(_0x36489a[_0x462ac2(0x8e)]);_0x3a1180['push'](_0x5eb5d2),_0x1ddeba[_0x5eb5d2['ok']?_0x462ac2(0xd5):_0x462ac2(0xe9)](_0x462ac2(0x9c)+(_0x5eb5d2[_0x462ac2(0x9b)]??(_0x5eb5d2['ok']?_0x462ac2(0xde):'failed')));const _0x4bd39f=a110_0x29940f({'text':_0x462ac2(0xdf),'color':_0x462ac2(0x9a)})[_0x462ac2(0xb9)](),_0x51ae9e=execCleanMcp(_0x36489a);_0x3a1180[_0x462ac2(0xbc)](_0x51ae9e),_0x4bd39f[_0x51ae9e['ok']?_0x462ac2(0xd5):_0x462ac2(0xe9)](_0x462ac2(0xc9)+(_0x51ae9e['detail']??(_0x51ae9e['ok']?_0x462ac2(0xde):_0x462ac2(0xd2))));const _0x114ca6=a110_0x29940f({'text':_0x462ac2(0xa9),'color':_0x462ac2(0x9a)})[_0x462ac2(0xb9)](),_0xf3d9c8=execSkillsRemove(_0x3e1c8e,_0x4f41d0);_0x3a1180[_0x462ac2(0xbc)](_0xf3d9c8),_0x114ca6[_0xf3d9c8['ok']?_0x462ac2(0xd5):'fail'](_0x462ac2(0xda)+(_0xf3d9c8[_0x462ac2(0x9b)]??(_0xf3d9c8['ok']?'done':_0x462ac2(0xd2))));const _0x49ee14=a110_0x29940f({'text':_0x462ac2(0xaa),'color':'cyan'})['start'](),_0x1a94c4=execSkillsAdd(_0x3e1c8e,_0x4f41d0);_0x3a1180[_0x462ac2(0xbc)](_0x1a94c4),_0x49ee14[_0x1a94c4['ok']?_0x462ac2(0xd5):_0x462ac2(0xe9)](_0x462ac2(0xc6)+(_0x1a94c4[_0x462ac2(0x9b)]??(_0x1a94c4['ok']?_0x462ac2(0xde):_0x462ac2(0xd2))));const _0x54f8bc=a110_0x29940f({'text':'Step\x207/7:\x20Upgrading\x20@lovrabet/sdk\x20in\x20package.json...','color':_0x462ac2(0x9a)})[_0x462ac2(0xb9)](),_0x5b50e1=execUpgradeSdk(_0x36489a);_0x3a1180['push'](_0x5b50e1),_0x54f8bc[_0x5b50e1['ok']?'succeed':'fail'](_0x462ac2(0xe7)+(_0x5b50e1['detail']??(_0x5b50e1['ok']?_0x462ac2(0xde):_0x462ac2(0xd2)))),printSummary(_0x3a1180);const _0x141d73=_0x3a1180[_0x462ac2(0xe4)](_0x191fd0=>!_0x191fd0['ok']);_0x141d73?console[_0x462ac2(0x91)](a110_0x50e6a2['yellow'](_0x462ac2(0xc8))):console[_0x462ac2(0x91)](a110_0x50e6a2['green']('Upgrade\x20completed\x20successfully!')),_0x5b50e1['ok']&&_0x36489a[_0x462ac2(0xbb)]&&(console[_0x462ac2(0x91)](''),console['log'](a110_0x50e6a2[_0x462ac2(0xf7)][_0x462ac2(0x9a)](_0x462ac2(0x93))),console[_0x462ac2(0x91)](a110_0x50e6a2['cyan'](_0x462ac2(0xe2))),console[_0x462ac2(0x91)](''),console['log'](a110_0x50e6a2[_0x462ac2(0xd7)](_0x462ac2(0xa4))),console[_0x462ac2(0x91)](a110_0x50e6a2[_0x462ac2(0xd7)](_0x462ac2(0xf9))),console[_0x462ac2(0x91)](a110_0x50e6a2[_0x462ac2(0xd7)](_0x462ac2(0xe6))),console[_0x462ac2(0x91)](''));}
|
package/lib/commands/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a111_0x24a736=a111_0x5336;(function(_0x3697bb,_0x44e1bb){const _0x492bfe=a111_0x5336,_0x268311=_0x3697bb();while(!![]){try{const _0x27ae6a=parseInt(_0x492bfe(0xf1))/0x1+-parseInt(_0x492bfe(0x10b))/0x2*(parseInt(_0x492bfe(0xe9))/0x3)+-parseInt(_0x492bfe(0xf5))/0x4*(parseInt(_0x492bfe(0xfa))/0x5)+parseInt(_0x492bfe(0xed))/0x6*(parseInt(_0x492bfe(0xd8))/0x7)+-parseInt(_0x492bfe(0xf8))/0x8*(-parseInt(_0x492bfe(0x100))/0x9)+-parseInt(_0x492bfe(0xe3))/0xa+-parseInt(_0x492bfe(0x109))/0xb*(-parseInt(_0x492bfe(0xfd))/0xc);if(_0x27ae6a===_0x44e1bb)break;else _0x268311['push'](_0x268311['shift']());}catch(_0x3ad96d){_0x268311['push'](_0x268311['shift']());}}}(a111_0x5e4e,0xaf71e));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';function a111_0x5336(_0x110042,_0x26d5c1){_0x110042=_0x110042-0xd7;const _0x5e4e18=a111_0x5e4e();let _0x5336c3=_0x5e4e18[_0x110042];return _0x5336c3;}import{projectDefinitions}from'../commands/project/index.js';import{initDefinitions}from'../commands/init/index.js';import{runDefinition}from'../commands/run/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x112949){const _0x19befe=a111_0x5336;for(const _0x4c1fe4 of _0x112949){definitions[_0x19befe(0x106)](_0x4c1fe4['service']+':'+_0x4c1fe4[_0x19befe(0x10d)],_0x4c1fe4);let _0x48593f=serviceGroups[_0x19befe(0xdf)](_0x4c1fe4[_0x19befe(0xde)]);!_0x48593f&&(_0x48593f=[],serviceGroups[_0x19befe(0x106)](_0x4c1fe4[_0x19befe(0xde)],_0x48593f)),_0x48593f[_0x19befe(0x107)](_0x4c1fe4);}}function a111_0x5e4e(){const _0x20a7db=['map','880MGpYBT','run','isSingleCommand','20259924MnTkON','create','Quick\x20Start','60156psyHCf','BFF\x20Scripts','SQL\x20Queries','Instant\x20API','description','risk','set','push','skill','11DyUJEn','build','6VooRSa','Self\x20Update','command','show','Code\x20Generation','56777cogICR','login','Platform\x20Issue','\x20\x20[write]','auth','API','service','get','Dataset\x20&\x20Operations','Skills','install','4792030lLNFOI','<script>','values','has','Run\x20Scripts','commands','1146576ymnVzU','\x20\x20[high-risk-write]','read','logout','246aMnZnE','start','wildcardDef','from','757099orKbBY','write','Menu','Project','13196lMwMhM','Run\x20any\x20package.json\x20script','project','176NabiCl'];a111_0x5e4e=function(){return _0x20a7db;};return a111_0x5e4e();}function registerDeclarativeService(_0x1d04cb,_0x13046c,_0x51e7c8){const _0x592818=a111_0x5336;registerDefinitions(_0x13046c);_0x51e7c8?.[_0x592818(0xef)]&®isterDefinitions([_0x51e7c8[_0x592818(0xef)]]);const _0x178480=_0x224702=>_0x224702===_0x592818(0xeb)?'':_0x224702===_0x592818(0xf2)?_0x592818(0xdb):_0x592818(0xea),_0xc8f12f={'service':_0x13046c[0x0]['service'],'label':_0x1d04cb,'commands':_0x13046c[_0x592818(0xf9)](_0x5b70d7=>({'command':_0x5b70d7['command'],'description':_0x5b70d7[_0x592818(0x104)],'tag':_0x178480(_0x5b70d7[_0x592818(0x105)])})),'declarative':!![],'defaultCommand':_0x51e7c8?.['defaultCommand']??(_0x51e7c8?.[_0x592818(0xfc)]?_0x13046c[0x0][_0x592818(0x10d)]:undefined),'wildcardDef':_0x51e7c8?.['wildcardDef'],'isSingleCommand':_0x51e7c8?.[_0x592818(0xfc)]};serviceRegistry[_0x592818(0x107)](_0xc8f12f),serviceByName[_0x592818(0x106)](_0xc8f12f['service'],_0xc8f12f);}registerDeclarativeService(a111_0x24a736(0xff),initDefinitions,{'defaultCommand':a111_0x24a736(0xfb),'isSingleCommand':!![]}),registerDeclarativeService(a111_0x24a736(0xf4),projectDefinitions),registerDeclarativeService('App\x20Management',appDefinitions),registerDeclarativeService(a111_0x24a736(0xe7),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry['length']-0x1];last[a111_0x24a736(0xe8)]=[{'command':a111_0x24a736(0xe4),'description':a111_0x24a736(0xf6),'tag':''}];}registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':a111_0x24a736(0xd9)}),registerDeclarativeService(a111_0x24a736(0x10c),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Schema',[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Configuration',configDefinitions),registerDeclarativeService(a111_0x24a736(0xda),issueDefinitions),registerDeclarativeService(a111_0x24a736(0xdd),apiDefinitions),registerDeclarativeService(a111_0x24a736(0xf3),menuDefinitions),registerDeclarativeService('Database\x20Connections',dbDefinitions),registerDeclarativeService(a111_0x24a736(0xe0),datasetDefinitions),registerDeclarativeService('Smart\x20List\x20Pages',pageDefinitions),registerDeclarativeService(a111_0x24a736(0x103),dataDefinitions),registerDeclarativeService(a111_0x24a736(0x101),bffDefinitions),registerDeclarativeService(a111_0x24a736(0x102),sqlDefinitions),registerDeclarativeService(a111_0x24a736(0xd7),codegenDefinitions),registerDeclarativeService(a111_0x24a736(0xe1),skillDefinitions),registerDeclarativeService('Logs',logsDefinitions,{'defaultCommand':a111_0x24a736(0x10e)});export const deprecatedAliases={'create':{'service':a111_0x24a736(0xf7),'command':a111_0x24a736(0xfe)},'start':{'service':a111_0x24a736(0xfb),'command':a111_0x24a736(0xee)},'build':{'service':'run','command':a111_0x24a736(0x10a)},'preview':{'service':a111_0x24a736(0xfb),'command':'preview'},'logout':{'service':a111_0x24a736(0xdc),'command':a111_0x24a736(0xec)},'skills':{'service':a111_0x24a736(0x108),'command':a111_0x24a736(0xe2)}};export const deprecatedSubcommands={'bff':{'new':a111_0x24a736(0xfe)},'sql':{'new':a111_0x24a736(0xfe)}};export function resolveDeprecatedSubcommand(_0x22e92d,_0x802856){return deprecatedSubcommands[_0x22e92d]?.[_0x802856];}export function findDefinition(_0x551edc,_0x51fa7d){const _0x55ee9b=a111_0x24a736;return definitions[_0x55ee9b(0xdf)](_0x551edc+':'+_0x51fa7d);}export function isKnownService(_0x344a9f){const _0x16aac7=a111_0x24a736;return serviceByName[_0x16aac7(0xe6)](_0x344a9f);}export function isDeclarativeService(_0x2e17ff){const _0x752b94=a111_0x24a736;return serviceGroups[_0x752b94(0xe6)](_0x2e17ff)||serviceByName[_0x752b94(0xdf)](_0x2e17ff)?.[_0x752b94(0xef)]!==undefined;}export function getServiceEntry(_0x3d578d){return serviceByName['get'](_0x3d578d);}export function getLegacyHandler(_0x28c852,_0xacbe35){return undefined;}export function getAllDefinitions(){const _0x36f431=a111_0x24a736;return Array[_0x36f431(0xf0)](definitions[_0x36f431(0xe5)]());}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a112_0x4fc2f9=a112_0x4b13;(function(_0x195566,_0x5039cd){const _0x396b76=a112_0x4b13,_0x1b6609=_0x195566();while(!![]){try{const _0x4cf2b8=parseInt(_0x396b76(0x160))/0x1+parseInt(_0x396b76(0x155))/0x2+-parseInt(_0x396b76(0x166))/0x3*(parseInt(_0x396b76(0x154))/0x4)+parseInt(_0x396b76(0x157))/0x5+parseInt(_0x396b76(0x15c))/0x6+-parseInt(_0x396b76(0x192))/0x7+-parseInt(_0x396b76(0x15e))/0x8*(parseInt(_0x396b76(0x153))/0x9);if(_0x4cf2b8===_0x5039cd)break;else _0x1b6609['push'](_0x1b6609['shift']());}catch(_0x1550db){_0x1b6609['push'](_0x1b6609['shift']());}}}(a112_0x1cb6,0x2cd47));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';function a112_0x1cb6(){const _0x354a12=['bun','log','vite\x20build\x20--watch\x20exited\x20with\x20code\x20','scripts','No\x20scripts\x20defined\x20in\x20package.json.','watch','vite','\x20\x20\x20\x20','join','push','package.json','utf-8','args','slice','map','inherit','read','node_modules','Available:\x20','(none)','No\x20package.json\x20found\x20in\x20current\x20directory.','1301118CVJIUm','yarn','Script\x20\x22','close','9oGOrzO','216616qZxKzB','318268tvGPTW','boolean','466390EzOmPv','entries','belowMinimum','padEnd','\x20run\x20preview\x20--watch\x20\x20\x20#\x20parallel\x20build\x20--watch\x20+\x20preview','1901004MqAKcB','yarn.lock','2887088CbPhpB','pnpm-lock.yaml','323599Hdrnqr','script','error','\x20exited\x20with\x20code\x20','\x20run\x20build','keys','9uzLiVf','cwd','npm','\x20run\x20start','Enable\x20watch\x20mode\x20for\x20preview','build','--watch','length','\x20\x20EXAMPLES','\x20run\x20<script>\x0a','validation','dev','has','start','Script\x20name\x20defined\x20in\x20package.json','.bin','needsUpgrade','\x0a\x20\x20Available\x20scripts:\x0a','run','max','preview','\x20\x20AVAILABLE\x20SCRIPTS\x20\x20(current\x20project)','pnpm'];a112_0x1cb6=function(){return _0x354a12;};return a112_0x1cb6();}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([a112_0x4fc2f9(0x173),a112_0x4fc2f9(0x171)]);function readPackageScripts(_0x2de800){const _0x179250=a112_0x4fc2f9,_0x1fcebd=resolve(_0x2de800,_0x179250(0x187));if(!existsSync(_0x1fcebd))return null;try{const _0x3a756c=JSON['parse'](readFileSync(_0x1fcebd,_0x179250(0x188)));return _0x3a756c[_0x179250(0x180)]??{};}catch{return null;}}function detectPackageManager(_0xa1b480){const _0x5c5c5e=a112_0x4fc2f9;if(existsSync(resolve(_0xa1b480,'bun.lockb'))||existsSync(resolve(_0xa1b480,'bun.lock')))return _0x5c5c5e(0x17d);if(existsSync(resolve(_0xa1b480,_0x5c5c5e(0x15f))))return _0x5c5c5e(0x17c);if(existsSync(resolve(_0xa1b480,_0x5c5c5e(0x15d))))return _0x5c5c5e(0x193);return _0x5c5c5e(0x168);}async function versionCheck(_0x584af2){const _0x44419a=a112_0x4fc2f9,_0x4872a2=await checkCliVersion();(_0x4872a2['needsUpgrade']||_0x4872a2[_0x44419a(0x159)])&&(printCliUpgradeWarning(_0x4872a2),assertCliVersionSupported(_0x4872a2));const _0x968cc7=await checkSdkVersion(_0x584af2);if(_0x968cc7[_0x44419a(0x176)])printSdkUpgradeWarning(_0x968cc7);}function spawnScript(_0x268a92,_0x5ba780,_0x25dd36,_0x1dcd12){return new Promise((_0x367813,_0x33c56d)=>{const _0x4df1b5=a112_0x4b13,_0x1cb675=[_0x4df1b5(0x178),_0x5ba780,..._0x25dd36],_0x4f848b=spawn(_0x268a92,_0x1cb675,{'cwd':_0x1dcd12,'stdio':_0x4df1b5(0x18c),'shell':!![],'env':{...process.env,'PATH':''+join(_0x1dcd12,_0x4df1b5(0x18e),_0x4df1b5(0x175))+delimiter+process.env.PATH}});_0x4f848b['on'](_0x4df1b5(0x152),_0x54348f=>{const _0x36add1=_0x4df1b5;if(_0x54348f===0x0||_0x54348f===null)_0x367813();else _0x33c56d(new Error(_0x268a92+'\x20run\x20'+_0x5ba780+_0x36add1(0x163)+_0x54348f));}),_0x4f848b['on']('error',_0x33c56d);});}function spawnViteBuildWatch(_0xc17604){return new Promise((_0x36f48e,_0x546e82)=>{const _0x593414=a112_0x4b13,_0x58a1bc=spawn(_0x593414(0x183),[_0x593414(0x16b),_0x593414(0x16c)],{'cwd':_0xc17604,'stdio':'inherit','shell':!![],'env':{...process.env,'PATH':''+join(_0xc17604,_0x593414(0x18e),_0x593414(0x175))+delimiter+process.env.PATH}});_0x58a1bc['on'](_0x593414(0x152),_0x3f01fa=>{const _0xf2ff46=_0x593414;if(_0x3f01fa===0x0||_0x3f01fa===null)_0x36f48e();else _0x546e82(new Error(_0xf2ff46(0x17f)+_0x3f01fa));}),_0x58a1bc['on'](_0x593414(0x162),_0x546e82);});}function spawnVitePreview(_0x2e0bc9){return new Promise((_0x3870ab,_0x360530)=>{const _0xa8176c=a112_0x4b13,_0x22d2e9=spawn('vite',[_0xa8176c(0x17a)],{'cwd':_0x2e0bc9,'stdio':_0xa8176c(0x18c),'shell':!![],'env':{...process.env,'PATH':''+join(_0x2e0bc9,'node_modules','.bin')+delimiter+process.env.PATH}});_0x22d2e9['on']('close',_0x42e5e2=>{if(_0x42e5e2===0x0||_0x42e5e2===null)_0x3870ab();else _0x360530(new Error('vite\x20preview\x20exited\x20with\x20code\x20'+_0x42e5e2));}),_0x22d2e9['on'](_0xa8176c(0x162),_0x360530);});}function a112_0x4b13(_0x345254,_0x4d931b){_0x345254=_0x345254-0x152;const _0x1cb62c=a112_0x1cb6();let _0x4b1377=_0x1cb62c[_0x345254];return _0x4b1377;}const runFlags=[{'name':a112_0x4fc2f9(0x182),'type':a112_0x4fc2f9(0x156),'description':a112_0x4fc2f9(0x16a),'default':![]}];export const runDefinition={'service':a112_0x4fc2f9(0x178),'command':a112_0x4fc2f9(0x178),'description':'Run\x20a\x20package.json\x20script','risk':a112_0x4fc2f9(0x18d),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a112_0x4fc2f9(0x161),'description':a112_0x4fc2f9(0x174),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x1ead4b=a112_0x4fc2f9,_0x37b2a9=readPackageScripts(process[_0x1ead4b(0x167)]()),_0xf8ef8c=[];if(_0x37b2a9&&Object[_0x1ead4b(0x165)](_0x37b2a9)[_0x1ead4b(0x16d)]>0x0){const _0x3865d6=Object['keys'](_0x37b2a9),_0x31e7da=Math[_0x1ead4b(0x179)](..._0x3865d6[_0x1ead4b(0x18b)](_0x5adb24=>_0x5adb24[_0x1ead4b(0x16d)]));_0xf8ef8c[_0x1ead4b(0x186)](_0x1ead4b(0x17b));for(const [_0x316bef,_0x5cda60]of Object[_0x1ead4b(0x158)](_0x37b2a9)){_0xf8ef8c['push'](_0x1ead4b(0x184)+CLI_BIN_NAME+'\x20run\x20'+_0x316bef[_0x1ead4b(0x15a)](_0x31e7da+0x2)+'#\x20'+_0x5cda60);}}else _0xf8ef8c['push'](_0x1ead4b(0x16e)),_0xf8ef8c['push'](_0x1ead4b(0x184)+CLI_BIN_NAME+_0x1ead4b(0x169)),_0xf8ef8c[_0x1ead4b(0x186)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x1ead4b(0x164)),_0xf8ef8c[_0x1ead4b(0x186)](_0x1ead4b(0x184)+CLI_BIN_NAME+'\x20run\x20preview'),_0xf8ef8c[_0x1ead4b(0x186)](_0x1ead4b(0x184)+CLI_BIN_NAME+_0x1ead4b(0x15b));return _0xf8ef8c[_0x1ead4b(0x185)]('\x0a');},async 'execute'(_0x2936a1){const _0x2180ab=a112_0x4fc2f9,_0x2da3fd=process['cwd'](),_0x187371=_0x2936a1[_0x2180ab(0x189)][0x0],_0x4fafd6=_0x2936a1[_0x2180ab(0x189)][_0x2180ab(0x18a)](0x1),_0x2b7143=readPackageScripts(_0x2da3fd);if(!_0x2b7143)throw CliErrors[_0x2180ab(0x170)](_0x2180ab(0x191));if(!_0x187371){const _0x162605=Object['keys'](_0x2b7143);if(_0x162605[_0x2180ab(0x16d)]===0x0)console[_0x2180ab(0x17e)](_0x2180ab(0x181));else{console[_0x2180ab(0x17e)](_0x2180ab(0x177));const _0x4c002d=Math[_0x2180ab(0x179)](..._0x162605[_0x2180ab(0x18b)](_0xe17565=>_0xe17565['length']));for(const [_0x450374,_0x20e037]of Object[_0x2180ab(0x158)](_0x2b7143)){console[_0x2180ab(0x17e)](_0x2180ab(0x184)+_0x450374[_0x2180ab(0x15a)](_0x4c002d+0x2)+_0x20e037);}console['log']('\x0a\x20\x20Usage:\x20'+CLI_BIN_NAME+_0x2180ab(0x16f));}return{'ok':!![]};}if(!_0x2b7143[_0x187371])throw CliErrors[_0x2180ab(0x170)](_0x2180ab(0x194)+_0x187371+'\x22\x20not\x20found\x20in\x20package.json.',_0x2180ab(0x18f)+(Object[_0x2180ab(0x165)](_0x2b7143)[_0x2180ab(0x185)](',\x20')||_0x2180ab(0x190)));const _0x4972eb=detectPackageManager(_0x2da3fd);VERSION_CHECK_SCRIPTS[_0x2180ab(0x172)](_0x187371)&&await versionCheck(_0x2da3fd);if(_0x187371===_0x2180ab(0x17a)&&_0x2936a1['bool'](_0x2180ab(0x182)))return await Promise['all']([spawnViteBuildWatch(_0x2da3fd),spawnVitePreview(_0x2da3fd)]),{'ok':!![]};return await spawnScript(_0x4972eb,_0x187371,_0x4fafd6,_0x2da3fd),{'ok':!![]};}};
|
package/lib/commands/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a113_0x20d5d5=a113_0x1658;(function(_0x505078,_0x30a092){const _0x61392e=a113_0x1658,_0x10e102=_0x505078();while(!![]){try{const _0x3096f0=-parseInt(_0x61392e(0x1a6))/0x1+-parseInt(_0x61392e(0x1ae))/0x2*(-parseInt(_0x61392e(0x1b0))/0x3)+parseInt(_0x61392e(0x1aa))/0x4+parseInt(_0x61392e(0x1a9))/0x5*(parseInt(_0x61392e(0x1ab))/0x6)+-parseInt(_0x61392e(0x1ad))/0x7+-parseInt(_0x61392e(0x1a5))/0x8+parseInt(_0x61392e(0x1b2))/0x9*(parseInt(_0x61392e(0x1af))/0xa);if(_0x3096f0===_0x30a092)break;else _0x10e102['push'](_0x10e102['shift']());}catch(_0x25f4b3){_0x10e102['push'](_0x10e102['shift']());}}}(a113_0x2582,0xbb4f8));import{buildSchemaPayload}from'../framework/schema-export.js';function a113_0x1658(_0x1e4a80,_0x4a382d){_0x1e4a80=_0x1e4a80-0x1a4;const _0x258279=a113_0x2582();let _0x1658c3=_0x258279[_0x1e4a80];return _0x1658c3;}function a113_0x2582(){const _0x444da1=['64224ZCQZHG','schema','2996664sjaWax','1375521tYbvmD','Export\x20machine-readable\x20command\x20schema\x20(JSON)','json','1939105flwoNp','165516RqMjwO','6kwMVFf','export','6374473rOlBdM','6fYsjXh','3960sLHYxm','172911DomvEj','read'];a113_0x2582=function(){return _0x444da1;};return a113_0x2582();}async function execute(_0x177ba6){const _0x42c55d=await buildSchemaPayload();return{'ok':!![],'data':_0x42c55d};}export const schemaDefinition={'service':a113_0x20d5d5(0x1a4),'command':a113_0x20d5d5(0x1ac),'description':a113_0x20d5d5(0x1a7),'risk':a113_0x20d5d5(0x1b1),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a113_0x20d5d5(0x1a8),'flags':[],'execute':execute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a114_0x311d5e=a114_0x14c7;(function(_0xb6806e,_0x3a0250){const _0x59fc3d=a114_0x14c7,_0x266b05=_0xb6806e();while(!![]){try{const _0x4d0db0=parseInt(_0x59fc3d(0xe3))/0x1*(parseInt(_0x59fc3d(0xdc))/0x2)+-parseInt(_0x59fc3d(0xe9))/0x3*(-parseInt(_0x59fc3d(0xdf))/0x4)+-parseInt(_0x59fc3d(0xd6))/0x5+-parseInt(_0x59fc3d(0xe0))/0x6+-parseInt(_0x59fc3d(0xe2))/0x7+-parseInt(_0x59fc3d(0xe8))/0x8+-parseInt(_0x59fc3d(0xda))/0x9*(-parseInt(_0x59fc3d(0xdb))/0xa);if(_0x4d0db0===_0x3a0250)break;else _0x266b05['push'](_0x266b05['shift']());}catch(_0x423f88){_0x266b05['push'](_0x266b05['shift']());}}}(a114_0x369b,0xe087b));function a114_0x369b(){const _0x2c3424=['993410WqSeGH','371038OwsrWD','Installing\x20official\x20skill\x20via\x20npx\x20(','Install\x20developer\x20skill\x20package','8szFrqL','2611548xUwizC','write','12629897ZsNOpA','9wTbcwd','Check\x20network\x20connectivity\x20and\x20try\x20again.','skipped','log','skill-install','12723776ESBOtl','1212297mAYxAs','apiError','Skipped\x20npx\x20(RABETBASE_SKIP_NPX_SKILLS=1);\x20assuming\x20skill\x20is\x20already\x20present.','inherit','info','npx\x20skills\x20add\x20failed:\x20','5032230MWlRGp','setLogPath','error','cwd','297gIFGRC'];a114_0x369b=function(){return _0x2c3424;};return a114_0x369b();}import{CliErrors}from'../../errors.js';function a114_0x14c7(_0x23148b,_0x4ae8c0){_0x23148b=_0x23148b-0xd2;const _0x369b3f=a114_0x369b();let _0x14c719=_0x369b3f[_0x23148b];return _0x14c719;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{logger}from'../../utils/logger.js';import{NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE}from'../../skills/npx-skills-add.js';export const skillDefinitions=[{'service':'skill','command':'install','description':a114_0x311d5e(0xde),'risk':a114_0x311d5e(0xe1),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],async 'execute'(_0x1b2d13){const _0x517f2d=a114_0x311d5e;logger[_0x517f2d(0xd7)](process[_0x517f2d(0xd9)]()),logger[_0x517f2d(0xd4)](_0x517f2d(0xe7),'执行安装技能包命令(委托给\x20npx\x20skills\x20add\x20-g\x20-y)');const {runNpxSkillsAddGlobal:_0x472fba}=await import('../../skills/npx-skills-add.js'),_0x5405a9=_0x1b2d13['nonInteractive']?'pipe':_0x517f2d(0xd3);console[_0x517f2d(0xe6)](_0x517f2d(0xdd)+NPX_SKILLS_ADD_GLOBAL_COMMAND_LINE+')...');const _0xfde306=_0x472fba(process[_0x517f2d(0xd9)](),'lovrabet/rabetbase',{'stdio':_0x5405a9});if(_0xfde306[_0x517f2d(0xe5)])console['log'](_0x517f2d(0xd2));else{if(_0xfde306['ok'])console[_0x517f2d(0xe6)](CLI_BIN_NAME+'\x20skill\x20installed');else throw CliErrors[_0x517f2d(0xea)](_0x517f2d(0xd5)+(_0xfde306[_0x517f2d(0xd8)]||'unknown'),_0x517f2d(0xe4));}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 a115_0x1c1e31=a115_0x29de;function a115_0x29de(_0x5df247,_0x587840){_0x5df247=_0x5df247-0x13c;const _0x32ed7d=a115_0x32ed();let _0x29de58=_0x32ed7d[_0x5df247];return _0x29de58;}(function(_0x379573,_0x34deed){const _0x13f316=a115_0x29de,_0x5096ec=_0x379573();while(!![]){try{const _0x25b064=-parseInt(_0x13f316(0x142))/0x1*(parseInt(_0x13f316(0x17a))/0x2)+-parseInt(_0x13f316(0x17f))/0x3*(parseInt(_0x13f316(0x152))/0x4)+-parseInt(_0x13f316(0x140))/0x5+-parseInt(_0x13f316(0x173))/0x6+parseInt(_0x13f316(0x178))/0x7+parseInt(_0x13f316(0x17e))/0x8*(parseInt(_0x13f316(0x164))/0x9)+parseInt(_0x13f316(0x14c))/0xa;if(_0x25b064===_0x34deed)break;else _0x5096ec['push'](_0x5096ec['shift']());}catch(_0x582e14){_0x5096ec['push'](_0x5096ec['shift']());}}}(a115_0x32ed,0x75d55));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';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(_0x1dbd6d){const _0x4f58cd=a115_0x29de;if(_0x1dbd6d===_0x4f58cd(0x165))return[_0x4f58cd(0x151),_0x4f58cd(0x15e),'</select>',''][_0x4f58cd(0x180)]('\x0a');return[_0x4f58cd(0x15d),''][_0x4f58cd(0x180)]('\x0a');}export const sqlCreate={'service':a115_0x1c1e31(0x160),'command':a115_0x1c1e31(0x149),'description':'Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','risk':a115_0x1c1e31(0x176),'flags':[{'name':a115_0x1c1e31(0x146),'type':a115_0x1c1e31(0x16c),'description':a115_0x1c1e31(0x17c)},{'name':'db-id','type':a115_0x1c1e31(0x163),'description':a115_0x1c1e31(0x14d)},{'name':a115_0x1c1e31(0x16f),'type':a115_0x1c1e31(0x16c),'enum':[a115_0x1c1e31(0x160),a115_0x1c1e31(0x165)],'description':a115_0x1c1e31(0x171)}],async 'validate'(_0x2038c6){const _0x31e78f=a115_0x1c1e31;if(!_0x2038c6[_0x31e78f(0x170)])return;if(!_0x2038c6[_0x31e78f(0x13d)]('name')[_0x31e78f(0x13f)]())throw CliErrors[_0x31e78f(0x15b)]('name',_0x31e78f(0x14e));const _0x3da4c1=resolveProvidedDbId(_0x2038c6);if(typeof _0x3da4c1!==_0x31e78f(0x163)||!Number[_0x31e78f(0x17b)](_0x3da4c1)||_0x3da4c1<=0x0)throw CliErrors[_0x31e78f(0x15b)](_0x31e78f(0x145),'--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');if(!_0x2038c6[_0x31e78f(0x13d)](_0x31e78f(0x16f))[_0x31e78f(0x13f)]())throw CliErrors[_0x31e78f(0x15b)](_0x31e78f(0x16f),_0x31e78f(0x168));},async 'dryRun'(_0x1550d9){const _0x21731b=a115_0x1c1e31,_0x27ae9d=loadSqlProjectConfig(_0x1550d9[_0x21731b(0x13e)]),{sqlName:_0x531610,dbId:_0x2e2ea8,dbName:_0x115eba,mode:_0x4ddf75}=await resolveSqlNewInputs(_0x1550d9),_0x4b9b44=buildSqlRelativePath(_0x21731b(0x144),_0x531610,_0x115eba,_0x4ddf75,_0x2e2ea8),_0x20e4a2=_0x27ae9d[_0x21731b(0x14b)]+'/'+_0x4b9b44;return{'method':'POST','url':_0x21731b(0x15c),'body':{'appCode':_0x1550d9[_0x21731b(0x13e)],'sqlName':_0x531610,'dbId':_0x2e2ea8,'mode':_0x4ddf75,'localPath':_0x20e4a2},'description':'Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20'+_0x27ae9d[_0x21731b(0x14b)]};},async 'execute'(_0x5190b4){const _0x3fab32=a115_0x1c1e31,_0x399516=loadSqlProjectConfig(_0x5190b4[_0x3fab32(0x13e)]),{sqlName:_0x5931f4,dbId:_0x15d21f,dbName:_0x25161a,mode:_0x2f192c}=await resolveSqlNewInputs(_0x5190b4),_0x604818=generateSqlTemplate(_0x2f192c),_0x3fb510=await createSqlQuery({'appCode':_0x5190b4[_0x3fab32(0x13e)],'sqlName':_0x5931f4,'dbId':_0x15d21f,'sqlContent':_0x604818}),_0x5467f0=ensureRemoteSqlContent(_0x3fb510),_0x42b377=_0x25161a||await getDbName(_0x5190b4[_0x3fab32(0x13e)],_0x15d21f)[_0x3fab32(0x169)](()=>undefined),_0x199358=buildSqlRelativePath(_0x3fb510[_0x3fab32(0x175)],_0x3fb510[_0x3fab32(0x179)],_0x42b377,_0x2f192c,_0x15d21f),_0x1332e6=_0x399516[_0x3fab32(0x14b)]+'/'+_0x199358,_0x5725eb=buildLocalSqlFileContent({'sqlCode':_0x3fb510[_0x3fab32(0x175)],'sqlName':_0x3fb510[_0x3fab32(0x179)],'dbId':_0x3fb510[_0x3fab32(0x177)]},_0x5467f0,{'dbName':_0x42b377,'mode':_0x2f192c,'syncedAt':new Date()[_0x3fab32(0x14f)](),'description':_0x3fb510['description']});if(await fileExists(_0x1332e6))throw CliErrors[_0x3fab32(0x157)](_0x3fab32(0x172)+_0x1332e6);await ensureParentDirectory(_0x1332e6),await writeFile(_0x1332e6,_0x5725eb,_0x3fab32(0x148));const _0x3b3a75=await readSqlLockFile(_0x399516[_0x3fab32(0x156)]),{lockData:_0x118b03,appLock:_0x2ac2e3}=ensureSqlLockScope(_0x3b3a75??createEmptySqlLock(),_0x399516[_0x3fab32(0x13e)],_0x399516['sqlRoot'],_0x3fab32(0x159));return _0x2ac2e3[_0x3fab32(0x153)][_0x3fb510[_0x3fab32(0x175)]]={...buildSqlLockEntry(_0x3fb510,_0x5467f0,computeSqlContentHash(_0x5725eb),{'dbName':_0x42b377}),'path':_0x199358,'mode':_0x2f192c},_0x2ac2e3[_0x3fab32(0x174)]=new Date()['toISOString'](),await writeSqlLockFile(_0x399516[_0x3fab32(0x156)],_0x118b03),{'ok':!![],'data':{'id':_0x3fb510['id'],'sqlCode':_0x3fb510[_0x3fab32(0x175)],'sqlName':_0x3fb510[_0x3fab32(0x179)],'dbId':_0x3fb510[_0x3fab32(0x177)],'path':_0x1332e6,'mode':_0x2f192c},'message':_0x3fab32(0x150)+_0x3fb510[_0x3fab32(0x175)]};}};async function resolveSqlNewInputs(_0xc85ec5){const _0x2e8865=await resolveSqlNameInput(_0xc85ec5),{dbId:_0x449ed2,dbName:_0x82fe12}=await resolveDbSelection(_0xc85ec5),_0xa781df=await resolveSqlModeInput(_0xc85ec5);return{'sqlName':_0x2e8865,'dbId':_0x449ed2,'dbName':_0x82fe12,'mode':_0xa781df};}async function resolveSqlNameInput(_0xecebe6){const _0x17fecb=a115_0x1c1e31,_0x16883a=_0xecebe6[_0x17fecb(0x13d)](_0x17fecb(0x146))[_0x17fecb(0x13f)]();if(_0x16883a)return _0x16883a;if(_0xecebe6[_0x17fecb(0x170)])throw CliErrors[_0x17fecb(0x15b)]('name','--name\x20is\x20required\x20in\x20non-interactive\x20mode.');return(await input({'message':_0x17fecb(0x15a),'validate':_0x52ab7a=>_0x52ab7a['trim']()?!![]:_0x17fecb(0x158)}))[_0x17fecb(0x13f)]();}async function resolveDbSelection(_0x1eda87){const _0x4827d3=a115_0x1c1e31,_0x4d76d5=resolveProvidedDbId(_0x1eda87);if(typeof _0x4d76d5==='number'&&Number['isFinite'](_0x4d76d5)&&_0x4d76d5>0x0)return{'dbId':_0x4d76d5,'dbName':await getDbName(_0x1eda87[_0x4827d3(0x13e)],_0x4d76d5)[_0x4827d3(0x169)](()=>undefined)};if(_0x1eda87[_0x4827d3(0x170)])throw CliErrors['flagMissing'](_0x4827d3(0x145),_0x4827d3(0x16e));const _0x39a2fa=await listDatabases(_0x1eda87['appCode'])[_0x4827d3(0x169)](()=>[]);if(_0x39a2fa[_0x4827d3(0x161)]===0x1)return{'dbId':_0x39a2fa[0x0][_0x4827d3(0x177)],'dbName':_0x39a2fa[0x0]['dbName']};if(_0x39a2fa[_0x4827d3(0x161)]>0x1){const _0x2af899=await select({'message':'请选择目标数据库:','choices':[..._0x39a2fa[_0x4827d3(0x166)](_0x4ffbad=>({'name':_0x4ffbad[_0x4827d3(0x167)]+'\x20('+_0x4ffbad['dbId']+')','value':serializeDbSelection(_0x4ffbad)})),{'name':_0x4827d3(0x14a),'value':_0x4827d3(0x16d)}]});if(_0x2af899!=='__manual__')return deserializeDbSelection(_0x2af899);}const _0x1d33d5=await input({'message':_0x4827d3(0x154),'validate':_0x203619=>{const _0x3d748f=_0x4827d3,_0x3eb6d7=_0x203619[_0x3d748f(0x13f)]();if(!_0x3eb6d7)return _0x3d748f(0x162);const _0x5d64dc=Number(_0x3eb6d7);if(!Number[_0x3d748f(0x147)](_0x5d64dc)||_0x5d64dc<=0x0)return _0x3d748f(0x16b);return!![];}});return{'dbId':Number(_0x1d33d5['trim']())};}async function resolveSqlModeInput(_0x141aab){const _0x2d883e=a115_0x1c1e31,_0x5f51f9=_0x141aab[_0x2d883e(0x13d)](_0x2d883e(0x16f))['trim']();if(_0x5f51f9===_0x2d883e(0x160)||_0x5f51f9===_0x2d883e(0x165))return _0x5f51f9;if(_0x141aab[_0x2d883e(0x170)])throw CliErrors[_0x2d883e(0x15b)](_0x2d883e(0x16f),_0x2d883e(0x168));return await select({'message':_0x2d883e(0x16a),'choices':[{'name':'普通\x20SQL(sql)','value':_0x2d883e(0x160),'description':_0x2d883e(0x15f)},{'name':_0x2d883e(0x143),'value':'mybatisXml','description':_0x2d883e(0x17d)}]});}function serializeDbSelection(_0x2158f1){const _0x390d44=a115_0x1c1e31;return JSON[_0x390d44(0x155)]({'dbId':_0x2158f1['dbId'],'dbName':_0x2158f1[_0x390d44(0x167)]});}function deserializeDbSelection(_0x54ff77){const _0x4c9184=a115_0x1c1e31;try{const _0x27e02b=JSON['parse'](_0x54ff77);if(typeof _0x27e02b[_0x4c9184(0x177)]===_0x4c9184(0x163)&&Number['isFinite'](_0x27e02b[_0x4c9184(0x177)]))return{'dbId':_0x27e02b[_0x4c9184(0x177)],'dbName':_0x27e02b[_0x4c9184(0x167)]};}catch{}throw CliErrors[_0x4c9184(0x157)](_0x4c9184(0x141)+_0x54ff77);}function a115_0x32ed(){const _0x34d321=['<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','906064LhxEYg','sqls','请输入目标数据库\x20dbId:','stringify','lockFilePath','validation','SQL\x20名称不能为空','new','请输入\x20SQL\x20名称:','flagMissing','/smartapi/custom/saveUserCustomSql','SELECT\x201\x20AS\x20id;','\x20\x20SELECT\x201\x20AS\x20id','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','sql','length','dbId\x20不能为空','number','1170486cfupXE','mybatisXml','map','dbName','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','catch','请选择本地\x20SQL\x20模式:','dbId\x20必须为正整数','string','__manual__','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','mode','nonInteractive','Local\x20SQL\x20file\x20mode','File\x20already\x20exists:\x20','5744706QBnELK','lastSync','sqlCode','high-risk-write','dbId','5574268MVUsQS','sqlName','127004acPMIp','isFinite','SQL\x20query\x20display\x20name','适合带动态标签的\x20MyBatis\x20XML\x20SQL','8qXyRKr','9xfaAmn','join','flag','str','appCode','trim','2228365bqCvFi','Invalid\x20database\x20selection\x20payload:\x20','6YvJgxT','MyBatis\x20XML(mybatisXml)','<server-generated-sqlCode>','db-id','name','isInteger','utf8','create','✎\x20手动输入\x20dbId','sqlRootDir','20199510jwIHel','Target\x20database\x20ID','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','toISOString','Created\x20SQL\x20query\x20'];a115_0x32ed=function(){return _0x34d321;};return a115_0x32ed();}function resolveProvidedDbId(_0x460ff1){const _0x29fb1a=a115_0x1c1e31,_0x3a9e2a=_0x460ff1[_0x29fb1a(0x13c)]('db-id');if(typeof _0x3a9e2a==='number'&&Number['isFinite'](_0x3a9e2a))return _0x3a9e2a;return undefined;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a116_0x2a3784=a116_0x5c75;function a116_0x5923(){const _0x30fab3=['353948qIANwY','2645514JXrarO','1233410eVhmvE','36IuhSIt','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','64BgdgKE','\x20(local\x20file\x20moved\x20to\x20trash)','SQL\x20lock\x20file\x20not\x20found.','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20','validation','sqls','high-risk-write','sqlRoot','3047gJbezr','projectRoot','1077546TaAOaQ','39180KzRuWG','delete','Deleted\x20','5BcXRuW','toISOString','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','trashDir','remoteId','length','filter','fromEntries','20983BcLpcD','Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','sqlcode','appCode','str','POST','sqlRootDir','2hYLIjv','lockFilePath','2779036Cvfixs'];a116_0x5923=function(){return _0x30fab3;};return a116_0x5923();}(function(_0x462281,_0x42af62){const _0x309e93=a116_0x5c75,_0x22433a=_0x462281();while(!![]){try{const _0xd8594e=-parseInt(_0x309e93(0xa3))/0x1*(-parseInt(_0x309e93(0xaa))/0x2)+-parseInt(_0x309e93(0x97))/0x3+-parseInt(_0x309e93(0xac))/0x4*(parseInt(_0x309e93(0x9b))/0x5)+parseInt(_0x309e93(0xae))/0x6+parseInt(_0x309e93(0xad))/0x7*(-parseInt(_0x309e93(0xb2))/0x8)+parseInt(_0x309e93(0xb0))/0x9*(parseInt(_0x309e93(0xaf))/0xa)+-parseInt(_0x309e93(0x95))/0xb*(-parseInt(_0x309e93(0x98))/0xc);if(_0xd8594e===_0x42af62)break;else _0x22433a['push'](_0x22433a['shift']());}catch(_0x565360){_0x22433a['push'](_0x22433a['shift']());}}}(a116_0x5923,0x61f42));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';function a116_0x5c75(_0x85bc8e,_0x27933e){_0x85bc8e=_0x85bc8e-0x8e;const _0x5923a1=a116_0x5923();let _0x5c75fc=_0x5923a1[_0x85bc8e];return _0x5c75fc;}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';export const sqlDelete={'service':'sql','command':a116_0x2a3784(0x99),'description':a116_0x2a3784(0xa4),'risk':a116_0x2a3784(0x93),'flags':[SQLCODE_FLAG],async 'validate'(_0x592ff4){const _0x2807c4=a116_0x2a3784,_0x320340=loadSqlProjectConfig(_0x592ff4['appCode']),_0x2c73dd=await readSqlLockFile(_0x320340[_0x2807c4(0xab)]);if(!_0x2c73dd)throw CliErrors['validation'](_0x2807c4(0x9d));},async 'dryRun'(_0x1e5808){const _0x41ba25=a116_0x2a3784,_0x488cdf=loadSqlProjectConfig(_0x1e5808['appCode']),_0x3376ff=await readSqlLockFile(_0x488cdf[_0x41ba25(0xab)]);if(!_0x3376ff)throw CliErrors['validation'](_0x41ba25(0x9d));const {appLock:_0x70c346}=ensureSqlLockScope(_0x3376ff,_0x1e5808[_0x41ba25(0xa6)],_0x488cdf['sqlRoot'],'delete'),_0x4ef380=_0x1e5808[_0x41ba25(0xa7)](_0x41ba25(0xa5)),_0x2722d0=_0x70c346[_0x41ba25(0x92)][_0x4ef380];if(!_0x2722d0)throw CliErrors[_0x41ba25(0x91)]('No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22'+_0x4ef380+'\x22.');return{'method':_0x41ba25(0xa8),'url':'/smartapi/custom/deleteUserCustomSql','body':{'sqlCode':_0x4ef380,'id':_0x2722d0[_0x41ba25(0x9f)],'localPath':resolveLocalSqlFilePath(_0x488cdf,_0x4ef380,_0x2722d0)},'description':'Would\x20delete\x20SQL\x20'+_0x4ef380+_0x41ba25(0x90)+_0x488cdf[_0x41ba25(0x9e)]};},async 'execute'(_0x589121){const _0x5739dc=a116_0x2a3784,_0x755c22=loadSqlProjectConfig(_0x589121[_0x5739dc(0xa6)]),_0x5469a8=await readSqlLockFile(_0x755c22[_0x5739dc(0xab)]);if(!_0x5469a8)throw CliErrors['validation'](_0x5739dc(0x8f));const {lockData:_0x6f2f9,appLock:_0x1d61e8}=ensureSqlLockScope(_0x5469a8,_0x589121[_0x5739dc(0xa6)],_0x755c22[_0x5739dc(0x94)],_0x5739dc(0x99)),_0x49f3a8=_0x589121['str']('sqlcode'),_0x41c20d=_0x1d61e8[_0x5739dc(0x92)][_0x49f3a8];if(!_0x41c20d)throw CliErrors[_0x5739dc(0x91)](_0x5739dc(0xb1)+_0x49f3a8+'\x22.');await deleteSqlQuery({'id':_0x41c20d[_0x5739dc(0x9f)],'sqlCode':_0x49f3a8}),_0x1d61e8['sqls']=Object[_0x5739dc(0xa2)](Object['entries'](_0x1d61e8[_0x5739dc(0x92)])[_0x5739dc(0xa1)](([_0xb08009])=>_0xb08009!==_0x49f3a8)),_0x1d61e8['lastSync']=new Date()[_0x5739dc(0x9c)](),await writeSqlLockFile(_0x755c22['lockFilePath'],_0x6f2f9);const _0x4980ca=resolveLocalSqlFilePath(_0x755c22,_0x49f3a8,_0x41c20d);let _0x239b26;await fileExists(_0x4980ca)&&(_0x239b26=await moveToTrash(_0x755c22[_0x5739dc(0x96)],_0x755c22[_0x5739dc(0x9e)],_0x4980ca),await cleanupEmptyDirectories(dirname(_0x4980ca),_0x755c22[_0x5739dc(0xa9)]));const _0x429659={'deleted':_0x49f3a8,'remoteId':_0x41c20d['remoteId']};if(_0x239b26)_0x429659['trashedTo']=_0x239b26;return{'ok':!![],'data':_0x429659,'message':_0x5739dc(0x9a)+_0x49f3a8+(_0x239b26?_0x5739dc(0x8e):'')};}};async function moveToTrash(_0xab95c5,_0x21f589,_0x2d125d){const _0x50a52f=a116_0x2a3784,_0x1eaaaa=new Date()[_0x50a52f(0x9c)]()['replace'](/[:.]/g,'-'),_0x482b34=relative(_0xab95c5,_0x2d125d),_0x40d2a6=join(_0x21f589,_0x1eaaaa,_0x482b34);return await mkdir(dirname(_0x40d2a6),{'recursive':!![]}),await rename(_0x2d125d,_0x40d2a6),_0x40d2a6;}async function cleanupEmptyDirectories(_0x142651,_0x30bd51){const _0x4353cf=a116_0x2a3784;let _0x428597=resolve(_0x142651);const _0x93d557=resolve(_0x30bd51);while(_0x428597['startsWith'](''+_0x93d557+sep)||_0x428597===_0x93d557){if(_0x428597===_0x93d557)return;try{const _0x5ec1b5=await readdir(_0x428597);if(_0x5ec1b5[_0x4353cf(0xa0)]>0x0)return;await rmdir(_0x428597);}catch{return;}_0x428597=dirname(_0x428597);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a117_0x3e63(_0x42cd39,_0x5ea092){_0x42cd39=_0x42cd39-0xe8;const _0x11e907=a117_0x11e9();let _0x3e63f1=_0x11e907[_0x42cd39];return _0x3e63f1;}function a117_0x11e9(){const _0x36d56d=['dbId','7qeVNsQ','sqlCode','141111VBgycj','sql','22bahBCx','boolean','sqlContent','sqlName','31140660QOdDkc','9558776igUZna','verbose','read','1747428mXfZEL','description','10338435WuUglJ','appCode','Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','detail','sqlcode','4413780pBlWbE','78517NApPoN','bool','Return\x20full\x20raw\x20SQL\x20query\x20object','4hpAFmj'];a117_0x11e9=function(){return _0x36d56d;};return a117_0x11e9();}const a117_0x50a085=a117_0x3e63;(function(_0x32615c,_0x1e8576){const _0x2c8aa7=a117_0x3e63,_0xe13893=_0x32615c();while(!![]){try{const _0x25ea3c=-parseInt(_0x2c8aa7(0xfb))/0x1*(-parseInt(_0x2c8aa7(0xeb))/0x2)+parseInt(_0x2c8aa7(0xe9))/0x3*(-parseInt(_0x2c8aa7(0xfe))/0x4)+parseInt(_0x2c8aa7(0xfa))/0x5+-parseInt(_0x2c8aa7(0xf3))/0x6+parseInt(_0x2c8aa7(0x100))/0x7*(parseInt(_0x2c8aa7(0xf0))/0x8)+parseInt(_0x2c8aa7(0xf5))/0x9+-parseInt(_0x2c8aa7(0xef))/0xa;if(_0x25ea3c===_0x1e8576)break;else _0xe13893['push'](_0xe13893['shift']());}catch(_0x30aa35){_0xe13893['push'](_0xe13893['shift']());}}}(a117_0x11e9,0x9bae0));import{getSqlQueryInfo}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDetail={'service':a117_0x50a085(0xea),'command':a117_0x50a085(0xf8),'description':a117_0x50a085(0xf7),'risk':a117_0x50a085(0xf2),'flags':[SQLCODE_FLAG,{'name':a117_0x50a085(0xf1),'type':a117_0x50a085(0xec),'description':a117_0x50a085(0xfd)}],async 'execute'(_0x5e98c0){const _0x3d4b36=a117_0x50a085,_0xd5984d=await getSqlQueryInfo(_0x5e98c0['appCode'],_0x5e98c0['str'](_0x3d4b36(0xf9))),_0x51600e=_0x5e98c0[_0x3d4b36(0xfc)](_0x3d4b36(0xf1));if(_0x51600e)return{'ok':!![],'data':_0xd5984d};const _0x5c29b0=_0xd5984d[_0x3d4b36(0xff)]?await getDbName(_0x5e98c0[_0x3d4b36(0xf6)],_0xd5984d['dbId']):undefined;return{'ok':!![],'data':{'sqlCode':_0xd5984d[_0x3d4b36(0xe8)],'sqlName':_0xd5984d[_0x3d4b36(0xee)],'db':_0x5c29b0?_0x5c29b0+'\x20('+_0xd5984d[_0x3d4b36(0xff)]+')':_0xd5984d[_0x3d4b36(0xff)]??'','description':_0xd5984d[_0x3d4b36(0xf4)]??'','sqlContent':_0xd5984d[_0x3d4b36(0xed)]??''}};}};
|
package/lib/commands/sql/exec.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a118_0x2448d4=a118_0x42d4;(function(_0x20ad16,_0x5748fe){const _0x19bc42=a118_0x42d4,_0x7bc484=_0x20ad16();while(!![]){try{const _0x1190ff=parseInt(_0x19bc42(0x1e0))/0x1+-parseInt(_0x19bc42(0x1d0))/0x2+-parseInt(_0x19bc42(0x1d9))/0x3+-parseInt(_0x19bc42(0x1d3))/0x4+parseInt(_0x19bc42(0x1de))/0x5*(parseInt(_0x19bc42(0x1d6))/0x6)+-parseInt(_0x19bc42(0x1db))/0x7+parseInt(_0x19bc42(0x1d1))/0x8;if(_0x1190ff===_0x5748fe)break;else _0x7bc484['push'](_0x7bc484['shift']());}catch(_0x32a8d2){_0x7bc484['push'](_0x7bc484['shift']());}}}(a118_0x2804,0xf3207));import{executeSql}from'../../core/api-client.js';function a118_0x42d4(_0x32835b,_0x418afa){_0x32835b=_0x32835b-0x1d0;const _0x280405=a118_0x2804();let _0x42d456=_0x280405[_0x32835b];return _0x42d456;}import{SQLCODE_FLAG}from'../../commands/common/flags.js';function a118_0x2804(){const _0x6f017f=['764497trJlxW','SQL\x20parameters\x20as\x20JSON\x20string\x20(e.g.\x20\x27{\x22key\x22:\x22value\x22}\x27)','now','read','execSuccess','appCode','2826062edKpJz','23272592ZhEGrA','Execute\x20a\x20custom\x20SQL\x20query\x20by\x20sqlCode','7156220XReEUm','exec','SQL\x20execution\x20failed','6fhcXmh','params','length','321060ktxjZz','\x20row(s)\x20in\x20','4530645xaFwtm','str','string','6393085BmkZLW','sql'];a118_0x2804=function(){return _0x6f017f;};return a118_0x2804();}import{parseJsonParams}from'../../utils/params.js';export const sqlExec={'service':a118_0x2448d4(0x1df),'command':a118_0x2448d4(0x1d4),'description':a118_0x2448d4(0x1d2),'risk':a118_0x2448d4(0x1e3),'flags':[SQLCODE_FLAG,{'name':a118_0x2448d4(0x1d7),'type':a118_0x2448d4(0x1dd),'description':a118_0x2448d4(0x1e1)}],async 'execute'(_0x19aa5e){const _0x5e206f=a118_0x2448d4,_0x3f168e=parseJsonParams(_0x19aa5e[_0x5e206f(0x1dc)](_0x5e206f(0x1d7))),_0x5606d9=Date[_0x5e206f(0x1e2)](),_0x2c1e58=await executeSql(_0x19aa5e[_0x5e206f(0x1e5)],_0x19aa5e[_0x5e206f(0x1dc)]('sqlcode'),_0x3f168e),_0x1d089e=Date[_0x5e206f(0x1e2)]()-_0x5606d9,_0x5749b9=_0x2c1e58?.['execResult']??_0x2c1e58,_0x4f1d85=_0x2c1e58?.[_0x5e206f(0x1e4)]??!![];if(!_0x4f1d85)return{'ok':![],'data':{'error':_0x2c1e58?.['execError']||_0x5e206f(0x1d5),'elapsed':_0x1d089e},'message':'SQL\x20execution\x20failed'};const _0x52e685=Array['isArray'](_0x5749b9)?_0x5749b9:[];return{'ok':!![],'data':{'rows':_0x52e685,'rowCount':_0x52e685[_0x5e206f(0x1d8)],'elapsed':_0x1d089e},'message':'Returned\x20'+_0x52e685[_0x5e206f(0x1d8)]+_0x5e206f(0x1da)+_0x1d089e+'ms'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a119_0x1c68(){const _0x3deb1b=['2958000VYAmrS','12xPahvU','2146659PstSgW','259577zHXiiB','1288692LcNUnW','3655805WaZXVY','2TxbakM','901481XFuuVH','1667288RhXVwY','200DiEvNm'];a119_0x1c68=function(){return _0x3deb1b;};return a119_0x1c68();}(function(_0x2afb92,_0x262a19){const _0x2cb71b=a119_0x10ad,_0xcb6208=_0x2afb92();while(!![]){try{const _0x331fe4=parseInt(_0x2cb71b(0x134))/0x1*(-parseInt(_0x2cb71b(0x137))/0x2)+-parseInt(_0x2cb71b(0x133))/0x3+-parseInt(_0x2cb71b(0x13b))/0x4+-parseInt(_0x2cb71b(0x136))/0x5+-parseInt(_0x2cb71b(0x13c))/0x6*(-parseInt(_0x2cb71b(0x138))/0x7)+-parseInt(_0x2cb71b(0x139))/0x8+parseInt(_0x2cb71b(0x135))/0x9*(parseInt(_0x2cb71b(0x13a))/0xa);if(_0x331fe4===_0x262a19)break;else _0xcb6208['push'](_0xcb6208['shift']());}catch(_0x1a74b4){_0xcb6208['push'](_0xcb6208['shift']());}}}(a119_0x1c68,0x720b4));import{sqlList}from'../../commands/sql/list.js';import{sqlDetail}from'../../commands/sql/detail.js';import{sqlValidate}from'../../commands/sql/validate.js';import{sqlSave}from'../../commands/sql/save.js';function a119_0x10ad(_0x578f16,_0x179025){_0x578f16=_0x578f16-0x133;const _0x1c689d=a119_0x1c68();let _0x10ad3a=_0x1c689d[_0x578f16];return _0x10ad3a;}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';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 a120_0x258f44=a120_0xf3e0;(function(_0x5bb6fc,_0x29570c){const _0x595555=a120_0xf3e0,_0x1ed94f=_0x5bb6fc();while(!![]){try{const _0x2c09d4=parseInt(_0x595555(0x18f))/0x1*(-parseInt(_0x595555(0x194))/0x2)+-parseInt(_0x595555(0x191))/0x3*(parseInt(_0x595555(0x196))/0x4)+-parseInt(_0x595555(0x1a6))/0x5+parseInt(_0x595555(0x195))/0x6+parseInt(_0x595555(0x1a5))/0x7+parseInt(_0x595555(0x1af))/0x8*(-parseInt(_0x595555(0x199))/0x9)+parseInt(_0x595555(0x190))/0xa*(parseInt(_0x595555(0x1a7))/0xb);if(_0x2c09d4===_0x29570c)break;else _0x1ed94f['push'](_0x1ed94f['shift']());}catch(_0x2e8605){_0x1ed94f['push'](_0x1ed94f['shift']());}}}(a120_0x50fc,0x9e1ca));function a120_0xf3e0(_0x1e3364,_0x536f68){_0x1e3364=_0x1e3364-0x18f;const _0x50fc2a=a120_0x50fc();let _0xf3e08a=_0x50fc2a[_0x1e3364];return _0xf3e08a;}import{listSqlQueries}from'../../core/api-client.js';import{getDbName}from'../../core/db-resolver.js';function a120_0x50fc(){const _0x2c20dc=['Page\x20size','tableData','name','\x20SQL\x20queries\x20(total:\x20','8GtppNc','5576vncuWt','40gqGSsm','222291ABBhEw','page','all','24CpKKef','1473450hvakSL','8nqhcji','totalCount','pagesize','6271101mOpxwo','appCode','str','num','bool','read','No\x20custom\x20SQL\x20queries\x20found.','List\x20custom\x20SQL\x20queries','dbId','sqlCode','list','sql','7679112bneamp','5007530brxcQy','3350699qESCZF','length','Filter\x20by\x20SQL\x20name','sqlcode'];a120_0x50fc=function(){return _0x2c20dc;};return a120_0x50fc();}import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';export const sqlList={'service':a120_0x258f44(0x1a4),'command':a120_0x258f44(0x1a3),'description':a120_0x258f44(0x1a0),'risk':a120_0x258f44(0x19e),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a120_0x258f44(0x1ad),'type':'string','description':a120_0x258f44(0x1a9)},{'name':a120_0x258f44(0x192),'type':'number','description':'Page\x20number','default':0x1},{'name':'pagesize','type':'number','description':a120_0x258f44(0x1ab)},{'name':'verbose','type':'boolean','description':'Return\x20full\x20SQL\x20query\x20objects\x20including\x20parameters\x20and\x20SQL\x20content'}],async 'execute'(_0x481cae){const _0x34b16d=a120_0x258f44,_0x707f2=await listSqlQueries(_0x481cae[_0x34b16d(0x19a)],{'sqlCode':_0x481cae[_0x34b16d(0x19b)](_0x34b16d(0x1aa))||undefined,'sqlName':_0x481cae[_0x34b16d(0x19b)](_0x34b16d(0x1ad))||undefined,'currentPage':_0x481cae[_0x34b16d(0x19c)](_0x34b16d(0x192)),'pageSize':_0x481cae[_0x34b16d(0x19c)](_0x34b16d(0x198),0x32)}),_0x4bcabc=_0x481cae[_0x34b16d(0x19d)]('verbose'),_0x20994c=_0x707f2[_0x34b16d(0x1ac)]??[],_0x46c4c4=_0x707f2['paging']?.[_0x34b16d(0x197)]??_0x20994c['length'];let _0x40040a;return _0x4bcabc?_0x40040a=_0x20994c:_0x40040a=await Promise[_0x34b16d(0x193)](_0x20994c['map'](async _0x4bd67f=>{const _0x56f1e2=_0x34b16d;let _0x19c676;try{_0x19c676=_0x4bd67f['dbId']?await getDbName(_0x481cae[_0x56f1e2(0x19a)],_0x4bd67f['dbId']):undefined;}catch{}return{'sqlCode':_0x4bd67f[_0x56f1e2(0x1a2)],'sqlName':_0x4bd67f['sqlName'],'description':_0x4bd67f['description']??'','db':_0x19c676?_0x19c676+'\x20('+_0x4bd67f[_0x56f1e2(0x1a1)]+')':_0x4bd67f[_0x56f1e2(0x1a1)]??''};})),{'ok':!![],'data':_0x40040a,'message':_0x20994c[_0x34b16d(0x1a8)]===0x0?_0x34b16d(0x19f):'Found\x20'+_0x20994c[_0x34b16d(0x1a8)]+_0x34b16d(0x1ae)+_0x46c4c4+').'};}};
|
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 a121_0x20b0fd=a121_0x4ec4;(function(_0x2174e0,_0x1e528b){const _0x1ff7cb=a121_0x4ec4,_0x1e3ca7=_0x2174e0();while(!![]){try{const _0x2582ad=parseInt(_0x1ff7cb(0x1cd))/0x1+parseInt(_0x1ff7cb(0x1db))/0x2+-parseInt(_0x1ff7cb(0x1f3))/0x3*(-parseInt(_0x1ff7cb(0x1ca))/0x4)+parseInt(_0x1ff7cb(0x1fb))/0x5*(parseInt(_0x1ff7cb(0x1f7))/0x6)+-parseInt(_0x1ff7cb(0x1da))/0x7*(-parseInt(_0x1ff7cb(0x1fd))/0x8)+parseInt(_0x1ff7cb(0x1f8))/0x9+-parseInt(_0x1ff7cb(0x1c2))/0xa*(parseInt(_0x1ff7cb(0x1c6))/0xb);if(_0x2582ad===_0x1e528b)break;else _0x1e3ca7['push'](_0x1e3ca7['shift']());}catch(_0x363698){_0x1e3ca7['push'](_0x1e3ca7['shift']());}}}(a121_0x3e57,0xd450b));import{readFile,rm,writeFile}from'node:fs/promises';import{join}from'node:path';function a121_0x3e57(){const _0x27aee4=['filter','3475674bpTVCU','6263163foEIsT','sqlRootDir','sql','15dwiqQs','path','72VdUAyX','catch','210YMHgNr','push','mybatisXml','Force\x20pull\x20will\x20overwrite\x20local\x20SQL\x20that\x20differs\x20from\x20remote.','2829981LTEbAq','message','No\x20remote\x20SQL\x20queries\x20matched.','bool','52lSvgyG','paging','Force\x20pull\x20cancelled.','530901tmIupn','skipped','string','lockFilePath','replace','boolean','sqlCode','toISOString','Pull\x20remote\x20SQL\x20queries\x20to\x20local\x20.rabetbase/sql/','/smartapi/custom/queryUserCustomSqlList\x20+\x20/smartapi/custom/getUserCustomSql','tableData','Pull\x20complete:\x20','local\x20differs\x20from\x20remote','984389QEpVKp','2616184SPikKn','would_pull','length','\x20skipped,\x20','totalCount','trimStart','utf8','test','conflict','dbId','appCode','sqlcode','pull','force','split','Would\x20pull\x20','lastSync','str','sqls','unchanged','description','sqlContent','local\x20differs\x20from\x20remote\x20(use\x20--force\x20to\x20overwrite)','write','169374RkEPSX','name','sqlName'];a121_0x3e57=function(){return _0x27aee4;};return a121_0x3e57();}import{getSqlQueryDetail,listSqlQueries}from'../../core/api-client.js';import{ensureParentDirectory,fileExists}from'../../core/bff/file-system.js';import{getDbName}from'../../core/db-resolver.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{computeSqlContentHash}from'../../core/sql-sync/hash.js';import{createEmptySqlLock,ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{buildLocalSqlFileContent,buildSqlLockEntry,cloneSqlLockData,confirmForceOverwrite,ensureRemoteSqlContent,stripLocalSqlMetadata}from'./shared.js';const PAGE_SIZE=0x64;async function fetchAllSqlQueries(_0x4e7cb3,_0x4b2c8e){const _0x11b6cc=a121_0x4ec4,_0x320754=[];let _0x3e727b=0x1;while(!![]){const _0x3aeddb=await listSqlQueries(_0x4e7cb3,{'currentPage':_0x3e727b,'pageSize':PAGE_SIZE,'sqlCode':_0x4b2c8e['sqlCode'],'sqlName':_0x4b2c8e[_0x11b6cc(0x1f5)]}),_0x78c43d=_0x3aeddb[_0x11b6cc(0x1d7)]??[];_0x320754[_0x11b6cc(0x1c3)](..._0x78c43d);if(_0x78c43d['length']===0x0)break;const _0x552de9=_0x3aeddb[_0x11b6cc(0x1cb)]?.[_0x11b6cc(0x1df)];if(_0x552de9!=null?_0x320754[_0x11b6cc(0x1dd)]>=_0x552de9:_0x78c43d[_0x11b6cc(0x1dd)]<PAGE_SIZE)break;_0x3e727b++;}return _0x320754;}async function ensureSqlContent(_0x1aad33){const _0x131959=a121_0x4ec4;if(_0x1aad33['sqlContent']!=null&&String(_0x1aad33[_0x131959(0x1f0)])[_0x131959(0x1dd)]>0x0)return _0x1aad33;return getSqlQueryDetail(_0x1aad33[_0x131959(0x1d3)]);}export const sqlPull={'service':a121_0x20b0fd(0x1fa),'command':a121_0x20b0fd(0x1e7),'description':a121_0x20b0fd(0x1d5),'risk':a121_0x20b0fd(0x1f2),'flags':[SQLCODE_FLAG_OPTIONAL,{'name':a121_0x20b0fd(0x1f4),'type':a121_0x20b0fd(0x1cf),'description':'Filter\x20by\x20SQL\x20display\x20name'},{'name':a121_0x20b0fd(0x1e8),'type':a121_0x20b0fd(0x1d2),'description':'Force\x20overwrite\x20local\x20unsynced\x20changes'}],async 'dryRun'(_0x489f9a){const _0x578e28=a121_0x20b0fd,_0x34c260=loadSqlProjectConfig(_0x489f9a[_0x578e28(0x1e5)]),_0x5e2c84=await readSqlLockFile(_0x34c260[_0x578e28(0x1d0)]),{appLock:_0xc1806f}=ensureSqlLockScope(_0x5e2c84??createEmptySqlLock(),_0x34c260[_0x578e28(0x1e5)],_0x34c260['sqlRoot'],'pull'),_0x20a640=await fetchAllSqlQueries(_0x489f9a[_0x578e28(0x1e5)],{'sqlCode':_0x489f9a['str']('sqlcode')||undefined,'sqlName':_0x489f9a[_0x578e28(0x1ec)](_0x578e28(0x1f4))||undefined}),_0x3fb4b7=[];for(const _0x293db8 of _0x20a640){const _0x423ac9=await ensureSqlContent(_0x293db8),_0x48d394=ensureRemoteSqlContent(_0x423ac9),_0x71a6cd=detectModeFromSql(_0x423ac9),_0x48ad5b=_0x423ac9[_0x578e28(0x1e4)]?await getDbName(_0x489f9a[_0x578e28(0x1e5)],Number(_0x423ac9[_0x578e28(0x1e4)]))[_0x578e28(0x1c1)](()=>undefined):undefined,_0x520adb=buildLocalSqlFileContent({'sqlCode':_0x423ac9['sqlCode'],'sqlName':_0x423ac9[_0x578e28(0x1f5)],'dbId':_0x423ac9[_0x578e28(0x1e4)]},_0x48d394,{'dbName':_0x48ad5b,'mode':_0x71a6cd,'syncedAt':new Date()[_0x578e28(0x1d4)](),'description':_0x423ac9[_0x578e28(0x1ef)]}),_0xa0a5ba=buildSqlLockEntry(_0x423ac9,_0x48d394,'',{'dbName':_0x48ad5b}),_0x22c828=resolveLocalSqlFilePath(_0x34c260,_0x423ac9[_0x578e28(0x1d3)],_0xa0a5ba);let _0x3ba48f=_0x578e28(0x1dc),_0x3459b9;if(await fileExists(_0x22c828)){const _0x316a0a=await readFile(_0x22c828,_0x578e28(0x1e1));isEquivalentPulledSqlFile(_0x316a0a,_0x520adb,_0x71a6cd)?(_0x3ba48f=_0x578e28(0x1ce),_0x3459b9=_0x578e28(0x1ee)):(_0x3ba48f=_0x578e28(0x1e3),_0x3459b9=_0x578e28(0x1f1));}_0x3fb4b7[_0x578e28(0x1c3)]({'sqlCode':_0x423ac9[_0x578e28(0x1d3)],'sqlName':_0x423ac9[_0x578e28(0x1f5)],'filePath':_0x22c828,'status':_0x3ba48f,'reason':_0x3459b9});}return{'method':'POST','url':_0x578e28(0x1d6),'body':{'appCode':_0x489f9a[_0x578e28(0x1e5)],'sqlCode':_0x489f9a[_0x578e28(0x1ec)]('sqlcode')||null,'sqlName':_0x489f9a[_0x578e28(0x1ec)](_0x578e28(0x1f4))||null,'files':_0x3fb4b7},'description':_0x578e28(0x1ea)+_0x3fb4b7['length']+'\x20SQL\x20file(s)\x20into\x20'+_0x34c260[_0x578e28(0x1f9)]};},async 'execute'(_0x5b9eb3){const _0x411c1b=a121_0x20b0fd,_0x37c952=loadSqlProjectConfig(_0x5b9eb3['appCode']),_0x791aa0=await readSqlLockFile(_0x37c952[_0x411c1b(0x1d0)]),{lockData:_0x3dd0be,appLock:_0x1da9af}=ensureSqlLockScope(_0x791aa0??createEmptySqlLock(),_0x37c952[_0x411c1b(0x1e5)],_0x37c952['sqlRoot'],'pull'),_0x1b8ad1=_0x5b9eb3[_0x411c1b(0x1c9)](_0x411c1b(0x1e8)),_0xc2c0d7=await fetchAllSqlQueries(_0x5b9eb3['appCode'],{'sqlCode':_0x5b9eb3['str'](_0x411c1b(0x1e6))||undefined,'sqlName':_0x5b9eb3['str'](_0x411c1b(0x1f4))||undefined});if(_0xc2c0d7['length']===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x411c1b(0x1c8)};const _0x1ac7ed=[],_0x251214=[];for(const _0x235e9f of _0xc2c0d7){try{_0x1ac7ed[_0x411c1b(0x1c3)](await ensureSqlContent(_0x235e9f));}catch(_0x3ef649){_0x251214[_0x411c1b(0x1c3)]({'sqlCode':_0x235e9f[_0x411c1b(0x1d3)],'error':_0x3ef649 instanceof Error?_0x3ef649[_0x411c1b(0x1c7)]:String(_0x3ef649)});}}if(_0x1b8ad1&&!_0x5b9eb3['nonInteractive']){let _0xd912d3=![];for(const _0xebd8a3 of _0x1ac7ed){const _0x2a90c9=detectModeFromSql(_0xebd8a3),_0x2ec860=_0xebd8a3[_0x411c1b(0x1e4)]?await getDbName(_0x5b9eb3[_0x411c1b(0x1e5)],Number(_0xebd8a3[_0x411c1b(0x1e4)]))['catch'](()=>undefined):undefined,_0xfe4635=buildLocalSqlFileContent({'sqlCode':_0xebd8a3['sqlCode'],'sqlName':_0xebd8a3[_0x411c1b(0x1f5)],'dbId':_0xebd8a3[_0x411c1b(0x1e4)]},ensureRemoteSqlContent(_0xebd8a3),{'dbName':_0x2ec860,'mode':_0x2a90c9,'syncedAt':new Date()[_0x411c1b(0x1d4)](),'description':_0xebd8a3[_0x411c1b(0x1ef)]}),_0x316af=resolveLocalSqlFilePath(_0x37c952,_0xebd8a3['sqlCode'],buildSqlLockEntry(_0xebd8a3,ensureRemoteSqlContent(_0xebd8a3),'',{'dbName':_0x2ec860}));if(await fileExists(_0x316af)){const _0x18ad3d=await readFile(_0x316af,'utf8');if(!isEquivalentPulledSqlFile(_0x18ad3d,_0xfe4635,_0x2a90c9)){_0xd912d3=!![];break;}}}if(_0xd912d3){const _0x472410=await confirmForceOverwrite(_0x411c1b(0x1c5));if(!_0x472410)throw CliErrors['cancelled'](_0x411c1b(0x1cc));}}const _0xc5ade0=cloneSqlLockData(_0x3dd0be),_0x30a3e6=_0xc5ade0['apps'][_0x37c952['appCode']],_0x2edb77=[],_0x6160b5=[];for(const _0x27f062 of _0x1ac7ed){const _0x8c18c=_0x30a3e6[_0x411c1b(0x1ed)][_0x27f062[_0x411c1b(0x1d3)]],_0x134d86=ensureRemoteSqlContent(_0x27f062),_0x10adc5=detectModeFromSql(_0x27f062),_0x3e8aa1=_0x27f062[_0x411c1b(0x1e4)]?await getDbName(_0x5b9eb3[_0x411c1b(0x1e5)],Number(_0x27f062[_0x411c1b(0x1e4)]))[_0x411c1b(0x1c1)](()=>undefined):undefined,_0x3abb46=buildLocalSqlFileContent({'sqlCode':_0x27f062[_0x411c1b(0x1d3)],'sqlName':_0x27f062[_0x411c1b(0x1f5)],'dbId':_0x27f062[_0x411c1b(0x1e4)]},_0x134d86,{'dbName':_0x3e8aa1,'mode':_0x10adc5,'syncedAt':new Date()[_0x411c1b(0x1d4)](),'description':_0x27f062[_0x411c1b(0x1ef)]}),_0x42e0b9=buildSqlLockEntry(_0x27f062,_0x134d86,computeSqlContentHash(_0x3abb46),{'dbName':_0x3e8aa1}),_0x5ccc4f=_0x42e0b9['path'],_0xfcbda4=join(_0x37c952[_0x411c1b(0x1f9)],_0x5ccc4f);try{if(await fileExists(_0xfcbda4)){const _0xfb0c07=await readFile(_0xfcbda4,_0x411c1b(0x1e1));if(isEquivalentPulledSqlFile(_0xfb0c07,_0x3abb46,_0x10adc5)){_0x6160b5[_0x411c1b(0x1c3)]({'sqlCode':_0x27f062[_0x411c1b(0x1d3)],'reason':_0x411c1b(0x1ee)}),_0x30a3e6[_0x411c1b(0x1ed)][_0x27f062[_0x411c1b(0x1d3)]]={..._0x42e0b9,'hash':computeSqlContentHash(_0xfb0c07),'path':_0x5ccc4f};continue;}if(!_0x1b8ad1){_0x6160b5[_0x411c1b(0x1c3)]({'sqlCode':_0x27f062[_0x411c1b(0x1d3)],'reason':_0x411c1b(0x1d9)});continue;}}const _0x24739b=_0x8c18c?.[_0x411c1b(0x1fc)]?join(_0x37c952[_0x411c1b(0x1f9)],_0x8c18c[_0x411c1b(0x1fc)]):undefined;_0x24739b&&_0x24739b!==_0xfcbda4&&await fileExists(_0x24739b)&&await rm(_0x24739b,{'force':!![]}),await ensureParentDirectory(_0xfcbda4),await writeFile(_0xfcbda4,_0x3abb46,_0x411c1b(0x1e1)),_0x30a3e6['sqls'][_0x27f062[_0x411c1b(0x1d3)]]={..._0x42e0b9,'path':_0x5ccc4f},_0x2edb77['push']({'sqlCode':_0x27f062[_0x411c1b(0x1d3)],'filePath':_0xfcbda4});}catch(_0x5e2fb2){_0x251214[_0x411c1b(0x1c3)]({'sqlCode':_0x27f062[_0x411c1b(0x1d3)],'error':_0x5e2fb2 instanceof Error?_0x5e2fb2['message']:String(_0x5e2fb2)});}}return _0x30a3e6[_0x411c1b(0x1eb)]=new Date()['toISOString'](),await writeSqlLockFile(_0x37c952['lockFilePath'],_0xc5ade0),{'ok':_0x251214['length']===0x0,'data':{'pulled':_0x2edb77,'skipped':_0x6160b5,'failed':_0x251214},'message':_0x411c1b(0x1d8)+_0x2edb77[_0x411c1b(0x1dd)]+'\x20written,\x20'+_0x6160b5[_0x411c1b(0x1dd)]+_0x411c1b(0x1de)+_0x251214[_0x411c1b(0x1dd)]+'\x20failed'};}};function a121_0x4ec4(_0xca2212,_0x53788f){_0xca2212=_0xca2212-0x1c1;const _0x3e5719=a121_0x3e57();let _0x4ec47c=_0x3e5719[_0xca2212];return _0x4ec47c;}function detectModeFromSql(_0x21145c){const _0x1ae73b=a121_0x20b0fd,_0x425e30=ensureRemoteSqlContent(_0x21145c),_0x1e5755=stripLocalSqlMetadata(_0x425e30,_0x1ae73b(0x1c4))[_0x1ae73b(0x1e0)]();if(/^<(select|insert|update|delete)\b/i[_0x1ae73b(0x1e2)](_0x1e5755))return _0x1ae73b(0x1c4);return'sql';}function isEquivalentPulledSqlFile(_0x16c628,_0x57266f,_0x34db9d){return normalizePullComparableContent(_0x16c628,_0x34db9d)===normalizePullComparableContent(_0x57266f,_0x34db9d);}function normalizePullComparableContent(_0x200958,_0x3fafc0){const _0x3337df=a121_0x20b0fd,_0x1e8d92=_0x200958[_0x3337df(0x1d1)](/\r\n/g,'\x0a')[_0x3337df(0x1e9)]('\x0a'),_0x424793=_0x1e8d92[_0x3337df(0x1f6)](_0xaa6bd5=>!isSyncedAtMetadataLine(_0xaa6bd5,_0x3fafc0));return _0x424793['join']('\x0a');}function isSyncedAtMetadataLine(_0x50f038,_0x437a30){const _0x54006d=a121_0x20b0fd;if(_0x437a30===_0x54006d(0x1c4))return/^\s*<!--\s*@lovrabet\.syncedAt:/[_0x54006d(0x1e2)](_0x50f038);return/^\s*--\s*@lovrabet\.syncedAt:/[_0x54006d(0x1e2)](_0x50f038);}
|