@lovrabet/rabetbase-cli 2.3.7 → 2.3.8-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/login-success-html.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/generate.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/api/shared.js +1 -1
- package/lib/commands/app/add.js +1 -1
- package/lib/commands/app/index.js +1 -1
- package/lib/commands/app/list.js +1 -1
- package/lib/commands/app/remote-directory.js +1 -1
- package/lib/commands/app/remove.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/delete.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/app-config/list.js +1 -1
- package/lib/commands/app-config/set.js +1 -1
- package/lib/commands/app-config/shared.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/bff/create.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-registry.js +1 -1
- package/lib/commands/common/app-selector.js +1 -1
- package/lib/commands/common/dry-run.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/common/validate.js +1 -1
- package/lib/commands/config/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/business-group-update.js +1 -1
- package/lib/commands/dataset/capability.js +1 -1
- package/lib/commands/dataset/delete.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/extend-update.js +1 -1
- package/lib/commands/dataset/field-update.js +1 -1
- package/lib/commands/dataset/generate.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/dataset/relation-audit.js +1 -1
- package/lib/commands/dataset/relation-create.js +1 -1
- package/lib/commands/dataset/relation-delete.js +1 -1
- package/lib/commands/dataset/relation-shared.js +1 -1
- package/lib/commands/dataset/relation-update.js +1 -1
- package/lib/commands/dataset/relations.js +1 -1
- package/lib/commands/dataset/rename.js +1 -1
- package/lib/commands/dataset/restore.js +1 -1
- package/lib/commands/db/analysis-batching.js +1 -1
- package/lib/commands/db/analyze-batch-plan.js +1 -1
- package/lib/commands/db/analyze-cancel.js +1 -1
- package/lib/commands/db/analyze-start.js +1 -1
- package/lib/commands/db/analyze-status.js +1 -1
- package/lib/commands/db/create.js +1 -1
- package/lib/commands/db/delete.js +1 -1
- package/lib/commands/db/detail.js +1 -1
- package/lib/commands/db/diff.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/file/index.js +1 -1
- package/lib/commands/init/index.js +1 -1
- package/lib/commands/issue/index.js +1 -1
- package/lib/commands/issue/nudge.js +1 -1
- package/lib/commands/issue/report.js +1 -1
- package/lib/commands/issue/shared.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.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/notification/config-list.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/page/generate-start.js +1 -1
- package/lib/commands/page/generate-status.js +1 -1
- package/lib/commands/page/index.js +1 -1
- package/lib/commands/page/pull.js +1 -1
- package/lib/commands/page/push.js +1 -1
- package/lib/commands/page/relation-audit.js +1 -1
- package/lib/commands/page/shared.js +1 -1
- package/lib/commands/page/standard-page-status.js +1 -1
- package/lib/commands/page/sync.js +1 -1
- package/lib/commands/permit/index.js +1 -1
- package/lib/commands/permit/page-get.js +1 -1
- package/lib/commands/permit/page-set.js +1 -1
- package/lib/commands/permit/role-apis-set.js +1 -1
- package/lib/commands/permit/role-menus-set.js +1 -1
- package/lib/commands/permit/role-menus.js +1 -1
- package/lib/commands/permit/shared.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/role/create.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/role/user-resolve.js +1 -1
- package/lib/commands/run/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/sql/create.js +1 -1
- package/lib/commands/sql/delete.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/sql/list.js +1 -1
- package/lib/commands/sql/pull.js +1 -1
- package/lib/commands/sql/push.js +1 -1
- package/lib/commands/sql/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/commands/workspace/add.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/commands/workspace/remove.js +1 -1
- package/lib/config/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/app-resolver.js +1 -1
- package/lib/context/auth-resolver.js +1 -1
- package/lib/context/config-loader.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/page/file-system.js +1 -1
- package/lib/core/page/hash.js +1 -1
- package/lib/core/page/lock.js +1 -1
- package/lib/core/sql-sync/config.js +1 -1
- package/lib/core/sql-sync/file-system.js +1 -1
- package/lib/core/sql-sync/hash.js +1 -1
- package/lib/core/sql-sync/lock.js +1 -1
- package/lib/core/sql-sync/utils.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-alias.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/telemetry/cli-command-trace.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -1
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -1
- package/lib/telemetry/send-platform-issue-collect-log.js +1 -1
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/copy-directory.js +1 -1
- package/lib/utils/entity-with-id.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/with-active-cookie.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
package/lib/commands/registry.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a143_0x47f9d1=a143_0x53e0;(function(_0xd1d2d9,_0x4bf82){const _0x13f361=a143_0x53e0,_0x4bc8f8=_0xd1d2d9();while(!![]){try{const _0x5a636b=parseInt(_0x13f361(0x1bd))/0x1+-parseInt(_0x13f361(0x1ac))/0x2+-parseInt(_0x13f361(0x190))/0x3+-parseInt(_0x13f361(0x1b0))/0x4*(parseInt(_0x13f361(0x19d))/0x5)+parseInt(_0x13f361(0x191))/0x6*(parseInt(_0x13f361(0x17d))/0x7)+parseInt(_0x13f361(0x1ab))/0x8+parseInt(_0x13f361(0x1a5))/0x9;if(_0x5a636b===_0x4bf82)break;else _0x4bc8f8['push'](_0x4bc8f8['shift']());}catch(_0x346fd9){_0x4bc8f8['push'](_0x4bc8f8['shift']());}}}(a143_0x5eeb,0xa3fe6));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{roleDefinitions}from'../commands/role/index.js';import{permitDefinitions}from'../commands/permit/index.js';import{appDefinitions}from'../commands/app/index.js';function a143_0x5eeb(){const _0x509a09=['auth','Notification\x20Configuration','hidden','set','description','app','`rabetbase\x20skills`\x20has\x20been\x20removed.','4013808oLSCft','1230276CRPmwI','create','risk','app\x20use','\x20\x20[write]','Instant\x20API','build','Platform\x20Issue','Configuration','isSingleCommand','Workspace','command','383010jlgrnh','install','File','Roles','API\x20Development','remote','service','skill\x20','12336309vCorTr','has','run','Smart\x20List\x20Pages','Runtime\x20App\x20Config\x20Management','defaultCommand','2470872QBuYLQ','377664qtyspU','values','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','skill','36uxiflW','Authentication','SQL\x20Queries','map','use','`rabetbase\x20app\x20remote`\x20has\x20been\x20removed.','skills','\x20\x20[high-risk-write]','Project','from','read','start','commands','1003298PnBZpv','login','get','App\x20Management','7lodAWv','Database\x20Connections','show','Logs','`\x20has\x20been\x20removed.','Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.','Run\x20Scripts','wildcardDef','Use\x20`rabetbase\x20workspace\x20use\x20--app\x20<name>`\x20instead.','`rabetbase\x20app\x20use`\x20has\x20been\x20removed.','preview','push'];a143_0x5eeb=function(){return _0x509a09;};return a143_0x5eeb();}import{appConfigDefinitions}from'../commands/app-config/index.js';import{notificationDefinitions}from'../commands/notification/index.js';import{workspaceDefinitions}from'../commands/workspace/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{fileDefinitions}from'../commands/file/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';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(_0x585066){const _0x1f779a=a143_0x53e0;for(const _0x271961 of _0x585066){definitions[_0x1f779a(0x18c)](_0x271961['service']+':'+_0x271961[_0x1f779a(0x19c)],_0x271961);let _0x8a9ef3=serviceGroups[_0x1f779a(0x1bf)](_0x271961[_0x1f779a(0x1a3)]);!_0x8a9ef3&&(_0x8a9ef3=[],serviceGroups['set'](_0x271961[_0x1f779a(0x1a3)],_0x8a9ef3)),_0x8a9ef3['push'](_0x271961);}}function registerDeclarativeService(_0x40cd70,_0x1b2cf9,_0x9ed369){const _0x11faab=a143_0x53e0;registerDefinitions(_0x1b2cf9);_0x9ed369?.['wildcardDef']&®isterDefinitions([_0x9ed369[_0x11faab(0x184)]]);const _0x366eea=_0x404bfd=>_0x404bfd===_0x11faab(0x1ba)?'':_0x404bfd==='write'?_0x11faab(0x195):_0x11faab(0x1b7),_0x2fef5c={'service':_0x1b2cf9[0x0][_0x11faab(0x1a3)],'label':_0x40cd70,'commands':_0x1b2cf9['filter'](_0x1e8031=>!_0x1e8031[_0x11faab(0x18b)])[_0x11faab(0x1b3)](_0x19bb8d=>({'command':_0x19bb8d[_0x11faab(0x19c)],'description':_0x19bb8d[_0x11faab(0x18d)],'tag':_0x366eea(_0x19bb8d[_0x11faab(0x193)])})),'declarative':!![],'defaultCommand':_0x9ed369?.[_0x11faab(0x1aa)]??(_0x9ed369?.['isSingleCommand']?_0x1b2cf9[0x0][_0x11faab(0x19c)]:undefined),'wildcardDef':_0x9ed369?.[_0x11faab(0x184)],'isSingleCommand':_0x9ed369?.[_0x11faab(0x19a)]};serviceRegistry[_0x11faab(0x188)](_0x2fef5c),serviceByName[_0x11faab(0x18c)](_0x2fef5c['service'],_0x2fef5c);}registerDeclarativeService('Quick\x20Start',initDefinitions,{'defaultCommand':'run','isSingleCommand':!![]}),registerDeclarativeService(a143_0x47f9d1(0x1b8),projectDefinitions),registerDeclarativeService(a143_0x47f9d1(0x19b),workspaceDefinitions),registerDeclarativeService(a143_0x47f9d1(0x17c),appDefinitions),registerDeclarativeService(a143_0x47f9d1(0x1b1),authDefinitions,{'defaultCommand':a143_0x47f9d1(0x1be)}),registerDeclarativeService('Dataset\x20&\x20Operations',datasetDefinitions),registerDeclarativeService(a143_0x47f9d1(0x1a8),pageDefinitions),registerDeclarativeService(a143_0x47f9d1(0x1a1),apiDefinitions),registerDeclarativeService(a143_0x47f9d1(0x196),dataDefinitions),registerDeclarativeService('BFF\x20Scripts',bffDefinitions),registerDeclarativeService(a143_0x47f9d1(0x18a),notificationDefinitions),registerDeclarativeService(a143_0x47f9d1(0x1b2),sqlDefinitions),registerDeclarativeService(a143_0x47f9d1(0x17e),dbDefinitions),registerDeclarativeService('Menu',menuDefinitions),registerDeclarativeService(a143_0x47f9d1(0x1a0),roleDefinitions),registerDeclarativeService('Permissions',permitDefinitions),registerDeclarativeService(a143_0x47f9d1(0x1a9),appConfigDefinitions),registerDeclarativeService(a143_0x47f9d1(0x198),issueDefinitions),registerDeclarativeService(a143_0x47f9d1(0x19f),fileDefinitions),registerDeclarativeService('Code\x20Generation',codegenDefinitions),registerDeclarativeService(a143_0x47f9d1(0x199),configDefinitions),registerDeclarativeService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Schema',[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Self\x20Update',[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('CLI\x20Built-in\x20Skill',cliSkillDefinitions,{'defaultCommand':a143_0x47f9d1(0x19e)}),registerDeclarativeService(a143_0x47f9d1(0x180),logsDefinitions,{'defaultCommand':a143_0x47f9d1(0x17f)}),registerDeclarativeService(a143_0x47f9d1(0x183),[runDefinition],{'wildcardDef':runDefinition});function a143_0x53e0(_0x2887e4,_0x13d79d){_0x2887e4=_0x2887e4-0x17c;const _0x5eeb92=a143_0x5eeb();let _0x53e0c2=_0x5eeb92[_0x2887e4];return _0x53e0c2;}{const last=serviceRegistry[serviceRegistry['length']-0x1];last[a143_0x47f9d1(0x1bc)]=[{'command':'<script>','description':'Run\x20any\x20package.json\x20script','tag':''}];}export const deprecatedAliases={'create':{'service':'project','command':a143_0x47f9d1(0x192)},'start':{'service':a143_0x47f9d1(0x1a7),'command':a143_0x47f9d1(0x1bb)},'build':{'service':a143_0x47f9d1(0x1a7),'command':a143_0x47f9d1(0x197)},'preview':{'service':a143_0x47f9d1(0x1a7),'command':a143_0x47f9d1(0x187)},'logout':{'service':a143_0x47f9d1(0x189),'command':'logout'}};const CLI_SKILL_INSTALL_REMOVED_HINT=a143_0x47f9d1(0x1ae),APP_REMOTE_REMOVED_HINT=a143_0x47f9d1(0x182),APP_USE_REMOVED_HINT=a143_0x47f9d1(0x185);export function resolveRemovedCommand(_0x3b794b,_0xc405ae){const _0x4d4253=a143_0x47f9d1;if(_0x3b794b===_0x4d4253(0x1af)){const _0x272acd=_0xc405ae?_0x4d4253(0x1a4)+_0xc405ae:'skill';return{'command':_0x272acd,'message':'`rabetbase\x20'+_0x272acd+_0x4d4253(0x181),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x3b794b===_0x4d4253(0x1b6))return{'command':'skills','message':_0x4d4253(0x18f),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};if(_0x3b794b==='app'&&_0xc405ae===_0x4d4253(0x1a2))return{'command':'app\x20remote','message':_0x4d4253(0x1b5),'hint':APP_REMOTE_REMOVED_HINT};if(_0x3b794b===_0x4d4253(0x18e)&&_0xc405ae===_0x4d4253(0x1b4))return{'command':_0x4d4253(0x194),'message':_0x4d4253(0x186),'hint':APP_USE_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':a143_0x47f9d1(0x192)},'sql':{'new':a143_0x47f9d1(0x192)}};export function resolveDeprecatedSubcommand(_0xa048a8,_0x104c55){return deprecatedSubcommands[_0xa048a8]?.[_0x104c55];}export function findDefinition(_0x3c6780,_0x2bbc3c){const _0x442b7a=a143_0x47f9d1;return definitions[_0x442b7a(0x1bf)](_0x3c6780+':'+_0x2bbc3c);}export function isKnownService(_0x3e29af){const _0x2c2eb3=a143_0x47f9d1;return serviceByName[_0x2c2eb3(0x1a6)](_0x3e29af);}export function isDeclarativeService(_0x332da1){const _0x16ee10=a143_0x47f9d1;return serviceGroups[_0x16ee10(0x1a6)](_0x332da1)||serviceByName[_0x16ee10(0x1bf)](_0x332da1)?.[_0x16ee10(0x184)]!==undefined;}export function getServiceEntry(_0x42c525){const _0x304875=a143_0x47f9d1;return serviceByName[_0x304875(0x1bf)](_0x42c525);}export function getLegacyHandler(_0x3e4328,_0x56a14c){return undefined;}export function getAllDefinitions(){const _0x1e5b3a=a143_0x47f9d1;return Array[_0x1e5b3a(0x1b9)](definitions[_0x1e5b3a(0x1ad)]());}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a144_0x314b(){const _0x2452ca=['2853446vGhbub','Created\x20role\x20','378IARUZk','remark','4EamoWy','flagMissing','str','create','133LKeaEo','Pass\x20--name\x20<roleName>.','44PGMenb','3664510WhijVT','length','POST','appCode','\x20(id=','CUSTOM','97590lbMWxM','role','trim','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','140865SjouEc','roleName','name','write','349736dUxvrz','7476210YrnSeE','1924983nFTBmj'];a144_0x314b=function(){return _0x2452ca;};return a144_0x314b();}const a144_0x549b80=a144_0x1147;(function(_0x231962,_0x487875){const _0x398c5d=a144_0x1147,_0x5eb6ec=_0x231962();while(!![]){try{const _0x512e0e=parseInt(_0x398c5d(0x11e))/0x1+-parseInt(_0x398c5d(0x129))/0x2+parseInt(_0x398c5d(0x128))/0x3*(parseInt(_0x398c5d(0x12d))/0x4)+-parseInt(_0x398c5d(0x122))/0x5*(-parseInt(_0x398c5d(0x12b))/0x6)+-parseInt(_0x398c5d(0x115))/0x7*(parseInt(_0x398c5d(0x126))/0x8)+-parseInt(_0x398c5d(0x127))/0x9+-parseInt(_0x398c5d(0x118))/0xa*(-parseInt(_0x398c5d(0x117))/0xb);if(_0x512e0e===_0x487875)break;else _0x5eb6ec['push'](_0x5eb6ec['shift']());}catch(_0x50be51){_0x5eb6ec['push'](_0x5eb6ec['shift']());}}}(a144_0x314b,0xd9c0e));import{createAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{NAME_FLAG,REMARK_FLAG,projectRole}from'../../commands/role/shared.js';const CREATE_PATH='/smartapi/permit/role/create';function readName(_0x567465){const _0x4ff8d8=a144_0x1147,_0x559fee=_0x567465[_0x4ff8d8(0x113)](_0x4ff8d8(0x124))[_0x4ff8d8(0x120)]();if(!_0x559fee)throw CliErrors[_0x4ff8d8(0x112)](_0x4ff8d8(0x124),_0x4ff8d8(0x116));if(_0x559fee[_0x4ff8d8(0x119)]>0x40)throw CliErrors['validation'](_0x4ff8d8(0x121));return _0x559fee;}function a144_0x1147(_0x17751b,_0xf4d4dc){_0x17751b=_0x17751b-0x112;const _0x314b7f=a144_0x314b();let _0x1147d=_0x314b7f[_0x17751b];return _0x1147d;}export const roleCreate={'service':a144_0x549b80(0x11f),'command':a144_0x549b80(0x114),'description':'Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','risk':a144_0x549b80(0x125),'flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0xdb1e71){readName(_0xdb1e71);},async 'dryRun'(_0x25cc4c){const _0x54cb57=a144_0x549b80,_0x17d4e3=readName(_0x25cc4c),_0x5cb536=_0x25cc4c[_0x54cb57(0x113)]('remark')['trim']()||undefined;return asDryRunResult({'operation':_0x54cb57(0x114),'selector':{'appCode':_0x25cc4c[_0x54cb57(0x11b)],'roleName':_0x17d4e3},'before':null,'after':{'roleName':_0x17d4e3,'roleType':_0x54cb57(0x11d),'remark':_0x5cb536},'dryRun':!![],'backend':{'method':_0x54cb57(0x11a),'path':CREATE_PATH},'warnings':[]},{'method':_0x54cb57(0x11a),'url':CREATE_PATH});},async 'execute'(_0x2faf72){const _0x509035=a144_0x549b80,_0x40befd=readName(_0x2faf72),_0x396e61=_0x2faf72['str'](_0x509035(0x12c))['trim']()||undefined,_0x48d069=await createAppRole({'appCode':_0x2faf72[_0x509035(0x11b)],'roleName':_0x40befd,..._0x396e61?{'remark':_0x396e61}:{}});return{'ok':!![],'data':{'operation':'create','selector':{'appCode':_0x2faf72['appCode'],'roleId':_0x48d069['id'],'roleName':_0x40befd},'before':null,'after':projectRole(_0x48d069),'dryRun':![],'backend':{'method':_0x509035(0x11a),'path':CREATE_PATH},'warnings':[]},'message':_0x509035(0x12a)+_0x48d069[_0x509035(0x123)]+_0x509035(0x11c)+_0x48d069['id']+')'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a145_0x39b1(_0x1bcb2b,_0x2249b1){_0x1bcb2b=_0x1bcb2b-0x92;const _0x10fea6=a145_0x10fe();let _0x39b1ce=_0x10fea6[_0x1bcb2b];return _0x39b1ce;}const a145_0xbab301=a145_0x39b1;(function(_0x1bb3a1,_0x1b2d1d){const _0x140f53=a145_0x39b1,_0x50cc9a=_0x1bb3a1();while(!![]){try{const _0x38f856=-parseInt(_0x140f53(0x94))/0x1*(-parseInt(_0x140f53(0xa0))/0x2)+parseInt(_0x140f53(0x98))/0x3*(-parseInt(_0x140f53(0xa9))/0x4)+-parseInt(_0x140f53(0x92))/0x5*(parseInt(_0x140f53(0x9d))/0x6)+parseInt(_0x140f53(0xa3))/0x7*(parseInt(_0x140f53(0xa5))/0x8)+parseInt(_0x140f53(0x97))/0x9*(parseInt(_0x140f53(0xa8))/0xa)+-parseInt(_0x140f53(0x99))/0xb*(-parseInt(_0x140f53(0xa7))/0xc)+-parseInt(_0x140f53(0xa1))/0xd*(parseInt(_0x140f53(0x9b))/0xe);if(_0x38f856===_0x1b2d1d)break;else _0x50cc9a['push'](_0x50cc9a['shift']());}catch(_0x1b6d73){_0x50cc9a['push'](_0x50cc9a['shift']());}}}(a145_0x10fe,0x89dd8));import{deleteAppRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a145_0x10fe(){const _0x2a365f=['userCount','appCode','8254773KTRjsF','6FFqQCb','6556330VeiTce','Deleted\x20role\x20','7963354xSooCD','delete','36BfVqLW','high-risk-write','Role\x20still\x20has\x20','2oIwZTZ','13icHzZc','POST','91iDLdbw','role','439592ahfFkl','num','12VCvAxl','10hDVQhp','2094664htVPpq','\x20(id=','388385JrAgDp','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.','419337AIOdrX'];a145_0x10fe=function(){return _0x2a365f;};return a145_0x10fe();}import{assertCustomRole,getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';const DELETE_PATH='/smartapi/permit/role/delete';export const roleDelete={'service':a145_0xbab301(0xa4),'command':a145_0xbab301(0x9c),'description':'Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','risk':a145_0xbab301(0x9e),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x216dd6){const _0x880d30=a145_0xbab301,_0x5cd82f=_0x216dd6['num']('id'),_0x23823d=await getRoleById(_0x216dd6[_0x880d30(0x96)],_0x5cd82f);return assertCustomRole(_0x23823d,_0x880d30(0x9c)),asDryRunResult({'operation':_0x880d30(0x9c),'selector':{'appCode':_0x216dd6[_0x880d30(0x96)],'roleId':_0x5cd82f,'roleName':_0x23823d['roleName']},'before':projectRole(_0x23823d),'after':null,'dryRun':!![],'backend':{'method':_0x880d30(0xa2),'path':DELETE_PATH},'warnings':_0x23823d[_0x880d30(0x95)]>0x0?[_0x880d30(0x9f)+_0x23823d['userCount']+_0x880d30(0x93)]:[]},{'method':_0x880d30(0xa2),'url':DELETE_PATH});},async 'execute'(_0x3af8c2){const _0x49bff8=a145_0xbab301,_0x30d662=_0x3af8c2[_0x49bff8(0xa6)]('id'),_0x329751=await getRoleById(_0x3af8c2['appCode'],_0x30d662);return assertCustomRole(_0x329751,'delete'),await deleteAppRole(_0x30d662),{'ok':!![],'data':{'operation':'delete','selector':{'appCode':_0x3af8c2[_0x49bff8(0x96)],'roleId':_0x30d662,'roleName':_0x329751['roleName']},'before':projectRole(_0x329751),'after':null,'dryRun':![],'backend':{'method':_0x49bff8(0xa2),'path':DELETE_PATH},'warnings':[]},'message':_0x49bff8(0x9a)+_0x329751['roleName']+_0x49bff8(0xaa)+_0x30d662+')'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a146_0x279c(){const _0x1aee13=['Show\x20a\x20single\x20role\x27s\x20detail','2OpmPqW','detail','1428920YeGaIK','133261pSBkNE','530369kkZNqS','381447PwobBp','18GZZmTQ','role','1997976XJKEOT','8512038iAdzvZ','roleType','roleName','read','1060580AsLicm'];a146_0x279c=function(){return _0x1aee13;};return a146_0x279c();}const a146_0x165652=a146_0x4dd0;(function(_0x5b0d2d,_0x2ca919){const _0x31ec7c=a146_0x4dd0,_0xa2e0a3=_0x5b0d2d();while(!![]){try{const _0x323a2a=-parseInt(_0x31ec7c(0x7c))/0x1+parseInt(_0x31ec7c(0x79))/0x2*(-parseInt(_0x31ec7c(0x7e))/0x3)+-parseInt(_0x31ec7c(0x77))/0x4+-parseInt(_0x31ec7c(0x7b))/0x5+-parseInt(_0x31ec7c(0x70))/0x6*(parseInt(_0x31ec7c(0x7d))/0x7)+parseInt(_0x31ec7c(0x72))/0x8+parseInt(_0x31ec7c(0x73))/0x9;if(_0x323a2a===_0x2ca919)break;else _0xa2e0a3['push'](_0xa2e0a3['shift']());}catch(_0x30f903){_0xa2e0a3['push'](_0xa2e0a3['shift']());}}}(a146_0x279c,0x264d9));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a146_0x4dd0(_0x534e69,_0x1d77c0){_0x534e69=_0x534e69-0x70;const _0x279cd3=a146_0x279c();let _0x4dd0b6=_0x279cd3[_0x534e69];return _0x4dd0b6;}export const roleDetail={'service':a146_0x165652(0x71),'command':a146_0x165652(0x7a),'description':a146_0x165652(0x78),'risk':a146_0x165652(0x76),'flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0x252d14){const _0x40f642=a146_0x165652,_0x59aa9e=_0x252d14['num']('id'),_0x5b08a7=await getRoleById(_0x252d14['appCode'],_0x59aa9e);return{'ok':!![],'data':{'role':projectRole(_0x5b08a7)},'message':'Role\x20'+_0x5b08a7[_0x40f642(0x75)]+'\x20('+_0x5b08a7[_0x40f642(0x74)]+')'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x3d726d,_0x149a9b){const _0x1e85a8=a147_0x58d1,_0x8c0743=_0x3d726d();while(!![]){try{const _0x5b3ef1=-parseInt(_0x1e85a8(0xa9))/0x1+parseInt(_0x1e85a8(0xa6))/0x2+-parseInt(_0x1e85a8(0xaa))/0x3*(parseInt(_0x1e85a8(0xa8))/0x4)+parseInt(_0x1e85a8(0xab))/0x5+parseInt(_0x1e85a8(0xae))/0x6*(-parseInt(_0x1e85a8(0xad))/0x7)+parseInt(_0x1e85a8(0xac))/0x8+parseInt(_0x1e85a8(0xa7))/0x9;if(_0x5b3ef1===_0x149a9b)break;else _0x8c0743['push'](_0x8c0743['shift']());}catch(_0xbd3691){_0x8c0743['push'](_0x8c0743['shift']());}}}(a147_0x5f3f,0xbda1f));import{roleList}from'../../commands/role/list.js';import{roleDetail}from'../../commands/role/detail.js';import{roleCreate}from'../../commands/role/create.js';import{roleUpdate}from'../../commands/role/update.js';function a147_0x5f3f(){const _0x583945=['1247084FQlqjc','29121mtEQVs','4045805jbUMOa','9084160pdecfE','7tBxHxs','5539494cnlitZ','2742752HAPZkt','5153310DvIjUh','388oSfyGY'];a147_0x5f3f=function(){return _0x583945;};return a147_0x5f3f();}import{roleDelete}from'../../commands/role/delete.js';import{roleUserResolve}from'../../commands/role/user-resolve.js';import{roleUserAdd}from'../../commands/role/user-add.js';import{roleUserRemove}from'../../commands/role/user-remove.js';function a147_0x58d1(_0x544b47,_0x427061){_0x544b47=_0x544b47-0xa6;const _0x5f3f5c=a147_0x5f3f();let _0x58d1fb=_0x5f3f5c[_0x544b47];return _0x58d1fb;}export const roleDefinitions=[roleList,roleDetail,roleCreate,roleUpdate,roleDelete,roleUserResolve,roleUserAdd,roleUserRemove];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a148_0xe0412=a148_0x5301;(function(_0x5b2afc,_0x36cd95){const _0x5a81b3=a148_0x5301,_0x48fda3=_0x5b2afc();while(!![]){try{const _0x1b56ca=-parseInt(_0x5a81b3(0x190))/0x1+parseInt(_0x5a81b3(0x195))/0x2+parseInt(_0x5a81b3(0x191))/0x3+-parseInt(_0x5a81b3(0x1aa))/0x4+parseInt(_0x5a81b3(0x1a0))/0x5*(-parseInt(_0x5a81b3(0x196))/0x6)+-parseInt(_0x5a81b3(0x1a6))/0x7+parseInt(_0x5a81b3(0x199))/0x8;if(_0x1b56ca===_0x36cd95)break;else _0x48fda3['push'](_0x48fda3['shift']());}catch(_0xcd70d9){_0x48fda3['push'](_0x48fda3['shift']());}}}(a148_0x17ff,0x219e0));function a148_0x17ff(){const _0x448279=['map','join','USER','231740ASxnEQ','Filter\x20by\x20role\x20type','CUSTOM','role','pagesize','page','filter','63895lQMJMN','408918qdwNpb','type','str','num','89870VVMpkH','6BcRXLh','toUpperCase','list','2802272MDnLLA','--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.','\x20role(s)','Invalid\x20--type\x20\x22','Use\x20one\x20of:\x20','ADMIN','DEV','293190EtRsgm','includes','number','List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','validation','roleType','1493527rLtcXk'];a148_0x17ff=function(){return _0x448279;};return a148_0x17ff();}import{listAppRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a148_0x5301(_0x2fd39b,_0x2e4c0e){_0x2fd39b=_0x2fd39b-0x18c;const _0x17ff84=a148_0x17ff();let _0x5301d7=_0x17ff84[_0x2fd39b];return _0x5301d7;}import{projectRole}from'../../commands/role/shared.js';const ROLE_TYPES=[a148_0xe0412(0x19e),a148_0xe0412(0x19f),a148_0xe0412(0x1a9),a148_0xe0412(0x1ac)];export const roleList={'service':a148_0xe0412(0x18c),'command':a148_0xe0412(0x198),'description':a148_0xe0412(0x1a3),'risk':'read','flags':[APPCODE_FLAG_OPTIONAL,{'name':a148_0xe0412(0x192),'type':'string','required':![],'description':a148_0xe0412(0x1ab),'enum':ROLE_TYPES},{'name':a148_0xe0412(0x18e),'type':a148_0xe0412(0x1a2),'description':'Page\x20index\x20(1-based)','default':0x1},{'name':a148_0xe0412(0x18d),'type':'number','description':'Page\x20size\x20(1-100)','default':0x64}],async 'validate'(_0x36453f){const _0x226cd6=a148_0xe0412,_0xb3874f=_0x36453f[_0x226cd6(0x193)]('type')['trim']();if(_0xb3874f&&!ROLE_TYPES[_0x226cd6(0x1a1)](_0xb3874f[_0x226cd6(0x197)]()))throw CliErrors[_0x226cd6(0x1a4)](_0x226cd6(0x19c)+_0xb3874f+'\x22.',_0x226cd6(0x19d)+ROLE_TYPES[_0x226cd6(0x1a8)](',\x20')+'.');const _0x25bc6f=_0x36453f[_0x226cd6(0x194)]('page',0x1),_0xa5cfe0=_0x36453f['num'](_0x226cd6(0x18d),0x64);if(_0x25bc6f<0x1)throw CliErrors['validation'](_0x226cd6(0x19a));if(_0xa5cfe0<0x1||_0xa5cfe0>0x64)throw CliErrors[_0x226cd6(0x1a4)]('--pagesize\x20must\x20be\x20between\x201\x20and\x20100.');},async 'execute'(_0xfdc699){const _0x2e25a5=a148_0xe0412,_0x44a8ac=_0xfdc699['num'](_0x2e25a5(0x18e),0x1)||0x1,_0x5a8f8b=_0xfdc699[_0x2e25a5(0x194)](_0x2e25a5(0x18d),0x64)||0x64,_0x7dc194=_0xfdc699[_0x2e25a5(0x193)](_0x2e25a5(0x192))['trim']()[_0x2e25a5(0x197)](),{items:_0x9e531c,paging:_0x9ab0aa}=await listAppRoles(_0xfdc699['appCode'],{'currentPage':_0x44a8ac,'pageSize':_0x5a8f8b}),_0x6c1fd1=_0x7dc194?_0x9e531c[_0x2e25a5(0x18f)](_0x4a15bd=>_0x4a15bd[_0x2e25a5(0x1a5)]===_0x7dc194):_0x9e531c,_0x602518=_0x6c1fd1[_0x2e25a5(0x1a7)](projectRole);return{'ok':!![],'data':{'roles':_0x602518,'paging':_0x9ab0aa},'message':'Found\x20'+_0x602518['length']+_0x2e25a5(0x19b)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a149_0x3c5b2f=a149_0x2728;function a149_0x2728(_0xd16c2c,_0x29a8a3){_0xd16c2c=_0xd16c2c-0xa0;const _0x173180=a149_0x1731();let _0x27280c=_0x173180[_0xd16c2c];return _0x27280c;}(function(_0x1f97cc,_0xecaa24){const _0x55d44e=a149_0x2728,_0x120ec9=_0x1f97cc();while(!![]){try{const _0x5cc6b5=parseInt(_0x55d44e(0xe2))/0x1+-parseInt(_0x55d44e(0xdc))/0x2+parseInt(_0x55d44e(0xca))/0x3+-parseInt(_0x55d44e(0xb7))/0x4*(-parseInt(_0x55d44e(0xad))/0x5)+-parseInt(_0x55d44e(0xd4))/0x6*(-parseInt(_0x55d44e(0xbb))/0x7)+parseInt(_0x55d44e(0xd2))/0x8*(-parseInt(_0x55d44e(0xb9))/0x9)+-parseInt(_0x55d44e(0xbf))/0xa*(-parseInt(_0x55d44e(0xa6))/0xb);if(_0x5cc6b5===_0xecaa24)break;else _0x120ec9['push'](_0x120ec9['shift']());}catch(_0x1fdf73){_0x120ec9['push'](_0x120ec9['shift']());}}}(a149_0x1731,0xe0953));import{getAppRole,getTenantMembers,listAppRoles,listRoleUsers}from'../../core/api-client.js';import{getSessionUserInfo}from'../../auth/get-session-user.js';import{CliErrors}from'../../errors.js';export const ROLE_ID_FLAG={'name':'id','type':a149_0x3c5b2f(0xdf),'required':!![],'description':a149_0x3c5b2f(0xe1)};export const ROLE_REF_FLAG={'name':a149_0x3c5b2f(0xdb),'type':a149_0x3c5b2f(0xb0),'required':!![],'description':'Role\x20id\x20or\x20role\x20name\x20(CUSTOM\x20roles\x20may\x20be\x20referenced\x20by\x20name)'};export const USER_REF_FLAG={'name':'user','type':'string','required':!![],'description':a149_0x3c5b2f(0xa5)};export const NAME_FLAG={'name':'name','type':a149_0x3c5b2f(0xb0),'required':!![],'description':'Role\x20name'};export const USER_NAME_FLAG={'name':a149_0x3c5b2f(0xe9),'type':'string','required':!![],'description':a149_0x3c5b2f(0xcf)};export const REMARK_FLAG={'name':a149_0x3c5b2f(0xe7),'type':a149_0x3c5b2f(0xb0),'required':![],'description':'Optional\x20role\x20remark/description'};export const EXPECT_USER_COUNT_FLAG={'name':'expect-user-count','type':a149_0x3c5b2f(0xdf),'required':![],'description':a149_0x3c5b2f(0xa7)};export const BUILTIN_ROLE_TYPES=[a149_0x3c5b2f(0xbd),a149_0x3c5b2f(0xc3),a149_0x3c5b2f(0xc1)];export function isBuiltinRole(_0x5baa7f){const _0x59bf82=a149_0x3c5b2f;return BUILTIN_ROLE_TYPES[_0x59bf82(0xef)](_0x5baa7f);}export function assertCustomRole(_0x586ba0,_0x4cc6be){const _0x422a59=a149_0x3c5b2f;if(_0x586ba0[_0x422a59(0xa0)]!==_0x422a59(0xeb))throw CliErrors[_0x422a59(0xa1)]('Cannot\x20'+_0x4cc6be+'\x20built-in\x20role\x20'+_0x586ba0[_0x422a59(0xb5)]+'\x20('+_0x586ba0['roleType']+').',_0x422a59(0xda));}export function assertPermConfigurable(_0x265cfb){const _0x254a05=a149_0x3c5b2f;if(_0x265cfb['roleType']==='DEV'||_0x265cfb[_0x254a05(0xa0)]===_0x254a05(0xbd))throw CliErrors[_0x254a05(0xa1)](_0x254a05(0xb6)+_0x265cfb['roleName']+'\x20('+_0x265cfb[_0x254a05(0xa0)]+').',_0x254a05(0xa3));}export function projectRole(_0x30983c){const _0x4d7dfa=a149_0x3c5b2f;return{'id':_0x30983c['id'],'roleName':_0x30983c['roleName'],'roleType':_0x30983c[_0x4d7dfa(0xa0)],'remark':_0x30983c['remark'],'userCount':_0x30983c[_0x4d7dfa(0xcd)],'permitCount':_0x30983c[_0x4d7dfa(0xc9)],'builtin':isBuiltinRole(_0x30983c[_0x4d7dfa(0xa0)])};}export async function resolveRoleRef(_0xe3f66,_0x4a323e){const _0x91b71e=a149_0x3c5b2f,_0x3ef99d=_0x4a323e[_0x91b71e(0xe6)]();if(!_0x3ef99d)throw CliErrors['validation'](_0x91b71e(0xcb),_0x91b71e(0xd0));if(/^\d+$/[_0x91b71e(0xe5)](_0x3ef99d))return getRoleById(_0xe3f66,Number(_0x3ef99d));const _0xfa9745=await listAllAppRoles(_0xe3f66),_0x3fd1fc=_0xfa9745['filter'](_0x55d5a2=>_0x55d5a2['roleName']===_0x3ef99d);if(_0x3fd1fc[_0x91b71e(0xc7)]===0x0)throw CliErrors[_0x91b71e(0xa1)](_0x91b71e(0xa2)+_0x3ef99d+'\x22\x20not\x20found\x20in\x20app\x20'+_0xe3f66+'.',_0x91b71e(0xd6));if(_0x3fd1fc[_0x91b71e(0xc7)]>0x1){const _0x2556ca=_0x3fd1fc[_0x91b71e(0xd3)](_0x3836ee=>_0x3836ee['id'])[_0x91b71e(0xa4)](',\x20');throw CliErrors[_0x91b71e(0xa1)]('Role\x20name\x20\x22'+_0x3ef99d+_0x91b71e(0xd5)+_0x2556ca+').',_0x91b71e(0xe3));}return _0x3fd1fc[0x0];}export async function getRoleById(_0xbaeb48,_0x382625){const _0x12f467=a149_0x3c5b2f,_0x549fe0=await getAppRole(_0x382625);if(!_0x549fe0)throw CliErrors['validation'](_0x12f467(0xe8)+_0x382625+_0x12f467(0xcc)+_0xbaeb48+'.','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.');return _0x549fe0;}async function listAllAppRoles(_0x16ce87){const _0x585022=a149_0x3c5b2f,_0x4d2213=0x64,_0x20650d=[];for(let _0xd4c530=0x1;;_0xd4c530+=0x1){const {items:_0x5de846,paging:_0x4b81a7}=await listAppRoles(_0x16ce87,{'currentPage':_0xd4c530,'pageSize':_0x4d2213});_0x20650d[_0x585022(0xbe)](..._0x5de846);if(_0x5de846['length']<_0x4d2213||_0x4b81a7&&_0x20650d['length']>=_0x4b81a7[_0x585022(0xc8)])return _0x20650d;}}export async function resolveTenantCode(){const _0x49d8c0=a149_0x3c5b2f,_0x587f3f=await getSessionUserInfo(),_0xa2ebdd=_0x587f3f?.['user']?.['tenant']?.[_0x49d8c0(0xa8)];if(!_0xa2ebdd)throw CliErrors[_0x49d8c0(0xd1)](_0x49d8c0(0xbc));return _0xa2ebdd;}function matchMember(_0x1b4a13,_0x2ef13b){const _0x475576=a149_0x3c5b2f,_0x2eea1e=_0x2ef13b[_0x475576(0xe6)]()[_0x475576(0xab)]();return(_0x1b4a13[_0x475576(0xd7)]??'')[_0x475576(0xab)]()===_0x2eea1e||(_0x1b4a13['username']??'')[_0x475576(0xab)]()===_0x2eea1e;}export async function resolveUserRef(_0x95d31){const _0x2fa8ca=a149_0x3c5b2f,_0x1a1adb=_0x95d31[_0x2fa8ca(0xe6)]();if(!_0x1a1adb)throw CliErrors[_0x2fa8ca(0xa1)](_0x2fa8ca(0xaf),_0x2fa8ca(0xec));const _0x204db9=await resolveTenantCode(),_0x1866f8=await getTenantMembers(_0x204db9);if(/^\d+$/[_0x2fa8ca(0xe5)](_0x1a1adb)){const _0x3f3e3b=Number(_0x1a1adb),_0x3ccfff=_0x1866f8[_0x2fa8ca(0xce)](_0x4c0437=>_0x4c0437[_0x2fa8ca(0xaa)]===_0x3f3e3b);return{'userId':_0x3f3e3b,'username':_0x3ccfff?.['username']??String(_0x3f3e3b),'nickname':_0x3ccfff?.[_0x2fa8ca(0xd7)],'matchedBy':'id'};}const _0x904d9e=_0x1866f8[_0x2fa8ca(0xb4)](_0x393e4e=>matchMember(_0x393e4e,_0x1a1adb));if(_0x904d9e[_0x2fa8ca(0xc7)]===0x0)throw CliErrors[_0x2fa8ca(0xa1)](_0x2fa8ca(0xc4)+_0x1a1adb+'\x22.',_0x2fa8ca(0xe4));if(_0x904d9e[_0x2fa8ca(0xc7)]>0x1){const _0x5ed61c=_0x904d9e[_0x2fa8ca(0xd3)](_0x835834=>(_0x835834[_0x2fa8ca(0xd7)]??_0x835834['username']??'?')+'('+_0x835834[_0x2fa8ca(0xaa)]+')')[_0x2fa8ca(0xa4)](',\x20');throw CliErrors['validation'](_0x2fa8ca(0xe0)+_0x1a1adb+_0x2fa8ca(0xb3)+_0x5ed61c+'.','Disambiguate\x20with\x20--user\x20<id>.');}const _0x35264b=_0x904d9e[0x0];return{'userId':_0x35264b[_0x2fa8ca(0xaa)],'username':_0x35264b[_0x2fa8ca(0xae)]??String(_0x35264b[_0x2fa8ca(0xaa)]),'nickname':_0x35264b[_0x2fa8ca(0xd7)],'matchedBy':'name'};}export const UPDATE_USER_LIST_PATH='/smartapi/permit/user-role/update-user-list';function userIdsOf(_0xdd33c){const _0x2e0110=a149_0x3c5b2f;return(_0xdd33c?.[_0x2e0110(0xea)]??[])[_0x2e0110(0xd3)](_0x2ef342=>_0x2ef342[_0x2e0110(0xaa)]);}export function computeRoleUserMutation(_0x9c4758){const _0x5aef7b=a149_0x3c5b2f,{operation:_0x7626b1,appCode:_0x55ef5e,roleUsers:_0x1c41b7,targetRoleId:_0x5b4f45,user:_0x5dd48f}=_0x9c4758,_0x1fa8ed=_0x1c41b7[_0x5aef7b(0xce)](_0xba6064=>_0xba6064['id']===_0x5b4f45);if(!_0x1fa8ed)throw CliErrors[_0x5aef7b(0xa1)](_0x5aef7b(0xe8)+_0x5b4f45+_0x5aef7b(0xdd),'Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.');const _0x2c22ee=userIdsOf(_0x1fa8ed),_0xde47c=[];if(_0x9c4758[_0x5aef7b(0xc0)]!==undefined&&_0x9c4758[_0x5aef7b(0xc0)]!==_0x2c22ee[_0x5aef7b(0xc7)])throw CliErrors['validation']('Anti-drift\x20check\x20failed:\x20expected\x20'+_0x9c4758[_0x5aef7b(0xc0)]+_0x5aef7b(0xb2)+_0x2c22ee['length']+'.',_0x5aef7b(0xc5));const _0x16ca51=_0x2c22ee[_0x5aef7b(0xef)](_0x5dd48f[_0x5aef7b(0xaa)]);let _0x1587cd=![];const _0x4ff630=[..._0x1fa8ed[_0x5aef7b(0xea)]];if(_0x7626b1===_0x5aef7b(0xb8))_0x16ca51?_0xde47c[_0x5aef7b(0xbe)](_0x5aef7b(0xf0)+_0x5dd48f['userId']+_0x5aef7b(0xf1)+_0x1fa8ed[_0x5aef7b(0xb5)]+_0x5aef7b(0xd9)):(_0x4ff630[_0x5aef7b(0xbe)]({'userId':_0x5dd48f['userId'],'username':_0x5dd48f[_0x5aef7b(0xae)],..._0x5dd48f[_0x5aef7b(0xd7)]?{'nickname':_0x5dd48f['nickname']}:{}}),_0x1587cd=!![]);else{if(!_0x16ca51)_0xde47c['push'](_0x5aef7b(0xf0)+_0x5dd48f[_0x5aef7b(0xaa)]+'\x20is\x20not\x20a\x20member\x20of\x20role\x20'+_0x1fa8ed[_0x5aef7b(0xb5)]+_0x5aef7b(0xd9));else{const _0x193840=_0x4ff630[_0x5aef7b(0xc6)](_0x239057=>_0x239057[_0x5aef7b(0xaa)]===_0x5dd48f[_0x5aef7b(0xaa)]);if(_0x193840>=0x0)_0x4ff630[_0x5aef7b(0xee)](_0x193840,0x1);_0x1587cd=!![];}}const _0xa3e5ca=_0x1c41b7['map'](_0xcc1868=>_0xcc1868['id']===_0x5b4f45?{..._0xcc1868,'userList':_0x4ff630}:_0xcc1868),_0x58524b=_0x4ff630[_0x5aef7b(0xd3)](_0xd87949=>_0xd87949['userId']),_0x15ace7={'operation':_0x7626b1,'selector':{'appCode':_0x55ef5e,'roleId':_0x5b4f45,'roleName':_0x1fa8ed[_0x5aef7b(0xb5)],'userId':_0x5dd48f[_0x5aef7b(0xaa)]},'before':{'userIds':_0x2c22ee},'after':{'userIds':_0x58524b},'dryRun':_0x9c4758[_0x5aef7b(0xd8)],'backend':{'method':_0x5aef7b(0xba),'path':UPDATE_USER_LIST_PATH},'warnings':_0xde47c};return{'roleList':_0xa3e5ca,'mutation':_0x15ace7,'changed':_0x1587cd};}export async function loadRoleUsers(_0x232244){return listRoleUsers(_0x232244);}export function readRoleRef(_0x24dd73){const _0x2f5e2e=a149_0x3c5b2f,_0x5e7efd=_0x24dd73[_0x2f5e2e(0xde)](_0x2f5e2e(0xdb))[_0x2f5e2e(0xe6)]();if(!_0x5e7efd)throw CliErrors[_0x2f5e2e(0xed)](_0x2f5e2e(0xdb),_0x2f5e2e(0xd0));return _0x5e7efd;}function a149_0x1731(){const _0x263841=['map','30jgeCBB','\x22\x20is\x20ambiguous\x20(ids:\x20','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.','nickname','dryRun',';\x20no\x20change.','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','role','1191250LRmeXb','\x20not\x20found\x20in\x20the\x20user-role\x20list.','str','number','Multiple\x20tenant\x20members\x20match\x20\x22','Role\x20id\x20(from\x20`role\x20list`)','752918kkDdDi','Disambiguate\x20with\x20--role\x20<id>.','Check\x20the\x20nickname/username,\x20or\x20pass\x20--user\x20<id>.','test','trim','remark','Role\x20id\x20','name','userList','CUSTOM','Pass\x20--user\x20<id|name>.','flagMissing','splice','includes','User\x20','\x20is\x20already\x20a\x20member\x20of\x20role\x20','roleType','validation','Role\x20name\x20\x22','DEV\x20/\x20ADMIN\x20keep\x20full\x20access\x20by\x20design;\x20configure\x20a\x20CUSTOM\x20role\x20instead.','join','User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId','55253hEFVYj','Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs','tenant_code','appCode','userId','toLowerCase','flag','1542515AEDzSD','username','Missing\x20user\x20reference.','string','user','\x20member(s)\x20but\x20role\x20has\x20','\x22:\x20','filter','roleName','Cannot\x20change\x20the\x20permission\x20matrix\x20of\x20built-in\x20role\x20','4eMzmpB','user-add','54XZNvqx','POST','2570533oNtSAx','Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.','ADMIN','push','130tTmgCU','expectUserCount','USER','expect-user-count','DEV','No\x20tenant\x20member\x20matches\x20\x22','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','findIndex','length','totalCount','permitCount','920961SkprHA','Missing\x20role\x20reference.','\x20not\x20found\x20in\x20app\x20','userCount','find','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','Pass\x20--role\x20<id|name>.','authRequired','2339048bNkXNZ'];a149_0x1731=function(){return _0x263841;};return a149_0x1731();}export async function prepareUserMutation(_0x2ec444,_0x103c97,_0x58da80){const _0x3a3501=a149_0x3c5b2f,_0xeaad81=readRoleRef(_0x2ec444),_0x359de8=_0x2ec444[_0x3a3501(0xde)](_0x3a3501(0xb1))[_0x3a3501(0xe6)]();if(!_0x359de8)throw CliErrors['flagMissing'](_0x3a3501(0xb1),_0x3a3501(0xec));const _0x12a9bb=_0x2ec444[_0x3a3501(0xac)](_0x3a3501(0xc2)),_0x64c108=_0x12a9bb===undefined||_0x12a9bb===null?undefined:Number(_0x12a9bb),_0x19581c=await resolveRoleRef(_0x2ec444[_0x3a3501(0xa9)],_0xeaad81),_0x31acf8=await resolveUserRef(_0x359de8),_0x2cd270=await loadRoleUsers(_0x2ec444[_0x3a3501(0xa9)]);return computeRoleUserMutation({'operation':_0x103c97,'appCode':_0x2ec444[_0x3a3501(0xa9)],'roleUsers':_0x2cd270,'targetRoleId':_0x19581c['id'],'user':{'userId':_0x31acf8['userId'],'username':_0x31acf8[_0x3a3501(0xae)],'nickname':_0x31acf8[_0x3a3501(0xd7)]},'dryRun':_0x58da80,..._0x64c108!==undefined?{'expectUserCount':_0x64c108}:{}});}
|
|
1
|
+
const a149_0xe101ee=a149_0x5399;(function(_0x7fd360,_0x4a158e){const _0x3749a0=a149_0x5399,_0x2d7b19=_0x7fd360();while(!![]){try{const _0x11186e=parseInt(_0x3749a0(0x172))/0x1*(-parseInt(_0x3749a0(0x181))/0x2)+parseInt(_0x3749a0(0x19c))/0x3*(parseInt(_0x3749a0(0x178))/0x4)+parseInt(_0x3749a0(0x18c))/0x5*(parseInt(_0x3749a0(0x18b))/0x6)+parseInt(_0x3749a0(0x155))/0x7+parseInt(_0x3749a0(0x186))/0x8*(-parseInt(_0x3749a0(0x167))/0x9)+-parseInt(_0x3749a0(0x15e))/0xa+parseInt(_0x3749a0(0x19a))/0xb*(parseInt(_0x3749a0(0x154))/0xc);if(_0x11186e===_0x4a158e)break;else _0x2d7b19['push'](_0x2d7b19['shift']());}catch(_0x4b56ad){_0x2d7b19['push'](_0x2d7b19['shift']());}}}(a149_0x3565,0x4eaeb));import{getAppRole,getTenantMembers,listAppRoles,listRoleUsers}from'../../core/api-client.js';function a149_0x3565(){const _0x260b40=['username','validation','\x22\x20not\x20found\x20in\x20app\x20','Pass\x20--user\x20<id|name>.','appCode','user','4087791nmuNLk','Check\x20the\x20nickname/username,\x20or\x20pass\x20--user\x20<id>.','map','\x22\x20is\x20ambiguous\x20(ids:\x20','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','find','tenant','push','Disambiguate\x20with\x20--role\x20<id>.','Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs','string','368452Ddxbqz','Missing\x20user\x20reference.','Cannot\x20change\x20the\x20permission\x20matrix\x20of\x20built-in\x20role\x20','toLowerCase','findIndex','remark','4CCBSDc','Role\x20name','user-add','number','User\x20','length','name','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.','Role\x20id\x20','2sQpMYJ','str','/smartapi/permit/user-role/update-user-list','Role\x20name\x20\x22','totalCount','8NCWdFb','tenant_code','Role\x20id\x20(from\x20`role\x20list`)','Multiple\x20tenant\x20members\x20match\x20\x22','flagMissing','2219538PvCjAC','5jhUCEW','roleType','Anti-drift\x20check\x20failed:\x20expected\x20','\x20not\x20found\x20in\x20app\x20','\x22:\x20','USER','Pass\x20--role\x20<id|name>.','DEV','userList','\x20not\x20found\x20in\x20the\x20user-role\x20list.','permitCount','expect-user-count','CUSTOM','trim','1170763MyBJkG','expectUserCount','211164dEzRbU','authRequired','No\x20tenant\x20member\x20matches\x20\x22','POST','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.','join','role','ADMIN','filter','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','Role\x20id\x20or\x20role\x20name\x20(CUSTOM\x20roles\x20may\x20be\x20referenced\x20by\x20name)','24HVfFWi','4029795mJbbTS','test','roleName','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','Optional\x20role\x20remark/description','includes','flag','DEV\x20/\x20ADMIN\x20keep\x20full\x20access\x20by\x20design;\x20configure\x20a\x20CUSTOM\x20role\x20instead.','userId','839280YxKYIG',';\x20no\x20change.','nickname'];a149_0x3565=function(){return _0x260b40;};return a149_0x3565();}import{getSessionUserInfo}from'../../auth/get-session-user.js';function a149_0x5399(_0x2dc684,_0x2e137c){_0x2dc684=_0x2dc684-0x152;const _0x35658b=a149_0x3565();let _0x539976=_0x35658b[_0x2dc684];return _0x539976;}import{CliErrors}from'../../errors.js';export const ROLE_ID_FLAG={'name':'id','type':a149_0xe101ee(0x17b),'required':!![],'description':a149_0xe101ee(0x188)};export const ROLE_REF_FLAG={'name':a149_0xe101ee(0x1a2),'type':a149_0xe101ee(0x171),'required':!![],'description':a149_0xe101ee(0x153)};export const USER_REF_FLAG={'name':'user','type':a149_0xe101ee(0x171),'required':!![],'description':'User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId'};export const NAME_FLAG={'name':'name','type':a149_0xe101ee(0x171),'required':!![],'description':a149_0xe101ee(0x179)};export const USER_NAME_FLAG={'name':a149_0xe101ee(0x17e),'type':a149_0xe101ee(0x171),'required':!![],'description':a149_0xe101ee(0x152)};export const REMARK_FLAG={'name':a149_0xe101ee(0x177),'type':a149_0xe101ee(0x171),'required':![],'description':a149_0xe101ee(0x159)};export const EXPECT_USER_COUNT_FLAG={'name':a149_0xe101ee(0x197),'type':a149_0xe101ee(0x17b),'required':![],'description':a149_0xe101ee(0x170)};export const BUILTIN_ROLE_TYPES=[a149_0xe101ee(0x1a3),a149_0xe101ee(0x193),a149_0xe101ee(0x191)];export function isBuiltinRole(_0x2fd30c){const _0x271e2b=a149_0xe101ee;return BUILTIN_ROLE_TYPES[_0x271e2b(0x15a)](_0x2fd30c);}export function assertCustomRole(_0x41ec41,_0x5a7f9f){const _0x279faa=a149_0xe101ee;if(_0x41ec41[_0x279faa(0x18d)]!==_0x279faa(0x198))throw CliErrors[_0x279faa(0x162)]('Cannot\x20'+_0x5a7f9f+'\x20built-in\x20role\x20'+_0x41ec41['roleName']+'\x20('+_0x41ec41['roleType']+').',_0x279faa(0x16b));}export function assertPermConfigurable(_0x2c7a11){const _0x4f3bac=a149_0xe101ee;if(_0x2c7a11[_0x4f3bac(0x18d)]===_0x4f3bac(0x193)||_0x2c7a11[_0x4f3bac(0x18d)]==='ADMIN')throw CliErrors[_0x4f3bac(0x162)](_0x4f3bac(0x174)+_0x2c7a11[_0x4f3bac(0x157)]+'\x20('+_0x2c7a11[_0x4f3bac(0x18d)]+').',_0x4f3bac(0x15c));}export function projectRole(_0xf0aeaa){const _0x259e22=a149_0xe101ee;return{'id':_0xf0aeaa['id'],'roleName':_0xf0aeaa[_0x259e22(0x157)],'roleType':_0xf0aeaa[_0x259e22(0x18d)],'remark':_0xf0aeaa['remark'],'userCount':_0xf0aeaa['userCount'],'permitCount':_0xf0aeaa[_0x259e22(0x196)],'builtin':isBuiltinRole(_0xf0aeaa[_0x259e22(0x18d)])};}export async function resolveRoleRef(_0x4c4ccc,_0x51ba8b){const _0x25e5a9=a149_0xe101ee,_0x2e529d=_0x51ba8b[_0x25e5a9(0x199)]();if(!_0x2e529d)throw CliErrors[_0x25e5a9(0x162)]('Missing\x20role\x20reference.',_0x25e5a9(0x192));if(/^\d+$/[_0x25e5a9(0x156)](_0x2e529d))return getRoleById(_0x4c4ccc,Number(_0x2e529d));const _0x59c866=await listAllAppRoles(_0x4c4ccc),_0x328394=_0x59c866[_0x25e5a9(0x1a4)](_0x3782a9=>_0x3782a9[_0x25e5a9(0x157)]===_0x2e529d);if(_0x328394[_0x25e5a9(0x17d)]===0x0)throw CliErrors[_0x25e5a9(0x162)](_0x25e5a9(0x184)+_0x2e529d+_0x25e5a9(0x163)+_0x4c4ccc+'.',_0x25e5a9(0x1a0));if(_0x328394[_0x25e5a9(0x17d)]>0x1){const _0x3de985=_0x328394['map'](_0x265243=>_0x265243['id'])[_0x25e5a9(0x1a1)](',\x20');throw CliErrors[_0x25e5a9(0x162)]('Role\x20name\x20\x22'+_0x2e529d+_0x25e5a9(0x16a)+_0x3de985+').',_0x25e5a9(0x16f));}return _0x328394[0x0];}export async function getRoleById(_0x1bf272,_0x222aa5){const _0x10b292=a149_0xe101ee,_0x1942b2=await getAppRole(_0x222aa5);if(!_0x1942b2)throw CliErrors['validation'](_0x10b292(0x180)+_0x222aa5+_0x10b292(0x18f)+_0x1bf272+'.',_0x10b292(0x17f));return _0x1942b2;}async function listAllAppRoles(_0x96335e){const _0x4d70b9=a149_0xe101ee,_0x2447ce=0x64,_0x5638d2=[];for(let _0x28f639=0x1;;_0x28f639+=0x1){const {items:_0x5c5af6,paging:_0x2da7d0}=await listAppRoles(_0x96335e,{'currentPage':_0x28f639,'pageSize':_0x2447ce});_0x5638d2[_0x4d70b9(0x16e)](..._0x5c5af6);if(_0x5c5af6[_0x4d70b9(0x17d)]<_0x2447ce||_0x2da7d0&&_0x5638d2[_0x4d70b9(0x17d)]>=_0x2da7d0[_0x4d70b9(0x185)])return _0x5638d2;}}export async function resolveTenantCode(){const _0x1ffeef=a149_0xe101ee,_0x287963=await getSessionUserInfo(),_0x2a3a6b=_0x287963?.[_0x1ffeef(0x166)]?.[_0x1ffeef(0x16d)]?.[_0x1ffeef(0x187)];if(!_0x2a3a6b)throw CliErrors[_0x1ffeef(0x19d)]('Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.');return _0x2a3a6b;}function matchMember(_0x3157d0,_0x5da904){const _0x57cb50=a149_0xe101ee,_0x23d7be=_0x5da904['trim']()[_0x57cb50(0x175)]();return(_0x3157d0[_0x57cb50(0x160)]??'')[_0x57cb50(0x175)]()===_0x23d7be||(_0x3157d0[_0x57cb50(0x161)]??'')[_0x57cb50(0x175)]()===_0x23d7be;}export async function resolveUserRef(_0x23c697){const _0x56a29b=a149_0xe101ee,_0x5b3335=_0x23c697[_0x56a29b(0x199)]();if(!_0x5b3335)throw CliErrors[_0x56a29b(0x162)](_0x56a29b(0x173),_0x56a29b(0x164));const _0x43a6bd=await resolveTenantCode(),_0xe88d23=await getTenantMembers(_0x43a6bd);if(/^\d+$/[_0x56a29b(0x156)](_0x5b3335)){const _0x209c37=Number(_0x5b3335),_0x590c2d=_0xe88d23[_0x56a29b(0x16c)](_0x24e3bc=>_0x24e3bc[_0x56a29b(0x15d)]===_0x209c37);return{'userId':_0x209c37,'username':_0x590c2d?.[_0x56a29b(0x161)]??String(_0x209c37),'nickname':_0x590c2d?.[_0x56a29b(0x160)],'matchedBy':'id'};}const _0x4ac867=_0xe88d23[_0x56a29b(0x1a4)](_0x35f863=>matchMember(_0x35f863,_0x5b3335));if(_0x4ac867[_0x56a29b(0x17d)]===0x0)throw CliErrors[_0x56a29b(0x162)](_0x56a29b(0x19e)+_0x5b3335+'\x22.',_0x56a29b(0x168));if(_0x4ac867[_0x56a29b(0x17d)]>0x1){const _0x1adf1b=_0x4ac867[_0x56a29b(0x169)](_0x47194d=>(_0x47194d['nickname']??_0x47194d[_0x56a29b(0x161)]??'?')+'('+_0x47194d[_0x56a29b(0x15d)]+')')[_0x56a29b(0x1a1)](',\x20');throw CliErrors[_0x56a29b(0x162)](_0x56a29b(0x189)+_0x5b3335+_0x56a29b(0x190)+_0x1adf1b+'.','Disambiguate\x20with\x20--user\x20<id>.');}const _0x1ff428=_0x4ac867[0x0];return{'userId':_0x1ff428[_0x56a29b(0x15d)],'username':_0x1ff428[_0x56a29b(0x161)]??String(_0x1ff428[_0x56a29b(0x15d)]),'nickname':_0x1ff428[_0x56a29b(0x160)],'matchedBy':_0x56a29b(0x17e)};}export const UPDATE_USER_LIST_PATH=a149_0xe101ee(0x183);function userIdsOf(_0x2c36a1){const _0x5a9de7=a149_0xe101ee;return(_0x2c36a1?.[_0x5a9de7(0x194)]??[])[_0x5a9de7(0x169)](_0x232334=>_0x232334[_0x5a9de7(0x15d)]);}export function computeRoleUserMutation(_0x46cd0f){const _0xc92a8d=a149_0xe101ee,{operation:_0x19bafe,appCode:_0x410608,roleUsers:_0x37a65e,targetRoleId:_0x546813,user:_0x32e799}=_0x46cd0f,_0x546e16=_0x37a65e['find'](_0x57d25d=>_0x57d25d['id']===_0x546813);if(!_0x546e16)throw CliErrors[_0xc92a8d(0x162)](_0xc92a8d(0x180)+_0x546813+_0xc92a8d(0x195),'Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.');const _0x58cb13=userIdsOf(_0x546e16),_0xdd261d=[];if(_0x46cd0f[_0xc92a8d(0x19b)]!==undefined&&_0x46cd0f['expectUserCount']!==_0x58cb13['length'])throw CliErrors[_0xc92a8d(0x162)](_0xc92a8d(0x18e)+_0x46cd0f[_0xc92a8d(0x19b)]+'\x20member(s)\x20but\x20role\x20has\x20'+_0x58cb13[_0xc92a8d(0x17d)]+'.',_0xc92a8d(0x158));const _0x437844=_0x58cb13[_0xc92a8d(0x15a)](_0x32e799[_0xc92a8d(0x15d)]);let _0x5bae7=![];const _0x276d99=[..._0x546e16[_0xc92a8d(0x194)]];if(_0x19bafe===_0xc92a8d(0x17a))_0x437844?_0xdd261d['push']('User\x20'+_0x32e799[_0xc92a8d(0x15d)]+'\x20is\x20already\x20a\x20member\x20of\x20role\x20'+_0x546e16[_0xc92a8d(0x157)]+_0xc92a8d(0x15f)):(_0x276d99['push']({'userId':_0x32e799[_0xc92a8d(0x15d)],'username':_0x32e799['username'],..._0x32e799[_0xc92a8d(0x160)]?{'nickname':_0x32e799['nickname']}:{}}),_0x5bae7=!![]);else{if(!_0x437844)_0xdd261d[_0xc92a8d(0x16e)](_0xc92a8d(0x17c)+_0x32e799['userId']+'\x20is\x20not\x20a\x20member\x20of\x20role\x20'+_0x546e16[_0xc92a8d(0x157)]+_0xc92a8d(0x15f));else{const _0x54dd60=_0x276d99[_0xc92a8d(0x176)](_0x204c6b=>_0x204c6b[_0xc92a8d(0x15d)]===_0x32e799[_0xc92a8d(0x15d)]);if(_0x54dd60>=0x0)_0x276d99['splice'](_0x54dd60,0x1);_0x5bae7=!![];}}const _0x14bad1=_0x37a65e[_0xc92a8d(0x169)](_0x221f0b=>_0x221f0b['id']===_0x546813?{..._0x221f0b,'userList':_0x276d99}:_0x221f0b),_0x1eef6a=_0x276d99[_0xc92a8d(0x169)](_0x3dd19b=>_0x3dd19b[_0xc92a8d(0x15d)]),_0x4a7dd8={'operation':_0x19bafe,'selector':{'appCode':_0x410608,'roleId':_0x546813,'roleName':_0x546e16[_0xc92a8d(0x157)],'userId':_0x32e799[_0xc92a8d(0x15d)]},'before':{'userIds':_0x58cb13},'after':{'userIds':_0x1eef6a},'dryRun':_0x46cd0f['dryRun'],'backend':{'method':_0xc92a8d(0x19f),'path':UPDATE_USER_LIST_PATH},'warnings':_0xdd261d};return{'roleList':_0x14bad1,'mutation':_0x4a7dd8,'changed':_0x5bae7};}export async function loadRoleUsers(_0x5f051c){return listRoleUsers(_0x5f051c);}export function readRoleRef(_0x5f41b5){const _0x88ef79=a149_0xe101ee,_0x31d7cb=_0x5f41b5[_0x88ef79(0x182)](_0x88ef79(0x1a2))[_0x88ef79(0x199)]();if(!_0x31d7cb)throw CliErrors['flagMissing']('role',_0x88ef79(0x192));return _0x31d7cb;}export async function prepareUserMutation(_0x4361ef,_0x3dd1dd,_0x42a023){const _0x32b668=a149_0xe101ee,_0x36db1e=readRoleRef(_0x4361ef),_0x2b2c02=_0x4361ef[_0x32b668(0x182)]('user')[_0x32b668(0x199)]();if(!_0x2b2c02)throw CliErrors[_0x32b668(0x18a)]('user',_0x32b668(0x164));const _0x579f57=_0x4361ef[_0x32b668(0x15b)](_0x32b668(0x197)),_0x23dbbc=_0x579f57===undefined||_0x579f57===null?undefined:Number(_0x579f57),_0x4f6c67=await resolveRoleRef(_0x4361ef['appCode'],_0x36db1e),_0x4082ee=await resolveUserRef(_0x2b2c02),_0x2b6bfe=await loadRoleUsers(_0x4361ef['appCode']);return computeRoleUserMutation({'operation':_0x3dd1dd,'appCode':_0x4361ef[_0x32b668(0x165)],'roleUsers':_0x2b6bfe,'targetRoleId':_0x4f6c67['id'],'user':{'userId':_0x4082ee[_0x32b668(0x15d)],'username':_0x4082ee[_0x32b668(0x161)],'nickname':_0x4082ee['nickname']},'dryRun':_0x42a023,..._0x23dbbc!==undefined?{'expectUserCount':_0x23dbbc}:{}});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a150_0x294369=a150_0x22c6;function a150_0xe19d(){const _0x37452f=['/smartapi/permit/role/update','length','4NGlYAz','203695izfveL','num','686916tmrqGX','7005160hrEfFE','1305621KDAzoI','flag','4GRIFqR','New\x20role\x20name','remark','write','38176BoGHnG','update','3564966lcKiCw','91lUgmAh','--name\x20cannot\x20be\x20empty.','\x20(id=','roleName','trim','string','Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.','POST','appCode','1724860LmtrmP','name','Role\x20name\x20cannot\x20exceed\x2064\x20characters.','Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(DEV/ADMIN\x20rejected)','validation'];a150_0xe19d=function(){return _0x37452f;};return a150_0xe19d();}(function(_0x914ce4,_0x4e9238){const _0x469e47=a150_0x22c6,_0x310189=_0x914ce4();while(!![]){try{const _0x36b23f=-parseInt(_0x469e47(0x17e))/0x1*(-parseInt(_0x469e47(0x17d))/0x2)+-parseInt(_0x469e47(0x182))/0x3+parseInt(_0x469e47(0x184))/0x4*(parseInt(_0x469e47(0x194))/0x5)+-parseInt(_0x469e47(0x18a))/0x6+parseInt(_0x469e47(0x18b))/0x7*(parseInt(_0x469e47(0x188))/0x8)+-parseInt(_0x469e47(0x180))/0x9+parseInt(_0x469e47(0x181))/0xa;if(_0x36b23f===_0x4e9238)break;else _0x310189['push'](_0x310189['shift']());}catch(_0x259365){_0x310189['push'](_0x310189['shift']());}}}(a150_0xe19d,0x63e86));import{updateAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,REMARK_FLAG,ROLE_ID_FLAG}from'../../commands/role/shared.js';const UPDATE_PATH=a150_0x294369(0x17b);function readPatch(_0x8a4677){const _0x389f82=a150_0x294369,_0x356975=_0x8a4677['flag'](_0x389f82(0x177)),_0x46011d=_0x8a4677[_0x389f82(0x183)](_0x389f82(0x186)),_0x5a8bb5={};if(_0x356975!==undefined&&_0x356975!==null){const _0x3113d6=String(_0x356975)[_0x389f82(0x18f)]();if(!_0x3113d6)throw CliErrors['validation'](_0x389f82(0x18c));if(_0x3113d6[_0x389f82(0x17c)]>0x40)throw CliErrors[_0x389f82(0x17a)](_0x389f82(0x178));_0x5a8bb5[_0x389f82(0x18e)]=_0x3113d6;}_0x46011d!==undefined&&_0x46011d!==null&&(_0x5a8bb5[_0x389f82(0x186)]=String(_0x46011d));if(_0x5a8bb5['roleName']===undefined&&_0x5a8bb5[_0x389f82(0x186)]===undefined)throw CliErrors[_0x389f82(0x17a)]('Nothing\x20to\x20update.',_0x389f82(0x191));return _0x5a8bb5;}function a150_0x22c6(_0x1d078f,_0x4c30c7){_0x1d078f=_0x1d078f-0x177;const _0xe19dc1=a150_0xe19d();let _0x22c6a6=_0xe19dc1[_0x1d078f];return _0x22c6a6;}export const roleUpdate={'service':'role','command':a150_0x294369(0x189),'description':a150_0x294369(0x179),'risk':a150_0x294369(0x187),'flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':a150_0x294369(0x177),'type':a150_0x294369(0x190),'required':![],'description':a150_0x294369(0x185)},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4512b4){readPatch(_0x4512b4);},async 'dryRun'(_0x81f921){const _0x455dff=a150_0x294369,_0x33ad5b=_0x81f921[_0x455dff(0x17f)]('id'),_0x1a3b24=readPatch(_0x81f921),_0x677589=await getRoleById(_0x81f921[_0x455dff(0x193)],_0x33ad5b);return assertCustomRole(_0x677589,_0x455dff(0x189)),asDryRunResult({'operation':_0x455dff(0x189),'selector':{'appCode':_0x81f921[_0x455dff(0x193)],'roleId':_0x33ad5b,'roleName':_0x677589['roleName']},'before':projectRole(_0x677589),'after':projectRole({..._0x677589,..._0x1a3b24[_0x455dff(0x18e)]!==undefined?{'roleName':_0x1a3b24[_0x455dff(0x18e)]}:{},..._0x1a3b24[_0x455dff(0x186)]!==undefined?{'remark':_0x1a3b24['remark']}:{}}),'dryRun':!![],'backend':{'method':_0x455dff(0x192),'path':UPDATE_PATH},'warnings':[]},{'method':_0x455dff(0x192),'url':UPDATE_PATH});},async 'execute'(_0x45a2db){const _0x380cf6=a150_0x294369,_0x10e5a3=_0x45a2db[_0x380cf6(0x17f)]('id'),_0x212387=readPatch(_0x45a2db),_0x2a67bc=await getRoleById(_0x45a2db[_0x380cf6(0x193)],_0x10e5a3);assertCustomRole(_0x2a67bc,_0x380cf6(0x189)),await updateAppRole({'id':_0x10e5a3,'appCode':_0x45a2db[_0x380cf6(0x193)],..._0x212387[_0x380cf6(0x18e)]!==undefined?{'roleName':_0x212387[_0x380cf6(0x18e)]}:{},..._0x212387[_0x380cf6(0x186)]!==undefined?{'remark':_0x212387[_0x380cf6(0x186)]}:{}});const _0x1802c7=await getRoleById(_0x45a2db['appCode'],_0x10e5a3);return{'ok':!![],'data':{'operation':_0x380cf6(0x189),'selector':{'appCode':_0x45a2db[_0x380cf6(0x193)],'roleId':_0x10e5a3,'roleName':_0x1802c7[_0x380cf6(0x18e)]},'before':projectRole(_0x2a67bc),'after':projectRole(_0x1802c7),'dryRun':![],'backend':{'method':'POST','path':UPDATE_PATH},'warnings':[]},'message':'Updated\x20role\x20'+_0x1802c7['roleName']+_0x380cf6(0x18d)+_0x10e5a3+')'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a151_0x4617b6=a151_0x5cbe;(function(_0x1ced66,_0x511f59){const _0x36e0a7=a151_0x5cbe,_0x3f269e=_0x1ced66();while(!![]){try{const _0x15dcf8=parseInt(_0x36e0a7(0x83))/0x1*(parseInt(_0x36e0a7(0x7d))/0x2)+parseInt(_0x36e0a7(0x88))/0x3+parseInt(_0x36e0a7(0x8f))/0x4*(-parseInt(_0x36e0a7(0x87))/0x5)+parseInt(_0x36e0a7(0x80))/0x6*(parseInt(_0x36e0a7(0x85))/0x7)+-parseInt(_0x36e0a7(0x7e))/0x8*(parseInt(_0x36e0a7(0x81))/0x9)+parseInt(_0x36e0a7(0x89))/0xa+-parseInt(_0x36e0a7(0x8d))/0xb;if(_0x15dcf8===_0x511f59)break;else _0x3f269e['push'](_0x3f269e['shift']());}catch(_0x1016a1){_0x3f269e['push'](_0x3f269e['shift']());}}}(a151_0x2070,0xc28c9));import{updateRoleUsers}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{EXPECT_USER_COUNT_FLAG,prepareUserMutation,ROLE_REF_FLAG,UPDATE_USER_LIST_PATH,USER_REF_FLAG}from'../../commands/role/shared.js';function a151_0x5cbe(_0x247b4a,_0xdd75bb){_0x247b4a=_0x247b4a-0x7c;const _0x207084=a151_0x2070();let _0x5cbe5d=_0x207084[_0x247b4a];return _0x5cbe5d;}export const roleUserAdd={'service':a151_0x4617b6(0x82),'command':a151_0x4617b6(0x84),'description':a151_0x4617b6(0x86),'risk':'high-risk-write','flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x23e009){const _0x167fe3=a151_0x4617b6,{mutation:_0x29f111}=await prepareUserMutation(_0x23e009,_0x167fe3(0x84),!![]);return asDryRunResult(_0x29f111,{'method':'POST','url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x53b95c){const _0x5528c1=a151_0x4617b6,{roleList:_0x3896af,mutation:_0x2f89a3,changed:_0x450bb4}=await prepareUserMutation(_0x53b95c,_0x5528c1(0x84),![]);return _0x450bb4&&await updateRoleUsers(_0x53b95c[_0x5528c1(0x8e)],_0x3896af),{'ok':!![],'data':_0x2f89a3,'message':_0x450bb4?'Added\x20user\x20'+_0x2f89a3[_0x5528c1(0x7c)][_0x5528c1(0x8a)]+'\x20to\x20role\x20'+_0x2f89a3[_0x5528c1(0x7c)][_0x5528c1(0x7f)]:_0x5528c1(0x8b)+_0x2f89a3['selector'][_0x5528c1(0x8a)]+_0x5528c1(0x8c)+_0x2f89a3[_0x5528c1(0x7c)][_0x5528c1(0x7f)]};}};function a151_0x2070(){const _0x1f1a77=['1636953NRmbFD','7357550JyoDOh','userId','No\x20change:\x20user\x20','\x20already\x20in\x20role\x20','2676190cmFuWo','appCode','5670388wqAmVl','selector','2FhCigx','16UUdakD','roleName','2331156MKVaeH','5935023xIvcVM','role','941144LDwaxt','user-add','28ShovOy','Add\x20a\x20user\x20to\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','5ywObya'];a151_0x2070=function(){return _0x1f1a77;};return a151_0x2070();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a152_0x3b1580=a152_0x3c92;(function(_0x2002ef,_0x179b88){const _0x80294=a152_0x3c92,_0x92143e=_0x2002ef();while(!![]){try{const _0x18b0b3=-parseInt(_0x80294(0x10d))/0x1+-parseInt(_0x80294(0x114))/0x2+parseInt(_0x80294(0x11c))/0x3*(parseInt(_0x80294(0x115))/0x4)+-parseInt(_0x80294(0x10a))/0x5*(parseInt(_0x80294(0x118))/0x6)+parseInt(_0x80294(0x110))/0x7+parseInt(_0x80294(0x11d))/0x8*(-parseInt(_0x80294(0x113))/0x9)+parseInt(_0x80294(0x109))/0xa;if(_0x18b0b3===_0x179b88)break;else _0x92143e['push'](_0x92143e['shift']());}catch(_0x66e909){_0x92143e['push'](_0x92143e['shift']());}}}(a152_0x23cd,0x6e406));import{updateRoleUsers}from'../../core/api-client.js';function a152_0x23cd(){const _0x3c27fe=['user-remove','No\x20change:\x20user\x20','7011EMXnHv','58770aSuRDp','669280ONfRUr','selector','Remove\x20a\x20user\x20from\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','1012074gezYZq','high-risk-write','\x20from\x20role\x20','userId','6rSzrHH','2504BaNgAo','appCode','6985580aQjbvn','15bkUaWn','role','\x20not\x20in\x20role\x20','513535rFXyea','Removed\x20user\x20','POST','4978232XSpzNo'];a152_0x23cd=function(){return _0x3c27fe;};return a152_0x23cd();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';function a152_0x3c92(_0x374f49,_0x26a066){_0x374f49=_0x374f49-0x109;const _0x23cdc7=a152_0x23cd();let _0x3c929b=_0x23cdc7[_0x374f49];return _0x3c929b;}import{EXPECT_USER_COUNT_FLAG,prepareUserMutation,ROLE_REF_FLAG,UPDATE_USER_LIST_PATH,USER_REF_FLAG}from'../../commands/role/shared.js';export const roleUserRemove={'service':a152_0x3b1580(0x10b),'command':a152_0x3b1580(0x111),'description':a152_0x3b1580(0x117),'risk':a152_0x3b1580(0x119),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x3f1aa7){const _0x523416=a152_0x3b1580,{mutation:_0x2a19cb}=await prepareUserMutation(_0x3f1aa7,_0x523416(0x111),!![]);return asDryRunResult(_0x2a19cb,{'method':_0x523416(0x10f),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x4d0ed9){const _0x27d4e1=a152_0x3b1580,{roleList:_0x525a58,mutation:_0x3ad4c0,changed:_0x228f49}=await prepareUserMutation(_0x4d0ed9,_0x27d4e1(0x111),![]);return _0x228f49&&await updateRoleUsers(_0x4d0ed9[_0x27d4e1(0x11e)],_0x525a58),{'ok':!![],'data':_0x3ad4c0,'message':_0x228f49?_0x27d4e1(0x10e)+_0x3ad4c0[_0x27d4e1(0x116)][_0x27d4e1(0x11b)]+_0x27d4e1(0x11a)+_0x3ad4c0[_0x27d4e1(0x116)]['roleName']:_0x27d4e1(0x112)+_0x3ad4c0[_0x27d4e1(0x116)][_0x27d4e1(0x11b)]+_0x27d4e1(0x10c)+_0x3ad4c0[_0x27d4e1(0x116)]['roleName']};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a153_0x133d5b=a153_0x53e1;(function(_0x555720,_0x20afa0){const _0x330824=a153_0x53e1,_0xebbc6a=_0x555720();while(!![]){try{const _0x3583fa=parseInt(_0x330824(0x73))/0x1+-parseInt(_0x330824(0x7a))/0x2*(-parseInt(_0x330824(0x76))/0x3)+-parseInt(_0x330824(0x74))/0x4+-parseInt(_0x330824(0x6d))/0x5+-parseInt(_0x330824(0x72))/0x6+-parseInt(_0x330824(0x6f))/0x7+parseInt(_0x330824(0x78))/0x8*(parseInt(_0x330824(0x7d))/0x9);if(_0x3583fa===_0x20afa0)break;else _0xebbc6a['push'](_0xebbc6a['shift']());}catch(_0x486dff){_0xebbc6a['push'](_0xebbc6a['shift']());}}}(a153_0x5c3e,0xbf848));function a153_0x53e1(_0x3f25e1,_0x40666d){_0x3f25e1=_0x3f25e1-0x6d;const _0x5c3eeb=a153_0x5c3e();let _0x53e1a8=_0x5c3eeb[_0x3f25e1];return _0x53e1a8;}import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{resolveUserRef,USER_NAME_FLAG}from'../../commands/role/shared.js';function a153_0x5c3e(){const _0x591905=['6593083SkeHdv','nickname','name','4655838xeAUmY','266946KWtZJw','1782952rnpWig','Resolved\x20\x22','650097cDJpXE','str','4776AKsyOT','user-resolve','2MVfiQB','username','\x22\x20→\x20userId\x20','40131AsFtMV','988160xDHGsZ','trim'];a153_0x5c3e=function(){return _0x591905;};return a153_0x5c3e();}export const roleUserResolve={'service':'role','command':a153_0x133d5b(0x79),'description':'Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','risk':'read','flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x5ae0bb){const _0x17efd7=a153_0x133d5b;if(!_0x5ae0bb[_0x17efd7(0x77)](_0x17efd7(0x71))[_0x17efd7(0x6e)]())throw CliErrors['flagMissing'](_0x17efd7(0x71),'Pass\x20--name\x20<nickname|username>.');},async 'execute'(_0x120509){const _0x4e2220=a153_0x133d5b,_0x202f13=_0x120509[_0x4e2220(0x77)](_0x4e2220(0x71))[_0x4e2220(0x6e)](),_0x35c352=await resolveUserRef(_0x202f13);return{'ok':!![],'data':{'user':{'userId':_0x35c352['userId'],'username':_0x35c352[_0x4e2220(0x7b)],'nickname':_0x35c352[_0x4e2220(0x70)],'matchedBy':_0x35c352['matchedBy']}},'message':_0x4e2220(0x75)+_0x202f13+_0x4e2220(0x7c)+_0x35c352['userId']};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a154_0x5500(){const _0x202bba=['bool','join','read','inherit','99DkmImp','--watch','2738664CLpdzB','\x20run\x20preview\x20--watch','watch','\x20\x20\x20\x20','package.json','5778HwjTAV','760549ykicDs','bun','Script\x20\x22','dev','\x22\x20not\x20found\x20in\x20package.json.','93027xpJqVa','221976MnQyRy','\x20run\x20preview','Run\x20a\x20package.json\x20script','preview','validation','has','vite','yarn','length','\x20run\x20start','\x20run\x20','.bin','node_modules','parse','start','script','error','args','\x0a\x20\x20Usage:\x20','needsUpgrade','bun.lock','close','push','yarn.lock','utf-8','23073680fCTdTo','log','4553276gGtcvM','keys','3470ChBBGa','slice','run','\x20run\x20<script>\x0a','belowMinimum','vite\x20build\x20--watch\x20exited\x20with\x20code\x20','cwd','\x20exited\x20with\x20code\x20','\x0a\x20\x20Available\x20scripts:\x0a','pnpm-lock.yaml','18SfubqM','No\x20package.json\x20found\x20in\x20current\x20directory.'];a154_0x5500=function(){return _0x202bba;};return a154_0x5500();}const a154_0x27de73=a154_0x5a7e;(function(_0x2dbab4,_0x53dc08){const _0x1da7a7=a154_0x5a7e,_0xd59ae1=_0x2dbab4();while(!![]){try{const _0x39cddc=parseInt(_0x1da7a7(0x122))/0x1+parseInt(_0x1da7a7(0x14f))/0x2*(parseInt(_0x1da7a7(0x127))/0x3)+parseInt(_0x1da7a7(0x157))/0x4+parseInt(_0x1da7a7(0x145))/0x5*(parseInt(_0x1da7a7(0x121))/0x6)+parseInt(_0x1da7a7(0x143))/0x7+-parseInt(_0x1da7a7(0x128))/0x8*(parseInt(_0x1da7a7(0x155))/0x9)+-parseInt(_0x1da7a7(0x141))/0xa;if(_0x39cddc===_0x53dc08)break;else _0xd59ae1['push'](_0xd59ae1['shift']());}catch(_0x191250){_0xd59ae1['push'](_0xd59ae1['shift']());}}}(a154_0x5500,0x691a5));import{readFileSync,existsSync}from'node:fs';import{CLI_BIN_NAME}from'../../constant/cli.js';import{resolve,delimiter,join}from'node:path';import{spawn}from'node:child_process';import{CliErrors}from'../../errors.js';import{checkSdkVersion,printSdkUpgradeWarning}from'../../utils/check-sdk-version.js';import{assertCliVersionSupported,checkCliVersion,printCliUpgradeWarning}from'../../utils/cli-version-check.js';const VERSION_CHECK_SCRIPTS=new Set([a154_0x27de73(0x136),a154_0x27de73(0x125)]);function readPackageScripts(_0x2f5703){const _0x3e5787=a154_0x27de73,_0x3efc2f=resolve(_0x2f5703,_0x3e5787(0x120));if(!existsSync(_0x3efc2f))return null;try{const _0x1d7f0d=JSON[_0x3e5787(0x135)](readFileSync(_0x3efc2f,_0x3e5787(0x140)));return _0x1d7f0d['scripts']??{};}catch{return null;}}function detectPackageManager(_0x9afdbf){const _0xf085ad=a154_0x27de73;if(existsSync(resolve(_0x9afdbf,'bun.lockb'))||existsSync(resolve(_0x9afdbf,_0xf085ad(0x13c))))return _0xf085ad(0x123);if(existsSync(resolve(_0x9afdbf,_0xf085ad(0x14e))))return'pnpm';if(existsSync(resolve(_0x9afdbf,_0xf085ad(0x13f))))return _0xf085ad(0x12f);return'npm';}async function versionCheck(_0x14ffeb){const _0x4c9b72=a154_0x27de73,_0xbb2096=await checkCliVersion();(_0xbb2096['needsUpgrade']||_0xbb2096[_0x4c9b72(0x149)])&&(printCliUpgradeWarning(_0xbb2096),assertCliVersionSupported(_0xbb2096));const _0x70aec0=await checkSdkVersion(_0x14ffeb);if(_0x70aec0[_0x4c9b72(0x13b)])printSdkUpgradeWarning(_0x70aec0);}function spawnScript(_0x581919,_0x4612a5,_0x155d3a,_0x21c173){return new Promise((_0x2d2350,_0x58500e)=>{const _0xea9d13=a154_0x5a7e,_0x28293a=[_0xea9d13(0x147),_0x4612a5,..._0x155d3a],_0x3376ea=spawn(_0x581919,_0x28293a,{'cwd':_0x21c173,'stdio':_0xea9d13(0x154),'shell':!![],'env':{...process.env,'PATH':''+join(_0x21c173,'node_modules',_0xea9d13(0x133))+delimiter+process.env.PATH}});_0x3376ea['on'](_0xea9d13(0x13d),_0x5b3db8=>{const _0x258c5b=_0xea9d13;if(_0x5b3db8===0x0||_0x5b3db8===null)_0x2d2350();else _0x58500e(new Error(_0x581919+_0x258c5b(0x132)+_0x4612a5+_0x258c5b(0x14c)+_0x5b3db8));}),_0x3376ea['on'](_0xea9d13(0x138),_0x58500e);});}function spawnViteBuildWatch(_0x1579f6){return new Promise((_0x8c5a9f,_0x4e5133)=>{const _0x49df38=a154_0x5a7e,_0x51a8a6=spawn('vite',['build',_0x49df38(0x156)],{'cwd':_0x1579f6,'stdio':_0x49df38(0x154),'shell':!![],'env':{...process.env,'PATH':''+join(_0x1579f6,'node_modules',_0x49df38(0x133))+delimiter+process.env.PATH}});_0x51a8a6['on'](_0x49df38(0x13d),_0x25aed4=>{const _0x21b21d=_0x49df38;if(_0x25aed4===0x0||_0x25aed4===null)_0x8c5a9f();else _0x4e5133(new Error(_0x21b21d(0x14a)+_0x25aed4));}),_0x51a8a6['on']('error',_0x4e5133);});}function spawnVitePreview(_0x4abb9a){return new Promise((_0x372f2e,_0x2af18a)=>{const _0x24bee8=a154_0x5a7e,_0x6a0c3=spawn(_0x24bee8(0x12e),[_0x24bee8(0x12b)],{'cwd':_0x4abb9a,'stdio':'inherit','shell':!![],'env':{...process.env,'PATH':''+join(_0x4abb9a,_0x24bee8(0x134),_0x24bee8(0x133))+delimiter+process.env.PATH}});_0x6a0c3['on'](_0x24bee8(0x13d),_0x19cd6c=>{if(_0x19cd6c===0x0||_0x19cd6c===null)_0x372f2e();else _0x2af18a(new Error('vite\x20preview\x20exited\x20with\x20code\x20'+_0x19cd6c));}),_0x6a0c3['on']('error',_0x2af18a);});}function a154_0x5a7e(_0x3f35e9,_0x4f987b){_0x3f35e9=_0x3f35e9-0x11f;const _0x55006a=a154_0x5500();let _0x5a7e2c=_0x55006a[_0x3f35e9];return _0x5a7e2c;}const runFlags=[{'name':a154_0x27de73(0x159),'type':'boolean','description':'Enable\x20watch\x20mode\x20for\x20preview','default':![]}];export const runDefinition={'service':a154_0x27de73(0x147),'command':'run','description':a154_0x27de73(0x12a),'risk':a154_0x27de73(0x153),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a154_0x27de73(0x137),'description':'Script\x20name\x20defined\x20in\x20package.json','required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x2f75f0=a154_0x27de73,_0x19636b=[];return _0x19636b[_0x2f75f0(0x13e)]('\x20\x20EXAMPLES'),_0x19636b['push']('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x2f75f0(0x131)),_0x19636b[_0x2f75f0(0x13e)](_0x2f75f0(0x11f)+CLI_BIN_NAME+'\x20run\x20build'),_0x19636b['push']('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x2f75f0(0x129)),_0x19636b[_0x2f75f0(0x13e)](_0x2f75f0(0x11f)+CLI_BIN_NAME+_0x2f75f0(0x158)),_0x19636b[_0x2f75f0(0x152)]('\x0a');},async 'execute'(_0x48c6ed){const _0x396b1e=a154_0x27de73,_0x42c375=process[_0x396b1e(0x14b)](),_0x53b21f=_0x48c6ed[_0x396b1e(0x139)][0x0],_0x786115=_0x48c6ed[_0x396b1e(0x139)][_0x396b1e(0x146)](0x1),_0x4af407=readPackageScripts(_0x42c375);if(!_0x4af407)throw CliErrors[_0x396b1e(0x12c)](_0x396b1e(0x150));if(!_0x53b21f){const _0x1f9bbc=Object[_0x396b1e(0x144)](_0x4af407);if(_0x1f9bbc[_0x396b1e(0x130)]===0x0)console[_0x396b1e(0x142)]('No\x20scripts\x20defined\x20in\x20package.json.');else{console['log'](_0x396b1e(0x14d));for(const _0x6267b1 of _0x1f9bbc){console[_0x396b1e(0x142)](_0x396b1e(0x11f)+_0x6267b1);}console[_0x396b1e(0x142)](_0x396b1e(0x13a)+CLI_BIN_NAME+_0x396b1e(0x148));}return{'ok':!![]};}if(!_0x4af407[_0x53b21f])throw CliErrors[_0x396b1e(0x12c)](_0x396b1e(0x124)+_0x53b21f+_0x396b1e(0x126),'Available:\x20'+(Object[_0x396b1e(0x144)](_0x4af407)[_0x396b1e(0x152)](',\x20')||'(none)'));const _0x3b2ce3=detectPackageManager(_0x42c375);VERSION_CHECK_SCRIPTS[_0x396b1e(0x12d)](_0x53b21f)&&await versionCheck(_0x42c375);if(_0x53b21f===_0x396b1e(0x12b)&&_0x48c6ed[_0x396b1e(0x151)](_0x396b1e(0x159)))return await Promise['all']([spawnViteBuildWatch(_0x42c375),spawnVitePreview(_0x42c375)]),{'ok':!![]};return await spawnScript(_0x3b2ce3,_0x53b21f,_0x786115,_0x42c375),{'ok':!![]};}};
|
package/lib/commands/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a155_0x5e86(){const _0x19b8a5=['18560twUOce','json','58412jERAgI','54936qcxbyZ','1230NkKHqV','7389yeAHrw','235448UUaMFw','5427576bumBJi','Export\x20machine-readable\x20command\x20schema\x20(JSON)','1838922kVBLCo','7nxlZCJ','export','40iILkXr','231WwCWtJ'];a155_0x5e86=function(){return _0x19b8a5;};return a155_0x5e86();}const a155_0x5be69f=a155_0x49fe;(function(_0x485d86,_0x23dcac){const _0x1e52f1=a155_0x49fe,_0x25d602=_0x485d86();while(!![]){try{const _0x74e532=-parseInt(_0x1e52f1(0x143))/0x1*(-parseInt(_0x1e52f1(0x149))/0x2)+-parseInt(_0x1e52f1(0x142))/0x3+-parseInt(_0x1e52f1(0x13f))/0x4*(-parseInt(_0x1e52f1(0x145))/0x5)+-parseInt(_0x1e52f1(0x14a))/0x6+-parseInt(_0x1e52f1(0x146))/0x7*(parseInt(_0x1e52f1(0x147))/0x8)+parseInt(_0x1e52f1(0x13e))/0x9*(-parseInt(_0x1e52f1(0x13d))/0xa)+parseInt(_0x1e52f1(0x140))/0xb;if(_0x74e532===_0x23dcac)break;else _0x25d602['push'](_0x25d602['shift']());}catch(_0x53f287){_0x25d602['push'](_0x25d602['shift']());}}}(a155_0x5e86,0x5a1b9));function a155_0x49fe(_0x36b46d,_0x136461){_0x36b46d=_0x36b46d-0x13d;const _0x5e8681=a155_0x5e86();let _0x49fec5=_0x5e8681[_0x36b46d];return _0x49fec5;}import{buildSchemaPayload}from'../framework/schema-export.js';async function execute(_0x28c3df){const _0x2e8c80=await buildSchemaPayload();return{'ok':!![],'data':_0x2e8c80};}export const schemaDefinition={'service':'schema','command':a155_0x5be69f(0x144),'description':a155_0x5be69f(0x141),'risk':'read','requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a155_0x5be69f(0x148),'flags':[],'execute':execute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a156_0x3c243a=a156_0x44f6;(function(_0x3d803e,_0x1dfefa){const _0x15c1ba=a156_0x44f6,_0x4c656e=_0x3d803e();while(!![]){try{const _0x4a7b4c=parseInt(_0x15c1ba(0x19f))/0x1*(parseInt(_0x15c1ba(0x1bf))/0x2)+parseInt(_0x15c1ba(0x1c3))/0x3+-parseInt(_0x15c1ba(0x1b3))/0x4*(-parseInt(_0x15c1ba(0x1b6))/0x5)+parseInt(_0x15c1ba(0x1a5))/0x6+parseInt(_0x15c1ba(0x1c4))/0x7*(parseInt(_0x15c1ba(0x1c9))/0x8)+-parseInt(_0x15c1ba(0x18a))/0x9+parseInt(_0x15c1ba(0x19c))/0xa*(-parseInt(_0x15c1ba(0x1cb))/0xb);if(_0x4a7b4c===_0x1dfefa)break;else _0x4c656e['push'](_0x4c656e['shift']());}catch(_0x4db87e){_0x4c656e['push'](_0x4c656e['shift']());}}}(a156_0x3555,0x43c6f));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(_0x3e5128){const _0x395d1e=a156_0x44f6;if(_0x3e5128===_0x395d1e(0x1ad))return[_0x395d1e(0x19d),_0x395d1e(0x189),_0x395d1e(0x1bb),''][_0x395d1e(0x1a4)]('\x0a');return[_0x395d1e(0x1b0),''][_0x395d1e(0x1a4)]('\x0a');}export const sqlCreate={'service':a156_0x3c243a(0x197),'command':'create','description':a156_0x3c243a(0x1be),'risk':a156_0x3c243a(0x198),'flags':[{'name':a156_0x3c243a(0x1bc),'type':a156_0x3c243a(0x1a0),'description':a156_0x3c243a(0x195)},{'name':a156_0x3c243a(0x190),'type':a156_0x3c243a(0x1b4),'description':a156_0x3c243a(0x19e)},{'name':a156_0x3c243a(0x184),'type':a156_0x3c243a(0x1a0),'enum':[a156_0x3c243a(0x197),a156_0x3c243a(0x1ad)],'description':a156_0x3c243a(0x1c0)}],async 'validate'(_0x1484ff){const _0xa1a7d8=a156_0x3c243a;if(!_0x1484ff[_0xa1a7d8(0x1b8)])return;if(!_0x1484ff[_0xa1a7d8(0x1c2)](_0xa1a7d8(0x1bc))[_0xa1a7d8(0x1c6)]())throw CliErrors['flagMissing'](_0xa1a7d8(0x1bc),_0xa1a7d8(0x191));const _0x503303=resolveProvidedDbId(_0x1484ff);if(typeof _0x503303!=='number'||!Number[_0xa1a7d8(0x1b5)](_0x503303)||_0x503303<=0x0)throw CliErrors[_0xa1a7d8(0x1b2)](_0xa1a7d8(0x190),_0xa1a7d8(0x183));if(!_0x1484ff[_0xa1a7d8(0x1c2)]('mode')['trim']())throw CliErrors[_0xa1a7d8(0x1b2)](_0xa1a7d8(0x184),_0xa1a7d8(0x192));},async 'dryRun'(_0x4ca986){const _0x53b5c7=a156_0x3c243a,_0x248bcf=loadSqlProjectConfig(_0x4ca986['appCode']),{sqlName:_0x50cc15,dbId:_0x346245,dbName:_0x1baaa3,mode:_0x5aa848}=await resolveSqlNewInputs(_0x4ca986),_0x4a253a=buildSqlRelativePath(_0x53b5c7(0x1b9),_0x50cc15,_0x1baaa3,_0x5aa848,_0x346245),_0x2f3977=_0x248bcf[_0x53b5c7(0x1b7)]+'/'+_0x4a253a;return{'method':_0x53b5c7(0x18e),'url':_0x53b5c7(0x1ca),'body':{'appCode':_0x4ca986['appCode'],'sqlName':_0x50cc15,'dbId':_0x346245,'mode':_0x5aa848,'localPath':_0x2f3977},'description':_0x53b5c7(0x19b)+_0x248bcf[_0x53b5c7(0x1b7)]};},async 'execute'(_0x5265dd){const _0x447481=a156_0x3c243a,_0x5d8a8b=loadSqlProjectConfig(_0x5265dd[_0x447481(0x1a2)]),{sqlName:_0xc68207,dbId:_0x2b69fa,dbName:_0x199301,mode:_0xb1c6b5}=await resolveSqlNewInputs(_0x5265dd),_0x161f13=generateSqlTemplate(_0xb1c6b5),_0x1cc766=await createSqlQuery({'appCode':_0x5265dd[_0x447481(0x1a2)],'sqlName':_0xc68207,'dbId':_0x2b69fa,'sqlContent':_0x161f13}),_0x4e4e3f=ensureRemoteSqlContent(_0x1cc766),_0x2dcfd6=_0x199301||await getDbName(_0x5265dd[_0x447481(0x1a2)],_0x2b69fa)[_0x447481(0x1b1)](()=>undefined),_0x45a7e4=buildSqlRelativePath(_0x1cc766[_0x447481(0x18b)],_0x1cc766[_0x447481(0x1a3)],_0x2dcfd6,_0xb1c6b5,_0x2b69fa),_0x4b3e27=_0x5d8a8b[_0x447481(0x1b7)]+'/'+_0x45a7e4,_0x440da0=buildLocalSqlFileContent({'sqlCode':_0x1cc766[_0x447481(0x18b)],'sqlName':_0x1cc766['sqlName'],'dbId':_0x1cc766[_0x447481(0x188)]},_0x4e4e3f,{'dbName':_0x2dcfd6,'mode':_0xb1c6b5,'syncedAt':new Date()[_0x447481(0x187)](),'description':_0x1cc766[_0x447481(0x1c1)]});if(await fileExists(_0x4b3e27))throw CliErrors[_0x447481(0x18d)](_0x447481(0x185)+_0x4b3e27);await ensureParentDirectory(_0x4b3e27),await writeFile(_0x4b3e27,_0x440da0,_0x447481(0x186));const _0x342c79=await readSqlLockFile(_0x5d8a8b['lockFilePath']),{lockData:_0x577ce8,appLock:_0x54e105}=ensureSqlLockScope(_0x342c79??createEmptySqlLock(),_0x5d8a8b[_0x447481(0x1a2)],_0x5d8a8b[_0x447481(0x18f)],_0x447481(0x1bd));return _0x54e105[_0x447481(0x1a1)][_0x1cc766[_0x447481(0x18b)]]={...buildSqlLockEntry(_0x1cc766,_0x4e4e3f,computeSqlContentHash(_0x440da0),{'dbName':_0x2dcfd6}),'path':_0x45a7e4,'mode':_0xb1c6b5},_0x54e105[_0x447481(0x1ae)]=new Date()[_0x447481(0x187)](),await writeSqlLockFile(_0x5d8a8b['lockFilePath'],_0x577ce8),{'ok':!![],'data':{'id':_0x1cc766['id'],'sqlCode':_0x1cc766[_0x447481(0x18b)],'sqlName':_0x1cc766['sqlName'],'dbId':_0x1cc766[_0x447481(0x188)],'path':_0x4b3e27,'mode':_0xb1c6b5},'message':_0x447481(0x1a6)+_0x1cc766['sqlCode']};}};function a156_0x44f6(_0x51cd2b,_0x10eacd){_0x51cd2b=_0x51cd2b-0x183;const _0x355535=a156_0x3555();let _0x44f6c1=_0x355535[_0x51cd2b];return _0x44f6c1;}async function resolveSqlNewInputs(_0x14b6c5){const _0x5af075=await resolveSqlNameInput(_0x14b6c5),{dbId:_0x2b871c,dbName:_0x480a37}=await resolveDbSelection(_0x14b6c5),_0x514ea2=await resolveSqlModeInput(_0x14b6c5);return{'sqlName':_0x5af075,'dbId':_0x2b871c,'dbName':_0x480a37,'mode':_0x514ea2};}async function resolveSqlNameInput(_0x33d5b3){const _0x249516=a156_0x3c243a,_0x510ca8=_0x33d5b3[_0x249516(0x1c2)](_0x249516(0x1bc))[_0x249516(0x1c6)]();if(_0x510ca8)return _0x510ca8;if(_0x33d5b3['nonInteractive'])throw CliErrors[_0x249516(0x1b2)](_0x249516(0x1bc),_0x249516(0x191));return(await input({'message':_0x249516(0x1aa),'validate':_0x1e9428=>_0x1e9428[_0x249516(0x1c6)]()?!![]:_0x249516(0x199)}))[_0x249516(0x1c6)]();}async function resolveDbSelection(_0x18a7ba){const _0x39b4cb=a156_0x3c243a,_0x59125d=resolveProvidedDbId(_0x18a7ba);if(typeof _0x59125d===_0x39b4cb(0x1b4)&&Number['isFinite'](_0x59125d)&&_0x59125d>0x0)return{'dbId':_0x59125d,'dbName':await getDbName(_0x18a7ba[_0x39b4cb(0x1a2)],_0x59125d)[_0x39b4cb(0x1b1)](()=>undefined)};if(_0x18a7ba[_0x39b4cb(0x1b8)])throw CliErrors['flagMissing'](_0x39b4cb(0x190),_0x39b4cb(0x183));const _0x170099=await listDatabases(_0x18a7ba[_0x39b4cb(0x1a2)])[_0x39b4cb(0x1b1)](()=>[]);if(_0x170099['length']===0x1)return{'dbId':_0x170099[0x0][_0x39b4cb(0x188)],'dbName':_0x170099[0x0]['dbName']};if(_0x170099['length']>0x1){const _0x5f557b=await select({'message':_0x39b4cb(0x1ba),'choices':[..._0x170099[_0x39b4cb(0x194)](_0x27cdc2=>({'name':_0x27cdc2[_0x39b4cb(0x196)]+'\x20('+_0x27cdc2['dbId']+')','value':serializeDbSelection(_0x27cdc2)})),{'name':_0x39b4cb(0x1ac),'value':_0x39b4cb(0x1c8)}]});if(_0x5f557b!==_0x39b4cb(0x1c8))return deserializeDbSelection(_0x5f557b);}const _0x2e0476=await input({'message':_0x39b4cb(0x1ab),'validate':_0x2f30b9=>{const _0x579df5=_0x39b4cb,_0xc89304=_0x2f30b9[_0x579df5(0x1c6)]();if(!_0xc89304)return _0x579df5(0x1a9);const _0x484949=Number(_0xc89304);if(!Number[_0x579df5(0x19a)](_0x484949)||_0x484949<=0x0)return _0x579df5(0x1af);return!![];}});return{'dbId':Number(_0x2e0476[_0x39b4cb(0x1c6)]())};}async function resolveSqlModeInput(_0x3a80af){const _0x443304=a156_0x3c243a,_0x196034=_0x3a80af[_0x443304(0x1c2)](_0x443304(0x184))['trim']();if(_0x196034===_0x443304(0x197)||_0x196034===_0x443304(0x1ad))return _0x196034;if(_0x3a80af[_0x443304(0x1b8)])throw CliErrors['flagMissing']('mode',_0x443304(0x192));return await select({'message':_0x443304(0x1c7),'choices':[{'name':_0x443304(0x18c),'value':_0x443304(0x197),'description':_0x443304(0x1a8)},{'name':'MyBatis\x20XML(mybatisXml)','value':_0x443304(0x1ad),'description':_0x443304(0x1a7)}]});}function serializeDbSelection(_0x21917f){const _0x5c5098=a156_0x3c243a;return JSON[_0x5c5098(0x193)]({'dbId':_0x21917f[_0x5c5098(0x188)],'dbName':_0x21917f[_0x5c5098(0x196)]});}function deserializeDbSelection(_0x41290d){const _0x5ae969=a156_0x3c243a;try{const _0x15f243=JSON['parse'](_0x41290d);if(typeof _0x15f243['dbId']===_0x5ae969(0x1b4)&&Number[_0x5ae969(0x1b5)](_0x15f243['dbId']))return{'dbId':_0x15f243[_0x5ae969(0x188)],'dbName':_0x15f243[_0x5ae969(0x196)]};}catch{}throw CliErrors[_0x5ae969(0x18d)]('Invalid\x20database\x20selection\x20payload:\x20'+_0x41290d);}function a156_0x3555(){const _0x442e64=['join','1636914oYoOUg','Created\x20SQL\x20query\x20','适合带动态标签的\x20MyBatis\x20XML\x20SQL','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','dbId\x20不能为空','请输入\x20SQL\x20名称:','请输入目标数据库\x20dbId:','✎\x20手动输入\x20dbId','mybatisXml','lastSync','dbId\x20必须为正整数','SELECT\x201\x20AS\x20id;','catch','flagMissing','4WNTfCa','number','isFinite','1506570HLAjQU','sqlRootDir','nonInteractive','<server-generated-sqlCode>','请选择目标数据库:','</select>','name','new','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','4CkAWgQ','Local\x20SQL\x20file\x20mode','description','str','243078QmdTbH','3012947sCBRzp','flag','trim','请选择本地\x20SQL\x20模式:','__manual__','8NcQYZR','/smartapi/custom/saveUserCustomSql','11PLtysG','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','mode','File\x20already\x20exists:\x20','utf8','toISOString','dbId','\x20\x20SELECT\x201\x20AS\x20id','3236913mPIEGB','sqlCode','普通\x20SQL(sql)','validation','POST','sqlRoot','db-id','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','stringify','map','SQL\x20query\x20display\x20name','dbName','sql','high-risk-write','SQL\x20名称不能为空','isInteger','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','10016620zPjdAx','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','Target\x20database\x20ID','276677UhGdwy','string','sqls','appCode','sqlName'];a156_0x3555=function(){return _0x442e64;};return a156_0x3555();}function resolveProvidedDbId(_0x5aa14d){const _0x562023=a156_0x3c243a,_0x510c2b=_0x5aa14d[_0x562023(0x1c5)](_0x562023(0x190));if(typeof _0x510c2b===_0x562023(0x1b4)&&Number[_0x562023(0x1b5)](_0x510c2b))return _0x510c2b;return undefined;}
|
|
1
|
+
const a156_0x2fa9ea=a156_0x5c06;(function(_0x5875e5,_0x51ea4a){const _0x5529aa=a156_0x5c06,_0x4c2e48=_0x5875e5();while(!![]){try{const _0x2fd348=-parseInt(_0x5529aa(0x1b1))/0x1*(-parseInt(_0x5529aa(0x1b2))/0x2)+parseInt(_0x5529aa(0x176))/0x3+parseInt(_0x5529aa(0x1a4))/0x4+-parseInt(_0x5529aa(0x193))/0x5*(parseInt(_0x5529aa(0x1ac))/0x6)+-parseInt(_0x5529aa(0x1a6))/0x7*(parseInt(_0x5529aa(0x174))/0x8)+parseInt(_0x5529aa(0x1aa))/0x9*(-parseInt(_0x5529aa(0x1b8))/0xa)+parseInt(_0x5529aa(0x18e))/0xb;if(_0x2fd348===_0x51ea4a)break;else _0x4c2e48['push'](_0x4c2e48['shift']());}catch(_0xd73e71){_0x4c2e48['push'](_0x4c2e48['shift']());}}}(a156_0x2e9e,0x297be));import{writeFile}from'node:fs/promises';function a156_0x2e9e(){const _0x106184=['dbId\x20不能为空','请输入\x20SQL\x20名称:','906800pOaHEe','catch','14knvlXN','str','/smartapi/custom/saveUserCustomSql','sql','2779479malLMV','sqlRootDir','54shFJJd','length','new','create','sqlCode','46086LCNANI','4rFDVtB','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','</select>','dbName','MyBatis\x20XML(mybatisXml)','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','10RihhcI','isFinite','适合带动态标签的\x20MyBatis\x20XML\x20SQL','851776miCxYn','请输入目标数据库\x20dbId:','538485DUuXnp','dbId\x20必须为正整数','lockFilePath','validation','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','high-risk-write','flagMissing','join','SELECT\x201\x20AS\x20id;','stringify','sqlRoot','Invalid\x20database\x20selection\x20payload:\x20','utf8','number','普通\x20SQL(sql)','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','File\x20already\x20exists:\x20','<server-generated-sqlCode>','trim','Target\x20database\x20ID','dbId','flag','map','请选择目标数据库:','4797903LfxRZA','✎\x20手动输入\x20dbId','mode','Local\x20SQL\x20file\x20mode','toISOString','134915JWuPRp','POST','sqls','SQL\x20名称不能为空','appCode','请选择本地\x20SQL\x20模式:','name','nonInteractive','lastSync','mybatisXml','sqlName','parse','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','db-id','Created\x20SQL\x20query\x20'];a156_0x2e9e=function(){return _0x106184;};return a156_0x2e9e();}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';function a156_0x5c06(_0x3c8e47,_0x31e9f1){_0x3c8e47=_0x3c8e47-0x174;const _0x2e9e85=a156_0x2e9e();let _0x5c0697=_0x2e9e85[_0x3c8e47];return _0x5c0697;}import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x187754){const _0x27475c=a156_0x5c06;if(_0x187754===_0x27475c(0x19c))return['<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','\x20\x20SELECT\x201\x20AS\x20id',_0x27475c(0x1b4),''][_0x27475c(0x17d)]('\x0a');return[_0x27475c(0x17e),'']['join']('\x0a');}export const sqlCreate={'service':'sql','command':a156_0x2fa9ea(0x1af),'description':a156_0x2fa9ea(0x1b7),'risk':a156_0x2fa9ea(0x17b),'flags':[{'name':'name','type':'string','description':'SQL\x20query\x20display\x20name'},{'name':'db-id','type':a156_0x2fa9ea(0x183),'description':a156_0x2fa9ea(0x189)},{'name':a156_0x2fa9ea(0x190),'type':'string','enum':['sql',a156_0x2fa9ea(0x19c)],'description':a156_0x2fa9ea(0x191)}],async 'validate'(_0x36ad7c){const _0x3cb0e9=a156_0x2fa9ea;if(!_0x36ad7c[_0x3cb0e9(0x19a)])return;if(!_0x36ad7c[_0x3cb0e9(0x1a7)](_0x3cb0e9(0x199))[_0x3cb0e9(0x188)]())throw CliErrors[_0x3cb0e9(0x17c)](_0x3cb0e9(0x199),'--name\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x4af261=resolveProvidedDbId(_0x36ad7c);if(typeof _0x4af261!==_0x3cb0e9(0x183)||!Number['isFinite'](_0x4af261)||_0x4af261<=0x0)throw CliErrors[_0x3cb0e9(0x17c)](_0x3cb0e9(0x1a0),_0x3cb0e9(0x1b3));if(!_0x36ad7c['str'](_0x3cb0e9(0x190))[_0x3cb0e9(0x188)]())throw CliErrors[_0x3cb0e9(0x17c)](_0x3cb0e9(0x190),_0x3cb0e9(0x19f));},async 'dryRun'(_0x2451fb){const _0x1e179c=a156_0x2fa9ea,_0x856806=loadSqlProjectConfig(_0x2451fb[_0x1e179c(0x197)]),{sqlName:_0x3b3acf,dbId:_0x4451ec,dbName:_0x1b5eb3,mode:_0x5c6c69}=await resolveSqlNewInputs(_0x2451fb),_0x4d16dd=buildSqlRelativePath(_0x1e179c(0x187),_0x3b3acf,_0x1b5eb3,_0x5c6c69,_0x4451ec),_0x135a6d=_0x856806[_0x1e179c(0x1ab)]+'/'+_0x4d16dd;return{'method':_0x1e179c(0x194),'url':_0x1e179c(0x1a8),'body':{'appCode':_0x2451fb['appCode'],'sqlName':_0x3b3acf,'dbId':_0x4451ec,'mode':_0x5c6c69,'localPath':_0x135a6d},'description':_0x1e179c(0x185)+_0x856806[_0x1e179c(0x1ab)]};},async 'execute'(_0x139731){const _0x45390a=a156_0x2fa9ea,_0x2dd39d=loadSqlProjectConfig(_0x139731[_0x45390a(0x197)]),{sqlName:_0x3e0cea,dbId:_0x17ca28,dbName:_0x3cd7be,mode:_0x5762a9}=await resolveSqlNewInputs(_0x139731),_0x510830=generateSqlTemplate(_0x5762a9),_0x41a359=await createSqlQuery({'appCode':_0x139731[_0x45390a(0x197)],'sqlName':_0x3e0cea,'dbId':_0x17ca28,'sqlContent':_0x510830}),_0x3a9bdb=ensureRemoteSqlContent(_0x41a359),_0x498204=_0x3cd7be||await getDbName(_0x139731['appCode'],_0x17ca28)[_0x45390a(0x1a5)](()=>undefined),_0x1adb33=buildSqlRelativePath(_0x41a359[_0x45390a(0x1b0)],_0x41a359[_0x45390a(0x19d)],_0x498204,_0x5762a9,_0x17ca28),_0x40e212=_0x2dd39d['sqlRootDir']+'/'+_0x1adb33,_0x431ecb=buildLocalSqlFileContent({'sqlCode':_0x41a359[_0x45390a(0x1b0)],'sqlName':_0x41a359['sqlName'],'dbId':_0x41a359[_0x45390a(0x18a)]},_0x3a9bdb,{'dbName':_0x498204,'mode':_0x5762a9,'syncedAt':new Date()[_0x45390a(0x192)](),'description':_0x41a359['description']});if(await fileExists(_0x40e212))throw CliErrors['validation'](_0x45390a(0x186)+_0x40e212);await ensureParentDirectory(_0x40e212),await writeFile(_0x40e212,_0x431ecb,_0x45390a(0x182));const _0x13bc0a=await readSqlLockFile(_0x2dd39d[_0x45390a(0x178)]),{lockData:_0x23d4d7,appLock:_0x2fce17}=ensureSqlLockScope(_0x13bc0a??createEmptySqlLock(),_0x2dd39d[_0x45390a(0x197)],_0x2dd39d[_0x45390a(0x180)],_0x45390a(0x1ae));return _0x2fce17[_0x45390a(0x195)][_0x41a359[_0x45390a(0x1b0)]]={...buildSqlLockEntry(_0x41a359,_0x3a9bdb,computeSqlContentHash(_0x431ecb),{'dbName':_0x498204}),'path':_0x1adb33,'mode':_0x5762a9},_0x2fce17[_0x45390a(0x19b)]=new Date()[_0x45390a(0x192)](),await writeSqlLockFile(_0x2dd39d[_0x45390a(0x178)],_0x23d4d7),{'ok':!![],'data':{'id':_0x41a359['id'],'sqlCode':_0x41a359[_0x45390a(0x1b0)],'sqlName':_0x41a359[_0x45390a(0x19d)],'dbId':_0x41a359[_0x45390a(0x18a)],'path':_0x40e212,'mode':_0x5762a9},'message':_0x45390a(0x1a1)+_0x41a359['sqlCode']};}};async function resolveSqlNewInputs(_0x541748){const _0x9b24fa=await resolveSqlNameInput(_0x541748),{dbId:_0x2910f4,dbName:_0x139af7}=await resolveDbSelection(_0x541748),_0x43b4b0=await resolveSqlModeInput(_0x541748);return{'sqlName':_0x9b24fa,'dbId':_0x2910f4,'dbName':_0x139af7,'mode':_0x43b4b0};}async function resolveSqlNameInput(_0x1d7321){const _0x4935e4=a156_0x2fa9ea,_0xf61138=_0x1d7321['str'](_0x4935e4(0x199))[_0x4935e4(0x188)]();if(_0xf61138)return _0xf61138;if(_0x1d7321[_0x4935e4(0x19a)])throw CliErrors['flagMissing']('name',_0x4935e4(0x17a));return(await input({'message':_0x4935e4(0x1a3),'validate':_0x59126f=>_0x59126f[_0x4935e4(0x188)]()?!![]:_0x4935e4(0x196)}))['trim']();}async function resolveDbSelection(_0x524b6){const _0x2c0dc6=a156_0x2fa9ea,_0x35e335=resolveProvidedDbId(_0x524b6);if(typeof _0x35e335===_0x2c0dc6(0x183)&&Number[_0x2c0dc6(0x1b9)](_0x35e335)&&_0x35e335>0x0)return{'dbId':_0x35e335,'dbName':await getDbName(_0x524b6[_0x2c0dc6(0x197)],_0x35e335)[_0x2c0dc6(0x1a5)](()=>undefined)};if(_0x524b6['nonInteractive'])throw CliErrors[_0x2c0dc6(0x17c)]('db-id','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x290178=await listDatabases(_0x524b6[_0x2c0dc6(0x197)])[_0x2c0dc6(0x1a5)](()=>[]);if(_0x290178[_0x2c0dc6(0x1ad)]===0x1)return{'dbId':_0x290178[0x0][_0x2c0dc6(0x18a)],'dbName':_0x290178[0x0]['dbName']};if(_0x290178[_0x2c0dc6(0x1ad)]>0x1){const _0xc63af9=await select({'message':_0x2c0dc6(0x18d),'choices':[..._0x290178[_0x2c0dc6(0x18c)](_0x364678=>({'name':_0x364678['dbName']+'\x20('+_0x364678[_0x2c0dc6(0x18a)]+')','value':serializeDbSelection(_0x364678)})),{'name':_0x2c0dc6(0x18f),'value':'__manual__'}]});if(_0xc63af9!=='__manual__')return deserializeDbSelection(_0xc63af9);}const _0x5ece0e=await input({'message':_0x2c0dc6(0x175),'validate':_0x147c60=>{const _0x52def4=_0x2c0dc6,_0x28487c=_0x147c60[_0x52def4(0x188)]();if(!_0x28487c)return _0x52def4(0x1a2);const _0x1381d4=Number(_0x28487c);if(!Number['isInteger'](_0x1381d4)||_0x1381d4<=0x0)return _0x52def4(0x177);return!![];}});return{'dbId':Number(_0x5ece0e[_0x2c0dc6(0x188)]())};}async function resolveSqlModeInput(_0x411c3f){const _0x457a64=a156_0x2fa9ea,_0x1730f0=_0x411c3f['str'](_0x457a64(0x190))[_0x457a64(0x188)]();if(_0x1730f0==='sql'||_0x1730f0===_0x457a64(0x19c))return _0x1730f0;if(_0x411c3f[_0x457a64(0x19a)])throw CliErrors['flagMissing'](_0x457a64(0x190),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');return await select({'message':_0x457a64(0x198),'choices':[{'name':_0x457a64(0x184),'value':_0x457a64(0x1a9),'description':'适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句'},{'name':_0x457a64(0x1b6),'value':_0x457a64(0x19c),'description':_0x457a64(0x1ba)}]});}function serializeDbSelection(_0x3a9656){const _0xd28e46=a156_0x2fa9ea;return JSON[_0xd28e46(0x17f)]({'dbId':_0x3a9656[_0xd28e46(0x18a)],'dbName':_0x3a9656[_0xd28e46(0x1b5)]});}function deserializeDbSelection(_0x27c3c1){const _0x537052=a156_0x2fa9ea;try{const _0x29c598=JSON[_0x537052(0x19e)](_0x27c3c1);if(typeof _0x29c598[_0x537052(0x18a)]===_0x537052(0x183)&&Number[_0x537052(0x1b9)](_0x29c598['dbId']))return{'dbId':_0x29c598[_0x537052(0x18a)],'dbName':_0x29c598['dbName']};}catch{}throw CliErrors[_0x537052(0x179)](_0x537052(0x181)+_0x27c3c1);}function resolveProvidedDbId(_0x2f144f){const _0xa9a687=a156_0x2fa9ea,_0x427be9=_0x2f144f[_0xa9a687(0x18b)]('db-id');if(typeof _0x427be9==='number'&&Number[_0xa9a687(0x1b9)](_0x427be9))return _0x427be9;return undefined;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a157_0x596359=a157_0x2bed;(function(_0x5cef47,_0x275e0f){const _0x77754=a157_0x2bed,_0x4603b3=_0x5cef47();while(!![]){try{const _0xdf9201=-parseInt(_0x77754(0x7d))/0x1*(-parseInt(_0x77754(0x88))/0x2)+-parseInt(_0x77754(0x83))/0x3+-parseInt(_0x77754(0x89))/0x4*(parseInt(_0x77754(0x93))/0x5)+parseInt(_0x77754(0x85))/0x6*(parseInt(_0x77754(0x95))/0x7)+parseInt(_0x77754(0x79))/0x8+parseInt(_0x77754(0x97))/0x9*(-parseInt(_0x77754(0x8e))/0xa)+-parseInt(_0x77754(0x7f))/0xb*(-parseInt(_0x77754(0x7c))/0xc);if(_0xdf9201===_0x275e0f)break;else _0x4603b3['push'](_0x4603b3['shift']());}catch(_0x11d5a5){_0x4603b3['push'](_0x4603b3['shift']());}}}(a157_0x24b7,0x8832a));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{fileExists}from'../../core/bff/file-system.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDelete={'service':a157_0x596359(0x9d),'command':a157_0x596359(0x91),'description':'Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','risk':a157_0x596359(0x94),'flags':[SQLCODE_FLAG],async 'validate'(_0x241e08){const _0x5b9806=a157_0x596359,_0x400f98=loadSqlProjectConfig(_0x241e08[_0x5b9806(0x80)]),_0x17c0f8=await readSqlLockFile(_0x400f98['lockFilePath']);if(!_0x17c0f8)throw CliErrors[_0x5b9806(0x9b)](_0x5b9806(0x81));},async 'dryRun'(_0x3a951e){const _0x3b898b=a157_0x596359,_0x26fc93=loadSqlProjectConfig(_0x3a951e['appCode']),_0x57f46b=await readSqlLockFile(_0x26fc93[_0x3b898b(0x8d)]);if(!_0x57f46b)throw CliErrors[_0x3b898b(0x9b)]('SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.');const {appLock:_0x353957}=ensureSqlLockScope(_0x57f46b,_0x3a951e[_0x3b898b(0x80)],_0x26fc93[_0x3b898b(0x8a)],_0x3b898b(0x91)),_0x2fcb86=_0x3a951e[_0x3b898b(0x8f)](_0x3b898b(0x84)),_0x8b70af=_0x353957[_0x3b898b(0x96)][_0x2fcb86];if(!_0x8b70af)throw CliErrors['validation'](_0x3b898b(0xa1)+_0x2fcb86+'\x22.');return{'method':'POST','url':_0x3b898b(0x9c),'body':{'sqlCode':_0x2fcb86,'id':_0x8b70af['remoteId'],'localPath':resolveLocalSqlFilePath(_0x26fc93,_0x2fcb86,_0x8b70af)},'description':_0x3b898b(0x7e)+_0x2fcb86+_0x3b898b(0x9e)+_0x26fc93[_0x3b898b(0x9f)]};},async 'execute'(_0x2f52cb){const _0x2fc9ab=a157_0x596359,_0x1989c2=loadSqlProjectConfig(_0x2f52cb['appCode']),_0x270cbd=await readSqlLockFile(_0x1989c2['lockFilePath']);if(!_0x270cbd)throw CliErrors['validation'](_0x2fc9ab(0x99));const {lockData:_0x164117,appLock:_0x440303}=ensureSqlLockScope(_0x270cbd,_0x2f52cb[_0x2fc9ab(0x80)],_0x1989c2[_0x2fc9ab(0x8a)],_0x2fc9ab(0x91)),_0x5ef481=_0x2f52cb[_0x2fc9ab(0x8f)](_0x2fc9ab(0x84)),_0x1ab288=_0x440303[_0x2fc9ab(0x96)][_0x5ef481];if(!_0x1ab288)throw CliErrors['validation'](_0x2fc9ab(0xa1)+_0x5ef481+'\x22.');await deleteSqlQuery({'id':_0x1ab288[_0x2fc9ab(0xa2)],'sqlCode':_0x5ef481}),_0x440303[_0x2fc9ab(0x96)]=Object[_0x2fc9ab(0x87)](Object[_0x2fc9ab(0x92)](_0x440303['sqls'])[_0x2fc9ab(0x7a)](([_0x30369d])=>_0x30369d!==_0x5ef481)),_0x440303['lastSync']=new Date()[_0x2fc9ab(0x82)](),await writeSqlLockFile(_0x1989c2[_0x2fc9ab(0x8d)],_0x164117);const _0x54a060=resolveLocalSqlFilePath(_0x1989c2,_0x5ef481,_0x1ab288);let _0x1433fb;await fileExists(_0x54a060)&&(_0x1433fb=await moveToTrash(_0x1989c2[_0x2fc9ab(0x8c)],_0x1989c2[_0x2fc9ab(0x9f)],_0x54a060),await cleanupEmptyDirectories(dirname(_0x54a060),_0x1989c2[_0x2fc9ab(0x9a)]));const _0x4c179c={'deleted':_0x5ef481,'remoteId':_0x1ab288['remoteId']};if(_0x1433fb)_0x4c179c[_0x2fc9ab(0x90)]=_0x1433fb;return{'ok':!![],'data':_0x4c179c,'message':_0x2fc9ab(0x98)+_0x5ef481+(_0x1433fb?_0x2fc9ab(0xa0):'')};}};async function moveToTrash(_0x1c96ee,_0x9b0936,_0x2f32b8){const _0x4196f5=a157_0x596359,_0x58417e=new Date()[_0x4196f5(0x82)]()[_0x4196f5(0x86)](/[:.]/g,'-'),_0x30aaab=relative(_0x1c96ee,_0x2f32b8),_0x3700cd=join(_0x9b0936,_0x58417e,_0x30aaab);return await mkdir(dirname(_0x3700cd),{'recursive':!![]}),await rename(_0x2f32b8,_0x3700cd),_0x3700cd;}function a157_0x2bed(_0x512ee6,_0x14a76e){_0x512ee6=_0x512ee6-0x79;const _0x24b756=a157_0x24b7();let _0x2bedd5=_0x24b756[_0x512ee6];return _0x2bedd5;}function a157_0x24b7(){const _0x4c5ffc=['delete','entries','5GhTuSI','high-risk-write','253162RuFayM','sqls','309924fxeMBc','Deleted\x20','SQL\x20lock\x20file\x20not\x20found.','sqlRootDir','validation','/smartapi/custom/deleteUserCustomSql','sql','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20','trashDir','\x20(local\x20file\x20moved\x20to\x20trash)','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','remoteId','4843736zEeWYe','filter','length','204RALryO','4YqLrNB','Would\x20delete\x20SQL\x20','992618HNCoHR','appCode','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','toISOString','2294379XJRLQn','sqlcode','18NMWtOj','replace','fromEntries','214494RUMQZQ','1698272avitBZ','sqlRoot','startsWith','projectRoot','lockFilePath','270fMnDXH','str','trashedTo'];a157_0x24b7=function(){return _0x4c5ffc;};return a157_0x24b7();}async function cleanupEmptyDirectories(_0x5d9cd4,_0x122e3a){const _0x1be53=a157_0x596359;let _0x498018=resolve(_0x5d9cd4);const _0x2b3c3b=resolve(_0x122e3a);while(_0x498018[_0x1be53(0x8b)](''+_0x2b3c3b+sep)||_0x498018===_0x2b3c3b){if(_0x498018===_0x2b3c3b)return;try{const _0x2eed47=await readdir(_0x498018);if(_0x2eed47[_0x1be53(0x7b)]>0x0)return;await rmdir(_0x498018);}catch{return;}_0x498018=dirname(_0x498018);}}
|