@lovrabet/rabetbase-cli 2.3.15-beta.1 → 2.3.15
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/async-task.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/asset-update.js +1 -1
- package/lib/commands/menu/delete.js +1 -1
- package/lib/commands/menu/external-link-create.js +1 -1
- package/lib/commands/menu/external-link-update.js +1 -1
- package/lib/commands/menu/group-create.js +1 -1
- package/lib/commands/menu/group-update.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/list.js +1 -1
- package/lib/commands/menu/move.js +1 -1
- package/lib/commands/menu/regroup-start.js +1 -1
- package/lib/commands/menu/rename.js +1 -0
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/delete-plan.js +1 -1
- package/lib/commands/menu/shared/facts.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/mutations.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/notification/config-list.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/ocr/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/restore.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/task/index.js +1 -1
- package/lib/commands/task/status.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-index-auditor.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/error-output.js +1 -1
- package/lib/framework/explicit-yes.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 a156_0x2034a2=a156_0x5247;(function(_0x516a94,_0x5a9e68){const _0x41016a=a156_0x5247,_0x36c5cd=_0x516a94();while(!![]){try{const _0x1d94ae=parseInt(_0x41016a(0xa5))/0x1+parseInt(_0x41016a(0xc4))/0x2+parseInt(_0x41016a(0xb0))/0x3+parseInt(_0x41016a(0x8e))/0x4+parseInt(_0x41016a(0x94))/0x5*(-parseInt(_0x41016a(0xc1))/0x6)+parseInt(_0x41016a(0x8f))/0x7*(parseInt(_0x41016a(0xc9))/0x8)+-parseInt(_0x41016a(0xc5))/0x9;if(_0x1d94ae===_0x5a9e68)break;else _0x36c5cd['push'](_0x36c5cd['shift']());}catch(_0x1bc3a7){_0x36c5cd['push'](_0x36c5cd['shift']());}}}(a156_0x1b4d,0x233f5));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{taskDefinitions}from'../commands/task/index.js';import{roleDefinitions}from'../commands/role/index.js';import{permitDefinitions}from'../commands/permit/index.js';import{appDefinitions}from'../commands/app/index.js';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{ocrDefinitions}from'../commands/ocr/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';function a156_0x5247(_0xae212f,_0x2beb66){_0xae212f=_0xae212f-0x82;const _0x1b4d6d=a156_0x1b4d();let _0x524760=_0x1b4d6d[_0xae212f];return _0x524760;}function a156_0x1b4d(){const _0x1a2295=['isSingleCommand','`rabetbase\x20app\x20use`\x20has\x20been\x20removed.','skills','<script>','length','start','run','auth','build','`rabetbase\x20app\x20remote`\x20has\x20been\x20removed.','Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.','logout','`rabetbase\x20skills`\x20has\x20been\x20removed.','30moxZrw','preview','remote','10096zbaHhE','3452976BlVeeK','Quick\x20Start','app\x20use','Use\x20`rabetbase\x20workspace\x20use\x20--app\x20<name>`\x20instead.','2848wmBHEo','Database\x20Connections','filter','wildcardDef','Permissions','BFF\x20Scripts','install','defaultCommand','skill\x20','Smart\x20List\x20Pages','Authentication','Logs','Runtime\x20App\x20Config\x20Management','46992BADqoL','5649RUkErg','Dataset\x20&\x20Operations','App\x20Management','`rabetbase\x20','use','27590hvXXUV','Run\x20any\x20package.json\x20script','app','create','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','API\x20Development','push','Instant\x20API','asset-update','SQL\x20Queries','from','\x20\x20[high-risk-write]','Workspace','Menu','service','Schema','commands','51351QHJTRY','Platform\x20Issue','`\x20has\x20been\x20removed.','get','set','Async\x20Tasks','Configuration','CLI\x20Built-in\x20Skill','show','Run\x20Scripts','OCR','600564kSzuYe','command','skill','Diagnostics'];a156_0x1b4d=function(){return _0x1a2295;};return a156_0x1b4d();}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(_0x438211){const _0x4e3352=a156_0x5247;for(const _0x2e3043 of _0x438211){definitions[_0x4e3352(0xa9)](_0x2e3043[_0x4e3352(0xa2)]+':'+_0x2e3043[_0x4e3352(0xb1)],_0x2e3043);let _0x4a5671=serviceGroups['get'](_0x2e3043[_0x4e3352(0xa2)]);!_0x4a5671&&(_0x4a5671=[],serviceGroups['set'](_0x2e3043[_0x4e3352(0xa2)],_0x4a5671)),_0x4a5671[_0x4e3352(0x9a)](_0x2e3043);}}function registerDeclarativeService(_0x4ed9ce,_0x4bf011,_0x43708e){const _0x2f923b=a156_0x5247;registerDefinitions(_0x4bf011);_0x43708e?.[_0x2f923b(0x84)]&®isterDefinitions([_0x43708e[_0x2f923b(0x84)]]);const _0x55f2e1=_0x38deb4=>_0x38deb4==='read'?'':_0x38deb4==='write'?'\x20\x20[write]':_0x2f923b(0x9f),_0x4d4242={'service':_0x4bf011[0x0]['service'],'label':_0x4ed9ce,'commands':_0x4bf011[_0x2f923b(0x83)](_0x214664=>!_0x214664['hidden'])['map'](_0x119e47=>({'command':_0x119e47[_0x2f923b(0xb1)],'description':_0x119e47['description'],'tag':_0x55f2e1(_0x119e47['risk'])})),'declarative':!![],'defaultCommand':_0x43708e?.[_0x2f923b(0x88)]??(_0x43708e?.[_0x2f923b(0xb4)]?_0x4bf011[0x0][_0x2f923b(0xb1)]:undefined),'wildcardDef':_0x43708e?.[_0x2f923b(0x84)],'isSingleCommand':_0x43708e?.[_0x2f923b(0xb4)]};serviceRegistry[_0x2f923b(0x9a)](_0x4d4242),serviceByName[_0x2f923b(0xa9)](_0x4d4242['service'],_0x4d4242);}registerDeclarativeService(a156_0x2034a2(0xc6),initDefinitions,{'defaultCommand':a156_0x2034a2(0xba),'isSingleCommand':!![]}),registerDeclarativeService('Project',projectDefinitions),registerDeclarativeService(a156_0x2034a2(0xa0),workspaceDefinitions),registerDeclarativeService(a156_0x2034a2(0x91),appDefinitions),registerDeclarativeService(a156_0x2034a2(0x8b),authDefinitions,{'defaultCommand':'login'}),registerDeclarativeService(a156_0x2034a2(0x90),datasetDefinitions),registerDeclarativeService(a156_0x2034a2(0x8a),pageDefinitions),registerDeclarativeService(a156_0x2034a2(0x99),apiDefinitions),registerDeclarativeService(a156_0x2034a2(0x9b),dataDefinitions),registerDeclarativeService(a156_0x2034a2(0x86),bffDefinitions),registerDeclarativeService('Notification\x20Configuration',notificationDefinitions),registerDeclarativeService(a156_0x2034a2(0x9d),sqlDefinitions),registerDeclarativeService(a156_0x2034a2(0x82),dbDefinitions),registerDeclarativeService(a156_0x2034a2(0xa1),menuDefinitions),registerDeclarativeService(a156_0x2034a2(0xaa),taskDefinitions),registerDeclarativeService('Roles',roleDefinitions),registerDeclarativeService(a156_0x2034a2(0x85),permitDefinitions),registerDeclarativeService(a156_0x2034a2(0x8d),appConfigDefinitions),registerDeclarativeService(a156_0x2034a2(0xa6),issueDefinitions),registerDeclarativeService('File',fileDefinitions),registerDeclarativeService(a156_0x2034a2(0xaf),ocrDefinitions),registerDeclarativeService('Code\x20Generation',codegenDefinitions),registerDeclarativeService(a156_0x2034a2(0xab),configDefinitions),registerDeclarativeService(a156_0x2034a2(0xb3),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a156_0x2034a2(0xa3),[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Self\x20Update',[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a156_0x2034a2(0xac),cliSkillDefinitions,{'defaultCommand':a156_0x2034a2(0x87)}),registerDeclarativeService(a156_0x2034a2(0x8c),logsDefinitions,{'defaultCommand':a156_0x2034a2(0xad)}),registerDeclarativeService(a156_0x2034a2(0xae),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a156_0x2034a2(0xb8)]-0x1];last[a156_0x2034a2(0xa4)]=[{'command':a156_0x2034a2(0xb7),'description':a156_0x2034a2(0x95),'tag':''}];}export const deprecatedAliases={'create':{'service':'project','command':a156_0x2034a2(0x97)},'start':{'service':'run','command':a156_0x2034a2(0xb9)},'build':{'service':'run','command':a156_0x2034a2(0xbc)},'preview':{'service':a156_0x2034a2(0xba),'command':a156_0x2034a2(0xc2)},'logout':{'service':a156_0x2034a2(0xbb),'command':a156_0x2034a2(0xbf)}};const CLI_SKILL_INSTALL_REMOVED_HINT=a156_0x2034a2(0x98),APP_REMOTE_REMOVED_HINT=a156_0x2034a2(0xbe),APP_USE_REMOVED_HINT=a156_0x2034a2(0xc8);export function resolveRemovedCommand(_0x23d0d7,_0x3fb864){const _0x188175=a156_0x2034a2;if(_0x23d0d7===_0x188175(0xb2)){const _0x5e521b=_0x3fb864?_0x188175(0x89)+_0x3fb864:_0x188175(0xb2);return{'command':_0x5e521b,'message':_0x188175(0x92)+_0x5e521b+_0x188175(0xa7),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x23d0d7===_0x188175(0xb6))return{'command':_0x188175(0xb6),'message':_0x188175(0xc0),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};if(_0x23d0d7===_0x188175(0x96)&&_0x3fb864===_0x188175(0xc3))return{'command':'app\x20remote','message':_0x188175(0xbd),'hint':APP_REMOTE_REMOVED_HINT};if(_0x23d0d7===_0x188175(0x96)&&_0x3fb864===_0x188175(0x93))return{'command':_0x188175(0xc7),'message':_0x188175(0xb5),'hint':APP_USE_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':a156_0x2034a2(0x97)},'sql':{'new':a156_0x2034a2(0x97)},'menu':{'update':a156_0x2034a2(0x9c)}};export function resolveDeprecatedSubcommand(_0x1db72d,_0x3de62d){return deprecatedSubcommands[_0x1db72d]?.[_0x3de62d];}export function findDefinition(_0x2d705d,_0x32de2e){const _0x194e7f=a156_0x2034a2;return definitions[_0x194e7f(0xa8)](_0x2d705d+':'+_0x32de2e);}export function isKnownService(_0x3551ef){return serviceByName['has'](_0x3551ef);}export function isDeclarativeService(_0x157954){const _0x5c0e7f=a156_0x2034a2;return serviceGroups['has'](_0x157954)||serviceByName['get'](_0x157954)?.[_0x5c0e7f(0x84)]!==undefined;}export function getServiceEntry(_0x508d79){const _0x16a4f8=a156_0x2034a2;return serviceByName[_0x16a4f8(0xa8)](_0x508d79);}export function getLegacyHandler(_0x35ba9f,_0x1add06){return undefined;}export function getAllDefinitions(){const _0x34cc64=a156_0x2034a2;return Array[_0x34cc64(0x9e)](definitions['values']());}
|
|
1
|
+
const a157_0x50d7e3=a157_0x5218;(function(_0x3ab67a,_0x14efdb){const _0xf5572f=a157_0x5218,_0xd9f6f5=_0x3ab67a();while(!![]){try{const _0x25ce59=parseInt(_0xf5572f(0x197))/0x1*(-parseInt(_0xf5572f(0x19d))/0x2)+parseInt(_0xf5572f(0x19e))/0x3*(parseInt(_0xf5572f(0x172))/0x4)+-parseInt(_0xf5572f(0x199))/0x5+-parseInt(_0xf5572f(0x17a))/0x6*(parseInt(_0xf5572f(0x156))/0x7)+-parseInt(_0xf5572f(0x15b))/0x8+-parseInt(_0xf5572f(0x17f))/0x9*(-parseInt(_0xf5572f(0x198))/0xa)+parseInt(_0xf5572f(0x176))/0xb*(parseInt(_0xf5572f(0x173))/0xc);if(_0x25ce59===_0x14efdb)break;else _0xd9f6f5['push'](_0xd9f6f5['shift']());}catch(_0x2c842a){_0xd9f6f5['push'](_0xd9f6f5['shift']());}}}(a157_0x113a,0x5c90b));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';function a157_0x113a(){const _0x18c322=['commands','4wHcdQo','7260804wFElhK','Project','service','11SGcJhC','`rabetbase\x20app\x20remote`\x20has\x20been\x20removed.','`rabetbase\x20skills`\x20has\x20been\x20removed.','preview','6tDrFGV','Async\x20Tasks','filter','skills','<script>','252KWQnvN','defaultCommand','login','read','Self\x20Update','App\x20Management','get','has','Use\x20`rabetbase\x20app\x20list\x20--remote`\x20instead.','length','install','Menu','start','Database\x20Connections','show','Instant\x20API','\x20\x20[write]','Logs','Diagnostics','hidden','risk','map','Use\x20`rabetbase\x20cli-skill\x20install`\x20to\x20refresh\x20the\x20Rabetbase\x20CLI\x20Built-in\x20Skill.\x20To\x20install\x20business\x20Skills,\x20use\x20`lovrabet\x20skill\x20install`.','Run\x20any\x20package.json\x20script','1xXsgFJ','235010PiYVNC','1445040harYPr','run','Run\x20Scripts','API\x20Development','412642ZphhyB','413529LhetFZ','Smart\x20List\x20Pages','Permissions','wildcardDef','use','3538101gySJZm','\x20\x20[high-risk-write]','BFF\x20Scripts','build','`\x20has\x20been\x20removed.','168152tlnPoH','set','`rabetbase\x20app\x20use`\x20has\x20been\x20removed.','Workspace','app\x20use','write','isSingleCommand','skill','create','Use\x20`rabetbase\x20workspace\x20use\x20--app\x20<name>`\x20instead.','`rabetbase\x20','SQL\x20Queries','Dataset\x20&\x20Operations','command','OCR','app','Quick\x20Start','File','Notification\x20Configuration','push','app\x20remote','remote'];a157_0x113a=function(){return _0x18c322;};return a157_0x113a();}import{menuDefinitions}from'../commands/menu/index.js';import{taskDefinitions}from'../commands/task/index.js';import{roleDefinitions}from'../commands/role/index.js';import{permitDefinitions}from'../commands/permit/index.js';import{appDefinitions}from'../commands/app/index.js';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{ocrDefinitions}from'../commands/ocr/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{authDefinitions}from'../commands/auth/index.js';function a157_0x5218(_0x2c9c67,_0x51fd4f){_0x2c9c67=_0x2c9c67-0x156;const _0x113a7c=a157_0x113a();let _0x5218e0=_0x113a7c[_0x2c9c67];return _0x5218e0;}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(_0x2f4f42){const _0x288df9=a157_0x5218;for(const _0x233a43 of _0x2f4f42){definitions[_0x288df9(0x15c)](_0x233a43[_0x288df9(0x175)]+':'+_0x233a43['command'],_0x233a43);let _0x24c424=serviceGroups[_0x288df9(0x185)](_0x233a43['service']);!_0x24c424&&(_0x24c424=[],serviceGroups['set'](_0x233a43[_0x288df9(0x175)],_0x24c424)),_0x24c424[_0x288df9(0x16e)](_0x233a43);}}function registerDeclarativeService(_0x345886,_0x347fe7,_0x4edd4a){const _0x51ff6b=a157_0x5218;registerDefinitions(_0x347fe7);_0x4edd4a?.['wildcardDef']&®isterDefinitions([_0x4edd4a[_0x51ff6b(0x1a1)]]);const _0x48eca9=_0x45c08f=>_0x45c08f===_0x51ff6b(0x182)?'':_0x45c08f===_0x51ff6b(0x160)?_0x51ff6b(0x18f):_0x51ff6b(0x157),_0x4bc766={'service':_0x347fe7[0x0][_0x51ff6b(0x175)],'label':_0x345886,'commands':_0x347fe7[_0x51ff6b(0x17c)](_0x4f06e9=>!_0x4f06e9[_0x51ff6b(0x192)])[_0x51ff6b(0x194)](_0x47d946=>({'command':_0x47d946['command'],'description':_0x47d946['description'],'tag':_0x48eca9(_0x47d946[_0x51ff6b(0x193)])})),'declarative':!![],'defaultCommand':_0x4edd4a?.[_0x51ff6b(0x180)]??(_0x4edd4a?.[_0x51ff6b(0x161)]?_0x347fe7[0x0][_0x51ff6b(0x168)]:undefined),'wildcardDef':_0x4edd4a?.[_0x51ff6b(0x1a1)],'isSingleCommand':_0x4edd4a?.[_0x51ff6b(0x161)]};serviceRegistry[_0x51ff6b(0x16e)](_0x4bc766),serviceByName[_0x51ff6b(0x15c)](_0x4bc766[_0x51ff6b(0x175)],_0x4bc766);}registerDeclarativeService(a157_0x50d7e3(0x16b),initDefinitions,{'defaultCommand':a157_0x50d7e3(0x19a),'isSingleCommand':!![]}),registerDeclarativeService(a157_0x50d7e3(0x174),projectDefinitions),registerDeclarativeService(a157_0x50d7e3(0x15e),workspaceDefinitions),registerDeclarativeService(a157_0x50d7e3(0x184),appDefinitions),registerDeclarativeService('Authentication',authDefinitions,{'defaultCommand':a157_0x50d7e3(0x181)}),registerDeclarativeService(a157_0x50d7e3(0x167),datasetDefinitions),registerDeclarativeService(a157_0x50d7e3(0x19f),pageDefinitions),registerDeclarativeService(a157_0x50d7e3(0x19c),apiDefinitions),registerDeclarativeService(a157_0x50d7e3(0x18e),dataDefinitions),registerDeclarativeService(a157_0x50d7e3(0x158),bffDefinitions),registerDeclarativeService(a157_0x50d7e3(0x16d),notificationDefinitions),registerDeclarativeService(a157_0x50d7e3(0x166),sqlDefinitions),registerDeclarativeService(a157_0x50d7e3(0x18c),dbDefinitions),registerDeclarativeService(a157_0x50d7e3(0x18a),menuDefinitions),registerDeclarativeService(a157_0x50d7e3(0x17b),taskDefinitions),registerDeclarativeService('Roles',roleDefinitions),registerDeclarativeService(a157_0x50d7e3(0x1a0),permitDefinitions),registerDeclarativeService('Runtime\x20App\x20Config\x20Management',appConfigDefinitions),registerDeclarativeService('Platform\x20Issue',issueDefinitions),registerDeclarativeService(a157_0x50d7e3(0x16c),fileDefinitions),registerDeclarativeService(a157_0x50d7e3(0x169),ocrDefinitions),registerDeclarativeService('Code\x20Generation',codegenDefinitions),registerDeclarativeService('Configuration',configDefinitions),registerDeclarativeService(a157_0x50d7e3(0x191),[doctorDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('Schema',[schemaDefinition],{'isSingleCommand':!![]}),registerDeclarativeService(a157_0x50d7e3(0x183),[updateDefinition],{'isSingleCommand':!![]}),registerDeclarativeService('CLI\x20Built-in\x20Skill',cliSkillDefinitions,{'defaultCommand':a157_0x50d7e3(0x189)}),registerDeclarativeService(a157_0x50d7e3(0x190),logsDefinitions,{'defaultCommand':a157_0x50d7e3(0x18d)}),registerDeclarativeService(a157_0x50d7e3(0x19b),[runDefinition],{'wildcardDef':runDefinition});{const last=serviceRegistry[serviceRegistry[a157_0x50d7e3(0x188)]-0x1];last[a157_0x50d7e3(0x171)]=[{'command':a157_0x50d7e3(0x17e),'description':a157_0x50d7e3(0x196),'tag':''}];}export const deprecatedAliases={'create':{'service':'project','command':a157_0x50d7e3(0x163)},'start':{'service':a157_0x50d7e3(0x19a),'command':a157_0x50d7e3(0x18b)},'build':{'service':a157_0x50d7e3(0x19a),'command':a157_0x50d7e3(0x159)},'preview':{'service':a157_0x50d7e3(0x19a),'command':a157_0x50d7e3(0x179)},'logout':{'service':'auth','command':'logout'}};const CLI_SKILL_INSTALL_REMOVED_HINT=a157_0x50d7e3(0x195),APP_REMOTE_REMOVED_HINT=a157_0x50d7e3(0x187),APP_USE_REMOVED_HINT=a157_0x50d7e3(0x164);export function resolveRemovedCommand(_0x3b7f72,_0x2863d2){const _0x26b9f5=a157_0x50d7e3;if(_0x3b7f72==='skill'){const _0x1058ba=_0x2863d2?'skill\x20'+_0x2863d2:_0x26b9f5(0x162);return{'command':_0x1058ba,'message':_0x26b9f5(0x165)+_0x1058ba+_0x26b9f5(0x15a),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};}if(_0x3b7f72===_0x26b9f5(0x17d))return{'command':_0x26b9f5(0x17d),'message':_0x26b9f5(0x178),'hint':CLI_SKILL_INSTALL_REMOVED_HINT};if(_0x3b7f72===_0x26b9f5(0x16a)&&_0x2863d2===_0x26b9f5(0x170))return{'command':_0x26b9f5(0x16f),'message':_0x26b9f5(0x177),'hint':APP_REMOTE_REMOVED_HINT};if(_0x3b7f72==='app'&&_0x2863d2===_0x26b9f5(0x1a2))return{'command':_0x26b9f5(0x15f),'message':_0x26b9f5(0x15d),'hint':APP_USE_REMOVED_HINT};return undefined;}export const deprecatedSubcommands={'bff':{'new':'create'},'sql':{'new':a157_0x50d7e3(0x163)},'menu':{'update':'asset-update'}};export function resolveDeprecatedSubcommand(_0x91c12d,_0x2a8f06){return deprecatedSubcommands[_0x91c12d]?.[_0x2a8f06];}export function findDefinition(_0x346aa4,_0x197d3e){const _0x39f942=a157_0x50d7e3;return definitions[_0x39f942(0x185)](_0x346aa4+':'+_0x197d3e);}export function isKnownService(_0x1ac987){const _0x1a90eb=a157_0x50d7e3;return serviceByName[_0x1a90eb(0x186)](_0x1ac987);}export function isDeclarativeService(_0x207253){const _0x5b5892=a157_0x50d7e3;return serviceGroups[_0x5b5892(0x186)](_0x207253)||serviceByName[_0x5b5892(0x185)](_0x207253)?.['wildcardDef']!==undefined;}export function getServiceEntry(_0x19565f){const _0xfa9e87=a157_0x50d7e3;return serviceByName[_0xfa9e87(0x185)](_0x19565f);}export function getLegacyHandler(_0x45ebc9,_0x77ee1a){return undefined;}export function getAllDefinitions(){return Array['from'](definitions['values']());}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a158_0x2ed7a1=a158_0x4aa0;(function(_0x406d50,_0x505c2f){const _0x26a497=a158_0x4aa0,_0x2adbc9=_0x406d50();while(!![]){try{const _0x4d6590=-parseInt(_0x26a497(0x1aa))/0x1*(-parseInt(_0x26a497(0x1a4))/0x2)+-parseInt(_0x26a497(0x1b5))/0x3+-parseInt(_0x26a497(0x1ae))/0x4*(parseInt(_0x26a497(0x1b3))/0x5)+parseInt(_0x26a497(0x1b6))/0x6*(parseInt(_0x26a497(0x1b2))/0x7)+parseInt(_0x26a497(0x1b1))/0x8+parseInt(_0x26a497(0x1ac))/0x9*(parseInt(_0x26a497(0x1ab))/0xa)+-parseInt(_0x26a497(0x1a7))/0xb*(-parseInt(_0x26a497(0x1a1))/0xc);if(_0x4d6590===_0x505c2f)break;else _0x2adbc9['push'](_0x2adbc9['shift']());}catch(_0x1353a6){_0x2adbc9['push'](_0x2adbc9['shift']());}}}(a158_0x2bb3,0x34be7));function a158_0x2bb3(){const _0x11ad3c=['6VfTaHT','POST','appCode','create','\x20(id=','roleName','trim','2483436SfYsxx','str','validation','112ChgixA','remark','role','22jlMQtO','Create\x20a\x20CUSTOM\x20user\x20group\x20(role)','length','2081DRGcOV','10JfPsLB','2383515pPVuOB','Created\x20role\x20','3204QdJzxn','/smartapi/permit/role/create','name','571936YbCkSP','1041523LfCdHP','2495dIfvbb','flagMissing','1199460pyKjjl'];a158_0x2bb3=function(){return _0x11ad3c;};return a158_0x2bb3();}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=a158_0x2ed7a1(0x1af);function a158_0x4aa0(_0x2b89bd,_0x16767b){_0x2b89bd=_0x2b89bd-0x19d;const _0x2bb371=a158_0x2bb3();let _0x4aa06f=_0x2bb371[_0x2b89bd];return _0x4aa06f;}function readName(_0x58d016){const _0x2e7568=a158_0x2ed7a1,_0xabfb99=_0x58d016[_0x2e7568(0x1a2)](_0x2e7568(0x1b0))['trim']();if(!_0xabfb99)throw CliErrors[_0x2e7568(0x1b4)](_0x2e7568(0x1b0),'Pass\x20--name\x20<roleName>.');if(_0xabfb99[_0x2e7568(0x1a9)]>0x40)throw CliErrors[_0x2e7568(0x1a3)]('Role\x20name\x20cannot\x20exceed\x2064\x20characters.');return _0xabfb99;}export const roleCreate={'service':a158_0x2ed7a1(0x1a6),'command':'create','description':a158_0x2ed7a1(0x1a8),'risk':'write','flags':[NAME_FLAG,REMARK_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x1b6053){readName(_0x1b6053);},async 'dryRun'(_0x510505){const _0x28c255=a158_0x2ed7a1,_0xfe542a=readName(_0x510505),_0x38820e=_0x510505[_0x28c255(0x1a2)](_0x28c255(0x1a5))[_0x28c255(0x1a0)]()||undefined;return asDryRunResult({'operation':_0x28c255(0x19d),'selector':{'appCode':_0x510505[_0x28c255(0x1b8)],'roleName':_0xfe542a},'before':null,'after':{'roleName':_0xfe542a,'roleType':'CUSTOM','remark':_0x38820e},'dryRun':!![],'backend':{'method':_0x28c255(0x1b7),'path':CREATE_PATH},'warnings':[]},{'method':'POST','url':CREATE_PATH});},async 'execute'(_0x20c920){const _0x48cdca=a158_0x2ed7a1,_0xf4b3a0=readName(_0x20c920),_0x3055b7=_0x20c920[_0x48cdca(0x1a2)](_0x48cdca(0x1a5))['trim']()||undefined,_0x521165=await createAppRole({'appCode':_0x20c920[_0x48cdca(0x1b8)],'roleName':_0xf4b3a0,..._0x3055b7?{'remark':_0x3055b7}:{}});return{'ok':!![],'data':{'operation':_0x48cdca(0x19d),'selector':{'appCode':_0x20c920[_0x48cdca(0x1b8)],'roleId':_0x521165['id'],'roleName':_0xf4b3a0},'before':null,'after':projectRole(_0x521165),'dryRun':![],'backend':{'method':_0x48cdca(0x1b7),'path':CREATE_PATH},'warnings':[]},'message':_0x48cdca(0x1ad)+_0x521165[_0x48cdca(0x19f)]+_0x48cdca(0x19e)+_0x521165['id']+')'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a159_0x393e8f=a159_0x3700;function a159_0x3700(_0x21a503,_0x313e5c){_0x21a503=_0x21a503-0x1a4;const _0x32ee74=a159_0x32ee();let _0x370061=_0x32ee74[_0x21a503];return _0x370061;}(function(_0x31173d,_0x429b36){const _0x59c90b=a159_0x3700,_0x16a4da=_0x31173d();while(!![]){try{const _0x4c153f=-parseInt(_0x59c90b(0x1a8))/0x1*(parseInt(_0x59c90b(0x1a5))/0x2)+-parseInt(_0x59c90b(0x1b5))/0x3+parseInt(_0x59c90b(0x1a6))/0x4+-parseInt(_0x59c90b(0x1a4))/0x5+-parseInt(_0x59c90b(0x1b1))/0x6+parseInt(_0x59c90b(0x1a9))/0x7+parseInt(_0x59c90b(0x1aa))/0x8;if(_0x4c153f===_0x429b36)break;else _0x16a4da['push'](_0x16a4da['shift']());}catch(_0x1a15af){_0x16a4da['push'](_0x16a4da['shift']());}}}(a159_0x32ee,0x90b55));function a159_0x32ee(){const _0x1f3fa5=['/smartapi/permit/role/delete','userCount','2348124Tyqifd','528410CPjWfI','2582oyvcBf','560108BNnvkk','Delete\x20a\x20CUSTOM\x20role\x20(DEV/ADMIN\x20rejected);\x20requires\x20--yes','361GVfVbo','3157658Vugldv','14433088pGsYKq','role','appCode','Role\x20still\x20has\x20','POST','delete','roleName','2688546ApDvjH','\x20member(s);\x20they\x20will\x20lose\x20this\x20group.'];a159_0x32ee=function(){return _0x1f3fa5;};return a159_0x32ee();}import{deleteAppRole}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{asDryRunResult}from'../../commands/common/dry-run.js';import{assertCustomRole,getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';const DELETE_PATH=a159_0x393e8f(0x1b3);export const roleDelete={'service':a159_0x393e8f(0x1ab),'command':a159_0x393e8f(0x1af),'description':a159_0x393e8f(0x1a7),'risk':'high-risk-write','flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x1d09c6){const _0x843c35=a159_0x393e8f,_0x26a165=_0x1d09c6['num']('id'),_0x2d9d03=await getRoleById(_0x1d09c6[_0x843c35(0x1ac)],_0x26a165);return assertCustomRole(_0x2d9d03,_0x843c35(0x1af)),asDryRunResult({'operation':_0x843c35(0x1af),'selector':{'appCode':_0x1d09c6['appCode'],'roleId':_0x26a165,'roleName':_0x2d9d03['roleName']},'before':projectRole(_0x2d9d03),'after':null,'dryRun':!![],'backend':{'method':_0x843c35(0x1ae),'path':DELETE_PATH},'warnings':_0x2d9d03['userCount']>0x0?[_0x843c35(0x1ad)+_0x2d9d03[_0x843c35(0x1b4)]+_0x843c35(0x1b2)]:[]},{'method':_0x843c35(0x1ae),'url':DELETE_PATH});},async 'execute'(_0x165cda){const _0x4264de=a159_0x393e8f,_0x1cd4cb=_0x165cda['num']('id'),_0xd51d35=await getRoleById(_0x165cda['appCode'],_0x1cd4cb);return assertCustomRole(_0xd51d35,_0x4264de(0x1af)),await deleteAppRole(_0x1cd4cb),{'ok':!![],'data':{'operation':'delete','selector':{'appCode':_0x165cda[_0x4264de(0x1ac)],'roleId':_0x1cd4cb,'roleName':_0xd51d35[_0x4264de(0x1b0)]},'before':projectRole(_0xd51d35),'after':null,'dryRun':![],'backend':{'method':'POST','path':DELETE_PATH},'warnings':[]},'message':'Deleted\x20role\x20'+_0xd51d35[_0x4264de(0x1b0)]+'\x20(id='+_0x1cd4cb+')'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a160_0x1a9ef6=a160_0x34c8;function a160_0x34c8(_0x8230f3,_0xb9c1a6){_0x8230f3=_0x8230f3-0xf6;const _0xe03f1d=a160_0xe03f();let _0x34c867=_0xe03f1d[_0x8230f3];return _0x34c867;}(function(_0x396dff,_0x29675f){const _0x71beb9=a160_0x34c8,_0x1fa15e=_0x396dff();while(!![]){try{const _0x4620ca=-parseInt(_0x71beb9(0xf6))/0x1*(-parseInt(_0x71beb9(0x103))/0x2)+parseInt(_0x71beb9(0xfa))/0x3+-parseInt(_0x71beb9(0xfe))/0x4+-parseInt(_0x71beb9(0x104))/0x5+-parseInt(_0x71beb9(0x101))/0x6*(parseInt(_0x71beb9(0x102))/0x7)+parseInt(_0x71beb9(0xf7))/0x8*(-parseInt(_0x71beb9(0xf9))/0x9)+parseInt(_0x71beb9(0xff))/0xa*(parseInt(_0x71beb9(0x100))/0xb);if(_0x4620ca===_0x29675f)break;else _0x1fa15e['push'](_0x1fa15e['shift']());}catch(_0x1fb46f){_0x1fa15e['push'](_0x1fa15e['shift']());}}}(a160_0xe03f,0x2277e));import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{getRoleById,projectRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a160_0xe03f(){const _0x1d4b45=['48CGNXHW','17563VMebii','2SLIyun','877750nrREwZ','153967ktpbhj','8ZTCiuT','appCode','2459745fcaQDf','651999KtkipQ','role','num','roleType','443520WOnGel','1230qLJQSt','31273qwwzCd'];a160_0xe03f=function(){return _0x1d4b45;};return a160_0xe03f();}export const roleDetail={'service':a160_0x1a9ef6(0xfb),'command':'detail','description':'Show\x20a\x20single\x20role\x27s\x20detail','risk':'read','flags':[ROLE_ID_FLAG,APPCODE_FLAG_OPTIONAL],async 'execute'(_0xc85295){const _0x186463=a160_0x1a9ef6,_0x285d8f=_0xc85295[_0x186463(0xfc)]('id'),_0x51917e=await getRoleById(_0xc85295[_0x186463(0xf8)],_0x285d8f);return{'ok':!![],'data':{'role':projectRole(_0x51917e)},'message':'Role\x20'+_0x51917e['roleName']+'\x20('+_0x51917e[_0x186463(0xfd)]+')'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x30bdeb,_0x5e287d){const _0x296a66=a161_0x1367,_0x3e6f7e=_0x30bdeb();while(!![]){try{const _0x24f076=parseInt(_0x296a66(0x1ab))/0x1+-parseInt(_0x296a66(0x1a6))/0x2*(parseInt(_0x296a66(0x1a1))/0x3)+parseInt(_0x296a66(0x1a7))/0x4*(parseInt(_0x296a66(0x1a9))/0x5)+-parseInt(_0x296a66(0x1a3))/0x6*(parseInt(_0x296a66(0x1a4))/0x7)+parseInt(_0x296a66(0x1a8))/0x8*(-parseInt(_0x296a66(0x1a5))/0x9)+parseInt(_0x296a66(0x1a2))/0xa+parseInt(_0x296a66(0x1aa))/0xb;if(_0x24f076===_0x5e287d)break;else _0x3e6f7e['push'](_0x3e6f7e['shift']());}catch(_0x135b65){_0x3e6f7e['push'](_0x3e6f7e['shift']());}}}(a161_0x10f7,0xbff07));function a161_0x10f7(){const _0x90bc62=['36wMJPvO','2015802sbfbvC','44UqECIO','3139784vsHCsq','645215FnoNGI','23675124wuoKYi','816475IzhKnm','3zSrpuv','4122060hNyhiR','6KweHXN','10055234KyyJgr'];a161_0x10f7=function(){return _0x90bc62;};return a161_0x10f7();}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 a161_0x1367(_0x3f9faf,_0x1b6954){_0x3f9faf=_0x3f9faf-0x1a1;const _0x10f78c=a161_0x10f7();let _0x136758=_0x10f78c[_0x3f9faf];return _0x136758;}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';export const roleDefinitions=[roleList,roleDetail,roleCreate,roleUpdate,roleDelete,roleUserResolve,roleUserAdd,roleUserRemove];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a162_0x2cde(_0x41f0dc,_0x435b15){_0x41f0dc=_0x41f0dc-0x14a;const _0xacd012=a162_0xacd0();let _0x2cded6=_0xacd012[_0x41f0dc];return _0x2cded6;}const a162_0x577c61=a162_0x2cde;(function(_0xafdff9,_0x370e1e){const _0x47865d=a162_0x2cde,_0x3f61ba=_0xafdff9();while(!![]){try{const _0x351e20=parseInt(_0x47865d(0x16a))/0x1+parseInt(_0x47865d(0x158))/0x2*(parseInt(_0x47865d(0x14f))/0x3)+-parseInt(_0x47865d(0x16f))/0x4+parseInt(_0x47865d(0x163))/0x5+parseInt(_0x47865d(0x165))/0x6*(parseInt(_0x47865d(0x150))/0x7)+parseInt(_0x47865d(0x170))/0x8*(parseInt(_0x47865d(0x16b))/0x9)+-parseInt(_0x47865d(0x14c))/0xa*(parseInt(_0x47865d(0x16c))/0xb);if(_0x351e20===_0x370e1e)break;else _0x3f61ba['push'](_0x3f61ba['shift']());}catch(_0x268095){_0x3f61ba['push'](_0x3f61ba['shift']());}}}(a162_0xacd0,0x55ecb));import{listAppRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a162_0xacd0(){const _0x4036b1=['\x20role(s)','--pagesize\x20must\x20be\x20between\x201\x20and\x20100.','2750485BVkYOC','Filter\x20by\x20role\x20type','12NZsJlS','CUSTOM','length','page','str','104216iyJZgH','2113974ArrYFB','11cFaAyW','roleType','join','78944maxgBN','8iDbtkV','trim','List\x20user\x20groups\x20(roles)\x20for\x20the\x20current\x20app','14335580pDyGOd','ADMIN','Use\x20one\x20of:\x20','273201ReeoCD','1931209YsTRtS','pagesize','type','list','includes','read','toUpperCase','DEV','8nukcrX','number','Invalid\x20--type\x20\x22','Page\x20size\x20(1-100)','map','validation','num','USER','filter'];a162_0xacd0=function(){return _0x4036b1;};return a162_0xacd0();}import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';import{projectRole}from'../../commands/role/shared.js';const ROLE_TYPES=[a162_0x577c61(0x14d),a162_0x577c61(0x157),a162_0x577c61(0x15f),a162_0x577c61(0x166)];export const roleList={'service':'role','command':a162_0x577c61(0x153),'description':a162_0x577c61(0x14b),'risk':a162_0x577c61(0x155),'flags':[APPCODE_FLAG_OPTIONAL,{'name':'type','type':'string','required':![],'description':a162_0x577c61(0x164),'enum':ROLE_TYPES},{'name':a162_0x577c61(0x168),'type':a162_0x577c61(0x159),'description':'Page\x20index\x20(1-based)','default':0x1},{'name':a162_0x577c61(0x151),'type':'number','description':a162_0x577c61(0x15b),'default':0x64}],async 'validate'(_0x4eef65){const _0x2ea670=a162_0x577c61,_0x46ce35=_0x4eef65[_0x2ea670(0x169)](_0x2ea670(0x152))[_0x2ea670(0x14a)]();if(_0x46ce35&&!ROLE_TYPES[_0x2ea670(0x154)](_0x46ce35['toUpperCase']()))throw CliErrors[_0x2ea670(0x15d)](_0x2ea670(0x15a)+_0x46ce35+'\x22.',_0x2ea670(0x14e)+ROLE_TYPES[_0x2ea670(0x16e)](',\x20')+'.');const _0x585ec0=_0x4eef65['num'](_0x2ea670(0x168),0x1),_0x8f718a=_0x4eef65[_0x2ea670(0x15e)](_0x2ea670(0x151),0x64);if(_0x585ec0<0x1)throw CliErrors[_0x2ea670(0x15d)]('--page\x20must\x20be\x20greater\x20than\x20or\x20equal\x20to\x201.');if(_0x8f718a<0x1||_0x8f718a>0x64)throw CliErrors[_0x2ea670(0x15d)](_0x2ea670(0x162));},async 'execute'(_0x545f08){const _0x411154=a162_0x577c61,_0x18ad7f=_0x545f08[_0x411154(0x15e)](_0x411154(0x168),0x1)||0x1,_0x2404c6=_0x545f08[_0x411154(0x15e)]('pagesize',0x64)||0x64,_0x2ea38a=_0x545f08['str'](_0x411154(0x152))['trim']()[_0x411154(0x156)](),{items:_0x20a45c,paging:_0x1c5d7c}=await listAppRoles(_0x545f08['appCode'],{'currentPage':_0x18ad7f,'pageSize':_0x2404c6}),_0x1aa08e=_0x2ea38a?_0x20a45c[_0x411154(0x160)](_0x19e69e=>_0x19e69e[_0x411154(0x16d)]===_0x2ea38a):_0x20a45c,_0x5a27c6=_0x1aa08e[_0x411154(0x15c)](projectRole);return{'ok':!![],'data':{'roles':_0x5a27c6,'paging':_0x1c5d7c},'message':'Found\x20'+_0x5a27c6[_0x411154(0x167)]+_0x411154(0x161)};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a162_0x2d3361=a162_0x1bb7;(function(_0x20f0f0,_0x34db6b){const _0x503fe5=a162_0x1bb7,_0x6b5dd=_0x20f0f0();while(!![]){try{const _0x2730bb=-parseInt(_0x503fe5(0x20f))/0x1*(-parseInt(_0x503fe5(0x1e0))/0x2)+-parseInt(_0x503fe5(0x1dc))/0x3*(parseInt(_0x503fe5(0x210))/0x4)+-parseInt(_0x503fe5(0x1ea))/0x5*(parseInt(_0x503fe5(0x207))/0x6)+-parseInt(_0x503fe5(0x21d))/0x7+parseInt(_0x503fe5(0x1d4))/0x8+-parseInt(_0x503fe5(0x214))/0x9*(-parseInt(_0x503fe5(0x1e7))/0xa)+parseInt(_0x503fe5(0x20e))/0xb*(-parseInt(_0x503fe5(0x21a))/0xc);if(_0x2730bb===_0x34db6b)break;else _0x6b5dd['push'](_0x6b5dd['shift']());}catch(_0x31f10c){_0x6b5dd['push'](_0x6b5dd['shift']());}}}(a162_0x4c6c,0xc5ef3));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':a162_0x2d3361(0x1d0),'required':!![],'description':'Role\x20id\x20(from\x20`role\x20list`)'};export const ROLE_REF_FLAG={'name':a162_0x2d3361(0x1f1),'type':a162_0x2d3361(0x217),'required':!![],'description':'Role\x20id\x20or\x20role\x20name\x20(CUSTOM\x20roles\x20may\x20be\x20referenced\x20by\x20name)'};export const USER_REF_FLAG={'name':a162_0x2d3361(0x212),'type':'string','required':!![],'description':'User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId'};export const NAME_FLAG={'name':a162_0x2d3361(0x1ee),'type':a162_0x2d3361(0x217),'required':!![],'description':a162_0x2d3361(0x1fd)};export const USER_NAME_FLAG={'name':'name','type':'string','required':!![],'description':a162_0x2d3361(0x1f4)};export const REMARK_FLAG={'name':'remark','type':a162_0x2d3361(0x217),'required':![],'description':a162_0x2d3361(0x1f3)};export const EXPECT_USER_COUNT_FLAG={'name':'expect-user-count','type':a162_0x2d3361(0x1d0),'required':![],'description':a162_0x2d3361(0x213)};export const BUILTIN_ROLE_TYPES=[a162_0x2d3361(0x1de),a162_0x2d3361(0x21b),a162_0x2d3361(0x208)];export function isBuiltinRole(_0x1355cb){const _0x54db58=a162_0x2d3361;return BUILTIN_ROLE_TYPES[_0x54db58(0x201)](_0x1355cb);}export function assertCustomRole(_0x1e744b,_0x1bc5e4){const _0x47fde3=a162_0x2d3361;if(_0x1e744b[_0x47fde3(0x1fc)]!=='CUSTOM')throw CliErrors[_0x47fde3(0x20d)](_0x47fde3(0x215)+_0x1bc5e4+_0x47fde3(0x1ec)+_0x1e744b[_0x47fde3(0x20c)]+'\x20('+_0x1e744b[_0x47fde3(0x1fc)]+').','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.');}export function assertPermConfigurable(_0x3ff4a8){const _0x9457d7=a162_0x2d3361;if(_0x3ff4a8[_0x9457d7(0x1fc)]===_0x9457d7(0x21b)||_0x3ff4a8[_0x9457d7(0x1fc)]==='ADMIN')throw CliErrors[_0x9457d7(0x20d)](_0x9457d7(0x204)+_0x3ff4a8[_0x9457d7(0x20c)]+'\x20('+_0x3ff4a8['roleType']+').',_0x9457d7(0x1fa));}export function projectRole(_0x12b994){const _0x116b00=a162_0x2d3361;return{'id':_0x12b994['id'],'roleName':_0x12b994['roleName'],'roleType':_0x12b994[_0x116b00(0x1fc)],'remark':_0x12b994[_0x116b00(0x20b)],'userCount':_0x12b994[_0x116b00(0x1f7)],'permitCount':_0x12b994['permitCount'],'builtin':isBuiltinRole(_0x12b994[_0x116b00(0x1fc)])};}export async function resolveRoleRef(_0x2f3ed1,_0xebc015){const _0x1965a4=a162_0x2d3361,_0x4ac8c5=_0xebc015[_0x1965a4(0x21c)]();if(!_0x4ac8c5)throw CliErrors[_0x1965a4(0x20d)](_0x1965a4(0x1f5),_0x1965a4(0x1e9));if(/^\d+$/[_0x1965a4(0x1e8)](_0x4ac8c5))return getRoleById(_0x2f3ed1,Number(_0x4ac8c5));const _0x255fe5=await listAllAppRoles(_0x2f3ed1),_0x4a652a=_0x255fe5['filter'](_0x46197e=>_0x46197e[_0x1965a4(0x20c)]===_0x4ac8c5);if(_0x4a652a[_0x1965a4(0x1d8)]===0x0)throw CliErrors[_0x1965a4(0x20d)]('Role\x20name\x20\x22'+_0x4ac8c5+_0x1965a4(0x1d9)+_0x2f3ed1+'.',_0x1965a4(0x209));if(_0x4a652a['length']>0x1){const _0x4e5fea=_0x4a652a[_0x1965a4(0x1d5)](_0x9ed8df=>_0x9ed8df['id'])[_0x1965a4(0x1e4)](',\x20');throw CliErrors['validation']('Role\x20name\x20\x22'+_0x4ac8c5+_0x1965a4(0x1e3)+_0x4e5fea+').',_0x1965a4(0x1d2));}return _0x4a652a[0x0];}export async function getRoleById(_0x3ebfc3,_0x94e102){const _0x19dc95=a162_0x2d3361,_0x154f2c=await getAppRole(_0x94e102);if(!_0x154f2c)throw CliErrors[_0x19dc95(0x20d)](_0x19dc95(0x1fe)+_0x94e102+_0x19dc95(0x1f9)+_0x3ebfc3+'.',_0x19dc95(0x1e1));return _0x154f2c;}function a162_0x4c6c(){const _0x14169b=['Disambiguate\x20with\x20--role\x20<id>.','Anti-drift\x20check\x20failed:\x20expected\x20','3569784AwZwSs','map','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','User\x20','length','\x22\x20not\x20found\x20in\x20app\x20','Missing\x20user\x20reference.','/smartapi/permit/user-role/update-user-list','102108MBQKcE','expectUserCount','ADMIN','No\x20tenant\x20member\x20matches\x20\x22','26NulxmC','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.','flag','\x22\x20is\x20ambiguous\x20(ids:\x20','join','tenant','\x20is\x20already\x20a\x20member\x20of\x20role\x20','1330plRGfN','test','Pass\x20--role\x20<id|name>.','1645doxWLc','push','\x20built-in\x20role\x20','dryRun','name','Disambiguate\x20with\x20--user\x20<id>.','totalCount','role','nickname','Optional\x20role\x20remark/description','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','Missing\x20role\x20reference.','userId','userCount','username','\x20not\x20found\x20in\x20app\x20','DEV\x20/\x20ADMIN\x20keep\x20full\x20access\x20by\x20design;\x20configure\x20a\x20CUSTOM\x20role\x20instead.','splice','roleType','Role\x20name','Role\x20id\x20','filter','flagMissing','includes',';\x20no\x20change.','toLowerCase','Cannot\x20change\x20the\x20permission\x20matrix\x20of\x20built-in\x20role\x20','userList','\x20not\x20found\x20in\x20the\x20user-role\x20list.','13890wtICOS','USER','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.','Multiple\x20tenant\x20members\x20match\x20\x22','remark','roleName','validation','5208478jwQRFo','111305mnqmPU','40sUwRgA','find','user','Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs','43101PeeiZj','Cannot\x20','appCode','string','expect-user-count','str','12LcNocN','DEV','trim','1007251kDVDSY','number','\x20is\x20not\x20a\x20member\x20of\x20role\x20'];a162_0x4c6c=function(){return _0x14169b;};return a162_0x4c6c();}async function listAllAppRoles(_0x11db98){const _0x227448=a162_0x2d3361,_0x318693=0x64,_0x2ae3dd=[];for(let _0x363802=0x1;;_0x363802+=0x1){const {items:_0x220a51,paging:_0x96f82}=await listAppRoles(_0x11db98,{'currentPage':_0x363802,'pageSize':_0x318693});_0x2ae3dd[_0x227448(0x1eb)](..._0x220a51);if(_0x220a51[_0x227448(0x1d8)]<_0x318693||_0x96f82&&_0x2ae3dd[_0x227448(0x1d8)]>=_0x96f82[_0x227448(0x1f0)])return _0x2ae3dd;}}export async function resolveTenantCode(){const _0x301986=a162_0x2d3361,_0x1c1c53=await getSessionUserInfo(),_0x433fb1=_0x1c1c53?.[_0x301986(0x212)]?.[_0x301986(0x1e5)]?.['tenant_code'];if(!_0x433fb1)throw CliErrors['authRequired']('Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.');return _0x433fb1;}function matchMember(_0x46f661,_0x391113){const _0x29467a=a162_0x2d3361,_0x593b63=_0x391113['trim']()['toLowerCase']();return(_0x46f661['nickname']??'')[_0x29467a(0x203)]()===_0x593b63||(_0x46f661[_0x29467a(0x1f8)]??'')[_0x29467a(0x203)]()===_0x593b63;}export async function resolveUserRef(_0x509595){const _0x4575cb=a162_0x2d3361,_0x3965e7=_0x509595[_0x4575cb(0x21c)]();if(!_0x3965e7)throw CliErrors['validation'](_0x4575cb(0x1da),'Pass\x20--user\x20<id|name>.');const _0x382d4c=await resolveTenantCode(),_0x40a9b6=await getTenantMembers(_0x382d4c);if(/^\d+$/['test'](_0x3965e7)){const _0x267097=Number(_0x3965e7),_0x5ad2fe=_0x40a9b6[_0x4575cb(0x211)](_0x34f8ff=>_0x34f8ff[_0x4575cb(0x1f6)]===_0x267097);return{'userId':_0x267097,'username':_0x5ad2fe?.[_0x4575cb(0x1f8)]??String(_0x267097),'nickname':_0x5ad2fe?.['nickname'],'matchedBy':'id'};}const _0x2acfd7=_0x40a9b6[_0x4575cb(0x1ff)](_0x2779a7=>matchMember(_0x2779a7,_0x3965e7));if(_0x2acfd7[_0x4575cb(0x1d8)]===0x0)throw CliErrors[_0x4575cb(0x20d)](_0x4575cb(0x1df)+_0x3965e7+'\x22.','Check\x20the\x20nickname/username,\x20or\x20pass\x20--user\x20<id>.');if(_0x2acfd7['length']>0x1){const _0x6385e9=_0x2acfd7['map'](_0x195d12=>(_0x195d12[_0x4575cb(0x1f2)]??_0x195d12[_0x4575cb(0x1f8)]??'?')+'('+_0x195d12['userId']+')')[_0x4575cb(0x1e4)](',\x20');throw CliErrors[_0x4575cb(0x20d)](_0x4575cb(0x20a)+_0x3965e7+'\x22:\x20'+_0x6385e9+'.',_0x4575cb(0x1ef));}const _0x4e8cc7=_0x2acfd7[0x0];return{'userId':_0x4e8cc7[_0x4575cb(0x1f6)],'username':_0x4e8cc7[_0x4575cb(0x1f8)]??String(_0x4e8cc7['userId']),'nickname':_0x4e8cc7['nickname'],'matchedBy':_0x4575cb(0x1ee)};}export const UPDATE_USER_LIST_PATH=a162_0x2d3361(0x1db);function userIdsOf(_0x2e569e){const _0x4be973=a162_0x2d3361;return(_0x2e569e?.[_0x4be973(0x205)]??[])[_0x4be973(0x1d5)](_0x4c8f98=>_0x4c8f98[_0x4be973(0x1f6)]);}export function computeRoleUserMutation(_0x43e2af){const _0x448196=a162_0x2d3361,{operation:_0x47a521,appCode:_0x2f8a48,roleUsers:_0x4804a9,targetRoleId:_0x4358af,user:_0x32631c}=_0x43e2af,_0x7645fe=_0x4804a9[_0x448196(0x211)](_0x23d0dd=>_0x23d0dd['id']===_0x4358af);if(!_0x7645fe)throw CliErrors[_0x448196(0x20d)](_0x448196(0x1fe)+_0x4358af+_0x448196(0x206),_0x448196(0x1e1));const _0x340fbe=userIdsOf(_0x7645fe),_0x4e8181=[];if(_0x43e2af[_0x448196(0x1dd)]!==undefined&&_0x43e2af[_0x448196(0x1dd)]!==_0x340fbe[_0x448196(0x1d8)])throw CliErrors[_0x448196(0x20d)](_0x448196(0x1d3)+_0x43e2af[_0x448196(0x1dd)]+'\x20member(s)\x20but\x20role\x20has\x20'+_0x340fbe[_0x448196(0x1d8)]+'.',_0x448196(0x1d6));const _0x2114c9=_0x340fbe[_0x448196(0x201)](_0x32631c[_0x448196(0x1f6)]);let _0x4ce1ad=![];const _0x4cd62d=[..._0x7645fe[_0x448196(0x205)]];if(_0x47a521==='user-add')_0x2114c9?_0x4e8181[_0x448196(0x1eb)](_0x448196(0x1d7)+_0x32631c[_0x448196(0x1f6)]+_0x448196(0x1e6)+_0x7645fe[_0x448196(0x20c)]+';\x20no\x20change.'):(_0x4cd62d[_0x448196(0x1eb)]({'userId':_0x32631c[_0x448196(0x1f6)],'username':_0x32631c[_0x448196(0x1f8)],..._0x32631c[_0x448196(0x1f2)]?{'nickname':_0x32631c['nickname']}:{}}),_0x4ce1ad=!![]);else{if(!_0x2114c9)_0x4e8181[_0x448196(0x1eb)]('User\x20'+_0x32631c[_0x448196(0x1f6)]+_0x448196(0x1d1)+_0x7645fe[_0x448196(0x20c)]+_0x448196(0x202));else{const _0x3c1f34=_0x4cd62d['findIndex'](_0x33f45d=>_0x33f45d['userId']===_0x32631c[_0x448196(0x1f6)]);if(_0x3c1f34>=0x0)_0x4cd62d[_0x448196(0x1fb)](_0x3c1f34,0x1);_0x4ce1ad=!![];}}const _0x519a3c=_0x4804a9['map'](_0x5935de=>_0x5935de['id']===_0x4358af?{..._0x5935de,'userList':_0x4cd62d}:_0x5935de),_0x49deba=_0x4cd62d[_0x448196(0x1d5)](_0x4f228d=>_0x4f228d[_0x448196(0x1f6)]),_0x71884f={'operation':_0x47a521,'selector':{'appCode':_0x2f8a48,'roleId':_0x4358af,'roleName':_0x7645fe[_0x448196(0x20c)],'userId':_0x32631c[_0x448196(0x1f6)]},'before':{'userIds':_0x340fbe},'after':{'userIds':_0x49deba},'dryRun':_0x43e2af[_0x448196(0x1ed)],'backend':{'method':'POST','path':UPDATE_USER_LIST_PATH},'warnings':_0x4e8181};return{'roleList':_0x519a3c,'mutation':_0x71884f,'changed':_0x4ce1ad};}function a162_0x1bb7(_0x2f901c,_0x4625a3){_0x2f901c=_0x2f901c-0x1d0;const _0x4c6c78=a162_0x4c6c();let _0x1bb7b9=_0x4c6c78[_0x2f901c];return _0x1bb7b9;}export async function loadRoleUsers(_0x22ba6b){return listRoleUsers(_0x22ba6b);}export function readRoleRef(_0x15d841){const _0x4e442e=a162_0x2d3361,_0x12942c=_0x15d841[_0x4e442e(0x219)](_0x4e442e(0x1f1))[_0x4e442e(0x21c)]();if(!_0x12942c)throw CliErrors[_0x4e442e(0x200)]('role',_0x4e442e(0x1e9));return _0x12942c;}export async function prepareUserMutation(_0x59d05d,_0x3d4067,_0x415a05){const _0x4e51cc=a162_0x2d3361,_0x542e1c=readRoleRef(_0x59d05d),_0x37b875=_0x59d05d[_0x4e51cc(0x219)]('user')[_0x4e51cc(0x21c)]();if(!_0x37b875)throw CliErrors[_0x4e51cc(0x200)]('user','Pass\x20--user\x20<id|name>.');const _0x3d21af=_0x59d05d[_0x4e51cc(0x1e2)](_0x4e51cc(0x218)),_0x4be5ec=_0x3d21af===undefined||_0x3d21af===null?undefined:Number(_0x3d21af),_0x49d0ad=await resolveRoleRef(_0x59d05d[_0x4e51cc(0x216)],_0x542e1c),_0x5c3725=await resolveUserRef(_0x37b875),_0xd3626a=await loadRoleUsers(_0x59d05d[_0x4e51cc(0x216)]);return computeRoleUserMutation({'operation':_0x3d4067,'appCode':_0x59d05d[_0x4e51cc(0x216)],'roleUsers':_0xd3626a,'targetRoleId':_0x49d0ad['id'],'user':{'userId':_0x5c3725[_0x4e51cc(0x1f6)],'username':_0x5c3725[_0x4e51cc(0x1f8)],'nickname':_0x5c3725[_0x4e51cc(0x1f2)]},'dryRun':_0x415a05,..._0x4be5ec!==undefined?{'expectUserCount':_0x4be5ec}:{}});}
|
|
1
|
+
const a163_0x3ac524=a163_0x537b;(function(_0x5e700e,_0x59b544){const _0x313ade=a163_0x537b,_0x8b95ff=_0x5e700e();while(!![]){try{const _0x4573a8=parseInt(_0x313ade(0xeb))/0x1+parseInt(_0x313ade(0x10c))/0x2+-parseInt(_0x313ade(0x109))/0x3*(parseInt(_0x313ade(0xf9))/0x4)+-parseInt(_0x313ade(0xfe))/0x5+-parseInt(_0x313ade(0xe1))/0x6*(-parseInt(_0x313ade(0xe7))/0x7)+-parseInt(_0x313ade(0xdf))/0x8+parseInt(_0x313ade(0xfd))/0x9;if(_0x4573a8===_0x59b544)break;else _0x8b95ff['push'](_0x8b95ff['shift']());}catch(_0x5dcca0){_0x8b95ff['push'](_0x8b95ff['shift']());}}}(a163_0xb0b2,0x9e92d));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':a163_0x3ac524(0xfa),'required':!![],'description':a163_0x3ac524(0x112)};export const ROLE_REF_FLAG={'name':a163_0x3ac524(0x11b),'type':'string','required':!![],'description':a163_0x3ac524(0xe2)};export const USER_REF_FLAG={'name':'user','type':a163_0x3ac524(0x117),'required':!![],'description':a163_0x3ac524(0xef)};export const NAME_FLAG={'name':a163_0x3ac524(0xea),'type':a163_0x3ac524(0x117),'required':!![],'description':a163_0x3ac524(0xe9)};export const USER_NAME_FLAG={'name':a163_0x3ac524(0xea),'type':a163_0x3ac524(0x117),'required':!![],'description':a163_0x3ac524(0x114)};export const REMARK_FLAG={'name':'remark','type':a163_0x3ac524(0x117),'required':![],'description':'Optional\x20role\x20remark/description'};export const EXPECT_USER_COUNT_FLAG={'name':a163_0x3ac524(0x111),'type':a163_0x3ac524(0xfa),'required':![],'description':a163_0x3ac524(0xe6)};export const BUILTIN_ROLE_TYPES=[a163_0x3ac524(0x102),'DEV','USER'];export function isBuiltinRole(_0xe5fb7f){return BUILTIN_ROLE_TYPES['includes'](_0xe5fb7f);}export function assertCustomRole(_0x39507e,_0x3b3623){const _0x527ac9=a163_0x3ac524;if(_0x39507e[_0x527ac9(0xfc)]!==_0x527ac9(0xe8))throw CliErrors[_0x527ac9(0xec)](_0x527ac9(0x113)+_0x3b3623+_0x527ac9(0x10b)+_0x39507e['roleName']+'\x20('+_0x39507e[_0x527ac9(0xfc)]+').',_0x527ac9(0xf4));}export function assertPermConfigurable(_0x37b727){const _0x419de1=a163_0x3ac524;if(_0x37b727[_0x419de1(0xfc)]==='DEV'||_0x37b727[_0x419de1(0xfc)]==='ADMIN')throw CliErrors['validation'](_0x419de1(0xe4)+_0x37b727['roleName']+'\x20('+_0x37b727['roleType']+').',_0x419de1(0x108));}export function projectRole(_0x183f76){const _0x107009=a163_0x3ac524;return{'id':_0x183f76['id'],'roleName':_0x183f76[_0x107009(0x116)],'roleType':_0x183f76[_0x107009(0xfc)],'remark':_0x183f76[_0x107009(0xee)],'userCount':_0x183f76[_0x107009(0xf7)],'permitCount':_0x183f76[_0x107009(0xe5)],'builtin':isBuiltinRole(_0x183f76['roleType'])};}export async function resolveRoleRef(_0x4e0f2a,_0x4c5295){const _0x3d7276=a163_0x3ac524,_0x3b48e2=_0x4c5295[_0x3d7276(0x11f)]();if(!_0x3b48e2)throw CliErrors[_0x3d7276(0xec)]('Missing\x20role\x20reference.',_0x3d7276(0xed));if(/^\d+$/[_0x3d7276(0xdb)](_0x3b48e2))return getRoleById(_0x4e0f2a,Number(_0x3b48e2));const _0x1f8bee=await listAllAppRoles(_0x4e0f2a),_0x33bb81=_0x1f8bee['filter'](_0x18858=>_0x18858['roleName']===_0x3b48e2);if(_0x33bb81['length']===0x0)throw CliErrors['validation'](_0x3d7276(0xdd)+_0x3b48e2+_0x3d7276(0xf3)+_0x4e0f2a+'.','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles,\x20or\x20pass\x20--role\x20<id>.');if(_0x33bb81['length']>0x1){const _0x10654c=_0x33bb81[_0x3d7276(0x11a)](_0x29015a=>_0x29015a['id'])['join'](',\x20');throw CliErrors[_0x3d7276(0xec)](_0x3d7276(0xdd)+_0x3b48e2+_0x3d7276(0x106)+_0x10654c+').',_0x3d7276(0xf8));}return _0x33bb81[0x0];}export async function getRoleById(_0x218a57,_0x47a662){const _0x11ebac=a163_0x3ac524,_0x3f6997=await getAppRole(_0x47a662);if(!_0x3f6997)throw CliErrors[_0x11ebac(0xec)](_0x11ebac(0xf0)+_0x47a662+'\x20not\x20found\x20in\x20app\x20'+_0x218a57+'.','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.');return _0x3f6997;}function a163_0xb0b2(){const _0x3a31cd=['/smartapi/permit/user-role/update-user-list','7687432mMEgKw','join','711366Jkhpqt','Role\x20id\x20or\x20role\x20name\x20(CUSTOM\x20roles\x20may\x20be\x20referenced\x20by\x20name)','tenant_code','Cannot\x20change\x20the\x20permission\x20matrix\x20of\x20built-in\x20role\x20','permitCount','Anti-drift\x20guard:\x20fail\x20if\x20the\x20role\x27s\x20current\x20member\x20count\x20differs','42TysTAD','CUSTOM','Role\x20name','name','358566RTskqn','validation','Pass\x20--role\x20<id|name>.','remark','User\x20id,\x20username,\x20or\x20nickname\x20to\x20resolve\x20to\x20a\x20userId','Role\x20id\x20','splice','toLowerCase','\x22\x20not\x20found\x20in\x20app\x20','Only\x20CUSTOM\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','dryRun','POST','userCount','Disambiguate\x20with\x20--role\x20<id>.','900572qykzHr','number','nickname','roleType','12784149cnLggX','3845020qIwArX','user','str','appCode','ADMIN','Pass\x20--user\x20<id|name>.','userList','authRequired','\x22\x20is\x20ambiguous\x20(ids:\x20','Multiple\x20tenant\x20members\x20match\x20\x22','DEV\x20/\x20ADMIN\x20keep\x20full\x20access\x20by\x20design;\x20configure\x20a\x20CUSTOM\x20role\x20instead.','15rswAIE','username','\x20built-in\x20role\x20','2029544SePSNJ','Missing\x20user\x20reference.','userId','\x22:\x20','includes','expect-user-count','Role\x20id\x20(from\x20`role\x20list`)','Cannot\x20','Nickname\x20or\x20username\x20to\x20resolve\x20to\x20a\x20userId','\x20is\x20not\x20a\x20member\x20of\x20role\x20','roleName','string','flag','Re-run\x20`role\x20detail`\x20/\x20`role\x20list`\x20and\x20retry\x20with\x20the\x20current\x20count.','map','role','expectUserCount','user-add','find','trim','Run\x20`role\x20list`\x20to\x20see\x20available\x20roles.','User\x20','push',';\x20no\x20change.','flagMissing','\x20is\x20already\x20a\x20member\x20of\x20role\x20','No\x20tenant\x20member\x20matches\x20\x22','length','test','Anti-drift\x20check\x20failed:\x20expected\x20','Role\x20name\x20\x22'];a163_0xb0b2=function(){return _0x3a31cd;};return a163_0xb0b2();}async function listAllAppRoles(_0x30c365){const _0x52fbfe=a163_0x3ac524,_0x5da16d=0x64,_0x3278fe=[];for(let _0x5984c0=0x1;;_0x5984c0+=0x1){const {items:_0x33130e,paging:_0x4908ab}=await listAppRoles(_0x30c365,{'currentPage':_0x5984c0,'pageSize':_0x5da16d});_0x3278fe[_0x52fbfe(0xd5)](..._0x33130e);if(_0x33130e['length']<_0x5da16d||_0x4908ab&&_0x3278fe[_0x52fbfe(0xda)]>=_0x4908ab['totalCount'])return _0x3278fe;}}export async function resolveTenantCode(){const _0x42a21f=a163_0x3ac524,_0xbc0a1f=await getSessionUserInfo(),_0x4a637e=_0xbc0a1f?.[_0x42a21f(0xff)]?.['tenant']?.[_0x42a21f(0xe3)];if(!_0x4a637e)throw CliErrors[_0x42a21f(0x105)]('Cannot\x20resolve\x20current\x20tenant.\x20Run\x20`rabetbase\x20auth\x20login`\x20first.');return _0x4a637e;}function matchMember(_0x44617b,_0x3e8486){const _0x5c264a=a163_0x3ac524,_0x5d92b4=_0x3e8486[_0x5c264a(0x11f)]()['toLowerCase']();return(_0x44617b[_0x5c264a(0xfb)]??'')[_0x5c264a(0xf2)]()===_0x5d92b4||(_0x44617b['username']??'')[_0x5c264a(0xf2)]()===_0x5d92b4;}export async function resolveUserRef(_0xdd49ab){const _0x4f0256=a163_0x3ac524,_0x3e7ea7=_0xdd49ab[_0x4f0256(0x11f)]();if(!_0x3e7ea7)throw CliErrors[_0x4f0256(0xec)](_0x4f0256(0x10d),_0x4f0256(0x103));const _0xbf0f1f=await resolveTenantCode(),_0x1f8513=await getTenantMembers(_0xbf0f1f);if(/^\d+$/[_0x4f0256(0xdb)](_0x3e7ea7)){const _0x858e7e=Number(_0x3e7ea7),_0x1698a5=_0x1f8513[_0x4f0256(0x11e)](_0x2759d1=>_0x2759d1[_0x4f0256(0x10e)]===_0x858e7e);return{'userId':_0x858e7e,'username':_0x1698a5?.[_0x4f0256(0x10a)]??String(_0x858e7e),'nickname':_0x1698a5?.[_0x4f0256(0xfb)],'matchedBy':'id'};}const _0xca651=_0x1f8513['filter'](_0x5a4ebb=>matchMember(_0x5a4ebb,_0x3e7ea7));if(_0xca651[_0x4f0256(0xda)]===0x0)throw CliErrors[_0x4f0256(0xec)](_0x4f0256(0xd9)+_0x3e7ea7+'\x22.','Check\x20the\x20nickname/username,\x20or\x20pass\x20--user\x20<id>.');if(_0xca651['length']>0x1){const _0x599ede=_0xca651[_0x4f0256(0x11a)](_0x43d3c9=>(_0x43d3c9[_0x4f0256(0xfb)]??_0x43d3c9[_0x4f0256(0x10a)]??'?')+'('+_0x43d3c9[_0x4f0256(0x10e)]+')')[_0x4f0256(0xe0)](',\x20');throw CliErrors[_0x4f0256(0xec)](_0x4f0256(0x107)+_0x3e7ea7+_0x4f0256(0x10f)+_0x599ede+'.','Disambiguate\x20with\x20--user\x20<id>.');}const _0x45a72c=_0xca651[0x0];return{'userId':_0x45a72c[_0x4f0256(0x10e)],'username':_0x45a72c['username']??String(_0x45a72c[_0x4f0256(0x10e)]),'nickname':_0x45a72c[_0x4f0256(0xfb)],'matchedBy':_0x4f0256(0xea)};}export const UPDATE_USER_LIST_PATH=a163_0x3ac524(0xde);function a163_0x537b(_0x10505e,_0x4c86fe){_0x10505e=_0x10505e-0xd4;const _0xb0b21a=a163_0xb0b2();let _0x537ba7=_0xb0b21a[_0x10505e];return _0x537ba7;}function userIdsOf(_0x391955){const _0x43e2a5=a163_0x3ac524;return(_0x391955?.[_0x43e2a5(0x104)]??[])[_0x43e2a5(0x11a)](_0x251c10=>_0x251c10[_0x43e2a5(0x10e)]);}export function computeRoleUserMutation(_0x4866ee){const _0x4fb76c=a163_0x3ac524,{operation:_0x49d3aa,appCode:_0x180757,roleUsers:_0x33844d,targetRoleId:_0x9e6be0,user:_0x3440b8}=_0x4866ee,_0x3a185b=_0x33844d[_0x4fb76c(0x11e)](_0x34a644=>_0x34a644['id']===_0x9e6be0);if(!_0x3a185b)throw CliErrors[_0x4fb76c(0xec)]('Role\x20id\x20'+_0x9e6be0+'\x20not\x20found\x20in\x20the\x20user-role\x20list.',_0x4fb76c(0x120));const _0x14305b=userIdsOf(_0x3a185b),_0x2cb22b=[];if(_0x4866ee[_0x4fb76c(0x11c)]!==undefined&&_0x4866ee[_0x4fb76c(0x11c)]!==_0x14305b['length'])throw CliErrors['validation'](_0x4fb76c(0xdc)+_0x4866ee['expectUserCount']+'\x20member(s)\x20but\x20role\x20has\x20'+_0x14305b[_0x4fb76c(0xda)]+'.',_0x4fb76c(0x119));const _0x1191cc=_0x14305b[_0x4fb76c(0x110)](_0x3440b8[_0x4fb76c(0x10e)]);let _0x42d464=![];const _0x301aa8=[..._0x3a185b[_0x4fb76c(0x104)]];if(_0x49d3aa===_0x4fb76c(0x11d))_0x1191cc?_0x2cb22b['push']('User\x20'+_0x3440b8[_0x4fb76c(0x10e)]+_0x4fb76c(0xd8)+_0x3a185b[_0x4fb76c(0x116)]+_0x4fb76c(0xd6)):(_0x301aa8[_0x4fb76c(0xd5)]({'userId':_0x3440b8[_0x4fb76c(0x10e)],'username':_0x3440b8[_0x4fb76c(0x10a)],..._0x3440b8[_0x4fb76c(0xfb)]?{'nickname':_0x3440b8[_0x4fb76c(0xfb)]}:{}}),_0x42d464=!![]);else{if(!_0x1191cc)_0x2cb22b['push'](_0x4fb76c(0xd4)+_0x3440b8[_0x4fb76c(0x10e)]+_0x4fb76c(0x115)+_0x3a185b[_0x4fb76c(0x116)]+_0x4fb76c(0xd6));else{const _0x35f336=_0x301aa8['findIndex'](_0x1112bb=>_0x1112bb[_0x4fb76c(0x10e)]===_0x3440b8['userId']);if(_0x35f336>=0x0)_0x301aa8[_0x4fb76c(0xf1)](_0x35f336,0x1);_0x42d464=!![];}}const _0x9d9f0e=_0x33844d[_0x4fb76c(0x11a)](_0x40c66a=>_0x40c66a['id']===_0x9e6be0?{..._0x40c66a,'userList':_0x301aa8}:_0x40c66a),_0x2ddb5f=_0x301aa8['map'](_0x3d5ac0=>_0x3d5ac0[_0x4fb76c(0x10e)]),_0x155f9b={'operation':_0x49d3aa,'selector':{'appCode':_0x180757,'roleId':_0x9e6be0,'roleName':_0x3a185b['roleName'],'userId':_0x3440b8[_0x4fb76c(0x10e)]},'before':{'userIds':_0x14305b},'after':{'userIds':_0x2ddb5f},'dryRun':_0x4866ee[_0x4fb76c(0xf5)],'backend':{'method':_0x4fb76c(0xf6),'path':UPDATE_USER_LIST_PATH},'warnings':_0x2cb22b};return{'roleList':_0x9d9f0e,'mutation':_0x155f9b,'changed':_0x42d464};}export async function loadRoleUsers(_0x553b5e){return listRoleUsers(_0x553b5e);}export function readRoleRef(_0x3fd66b){const _0x7dde9=a163_0x3ac524,_0x57eb70=_0x3fd66b[_0x7dde9(0x100)]('role')[_0x7dde9(0x11f)]();if(!_0x57eb70)throw CliErrors[_0x7dde9(0xd7)](_0x7dde9(0x11b),_0x7dde9(0xed));return _0x57eb70;}export async function prepareUserMutation(_0x1c16ee,_0x4354cf,_0x46846d){const _0x2a08b9=a163_0x3ac524,_0x282529=readRoleRef(_0x1c16ee),_0x575723=_0x1c16ee['str'](_0x2a08b9(0xff))['trim']();if(!_0x575723)throw CliErrors['flagMissing'](_0x2a08b9(0xff),'Pass\x20--user\x20<id|name>.');const _0x14e385=_0x1c16ee[_0x2a08b9(0x118)]('expect-user-count'),_0x131655=_0x14e385===undefined||_0x14e385===null?undefined:Number(_0x14e385),_0x6bf5b5=await resolveRoleRef(_0x1c16ee[_0x2a08b9(0x101)],_0x282529),_0x3dc6fc=await resolveUserRef(_0x575723),_0x250cfc=await loadRoleUsers(_0x1c16ee[_0x2a08b9(0x101)]);return computeRoleUserMutation({'operation':_0x4354cf,'appCode':_0x1c16ee['appCode'],'roleUsers':_0x250cfc,'targetRoleId':_0x6bf5b5['id'],'user':{'userId':_0x3dc6fc[_0x2a08b9(0x10e)],'username':_0x3dc6fc['username'],'nickname':_0x3dc6fc[_0x2a08b9(0xfb)]},'dryRun':_0x46846d,..._0x131655!==undefined?{'expectUserCount':_0x131655}:{}});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a164_0x307149=a164_0x16f9;(function(_0x410ed8,_0x310c59){const _0x51f04b=a164_0x16f9,_0x49085e=_0x410ed8();while(!![]){try{const _0x3a8c35=parseInt(_0x51f04b(0x206))/0x1+parseInt(_0x51f04b(0x202))/0x2+-parseInt(_0x51f04b(0x1f7))/0x3*(-parseInt(_0x51f04b(0x20a))/0x4)+-parseInt(_0x51f04b(0x1f9))/0x5*(parseInt(_0x51f04b(0x203))/0x6)+-parseInt(_0x51f04b(0x1f0))/0x7+parseInt(_0x51f04b(0x1ff))/0x8*(parseInt(_0x51f04b(0x1f6))/0x9)+-parseInt(_0x51f04b(0x200))/0xa*(-parseInt(_0x51f04b(0x204))/0xb);if(_0x3a8c35===_0x310c59)break;else _0x49085e['push'](_0x49085e['shift']());}catch(_0x42b49d){_0x49085e['push'](_0x49085e['shift']());}}}(a164_0xd856,0xe2a4e));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='/smartapi/permit/role/update';function a164_0x16f9(_0x55655b,_0x12f254){_0x55655b=_0x55655b-0x1f0;const _0xd856f8=a164_0xd856();let _0x16f9f7=_0xd856f8[_0x55655b];return _0x16f9f7;}function readPatch(_0x8edc1b){const _0x1fa022=a164_0x16f9,_0x2cfed6=_0x8edc1b[_0x1fa022(0x1f8)](_0x1fa022(0x1f3)),_0x12b143=_0x8edc1b[_0x1fa022(0x1f8)](_0x1fa022(0x1fc)),_0x2c4f38={};if(_0x2cfed6!==undefined&&_0x2cfed6!==null){const _0x4124cc=String(_0x2cfed6)[_0x1fa022(0x1f2)]();if(!_0x4124cc)throw CliErrors[_0x1fa022(0x207)](_0x1fa022(0x209));if(_0x4124cc['length']>0x40)throw CliErrors[_0x1fa022(0x207)](_0x1fa022(0x1fb));_0x2c4f38['roleName']=_0x4124cc;}_0x12b143!==undefined&&_0x12b143!==null&&(_0x2c4f38[_0x1fa022(0x1fc)]=String(_0x12b143));if(_0x2c4f38[_0x1fa022(0x1fe)]===undefined&&_0x2c4f38['remark']===undefined)throw CliErrors['validation']('Nothing\x20to\x20update.','Pass\x20at\x20least\x20one\x20of\x20--name\x20/\x20--remark.');return _0x2c4f38;}function a164_0xd856(){const _0x17d7d1=['Role\x20name\x20cannot\x20exceed\x2064\x20characters.','remark','appCode','roleName','603416YNXMbW','10OwBjjY','\x20(id=','1461138AcfJwk','1632aseVZQ','15710541BCqkzq','Update\x20a\x20CUSTOM\x20role\x27s\x20name/remark\x20(DEV/ADMIN\x20rejected)','118592bJGyyj','validation','update','--name\x20cannot\x20be\x20empty.','28AbsQTi','4491088kzCIPj','string','trim','name','POST','role','45IheCaw','298827vVEzrG','flag','32755lGWGMy','Updated\x20role\x20'];a164_0xd856=function(){return _0x17d7d1;};return a164_0xd856();}export const roleUpdate={'service':a164_0x307149(0x1f5),'command':a164_0x307149(0x208),'description':a164_0x307149(0x205),'risk':'write','flags':[ROLE_ID_FLAG,{...REMARK_FLAG},{'name':'name','type':a164_0x307149(0x1f1),'required':![],'description':'New\x20role\x20name'},APPCODE_FLAG_OPTIONAL],async 'validate'(_0x4870a8){readPatch(_0x4870a8);},async 'dryRun'(_0x5e8ad0){const _0x37677e=a164_0x307149,_0x3fa776=_0x5e8ad0['num']('id'),_0x133188=readPatch(_0x5e8ad0),_0x17e8a9=await getRoleById(_0x5e8ad0[_0x37677e(0x1fd)],_0x3fa776);return assertCustomRole(_0x17e8a9,_0x37677e(0x208)),asDryRunResult({'operation':_0x37677e(0x208),'selector':{'appCode':_0x5e8ad0['appCode'],'roleId':_0x3fa776,'roleName':_0x17e8a9[_0x37677e(0x1fe)]},'before':projectRole(_0x17e8a9),'after':projectRole({..._0x17e8a9,..._0x133188[_0x37677e(0x1fe)]!==undefined?{'roleName':_0x133188['roleName']}:{},..._0x133188['remark']!==undefined?{'remark':_0x133188[_0x37677e(0x1fc)]}:{}}),'dryRun':!![],'backend':{'method':_0x37677e(0x1f4),'path':UPDATE_PATH},'warnings':[]},{'method':_0x37677e(0x1f4),'url':UPDATE_PATH});},async 'execute'(_0x3fa4bb){const _0x4bb447=a164_0x307149,_0x2878b8=_0x3fa4bb['num']('id'),_0x2009f0=readPatch(_0x3fa4bb),_0x1586c6=await getRoleById(_0x3fa4bb[_0x4bb447(0x1fd)],_0x2878b8);assertCustomRole(_0x1586c6,_0x4bb447(0x208)),await updateAppRole({'id':_0x2878b8,'appCode':_0x3fa4bb[_0x4bb447(0x1fd)],..._0x2009f0['roleName']!==undefined?{'roleName':_0x2009f0[_0x4bb447(0x1fe)]}:{},..._0x2009f0[_0x4bb447(0x1fc)]!==undefined?{'remark':_0x2009f0[_0x4bb447(0x1fc)]}:{}});const _0x398586=await getRoleById(_0x3fa4bb[_0x4bb447(0x1fd)],_0x2878b8);return{'ok':!![],'data':{'operation':_0x4bb447(0x208),'selector':{'appCode':_0x3fa4bb[_0x4bb447(0x1fd)],'roleId':_0x2878b8,'roleName':_0x398586[_0x4bb447(0x1fe)]},'before':projectRole(_0x1586c6),'after':projectRole(_0x398586),'dryRun':![],'backend':{'method':_0x4bb447(0x1f4),'path':UPDATE_PATH},'warnings':[]},'message':_0x4bb447(0x1fa)+_0x398586[_0x4bb447(0x1fe)]+_0x4bb447(0x201)+_0x2878b8+')'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a165_0x197348=a165_0x2e00;function a165_0x2e00(_0x4132c4,_0x3cbe82){_0x4132c4=_0x4132c4-0xab;const _0x4fb4c2=a165_0x4fb4();let _0x2e00eb=_0x4fb4c2[_0x4132c4];return _0x2e00eb;}(function(_0x34e2ac,_0x34f8da){const _0x29fb5f=a165_0x2e00,_0x376711=_0x34e2ac();while(!![]){try{const _0x52103e=-parseInt(_0x29fb5f(0xb8))/0x1+parseInt(_0x29fb5f(0xb3))/0x2*(parseInt(_0x29fb5f(0xba))/0x3)+parseInt(_0x29fb5f(0xac))/0x4*(-parseInt(_0x29fb5f(0xaf))/0x5)+-parseInt(_0x29fb5f(0xb1))/0x6+parseInt(_0x29fb5f(0xae))/0x7*(-parseInt(_0x29fb5f(0xbc))/0x8)+-parseInt(_0x29fb5f(0xbd))/0x9+parseInt(_0x29fb5f(0xb4))/0xa*(parseInt(_0x29fb5f(0xbb))/0xb);if(_0x52103e===_0x34f8da)break;else _0x376711['push'](_0x376711['shift']());}catch(_0x178845){_0x376711['push'](_0x376711['shift']());}}}(a165_0x4fb4,0x3a243));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 a165_0x4fb4(){const _0x45be4a=['4zkomAy','\x20already\x20in\x20role\x20','7GBepPO','2271470ilrzBd','No\x20change:\x20user\x20','406896eJfFBB','roleName','895946xxVJyq','29180lpCknl','\x20to\x20role\x20','userId','POST','369849PHzwcZ','user-add','3DaAaQs','4631cLFVYr','1942176eyJQgU','2732157NKTmEO','selector'];a165_0x4fb4=function(){return _0x45be4a;};return a165_0x4fb4();}export const roleUserAdd={'service':'role','command':a165_0x197348(0xb9),'description':'Add\x20a\x20user\x20to\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','risk':'high-risk-write','flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x56963f){const _0x3c3f30=a165_0x197348,{mutation:_0x35de15}=await prepareUserMutation(_0x56963f,_0x3c3f30(0xb9),!![]);return asDryRunResult(_0x35de15,{'method':_0x3c3f30(0xb7),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x10d9fb){const _0x30a53d=a165_0x197348,{roleList:_0x304a67,mutation:_0x3f3d89,changed:_0x55433a}=await prepareUserMutation(_0x10d9fb,'user-add',![]);return _0x55433a&&await updateRoleUsers(_0x10d9fb['appCode'],_0x304a67),{'ok':!![],'data':_0x3f3d89,'message':_0x55433a?'Added\x20user\x20'+_0x3f3d89[_0x30a53d(0xab)]['userId']+_0x30a53d(0xb5)+_0x3f3d89[_0x30a53d(0xab)][_0x30a53d(0xb2)]:_0x30a53d(0xb0)+_0x3f3d89[_0x30a53d(0xab)][_0x30a53d(0xb6)]+_0x30a53d(0xad)+_0x3f3d89['selector'][_0x30a53d(0xb2)]};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a166_0x199cbb=a166_0x5b6f;(function(_0x3b6d32,_0x31067a){const _0x45cc19=a166_0x5b6f,_0x59dbab=_0x3b6d32();while(!![]){try{const _0x4a7f2d=parseInt(_0x45cc19(0x193))/0x1+parseInt(_0x45cc19(0x19d))/0x2+parseInt(_0x45cc19(0x18d))/0x3*(parseInt(_0x45cc19(0x1a0))/0x4)+-parseInt(_0x45cc19(0x191))/0x5+parseInt(_0x45cc19(0x19a))/0x6*(-parseInt(_0x45cc19(0x195))/0x7)+parseInt(_0x45cc19(0x19b))/0x8*(-parseInt(_0x45cc19(0x197))/0x9)+-parseInt(_0x45cc19(0x196))/0xa*(-parseInt(_0x45cc19(0x198))/0xb);if(_0x4a7f2d===_0x31067a)break;else _0x59dbab['push'](_0x59dbab['shift']());}catch(_0x37dbec){_0x59dbab['push'](_0x59dbab['shift']());}}}(a166_0xce77,0xab282));function a166_0xce77(){const _0x2437ae=['\x20from\x20role\x20','\x20not\x20in\x20role\x20','3436yNZGro','selector','Remove\x20a\x20user\x20from\x20a\x20role\x20(internal\x20merge\x20+\x20anti-drift);\x20requires\x20--yes','high-risk-write','3372bHIqto','No\x20change:\x20user\x20','POST','roleName','4295740qxQKUs','userId','1013243SjJtoN','role','840kKmJKK','30MlyIVC','9tJxuBa','1236224moioMq','Removed\x20user\x20','50028eSabJD','6323064ykRWSf','user-remove','2070476PzReZY'];a166_0xce77=function(){return _0x2437ae;};return a166_0xce77();}import{updateRoleUsers}from'../../core/api-client.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a166_0x5b6f(_0x2c4451,_0x4b678d){_0x2c4451=_0x2c4451-0x18d;const _0xce775e=a166_0xce77();let _0x5b6f32=_0xce775e[_0x2c4451];return _0x5b6f32;}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';export const roleUserRemove={'service':a166_0x199cbb(0x194),'command':'user-remove','description':a166_0x199cbb(0x1a2),'risk':a166_0x199cbb(0x1a3),'flags':[ROLE_REF_FLAG,USER_REF_FLAG,EXPECT_USER_COUNT_FLAG,APPCODE_FLAG_OPTIONAL],async 'dryRun'(_0x97f13){const _0x3a217a=a166_0x199cbb,{mutation:_0x4200f4}=await prepareUserMutation(_0x97f13,_0x3a217a(0x19c),!![]);return asDryRunResult(_0x4200f4,{'method':_0x3a217a(0x18f),'url':UPDATE_USER_LIST_PATH});},async 'execute'(_0x2293b2){const _0x17a4fe=a166_0x199cbb,{roleList:_0x5628bf,mutation:_0x36ed64,changed:_0x2be532}=await prepareUserMutation(_0x2293b2,_0x17a4fe(0x19c),![]);return _0x2be532&&await updateRoleUsers(_0x2293b2['appCode'],_0x5628bf),{'ok':!![],'data':_0x36ed64,'message':_0x2be532?_0x17a4fe(0x199)+_0x36ed64[_0x17a4fe(0x1a1)][_0x17a4fe(0x192)]+_0x17a4fe(0x19e)+_0x36ed64[_0x17a4fe(0x1a1)][_0x17a4fe(0x190)]:_0x17a4fe(0x18e)+_0x36ed64[_0x17a4fe(0x1a1)]['userId']+_0x17a4fe(0x19f)+_0x36ed64[_0x17a4fe(0x1a1)]['roleName']};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a167_0x3333ca=a167_0x508b;function a167_0x30bf(){const _0x5d2186=['matchedBy','15117NamBaj','name','2309209Queotu','8WeQJwf','2253018yTjmcY','role','nickname','1397214sVPTTR','trim','user-resolve','read','username','518572haHCJL','5634765WBKhte','Resolved\x20\x22','Resolve\x20a\x20nickname/username\x20to\x20a\x20userId\x20(tenant\x20member\x20directory)','Pass\x20--name\x20<nickname|username>.','70OhTBvy','5kFCvVQ','flagMissing','12506980phqfCU'];a167_0x30bf=function(){return _0x5d2186;};return a167_0x30bf();}(function(_0x58a5b3,_0x552f31){const _0x287c4b=a167_0x508b,_0x31c186=_0x58a5b3();while(!![]){try{const _0xed7c5d=parseInt(_0x287c4b(0x104))/0x1*(parseInt(_0x287c4b(0xff))/0x2)+parseInt(_0x287c4b(0xf2))/0x3+parseInt(_0x287c4b(0xfa))/0x4*(-parseInt(_0x287c4b(0x100))/0x5)+parseInt(_0x287c4b(0xf5))/0x6+-parseInt(_0x287c4b(0xf0))/0x7*(parseInt(_0x287c4b(0xf1))/0x8)+parseInt(_0x287c4b(0xfb))/0x9+-parseInt(_0x287c4b(0x102))/0xa;if(_0xed7c5d===_0x552f31)break;else _0x31c186['push'](_0x31c186['shift']());}catch(_0x3c3e46){_0x31c186['push'](_0x31c186['shift']());}}}(a167_0x30bf,0x68b1b));import{CliErrors}from'../../errors.js';import{APPCODE_FLAG_OPTIONAL}from'../../commands/common/flags.js';function a167_0x508b(_0x419a7f,_0x335090){_0x419a7f=_0x419a7f-0xf0;const _0x30bf60=a167_0x30bf();let _0x508bac=_0x30bf60[_0x419a7f];return _0x508bac;}import{resolveUserRef,USER_NAME_FLAG}from'../../commands/role/shared.js';export const roleUserResolve={'service':a167_0x3333ca(0xf3),'command':a167_0x3333ca(0xf7),'description':a167_0x3333ca(0xfd),'risk':a167_0x3333ca(0xf8),'flags':[USER_NAME_FLAG,APPCODE_FLAG_OPTIONAL],async 'validate'(_0x38b408){const _0xee5fdb=a167_0x3333ca;if(!_0x38b408['str'](_0xee5fdb(0x105))[_0xee5fdb(0xf6)]())throw CliErrors[_0xee5fdb(0x101)]('name',_0xee5fdb(0xfe));},async 'execute'(_0x133e92){const _0x128c45=a167_0x3333ca,_0x456c13=_0x133e92['str'](_0x128c45(0x105))['trim'](),_0x4f8b82=await resolveUserRef(_0x456c13);return{'ok':!![],'data':{'user':{'userId':_0x4f8b82['userId'],'username':_0x4f8b82[_0x128c45(0xf9)],'nickname':_0x4f8b82[_0x128c45(0xf4)],'matchedBy':_0x4f8b82[_0x128c45(0x103)]}},'message':_0x128c45(0xfc)+_0x456c13+'\x22\x20→\x20userId\x20'+_0x4f8b82['userId']};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a168_0x44d9f3=a168_0x164c;(function(_0x371924,_0x25a6dd){const _0x49099a=a168_0x164c,_0x2048d9=_0x371924();while(!![]){try{const _0x1211f2=parseInt(_0x49099a(0xff))/0x1+-parseInt(_0x49099a(0x130))/0x2*(-parseInt(_0x49099a(0x126))/0x3)+parseInt(_0x49099a(0x102))/0x4+parseInt(_0x49099a(0x107))/0x5+parseInt(_0x49099a(0x115))/0x6+-parseInt(_0x49099a(0x12f))/0x7+parseInt(_0x49099a(0x10e))/0x8*(-parseInt(_0x49099a(0x123))/0x9);if(_0x1211f2===_0x25a6dd)break;else _0x2048d9['push'](_0x2048d9['shift']());}catch(_0x134720){_0x2048d9['push'](_0x2048d9['shift']());}}}(a168_0x39da,0xb565c));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';function a168_0x164c(_0x2194d8,_0x7056de){_0x2194d8=_0x2194d8-0xf8;const _0x39da60=a168_0x39da();let _0x164c47=_0x39da60[_0x2194d8];return _0x164c47;}const VERSION_CHECK_SCRIPTS=new Set([a168_0x44d9f3(0xf8),a168_0x44d9f3(0xf9)]);function readPackageScripts(_0x37357d){const _0x59ccbb=a168_0x44d9f3,_0x4942a5=resolve(_0x37357d,_0x59ccbb(0x12e));if(!existsSync(_0x4942a5))return null;try{const _0x1646ae=JSON[_0x59ccbb(0x132)](readFileSync(_0x4942a5,_0x59ccbb(0x10a)));return _0x1646ae[_0x59ccbb(0x105)]??{};}catch{return null;}}function detectPackageManager(_0x40ed04){const _0x26e68b=a168_0x44d9f3;if(existsSync(resolve(_0x40ed04,_0x26e68b(0x10f)))||existsSync(resolve(_0x40ed04,_0x26e68b(0x122))))return'bun';if(existsSync(resolve(_0x40ed04,'pnpm-lock.yaml')))return _0x26e68b(0x131);if(existsSync(resolve(_0x40ed04,_0x26e68b(0x12a))))return _0x26e68b(0x11f);return _0x26e68b(0x124);}function a168_0x39da(){const _0x3e4e95=['\x22\x20not\x20found\x20in\x20package.json.','scripts','\x20run\x20','715200WUfOxT','read','all','utf-8','args','watch','belowMinimum','27311224npoPjX','bun.lockb','\x20exited\x20with\x20code\x20','has','\x0a\x20\x20Usage:\x20','(none)','node_modules','7052694ydUBrs','\x20\x20\x20\x20','No\x20scripts\x20defined\x20in\x20package.json.','keys','needsUpgrade','Run\x20a\x20package.json\x20script','inherit','\x20run\x20preview','push','validation','yarn','Script\x20name\x20defined\x20in\x20package.json','preview','bun.lock','9SMBnfe','npm','Enable\x20watch\x20mode\x20for\x20preview','12TBndeo','Available:\x20','vite\x20build\x20--watch\x20exited\x20with\x20code\x20','join','yarn.lock','cwd','\x20\x20EXAMPLES','error','package.json','1300628QGrphD','567172JDCYia','pnpm','parse','vite\x20preview\x20exited\x20with\x20code\x20','.bin','run','\x20run\x20start','start','dev','Script\x20\x22','log','slice','\x20run\x20build','No\x20package.json\x20found\x20in\x20current\x20directory.','940227dXpLVy','\x20run\x20<script>\x0a','bool','3798604btzTNn','close'];a168_0x39da=function(){return _0x3e4e95;};return a168_0x39da();}async function versionCheck(_0x468034){const _0x451cff=a168_0x44d9f3,_0x438a16=await checkCliVersion();(_0x438a16[_0x451cff(0x119)]||_0x438a16[_0x451cff(0x10d)])&&(printCliUpgradeWarning(_0x438a16),assertCliVersionSupported(_0x438a16));const _0x5477b1=await checkSdkVersion(_0x468034);if(_0x5477b1[_0x451cff(0x119)])printSdkUpgradeWarning(_0x5477b1);}function spawnScript(_0x4cded8,_0xbcd94c,_0x35be4a,_0xb25ed9){return new Promise((_0x550d21,_0x392481)=>{const _0x5bac57=a168_0x164c,_0x1be665=[_0x5bac57(0x135),_0xbcd94c,..._0x35be4a],_0x42e3b9=spawn(_0x4cded8,_0x1be665,{'cwd':_0xb25ed9,'stdio':_0x5bac57(0x11b),'shell':!![],'env':{...process.env,'PATH':''+join(_0xb25ed9,_0x5bac57(0x114),_0x5bac57(0x134))+delimiter+process.env.PATH}});_0x42e3b9['on'](_0x5bac57(0x103),_0x2b6bd0=>{const _0x30d0a3=_0x5bac57;if(_0x2b6bd0===0x0||_0x2b6bd0===null)_0x550d21();else _0x392481(new Error(_0x4cded8+_0x30d0a3(0x106)+_0xbcd94c+_0x30d0a3(0x110)+_0x2b6bd0));}),_0x42e3b9['on'](_0x5bac57(0x12d),_0x392481);});}function spawnViteBuildWatch(_0x5d6eae){return new Promise((_0x5670b4,_0x5e423b)=>{const _0x3e9db0=a168_0x164c,_0x367e9b=spawn('vite',['build','--watch'],{'cwd':_0x5d6eae,'stdio':_0x3e9db0(0x11b),'shell':!![],'env':{...process.env,'PATH':''+join(_0x5d6eae,'node_modules',_0x3e9db0(0x134))+delimiter+process.env.PATH}});_0x367e9b['on']('close',_0x3f9fdd=>{const _0x390a31=_0x3e9db0;if(_0x3f9fdd===0x0||_0x3f9fdd===null)_0x5670b4();else _0x5e423b(new Error(_0x390a31(0x128)+_0x3f9fdd));}),_0x367e9b['on'](_0x3e9db0(0x12d),_0x5e423b);});}function spawnVitePreview(_0xb05874){return new Promise((_0x217e6b,_0x490a85)=>{const _0x1c6479=a168_0x164c,_0x19399f=spawn('vite',[_0x1c6479(0x121)],{'cwd':_0xb05874,'stdio':'inherit','shell':!![],'env':{...process.env,'PATH':''+join(_0xb05874,_0x1c6479(0x114),_0x1c6479(0x134))+delimiter+process.env.PATH}});_0x19399f['on'](_0x1c6479(0x103),_0xa03136=>{const _0x26112f=_0x1c6479;if(_0xa03136===0x0||_0xa03136===null)_0x217e6b();else _0x490a85(new Error(_0x26112f(0x133)+_0xa03136));}),_0x19399f['on'](_0x1c6479(0x12d),_0x490a85);});}const runFlags=[{'name':a168_0x44d9f3(0x10c),'type':'boolean','description':a168_0x44d9f3(0x125),'default':![]}];export const runDefinition={'service':a168_0x44d9f3(0x135),'command':a168_0x44d9f3(0x135),'description':a168_0x44d9f3(0x11a),'risk':a168_0x44d9f3(0x108),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':'script','description':a168_0x44d9f3(0x120),'required':![]}],'flags':runFlags,'helpExtra':()=>{const _0x421bea=a168_0x44d9f3,_0x2f6a78=[];return _0x2f6a78['push'](_0x421bea(0x12c)),_0x2f6a78[_0x421bea(0x11d)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x421bea(0x136)),_0x2f6a78[_0x421bea(0x11d)](_0x421bea(0x116)+CLI_BIN_NAME+_0x421bea(0xfd)),_0x2f6a78[_0x421bea(0x11d)]('\x20\x20\x20\x20'+CLI_BIN_NAME+_0x421bea(0x11c)),_0x2f6a78[_0x421bea(0x11d)]('\x20\x20\x20\x20'+CLI_BIN_NAME+'\x20run\x20preview\x20--watch'),_0x2f6a78[_0x421bea(0x129)]('\x0a');},async 'execute'(_0x1f48f4){const _0x1da6e4=a168_0x44d9f3,_0x3dcc7c=process[_0x1da6e4(0x12b)](),_0x53f69e=_0x1f48f4[_0x1da6e4(0x10b)][0x0],_0x5a5043=_0x1f48f4[_0x1da6e4(0x10b)][_0x1da6e4(0xfc)](0x1),_0x4b7ed8=readPackageScripts(_0x3dcc7c);if(!_0x4b7ed8)throw CliErrors[_0x1da6e4(0x11e)](_0x1da6e4(0xfe));if(!_0x53f69e){const _0x55cca6=Object[_0x1da6e4(0x118)](_0x4b7ed8);if(_0x55cca6['length']===0x0)console['log'](_0x1da6e4(0x117));else{console[_0x1da6e4(0xfb)]('\x0a\x20\x20Available\x20scripts:\x0a');for(const _0x343693 of _0x55cca6){console['log']('\x20\x20\x20\x20'+_0x343693);}console['log'](_0x1da6e4(0x112)+CLI_BIN_NAME+_0x1da6e4(0x100));}return{'ok':!![]};}if(!_0x4b7ed8[_0x53f69e])throw CliErrors[_0x1da6e4(0x11e)](_0x1da6e4(0xfa)+_0x53f69e+_0x1da6e4(0x104),_0x1da6e4(0x127)+(Object[_0x1da6e4(0x118)](_0x4b7ed8)[_0x1da6e4(0x129)](',\x20')||_0x1da6e4(0x113)));const _0x47d2ca=detectPackageManager(_0x3dcc7c);VERSION_CHECK_SCRIPTS[_0x1da6e4(0x111)](_0x53f69e)&&await versionCheck(_0x3dcc7c);if(_0x53f69e===_0x1da6e4(0x121)&&_0x1f48f4[_0x1da6e4(0x101)](_0x1da6e4(0x10c)))return await Promise[_0x1da6e4(0x109)]([spawnViteBuildWatch(_0x3dcc7c),spawnVitePreview(_0x3dcc7c)]),{'ok':!![]};return await spawnScript(_0x47d2ca,_0x53f69e,_0x5a5043,_0x3dcc7c),{'ok':!![]};}};
|
package/lib/commands/schema.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a169_0x2d8d3d=a169_0x2221;(function(_0x2aa52f,_0xfdad71){const _0x6a910a=a169_0x2221,_0x4615d5=_0x2aa52f();while(!![]){try{const _0x1368a6=-parseInt(_0x6a910a(0x16f))/0x1+-parseInt(_0x6a910a(0x174))/0x2*(parseInt(_0x6a910a(0x17b))/0x3)+-parseInt(_0x6a910a(0x175))/0x4+-parseInt(_0x6a910a(0x173))/0x5+parseInt(_0x6a910a(0x178))/0x6+parseInt(_0x6a910a(0x170))/0x7*(parseInt(_0x6a910a(0x179))/0x8)+parseInt(_0x6a910a(0x176))/0x9;if(_0x1368a6===_0xfdad71)break;else _0x4615d5['push'](_0x4615d5['shift']());}catch(_0x320ca0){_0x4615d5['push'](_0x4615d5['shift']());}}}(a169_0x2f39,0x5a651));import{buildSchemaPayload}from'../framework/schema-export.js';function a169_0x2221(_0x55a533,_0x44249c){_0x55a533=_0x55a533-0x16e;const _0x2f39fb=a169_0x2f39();let _0x22213b=_0x2f39fb[_0x55a533];return _0x22213b;}async function execute(_0x38e7bc){const _0x13341a=await buildSchemaPayload();return{'ok':!![],'data':_0x13341a};}function a169_0x2f39(){const _0x37cd09=['237308PDVaRi','21iohCae','Export\x20machine-readable\x20command\x20schema\x20(JSON)','json','567235RMKlgB','234538BxSzjV','1547444JADCly','4264389xMMpNu','read','837852OSsdJB','1631144qsMhvL','export','3SsTLEQ','schema'];a169_0x2f39=function(){return _0x37cd09;};return a169_0x2f39();}export const schemaDefinition={'service':a169_0x2d8d3d(0x16e),'command':a169_0x2d8d3d(0x17a),'description':a169_0x2d8d3d(0x171),'risk':a169_0x2d8d3d(0x177),'requiresAuth':![],'requiresAppCode':![],'hasFormat':!![],'defaultOutputFormat':a169_0x2d8d3d(0x172),'flags':[],'execute':execute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a169_0x40ca45=a169_0x3348;(function(_0x5ee109,_0x491947){const _0x407563=a169_0x3348,_0x807a22=_0x5ee109();while(!![]){try{const _0x5ed3d7=parseInt(_0x407563(0x211))/0x1+-parseInt(_0x407563(0x1e8))/0x2+-parseInt(_0x407563(0x1e6))/0x3+-parseInt(_0x407563(0x201))/0x4+-parseInt(_0x407563(0x1f0))/0x5*(-parseInt(_0x407563(0x203))/0x6)+-parseInt(_0x407563(0x1e1))/0x7+parseInt(_0x407563(0x213))/0x8;if(_0x5ed3d7===_0x491947)break;else _0x807a22['push'](_0x807a22['shift']());}catch(_0x13002e){_0x807a22['push'](_0x807a22['shift']());}}}(a169_0x159d,0x3a58e));function a169_0x3348(_0x53ff58,_0x54e1cc){_0x53ff58=_0x53ff58-0x1d4;const _0x159d23=a169_0x159d();let _0x334877=_0x159d23[_0x53ff58];return _0x334877;}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';function a169_0x159d(){const _0x49badc=['Target\x20database\x20ID','sqlRoot','292088YpEZFW','SQL\x20名称不能为空','3515352ZEjWIF','lockFilePath','flag','flagMissing','--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.','MyBatis\x20XML(mybatisXml)','Created\x20SQL\x20query\x20','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','\x20\x20SELECT\x201\x20AS\x20id','✎\x20手动输入\x20dbId','lastSync','请输入\x20SQL\x20名称:','trim','name','368228woRYSb','mybatisXml','请选择目标数据库:','Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20','str','358875qRkgtu','__manual__','651114EyWfoV','</select>','number','validation','nonInteractive','join','length','SELECT\x201\x20AS\x20id;','70ebTGOZ','string','description','普通\x20SQL(sql)','toISOString','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','high-risk-write','dbName','catch','sql','appCode','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','适合带动态标签的\x20MyBatis\x20XML\x20SQL','map','sqlRootDir','dbId','dbId\x20必须为正整数','1580860DZLZVD','sqlCode','171636GMjZTo','Invalid\x20database\x20selection\x20payload:\x20','db-id','dbId\x20不能为空','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','POST','sqlName','isFinite','parse','stringify','SQL\x20query\x20display\x20name','mode'];a169_0x159d=function(){return _0x49badc;};return a169_0x159d();}import{buildSqlRelativePath}from'../../core/sql-sync/utils.js';import{CliErrors}from'../../errors.js';import{buildLocalSqlFileContent,buildSqlLockEntry,ensureRemoteSqlContent}from'./shared.js';function generateSqlTemplate(_0x479acd){const _0x670549=a169_0x3348;if(_0x479acd==='mybatisXml')return[_0x670549(0x1fb),_0x670549(0x1db),_0x670549(0x1e9),'']['join']('\x0a');return[_0x670549(0x1ef),''][_0x670549(0x1ed)]('\x0a');}export const sqlCreate={'service':a169_0x40ca45(0x1f9),'command':'create','description':a169_0x40ca45(0x207),'risk':a169_0x40ca45(0x1f6),'flags':[{'name':'name','type':a169_0x40ca45(0x1f1),'description':a169_0x40ca45(0x20d)},{'name':a169_0x40ca45(0x205),'type':a169_0x40ca45(0x1ea),'description':a169_0x40ca45(0x20f)},{'name':a169_0x40ca45(0x20e),'type':'string','enum':[a169_0x40ca45(0x1f9),a169_0x40ca45(0x1e2)],'description':'Local\x20SQL\x20file\x20mode'}],async 'validate'(_0xe5dff4){const _0xb3df9d=a169_0x40ca45;if(!_0xe5dff4[_0xb3df9d(0x1ec)])return;if(!_0xe5dff4['str'](_0xb3df9d(0x1e0))[_0xb3df9d(0x1df)]())throw CliErrors['flagMissing'](_0xb3df9d(0x1e0),'--name\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x139e93=resolveProvidedDbId(_0xe5dff4);if(typeof _0x139e93!==_0xb3df9d(0x1ea)||!Number['isFinite'](_0x139e93)||_0x139e93<=0x0)throw CliErrors['flagMissing'](_0xb3df9d(0x205),_0xb3df9d(0x1d7));if(!_0xe5dff4[_0xb3df9d(0x1e5)](_0xb3df9d(0x20e))['trim']())throw CliErrors['flagMissing'](_0xb3df9d(0x20e),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');},async 'dryRun'(_0x56f36d){const _0x4cacbb=a169_0x40ca45,_0x76f30=loadSqlProjectConfig(_0x56f36d[_0x4cacbb(0x1fa)]),{sqlName:_0x46b7d5,dbId:_0x2f948f,dbName:_0x24709e,mode:_0x3a8953}=await resolveSqlNewInputs(_0x56f36d),_0x397eb2=buildSqlRelativePath('<server-generated-sqlCode>',_0x46b7d5,_0x24709e,_0x3a8953,_0x2f948f),_0x16bf57=_0x76f30[_0x4cacbb(0x1fe)]+'/'+_0x397eb2;return{'method':_0x4cacbb(0x208),'url':'/smartapi/custom/saveUserCustomSql','body':{'appCode':_0x56f36d[_0x4cacbb(0x1fa)],'sqlName':_0x46b7d5,'dbId':_0x2f948f,'mode':_0x3a8953,'localPath':_0x16bf57},'description':_0x4cacbb(0x1e4)+_0x76f30[_0x4cacbb(0x1fe)]};},async 'execute'(_0x10a09f){const _0x11b180=a169_0x40ca45,_0x3a10a8=loadSqlProjectConfig(_0x10a09f[_0x11b180(0x1fa)]),{sqlName:_0x5d9841,dbId:_0x3ed964,dbName:_0x429a59,mode:_0x12fc2a}=await resolveSqlNewInputs(_0x10a09f),_0x83e2c1=generateSqlTemplate(_0x12fc2a),_0x2c2a0d=await createSqlQuery({'appCode':_0x10a09f[_0x11b180(0x1fa)],'sqlName':_0x5d9841,'dbId':_0x3ed964,'sqlContent':_0x83e2c1}),_0x1ee6d9=ensureRemoteSqlContent(_0x2c2a0d),_0x4bd28b=_0x429a59||await getDbName(_0x10a09f[_0x11b180(0x1fa)],_0x3ed964)[_0x11b180(0x1f8)](()=>undefined),_0x54d25d=buildSqlRelativePath(_0x2c2a0d['sqlCode'],_0x2c2a0d[_0x11b180(0x209)],_0x4bd28b,_0x12fc2a,_0x3ed964),_0xdfdeee=_0x3a10a8[_0x11b180(0x1fe)]+'/'+_0x54d25d,_0x4db0a9=buildLocalSqlFileContent({'sqlCode':_0x2c2a0d[_0x11b180(0x202)],'sqlName':_0x2c2a0d['sqlName'],'dbId':_0x2c2a0d[_0x11b180(0x1ff)]},_0x1ee6d9,{'dbName':_0x4bd28b,'mode':_0x12fc2a,'syncedAt':new Date()[_0x11b180(0x1f4)](),'description':_0x2c2a0d[_0x11b180(0x1f2)]});if(await fileExists(_0xdfdeee))throw CliErrors[_0x11b180(0x1eb)]('File\x20already\x20exists:\x20'+_0xdfdeee);await ensureParentDirectory(_0xdfdeee),await writeFile(_0xdfdeee,_0x4db0a9,'utf8');const _0x103d74=await readSqlLockFile(_0x3a10a8[_0x11b180(0x1d4)]),{lockData:_0x2a26b4,appLock:_0xa4a76d}=ensureSqlLockScope(_0x103d74??createEmptySqlLock(),_0x3a10a8['appCode'],_0x3a10a8[_0x11b180(0x210)],'new');return _0xa4a76d['sqls'][_0x2c2a0d[_0x11b180(0x202)]]={...buildSqlLockEntry(_0x2c2a0d,_0x1ee6d9,computeSqlContentHash(_0x4db0a9),{'dbName':_0x4bd28b}),'path':_0x54d25d,'mode':_0x12fc2a},_0xa4a76d[_0x11b180(0x1dd)]=new Date()[_0x11b180(0x1f4)](),await writeSqlLockFile(_0x3a10a8[_0x11b180(0x1d4)],_0x2a26b4),{'ok':!![],'data':{'id':_0x2c2a0d['id'],'sqlCode':_0x2c2a0d[_0x11b180(0x202)],'sqlName':_0x2c2a0d['sqlName'],'dbId':_0x2c2a0d[_0x11b180(0x1ff)],'path':_0xdfdeee,'mode':_0x12fc2a},'message':_0x11b180(0x1d9)+_0x2c2a0d[_0x11b180(0x202)]};}};async function resolveSqlNewInputs(_0x504328){const _0xec538d=await resolveSqlNameInput(_0x504328),{dbId:_0x14951c,dbName:_0x4e6abf}=await resolveDbSelection(_0x504328),_0x51b212=await resolveSqlModeInput(_0x504328);return{'sqlName':_0xec538d,'dbId':_0x14951c,'dbName':_0x4e6abf,'mode':_0x51b212};}async function resolveSqlNameInput(_0x431405){const _0x1ec035=a169_0x40ca45,_0x2f226a=_0x431405[_0x1ec035(0x1e5)]('name')[_0x1ec035(0x1df)]();if(_0x2f226a)return _0x2f226a;if(_0x431405[_0x1ec035(0x1ec)])throw CliErrors[_0x1ec035(0x1d6)](_0x1ec035(0x1e0),_0x1ec035(0x1da));return(await input({'message':_0x1ec035(0x1de),'validate':_0x4532e7=>_0x4532e7[_0x1ec035(0x1df)]()?!![]:_0x1ec035(0x212)}))['trim']();}async function resolveDbSelection(_0x5170c5){const _0x5c658f=a169_0x40ca45,_0x29d713=resolveProvidedDbId(_0x5170c5);if(typeof _0x29d713===_0x5c658f(0x1ea)&&Number['isFinite'](_0x29d713)&&_0x29d713>0x0)return{'dbId':_0x29d713,'dbName':await getDbName(_0x5170c5[_0x5c658f(0x1fa)],_0x29d713)['catch'](()=>undefined)};if(_0x5170c5[_0x5c658f(0x1ec)])throw CliErrors[_0x5c658f(0x1d6)](_0x5c658f(0x205),_0x5c658f(0x1d7));const _0x11acbb=await listDatabases(_0x5170c5[_0x5c658f(0x1fa)])['catch'](()=>[]);if(_0x11acbb['length']===0x1)return{'dbId':_0x11acbb[0x0][_0x5c658f(0x1ff)],'dbName':_0x11acbb[0x0][_0x5c658f(0x1f7)]};if(_0x11acbb[_0x5c658f(0x1ee)]>0x1){const _0x40dc91=await select({'message':_0x5c658f(0x1e3),'choices':[..._0x11acbb[_0x5c658f(0x1fd)](_0x2aef7e=>({'name':_0x2aef7e[_0x5c658f(0x1f7)]+'\x20('+_0x2aef7e['dbId']+')','value':serializeDbSelection(_0x2aef7e)})),{'name':_0x5c658f(0x1dc),'value':_0x5c658f(0x1e7)}]});if(_0x40dc91!==_0x5c658f(0x1e7))return deserializeDbSelection(_0x40dc91);}const _0x557e77=await input({'message':'请输入目标数据库\x20dbId:','validate':_0x472e58=>{const _0x6d8308=_0x5c658f,_0x32f2bf=_0x472e58[_0x6d8308(0x1df)]();if(!_0x32f2bf)return _0x6d8308(0x206);const _0x15c31c=Number(_0x32f2bf);if(!Number['isInteger'](_0x15c31c)||_0x15c31c<=0x0)return _0x6d8308(0x200);return!![];}});return{'dbId':Number(_0x557e77[_0x5c658f(0x1df)]())};}async function resolveSqlModeInput(_0x1fe3f1){const _0x232e40=a169_0x40ca45,_0x2bfc01=_0x1fe3f1[_0x232e40(0x1e5)]('mode')[_0x232e40(0x1df)]();if(_0x2bfc01===_0x232e40(0x1f9)||_0x2bfc01==='mybatisXml')return _0x2bfc01;if(_0x1fe3f1[_0x232e40(0x1ec)])throw CliErrors['flagMissing'](_0x232e40(0x20e),_0x232e40(0x1f5));return await select({'message':'请选择本地\x20SQL\x20模式:','choices':[{'name':_0x232e40(0x1f3),'value':_0x232e40(0x1f9),'description':'适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句'},{'name':_0x232e40(0x1d8),'value':_0x232e40(0x1e2),'description':_0x232e40(0x1fc)}]});}function serializeDbSelection(_0x388a85){const _0x1fffea=a169_0x40ca45;return JSON[_0x1fffea(0x20c)]({'dbId':_0x388a85[_0x1fffea(0x1ff)],'dbName':_0x388a85[_0x1fffea(0x1f7)]});}function deserializeDbSelection(_0x170a3d){const _0x4cceec=a169_0x40ca45;try{const _0x9b1e0f=JSON[_0x4cceec(0x20b)](_0x170a3d);if(typeof _0x9b1e0f[_0x4cceec(0x1ff)]===_0x4cceec(0x1ea)&&Number[_0x4cceec(0x20a)](_0x9b1e0f[_0x4cceec(0x1ff)]))return{'dbId':_0x9b1e0f[_0x4cceec(0x1ff)],'dbName':_0x9b1e0f['dbName']};}catch{}throw CliErrors[_0x4cceec(0x1eb)](_0x4cceec(0x204)+_0x170a3d);}function resolveProvidedDbId(_0x30cd9a){const _0x4d10fe=a169_0x40ca45,_0x4c703a=_0x30cd9a[_0x4d10fe(0x1d5)](_0x4d10fe(0x205));if(typeof _0x4c703a===_0x4d10fe(0x1ea)&&Number[_0x4d10fe(0x20a)](_0x4c703a))return _0x4c703a;return undefined;}
|
|
1
|
+
const a170_0xfd8dd8=a170_0x2890;(function(_0x375806,_0x5f20de){const _0x456353=a170_0x2890,_0x59b5f8=_0x375806();while(!![]){try{const _0x3d1905=parseInt(_0x456353(0x12f))/0x1*(-parseInt(_0x456353(0x125))/0x2)+-parseInt(_0x456353(0x116))/0x3+parseInt(_0x456353(0x118))/0x4*(parseInt(_0x456353(0x11c))/0x5)+-parseInt(_0x456353(0x131))/0x6*(parseInt(_0x456353(0x112))/0x7)+-parseInt(_0x456353(0x14c))/0x8+parseInt(_0x456353(0x135))/0x9*(parseInt(_0x456353(0x140))/0xa)+parseInt(_0x456353(0x121))/0xb*(parseInt(_0x456353(0x117))/0xc);if(_0x3d1905===_0x5f20de)break;else _0x59b5f8['push'](_0x59b5f8['shift']());}catch(_0x2958ce){_0x59b5f8['push'](_0x59b5f8['shift']());}}}(a170_0x4590,0x51867));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';function a170_0x2890(_0x48fd45,_0x92debc){_0x48fd45=_0x48fd45-0x109;const _0x4590fe=a170_0x4590();let _0x2890ba=_0x4590fe[_0x48fd45];return _0x2890ba;}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(_0x269fee){const _0x55ea3b=a170_0x2890;if(_0x269fee===_0x55ea3b(0x132))return[_0x55ea3b(0x122),'\x20\x20SELECT\x201\x20AS\x20id',_0x55ea3b(0x145),''][_0x55ea3b(0x142)]('\x0a');return[_0x55ea3b(0x141),''][_0x55ea3b(0x142)]('\x0a');}export const sqlCreate={'service':'sql','command':'create','description':a170_0xfd8dd8(0x13f),'risk':a170_0xfd8dd8(0x133),'flags':[{'name':a170_0xfd8dd8(0x10a),'type':a170_0xfd8dd8(0x137),'description':a170_0xfd8dd8(0x13b)},{'name':a170_0xfd8dd8(0x139),'type':'number','description':a170_0xfd8dd8(0x11f)},{'name':a170_0xfd8dd8(0x13c),'type':a170_0xfd8dd8(0x137),'enum':[a170_0xfd8dd8(0x143),a170_0xfd8dd8(0x132)],'description':a170_0xfd8dd8(0x119)}],async 'validate'(_0x395ea2){const _0x4074b5=a170_0xfd8dd8;if(!_0x395ea2['nonInteractive'])return;if(!_0x395ea2[_0x4074b5(0x11d)](_0x4074b5(0x10a))['trim']())throw CliErrors[_0x4074b5(0x114)]('name',_0x4074b5(0x14a));const _0x3b5b31=resolveProvidedDbId(_0x395ea2);if(typeof _0x3b5b31!==_0x4074b5(0x10b)||!Number['isFinite'](_0x3b5b31)||_0x3b5b31<=0x0)throw CliErrors[_0x4074b5(0x114)](_0x4074b5(0x139),'--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');if(!_0x395ea2[_0x4074b5(0x11d)](_0x4074b5(0x13c))[_0x4074b5(0x10f)]())throw CliErrors['flagMissing'](_0x4074b5(0x13c),_0x4074b5(0x128));},async 'dryRun'(_0x14a7fe){const _0x2e5b94=a170_0xfd8dd8,_0x628ab9=loadSqlProjectConfig(_0x14a7fe[_0x2e5b94(0x124)]),{sqlName:_0x384693,dbId:_0x56e566,dbName:_0x16791c,mode:_0x46701e}=await resolveSqlNewInputs(_0x14a7fe),_0x1f7451=buildSqlRelativePath('<server-generated-sqlCode>',_0x384693,_0x16791c,_0x46701e,_0x56e566),_0xfed3=_0x628ab9['sqlRootDir']+'/'+_0x1f7451;return{'method':_0x2e5b94(0x11a),'url':_0x2e5b94(0x10c),'body':{'appCode':_0x14a7fe[_0x2e5b94(0x124)],'sqlName':_0x384693,'dbId':_0x56e566,'mode':_0x46701e,'localPath':_0xfed3},'description':'Would\x20create\x20a\x20new\x20SQL\x20query\x20and\x20scaffold\x20it\x20under\x20'+_0x628ab9['sqlRootDir']};},async 'execute'(_0x118209){const _0x103980=a170_0xfd8dd8,_0x4dc496=loadSqlProjectConfig(_0x118209[_0x103980(0x124)]),{sqlName:_0x5610b,dbId:_0x298559,dbName:_0xd9643f,mode:_0x50c641}=await resolveSqlNewInputs(_0x118209),_0x21fd0b=generateSqlTemplate(_0x50c641),_0x18a276=await createSqlQuery({'appCode':_0x118209[_0x103980(0x124)],'sqlName':_0x5610b,'dbId':_0x298559,'sqlContent':_0x21fd0b}),_0x2c9081=ensureRemoteSqlContent(_0x18a276),_0x5c2f99=_0xd9643f||await getDbName(_0x118209['appCode'],_0x298559)[_0x103980(0x127)](()=>undefined),_0x5a5418=buildSqlRelativePath(_0x18a276['sqlCode'],_0x18a276[_0x103980(0x11b)],_0x5c2f99,_0x50c641,_0x298559),_0x31f209=_0x4dc496[_0x103980(0x13d)]+'/'+_0x5a5418,_0x4a1586=buildLocalSqlFileContent({'sqlCode':_0x18a276['sqlCode'],'sqlName':_0x18a276['sqlName'],'dbId':_0x18a276['dbId']},_0x2c9081,{'dbName':_0x5c2f99,'mode':_0x50c641,'syncedAt':new Date()[_0x103980(0x138)](),'description':_0x18a276[_0x103980(0x11e)]});if(await fileExists(_0x31f209))throw CliErrors[_0x103980(0x14d)](_0x103980(0x147)+_0x31f209);await ensureParentDirectory(_0x31f209),await writeFile(_0x31f209,_0x4a1586,_0x103980(0x126));const _0x4b909c=await readSqlLockFile(_0x4dc496[_0x103980(0x14b)]),{lockData:_0x54dafc,appLock:_0x5416f7}=ensureSqlLockScope(_0x4b909c??createEmptySqlLock(),_0x4dc496[_0x103980(0x124)],_0x4dc496[_0x103980(0x113)],_0x103980(0x129));return _0x5416f7[_0x103980(0x10d)][_0x18a276[_0x103980(0x12e)]]={...buildSqlLockEntry(_0x18a276,_0x2c9081,computeSqlContentHash(_0x4a1586),{'dbName':_0x5c2f99}),'path':_0x5a5418,'mode':_0x50c641},_0x5416f7[_0x103980(0x146)]=new Date()[_0x103980(0x138)](),await writeSqlLockFile(_0x4dc496[_0x103980(0x14b)],_0x54dafc),{'ok':!![],'data':{'id':_0x18a276['id'],'sqlCode':_0x18a276['sqlCode'],'sqlName':_0x18a276[_0x103980(0x11b)],'dbId':_0x18a276['dbId'],'path':_0x31f209,'mode':_0x50c641},'message':_0x103980(0x123)+_0x18a276['sqlCode']};}};async function resolveSqlNewInputs(_0x5d6cef){const _0x2a5dc4=await resolveSqlNameInput(_0x5d6cef),{dbId:_0x59405b,dbName:_0x50d2f3}=await resolveDbSelection(_0x5d6cef),_0x2f35f7=await resolveSqlModeInput(_0x5d6cef);return{'sqlName':_0x2a5dc4,'dbId':_0x59405b,'dbName':_0x50d2f3,'mode':_0x2f35f7};}async function resolveSqlNameInput(_0x2ab539){const _0xc1a4b=a170_0xfd8dd8,_0x49885e=_0x2ab539[_0xc1a4b(0x11d)]('name')[_0xc1a4b(0x10f)]();if(_0x49885e)return _0x49885e;if(_0x2ab539[_0xc1a4b(0x134)])throw CliErrors[_0xc1a4b(0x114)](_0xc1a4b(0x10a),_0xc1a4b(0x14a));return(await input({'message':_0xc1a4b(0x109),'validate':_0x43e9b4=>_0x43e9b4[_0xc1a4b(0x10f)]()?!![]:'SQL\x20名称不能为空'}))[_0xc1a4b(0x10f)]();}async function resolveDbSelection(_0x9d391b){const _0x13bdae=a170_0xfd8dd8,_0x438045=resolveProvidedDbId(_0x9d391b);if(typeof _0x438045===_0x13bdae(0x10b)&&Number[_0x13bdae(0x144)](_0x438045)&&_0x438045>0x0)return{'dbId':_0x438045,'dbName':await getDbName(_0x9d391b[_0x13bdae(0x124)],_0x438045)[_0x13bdae(0x127)](()=>undefined)};if(_0x9d391b[_0x13bdae(0x134)])throw CliErrors['flagMissing'](_0x13bdae(0x139),'--db-id\x20is\x20required\x20in\x20non-interactive\x20mode.');const _0x65d6ba=await listDatabases(_0x9d391b[_0x13bdae(0x124)])[_0x13bdae(0x127)](()=>[]);if(_0x65d6ba[_0x13bdae(0x12c)]===0x1)return{'dbId':_0x65d6ba[0x0][_0x13bdae(0x13a)],'dbName':_0x65d6ba[0x0]['dbName']};if(_0x65d6ba[_0x13bdae(0x12c)]>0x1){const _0x36476b=await select({'message':_0x13bdae(0x14e),'choices':[..._0x65d6ba[_0x13bdae(0x120)](_0x1db9eb=>({'name':_0x1db9eb[_0x13bdae(0x10e)]+'\x20('+_0x1db9eb['dbId']+')','value':serializeDbSelection(_0x1db9eb)})),{'name':'✎\x20手动输入\x20dbId','value':_0x13bdae(0x12b)}]});if(_0x36476b!==_0x13bdae(0x12b))return deserializeDbSelection(_0x36476b);}const _0x256b39=await input({'message':_0x13bdae(0x12a),'validate':_0x575efc=>{const _0x29170b=_0x13bdae,_0x3e4bf4=_0x575efc[_0x29170b(0x10f)]();if(!_0x3e4bf4)return _0x29170b(0x111);const _0x1df566=Number(_0x3e4bf4);if(!Number[_0x29170b(0x148)](_0x1df566)||_0x1df566<=0x0)return _0x29170b(0x12d);return!![];}});return{'dbId':Number(_0x256b39[_0x13bdae(0x10f)]())};}function a170_0x4590(){const _0x534cad=['Target\x20database\x20ID','map','14571524ddLqXl','<select\x20id=\x22query\x22\x20resultType=\x22map\x22>','Created\x20SQL\x20query\x20','appCode','14588odTYOP','utf8','catch','--mode\x20is\x20required\x20in\x20non-interactive\x20mode.','new','请输入目标数据库\x20dbId:','__manual__','length','dbId\x20必须为正整数','sqlCode','14FJSYBB','适合带动态标签的\x20MyBatis\x20XML\x20SQL','488574yZoxOF','mybatisXml','high-risk-write','nonInteractive','9PldmwB','MyBatis\x20XML(mybatisXml)','string','toISOString','db-id','dbId','SQL\x20query\x20display\x20name','mode','sqlRootDir','flag','Create\x20a\x20new\x20custom\x20SQL\x20and\x20scaffold\x20it\x20locally','2362410QwAuKe','SELECT\x201\x20AS\x20id;','join','sql','isFinite','</select>','lastSync','File\x20already\x20exists:\x20','isInteger','适合直接执行的普通\x20SELECT\x20/\x20INSERT\x20/\x20UPDATE\x20/\x20DELETE\x20语句','--name\x20is\x20required\x20in\x20non-interactive\x20mode.','lockFilePath','4931384eIbZBG','validation','请选择目标数据库:','请输入\x20SQL\x20名称:','name','number','/smartapi/custom/saveUserCustomSql','sqls','dbName','trim','stringify','dbId\x20不能为空','49YcycCU','sqlRoot','flagMissing','Invalid\x20database\x20selection\x20payload:\x20','766101mJSjLI','12nyrJbo','28BOfSpP','Local\x20SQL\x20file\x20mode','POST','sqlName','226365KKlSBB','str','description'];a170_0x4590=function(){return _0x534cad;};return a170_0x4590();}async function resolveSqlModeInput(_0x1c3bf0){const _0x3e2658=a170_0xfd8dd8,_0xb43b71=_0x1c3bf0[_0x3e2658(0x11d)]('mode')['trim']();if(_0xb43b71===_0x3e2658(0x143)||_0xb43b71===_0x3e2658(0x132))return _0xb43b71;if(_0x1c3bf0['nonInteractive'])throw CliErrors[_0x3e2658(0x114)](_0x3e2658(0x13c),'--mode\x20is\x20required\x20in\x20non-interactive\x20mode.');return await select({'message':'请选择本地\x20SQL\x20模式:','choices':[{'name':'普通\x20SQL(sql)','value':'sql','description':_0x3e2658(0x149)},{'name':_0x3e2658(0x136),'value':_0x3e2658(0x132),'description':_0x3e2658(0x130)}]});}function serializeDbSelection(_0x33ed9f){const _0x37a812=a170_0xfd8dd8;return JSON[_0x37a812(0x110)]({'dbId':_0x33ed9f[_0x37a812(0x13a)],'dbName':_0x33ed9f[_0x37a812(0x10e)]});}function deserializeDbSelection(_0x26b142){const _0x3339e7=a170_0xfd8dd8;try{const _0x2c0114=JSON['parse'](_0x26b142);if(typeof _0x2c0114['dbId']===_0x3339e7(0x10b)&&Number[_0x3339e7(0x144)](_0x2c0114[_0x3339e7(0x13a)]))return{'dbId':_0x2c0114[_0x3339e7(0x13a)],'dbName':_0x2c0114[_0x3339e7(0x10e)]};}catch{}throw CliErrors[_0x3339e7(0x14d)](_0x3339e7(0x115)+_0x26b142);}function resolveProvidedDbId(_0x5e9120){const _0x1d3c16=a170_0xfd8dd8,_0x374f79=_0x5e9120[_0x1d3c16(0x13e)](_0x1d3c16(0x139));if(typeof _0x374f79===_0x1d3c16(0x10b)&&Number['isFinite'](_0x374f79))return _0x374f79;return undefined;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a171_0x1ab7(_0x395b96,_0x48fa2f){_0x395b96=_0x395b96-0x111;const _0x2555c7=a171_0x2555();let _0x1ab7df=_0x2555c7[_0x395b96];return _0x1ab7df;}const a171_0xfad3ed=a171_0x1ab7;(function(_0x31441d,_0x8b6618){const _0x3c22db=a171_0x1ab7,_0x96687b=_0x31441d();while(!![]){try{const _0x3f8626=-parseInt(_0x3c22db(0x12d))/0x1+parseInt(_0x3c22db(0x111))/0x2+parseInt(_0x3c22db(0x118))/0x3*(-parseInt(_0x3c22db(0x129))/0x4)+parseInt(_0x3c22db(0x133))/0x5*(parseInt(_0x3c22db(0x130))/0x6)+parseInt(_0x3c22db(0x125))/0x7+-parseInt(_0x3c22db(0x12f))/0x8*(parseInt(_0x3c22db(0x132))/0x9)+parseInt(_0x3c22db(0x128))/0xa;if(_0x3f8626===_0x8b6618)break;else _0x96687b['push'](_0x96687b['shift']());}catch(_0x4d1036){_0x96687b['push'](_0x96687b['shift']());}}}(a171_0x2555,0x38891));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';function a171_0x2555(){const _0x3df803=['\x20(local\x20file\x20moved\x20to\x20trash)','trashDir','appCode','No\x20SQL\x20lock\x20entry\x20found\x20for\x20\x22','353652KpuLmd','toISOString','high-risk-write','trashedTo','remoteId','Deleted\x20','fromEntries','6txeNxm','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20','entries','delete','length','str','Delete\x20a\x20SQL\x20query\x20from\x20remote\x20and\x20local','SQL\x20lock\x20file\x20not\x20found.','projectRoot','lockFilePath','validation','filter','sqlRoot','675542fCywii','/smartapi/custom/deleteUserCustomSql','sqlcode','6930740UQTvur','240728OiHifP','startsWith','sqlRootDir','sqls','388033FJliyA','Would\x20delete\x20SQL\x20','8jxkZCw','3234iWMaVv','SQL\x20lock\x20file\x20not\x20found.\x20Run\x20`rabetbase\x20sql\x20create`\x20or\x20`rabetbase\x20sql\x20pull`\x20first.','3211902DXARHY','1210DnhvuA','POST'];a171_0x2555=function(){return _0x3df803;};return a171_0x2555();}import{dirname,join,relative,resolve,sep}from'node:path';import{deleteSqlQuery}from'../../core/api-client.js';import{loadSqlProjectConfig}from'../../core/sql-sync/config.js';import{fileExists}from'../../core/bff/file-system.js';import{resolveLocalSqlFilePath}from'../../core/sql-sync/file-system.js';import{ensureSqlLockScope,readSqlLockFile,writeSqlLockFile}from'../../core/sql-sync/lock.js';import{CliErrors}from'../../errors.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDelete={'service':'sql','command':a171_0xfad3ed(0x11b),'description':a171_0xfad3ed(0x11e),'risk':a171_0xfad3ed(0x113),'flags':[SQLCODE_FLAG],async 'validate'(_0x179ff4){const _0xda5ad3=a171_0xfad3ed,_0x4fd470=loadSqlProjectConfig(_0x179ff4[_0xda5ad3(0x137)]),_0x28fe11=await readSqlLockFile(_0x4fd470[_0xda5ad3(0x121)]);if(!_0x28fe11)throw CliErrors[_0xda5ad3(0x122)](_0xda5ad3(0x131));},async 'dryRun'(_0xfa5a96){const _0x6221ac=a171_0xfad3ed,_0x48e76d=loadSqlProjectConfig(_0xfa5a96['appCode']),_0x1e8d0d=await readSqlLockFile(_0x48e76d['lockFilePath']);if(!_0x1e8d0d)throw CliErrors[_0x6221ac(0x122)](_0x6221ac(0x131));const {appLock:_0xf3c489}=ensureSqlLockScope(_0x1e8d0d,_0xfa5a96[_0x6221ac(0x137)],_0x48e76d['sqlRoot'],_0x6221ac(0x11b)),_0x5d25e7=_0xfa5a96[_0x6221ac(0x11d)](_0x6221ac(0x127)),_0x26d4a6=_0xf3c489[_0x6221ac(0x12c)][_0x5d25e7];if(!_0x26d4a6)throw CliErrors['validation'](_0x6221ac(0x138)+_0x5d25e7+'\x22.');return{'method':_0x6221ac(0x134),'url':_0x6221ac(0x126),'body':{'sqlCode':_0x5d25e7,'id':_0x26d4a6['remoteId'],'localPath':resolveLocalSqlFilePath(_0x48e76d,_0x5d25e7,_0x26d4a6)},'description':_0x6221ac(0x12e)+_0x5d25e7+_0x6221ac(0x119)+_0x48e76d[_0x6221ac(0x136)]};},async 'execute'(_0xba112f){const _0x1bce06=a171_0xfad3ed,_0x1b86bc=loadSqlProjectConfig(_0xba112f[_0x1bce06(0x137)]),_0x4fe5f5=await readSqlLockFile(_0x1b86bc[_0x1bce06(0x121)]);if(!_0x4fe5f5)throw CliErrors['validation'](_0x1bce06(0x11f));const {lockData:_0x4b8561,appLock:_0x1bc667}=ensureSqlLockScope(_0x4fe5f5,_0xba112f[_0x1bce06(0x137)],_0x1b86bc[_0x1bce06(0x124)],'delete'),_0x5a38f7=_0xba112f[_0x1bce06(0x11d)](_0x1bce06(0x127)),_0x6f77ec=_0x1bc667[_0x1bce06(0x12c)][_0x5a38f7];if(!_0x6f77ec)throw CliErrors[_0x1bce06(0x122)](_0x1bce06(0x138)+_0x5a38f7+'\x22.');await deleteSqlQuery({'id':_0x6f77ec['remoteId'],'sqlCode':_0x5a38f7}),_0x1bc667[_0x1bce06(0x12c)]=Object[_0x1bce06(0x117)](Object[_0x1bce06(0x11a)](_0x1bc667[_0x1bce06(0x12c)])[_0x1bce06(0x123)](([_0x532f5a])=>_0x532f5a!==_0x5a38f7)),_0x1bc667['lastSync']=new Date()[_0x1bce06(0x112)](),await writeSqlLockFile(_0x1b86bc['lockFilePath'],_0x4b8561);const _0x2b005a=resolveLocalSqlFilePath(_0x1b86bc,_0x5a38f7,_0x6f77ec);let _0x2f1f36;await fileExists(_0x2b005a)&&(_0x2f1f36=await moveToTrash(_0x1b86bc[_0x1bce06(0x120)],_0x1b86bc['trashDir'],_0x2b005a),await cleanupEmptyDirectories(dirname(_0x2b005a),_0x1b86bc[_0x1bce06(0x12b)]));const _0x55bcdb={'deleted':_0x5a38f7,'remoteId':_0x6f77ec[_0x1bce06(0x115)]};if(_0x2f1f36)_0x55bcdb[_0x1bce06(0x114)]=_0x2f1f36;return{'ok':!![],'data':_0x55bcdb,'message':_0x1bce06(0x116)+_0x5a38f7+(_0x2f1f36?_0x1bce06(0x135):'')};}};async function moveToTrash(_0x31c7db,_0x21509b,_0x3948d8){const _0x476315=a171_0xfad3ed,_0x47d3f3=new Date()[_0x476315(0x112)]()['replace'](/[:.]/g,'-'),_0x5300df=relative(_0x31c7db,_0x3948d8),_0x3ed2cc=join(_0x21509b,_0x47d3f3,_0x5300df);return await mkdir(dirname(_0x3ed2cc),{'recursive':!![]}),await rename(_0x3948d8,_0x3ed2cc),_0x3ed2cc;}async function cleanupEmptyDirectories(_0x5366e5,_0x48a17b){const _0x4b9093=a171_0xfad3ed;let _0x4a7303=resolve(_0x5366e5);const _0x560747=resolve(_0x48a17b);while(_0x4a7303[_0x4b9093(0x12a)](''+_0x560747+sep)||_0x4a7303===_0x560747){if(_0x4a7303===_0x560747)return;try{const _0x32cf29=await readdir(_0x4a7303);if(_0x32cf29[_0x4b9093(0x11c)]>0x0)return;await rmdir(_0x4a7303);}catch{return;}_0x4a7303=dirname(_0x4a7303);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
function a172_0x4483(_0x416740,_0x5993f2){_0x416740=_0x416740-0x141;const _0x4c2bf5=a172_0x4c2b();let _0x44835e=_0x4c2bf5[_0x416740];return _0x44835e;}const a172_0x13be5a=a172_0x4483;(function(_0xc35151,_0x88e336){const _0x2a2f78=a172_0x4483,_0x5e4470=_0xc35151();while(!![]){try{const _0x1a4878=-parseInt(_0x2a2f78(0x158))/0x1*(-parseInt(_0x2a2f78(0x14d))/0x2)+parseInt(_0x2a2f78(0x155))/0x3+parseInt(_0x2a2f78(0x142))/0x4+parseInt(_0x2a2f78(0x143))/0x5*(parseInt(_0x2a2f78(0x156))/0x6)+parseInt(_0x2a2f78(0x141))/0x7+parseInt(_0x2a2f78(0x152))/0x8*(parseInt(_0x2a2f78(0x157))/0x9)+parseInt(_0x2a2f78(0x153))/0xa*(-parseInt(_0x2a2f78(0x149))/0xb);if(_0x1a4878===_0x88e336)break;else _0x5e4470['push'](_0x5e4470['shift']());}catch(_0x267b7b){_0x5e4470['push'](_0x5e4470['shift']());}}}(a172_0x4c2b,0xa80f4));import{getSqlQueryInfo}from'../../core/api-client.js';function a172_0x4c2b(){const _0xa90c4=['Return\x20full\x20raw\x20SQL\x20query\x20object','str','4TyLQNy','appCode','boolean','dbId','sqlName','48YkNkqh','20nZlqtO','Get\x20custom\x20SQL\x20query\x20details\x20by\x20sqlCode','3902469QYpyfl','7628370uqSxxv','1691406nWBFbp','216661MqctdE','8443967aiIuRO','1368412FKEUgs','5sJsZUJ','verbose','sqlCode','bool','sqlContent','sqlcode','27462358aPzXWd','detail'];a172_0x4c2b=function(){return _0xa90c4;};return a172_0x4c2b();}import{getDbName}from'../../core/db-resolver.js';import{SQLCODE_FLAG}from'../../commands/common/flags.js';export const sqlDetail={'service':'sql','command':a172_0x13be5a(0x14a),'description':a172_0x13be5a(0x154),'risk':'read','flags':[SQLCODE_FLAG,{'name':a172_0x13be5a(0x144),'type':a172_0x13be5a(0x14f),'description':a172_0x13be5a(0x14b)}],async 'execute'(_0x40afc2){const _0x219f7c=a172_0x13be5a,_0x435322=await getSqlQueryInfo(_0x40afc2[_0x219f7c(0x14e)],_0x40afc2[_0x219f7c(0x14c)](_0x219f7c(0x148))),_0x3ec089=_0x40afc2[_0x219f7c(0x146)](_0x219f7c(0x144));if(_0x3ec089)return{'ok':!![],'data':_0x435322};const _0x4caf31=_0x435322[_0x219f7c(0x150)]?await getDbName(_0x40afc2[_0x219f7c(0x14e)],_0x435322[_0x219f7c(0x150)]):undefined;return{'ok':!![],'data':{'sqlCode':_0x435322[_0x219f7c(0x145)],'sqlName':_0x435322[_0x219f7c(0x151)],'db':_0x4caf31?_0x4caf31+'\x20('+_0x435322['dbId']+')':_0x435322[_0x219f7c(0x150)]??'','description':_0x435322['description']??'','sqlContent':_0x435322[_0x219f7c(0x147)]??''}};}};
|