@lovrabet/lovrabet-cli 2.2.4-beta.1 → 2.2.4-beta.3

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.
Files changed (162) hide show
  1. package/lib/cli.js +1 -1
  2. package/lib/commands/api-doc/index.js +1 -1
  3. package/lib/commands/app/cache.js +1 -1
  4. package/lib/commands/app/definitions.js +1 -1
  5. package/lib/commands/app/eligibility.js +1 -1
  6. package/lib/commands/app/mock-loader.js +1 -1
  7. package/lib/commands/app/remote-source.js +1 -1
  8. package/lib/commands/app/shared.js +1 -1
  9. package/lib/commands/app-config/get.js +1 -1
  10. package/lib/commands/app-config/index.js +1 -1
  11. package/lib/commands/artifact/index.js +1 -1
  12. package/lib/commands/auth/device.js +1 -1
  13. package/lib/commands/auth/index.js +1 -1
  14. package/lib/commands/auth/prompt.js +1 -1
  15. package/lib/commands/bff/detail.js +1 -1
  16. package/lib/commands/bff/exec.js +1 -1
  17. package/lib/commands/bff/index.js +1 -1
  18. package/lib/commands/cli-skill/index.js +1 -1
  19. package/lib/commands/common/config-policy.js +1 -1
  20. package/lib/commands/common/constraints.js +1 -1
  21. package/lib/commands/common/flags.js +1 -1
  22. package/lib/commands/common/local-file.js +1 -1
  23. package/lib/commands/config/definitions.js +1 -1
  24. package/lib/commands/config/shared.js +1 -1
  25. package/lib/commands/data/index.js +1 -1
  26. package/lib/commands/dataset/detail.js +1 -1
  27. package/lib/commands/dataset/index.js +1 -1
  28. package/lib/commands/dataset/list.js +1 -1
  29. package/lib/commands/dataset/sdk-doc.js +1 -1
  30. package/lib/commands/doctor.js +1 -1
  31. package/lib/commands/file/index.js +1 -1
  32. package/lib/commands/init.js +1 -1
  33. package/lib/commands/kb/index.js +1 -1
  34. package/lib/commands/logs/index.js +1 -1
  35. package/lib/commands/notification/config-list.js +1 -1
  36. package/lib/commands/notification/index.js +1 -1
  37. package/lib/commands/notification/shared.js +1 -1
  38. package/lib/commands/ocr/index.js +1 -1
  39. package/lib/commands/permit/dataset-get.js +1 -1
  40. package/lib/commands/permit/dataset-set.js +1 -1
  41. package/lib/commands/permit/index.js +1 -1
  42. package/lib/commands/permit/page-get.js +1 -1
  43. package/lib/commands/permit/page-set.js +1 -1
  44. package/lib/commands/permit/role-menus-set.js +1 -1
  45. package/lib/commands/permit/role-menus.js +1 -1
  46. package/lib/commands/permit/shared.js +1 -1
  47. package/lib/commands/personal-bff/index.js +1 -1
  48. package/lib/commands/registry.js +1 -1
  49. package/lib/commands/role/create.js +1 -1
  50. package/lib/commands/role/delete.js +1 -1
  51. package/lib/commands/role/detail.js +1 -1
  52. package/lib/commands/role/index.js +1 -1
  53. package/lib/commands/role/list.js +1 -1
  54. package/lib/commands/role/shared.js +1 -1
  55. package/lib/commands/role/update.js +1 -1
  56. package/lib/commands/role/user-add.js +1 -1
  57. package/lib/commands/role/user-remove.js +1 -1
  58. package/lib/commands/schedule/index.js +1 -1
  59. package/lib/commands/schema.js +1 -1
  60. package/lib/commands/service/dynamic.js +1 -1
  61. package/lib/commands/service/function-name-adapter.js +1 -1
  62. package/lib/commands/service/index.js +1 -1
  63. package/lib/commands/service/registry.js +1 -1
  64. package/lib/commands/skill/commands/create.js +1 -1
  65. package/lib/commands/skill/commands/diagram.js +1 -1
  66. package/lib/commands/skill/commands/install.js +1 -1
  67. package/lib/commands/skill/commands/list.js +1 -1
  68. package/lib/commands/skill/commands/push.js +1 -1
  69. package/lib/commands/skill/commands/validate.js +1 -1
  70. package/lib/commands/skill/diagram.js +1 -1
  71. package/lib/commands/skill/flags.js +1 -1
  72. package/lib/commands/skill/index.js +1 -1
  73. package/lib/commands/skill/manifest-helpers.js +1 -1
  74. package/lib/commands/skill/push-execute.js +1 -1
  75. package/lib/commands/skill/push-flow-helpers.js +1 -1
  76. package/lib/commands/skill/push-retarget.js +1 -1
  77. package/lib/commands/skill/scopes.js +1 -1
  78. package/lib/commands/skill/summary.js +1 -1
  79. package/lib/commands/skill/templates.js +1 -1
  80. package/lib/commands/skill/validate.js +1 -1
  81. package/lib/commands/sql/detail.js +1 -1
  82. package/lib/commands/sql/exec.js +1 -1
  83. package/lib/commands/sql/index.js +1 -1
  84. package/lib/commands/update.d.ts +19 -0
  85. package/lib/commands/update.js +1 -1
  86. package/lib/commands/user-account/bind.js +1 -1
  87. package/lib/commands/user-account/index.js +1 -1
  88. package/lib/commands/workspace/index.js +1 -1
  89. package/lib/config/schema.js +1 -1
  90. package/lib/constant/app.js +1 -1
  91. package/lib/constant/auth-mode.js +1 -1
  92. package/lib/constant/cli.js +1 -1
  93. package/lib/constant/defaults.js +1 -1
  94. package/lib/constant/distribution.js +1 -1
  95. package/lib/constant/domain.js +1 -1
  96. package/lib/constant/env.js +1 -1
  97. package/lib/constant/output.js +1 -1
  98. package/lib/constant/product.js +1 -1
  99. package/lib/constant/risk.js +1 -1
  100. package/lib/constant/url.js +1 -1
  101. package/lib/context.js +1 -1
  102. package/lib/core/api-client.js +1 -1
  103. package/lib/core/db-resolver.js +1 -1
  104. package/lib/core/sdk-client.js +1 -1
  105. package/lib/errors.js +1 -1
  106. package/lib/framework/build-all-flags.js +1 -1
  107. package/lib/framework/dryrun.js +1 -1
  108. package/lib/framework/flags.js +1 -1
  109. package/lib/framework/help.js +1 -1
  110. package/lib/framework/index.js +1 -1
  111. package/lib/framework/output.js +1 -1
  112. package/lib/framework/preparse.js +1 -1
  113. package/lib/framework/rate-limit.js +1 -1
  114. package/lib/framework/raw-flags.js +1 -1
  115. package/lib/framework/response.js +1 -1
  116. package/lib/framework/runner-confirmation.js +1 -1
  117. package/lib/framework/runner-error.js +1 -1
  118. package/lib/framework/runner.js +1 -1
  119. package/lib/framework/schema-export.js +1 -1
  120. package/lib/framework/service-order.js +1 -1
  121. package/lib/framework/types.js +1 -1
  122. package/lib/generated/build-info.d.ts +4 -4
  123. package/lib/generated/build-info.js +1 -1
  124. package/lib/help.js +1 -1
  125. package/lib/postinstall.js +1 -1
  126. package/lib/runtime/confirmation.js +1 -1
  127. package/lib/runtime/event.js +1 -1
  128. package/lib/runtime/index.js +1 -1
  129. package/lib/runtime/queue.js +1 -1
  130. package/lib/runtime/resolve.js +1 -1
  131. package/lib/skills/builtin-skill.js +1 -1
  132. package/lib/skills/npx-skills-add.js +1 -1
  133. package/lib/skills/runtime-skill-sync/constants.js +1 -1
  134. package/lib/skills/runtime-skill-sync/fs-utils.js +1 -1
  135. package/lib/skills/runtime-skill-sync/hashing.js +1 -1
  136. package/lib/skills/runtime-skill-sync/install-target.js +1 -1
  137. package/lib/skills/runtime-skill-sync/links.js +1 -1
  138. package/lib/skills/runtime-skill-sync/list-local.js +1 -1
  139. package/lib/skills/runtime-skill-sync/local-files.js +1 -1
  140. package/lib/skills/runtime-skill-sync/materialize.js +1 -1
  141. package/lib/skills/runtime-skill-sync/metadata.js +1 -1
  142. package/lib/skills/runtime-skill-sync/paths.js +1 -1
  143. package/lib/skills/runtime-skill-sync/push.js +1 -1
  144. package/lib/skills/runtime-skill-sync/scopes.js +1 -1
  145. package/lib/skills/runtime-skill-sync/types.d.ts +1 -0
  146. package/lib/skills/runtime-skill-sync/zip-codec.js +1 -1
  147. package/lib/skills/runtime-skill-sync/zip-package.js +1 -1
  148. package/lib/skills/runtime-skill-sync.js +1 -1
  149. package/lib/skills/skill-presence.js +1 -1
  150. package/lib/utils/apply-jq-filter.js +1 -1
  151. package/lib/utils/logger.js +1 -1
  152. package/lib/utils/lossless-json.js +1 -1
  153. package/lib/utils/params.js +1 -1
  154. package/lib/utils/platform.js +1 -1
  155. package/lib/utils/update-notice.js +1 -1
  156. package/lib/utils/version.js +1 -1
  157. package/lib/utils/write-cli-side-channel.js +1 -1
  158. package/package.json +1 -1
  159. package/skills/lovrabet/SKILL.md +5 -5
  160. package/skills/lovrabet/references/lovrabet-ocr-workflow.md +17 -2
  161. package/skills/lovrabet/references/lovrabet-skill-authoring.md +5 -4
  162. package/skills/lovrabet.manifest.json +3 -3
@@ -1 +1 @@
1
- const a43_0xb05171=a43_0x5167;(function(_0xba514a,_0x14332a){const _0x441b82=a43_0x5167,_0x2b1226=_0xba514a();while(!![]){try{const _0x5210ae=-parseInt(_0x441b82(0xc4))/0x1*(-parseInt(_0x441b82(0xb3))/0x2)+parseInt(_0x441b82(0xd3))/0x3+parseInt(_0x441b82(0xc0))/0x4+-parseInt(_0x441b82(0xb7))/0x5+parseInt(_0x441b82(0xbb))/0x6*(-parseInt(_0x441b82(0xbc))/0x7)+parseInt(_0x441b82(0xc8))/0x8*(-parseInt(_0x441b82(0xc9))/0x9)+parseInt(_0x441b82(0xcd))/0xa*(parseInt(_0x441b82(0xc5))/0xb);if(_0x5210ae===_0x14332a)break;else _0x2b1226['push'](_0x2b1226['shift']());}catch(_0x21d393){_0x2b1226['push'](_0x2b1226['shift']());}}}(a43_0x2a6f,0x583a1));import{listRuntimeMenuRolePermits,listRuntimePermitRoles,saveRuntimeMenuRolePermits}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';function a43_0x5167(_0x1fe80e,_0x257cc7){_0x1fe80e=_0x1fe80e-0xa9;const _0x2a6f87=a43_0x2a6f();let _0x516741=_0x2a6f87[_0x1fe80e];return _0x516741;}import{resolveRuntimeRoleRef}from'../../commands/role/shared.js';import{applyRuntimeRolePermission,assertGrantOrRevoke,assertRuntimePermissionManager,assertRuntimePermitRoleConfigurable,flattenRuntimeMenuRolePermits,GRANT_FLAG,menuPermitDto,REVOKE_FLAG,ROLE_REF_FLAG,runtimePermitWriteResult,splitRefs}from'../../commands/permit/shared.js';const MENUS_FLAG={'name':a43_0xb05171(0xae),'type':a43_0xb05171(0xc2),'required':!![],'description':a43_0xb05171(0xb9)};async function prepare(_0x54a6c9){const _0x302db1=a43_0xb05171;await assertRuntimePermissionManager(_0x54a6c9['appCode']);const _0x1c0d60=assertGrantOrRevoke(_0x54a6c9[_0x302db1(0xd7)](_0x302db1(0xc6)),_0x54a6c9[_0x302db1(0xd7)](_0x302db1(0xd4))),_0x49b255=await resolveRuntimeRoleRef(_0x54a6c9[_0x302db1(0xd8)],_0x54a6c9['str'](_0x302db1(0xd0)));assertRuntimePermitRoleConfigurable(_0x49b255);const _0x1e6717=[...new Set(splitRefs(_0x54a6c9[_0x302db1(0xc3)]('menus'),_0x302db1(0xb4))[_0x302db1(0xaf)](_0x1f3a11=>{const _0x3c1a5e=_0x302db1,_0x50e890=Number(_0x1f3a11);if(!/^\d+$/['test'](_0x1f3a11)||!Number['isSafeInteger'](_0x50e890)||_0x50e890<=0x0)throw CliErrors[_0x3c1a5e(0xc1)]('Invalid\x20runtime\x20menu\x20ID:\x20'+_0x1f3a11+'.');return _0x50e890;}))],_0x1f5f2f=flattenRuntimeMenuRolePermits(await listRuntimeMenuRolePermits(_0x54a6c9['appCode'])),_0x436e8c=await listRuntimePermitRoles(_0x54a6c9['appCode']),_0x4173d0=[],_0x426590=[],_0x22ac20=[],_0x49b6d9=[];for(const _0x117097 of _0x1e6717){const _0x5dacf8=_0x1f5f2f['find'](_0x42c028=>_0x42c028['id']===_0x117097);if(!_0x5dacf8)throw CliErrors[_0x302db1(0xc1)](_0x302db1(0xbf)+_0x117097+_0x302db1(0xa9));const _0x52b861=applyRuntimeRolePermission(_0x5dacf8[_0x302db1(0xb0)],_0x49b255,_0x436e8c,_0x1c0d60);_0x426590[_0x302db1(0xca)]({'menuId':_0x117097,'rolePermit':_0x5dacf8[_0x302db1(0xb0)]}),_0x22ac20[_0x302db1(0xca)]({'menuId':_0x117097,'rolePermit':_0x52b861[_0x302db1(0xd1)]});if(_0x52b861[_0x302db1(0xcb)])_0x4173d0[_0x302db1(0xca)](menuPermitDto(_0x54a6c9[_0x302db1(0xd8)],_0x5dacf8,_0x52b861[_0x302db1(0xd1)]));else _0x49b6d9[_0x302db1(0xca)]('Runtime\x20menu\x20'+_0x117097+_0x302db1(0xcf)+_0x1c0d60+_0x302db1(0xab)+_0x49b255['id']+'.');}return{'operation':_0x1c0d60,'role':_0x49b255,'menuIds':_0x1e6717,'permitList':_0x4173d0,'before':_0x426590,'after':_0x22ac20,'warnings':_0x49b6d9};}function a43_0x2a6f(){const _0x31321a=['\x20for\x20role\x20','high-risk-write','warnings','menus','map','rolePermit','/client/permit/resource/batch-save-menu','body','48GAnKlx','--menus','POST','role-menus-set','2002775byBJVS','operation','Comma-separated\x20runtime\x20menu\x20IDs','length','12TajLPl','242494biMjoI','permitList','Grant\x20or\x20revoke\x20selected\x20runtime\x20menus\x20for\x20one\x20role','Runtime\x20menu\x20','2842876GbrHSg','validation','string','str','18017bymnAl','11WDjrZb','grant','build','1587656hnIaiY','27ruPcMP','push','changed','permit','1501070DiNfJO','\x20selected\x20runtime\x20menus','\x20already\x20reflects\x20','role','roles','after','400059ekcbwu','revoke','授予或收回目标角色对指定运行菜单的访问权限;变更会影响该角色用户的菜单可见性。','menu-','bool','appCode','\x20was\x20not\x20found.','Preview:\x20'];a43_0x2a6f=function(){return _0x31321a;};return a43_0x2a6f();}export const permitRoleMenusSet={'service':a43_0xb05171(0xcc),'command':a43_0xb05171(0xb6),'description':a43_0xb05171(0xbe),'risk':a43_0xb05171(0xac),'confirmationDescription':a43_0xb05171(0xd5),'flags':[ROLE_REF_FLAG,GRANT_FLAG,REVOKE_FLAG,MENUS_FLAG],async 'validate'(_0x4f5dae){const _0x462cd0=a43_0xb05171;assertGrantOrRevoke(_0x4f5dae['bool']('grant'),_0x4f5dae['bool'](_0x462cd0(0xd4)));},async 'dryRun'(_0x128353){const _0x412202=a43_0xb05171,_0x540b4c=await prepare(_0x128353);return dryRun('POST',_0x412202(0xb1))[_0x412202(0xb2)]({'appCode':_0x128353[_0x412202(0xd8)],'permitList':_0x540b4c[_0x412202(0xbd)]})['description'](_0x412202(0xaa)+_0x540b4c[_0x412202(0xb8)]+_0x412202(0xce))[_0x412202(0xc7)]();},async 'execute'(_0x2c4c8f){const _0x270f29=a43_0xb05171,_0x131739=await prepare(_0x2c4c8f);return _0x131739[_0x270f29(0xbd)][_0x270f29(0xba)]>0x0&&await saveRuntimeMenuRolePermits(_0x2c4c8f[_0x270f29(0xd8)],_0x131739[_0x270f29(0xbd)]),{'ok':!![],'data':runtimePermitWriteResult(_0x270f29(0xd6)+_0x131739[_0x270f29(0xb8)],{'roleId':_0x131739[_0x270f29(0xd0)]['id'],'menuIds':_0x131739['menuIds']},_0x131739['before'],_0x131739[_0x270f29(0xd2)],{'method':_0x270f29(0xb5),'path':_0x270f29(0xb1)},_0x131739[_0x270f29(0xad)])};}};
1
+ const a43_0x397a0b=a43_0xbf78;(function(_0x482fc3,_0x2453dc){const _0x559400=a43_0xbf78,_0x38cc47=_0x482fc3();while(!![]){try{const _0xc92943=-parseInt(_0x559400(0x117))/0x1+-parseInt(_0x559400(0x113))/0x2+-parseInt(_0x559400(0x10c))/0x3*(parseInt(_0x559400(0x133))/0x4)+-parseInt(_0x559400(0x12a))/0x5+-parseInt(_0x559400(0x123))/0x6+parseInt(_0x559400(0x12f))/0x7+parseInt(_0x559400(0x118))/0x8;if(_0xc92943===_0x2453dc)break;else _0x38cc47['push'](_0x38cc47['shift']());}catch(_0x329092){_0x38cc47['push'](_0x38cc47['shift']());}}}(a43_0x3318,0x46722));function a43_0x3318(){const _0x11f5d7=['883372xpnLfs','map','/client/permit/resource/batch-save-menu','--menus','1945436LUqRcX','授予或收回目标角色对指定运行菜单的访问权限;变更会影响该角色用户的菜单可见性。','validation','\x20already\x20reflects\x20','body','3VvEfFg','role-menus-set','menu-','Invalid\x20runtime\x20menu\x20ID:\x20','\x20was\x20not\x20found.','str','Comma-separated\x20runtime\x20menu\x20IDs','568272DyZoac','isSafeInteger','changed','operation','78981KZcIPH','12353160daDnqd','push','Grant\x20or\x20revoke\x20selected\x20runtime\x20menus\x20for\x20one\x20role','revoke','after','rolePermit','POST','appCode','permitList','warnings','Preview:\x20','1463172JfTeuQ','build','role','grant','high-risk-write','menus','bool','1442285rQgatj','\x20selected\x20runtime\x20menus','length','permit','Runtime\x20menu\x20'];a43_0x3318=function(){return _0x11f5d7;};return a43_0x3318();}function a43_0xbf78(_0x25151c,_0x33c2ed){_0x25151c=_0x25151c-0x108;const _0x331895=a43_0x3318();let _0xbf78b2=_0x331895[_0x25151c];return _0xbf78b2;}import{listRuntimeMenuRolePermits,listRuntimePermitRoles,saveRuntimeMenuRolePermits}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';import{resolveRuntimeRoleRef}from'../../commands/role/shared.js';import{applyRuntimeRolePermission,assertGrantOrRevoke,assertRuntimePermissionManager,assertRuntimePermitRoleConfigurable,flattenRuntimeMenuRolePermits,GRANT_FLAG,menuPermitDto,REVOKE_FLAG,ROLE_REF_FLAG,runtimePermitWriteResult,splitRefs}from'../../commands/permit/shared.js';const MENUS_FLAG={'name':a43_0x397a0b(0x128),'type':'string','required':!![],'description':a43_0x397a0b(0x112)};async function prepare(_0x5a9716){const _0x4d222b=a43_0x397a0b;await assertRuntimePermissionManager(_0x5a9716[_0x4d222b(0x11f)]);const _0xb1d224=assertGrantOrRevoke(_0x5a9716['bool'](_0x4d222b(0x126)),_0x5a9716[_0x4d222b(0x129)]('revoke')),_0x5eda13=await resolveRuntimeRoleRef(_0x5a9716[_0x4d222b(0x11f)],_0x5a9716[_0x4d222b(0x111)](_0x4d222b(0x125)));assertRuntimePermitRoleConfigurable(_0x5eda13);const _0x383062=[...new Set(splitRefs(_0x5a9716[_0x4d222b(0x111)](_0x4d222b(0x128)),_0x4d222b(0x132))[_0x4d222b(0x130)](_0x51aa60=>{const _0x33142a=_0x4d222b,_0x5a9391=Number(_0x51aa60);if(!/^\d+$/['test'](_0x51aa60)||!Number[_0x33142a(0x114)](_0x5a9391)||_0x5a9391<=0x0)throw CliErrors['validation'](_0x33142a(0x10f)+_0x51aa60+'.');return _0x5a9391;}))],_0x488a2b=flattenRuntimeMenuRolePermits(await listRuntimeMenuRolePermits(_0x5a9716['appCode'])),_0x14daeb=await listRuntimePermitRoles(_0x5a9716[_0x4d222b(0x11f)]),_0x39155b=[],_0x5d8597=[],_0x4cae6d=[],_0x33e830=[];for(const _0x103e74 of _0x383062){const _0x71f6a9=_0x488a2b['find'](_0xe49602=>_0xe49602['id']===_0x103e74);if(!_0x71f6a9)throw CliErrors[_0x4d222b(0x109)]('Runtime\x20menu\x20'+_0x103e74+_0x4d222b(0x110));const _0x3cb87f=applyRuntimeRolePermission(_0x71f6a9[_0x4d222b(0x11d)],_0x5eda13,_0x14daeb,_0xb1d224);_0x5d8597['push']({'menuId':_0x103e74,'rolePermit':_0x71f6a9[_0x4d222b(0x11d)]}),_0x4cae6d['push']({'menuId':_0x103e74,'rolePermit':_0x3cb87f['roles']});if(_0x3cb87f[_0x4d222b(0x115)])_0x39155b['push'](menuPermitDto(_0x5a9716[_0x4d222b(0x11f)],_0x71f6a9,_0x3cb87f['roles']));else _0x33e830[_0x4d222b(0x119)](_0x4d222b(0x12e)+_0x103e74+_0x4d222b(0x10a)+_0xb1d224+'\x20for\x20role\x20'+_0x5eda13['id']+'.');}return{'operation':_0xb1d224,'role':_0x5eda13,'menuIds':_0x383062,'permitList':_0x39155b,'before':_0x5d8597,'after':_0x4cae6d,'warnings':_0x33e830};}export const permitRoleMenusSet={'service':a43_0x397a0b(0x12d),'command':a43_0x397a0b(0x10d),'description':a43_0x397a0b(0x11a),'risk':a43_0x397a0b(0x127),'confirmationDescription':a43_0x397a0b(0x108),'flags':[ROLE_REF_FLAG,GRANT_FLAG,REVOKE_FLAG,MENUS_FLAG],async 'validate'(_0x164a57){const _0x3c4346=a43_0x397a0b;assertGrantOrRevoke(_0x164a57[_0x3c4346(0x129)](_0x3c4346(0x126)),_0x164a57['bool'](_0x3c4346(0x11b)));},async 'dryRun'(_0x395706){const _0x10067f=a43_0x397a0b,_0x1c1617=await prepare(_0x395706);return dryRun(_0x10067f(0x11e),_0x10067f(0x131))[_0x10067f(0x10b)]({'appCode':_0x395706[_0x10067f(0x11f)],'permitList':_0x1c1617[_0x10067f(0x120)]})['description'](_0x10067f(0x122)+_0x1c1617[_0x10067f(0x116)]+_0x10067f(0x12b))[_0x10067f(0x124)]();},async 'execute'(_0x45aa2f){const _0x49cce1=a43_0x397a0b,_0x59204b=await prepare(_0x45aa2f);return _0x59204b[_0x49cce1(0x120)][_0x49cce1(0x12c)]>0x0&&await saveRuntimeMenuRolePermits(_0x45aa2f['appCode'],_0x59204b[_0x49cce1(0x120)]),{'ok':!![],'data':runtimePermitWriteResult(_0x49cce1(0x10e)+_0x59204b[_0x49cce1(0x116)],{'roleId':_0x59204b[_0x49cce1(0x125)]['id'],'menuIds':_0x59204b['menuIds']},_0x59204b['before'],_0x59204b[_0x49cce1(0x11c)],{'method':_0x49cce1(0x11e),'path':'/client/permit/resource/batch-save-menu'},_0x59204b[_0x49cce1(0x121)])};}};
@@ -1 +1 @@
1
- const a44_0x15001d=a44_0x210a;(function(_0x133f5f,_0x3bfbc9){const _0x4cb2d2=a44_0x210a,_0x3b2739=_0x133f5f();while(!![]){try{const _0x3457fd=parseInt(_0x4cb2d2(0x1f1))/0x1+-parseInt(_0x4cb2d2(0x1f2))/0x2+-parseInt(_0x4cb2d2(0x1f8))/0x3*(-parseInt(_0x4cb2d2(0x1f4))/0x4)+parseInt(_0x4cb2d2(0x200))/0x5*(parseInt(_0x4cb2d2(0x1f5))/0x6)+parseInt(_0x4cb2d2(0x1f3))/0x7*(-parseInt(_0x4cb2d2(0x1f0))/0x8)+-parseInt(_0x4cb2d2(0x1ff))/0x9*(parseInt(_0x4cb2d2(0x1f7))/0xa)+parseInt(_0x4cb2d2(0x1fb))/0xb;if(_0x3457fd===_0x3bfbc9)break;else _0x3b2739['push'](_0x3b2739['shift']());}catch(_0x4b8cb0){_0x3b2739['push'](_0x3b2739['shift']());}}}(a44_0x1e1b,0xdc030));function a44_0x210a(_0xc02558,_0x39d5d9){_0xc02558=_0xc02558-0x1f0;const _0x1e1b1a=a44_0x1e1b();let _0x210a42=_0x1e1b1a[_0xc02558];return _0x210a42;}import{getRuntimeRoleMenuResources}from'../../core/api-client.js';import{resolveRuntimeRoleRef}from'../../commands/role/shared.js';function a44_0x1e1b(){const _0x46d3ed=['24120ZnThge','1570281wvaDwv','runtime','roleName','27674999FVHMpf','str','roleType','permit','4797KDEUHD','4110nFXmFs','read','11207696EQWLHV','106866arSmyk','425576PBOCiK','7njxBbn','4QnGRMI','4776ZsstPn','Show\x20evaluated\x20runtime\x20menu\x20access\x20for\x20one\x20role'];a44_0x1e1b=function(){return _0x46d3ed;};return a44_0x1e1b();}import{ROLE_REF_FLAG}from'../../commands/permit/shared.js';export const permitRoleMenus={'service':a44_0x15001d(0x1fe),'command':'role-menus','description':a44_0x15001d(0x1f6),'risk':a44_0x15001d(0x201),'flags':[ROLE_REF_FLAG],async 'execute'(_0x3e41e2){const _0x3ad3db=a44_0x15001d,_0x44df4d=await resolveRuntimeRoleRef(_0x3e41e2['appCode'],_0x3e41e2[_0x3ad3db(0x1fc)]('role')),_0xe97299=await getRuntimeRoleMenuResources(_0x3e41e2['appCode'],_0x44df4d['id']);return{'ok':!![],'data':{'scope':_0x3ad3db(0x1f9),'role':{'id':_0x44df4d['id'],'roleName':_0x44df4d[_0x3ad3db(0x1fa)],'roleType':_0x44df4d[_0x3ad3db(0x1fd)]},'menus':_0xe97299}};}};
1
+ const a44_0x38c6b4=a44_0x1ef4;function a44_0x1ef4(_0x4a98e3,_0x45d36c){_0x4a98e3=_0x4a98e3-0x84;const _0x2c176b=a44_0x2c17();let _0x1ef48c=_0x2c176b[_0x4a98e3];return _0x1ef48c;}(function(_0x4ca507,_0x2bfd7c){const _0xf2dd85=a44_0x1ef4,_0x435b2b=_0x4ca507();while(!![]){try{const _0x354a10=-parseInt(_0xf2dd85(0x88))/0x1*(-parseInt(_0xf2dd85(0x97))/0x2)+-parseInt(_0xf2dd85(0x86))/0x3*(parseInt(_0xf2dd85(0x91))/0x4)+parseInt(_0xf2dd85(0x87))/0x5+-parseInt(_0xf2dd85(0x85))/0x6*(-parseInt(_0xf2dd85(0x90))/0x7)+parseInt(_0xf2dd85(0x96))/0x8+-parseInt(_0xf2dd85(0x8d))/0x9*(-parseInt(_0xf2dd85(0x8c))/0xa)+parseInt(_0xf2dd85(0x98))/0xb*(-parseInt(_0xf2dd85(0x89))/0xc);if(_0x354a10===_0x2bfd7c)break;else _0x435b2b['push'](_0x435b2b['shift']());}catch(_0x28d006){_0x435b2b['push'](_0x435b2b['shift']());}}}(a44_0x2c17,0xf0936));function a44_0x2c17(){const _0x7cce71=['33bJklQr','appCode','19284aGwMHn','641487Nlamkd','3545815lljGBG','8308PnkgQG','11297892EigkWt','str','read','16630gXawAf','10485KvSJVo','runtime','permit','3304qEySSj','20jYbEkq','role-menus','roleType','role','roleName','2466864IWDOsI','98EWUDwF'];a44_0x2c17=function(){return _0x7cce71;};return a44_0x2c17();}import{getRuntimeRoleMenuResources}from'../../core/api-client.js';import{resolveRuntimeRoleRef}from'../../commands/role/shared.js';import{ROLE_REF_FLAG}from'../../commands/permit/shared.js';export const permitRoleMenus={'service':a44_0x38c6b4(0x8f),'command':a44_0x38c6b4(0x92),'description':'Show\x20evaluated\x20runtime\x20menu\x20access\x20for\x20one\x20role','risk':a44_0x38c6b4(0x8b),'flags':[ROLE_REF_FLAG],async 'execute'(_0x1357ae){const _0x5b5e5c=a44_0x38c6b4,_0x59053c=await resolveRuntimeRoleRef(_0x1357ae[_0x5b5e5c(0x84)],_0x1357ae[_0x5b5e5c(0x8a)](_0x5b5e5c(0x94))),_0x570de2=await getRuntimeRoleMenuResources(_0x1357ae['appCode'],_0x59053c['id']);return{'ok':!![],'data':{'scope':_0x5b5e5c(0x8e),'role':{'id':_0x59053c['id'],'roleName':_0x59053c[_0x5b5e5c(0x95)],'roleType':_0x59053c[_0x5b5e5c(0x93)]},'menus':_0x570de2}};}};
@@ -1 +1 @@
1
- const a45_0x52913b=a45_0x5c0f;function a45_0x33ea(){const _0x2bbbe5=['key','2164686AtTUIC','runtime','userId','Configure\x20USER,\x20CUSTOM,\x20or\x20an\x20applicable\x20special\x20role\x20instead.','6CcNYPp','menu-roles','2655BqHxEU','631108WrjYUE','detail-roles','row-roles','\x20has\x20full\x20runtime\x20access\x20and\x20cannot\x20be\x20a\x20resource\x20permission\x20target.','556WjToWJ','SELF','MENU','Ask\x20an\x20application\x20manager\x20to\x20perform\x20this\x20operation.','trim','Permission\x20role\x20\x22','SELF\x20is\x20only\x20valid\x20for\x20--row-roles.','resourceCode','dataCreate','Cannot\x20revoke\x20the\x20last\x20role\x20from\x20a\x20runtime\x20resource.','revoke','Runtime\x20menu\x20ID','13608wKRbpz','OWNER','find','validation','926871mZKAlw','30xSEzyZ','toUpperCase','ALL','map','rolePermit','isSafeInteger','\x22\x20was\x20not\x20found.','appCode','963DiOeFY','filter','roleName','ADMIN','dataExport','children','export-roles','userList','permitId','resourceType','Grant\x20the\x20selected\x20resources\x20to\x20the\x20role','menu-id','boolean','\x20must\x20contain\x20at\x20least\x20one\x20value.','datasetCode','some','values','delete-roles','menuId','1272708TwAlUf','label','roleType','pageId','Runtime\x20resource\x20permission\x20changes\x20require\x20an\x20ADMIN\x20or\x20OWNER\x20role.','30PRBygW','Use\x20a\x20role\x20ID\x20from\x20`lovrabet\x20role\x20list`.','270214ChmTjF','length','dataUpdate','Revoke\x20the\x20selected\x20resources\x20from\x20the\x20role','\x20runtime\x20role\x20','grant','menuPermit','flag','push','Comma-separated\x20runtime\x20role\x20IDs\x20or\x20names','39HwDwVz','string'];a45_0x33ea=function(){return _0x2bbbe5;};return a45_0x33ea();}(function(_0x5574d0,_0x5abbe5){const _0x4eec0c=a45_0x5c0f,_0x394038=_0x5574d0();while(!![]){try{const _0x53778a=parseInt(_0x4eec0c(0xd9))/0x1*(-parseInt(_0x4eec0c(0xc0))/0x2)+-parseInt(_0x4eec0c(0xb5))/0x3+parseInt(_0x4eec0c(0xbc))/0x4*(parseInt(_0x4eec0c(0xd1))/0x5)+-parseInt(_0x4eec0c(0xb9))/0x6*(parseInt(_0x4eec0c(0xf3))/0x7)+-parseInt(_0x4eec0c(0xcc))/0x8*(-parseInt(_0x4eec0c(0xbb))/0x9)+-parseInt(_0x4eec0c(0xf1))/0xa*(parseInt(_0x4eec0c(0xd0))/0xb)+-parseInt(_0x4eec0c(0xec))/0xc*(-parseInt(_0x4eec0c(0xfd))/0xd);if(_0x53778a===_0x5abbe5)break;else _0x394038['push'](_0x394038['shift']());}catch(_0x28b547){_0x394038['push'](_0x394038['shift']());}}}(a45_0x33ea,0x76a55));import{getLoginUserInfo,listRuntimePermitRoles,listRuntimeRoleUsers}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';export const MENU_ID_FLAG={'name':a45_0x52913b(0xe4),'type':'number','required':!![],'description':a45_0x52913b(0xcb)};export const ROLE_REF_FLAG={'name':'role','type':a45_0x52913b(0xfe),'required':!![],'description':'Runtime\x20role\x20ID\x20or\x20exact\x20role\x20name'};export const GRANT_FLAG={'name':a45_0x52913b(0xf8),'type':a45_0x52913b(0xe5),'description':a45_0x52913b(0xe3)};export const REVOKE_FLAG={'name':a45_0x52913b(0xca),'type':'boolean','description':a45_0x52913b(0xf6)};export const PAGE_SLOT_SPECS=[{'flag':a45_0x52913b(0xba),'key':a45_0x52913b(0xf9),'allowSelf':![]},{'flag':'create-roles','key':a45_0x52913b(0xc8),'allowSelf':![]},{'flag':'update-roles','key':a45_0x52913b(0xf5),'allowSelf':![]},{'flag':a45_0x52913b(0xea),'key':'dataDelete','allowSelf':![]},{'flag':a45_0x52913b(0xbd),'key':'dataDetail','allowSelf':![]},{'flag':a45_0x52913b(0xdf),'key':a45_0x52913b(0xdd),'allowSelf':![]},{'flag':a45_0x52913b(0xbe),'key':'dataPermit','allowSelf':!![]}];export const PAGE_ROLE_FLAGS=PAGE_SLOT_SPECS['map'](_0x413913=>({'name':_0x413913[a45_0x52913b(0xfa)],'type':'string','description':a45_0x52913b(0xfc)}));export function splitRefs(_0x428eb1,_0x5766a2){const _0x4c924f=a45_0x52913b,_0xf0eb7d=[...new Set(_0x428eb1['split'](',')[_0x4c924f(0xd4)](_0x2fe435=>_0x2fe435[_0x4c924f(0xc4)]())['filter'](Boolean))];if(_0xf0eb7d[_0x4c924f(0xf4)]===0x0)throw CliErrors['validation'](_0x5766a2+_0x4c924f(0xe6));return _0xf0eb7d;}export function assertGrantOrRevoke(_0xd09d0c,_0x535d8a){const _0x3ef673=a45_0x52913b;if(_0xd09d0c===_0x535d8a)throw CliErrors[_0x3ef673(0xcf)]('Pass\x20exactly\x20one\x20of\x20--grant\x20or\x20--revoke.');return _0xd09d0c?'grant':_0x3ef673(0xca);}function a45_0x5c0f(_0x1ad5c6,_0x88f171){_0x1ad5c6=_0x1ad5c6-0xb5;const _0x33eacf=a45_0x33ea();let _0x5c0f64=_0x33eacf[_0x1ad5c6];return _0x5c0f64;}function resolvePermitRole(_0x27bb26,_0x3ddb85){const _0x42ff84=a45_0x52913b,_0x50a0e9=_0x3ddb85['trim'](),_0x4b86d8=/^-?\d+$/['test'](_0x50a0e9)?_0x27bb26[_0x42ff84(0xda)](_0x5da00a=>_0x5da00a['id']===Number(_0x50a0e9)):_0x27bb26['filter'](_0x2aef0a=>_0x2aef0a[_0x42ff84(0xdb)]===_0x50a0e9||_0x2aef0a[_0x42ff84(0xee)]===_0x50a0e9[_0x42ff84(0xd2)]());if(_0x4b86d8[_0x42ff84(0xf4)]!==0x1)throw CliErrors[_0x42ff84(0xcf)](_0x4b86d8['length']===0x0?_0x42ff84(0xc5)+_0x50a0e9+_0x42ff84(0xd7):_0x42ff84(0xc5)+_0x50a0e9+'\x22\x20is\x20ambiguous.',_0x42ff84(0xf2));return _0x4b86d8[0x0];}export async function resolveRuntimePermitRoles(_0x1309e4,_0x310a40,_0xa7a8d1){const _0x32735b=a45_0x52913b,_0x50155=await listRuntimePermitRoles(_0x1309e4,{'needSelf':!![],'needPublic':!![]}),_0x5acb62=[...new Map(_0x310a40[_0x32735b(0xd4)](_0x44aa81=>resolvePermitRole(_0x50155,_0x44aa81))[_0x32735b(0xd4)](_0xad05b2=>[_0xad05b2['id'],_0xad05b2]))[_0x32735b(0xe9)]()],_0x173e11=_0x5acb62[_0x32735b(0xce)](_0x37dd02=>_0x37dd02[_0x32735b(0xee)]===_0x32735b(0xdc)||_0x37dd02[_0x32735b(0xee)]===_0x32735b(0xcd));if(_0x173e11)throw CliErrors['validation'](_0x173e11[_0x32735b(0xee)]+_0x32735b(0xbf),_0x32735b(0xb8));if(!_0xa7a8d1&&_0x5acb62[_0x32735b(0xe8)](_0x21a8f3=>_0x21a8f3[_0x32735b(0xee)]===_0x32735b(0xc1)))throw CliErrors[_0x32735b(0xcf)](_0x32735b(0xc6));return _0x5acb62;}export async function assertRuntimePermissionManager(_0x1d6fba){const _0x269841=a45_0x52913b,_0x24abd3=await getLoginUserInfo(),_0x22c135=_0x24abd3['userId']??_0x24abd3['id'],_0x310b8f=Number(_0x22c135);if(!Number[_0x269841(0xd6)](_0x310b8f)||_0x310b8f<=0x0)throw CliErrors['validation']('Cannot\x20resolve\x20the\x20current\x20AK\x20userId\x20for\x20permission\x20management.');const _0x33887a=await listRuntimeRoleUsers(_0x1d6fba),_0x4ddc95=_0x33887a[_0x269841(0xe8)](_0x2af7be=>(_0x2af7be[_0x269841(0xee)]===_0x269841(0xdc)||_0x2af7be['roleType']===_0x269841(0xcd))&&_0x2af7be[_0x269841(0xe0)]['some'](_0x1c2e92=>_0x1c2e92[_0x269841(0xb7)]===_0x310b8f));if(!_0x4ddc95)throw CliErrors[_0x269841(0xcf)](_0x269841(0xf0),_0x269841(0xc3));}export function assertRuntimePermitRoleConfigurable(_0x3650b3){const _0x379915=a45_0x52913b;if(_0x3650b3['roleType']==='ADMIN'||_0x3650b3[_0x379915(0xee)]===_0x379915(0xcd))throw CliErrors['validation']('Cannot\x20change\x20resource\x20permissions\x20for\x20'+_0x3650b3[_0x379915(0xee)]+_0x379915(0xf7)+_0x3650b3[_0x379915(0xdb)]+'.','ADMIN\x20and\x20OWNER\x20have\x20full\x20runtime\x20access;\x20configure\x20USER\x20or\x20CUSTOM\x20instead.');}function asPermitRole(_0x2055c9){const _0x15cbc6=a45_0x52913b;return{'id':_0x2055c9['id'],'roleName':_0x2055c9[_0x15cbc6(0xdb)],'roleType':_0x2055c9[_0x15cbc6(0xee)],'allowed':!![]};}export function applyRuntimeRolePermission(_0x5d60d3,_0x115a5a,_0x517e5a,_0x4da496){const _0x4e5ddc=a45_0x52913b,_0x4559e4=!_0x5d60d3||_0x5d60d3[_0x4e5ddc(0xf4)]===0x0,_0x4701ec=_0x5d60d3?.['some'](_0x30507e=>_0x30507e[_0x4e5ddc(0xee)]===_0x4e5ddc(0xd3))??![];if(_0x4da496===_0x4e5ddc(0xf8)&&(_0x4559e4||_0x4701ec))return{'roles':_0x5d60d3??null,'changed':![]};let _0x23daa4=_0x4559e4||_0x4701ec?_0x517e5a[_0x4e5ddc(0xda)](_0x1ffdde=>_0x1ffdde['id']>0x0):[..._0x5d60d3];const _0x5973bf=_0x23daa4[_0x4e5ddc(0xe8)](_0x200071=>_0x200071['id']===_0x115a5a['id']);if(_0x4da496==='grant'){if(_0x5973bf)return{'roles':_0x23daa4,'changed':![]};return _0x23daa4[_0x4e5ddc(0xfb)](asPermitRole(_0x115a5a)),{'roles':_0x23daa4,'changed':!![]};}if(!_0x5973bf)return{'roles':_0x23daa4,'changed':_0x4559e4||_0x4701ec};_0x23daa4=_0x23daa4[_0x4e5ddc(0xda)](_0x42d3d4=>_0x42d3d4['id']!==_0x115a5a['id']);if(_0x23daa4['length']===0x0)throw CliErrors[_0x4e5ddc(0xcf)](_0x4e5ddc(0xc9),'The\x20current\x20service\x20contract\x20does\x20not\x20persist\x20an\x20empty\x20rolePermit;\x20grant\x20another\x20role\x20first.');return{'roles':_0x23daa4,'changed':!![]};}export function projectRuntimePagePermit(_0x39fc2e){const _0x5b26c5=a45_0x52913b,_0x3851eb={'menuId':_0x39fc2e[_0x5b26c5(0xeb)],'pageId':_0x39fc2e[_0x5b26c5(0xef)],'appCode':_0x39fc2e[_0x5b26c5(0xd8)],'datasetCode':_0x39fc2e[_0x5b26c5(0xe7)]};for(const _0x16ca8b of PAGE_SLOT_SPECS){const _0x5c42e4=_0x39fc2e[_0x16ca8b[_0x5b26c5(0xff)]];_0x5c42e4&&(_0x3851eb[_0x16ca8b[_0x5b26c5(0xff)]]={'resourceCode':_0x5c42e4[_0x5b26c5(0xc7)],'resourceType':_0x5c42e4[_0x5b26c5(0xe2)],'roles':(_0x5c42e4[_0x5b26c5(0xd5)]??[])[_0x5b26c5(0xd4)](_0x48c828=>({'id':_0x48c828['id'],'roleName':_0x48c828[_0x5b26c5(0xdb)],'roleType':_0x48c828[_0x5b26c5(0xee)]}))});}return _0x3851eb;}export function flattenRuntimeMenuRolePermits(_0xee6fef){const _0x4b8fa6=[],_0x47221a=_0xec7a60=>{const _0xe19942=a45_0x5c0f;_0x4b8fa6[_0xe19942(0xfb)](_0xec7a60);for(const _0x13dc05 of _0xec7a60[_0xe19942(0xde)]??[])_0x47221a(_0x13dc05);};for(const _0x372578 of _0xee6fef)_0x47221a(_0x372578);return _0x4b8fa6;}export function runtimePermitWriteResult(_0x4296f0,_0x1c8cac,_0x44e31c,_0x19fedb,_0x22a535,_0x54a079=[]){const _0x4fecd0=a45_0x52913b;return{'operation':_0x4296f0,'scope':_0x4fecd0(0xb6),'selector':_0x1c8cac,'before':_0x44e31c,'after':_0x19fedb,'dryRun':![],'backend':_0x22a535,'warnings':_0x54a079};}export function menuPermitDto(_0x2f2fbf,_0x53c583,_0x5dc868){const _0x2fd7f0=a45_0x52913b;return{..._0x53c583[_0x2fd7f0(0xe1)]!=null?{'id':_0x53c583[_0x2fd7f0(0xe1)]}:{},'appCode':_0x2f2fbf,'menuId':_0x53c583['id'],'pageId':_0x53c583[_0x2fd7f0(0xef)]??null,'resourceCode':String(_0x53c583['id']),'resourceType':_0x2fd7f0(0xc2),'resourceName':_0x53c583[_0x2fd7f0(0xed)],'rolePermit':_0x5dc868};}
1
+ const a45_0x48fa07=a45_0x5dd5;(function(_0x2ea4d4,_0x3b2218){const _0x33570c=a45_0x5dd5,_0x2b9f6c=_0x2ea4d4();while(!![]){try{const _0x2ddd60=-parseInt(_0x33570c(0xa3))/0x1*(-parseInt(_0x33570c(0x90))/0x2)+-parseInt(_0x33570c(0xbb))/0x3*(parseInt(_0x33570c(0xb0))/0x4)+parseInt(_0x33570c(0xac))/0x5+-parseInt(_0x33570c(0x8f))/0x6*(-parseInt(_0x33570c(0x9a))/0x7)+parseInt(_0x33570c(0x91))/0x8+parseInt(_0x33570c(0xc1))/0x9+parseInt(_0x33570c(0xbf))/0xa*(-parseInt(_0x33570c(0x95))/0xb);if(_0x2ddd60===_0x3b2218)break;else _0x2b9f6c['push'](_0x2b9f6c['shift']());}catch(_0x33102f){_0x2b9f6c['push'](_0x2b9f6c['shift']());}}}(a45_0x3739,0x94faa));import{getLoginUserInfo,listRuntimePermitRoles,listRuntimeRoleUsers}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';export const MENU_ID_FLAG={'name':'menu-id','type':a45_0x48fa07(0xa7),'required':!![],'description':a45_0x48fa07(0x9e)};export const ROLE_REF_FLAG={'name':a45_0x48fa07(0x85),'type':'string','required':!![],'description':a45_0x48fa07(0xa9)};export const GRANT_FLAG={'name':a45_0x48fa07(0x8a),'type':'boolean','description':a45_0x48fa07(0x8e)};export const REVOKE_FLAG={'name':a45_0x48fa07(0x94),'type':a45_0x48fa07(0x98),'description':'Revoke\x20the\x20selected\x20resources\x20from\x20the\x20role'};export const PAGE_SLOT_SPECS=[{'flag':'menu-roles','key':a45_0x48fa07(0xb3),'allowSelf':![]},{'flag':a45_0x48fa07(0xa8),'key':'dataCreate','allowSelf':![]},{'flag':a45_0x48fa07(0x9f),'key':a45_0x48fa07(0x86),'allowSelf':![]},{'flag':a45_0x48fa07(0xa5),'key':a45_0x48fa07(0xc0),'allowSelf':![]},{'flag':'detail-roles','key':'dataDetail','allowSelf':![]},{'flag':a45_0x48fa07(0xae),'key':a45_0x48fa07(0x88),'allowSelf':![]},{'flag':a45_0x48fa07(0xb7),'key':a45_0x48fa07(0x8d),'allowSelf':!![]}];function a45_0x3739(){const _0x1833c1=['boolean','key','21PAOKyu','Pass\x20exactly\x20one\x20of\x20--grant\x20or\x20--revoke.','ADMIN','isSafeInteger','Runtime\x20menu\x20ID','update-roles','The\x20current\x20service\x20contract\x20does\x20not\x20persist\x20an\x20empty\x20rolePermit;\x20grant\x20another\x20role\x20first.','appCode','children','1KkHaVk','trim','delete-roles','string','number','create-roles','Runtime\x20role\x20ID\x20or\x20exact\x20role\x20name','\x20runtime\x20role\x20','Runtime\x20resource\x20permission\x20changes\x20require\x20an\x20ADMIN\x20or\x20OWNER\x20role.','3135755sheDYM','push','export-roles','Use\x20a\x20role\x20ID\x20from\x20`lovrabet\x20role\x20list`.','30984qplKCr','ALL','SELF\x20is\x20only\x20valid\x20for\x20--row-roles.','menuPermit','Permission\x20role\x20\x22','values','split','row-roles','\x22\x20is\x20ambiguous.','MENU','roleName','429GKyJVx','permitId','some','Configure\x20USER,\x20CUSTOM,\x20or\x20an\x20applicable\x20special\x20role\x20instead.','13541340IhtSQj','dataDelete','10492344VkSszx','pageId','menuId','toUpperCase','rolePermit','filter','ADMIN\x20and\x20OWNER\x20have\x20full\x20runtime\x20access;\x20configure\x20USER\x20or\x20CUSTOM\x20instead.','validation','resourceCode','label','Ask\x20an\x20application\x20manager\x20to\x20perform\x20this\x20operation.','role','dataUpdate','userId','dataExport','flag','grant','roleType','map','dataPermit','Grant\x20the\x20selected\x20resources\x20to\x20the\x20role','1498884LsZyey','591042keyRzy','1872800LNsOYU','length','\x20must\x20contain\x20at\x20least\x20one\x20value.','revoke','11mEuBhr','OWNER','\x22\x20was\x20not\x20found.'];a45_0x3739=function(){return _0x1833c1;};return a45_0x3739();}export const PAGE_ROLE_FLAGS=PAGE_SLOT_SPECS['map'](_0x40f0f8=>({'name':_0x40f0f8[a45_0x48fa07(0x89)],'type':a45_0x48fa07(0xa6),'description':'Comma-separated\x20runtime\x20role\x20IDs\x20or\x20names'}));export function splitRefs(_0xda222d,_0x13b52a){const _0x5333ff=a45_0x48fa07,_0x5d444e=[...new Set(_0xda222d[_0x5333ff(0xb6)](',')[_0x5333ff(0x8c)](_0x376f1d=>_0x376f1d[_0x5333ff(0xa4)]())[_0x5333ff(0x7f)](Boolean))];if(_0x5d444e[_0x5333ff(0x92)]===0x0)throw CliErrors['validation'](_0x13b52a+_0x5333ff(0x93));return _0x5d444e;}export function assertGrantOrRevoke(_0x59d837,_0x3ae5d2){const _0x481168=a45_0x48fa07;if(_0x59d837===_0x3ae5d2)throw CliErrors[_0x481168(0x81)](_0x481168(0x9b));return _0x59d837?_0x481168(0x8a):_0x481168(0x94);}function resolvePermitRole(_0x1c2fa1,_0x4f63f){const _0x251ae3=a45_0x48fa07,_0x3d8f9a=_0x4f63f[_0x251ae3(0xa4)](),_0xc6ff02=/^-?\d+$/['test'](_0x3d8f9a)?_0x1c2fa1['filter'](_0x25b293=>_0x25b293['id']===Number(_0x3d8f9a)):_0x1c2fa1[_0x251ae3(0x7f)](_0x3bba1c=>_0x3bba1c[_0x251ae3(0xba)]===_0x3d8f9a||_0x3bba1c[_0x251ae3(0x8b)]===_0x3d8f9a[_0x251ae3(0x7d)]());if(_0xc6ff02[_0x251ae3(0x92)]!==0x1)throw CliErrors['validation'](_0xc6ff02['length']===0x0?_0x251ae3(0xb4)+_0x3d8f9a+_0x251ae3(0x97):_0x251ae3(0xb4)+_0x3d8f9a+_0x251ae3(0xb8),_0x251ae3(0xaf));return _0xc6ff02[0x0];}export async function resolveRuntimePermitRoles(_0x53575f,_0x2deb4a,_0x56642d){const _0x4bd846=a45_0x48fa07,_0x22c7fb=await listRuntimePermitRoles(_0x53575f,{'needSelf':!![],'needPublic':!![]}),_0x512edd=[...new Map(_0x2deb4a[_0x4bd846(0x8c)](_0x14c319=>resolvePermitRole(_0x22c7fb,_0x14c319))[_0x4bd846(0x8c)](_0x888ed8=>[_0x888ed8['id'],_0x888ed8]))[_0x4bd846(0xb5)]()],_0x57cc17=_0x512edd['find'](_0xdbdc98=>_0xdbdc98[_0x4bd846(0x8b)]===_0x4bd846(0x9c)||_0xdbdc98[_0x4bd846(0x8b)]===_0x4bd846(0x96));if(_0x57cc17)throw CliErrors[_0x4bd846(0x81)](_0x57cc17['roleType']+'\x20has\x20full\x20runtime\x20access\x20and\x20cannot\x20be\x20a\x20resource\x20permission\x20target.',_0x4bd846(0xbe));if(!_0x56642d&&_0x512edd[_0x4bd846(0xbd)](_0x145aeb=>_0x145aeb['roleType']==='SELF'))throw CliErrors[_0x4bd846(0x81)](_0x4bd846(0xb2));return _0x512edd;}export async function assertRuntimePermissionManager(_0x1aaeed){const _0x2c429d=a45_0x48fa07,_0x290fb6=await getLoginUserInfo(),_0xd9c50c=_0x290fb6[_0x2c429d(0x87)]??_0x290fb6['id'],_0x90c8db=Number(_0xd9c50c);if(!Number[_0x2c429d(0x9d)](_0x90c8db)||_0x90c8db<=0x0)throw CliErrors[_0x2c429d(0x81)]('Cannot\x20resolve\x20the\x20current\x20AK\x20userId\x20for\x20permission\x20management.');const _0x28d852=await listRuntimeRoleUsers(_0x1aaeed),_0x12b097=_0x28d852[_0x2c429d(0xbd)](_0x3e2dfc=>(_0x3e2dfc['roleType']===_0x2c429d(0x9c)||_0x3e2dfc[_0x2c429d(0x8b)]==='OWNER')&&_0x3e2dfc['userList'][_0x2c429d(0xbd)](_0x8cae49=>_0x8cae49[_0x2c429d(0x87)]===_0x90c8db));if(!_0x12b097)throw CliErrors['validation'](_0x2c429d(0xab),_0x2c429d(0x84));}export function assertRuntimePermitRoleConfigurable(_0x1b0bd7){const _0x3ebed7=a45_0x48fa07;if(_0x1b0bd7[_0x3ebed7(0x8b)]===_0x3ebed7(0x9c)||_0x1b0bd7[_0x3ebed7(0x8b)]===_0x3ebed7(0x96))throw CliErrors[_0x3ebed7(0x81)]('Cannot\x20change\x20resource\x20permissions\x20for\x20'+_0x1b0bd7[_0x3ebed7(0x8b)]+_0x3ebed7(0xaa)+_0x1b0bd7['roleName']+'.',_0x3ebed7(0x80));}function asPermitRole(_0x2610cf){const _0x59984d=a45_0x48fa07;return{'id':_0x2610cf['id'],'roleName':_0x2610cf[_0x59984d(0xba)],'roleType':_0x2610cf[_0x59984d(0x8b)],'allowed':!![]};}export function applyRuntimeRolePermission(_0x3db483,_0x345733,_0x2a31ed,_0x2dcdb2){const _0x241381=a45_0x48fa07,_0xa87c70=!_0x3db483||_0x3db483['length']===0x0,_0x29992c=_0x3db483?.['some'](_0x41dd32=>_0x41dd32[_0x241381(0x8b)]===_0x241381(0xb1))??![];if(_0x2dcdb2===_0x241381(0x8a)&&(_0xa87c70||_0x29992c))return{'roles':_0x3db483??null,'changed':![]};let _0x365090=_0xa87c70||_0x29992c?_0x2a31ed['filter'](_0x3e87b2=>_0x3e87b2['id']>0x0):[..._0x3db483];const _0x31419b=_0x365090['some'](_0x49a30c=>_0x49a30c['id']===_0x345733['id']);if(_0x2dcdb2===_0x241381(0x8a)){if(_0x31419b)return{'roles':_0x365090,'changed':![]};return _0x365090[_0x241381(0xad)](asPermitRole(_0x345733)),{'roles':_0x365090,'changed':!![]};}if(!_0x31419b)return{'roles':_0x365090,'changed':_0xa87c70||_0x29992c};_0x365090=_0x365090[_0x241381(0x7f)](_0x3ac779=>_0x3ac779['id']!==_0x345733['id']);if(_0x365090[_0x241381(0x92)]===0x0)throw CliErrors[_0x241381(0x81)]('Cannot\x20revoke\x20the\x20last\x20role\x20from\x20a\x20runtime\x20resource.',_0x241381(0xa0));return{'roles':_0x365090,'changed':!![]};}export function projectRuntimePagePermit(_0x38c502){const _0x1fedda=a45_0x48fa07,_0x568697={'menuId':_0x38c502[_0x1fedda(0x7c)],'pageId':_0x38c502[_0x1fedda(0xc2)],'appCode':_0x38c502[_0x1fedda(0xa1)],'datasetCode':_0x38c502['datasetCode']};for(const _0x3359fc of PAGE_SLOT_SPECS){const _0x259574=_0x38c502[_0x3359fc[_0x1fedda(0x99)]];_0x259574&&(_0x568697[_0x3359fc[_0x1fedda(0x99)]]={'resourceCode':_0x259574[_0x1fedda(0x82)],'resourceType':_0x259574['resourceType'],'roles':(_0x259574[_0x1fedda(0x7e)]??[])[_0x1fedda(0x8c)](_0x33027a=>({'id':_0x33027a['id'],'roleName':_0x33027a['roleName'],'roleType':_0x33027a['roleType']}))});}return _0x568697;}export function flattenRuntimeMenuRolePermits(_0x83086){const _0x176bb2=[],_0x3f1f66=_0x26bb36=>{const _0x592b21=a45_0x5dd5;_0x176bb2[_0x592b21(0xad)](_0x26bb36);for(const _0x5e8469 of _0x26bb36[_0x592b21(0xa2)]??[])_0x3f1f66(_0x5e8469);};for(const _0x4418bd of _0x83086)_0x3f1f66(_0x4418bd);return _0x176bb2;}function a45_0x5dd5(_0xba19a8,_0x26d2c2){_0xba19a8=_0xba19a8-0x7c;const _0x37399e=a45_0x3739();let _0x5dd5ae=_0x37399e[_0xba19a8];return _0x5dd5ae;}export function runtimePermitWriteResult(_0x547849,_0x276390,_0x14ec03,_0x436bfa,_0x485eb7,_0x204c8c=[]){return{'operation':_0x547849,'scope':'runtime','selector':_0x276390,'before':_0x14ec03,'after':_0x436bfa,'dryRun':![],'backend':_0x485eb7,'warnings':_0x204c8c};}export function menuPermitDto(_0x3bfa32,_0x373c0f,_0x2811fb){const _0x4ddd4c=a45_0x48fa07;return{..._0x373c0f['permitId']!=null?{'id':_0x373c0f[_0x4ddd4c(0xbc)]}:{},'appCode':_0x3bfa32,'menuId':_0x373c0f['id'],'pageId':_0x373c0f['pageId']??null,'resourceCode':String(_0x373c0f['id']),'resourceType':_0x4ddd4c(0xb9),'resourceName':_0x373c0f[_0x4ddd4c(0x83)],'rolePermit':_0x2811fb};}
@@ -1 +1 @@
1
- const a46_0x2aa409=a46_0x13a1;(function(_0x2a74fd,_0x37f90e){const _0x89d9ec=a46_0x13a1,_0x319744=_0x2a74fd();while(!![]){try{const _0x2a5cee=parseInt(_0x89d9ec(0xb7))/0x1+-parseInt(_0x89d9ec(0xda))/0x2*(parseInt(_0x89d9ec(0xbf))/0x3)+parseInt(_0x89d9ec(0xd6))/0x4+parseInt(_0x89d9ec(0xe1))/0x5+-parseInt(_0x89d9ec(0xa8))/0x6+-parseInt(_0x89d9ec(0xb6))/0x7+parseInt(_0x89d9ec(0xc0))/0x8;if(_0x2a5cee===_0x37f90e)break;else _0x319744['push'](_0x319744['shift']());}catch(_0x2393ab){_0x319744['push'](_0x319744['shift']());}}}(a46_0xae56,0xedf9e));import{existsSync,readFileSync,statSync}from'node:fs';function a46_0xae56(){const _0x54c019=['read','File\x20is\x20not\x20a\x20regular\x20file:\x20','length','3855QXiepu','36825464upZHzB','config','Personal\x20BFF\x20script\x20file\x20is\x20blank.','List\x20current\x20user\x27s\x20personal\x20BFF\x20scripts\x20for\x20the\x20current\x20app','Path\x20to\x20a\x20local\x20UTF-8\x20JavaScript\x20or\x20TypeScript\x20file','File\x20path\x20is\x20required.','Updated\x20personal\x20BFF\x20','num','scriptContent','根据本地脚本文件创建个人\x20BFF','map','isArray','scriptType','--params\x20must\x20be\x20a\x20JSON\x20object.','validation','/update','执行个人\x20BFF\x20脚本;脚本可能读取或修改业务数据,也可能调用外部服务。','source-session-id','body','personal-bff','flag','appCode','398380tQJuTV','write','description','--name\x20must\x20be\x20a\x20valid\x20JavaScript\x20identifier,\x20for\x20example\x20loadOrders.','2362IzDCua','updateTime','file','string','gmtCreate','POST','gmtModified','3650800mfpvCN','params','/client/runtime-bff/personal/create','Optional\x20source\x20RuntimeAgent\x20session\x20id','list','trim','version','detail','Created\x20personal\x20BFF\x20','personal-bff\x20update\x20requires\x20at\x20least\x20one\x20of\x20--name,\x20--description,\x20--file,\x20or\x20--source-session-id.','test','9120126uWjScf','name','Personal\x20BFF\x20script\x20ID','bool','utf8','Personal\x20BFF\x20functionName,\x20for\x20example\x20loadOrders','/client/runtime-bff/personal/','create','verbose','Executed\x20personal\x20BFF\x20','build','functionName','update','Show\x20one\x20personal\x20BFF\x20by\x20id','12476674OrDZCq','361800jJmCVR','把本地脚本保存为个人\x20BFF;之后可在当前应用中调用该脚本。','根据\x20ID\x20执行个人\x20BFF,并可传入\x20JSON\x20参数','keys','str'];a46_0xae56=function(){return _0x54c019;};return a46_0xae56();}import{createPersonalBff,executePersonalBff,getPersonalBff,listPersonalBffs,updatePersonalBff}from'../../core/api-client.js';import{ID_FLAG,PARAMS_FLAG,VERBOSE_FLAG}from'../../commands/common/flags.js';import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';import{parseJsonParams}from'../../utils/params.js';const FUNCTION_NAME_PATTERN=/^[a-zA-Z_$][a-zA-Z0-9_$]*$/,FILE_FLAG={'name':a46_0x2aa409(0xdc),'type':a46_0x2aa409(0xdd),'description':a46_0x2aa409(0xc4)},FUNCTION_NAME_FLAG={'name':a46_0x2aa409(0xa9),'type':a46_0x2aa409(0xdd),'required':!![],'description':a46_0x2aa409(0xad)},DESCRIPTION_FLAG={'name':a46_0x2aa409(0xd8),'type':a46_0x2aa409(0xdd),'description':'Personal\x20BFF\x20description'},SOURCE_SESSION_FLAG={'name':'source-session-id','type':a46_0x2aa409(0xdd),'description':a46_0x2aa409(0xe4)};function normalizeFunctionName(_0x1a0180){const _0x47ca7a=a46_0x2aa409,_0x1378ed=String(_0x1a0180||'')['trim']();if(!_0x1378ed||!FUNCTION_NAME_PATTERN[_0x47ca7a(0xa7)](_0x1378ed))throw CliErrors['validation'](_0x47ca7a(0xd9));return _0x1378ed;}function readScriptFile(_0x171748){const _0x1a07ed=a46_0x2aa409;if(!_0x171748)throw CliErrors['validation'](_0x1a07ed(0xc5));if(!existsSync(_0x171748))throw CliErrors[_0x1a07ed(0xce)]('File\x20not\x20found:\x20'+_0x171748);if(!statSync(_0x171748)['isFile']())throw CliErrors[_0x1a07ed(0xce)](_0x1a07ed(0xbd)+_0x171748);const _0x11b57c=readFileSync(_0x171748,_0x1a07ed(0xac));if(!_0x11b57c[_0x1a07ed(0xe6)]())throw CliErrors[_0x1a07ed(0xce)](_0x1a07ed(0xc2));return _0x11b57c;}function optionalTrimmed(_0x4ad635){const _0x5af341=a46_0x2aa409,_0x3c6ea7=String(_0x4ad635||'')[_0x5af341(0xe6)]();return _0x3c6ea7||undefined;}function summarizeBff(_0x1582a2){const _0x2d8e6e=a46_0x2aa409;return{'id':_0x1582a2['id'],'appCode':_0x1582a2[_0x2d8e6e(0xd5)],'functionName':_0x1582a2[_0x2d8e6e(0xb3)],'description':_0x1582a2[_0x2d8e6e(0xd8)],'scriptType':_0x1582a2['scriptType'],'version':_0x1582a2['version'],'gmtModified':_0x1582a2[_0x2d8e6e(0xe0)],'updateTime':_0x1582a2['updateTime']};}function detailBff(_0x3d5715){const _0x33815e=a46_0x2aa409;return{'id':_0x3d5715['id'],'appCode':_0x3d5715['appCode'],'functionName':_0x3d5715['functionName'],'description':_0x3d5715[_0x33815e(0xd8)],'scriptType':_0x3d5715[_0x33815e(0xcc)],'scriptContent':_0x3d5715[_0x33815e(0xc8)]??'','config':_0x3d5715[_0x33815e(0xc1)],'version':_0x3d5715[_0x33815e(0xa3)],'createUserId':_0x3d5715['createUserId'],'gmtCreate':_0x3d5715[_0x33815e(0xde)],'gmtModified':_0x3d5715[_0x33815e(0xe0)],'createTime':_0x3d5715['createTime'],'updateTime':_0x3d5715[_0x33815e(0xdb)]};}function buildCreateInput(_0x22d1f7){const _0x18c327=a46_0x2aa409;return{'functionName':normalizeFunctionName(_0x22d1f7[_0x18c327(0xbb)]('name')),...optionalTrimmed(_0x22d1f7['str']('description'))?{'description':optionalTrimmed(_0x22d1f7[_0x18c327(0xbb)](_0x18c327(0xd8)))}:{},'scriptContent':readScriptFile(_0x22d1f7[_0x18c327(0xbb)](_0x18c327(0xdc))),...optionalTrimmed(_0x22d1f7[_0x18c327(0xbb)](_0x18c327(0xd1)))?{'sourceSessionId':optionalTrimmed(_0x22d1f7[_0x18c327(0xbb)](_0x18c327(0xd1)))}:{}};}function buildUpdateInput(_0x221fac){const _0x5626cd=a46_0x2aa409,_0x31f790={};optionalTrimmed(_0x221fac['str'](_0x5626cd(0xa9)))&&(_0x31f790[_0x5626cd(0xb3)]=normalizeFunctionName(_0x221fac[_0x5626cd(0xbb)](_0x5626cd(0xa9))));_0x221fac['flag'](_0x5626cd(0xd8))!==undefined&&(_0x31f790[_0x5626cd(0xd8)]=_0x221fac['str'](_0x5626cd(0xd8)));optionalTrimmed(_0x221fac[_0x5626cd(0xbb)]('file'))&&(_0x31f790[_0x5626cd(0xc8)]=readScriptFile(_0x221fac[_0x5626cd(0xbb)]('file')));_0x221fac[_0x5626cd(0xd4)](_0x5626cd(0xd1))!==undefined&&(_0x31f790['sourceSessionId']=_0x221fac[_0x5626cd(0xbb)]('source-session-id'));if(Object[_0x5626cd(0xba)](_0x31f790)[_0x5626cd(0xbe)]===0x0)throw CliErrors[_0x5626cd(0xce)](_0x5626cd(0xa6));return _0x31f790;}function parseExecParams(_0x2d7279){const _0x3bd3ea=a46_0x2aa409,_0x22e485=parseJsonParams(_0x2d7279)??{};if(Array[_0x3bd3ea(0xcb)](_0x22e485))throw CliErrors[_0x3bd3ea(0xce)](_0x3bd3ea(0xcd));return _0x22e485;}function a46_0x13a1(_0x41f274,_0x2a932a){_0x41f274=_0x41f274-0xa3;const _0xae566=a46_0xae56();let _0x13a109=_0xae566[_0x41f274];return _0x13a109;}const personalBffList={'service':a46_0x2aa409(0xd3),'command':a46_0x2aa409(0xe5),'description':a46_0x2aa409(0xc3),'risk':'read','flags':[VERBOSE_FLAG],async 'execute'(_0x453d42){const _0x44f916=a46_0x2aa409,_0x4956f2=await listPersonalBffs(_0x453d42[_0x44f916(0xd5)]);return{'ok':!![],'data':{'total':_0x4956f2['length'],'items':_0x453d42[_0x44f916(0xab)](_0x44f916(0xb0))?_0x4956f2:_0x4956f2[_0x44f916(0xca)](summarizeBff)}};}},personalBffDetail={'service':a46_0x2aa409(0xd3),'command':a46_0x2aa409(0xa4),'description':a46_0x2aa409(0xb5),'risk':a46_0x2aa409(0xbc),'flags':[{...ID_FLAG,'description':a46_0x2aa409(0xaa)}],async 'execute'(_0x3da794){const _0x45ab53=a46_0x2aa409,_0x34043e=await getPersonalBff(_0x3da794['num']('id'),_0x3da794[_0x45ab53(0xd5)]);return{'ok':!![],'data':detailBff(_0x34043e)};}},personalBffCreate={'service':a46_0x2aa409(0xd3),'command':a46_0x2aa409(0xaf),'description':a46_0x2aa409(0xc9),'risk':'write','confirmationDescription':a46_0x2aa409(0xb8),'flags':[FUNCTION_NAME_FLAG,{...FILE_FLAG,'required':!![]},DESCRIPTION_FLAG,SOURCE_SESSION_FLAG],async 'execute'(_0x56d59f){const _0x28188d=a46_0x2aa409,_0x1efc5d=buildCreateInput(_0x56d59f),_0x12a919=await createPersonalBff(_0x56d59f[_0x28188d(0xd5)],_0x1efc5d);return{'ok':!![],'data':detailBff(_0x12a919),'message':_0x28188d(0xa5)+_0x12a919['id']+(_0x12a919[_0x28188d(0xb3)]?'\x20('+_0x12a919['functionName']+')':'')};},async 'dryRun'(_0x37d66b){const _0x56c668=a46_0x2aa409,_0x2a6508=buildCreateInput(_0x37d66b);return dryRun(_0x56c668(0xdf),_0x56c668(0xe3))[_0x56c668(0xd2)]({'appCode':_0x37d66b[_0x56c668(0xd5)],..._0x2a6508})[_0x56c668(0xd8)]('Preview:\x20create\x20personal\x20BFF\x20'+_0x2a6508[_0x56c668(0xb3)])['build']();}},personalBffUpdate={'service':a46_0x2aa409(0xd3),'command':a46_0x2aa409(0xb4),'description':'根据\x20ID\x20更新个人\x20BFF','risk':a46_0x2aa409(0xd7),'confirmationDescription':'更新个人\x20BFF\x20的脚本或元信息;之后的调用将使用新版本。','flags':[{...ID_FLAG,'description':a46_0x2aa409(0xaa)},{...FUNCTION_NAME_FLAG,'required':![]},FILE_FLAG,DESCRIPTION_FLAG,SOURCE_SESSION_FLAG],async 'execute'(_0x4e009c){const _0x12ed4b=a46_0x2aa409,_0x317f8d=_0x4e009c[_0x12ed4b(0xc7)]('id'),_0x476b96=buildUpdateInput(_0x4e009c),_0x14d34d=await updatePersonalBff(_0x317f8d,_0x4e009c[_0x12ed4b(0xd5)],_0x476b96);return{'ok':!![],'data':detailBff(_0x14d34d),'message':_0x12ed4b(0xc6)+_0x14d34d['id']+(_0x14d34d[_0x12ed4b(0xb3)]?'\x20('+_0x14d34d[_0x12ed4b(0xb3)]+')':'')};},async 'dryRun'(_0x2c68d8){const _0x46284b=a46_0x2aa409,_0x290186=_0x2c68d8['num']('id'),_0x3ed224=buildUpdateInput(_0x2c68d8);return dryRun('POST',_0x46284b(0xae)+_0x290186+_0x46284b(0xcf))['body']({'appCode':_0x2c68d8[_0x46284b(0xd5)],..._0x3ed224})[_0x46284b(0xd8)]('Preview:\x20update\x20personal\x20BFF\x20'+_0x290186)[_0x46284b(0xb2)]();}},personalBffExec={'service':a46_0x2aa409(0xd3),'command':'exec','description':a46_0x2aa409(0xb9),'risk':a46_0x2aa409(0xd7),'confirmationDescription':a46_0x2aa409(0xd0),'flags':[{...ID_FLAG,'description':'Personal\x20BFF\x20script\x20ID'},{...PARAMS_FLAG,'description':'JSON\x20object\x20passed\x20to\x20the\x20personal\x20BFF\x20execution'}],async 'validate'(_0x2779a3){const _0x222706=a46_0x2aa409;parseExecParams(_0x2779a3[_0x222706(0xbb)](_0x222706(0xe2)));},async 'execute'(_0x22cf7f){const _0x12d738=a46_0x2aa409,_0x4ca1c1=_0x22cf7f[_0x12d738(0xc7)]('id'),_0x49eaf8=parseExecParams(_0x22cf7f[_0x12d738(0xbb)](_0x12d738(0xe2))),_0x5e6325=await executePersonalBff(_0x4ca1c1,_0x22cf7f[_0x12d738(0xd5)],_0x49eaf8);return{'ok':!![],'data':{'result':_0x5e6325},'message':_0x12d738(0xb1)+_0x4ca1c1};}};export const personalBffDefinitions=[personalBffList,personalBffDetail,personalBffCreate,personalBffUpdate,personalBffExec];
1
+ const a46_0x4d8292=a46_0x105a;function a46_0x105a(_0x3693ea,_0x5e3083){_0x3693ea=_0x3693ea-0xc2;const _0x5f4197=a46_0x5f41();let _0x105a5a=_0x5f4197[_0x3693ea];return _0x105a5a;}(function(_0x41e8e6,_0x174d47){const _0x2ca711=a46_0x105a,_0x10545c=_0x41e8e6();while(!![]){try{const _0x48aaa9=-parseInt(_0x2ca711(0xd8))/0x1+parseInt(_0x2ca711(0xfb))/0x2+parseInt(_0x2ca711(0xcf))/0x3+-parseInt(_0x2ca711(0xc6))/0x4*(parseInt(_0x2ca711(0xf1))/0x5)+parseInt(_0x2ca711(0xea))/0x6*(parseInt(_0x2ca711(0xda))/0x7)+parseInt(_0x2ca711(0xf5))/0x8+parseInt(_0x2ca711(0xd4))/0x9;if(_0x48aaa9===_0x174d47)break;else _0x10545c['push'](_0x10545c['shift']());}catch(_0x4d5625){_0x10545c['push'](_0x10545c['shift']());}}}(a46_0x5f41,0x824a6));import{existsSync,readFileSync,statSync}from'node:fs';import{createPersonalBff,executePersonalBff,getPersonalBff,listPersonalBffs,updatePersonalBff}from'../../core/api-client.js';import{ID_FLAG,PARAMS_FLAG,VERBOSE_FLAG}from'../../commands/common/flags.js';import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';import{parseJsonParams}from'../../utils/params.js';const FUNCTION_NAME_PATTERN=/^[a-zA-Z_$][a-zA-Z0-9_$]*$/,FILE_FLAG={'name':a46_0x4d8292(0xe0),'type':a46_0x4d8292(0xd7),'description':a46_0x4d8292(0xd5)},FUNCTION_NAME_FLAG={'name':a46_0x4d8292(0xfc),'type':a46_0x4d8292(0xd7),'required':!![],'description':a46_0x4d8292(0xc2)},DESCRIPTION_FLAG={'name':a46_0x4d8292(0xdf),'type':'string','description':a46_0x4d8292(0xf2)},SOURCE_SESSION_FLAG={'name':a46_0x4d8292(0xc4),'type':a46_0x4d8292(0xd7),'description':a46_0x4d8292(0xd9)};function normalizeFunctionName(_0x415eb1){const _0x273cac=a46_0x4d8292,_0x1d8f9d=String(_0x415eb1||'')[_0x273cac(0xd6)]();if(!_0x1d8f9d||!FUNCTION_NAME_PATTERN['test'](_0x1d8f9d))throw CliErrors['validation'](_0x273cac(0xdd));return _0x1d8f9d;}function readScriptFile(_0x1afd96){const _0x8aa25c=a46_0x4d8292;if(!_0x1afd96)throw CliErrors[_0x8aa25c(0xc9)](_0x8aa25c(0xfa));if(!existsSync(_0x1afd96))throw CliErrors['validation']('File\x20not\x20found:\x20'+_0x1afd96);if(!statSync(_0x1afd96)[_0x8aa25c(0xf4)]())throw CliErrors[_0x8aa25c(0xc9)](_0x8aa25c(0xc5)+_0x1afd96);const _0x1c7b13=readFileSync(_0x1afd96,_0x8aa25c(0xd3));if(!_0x1c7b13[_0x8aa25c(0xd6)]())throw CliErrors['validation'](_0x8aa25c(0xe9));return _0x1c7b13;}function optionalTrimmed(_0x44de09){const _0x30da74=a46_0x4d8292,_0xf46eb2=String(_0x44de09||'')[_0x30da74(0xd6)]();return _0xf46eb2||undefined;}function summarizeBff(_0x1d495e){const _0x191531=a46_0x4d8292;return{'id':_0x1d495e['id'],'appCode':_0x1d495e['appCode'],'functionName':_0x1d495e[_0x191531(0xf6)],'description':_0x1d495e[_0x191531(0xdf)],'scriptType':_0x1d495e[_0x191531(0xe2)],'version':_0x1d495e['version'],'gmtModified':_0x1d495e[_0x191531(0xde)],'updateTime':_0x1d495e[_0x191531(0xe1)]};}function detailBff(_0x2c947f){const _0x31b081=a46_0x4d8292;return{'id':_0x2c947f['id'],'appCode':_0x2c947f[_0x31b081(0xed)],'functionName':_0x2c947f[_0x31b081(0xf6)],'description':_0x2c947f['description'],'scriptType':_0x2c947f['scriptType'],'scriptContent':_0x2c947f['scriptContent']??'','config':_0x2c947f[_0x31b081(0xe8)],'version':_0x2c947f['version'],'createUserId':_0x2c947f['createUserId'],'gmtCreate':_0x2c947f[_0x31b081(0xe5)],'gmtModified':_0x2c947f['gmtModified'],'createTime':_0x2c947f[_0x31b081(0xdc)],'updateTime':_0x2c947f['updateTime']};}function buildCreateInput(_0x216968){const _0x450e45=a46_0x4d8292;return{'functionName':normalizeFunctionName(_0x216968[_0x450e45(0xc7)]('name')),...optionalTrimmed(_0x216968['str']('description'))?{'description':optionalTrimmed(_0x216968['str'](_0x450e45(0xdf)))}:{},'scriptContent':readScriptFile(_0x216968[_0x450e45(0xc7)](_0x450e45(0xe0))),...optionalTrimmed(_0x216968[_0x450e45(0xc7)](_0x450e45(0xc4)))?{'sourceSessionId':optionalTrimmed(_0x216968['str'](_0x450e45(0xc4)))}:{}};}function buildUpdateInput(_0x2d9258){const _0x93b2f1=a46_0x4d8292,_0x36fafe={};optionalTrimmed(_0x2d9258[_0x93b2f1(0xc7)](_0x93b2f1(0xfc)))&&(_0x36fafe[_0x93b2f1(0xf6)]=normalizeFunctionName(_0x2d9258[_0x93b2f1(0xc7)](_0x93b2f1(0xfc))));_0x2d9258['flag']('description')!==undefined&&(_0x36fafe[_0x93b2f1(0xdf)]=_0x2d9258['str'](_0x93b2f1(0xdf)));optionalTrimmed(_0x2d9258['str']('file'))&&(_0x36fafe[_0x93b2f1(0xf9)]=readScriptFile(_0x2d9258['str'](_0x93b2f1(0xe0))));_0x2d9258[_0x93b2f1(0xce)]('source-session-id')!==undefined&&(_0x36fafe['sourceSessionId']=_0x2d9258[_0x93b2f1(0xc7)](_0x93b2f1(0xc4)));if(Object[_0x93b2f1(0xfe)](_0x36fafe)['length']===0x0)throw CliErrors[_0x93b2f1(0xc9)](_0x93b2f1(0xf8));return _0x36fafe;}function parseExecParams(_0xf4215){const _0x3da012=a46_0x4d8292,_0x3b8436=parseJsonParams(_0xf4215)??{};if(Array[_0x3da012(0xd1)](_0x3b8436))throw CliErrors[_0x3da012(0xc9)]('--params\x20must\x20be\x20a\x20JSON\x20object.');return _0x3b8436;}function a46_0x5f41(){const _0x1aaa1b=['source-session-id','File\x20is\x20not\x20a\x20regular\x20file:\x20','3868DhTREu','str','Executed\x20personal\x20BFF\x20','validation','num','/update','build','write','flag','416826LmdIza','Show\x20one\x20personal\x20BFF\x20by\x20id','isArray','read','utf8','5648193ofeihP','Path\x20to\x20a\x20local\x20UTF-8\x20JavaScript\x20or\x20TypeScript\x20file','trim','string','978465gFSgPB','Optional\x20source\x20RuntimeAgent\x20session\x20id','684761iSMMfH','List\x20current\x20user\x27s\x20personal\x20BFF\x20scripts\x20for\x20the\x20current\x20app','createTime','--name\x20must\x20be\x20a\x20valid\x20JavaScript\x20identifier,\x20for\x20example\x20loadOrders.','gmtModified','description','file','updateTime','scriptType','Personal\x20BFF\x20script\x20ID','根据\x20ID\x20更新个人\x20BFF','gmtCreate','Created\x20personal\x20BFF\x20','Updated\x20personal\x20BFF\x20','config','Personal\x20BFF\x20script\x20file\x20is\x20blank.','12WTLYWZ','/client/runtime-bff/personal/','body','appCode','bool','根据\x20ID\x20执行个人\x20BFF,并可传入\x20JSON\x20参数','length','1865qbeOJC','Personal\x20BFF\x20description','params','isFile','1247096BEYLIj','functionName','map','personal-bff\x20update\x20requires\x20at\x20least\x20one\x20of\x20--name,\x20--description,\x20--file,\x20or\x20--source-session-id.','scriptContent','File\x20path\x20is\x20required.','1509548pHLLod','name','personal-bff','keys','根据本地脚本文件创建个人\x20BFF','Personal\x20BFF\x20functionName,\x20for\x20example\x20loadOrders','verbose'];a46_0x5f41=function(){return _0x1aaa1b;};return a46_0x5f41();}const personalBffList={'service':a46_0x4d8292(0xfd),'command':'list','description':a46_0x4d8292(0xdb),'risk':a46_0x4d8292(0xd2),'flags':[VERBOSE_FLAG],async 'execute'(_0x3a611f){const _0x58d8c5=a46_0x4d8292,_0x493897=await listPersonalBffs(_0x3a611f[_0x58d8c5(0xed)]);return{'ok':!![],'data':{'total':_0x493897[_0x58d8c5(0xf0)],'items':_0x3a611f[_0x58d8c5(0xee)](_0x58d8c5(0xc3))?_0x493897:_0x493897[_0x58d8c5(0xf7)](summarizeBff)}};}},personalBffDetail={'service':a46_0x4d8292(0xfd),'command':'detail','description':a46_0x4d8292(0xd0),'risk':a46_0x4d8292(0xd2),'flags':[{...ID_FLAG,'description':a46_0x4d8292(0xe3)}],async 'execute'(_0x4107fc){const _0x2ebfde=a46_0x4d8292,_0x6e6d9=await getPersonalBff(_0x4107fc[_0x2ebfde(0xca)]('id'),_0x4107fc[_0x2ebfde(0xed)]);return{'ok':!![],'data':detailBff(_0x6e6d9)};}},personalBffCreate={'service':a46_0x4d8292(0xfd),'command':'create','description':a46_0x4d8292(0xff),'risk':a46_0x4d8292(0xcd),'confirmationDescription':'把本地脚本保存为个人\x20BFF;之后可在当前应用中调用该脚本。','flags':[FUNCTION_NAME_FLAG,{...FILE_FLAG,'required':!![]},DESCRIPTION_FLAG,SOURCE_SESSION_FLAG],async 'execute'(_0x256077){const _0x1170b7=a46_0x4d8292,_0xeba8e6=buildCreateInput(_0x256077),_0x4a19ac=await createPersonalBff(_0x256077[_0x1170b7(0xed)],_0xeba8e6);return{'ok':!![],'data':detailBff(_0x4a19ac),'message':_0x1170b7(0xe6)+_0x4a19ac['id']+(_0x4a19ac[_0x1170b7(0xf6)]?'\x20('+_0x4a19ac['functionName']+')':'')};},async 'dryRun'(_0x143295){const _0xe257c7=a46_0x4d8292,_0x32e694=buildCreateInput(_0x143295);return dryRun('POST','/client/runtime-bff/personal/create')[_0xe257c7(0xec)]({'appCode':_0x143295[_0xe257c7(0xed)],..._0x32e694})[_0xe257c7(0xdf)]('Preview:\x20create\x20personal\x20BFF\x20'+_0x32e694[_0xe257c7(0xf6)])[_0xe257c7(0xcc)]();}},personalBffUpdate={'service':'personal-bff','command':'update','description':a46_0x4d8292(0xe4),'risk':a46_0x4d8292(0xcd),'confirmationDescription':'更新个人\x20BFF\x20的脚本或元信息;之后的调用将使用新版本。','flags':[{...ID_FLAG,'description':a46_0x4d8292(0xe3)},{...FUNCTION_NAME_FLAG,'required':![]},FILE_FLAG,DESCRIPTION_FLAG,SOURCE_SESSION_FLAG],async 'execute'(_0x43d6cc){const _0x1a469=a46_0x4d8292,_0x4219d2=_0x43d6cc[_0x1a469(0xca)]('id'),_0x5a1952=buildUpdateInput(_0x43d6cc),_0x589506=await updatePersonalBff(_0x4219d2,_0x43d6cc[_0x1a469(0xed)],_0x5a1952);return{'ok':!![],'data':detailBff(_0x589506),'message':_0x1a469(0xe7)+_0x589506['id']+(_0x589506['functionName']?'\x20('+_0x589506[_0x1a469(0xf6)]+')':'')};},async 'dryRun'(_0x1e081b){const _0x153310=a46_0x4d8292,_0x49bbf0=_0x1e081b[_0x153310(0xca)]('id'),_0x272cfa=buildUpdateInput(_0x1e081b);return dryRun('POST',_0x153310(0xeb)+_0x49bbf0+_0x153310(0xcb))['body']({'appCode':_0x1e081b['appCode'],..._0x272cfa})[_0x153310(0xdf)]('Preview:\x20update\x20personal\x20BFF\x20'+_0x49bbf0)[_0x153310(0xcc)]();}},personalBffExec={'service':a46_0x4d8292(0xfd),'command':'exec','description':a46_0x4d8292(0xef),'risk':a46_0x4d8292(0xcd),'confirmationDescription':'执行个人\x20BFF\x20脚本;脚本可能读取或修改业务数据,也可能调用外部服务。','flags':[{...ID_FLAG,'description':a46_0x4d8292(0xe3)},{...PARAMS_FLAG,'description':'JSON\x20object\x20passed\x20to\x20the\x20personal\x20BFF\x20execution'}],async 'validate'(_0x127114){const _0x29d5fd=a46_0x4d8292;parseExecParams(_0x127114[_0x29d5fd(0xc7)](_0x29d5fd(0xf3)));},async 'execute'(_0x23e771){const _0xc86528=a46_0x4d8292,_0x3d10c3=_0x23e771['num']('id'),_0x491931=parseExecParams(_0x23e771['str'](_0xc86528(0xf3))),_0x1824c4=await executePersonalBff(_0x3d10c3,_0x23e771['appCode'],_0x491931);return{'ok':!![],'data':{'result':_0x1824c4},'message':_0xc86528(0xc8)+_0x3d10c3};}};export const personalBffDefinitions=[personalBffList,personalBffDetail,personalBffCreate,personalBffUpdate,personalBffExec];
@@ -1 +1 @@
1
- const a47_0x4462af=a47_0x40bd;(function(_0x1afba7,_0x3bd988){const _0x5b4ac1=a47_0x40bd,_0x557c07=_0x1afba7();while(!![]){try{const _0x5ec7c6=parseInt(_0x5b4ac1(0x206))/0x1+parseInt(_0x5b4ac1(0x1e4))/0x2+parseInt(_0x5b4ac1(0x21e))/0x3+-parseInt(_0x5b4ac1(0x1fa))/0x4*(-parseInt(_0x5b4ac1(0x214))/0x5)+parseInt(_0x5b4ac1(0x1e2))/0x6*(parseInt(_0x5b4ac1(0x21f))/0x7)+-parseInt(_0x5b4ac1(0x1ec))/0x8+-parseInt(_0x5b4ac1(0x1e8))/0x9;if(_0x5ec7c6===_0x3bd988)break;else _0x557c07['push'](_0x557c07['shift']());}catch(_0x49e965){_0x557c07['push'](_0x557c07['shift']());}}}(a47_0x41df,0xa383c));import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';function a47_0x40bd(_0x548bc2,_0x37ce25){_0x548bc2=_0x548bc2-0x1e2;const _0x41df4c=a47_0x41df();let _0x40bdec=_0x41df4c[_0x548bc2];return _0x40bdec;}import{skillDefinitions}from'../commands/skill/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{serviceDefinitions}from'../commands/service/index.js';import{updateDefinition}from'../commands/update.js';import{doctorDefinition}from'../commands/doctor.js';import{schemaDefinition}from'../commands/schema.js';import{appDefinitions}from'../commands/app/definitions.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/definitions.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{dataDefinitions}from'../commands/data/index.js';import{kbDefinitions}from'../commands/kb/index.js';import{artifactDefinitions}from'../commands/artifact/index.js';import{personalBffDefinitions}from'../commands/personal-bff/index.js';import{apiDocDefinitions}from'../commands/api-doc/index.js';function a47_0x41df(){const _0x33a7b8=['40516XEBILF','1326iLyZpi','Knowledge\x20Base','2478298QrxGqw','set','BFF\x20Scripts','Workspace','34575732VsFRYG','SQL\x20Queries','OCR','read','988032UIIusn','login','File','Service\x20Tree','Skills','app','map','use','Runtime\x20App\x20Config','Artifacts','service','from','Use\x20`lovrabet\x20logs\x20show`\x20to\x20view\x20command\x20history.','list','3919388wSjmfF','install','show','logs','Schema','risk','Logs','logs\x20clear','Personal\x20BFF','Configuration','Diagnostics','isSingleCommand','810632oCnxwF','User\x20Accounts','description','`lovrabet\x20app\x20use`\x20has\x20been\x20removed.','Use\x20`lovrabet\x20workspace\x20init\x20--appcode\x20<code>`\x20instead.','config-list','has','push','write','CLI\x20Built-in\x20Skill','Authentication','run','Runtime\x20Roles','command','5NPkfJE','values','`lovrabet\x20logs\x20clear`\x20has\x20been\x20removed.','init','app\x20use','App\x20Management','Runtime\x20Permissions','get','Notification\x20Configs','\x20\x20[high-risk-write]','978696UPJrtO'];a47_0x41df=function(){return _0x33a7b8;};return a47_0x41df();}import{appConfigDefinitions}from'../commands/app-config/index.js';import{fileDefinitions}from'../commands/file/index.js';import{ocrDefinitions}from'../commands/ocr/index.js';import{scheduleDefinitions}from'../commands/schedule/index.js';import{userAccountDefinitions}from'../commands/user-account/index.js';import{notificationDefinitions}from'../commands/notification/index.js';import{roleDefinitions}from'../commands/role/index.js';import{permitDefinitions}from'../commands/permit/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x206683){const _0x5aeee6=a47_0x40bd;for(const _0x174480 of _0x206683){definitions['set'](_0x174480[_0x5aeee6(0x1f6)]+':'+_0x174480[_0x5aeee6(0x213)],_0x174480);let _0x350741=serviceGroups[_0x5aeee6(0x21b)](_0x174480[_0x5aeee6(0x1f6)]);!_0x350741&&(_0x350741=[],serviceGroups[_0x5aeee6(0x1e5)](_0x174480[_0x5aeee6(0x1f6)],_0x350741)),_0x350741[_0x5aeee6(0x20d)](_0x174480);}}function registerService(_0x330109,_0x4fcc52,_0x433227){const _0x1ca5e2=a47_0x40bd;registerDefinitions(_0x4fcc52);const _0x40397d=_0x2c0a18=>_0x2c0a18===_0x1ca5e2(0x1eb)?'':_0x2c0a18===_0x1ca5e2(0x20e)?'\x20\x20[write]':_0x1ca5e2(0x21d),_0x5f5bd3={'service':_0x4fcc52[0x0][_0x1ca5e2(0x1f6)],'label':_0x330109,'commands':_0x4fcc52[_0x1ca5e2(0x1f2)](_0x2efb14=>({'command':_0x2efb14[_0x1ca5e2(0x213)],'description':_0x2efb14[_0x1ca5e2(0x208)],'tag':_0x40397d(_0x2efb14[_0x1ca5e2(0x1ff)])})),'defaultCommand':_0x433227?.['defaultCommand']??(_0x433227?.[_0x1ca5e2(0x205)]?_0x4fcc52[0x0]['command']:undefined),'isSingleCommand':_0x433227?.[_0x1ca5e2(0x205)]};serviceRegistry[_0x1ca5e2(0x20d)](_0x5f5bd3),serviceByName[_0x1ca5e2(0x1e5)](_0x5f5bd3[_0x1ca5e2(0x1f6)],_0x5f5bd3);}registerService(a47_0x4462af(0x210),authDefinitions,{'defaultCommand':a47_0x4462af(0x1ed)}),registerService(a47_0x4462af(0x207),userAccountDefinitions),registerService(a47_0x4462af(0x219),appDefinitions,{'defaultCommand':'list'}),registerService(a47_0x4462af(0x1e7),workspaceDefinitions),registerService(a47_0x4462af(0x1f4),appConfigDefinitions),registerService(a47_0x4462af(0x203),configDefinitions,{'defaultCommand':a47_0x4462af(0x1f9)}),registerService(a47_0x4462af(0x212),roleDefinitions,{'defaultCommand':a47_0x4462af(0x1f9)}),registerService(a47_0x4462af(0x21a),permitDefinitions),registerService('API\x20Documentation',apiDocDefinitions),registerService('Datasets',datasetDefinitions),registerService('Instant\x20API',dataDefinitions),registerService(a47_0x4462af(0x1e9),sqlDefinitions),registerService(a47_0x4462af(0x1e6),bffDefinitions),registerService(a47_0x4462af(0x202),personalBffDefinitions),registerService(a47_0x4462af(0x1f5),artifactDefinitions),registerService(a47_0x4462af(0x1ee),fileDefinitions),registerService(a47_0x4462af(0x1ea),ocrDefinitions),registerService(a47_0x4462af(0x1e3),kbDefinitions),registerService(a47_0x4462af(0x21c),notificationDefinitions,{'defaultCommand':a47_0x4462af(0x20b)}),registerService('Agent\x20Schedules',scheduleDefinitions,{'defaultCommand':'list'}),registerService(a47_0x4462af(0x1ef),serviceDefinitions,{'defaultCommand':'list'}),registerService(a47_0x4462af(0x1f0),skillDefinitions,{'defaultCommand':'install'}),registerService(a47_0x4462af(0x20f),cliSkillDefinitions,{'defaultCommand':a47_0x4462af(0x1fb)}),registerService('Self\x20Update',[updateDefinition],{'defaultCommand':a47_0x4462af(0x211),'isSingleCommand':!![]}),registerService(a47_0x4462af(0x204),[doctorDefinition],{'isSingleCommand':!![]}),registerService(a47_0x4462af(0x1fe),[schemaDefinition],{'isSingleCommand':!![]}),registerService(a47_0x4462af(0x200),logsDefinitions,{'defaultCommand':a47_0x4462af(0x1fc)});export function findDefinition(_0x5658df,_0x2b1494){const _0x5df769=a47_0x4462af;return definitions[_0x5df769(0x21b)](_0x5658df+':'+_0x2b1494);}export function resolveRemovedCommand(_0x184a3c,_0x62d96f){const _0x4ed515=a47_0x4462af;if(_0x184a3c===_0x4ed515(0x1f1)&&_0x62d96f===_0x4ed515(0x217))return{'command':'app\x20init','message':'`lovrabet\x20app\x20init`\x20has\x20been\x20removed.','hint':_0x4ed515(0x20a)};if(_0x184a3c==='app'&&_0x62d96f===_0x4ed515(0x1f3))return{'command':_0x4ed515(0x218),'message':_0x4ed515(0x209),'hint':'Use\x20`lovrabet\x20workspace\x20use\x20--app\x20<name>`\x20instead.'};if(_0x184a3c===_0x4ed515(0x1fd)&&_0x62d96f==='clear')return{'command':_0x4ed515(0x201),'message':_0x4ed515(0x216),'hint':_0x4ed515(0x1f8)};return undefined;}export function isKnownService(_0x5dcf51){const _0x4d9e63=a47_0x4462af;return serviceByName[_0x4d9e63(0x20c)](_0x5dcf51);}export function getServiceEntry(_0x3278e1){return serviceByName['get'](_0x3278e1);}export function getAllDefinitions(){const _0x5eb26c=a47_0x4462af;return Array[_0x5eb26c(0x1f7)](definitions[_0x5eb26c(0x215)]());}
1
+ const a47_0x5ae341=a47_0x5c61;(function(_0x4a4b09,_0x4b450f){const _0x200d89=a47_0x5c61,_0x564ef1=_0x4a4b09();while(!![]){try{const _0x143689=parseInt(_0x200d89(0xc4))/0x1+parseInt(_0x200d89(0xbd))/0x2+-parseInt(_0x200d89(0xb1))/0x3+-parseInt(_0x200d89(0xb8))/0x4*(parseInt(_0x200d89(0xac))/0x5)+parseInt(_0x200d89(0xab))/0x6+-parseInt(_0x200d89(0xd6))/0x7*(parseInt(_0x200d89(0xd4))/0x8)+-parseInt(_0x200d89(0xdb))/0x9*(parseInt(_0x200d89(0xd2))/0xa);if(_0x143689===_0x4b450f)break;else _0x564ef1['push'](_0x564ef1['shift']());}catch(_0x97dea){_0x564ef1['push'](_0x564ef1['shift']());}}}(a47_0x929b,0x54ed5));function a47_0x5c61(_0x264a66,_0x482f26){_0x264a66=_0x264a66-0xa5;const _0x929bbb=a47_0x929b();let _0x5c61b7=_0x929bbb[_0x264a66];return _0x5c61b7;}import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{skillDefinitions}from'../commands/skill/index.js';import{cliSkillDefinitions}from'../commands/cli-skill/index.js';import{serviceDefinitions}from'../commands/service/index.js';import{updateDefinition}from'../commands/update.js';import{doctorDefinition}from'../commands/doctor.js';import{schemaDefinition}from'../commands/schema.js';import{appDefinitions}from'../commands/app/definitions.js';import{workspaceDefinitions}from'../commands/workspace/index.js';import{configDefinitions}from'../commands/config/definitions.js';import{bffDefinitions}from'../commands/bff/index.js';import{sqlDefinitions}from'../commands/sql/index.js';import{datasetDefinitions}from'../commands/dataset/index.js';import{dataDefinitions}from'../commands/data/index.js';import{kbDefinitions}from'../commands/kb/index.js';import{artifactDefinitions}from'../commands/artifact/index.js';import{personalBffDefinitions}from'../commands/personal-bff/index.js';import{apiDocDefinitions}from'../commands/api-doc/index.js';import{appConfigDefinitions}from'../commands/app-config/index.js';import{fileDefinitions}from'../commands/file/index.js';import{ocrDefinitions}from'../commands/ocr/index.js';import{scheduleDefinitions}from'../commands/schedule/index.js';function a47_0x929b(){const _0x54d0b0=['671709oUWwwh','isSingleCommand','CLI\x20Built-in\x20Skill','Logs','use','`lovrabet\x20app\x20use`\x20has\x20been\x20removed.','get','\x20\x20[high-risk-write]','Authentication','app','Use\x20`lovrabet\x20workspace\x20init\x20--appcode\x20<code>`\x20instead.','BFF\x20Scripts','defaultCommand','write','10ryCLyD','values','107016gNWAhD','File','161eRpuuJ','Runtime\x20Roles','SQL\x20Queries','Runtime\x20Permissions','\x20\x20[write]','3322386djdPJV','description','User\x20Accounts','Personal\x20BFF','push','map','show','2927868yNclyo','2130825TZcnLj','Agent\x20Schedules','from','set','service','670083bjdfiD','API\x20Documentation','Configuration','command','install','app\x20use','Schema','4pCSiaI','risk','App\x20Management','`lovrabet\x20app\x20init`\x20has\x20been\x20removed.','list','1029050WtJdiO','Self\x20Update','Instant\x20API','Runtime\x20App\x20Config','OCR','`lovrabet\x20logs\x20clear`\x20has\x20been\x20removed.','login'];a47_0x929b=function(){return _0x54d0b0;};return a47_0x929b();}import{userAccountDefinitions}from'../commands/user-account/index.js';import{notificationDefinitions}from'../commands/notification/index.js';import{roleDefinitions}from'../commands/role/index.js';import{permitDefinitions}from'../commands/permit/index.js';export const serviceRegistry=[];const serviceByName=new Map();export const definitions=new Map();export const serviceGroups=new Map();function registerDefinitions(_0x507dfa){const _0x392dd6=a47_0x5c61;for(const _0x50e486 of _0x507dfa){definitions[_0x392dd6(0xaf)](_0x50e486['service']+':'+_0x50e486[_0x392dd6(0xb4)],_0x50e486);let _0x25ece8=serviceGroups['get'](_0x50e486[_0x392dd6(0xb0)]);!_0x25ece8&&(_0x25ece8=[],serviceGroups[_0x392dd6(0xaf)](_0x50e486['service'],_0x25ece8)),_0x25ece8['push'](_0x50e486);}}function registerService(_0xfcefbc,_0x216341,_0x38b04f){const _0x4ddc79=a47_0x5c61;registerDefinitions(_0x216341);const _0x1a74d8=_0x11dfae=>_0x11dfae==='read'?'':_0x11dfae===_0x4ddc79(0xd1)?_0x4ddc79(0xda):_0x4ddc79(0xcb),_0x46af98={'service':_0x216341[0x0][_0x4ddc79(0xb0)],'label':_0xfcefbc,'commands':_0x216341[_0x4ddc79(0xa9)](_0x184a0f=>({'command':_0x184a0f['command'],'description':_0x184a0f[_0x4ddc79(0xa5)],'tag':_0x1a74d8(_0x184a0f[_0x4ddc79(0xb9)])})),'defaultCommand':_0x38b04f?.[_0x4ddc79(0xd0)]??(_0x38b04f?.[_0x4ddc79(0xc5)]?_0x216341[0x0][_0x4ddc79(0xb4)]:undefined),'isSingleCommand':_0x38b04f?.['isSingleCommand']};serviceRegistry[_0x4ddc79(0xa8)](_0x46af98),serviceByName[_0x4ddc79(0xaf)](_0x46af98[_0x4ddc79(0xb0)],_0x46af98);}registerService(a47_0x5ae341(0xcc),authDefinitions,{'defaultCommand':a47_0x5ae341(0xc3)}),registerService(a47_0x5ae341(0xa6),userAccountDefinitions),registerService(a47_0x5ae341(0xba),appDefinitions,{'defaultCommand':'list'}),registerService('Workspace',workspaceDefinitions),registerService(a47_0x5ae341(0xc0),appConfigDefinitions),registerService(a47_0x5ae341(0xb3),configDefinitions,{'defaultCommand':a47_0x5ae341(0xbc)}),registerService(a47_0x5ae341(0xd7),roleDefinitions,{'defaultCommand':a47_0x5ae341(0xbc)}),registerService(a47_0x5ae341(0xd9),permitDefinitions),registerService(a47_0x5ae341(0xb2),apiDocDefinitions),registerService('Datasets',datasetDefinitions),registerService(a47_0x5ae341(0xbf),dataDefinitions),registerService(a47_0x5ae341(0xd8),sqlDefinitions),registerService(a47_0x5ae341(0xcf),bffDefinitions),registerService(a47_0x5ae341(0xa7),personalBffDefinitions),registerService('Artifacts',artifactDefinitions),registerService(a47_0x5ae341(0xd5),fileDefinitions),registerService(a47_0x5ae341(0xc1),ocrDefinitions),registerService('Knowledge\x20Base',kbDefinitions),registerService('Notification\x20Configs',notificationDefinitions,{'defaultCommand':'config-list'}),registerService(a47_0x5ae341(0xad),scheduleDefinitions,{'defaultCommand':a47_0x5ae341(0xbc)}),registerService('Service\x20Tree',serviceDefinitions,{'defaultCommand':a47_0x5ae341(0xbc)}),registerService('Skills',skillDefinitions,{'defaultCommand':'install'}),registerService(a47_0x5ae341(0xc6),cliSkillDefinitions,{'defaultCommand':a47_0x5ae341(0xb5)}),registerService(a47_0x5ae341(0xbe),[updateDefinition],{'defaultCommand':'run','isSingleCommand':!![]}),registerService('Diagnostics',[doctorDefinition],{'isSingleCommand':!![]}),registerService(a47_0x5ae341(0xb7),[schemaDefinition],{'isSingleCommand':!![]}),registerService(a47_0x5ae341(0xc7),logsDefinitions,{'defaultCommand':a47_0x5ae341(0xaa)});export function findDefinition(_0xa8f74,_0x55a12c){const _0x2b725f=a47_0x5ae341;return definitions[_0x2b725f(0xca)](_0xa8f74+':'+_0x55a12c);}export function resolveRemovedCommand(_0x35a051,_0x4e7665){const _0x28dead=a47_0x5ae341;if(_0x35a051===_0x28dead(0xcd)&&_0x4e7665==='init')return{'command':'app\x20init','message':_0x28dead(0xbb),'hint':_0x28dead(0xce)};if(_0x35a051===_0x28dead(0xcd)&&_0x4e7665===_0x28dead(0xc8))return{'command':_0x28dead(0xb6),'message':_0x28dead(0xc9),'hint':'Use\x20`lovrabet\x20workspace\x20use\x20--app\x20<name>`\x20instead.'};if(_0x35a051==='logs'&&_0x4e7665==='clear')return{'command':'logs\x20clear','message':_0x28dead(0xc2),'hint':'Use\x20`lovrabet\x20logs\x20show`\x20to\x20view\x20command\x20history.'};return undefined;}export function isKnownService(_0x5ec0f7){return serviceByName['has'](_0x5ec0f7);}export function getServiceEntry(_0x50c189){const _0x142d82=a47_0x5ae341;return serviceByName[_0x142d82(0xca)](_0x50c189);}export function getAllDefinitions(){const _0x397848=a47_0x5ae341;return Array[_0x397848(0xae)](definitions[_0x397848(0xd3)]());}
@@ -1 +1 @@
1
- const a48_0x11a3da=a48_0x4db7;function a48_0x1e44(){const _0x4c8336=['4268Zsvdrt','38583564fqiFXO','name','2362AoXoDl','797844TmCBqv','CUSTOM','description','832UDjleS','206338uYQFia','validation','15zUqEPr','/client/permit/role/create','13NnKsWM','body','4551LnVCTB','12495825CvYmwv','string','141491CKVioG','Create\x20a\x20runtime\x20CUSTOM\x20role','role','create','Optional\x20role\x20remark','POST','remark','670ZNAQFs','str','8uNqhZI','trim','--name\x20must\x20not\x20be\x20blank.'];a48_0x1e44=function(){return _0x4c8336;};return a48_0x1e44();}(function(_0x4e4341,_0x4451d6){const _0x3db76b=a48_0x4db7,_0x3b895b=_0x4e4341();while(!![]){try{const _0x4fcdb7=parseInt(_0x3db76b(0x180))/0x1*(-parseInt(_0x3db76b(0x17c))/0x2)+parseInt(_0x3db76b(0x187))/0x3*(-parseInt(_0x3db76b(0x179))/0x4)+-parseInt(_0x3db76b(0x183))/0x5*(-parseInt(_0x3db76b(0x17d))/0x6)+-parseInt(_0x3db76b(0x18a))/0x7*(parseInt(_0x3db76b(0x193))/0x8)+-parseInt(_0x3db76b(0x188))/0x9+parseInt(_0x3db76b(0x191))/0xa*(parseInt(_0x3db76b(0x181))/0xb)+-parseInt(_0x3db76b(0x17a))/0xc*(-parseInt(_0x3db76b(0x185))/0xd);if(_0x4fcdb7===_0x4451d6)break;else _0x3b895b['push'](_0x3b895b['shift']());}catch(_0x3289a1){_0x3b895b['push'](_0x3b895b['shift']());}}}(a48_0x1e44,0xd23d0));import{createRuntimeAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';import{projectRuntimeRole,runtimeRoleWriteResult}from'../../commands/role/shared.js';function input(_0x1125da){const _0x11de1c=a48_0x4db7,_0x316c61=_0x1125da[_0x11de1c(0x192)](_0x11de1c(0x17b))[_0x11de1c(0x194)]();if(!_0x316c61)throw CliErrors[_0x11de1c(0x182)](_0x11de1c(0x195));const _0x209ef5=_0x1125da[_0x11de1c(0x192)](_0x11de1c(0x190))[_0x11de1c(0x194)]();return{'appCode':_0x1125da['appCode'],'roleName':_0x316c61,..._0x209ef5?{'remark':_0x209ef5}:{}};}function a48_0x4db7(_0x4e0d16,_0x3a5389){_0x4e0d16=_0x4e0d16-0x179;const _0x1e4440=a48_0x1e44();let _0x4db774=_0x1e4440[_0x4e0d16];return _0x4db774;}export const roleCreate={'service':a48_0x11a3da(0x18c),'command':'create','description':a48_0x11a3da(0x18b),'risk':'high-risk-write','confirmationDescription':'在当前运行应用中创建一个自定义角色;创建后可用于成员与资源权限配置。','flags':[{'name':a48_0x11a3da(0x17b),'type':a48_0x11a3da(0x189),'required':!![],'description':'Role\x20name'},{'name':a48_0x11a3da(0x190),'type':a48_0x11a3da(0x189),'description':a48_0x11a3da(0x18e)}],async 'validate'(_0x214f95){input(_0x214f95);},async 'dryRun'(_0x1ac17f){const _0x2e6668=a48_0x11a3da;return dryRun(_0x2e6668(0x18f),'/client/permit/role/create')[_0x2e6668(0x186)]({'roleType':_0x2e6668(0x17e),...input(_0x1ac17f)})[_0x2e6668(0x17f)]('Preview:\x20create\x20a\x20runtime\x20CUSTOM\x20role')['build']();},async 'execute'(_0x2c5e05){const _0x30bf5a=a48_0x11a3da,_0x33f507=await createRuntimeAppRole(input(_0x2c5e05));return{'ok':!![],'data':runtimeRoleWriteResult(_0x30bf5a(0x18d),{'roleId':_0x33f507['id']},null,projectRuntimeRole(_0x33f507),{'method':'POST','path':_0x30bf5a(0x184)})};}};
1
+ const a48_0x1b7188=a48_0x4927;function a48_0x4927(_0x39895b,_0x20072a){_0x39895b=_0x39895b-0xf5;const _0x419363=a48_0x4193();let _0x4927d1=_0x419363[_0x39895b];return _0x4927d1;}(function(_0x4e8d8a,_0x47c77b){const _0x3a79b6=a48_0x4927,_0x9c5413=_0x4e8d8a();while(!![]){try{const _0x528e34=-parseInt(_0x3a79b6(0xf8))/0x1*(-parseInt(_0x3a79b6(0xfb))/0x2)+parseInt(_0x3a79b6(0xf5))/0x3*(parseInt(_0x3a79b6(0x10d))/0x4)+-parseInt(_0x3a79b6(0xfc))/0x5*(parseInt(_0x3a79b6(0xfd))/0x6)+-parseInt(_0x3a79b6(0x101))/0x7*(-parseInt(_0x3a79b6(0x109))/0x8)+-parseInt(_0x3a79b6(0x103))/0x9+parseInt(_0x3a79b6(0x108))/0xa*(-parseInt(_0x3a79b6(0x112))/0xb)+parseInt(_0x3a79b6(0x111))/0xc*(parseInt(_0x3a79b6(0x107))/0xd);if(_0x528e34===_0x47c77b)break;else _0x9c5413['push'](_0x9c5413['shift']());}catch(_0xcc3b16){_0x9c5413['push'](_0x9c5413['shift']());}}}(a48_0x4193,0xa8f97));import{createRuntimeAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';import{projectRuntimeRole,runtimeRoleWriteResult}from'../../commands/role/shared.js';function a48_0x4193(){const _0x40a21c=['11574396yYCxCV','Create\x20a\x20runtime\x20CUSTOM\x20role','Optional\x20role\x20remark','string','13bvKLXY','2609690wPeFSh','144STnwTx','POST','build','remark','290596xhexRr','Preview:\x20create\x20a\x20runtime\x20CUSTOM\x20role','trim','在当前运行应用中创建一个自定义角色;创建后可用于成员与资源权限配置。','22149204QbcqLn','33enpwLZ','description','str','validation','39TFoIny','CUSTOM','--name\x20must\x20not\x20be\x20blank.','8354BshzDc','Role\x20name','role','116HzWJJy','7650KKPFEP','2196zokkjr','high-risk-write','create','name','18011pyRjZA','/client/permit/role/create'];a48_0x4193=function(){return _0x40a21c;};return a48_0x4193();}function input(_0x36ecbe){const _0xdfda2e=a48_0x4927,_0x3fb818=_0x36ecbe[_0xdfda2e(0x114)](_0xdfda2e(0x100))[_0xdfda2e(0x10f)]();if(!_0x3fb818)throw CliErrors[_0xdfda2e(0x115)](_0xdfda2e(0xf7));const _0x5eed3d=_0x36ecbe[_0xdfda2e(0x114)](_0xdfda2e(0x10c))[_0xdfda2e(0x10f)]();return{'appCode':_0x36ecbe['appCode'],'roleName':_0x3fb818,..._0x5eed3d?{'remark':_0x5eed3d}:{}};}export const roleCreate={'service':a48_0x1b7188(0xfa),'command':'create','description':a48_0x1b7188(0x104),'risk':a48_0x1b7188(0xfe),'confirmationDescription':a48_0x1b7188(0x110),'flags':[{'name':a48_0x1b7188(0x100),'type':a48_0x1b7188(0x106),'required':!![],'description':a48_0x1b7188(0xf9)},{'name':'remark','type':a48_0x1b7188(0x106),'description':a48_0x1b7188(0x105)}],async 'validate'(_0x3c2ed7){input(_0x3c2ed7);},async 'dryRun'(_0x4ba1e3){const _0x13fca0=a48_0x1b7188;return dryRun(_0x13fca0(0x10a),_0x13fca0(0x102))['body']({'roleType':_0x13fca0(0xf6),...input(_0x4ba1e3)})[_0x13fca0(0x113)](_0x13fca0(0x10e))[_0x13fca0(0x10b)]();},async 'execute'(_0x25f1d2){const _0x134018=a48_0x1b7188,_0x5a91c4=await createRuntimeAppRole(input(_0x25f1d2));return{'ok':!![],'data':runtimeRoleWriteResult(_0x134018(0xff),{'roleId':_0x5a91c4['id']},null,projectRuntimeRole(_0x5a91c4),{'method':_0x134018(0x10a),'path':_0x134018(0x102)})};}};
@@ -1 +1 @@
1
- const a49_0x3086ee=a49_0x1803;(function(_0x374ba5,_0x3bebc8){const _0x3ce3aa=a49_0x1803,_0x2e4462=_0x374ba5();while(!![]){try{const _0x987b3=parseInt(_0x3ce3aa(0xb4))/0x1*(parseInt(_0x3ce3aa(0xc0))/0x2)+-parseInt(_0x3ce3aa(0xc5))/0x3+-parseInt(_0x3ce3aa(0xbb))/0x4+parseInt(_0x3ce3aa(0xbd))/0x5*(-parseInt(_0x3ce3aa(0xc2))/0x6)+parseInt(_0x3ce3aa(0xc6))/0x7+-parseInt(_0x3ce3aa(0xc4))/0x8+-parseInt(_0x3ce3aa(0xb9))/0x9*(-parseInt(_0x3ce3aa(0xb5))/0xa);if(_0x987b3===_0x3bebc8)break;else _0x2e4462['push'](_0x2e4462['shift']());}catch(_0x55b14c){_0x2e4462['push'](_0x2e4462['shift']());}}}(a49_0x3b4a,0x5d3c9));import{deleteRuntimeAppRole}from'../../core/api-client.js';function a49_0x1803(_0x3b3623,_0x25d848){_0x3b3623=_0x3b3623-0xb4;const _0x3b4ad4=a49_0x3b4a();let _0x180358=_0x3b4ad4[_0x3b3623];return _0x180358;}import{dryRun}from'../../framework/dryrun.js';function a49_0x3b4a(){const _0x4394e4=['2175753xypZdk','677950lxSMPd','删除当前运行应用中的自定义角色;该角色的成员关系和权限配置可能随之失效。','build','43LEcONZ','1270yAIQwb','body','delete','POST','110781TDskml','Delete\x20a\x20runtime\x20CUSTOM\x20role','1210328MyhOVH','description','48210byRGdk','role','appCode','18174Agaewd','Preview:\x20delete\x20a\x20runtime\x20CUSTOM\x20role','270YOMLlt','/client/permit/role/delete','1657712IKcHBV'];a49_0x3b4a=function(){return _0x4394e4;};return a49_0x3b4a();}import{assertCustomRuntimeRole,getRuntimeRoleById,projectRuntimeRole,ROLE_ID_FLAG,runtimeRoleWriteResult}from'../../commands/role/shared.js';async function prepare(_0xb08e85){const _0x5aca6d=a49_0x1803,_0x5a5cbc=await getRuntimeRoleById(_0xb08e85[_0x5aca6d(0xbf)],_0xb08e85['num']('id'));return assertCustomRuntimeRole(_0x5a5cbc,_0x5aca6d(0xb7)),_0x5a5cbc;}export const roleDelete={'service':a49_0x3086ee(0xbe),'command':a49_0x3086ee(0xb7),'description':a49_0x3086ee(0xba),'risk':'high-risk-write','confirmationDescription':a49_0x3086ee(0xc7),'flags':[ROLE_ID_FLAG],async 'dryRun'(_0x482ed8){const _0x423814=a49_0x3086ee,_0x2b1e6d=await prepare(_0x482ed8);return dryRun(_0x423814(0xb8),_0x423814(0xc3))[_0x423814(0xb6)]({'id':_0x2b1e6d['id']})[_0x423814(0xbc)](_0x423814(0xc1))[_0x423814(0xc8)]();},async 'execute'(_0x4da772){const _0x3fea7b=a49_0x3086ee,_0x3999ae=await prepare(_0x4da772);return await deleteRuntimeAppRole(_0x3999ae['id']),{'ok':!![],'data':runtimeRoleWriteResult(_0x3fea7b(0xb7),{'roleId':_0x3999ae['id']},projectRuntimeRole(_0x3999ae),null,{'method':'POST','path':_0x3fea7b(0xc3)})};}};
1
+ const a49_0xfc64b0=a49_0x32b2;(function(_0x51aa9f,_0x11c404){const _0x1809ad=a49_0x32b2,_0x42fcb2=_0x51aa9f();while(!![]){try{const _0x3c68d0=parseInt(_0x1809ad(0x19f))/0x1+-parseInt(_0x1809ad(0x19d))/0x2*(-parseInt(_0x1809ad(0x19a))/0x3)+parseInt(_0x1809ad(0x198))/0x4*(-parseInt(_0x1809ad(0x1a0))/0x5)+parseInt(_0x1809ad(0x1a4))/0x6+parseInt(_0x1809ad(0x19b))/0x7+parseInt(_0x1809ad(0x19c))/0x8*(-parseInt(_0x1809ad(0x1a2))/0x9)+-parseInt(_0x1809ad(0x197))/0xa;if(_0x3c68d0===_0x11c404)break;else _0x42fcb2['push'](_0x42fcb2['shift']());}catch(_0x3958e0){_0x42fcb2['push'](_0x42fcb2['shift']());}}}(a49_0x1886,0x97897));import{deleteRuntimeAppRole}from'../../core/api-client.js';import{dryRun}from'../../framework/dryrun.js';function a49_0x32b2(_0x42e209,_0x57e5c7){_0x42e209=_0x42e209-0x197;const _0x1886b2=a49_0x1886();let _0x32b2df=_0x1886b2[_0x42e209];return _0x32b2df;}import{assertCustomRuntimeRole,getRuntimeRoleById,projectRuntimeRole,ROLE_ID_FLAG,runtimeRoleWriteResult}from'../../commands/role/shared.js';async function prepare(_0x566825){const _0x77b408=a49_0x32b2,_0x4805b1=await getRuntimeRoleById(_0x566825[_0x77b408(0x1a6)],_0x566825[_0x77b408(0x1a5)]('id'));return assertCustomRuntimeRole(_0x4805b1,_0x77b408(0x1a7)),_0x4805b1;}export const roleDelete={'service':'role','command':a49_0xfc64b0(0x1a7),'description':a49_0xfc64b0(0x1a9),'risk':a49_0xfc64b0(0x19e),'confirmationDescription':a49_0xfc64b0(0x199),'flags':[ROLE_ID_FLAG],async 'dryRun'(_0x2124d8){const _0x33ccff=a49_0xfc64b0,_0x5a948f=await prepare(_0x2124d8);return dryRun(_0x33ccff(0x1a8),'/client/permit/role/delete')[_0x33ccff(0x1a1)]({'id':_0x5a948f['id']})['description']('Preview:\x20delete\x20a\x20runtime\x20CUSTOM\x20role')['build']();},async 'execute'(_0x485118){const _0x50560d=a49_0xfc64b0,_0x4ba151=await prepare(_0x485118);return await deleteRuntimeAppRole(_0x4ba151['id']),{'ok':!![],'data':runtimeRoleWriteResult(_0x50560d(0x1a7),{'roleId':_0x4ba151['id']},projectRuntimeRole(_0x4ba151),null,{'method':'POST','path':_0x50560d(0x1a3)})};}};function a49_0x1886(){const _0x56fca7=['body','1281069doDUAK','/client/permit/role/delete','2848200qZZZHW','num','appCode','delete','POST','Delete\x20a\x20runtime\x20CUSTOM\x20role','6935590yshvSh','16788btwuyQ','删除当前运行应用中的自定义角色;该角色的成员关系和权限配置可能随之失效。','35556JEvsKY','3453317bssChG','16AmjLDU','4iqXKro','high-risk-write','804460oTCQeB','235LTDHSK'];a49_0x1886=function(){return _0x56fca7;};return a49_0x1886();}
@@ -1 +1 @@
1
- const a50_0x311c0b=a50_0x4ab9;(function(_0x53e830,_0x5a62d7){const _0x3545ff=a50_0x4ab9,_0x1b84d8=_0x53e830();while(!![]){try{const _0xec1b5b=-parseInt(_0x3545ff(0x6f))/0x1*(-parseInt(_0x3545ff(0x6e))/0x2)+-parseInt(_0x3545ff(0x76))/0x3*(-parseInt(_0x3545ff(0x79))/0x4)+parseInt(_0x3545ff(0x77))/0x5*(-parseInt(_0x3545ff(0x6d))/0x6)+-parseInt(_0x3545ff(0x7a))/0x7*(parseInt(_0x3545ff(0x73))/0x8)+parseInt(_0x3545ff(0x7c))/0x9*(-parseInt(_0x3545ff(0x7d))/0xa)+-parseInt(_0x3545ff(0x74))/0xb+-parseInt(_0x3545ff(0x75))/0xc*(-parseInt(_0x3545ff(0x70))/0xd);if(_0xec1b5b===_0x5a62d7)break;else _0x1b84d8['push'](_0x1b84d8['shift']());}catch(_0x4906c3){_0x1b84d8['push'](_0x1b84d8['shift']());}}}(a50_0x4967,0x2247a));function a50_0x4ab9(_0x42d2e4,_0x5ba418){_0x42d2e4=_0x42d2e4-0x6d;const _0x4967f6=a50_0x4967();let _0x4ab97b=_0x4967f6[_0x42d2e4];return _0x4ab97b;}import{getRuntimeRoleById,projectRuntimeRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a50_0x4967(){const _0x1046ee=['8IVMsuI','1461570qjghyu','12LSWBGc','4794qqVcis','4025bronzt','runtime','12fIasbb','1256276QpUEcz','num','27tpWCnc','117410pakZON','1746KAJwGl','34jdwBsr','7186XVXFAV','7738510xqHzVR','read','Show\x20one\x20runtime\x20role\x20by\x20ID'];a50_0x4967=function(){return _0x1046ee;};return a50_0x4967();}export const roleDetail={'service':'role','command':'detail','description':a50_0x311c0b(0x72),'risk':a50_0x311c0b(0x71),'flags':[ROLE_ID_FLAG],async 'execute'(_0x2390dc){const _0x2a0c31=a50_0x311c0b,_0xa3182e=await getRuntimeRoleById(_0x2390dc['appCode'],_0x2390dc[_0x2a0c31(0x7b)]('id'));return{'ok':!![],'data':{'scope':_0x2a0c31(0x78),'role':projectRuntimeRole(_0xa3182e)}};}};
1
+ const a50_0x2b4910=a50_0x55af;(function(_0x1d9c87,_0x4bb347){const _0x3ab5bc=a50_0x55af,_0x3d5e73=_0x1d9c87();while(!![]){try{const _0x3bd0b7=-parseInt(_0x3ab5bc(0x1d0))/0x1+parseInt(_0x3ab5bc(0x1d9))/0x2+-parseInt(_0x3ab5bc(0x1d3))/0x3*(parseInt(_0x3ab5bc(0x1dd))/0x4)+-parseInt(_0x3ab5bc(0x1d8))/0x5+-parseInt(_0x3ab5bc(0x1d7))/0x6+-parseInt(_0x3ab5bc(0x1d1))/0x7*(-parseInt(_0x3ab5bc(0x1da))/0x8)+-parseInt(_0x3ab5bc(0x1db))/0x9*(-parseInt(_0x3ab5bc(0x1d4))/0xa);if(_0x3bd0b7===_0x4bb347)break;else _0x3d5e73['push'](_0x3d5e73['shift']());}catch(_0x508300){_0x3d5e73['push'](_0x3d5e73['shift']());}}}(a50_0x4834,0x8f981));function a50_0x55af(_0x243251,_0x5bfe12){_0x243251=_0x243251-0x1d0;const _0x48345b=a50_0x4834();let _0x55af4f=_0x48345b[_0x243251];return _0x55af4f;}import{getRuntimeRoleById,projectRuntimeRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';function a50_0x4834(){const _0x10c10f=['4179312tniQSE','2152715iZEJGm','644408CbmedS','8WHlelk','720SgUIAs','Show\x20one\x20runtime\x20role\x20by\x20ID','230368CBKovW','423211qjIATN','6726433dUkpTz','detail','24gQGyEI','164510MhwMdj','role','num'];a50_0x4834=function(){return _0x10c10f;};return a50_0x4834();}export const roleDetail={'service':a50_0x2b4910(0x1d5),'command':a50_0x2b4910(0x1d2),'description':a50_0x2b4910(0x1dc),'risk':'read','flags':[ROLE_ID_FLAG],async 'execute'(_0x54eb61){const _0x3d3155=a50_0x2b4910,_0x59addc=await getRuntimeRoleById(_0x54eb61['appCode'],_0x54eb61[_0x3d3155(0x1d6)]('id'));return{'ok':!![],'data':{'scope':'runtime','role':projectRuntimeRole(_0x59addc)}};}};
@@ -1 +1 @@
1
- (function(_0x292e3f,_0x1c6657){const _0x3504e4=a51_0x3ebb,_0x2c7fd9=_0x292e3f();while(!![]){try{const _0x1cca2a=-parseInt(_0x3504e4(0x82))/0x1*(parseInt(_0x3504e4(0x85))/0x2)+parseInt(_0x3504e4(0x7d))/0x3+-parseInt(_0x3504e4(0x83))/0x4*(-parseInt(_0x3504e4(0x86))/0x5)+-parseInt(_0x3504e4(0x80))/0x6*(-parseInt(_0x3504e4(0x87))/0x7)+-parseInt(_0x3504e4(0x81))/0x8+-parseInt(_0x3504e4(0x7e))/0x9+parseInt(_0x3504e4(0x7f))/0xa*(parseInt(_0x3504e4(0x84))/0xb);if(_0x1cca2a===_0x1c6657)break;else _0x2c7fd9['push'](_0x2c7fd9['shift']());}catch(_0x3679e8){_0x2c7fd9['push'](_0x2c7fd9['shift']());}}}(a51_0x1000,0x87088));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';import{roleDelete}from'../../commands/role/delete.js';function a51_0x3ebb(_0x2577ca,_0x2b9ee4){_0x2577ca=_0x2577ca-0x7d;const _0x10001c=a51_0x1000();let _0x3ebbad=_0x10001c[_0x2577ca];return _0x3ebbad;}import{roleUserAdd}from'../../commands/role/user-add.js';import{roleUserRemove}from'../../commands/role/user-remove.js';function a51_0x1000(){const _0x5b7bfb=['77IRDTjb','325654cQvjrp','96745MpOJdA','2518775mYWBgL','2248845RsVLyA','7436691QxtLqL','449330COmwoz','12vgzbGs','5492808XSyCCX','1GYOCPb','92glEqio'];a51_0x1000=function(){return _0x5b7bfb;};return a51_0x1000();}export const roleDefinitions=[roleList,roleDetail,roleCreate,roleUpdate,roleDelete,roleUserAdd,roleUserRemove];
1
+ (function(_0x32a71b,_0x119b86){const _0x6de1a8=a51_0x1434,_0x5c120e=_0x32a71b();while(!![]){try{const _0x4cf507=-parseInt(_0x6de1a8(0x72))/0x1+parseInt(_0x6de1a8(0x6d))/0x2+-parseInt(_0x6de1a8(0x74))/0x3+-parseInt(_0x6de1a8(0x6e))/0x4*(parseInt(_0x6de1a8(0x71))/0x5)+-parseInt(_0x6de1a8(0x70))/0x6*(-parseInt(_0x6de1a8(0x73))/0x7)+parseInt(_0x6de1a8(0x75))/0x8*(parseInt(_0x6de1a8(0x6f))/0x9)+parseInt(_0x6de1a8(0x76))/0xa;if(_0x4cf507===_0x119b86)break;else _0x5c120e['push'](_0x5c120e['shift']());}catch(_0x25484c){_0x5c120e['push'](_0x5c120e['shift']());}}}(a51_0x42db,0x4fd97));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';import{roleDelete}from'../../commands/role/delete.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,roleUserAdd,roleUserRemove];function a51_0x1434(_0x22189d,_0x866bf8){_0x22189d=_0x22189d-0x6d;const _0x42db17=a51_0x42db();let _0x143415=_0x42db17[_0x22189d];return _0x143415;}function a51_0x42db(){const _0x178c9e=['65715mwTkVC','434739kXBXzr','1365602kpvGQu','1067313fTqPQM','1683296AVZGgo','4196470QRGMfa','299828BVmDJC','16eKQijr','9FHyQmH','12CsoEnU'];a51_0x42db=function(){return _0x178c9e;};return a51_0x42db();}
@@ -1 +1 @@
1
- const a52_0x4d1de4=a52_0x1a60;(function(_0x54cf78,_0x2b2699){const _0x39490d=a52_0x1a60,_0x58cd5d=_0x54cf78();while(!![]){try{const _0x5b42fe=parseInt(_0x39490d(0xd0))/0x1+parseInt(_0x39490d(0xcf))/0x2*(parseInt(_0x39490d(0xe2))/0x3)+parseInt(_0x39490d(0xf1))/0x4+-parseInt(_0x39490d(0xee))/0x5*(parseInt(_0x39490d(0xec))/0x6)+parseInt(_0x39490d(0xe8))/0x7*(-parseInt(_0x39490d(0xdf))/0x8)+parseInt(_0x39490d(0xea))/0x9*(parseInt(_0x39490d(0xdb))/0xa)+-parseInt(_0x39490d(0xd3))/0xb;if(_0x5b42fe===_0x2b2699)break;else _0x58cd5d['push'](_0x58cd5d['shift']());}catch(_0xe6716f){_0x58cd5d['push'](_0x58cd5d['shift']());}}}(a52_0x208e,0x3f3ef));import{listRuntimeAppRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a52_0x1a60(_0x1a8e3b,_0x6f0045){_0x1a8e3b=_0x1a8e3b-0xcc;const _0x208e88=a52_0x208e();let _0x1a600a=_0x208e88[_0x1a8e3b];return _0x1a600a;}import{listAllRuntimeRoles,projectRuntimeRole,RUNTIME_ROLE_TYPES}from'../../commands/role/shared.js';export const roleList={'service':a52_0x4d1de4(0xe3),'command':'list','description':a52_0x4d1de4(0xd8),'risk':a52_0x4d1de4(0xde),'flags':[{'name':a52_0x4d1de4(0xd5),'type':'string','enum':RUNTIME_ROLE_TYPES,'description':a52_0x4d1de4(0xd6)},{'name':a52_0x4d1de4(0xed),'type':a52_0x4d1de4(0xef),'description':a52_0x4d1de4(0xf2)},{'name':a52_0x4d1de4(0xf0),'type':a52_0x4d1de4(0xe6),'default':0x1,'description':'Page\x20number'},{'name':a52_0x4d1de4(0xce),'type':a52_0x4d1de4(0xe6),'default':0x64,'description':a52_0x4d1de4(0xdd)}],async 'validate'(_0x219a00){const _0x299d12=a52_0x4d1de4,_0x5cc743=_0x219a00['str'](_0x299d12(0xd5))[_0x299d12(0xd4)]();if(_0x5cc743&&!RUNTIME_ROLE_TYPES['includes'](_0x5cc743))throw CliErrors[_0x299d12(0xeb)](_0x299d12(0xd1)+_0x5cc743+'.');const _0x214857=_0x219a00['num'](_0x299d12(0xf0),0x1),_0x2f32ce=_0x219a00[_0x299d12(0xe4)](_0x299d12(0xce),0x64);if(!Number[_0x299d12(0xe5)](_0x214857)||_0x214857<0x1)throw CliErrors['validation'](_0x299d12(0xcc));if(!Number['isSafeInteger'](_0x2f32ce)||_0x2f32ce<0x1||_0x2f32ce>0x64)throw CliErrors[_0x299d12(0xeb)](_0x299d12(0xd9));},async 'execute'(_0x55479c){const _0x3e4abb=a52_0x4d1de4,_0x4f4dc1=_0x55479c[_0x3e4abb(0xe7)](_0x3e4abb(0xd5))['toUpperCase'](),_0x427bc0=_0x55479c[_0x3e4abb(0xe7)]('name')[_0x3e4abb(0xdc)](),_0x333498=_0x55479c['num'](_0x3e4abb(0xf0),0x1),_0x537974=_0x55479c[_0x3e4abb(0xe4)]('pagesize',0x64);if(_0x4f4dc1){const _0x388eba=(await listAllRuntimeRoles(_0x55479c['appCode'],{..._0x427bc0?{'roleName':_0x427bc0}:{}}))[_0x3e4abb(0xd7)](_0x9a8677=>_0x9a8677[_0x3e4abb(0xe9)]===_0x4f4dc1),_0x504e5b=(_0x333498-0x1)*_0x537974;return{'ok':!![],'data':{'scope':'runtime','roles':_0x388eba['slice'](_0x504e5b,_0x504e5b+_0x537974)[_0x3e4abb(0xd2)](projectRuntimeRole),'paging':{'currentPage':_0x333498,'pageSize':_0x537974,'totalCount':_0x388eba['length']}}};}const _0x2296b4=await listRuntimeAppRoles(_0x55479c[_0x3e4abb(0xe1)],{..._0x427bc0?{'roleName':_0x427bc0}:{},'currentPage':_0x333498,'pageSize':_0x537974});return{'ok':!![],'data':{'scope':_0x3e4abb(0xcd),'roles':_0x2296b4[_0x3e4abb(0xda)][_0x3e4abb(0xd2)](projectRuntimeRole),'paging':_0x2296b4[_0x3e4abb(0xe0)]}};}};function a52_0x208e(){const _0x4f22a4=['items','1608690Atyksv','trim','Page\x20size\x20from\x201\x20to\x20100','read','1890704YKDxzc','paging','appCode','595233hkujBL','role','num','isSafeInteger','number','str','7vybhMX','roleType','18UyWydc','validation','1068vDJSdv','name','4855CUYeDI','string','page','1744884NOwgvu','Fuzzy\x20role-name\x20filter','--page\x20must\x20be\x20a\x20positive\x20integer.','runtime','pagesize','2XyoMZJ','404088QtaYAB','Invalid\x20runtime\x20role\x20type:\x20','map','7614497NzEbGE','toUpperCase','type','Runtime\x20role\x20type','filter','List\x20runtime\x20roles\x20for\x20the\x20current\x20app','--pagesize\x20must\x20be\x20an\x20integer\x20from\x201\x20to\x20100.'];a52_0x208e=function(){return _0x4f22a4;};return a52_0x208e();}
1
+ const a52_0x3a9dd1=a52_0x219e;(function(_0x26b32b,_0x119a47){const _0xd9ce74=a52_0x219e,_0x25fac5=_0x26b32b();while(!![]){try{const _0x47ac22=parseInt(_0xd9ce74(0x1a2))/0x1+-parseInt(_0xd9ce74(0x19e))/0x2+-parseInt(_0xd9ce74(0x1ab))/0x3*(parseInt(_0xd9ce74(0x1a3))/0x4)+parseInt(_0xd9ce74(0x1b9))/0x5+parseInt(_0xd9ce74(0x19b))/0x6+-parseInt(_0xd9ce74(0x1a7))/0x7*(-parseInt(_0xd9ce74(0x1a6))/0x8)+-parseInt(_0xd9ce74(0x1a9))/0x9;if(_0x47ac22===_0x119a47)break;else _0x25fac5['push'](_0x25fac5['shift']());}catch(_0x55e809){_0x25fac5['push'](_0x25fac5['shift']());}}}(a52_0x2e20,0x5dac5));import{listRuntimeAppRoles}from'../../core/api-client.js';function a52_0x2e20(){const _0x2bdf23=['num','216yWdwlK','273tgtLTH','map','1132596EHRDwO','isSafeInteger','17997yGtvLi','Runtime\x20role\x20type','string','list','length','read','Fuzzy\x20role-name\x20filter','--pagesize\x20must\x20be\x20an\x20integer\x20from\x201\x20to\x20100.','paging','List\x20runtime\x20roles\x20for\x20the\x20current\x20app','--page\x20must\x20be\x20a\x20positive\x20integer.','type','number','runtime','3412610ZZPRGA','validation','Page\x20number','Page\x20size\x20from\x201\x20to\x20100','name','pagesize','918756JGKKsM','items','appCode','1073770OKluxr','str','page','slice','455672bjSbKb','164VhmrZZ','toUpperCase'];a52_0x2e20=function(){return _0x2bdf23;};return a52_0x2e20();}import{CliErrors}from'../../errors.js';import{listAllRuntimeRoles,projectRuntimeRole,RUNTIME_ROLE_TYPES}from'../../commands/role/shared.js';function a52_0x219e(_0x3fe932,_0x2933da){_0x3fe932=_0x3fe932-0x196;const _0x2e20cd=a52_0x2e20();let _0x219ea0=_0x2e20cd[_0x3fe932];return _0x219ea0;}export const roleList={'service':'role','command':a52_0x3a9dd1(0x1ae),'description':a52_0x3a9dd1(0x1b4),'risk':a52_0x3a9dd1(0x1b0),'flags':[{'name':'type','type':a52_0x3a9dd1(0x1ad),'enum':RUNTIME_ROLE_TYPES,'description':a52_0x3a9dd1(0x1ac)},{'name':a52_0x3a9dd1(0x199),'type':'string','description':a52_0x3a9dd1(0x1b1)},{'name':'page','type':a52_0x3a9dd1(0x1b7),'default':0x1,'description':a52_0x3a9dd1(0x197)},{'name':a52_0x3a9dd1(0x19a),'type':a52_0x3a9dd1(0x1b7),'default':0x64,'description':a52_0x3a9dd1(0x198)}],async 'validate'(_0x5b9fab){const _0x3bfac3=a52_0x3a9dd1,_0x24f2c9=_0x5b9fab['str'](_0x3bfac3(0x1b6))['toUpperCase']();if(_0x24f2c9&&!RUNTIME_ROLE_TYPES['includes'](_0x24f2c9))throw CliErrors[_0x3bfac3(0x196)]('Invalid\x20runtime\x20role\x20type:\x20'+_0x24f2c9+'.');const _0x14327a=_0x5b9fab['num'](_0x3bfac3(0x1a0),0x1),_0x4403e7=_0x5b9fab[_0x3bfac3(0x1a5)](_0x3bfac3(0x19a),0x64);if(!Number[_0x3bfac3(0x1aa)](_0x14327a)||_0x14327a<0x1)throw CliErrors[_0x3bfac3(0x196)](_0x3bfac3(0x1b5));if(!Number['isSafeInteger'](_0x4403e7)||_0x4403e7<0x1||_0x4403e7>0x64)throw CliErrors[_0x3bfac3(0x196)](_0x3bfac3(0x1b2));},async 'execute'(_0x2baf5a){const _0x28bf94=a52_0x3a9dd1,_0x184199=_0x2baf5a['str']('type')[_0x28bf94(0x1a4)](),_0x37ced6=_0x2baf5a[_0x28bf94(0x19f)](_0x28bf94(0x199))['trim'](),_0x1d3e1d=_0x2baf5a[_0x28bf94(0x1a5)]('page',0x1),_0x449474=_0x2baf5a['num'](_0x28bf94(0x19a),0x64);if(_0x184199){const _0x15c329=(await listAllRuntimeRoles(_0x2baf5a[_0x28bf94(0x19d)],{..._0x37ced6?{'roleName':_0x37ced6}:{}}))['filter'](_0x260ea8=>_0x260ea8['roleType']===_0x184199),_0x108dd0=(_0x1d3e1d-0x1)*_0x449474;return{'ok':!![],'data':{'scope':_0x28bf94(0x1b8),'roles':_0x15c329[_0x28bf94(0x1a1)](_0x108dd0,_0x108dd0+_0x449474)[_0x28bf94(0x1a8)](projectRuntimeRole),'paging':{'currentPage':_0x1d3e1d,'pageSize':_0x449474,'totalCount':_0x15c329[_0x28bf94(0x1af)]}}};}const _0x187804=await listRuntimeAppRoles(_0x2baf5a[_0x28bf94(0x19d)],{..._0x37ced6?{'roleName':_0x37ced6}:{},'currentPage':_0x1d3e1d,'pageSize':_0x449474});return{'ok':!![],'data':{'scope':'runtime','roles':_0x187804[_0x28bf94(0x19c)][_0x28bf94(0x1a8)](projectRuntimeRole),'paging':_0x187804[_0x28bf94(0x1b3)]}};}};
@@ -1 +1 @@
1
- const a53_0x2c3188=a53_0x3803;(function(_0x1a8ca5,_0x5948c1){const _0x469644=a53_0x3803,_0x5ea0bb=_0x1a8ca5();while(!![]){try{const _0x4ef3e8=parseInt(_0x469644(0x1df))/0x1+parseInt(_0x469644(0x1f1))/0x2*(-parseInt(_0x469644(0x209))/0x3)+parseInt(_0x469644(0x212))/0x4+parseInt(_0x469644(0x204))/0x5+-parseInt(_0x469644(0x1ea))/0x6+parseInt(_0x469644(0x207))/0x7+parseInt(_0x469644(0x1de))/0x8*(parseInt(_0x469644(0x1fc))/0x9);if(_0x4ef3e8===_0x5948c1)break;else _0x5ea0bb['push'](_0x5ea0bb['shift']());}catch(_0x464924){_0x5ea0bb['push'](_0x5ea0bb['shift']());}}}(a53_0x4eb0,0x5e86d));import{listRuntimeAppUsers,listRuntimeAppRoles,listRuntimeRoleUsers}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';export const RUNTIME_ROLE_TYPES=[a53_0x2c3188(0x1e3),'USER',a53_0x2c3188(0x1e2),'CUSTOM'];const BUILTIN_ROLE_TYPES=[a53_0x2c3188(0x1e3),'USER',a53_0x2c3188(0x1e2)];export const ROLE_ID_FLAG={'name':'id','type':'number','required':!![],'description':a53_0x2c3188(0x205)};export const ROLE_REF_FLAG={'name':'role','type':a53_0x2c3188(0x203),'required':!![],'description':'Runtime\x20role\x20ID\x20or\x20exact\x20role\x20name'};export const USER_ID_FLAG={'name':a53_0x2c3188(0x1f4),'type':a53_0x2c3188(0x203),'required':!![],'description':'Runtime\x20numeric\x20userId'};export const EXPECT_USER_COUNT_FLAG={'name':a53_0x2c3188(0x1e7),'type':'number','description':a53_0x2c3188(0x1f8)};export function isBuiltinRuntimeRole(_0x13a9f4){const _0x38735c=a53_0x2c3188;return BUILTIN_ROLE_TYPES[_0x38735c(0x1f2)](_0x13a9f4);}export function assertCustomRuntimeRole(_0x5e2595,_0x1e4dca){const _0x4ea101=a53_0x2c3188;if(_0x5e2595[_0x4ea101(0x1e9)]!==_0x4ea101(0x1eb))throw CliErrors[_0x4ea101(0x1fe)](_0x4ea101(0x208)+_0x1e4dca+_0x4ea101(0x1f6)+_0x5e2595[_0x4ea101(0x1ed)]+'\x20('+_0x5e2595[_0x4ea101(0x1e9)]+').',_0x4ea101(0x1d4));}export function projectRuntimeRole(_0x7d7b1){const _0x123a0a=a53_0x2c3188;return{'id':_0x7d7b1['id'],'roleName':_0x7d7b1[_0x123a0a(0x1ed)],'roleType':_0x7d7b1[_0x123a0a(0x1e9)],'remark':_0x7d7b1[_0x123a0a(0x211)],'userCount':_0x7d7b1[_0x123a0a(0x1f7)]??0x0,'permitCount':_0x7d7b1[_0x123a0a(0x1ce)]??0x0,'builtin':isBuiltinRuntimeRole(_0x7d7b1[_0x123a0a(0x1e9)])};}function a53_0x4eb0(){const _0x5f9b4=['\x20was\x20not\x20found\x20in\x20app\x20','totalCount','Runtime\x20user\x20','length','624JNCeXw','397101LIxRvL','Runtime\x20userId\x20must\x20be\x20a\x20positive\x20safe\x20integer.','userName','OWNER','ADMIN','trim',',\x20found\x20','Runtime\x20role\x20','expect-user-count','appCode','roleType','278418jjNlHE','CUSTOM','Run\x20`lovrabet\x20role\x20list`\x20and\x20use\x20a\x20role\x20from\x20the\x20current\x20app.','roleName','isSafeInteger','Run\x20`lovrabet\x20role\x20list`\x20or\x20pass\x20--role\x20<id>.','paging','1491916zySTxv','includes','\x22\x20was\x20not\x20found\x20in\x20app\x20','user','User\x20','\x20built-in\x20runtime\x20role\x20','userCount','Reject\x20when\x20the\x20target\x20role\x20member\x20count\x20has\x20changed','userList','Runtime\x20role\x20member\x20count\x20changed:\x20expected\x20','str','6687mUlvTV','Use\x20a\x20numeric\x20userId\x20returned\x20by\x20the\x20current\x20application\x27s\x20personnel\x20list.','validation','Transfer\x20or\x20manage\x20application\x20ownership\x20through\x20the\x20dedicated\x20application\x20workflow.','\x20is\x20missing\x20from\x20the\x20grouped\x20member\x20snapshot.','push','Missing\x20runtime\x20role\x20reference.','string','25080GumHkk','Runtime\x20role\x20ID\x20returned\x20by\x20role\x20list','Pass\x20--user\x20<userId>;\x20name\x20and\x20account\x20lookup\x20are\x20not\x20available\x20in\x20runtime\x20scope.','995162RBWJoj','Cannot\x20','3JMUaDZ','OWNER\x20runtime\x20role\x20membership\x20cannot\x20be\x20changed\x20with\x20this\x20command.','filter','Pass\x20--role\x20<id|name>.','--expect-user-count\x20must\x20be\x20a\x20non-negative\x20integer.','\x20is\x20already\x20in\x20runtime\x20role\x20','user-add','role','remark','2309220QqKrcl','find','permitCount','flag','test','items','Runtime\x20role\x20name\x20\x22','Pass\x20one\x20role\x20ID:\x20','Only\x20CUSTOM\x20runtime\x20roles\x20can\x20be\x20modified\x20or\x20deleted.','Read\x20the\x20current\x20members\x20and\x20retry\x20with\x20the\x20new\x20expected\x20count.','userId','\x22\x20is\x20ambiguous.','num','map'];a53_0x4eb0=function(){return _0x5f9b4;};return a53_0x4eb0();}export async function getRuntimeRoleById(_0x155b86,_0x56f53a){const _0x5de926=a53_0x2c3188;if(!Number[_0x5de926(0x1ee)](_0x56f53a)||_0x56f53a<=0x0)throw CliErrors[_0x5de926(0x1fe)]('Role\x20ID\x20must\x20be\x20a\x20positive\x20integer.');const _0x2919a1=(await listAllRuntimeRoles(_0x155b86))[_0x5de926(0x20b)](_0x2d094b=>_0x2d094b['id']===_0x56f53a&&(!_0x2d094b[_0x5de926(0x1e8)]||_0x2d094b[_0x5de926(0x1e8)]===_0x155b86));if(_0x2919a1['length']!==0x1)throw CliErrors['validation']('Runtime\x20role\x20id\x20'+_0x56f53a+_0x5de926(0x1da)+_0x155b86+'.',_0x5de926(0x1ec));return _0x2919a1[0x0];}function a53_0x3803(_0x258a4d,_0x23c1c2){_0x258a4d=_0x258a4d-0x1ce;const _0x4eb04a=a53_0x4eb0();let _0x380312=_0x4eb04a[_0x258a4d];return _0x380312;}export async function listAllRuntimeRoles(_0x430a61,_0x56afee={}){const _0x343c2b=a53_0x2c3188,_0x4c758f=0x64,_0x57c9e5=[];for(let _0x516989=0x1;;_0x516989+=0x1){const _0x1927e7=await listRuntimeAppRoles(_0x430a61,{..._0x56afee[_0x343c2b(0x1ed)]?{'roleName':_0x56afee[_0x343c2b(0x1ed)]}:{},'currentPage':_0x516989,'pageSize':_0x4c758f});_0x57c9e5[_0x343c2b(0x201)](..._0x1927e7[_0x343c2b(0x1d1)]);if(_0x1927e7['items'][_0x343c2b(0x1dd)]<_0x4c758f||_0x1927e7[_0x343c2b(0x1f0)]&&_0x57c9e5[_0x343c2b(0x1dd)]>=_0x1927e7[_0x343c2b(0x1f0)][_0x343c2b(0x1db)])return _0x57c9e5;}}export async function resolveRuntimeRoleRef(_0x29c49b,_0x56ea8c){const _0x1718f5=a53_0x2c3188,_0x28301a=_0x56ea8c[_0x1718f5(0x1e4)]();if(!_0x28301a)throw CliErrors[_0x1718f5(0x1fe)](_0x1718f5(0x202),_0x1718f5(0x20c));if(/^\d+$/[_0x1718f5(0x1d0)](_0x28301a))return getRuntimeRoleById(_0x29c49b,Number(_0x28301a));const _0x5dc726=(await listAllRuntimeRoles(_0x29c49b))[_0x1718f5(0x20b)](_0x3c72d9=>_0x3c72d9[_0x1718f5(0x1ed)]===_0x28301a);if(_0x5dc726[_0x1718f5(0x1dd)]===0x0)throw CliErrors[_0x1718f5(0x1fe)](_0x1718f5(0x1d2)+_0x28301a+_0x1718f5(0x1f3)+_0x29c49b+'.',_0x1718f5(0x1ef));if(_0x5dc726[_0x1718f5(0x1dd)]>0x1)throw CliErrors['validation'](_0x1718f5(0x1d2)+_0x28301a+_0x1718f5(0x1d7),_0x1718f5(0x1d3)+_0x5dc726['map'](_0x4608fc=>_0x4608fc['id'])['join'](',\x20')+'.');return _0x5dc726[0x0];}function parseRuntimeUserId(_0xde3a25){const _0x39bced=a53_0x2c3188,_0x4793df=_0xde3a25['trim']();if(!/^\d+$/[_0x39bced(0x1d0)](_0x4793df))throw CliErrors['validation']('Runtime\x20role\x20membership\x20requires\x20a\x20numeric\x20userId.',_0x39bced(0x206));const _0x286f7e=Number(_0x4793df);if(!Number[_0x39bced(0x1ee)](_0x286f7e)||_0x286f7e<=0x0)throw CliErrors[_0x39bced(0x1fe)](_0x39bced(0x1e0));return _0x286f7e;}export async function prepareRuntimeMemberMutation(_0x3c72e7,_0x347d57){const _0x50d6d7=a53_0x2c3188,_0x3874b9=await resolveRuntimeRoleRef(_0x3c72e7[_0x50d6d7(0x1e8)],_0x3c72e7[_0x50d6d7(0x1fb)](_0x50d6d7(0x210)));if(_0x3874b9[_0x50d6d7(0x1e9)]==='OWNER')throw CliErrors[_0x50d6d7(0x1fe)](_0x50d6d7(0x20a),_0x50d6d7(0x1ff));const _0x59cb1c=parseRuntimeUserId(_0x3c72e7[_0x50d6d7(0x1fb)](_0x50d6d7(0x1f4))),_0x3abd08=(await listRuntimeRoleUsers(_0x3c72e7[_0x50d6d7(0x1e8)]))[_0x50d6d7(0x1d9)](_0x309838=>({..._0x309838,'userList':[..._0x309838[_0x50d6d7(0x1f9)]??[]],'applyUserList':[..._0x309838['applyUserList']??[]]})),_0x5bb30d=_0x3abd08[_0x50d6d7(0x213)](_0x5cbc9b=>_0x5cbc9b['id']===_0x3874b9['id']);if(!_0x5bb30d)throw CliErrors[_0x50d6d7(0x1fe)](_0x50d6d7(0x1e6)+_0x3874b9['id']+_0x50d6d7(0x200),'Reload\x20the\x20role\x20list\x20and\x20retry\x20after\x20the\x20server\x20state\x20is\x20consistent.');const _0x24cf8d=_0x5bb30d[_0x50d6d7(0x1f9)]['map'](_0x58cd99=>_0x58cd99[_0x50d6d7(0x1d6)]),_0x5eba68=_0x3c72e7[_0x50d6d7(0x1cf)](_0x50d6d7(0x1e7));if(_0x5eba68!==undefined&&_0x5eba68!==null&&_0x5eba68!==''){const _0x20fa05=_0x3c72e7[_0x50d6d7(0x1d8)](_0x50d6d7(0x1e7));if(!Number[_0x50d6d7(0x1ee)](_0x20fa05)||_0x20fa05<0x0)throw CliErrors[_0x50d6d7(0x1fe)](_0x50d6d7(0x20d));if(_0x24cf8d[_0x50d6d7(0x1dd)]!==_0x20fa05)throw CliErrors['validation'](_0x50d6d7(0x1fa)+_0x20fa05+_0x50d6d7(0x1e5)+_0x24cf8d[_0x50d6d7(0x1dd)]+'.',_0x50d6d7(0x1d5));}const _0x1f94d0=_0x24cf8d[_0x50d6d7(0x1f2)](_0x59cb1c),_0xe322ce=[];let _0x26d8c3=!![];if(_0x347d57===_0x50d6d7(0x20f)){const _0x202232=await listRuntimeAppUsers(_0x3c72e7[_0x50d6d7(0x1e8)]),_0x1ec840=_0x202232[_0x50d6d7(0x20b)](_0x23dbf3=>Number(_0x23dbf3['code'])===_0x59cb1c);if(_0x1ec840[_0x50d6d7(0x1dd)]!==0x1||!_0x1ec840[0x0][_0x50d6d7(0x1e1)]?.['trim']())throw CliErrors[_0x50d6d7(0x1fe)](_0x50d6d7(0x1dc)+_0x59cb1c+_0x50d6d7(0x1da)+_0x3c72e7[_0x50d6d7(0x1e8)]+'.',_0x50d6d7(0x1fd));_0x1f94d0?(_0x26d8c3=![],_0xe322ce['push'](_0x50d6d7(0x1f5)+_0x59cb1c+_0x50d6d7(0x20e)+_0x3874b9['id']+'.')):_0x5bb30d[_0x50d6d7(0x1f9)][_0x50d6d7(0x201)]({'userId':_0x59cb1c,'username':_0x1ec840[0x0][_0x50d6d7(0x1e1)]});}else!_0x1f94d0?(_0x26d8c3=![],_0xe322ce[_0x50d6d7(0x201)]('User\x20'+_0x59cb1c+'\x20is\x20not\x20in\x20runtime\x20role\x20'+_0x3874b9['id']+'.')):_0x5bb30d[_0x50d6d7(0x1f9)]=_0x5bb30d['userList']['filter'](_0x1f23e9=>_0x1f23e9[_0x50d6d7(0x1d6)]!==_0x59cb1c);return{'role':_0x3874b9,'userId':_0x59cb1c,'roleList':_0x3abd08,'before':{'userIds':_0x24cf8d},'after':{'userIds':_0x5bb30d[_0x50d6d7(0x1f9)][_0x50d6d7(0x1d9)](_0x14922c=>_0x14922c[_0x50d6d7(0x1d6)])},'shouldWrite':_0x26d8c3,'warnings':_0xe322ce};}export function runtimeRoleWriteResult(_0x222f31,_0x21d6e6,_0x5e91ea,_0x16178c,_0x2a9bc4,_0x38c834=[]){return{'operation':_0x222f31,'scope':'runtime','selector':_0x21d6e6,'before':_0x5e91ea,'after':_0x16178c,'dryRun':![],'backend':_0x2a9bc4,'warnings':_0x38c834};}
1
+ const a53_0x5077fe=a53_0x5f3d;(function(_0x21c99a,_0x4ff32f){const _0x2d9b28=a53_0x5f3d,_0x2b2c4e=_0x21c99a();while(!![]){try{const _0x369fa6=-parseInt(_0x2d9b28(0x1be))/0x1+parseInt(_0x2d9b28(0x1c0))/0x2*(-parseInt(_0x2d9b28(0x1ba))/0x3)+parseInt(_0x2d9b28(0x1d9))/0x4+-parseInt(_0x2d9b28(0x1db))/0x5+parseInt(_0x2d9b28(0x1cf))/0x6*(-parseInt(_0x2d9b28(0x1bc))/0x7)+parseInt(_0x2d9b28(0x1eb))/0x8+parseInt(_0x2d9b28(0x1f1))/0x9;if(_0x369fa6===_0x4ff32f)break;else _0x2b2c4e['push'](_0x2b2c4e['shift']());}catch(_0x117252){_0x2b2c4e['push'](_0x2b2c4e['shift']());}}}(a53_0x5b75,0x8a110));import{listRuntimeAppUsers,listRuntimeAppRoles,listRuntimeRoleUsers}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';export const RUNTIME_ROLE_TYPES=[a53_0x5077fe(0x1d3),a53_0x5077fe(0x1c5),a53_0x5077fe(0x1da),a53_0x5077fe(0x1c1)];const BUILTIN_ROLE_TYPES=[a53_0x5077fe(0x1d3),a53_0x5077fe(0x1c5),a53_0x5077fe(0x1da)];export const ROLE_ID_FLAG={'name':'id','type':'number','required':!![],'description':a53_0x5077fe(0x1e8)};export const ROLE_REF_FLAG={'name':'role','type':a53_0x5077fe(0x1cb),'required':!![],'description':a53_0x5077fe(0x1f2)};export const USER_ID_FLAG={'name':a53_0x5077fe(0x1cc),'type':a53_0x5077fe(0x1cb),'required':!![],'description':a53_0x5077fe(0x1ef)};export const EXPECT_USER_COUNT_FLAG={'name':'expect-user-count','type':a53_0x5077fe(0x1e3),'description':a53_0x5077fe(0x1d1)};export function isBuiltinRuntimeRole(_0x23d674){return BUILTIN_ROLE_TYPES['includes'](_0x23d674);}export function assertCustomRuntimeRole(_0x1bec43,_0x6e1562){const _0x170d52=a53_0x5077fe;if(_0x1bec43['roleType']!==_0x170d52(0x1c1))throw CliErrors['validation'](_0x170d52(0x1bd)+_0x6e1562+'\x20built-in\x20runtime\x20role\x20'+_0x1bec43[_0x170d52(0x1c6)]+'\x20('+_0x1bec43[_0x170d52(0x1ec)]+').','Only\x20CUSTOM\x20runtime\x20roles\x20can\x20be\x20modified\x20or\x20deleted.');}function a53_0x5f3d(_0x1677ac,_0x426728){_0x1677ac=_0x1677ac-0x1b2;const _0x5b75c6=a53_0x5b75();let _0x5f3d12=_0x5b75c6[_0x1677ac];return _0x5f3d12;}export function projectRuntimeRole(_0x36c164){const _0x23219b=a53_0x5077fe;return{'id':_0x36c164['id'],'roleName':_0x36c164[_0x23219b(0x1c6)],'roleType':_0x36c164[_0x23219b(0x1ec)],'remark':_0x36c164['remark'],'userCount':_0x36c164[_0x23219b(0x1d7)]??0x0,'permitCount':_0x36c164['permitCount']??0x0,'builtin':isBuiltinRuntimeRole(_0x36c164[_0x23219b(0x1ec)])};}export async function getRuntimeRoleById(_0x1eea11,_0x4618e5){const _0x5dd79e=a53_0x5077fe;if(!Number[_0x5dd79e(0x1cd)](_0x4618e5)||_0x4618e5<=0x0)throw CliErrors[_0x5dd79e(0x1c8)](_0x5dd79e(0x1b9));const _0x140279=(await listAllRuntimeRoles(_0x1eea11))[_0x5dd79e(0x1e6)](_0x2d4ded=>_0x2d4ded['id']===_0x4618e5&&(!_0x2d4ded[_0x5dd79e(0x1b4)]||_0x2d4ded[_0x5dd79e(0x1b4)]===_0x1eea11));if(_0x140279[_0x5dd79e(0x1f3)]!==0x1)throw CliErrors[_0x5dd79e(0x1c8)](_0x5dd79e(0x1e2)+_0x4618e5+_0x5dd79e(0x1f4)+_0x1eea11+'.',_0x5dd79e(0x1ed));return _0x140279[0x0];}export async function listAllRuntimeRoles(_0x46fdae,_0x3fb73b={}){const _0x5ea6de=a53_0x5077fe,_0x40b447=0x64,_0x299349=[];for(let _0x290206=0x1;;_0x290206+=0x1){const _0x1cefcb=await listRuntimeAppRoles(_0x46fdae,{..._0x3fb73b['roleName']?{'roleName':_0x3fb73b[_0x5ea6de(0x1c6)]}:{},'currentPage':_0x290206,'pageSize':_0x40b447});_0x299349[_0x5ea6de(0x1dc)](..._0x1cefcb[_0x5ea6de(0x1c9)]);if(_0x1cefcb['items'][_0x5ea6de(0x1f3)]<_0x40b447||_0x1cefcb[_0x5ea6de(0x1ca)]&&_0x299349[_0x5ea6de(0x1f3)]>=_0x1cefcb[_0x5ea6de(0x1ca)][_0x5ea6de(0x1d5)])return _0x299349;}}export async function resolveRuntimeRoleRef(_0x18d921,_0x28c897){const _0x569335=a53_0x5077fe,_0x1b8e22=_0x28c897['trim']();if(!_0x1b8e22)throw CliErrors['validation']('Missing\x20runtime\x20role\x20reference.',_0x569335(0x1de));if(/^\d+$/['test'](_0x1b8e22))return getRuntimeRoleById(_0x18d921,Number(_0x1b8e22));const _0x3b58ea=(await listAllRuntimeRoles(_0x18d921))[_0x569335(0x1e6)](_0x3eacee=>_0x3eacee[_0x569335(0x1c6)]===_0x1b8e22);if(_0x3b58ea[_0x569335(0x1f3)]===0x0)throw CliErrors[_0x569335(0x1c8)](_0x569335(0x1b7)+_0x1b8e22+_0x569335(0x1b3)+_0x18d921+'.',_0x569335(0x1bf));if(_0x3b58ea['length']>0x1)throw CliErrors[_0x569335(0x1c8)]('Runtime\x20role\x20name\x20\x22'+_0x1b8e22+_0x569335(0x1d8),'Pass\x20one\x20role\x20ID:\x20'+_0x3b58ea['map'](_0x2321e7=>_0x2321e7['id'])[_0x569335(0x1c3)](',\x20')+'.');return _0x3b58ea[0x0];}function parseRuntimeUserId(_0x352438){const _0x4751b6=a53_0x5077fe,_0x1c14bd=_0x352438[_0x4751b6(0x1e0)]();if(!/^\d+$/[_0x4751b6(0x1b2)](_0x1c14bd))throw CliErrors[_0x4751b6(0x1c8)](_0x4751b6(0x1ce),_0x4751b6(0x1c4));const _0x574348=Number(_0x1c14bd);if(!Number[_0x4751b6(0x1cd)](_0x574348)||_0x574348<=0x0)throw CliErrors[_0x4751b6(0x1c8)](_0x4751b6(0x1d6));return _0x574348;}export async function prepareRuntimeMemberMutation(_0x51fc81,_0x4ffea8){const _0x441b78=a53_0x5077fe,_0x4a09b3=await resolveRuntimeRoleRef(_0x51fc81[_0x441b78(0x1b4)],_0x51fc81[_0x441b78(0x1e1)]('role'));if(_0x4a09b3['roleType']===_0x441b78(0x1da))throw CliErrors[_0x441b78(0x1c8)]('OWNER\x20runtime\x20role\x20membership\x20cannot\x20be\x20changed\x20with\x20this\x20command.',_0x441b78(0x1e4));const _0x39faef=parseRuntimeUserId(_0x51fc81[_0x441b78(0x1e1)](_0x441b78(0x1cc))),_0x5c64b3=(await listRuntimeRoleUsers(_0x51fc81['appCode']))[_0x441b78(0x1c2)](_0x156e4a=>({..._0x156e4a,'userList':[..._0x156e4a[_0x441b78(0x1df)]??[]],'applyUserList':[..._0x156e4a[_0x441b78(0x1b5)]??[]]})),_0x28fa32=_0x5c64b3['find'](_0x368bab=>_0x368bab['id']===_0x4a09b3['id']);if(!_0x28fa32)throw CliErrors[_0x441b78(0x1c8)](_0x441b78(0x1b8)+_0x4a09b3['id']+'\x20is\x20missing\x20from\x20the\x20grouped\x20member\x20snapshot.',_0x441b78(0x1e7));const _0x3d1a8e=_0x28fa32['userList']['map'](_0x26e8c6=>_0x26e8c6['userId']),_0x64bded=_0x51fc81['flag']('expect-user-count');if(_0x64bded!==undefined&&_0x64bded!==null&&_0x64bded!==''){const _0xbb90f1=_0x51fc81[_0x441b78(0x1ea)](_0x441b78(0x1d0));if(!Number['isSafeInteger'](_0xbb90f1)||_0xbb90f1<0x0)throw CliErrors[_0x441b78(0x1c8)]('--expect-user-count\x20must\x20be\x20a\x20non-negative\x20integer.');if(_0x3d1a8e[_0x441b78(0x1f3)]!==_0xbb90f1)throw CliErrors[_0x441b78(0x1c8)](_0x441b78(0x1ee)+_0xbb90f1+_0x441b78(0x1e5)+_0x3d1a8e[_0x441b78(0x1f3)]+'.',_0x441b78(0x1d2));}const _0xd1dd94=_0x3d1a8e[_0x441b78(0x1dd)](_0x39faef),_0x16cf7d=[];let _0x2eb74f=!![];if(_0x4ffea8==='user-add'){const _0x5dadc8=await listRuntimeAppUsers(_0x51fc81[_0x441b78(0x1b4)]),_0x1ab0e5=_0x5dadc8[_0x441b78(0x1e6)](_0x46d5d4=>Number(_0x46d5d4['code'])===_0x39faef);if(_0x1ab0e5['length']!==0x1||!_0x1ab0e5[0x0][_0x441b78(0x1f0)]?.[_0x441b78(0x1e0)]())throw CliErrors[_0x441b78(0x1c8)](_0x441b78(0x1c7)+_0x39faef+_0x441b78(0x1f4)+_0x51fc81[_0x441b78(0x1b4)]+'.',_0x441b78(0x1e9));_0xd1dd94?(_0x2eb74f=![],_0x16cf7d[_0x441b78(0x1dc)]('User\x20'+_0x39faef+_0x441b78(0x1b6)+_0x4a09b3['id']+'.')):_0x28fa32[_0x441b78(0x1df)]['push']({'userId':_0x39faef,'username':_0x1ab0e5[0x0][_0x441b78(0x1f0)]});}else!_0xd1dd94?(_0x2eb74f=![],_0x16cf7d[_0x441b78(0x1dc)](_0x441b78(0x1bb)+_0x39faef+'\x20is\x20not\x20in\x20runtime\x20role\x20'+_0x4a09b3['id']+'.')):_0x28fa32[_0x441b78(0x1df)]=_0x28fa32['userList']['filter'](_0x43f192=>_0x43f192[_0x441b78(0x1d4)]!==_0x39faef);return{'role':_0x4a09b3,'userId':_0x39faef,'roleList':_0x5c64b3,'before':{'userIds':_0x3d1a8e},'after':{'userIds':_0x28fa32[_0x441b78(0x1df)][_0x441b78(0x1c2)](_0x2ff942=>_0x2ff942[_0x441b78(0x1d4)])},'shouldWrite':_0x2eb74f,'warnings':_0x16cf7d};}export function runtimeRoleWriteResult(_0x3170e0,_0x52e96a,_0x501fc2,_0x3c9a5a,_0x37f346,_0x323c23=[]){return{'operation':_0x3170e0,'scope':'runtime','selector':_0x52e96a,'before':_0x501fc2,'after':_0x3c9a5a,'dryRun':![],'backend':_0x37f346,'warnings':_0x323c23};}function a53_0x5b75(){const _0x393baf=['11222865ohoWtL','Runtime\x20role\x20ID\x20or\x20exact\x20role\x20name','length','\x20was\x20not\x20found\x20in\x20app\x20','test','\x22\x20was\x20not\x20found\x20in\x20app\x20','appCode','applyUserList','\x20is\x20already\x20in\x20runtime\x20role\x20','Runtime\x20role\x20name\x20\x22','Runtime\x20role\x20','Role\x20ID\x20must\x20be\x20a\x20positive\x20integer.','3FLqfiU','User\x20','3696MGiBer','Cannot\x20','36466NfBdxZ','Run\x20`lovrabet\x20role\x20list`\x20or\x20pass\x20--role\x20<id>.','998724yHPAIf','CUSTOM','map','join','Pass\x20--user\x20<userId>;\x20name\x20and\x20account\x20lookup\x20are\x20not\x20available\x20in\x20runtime\x20scope.','USER','roleName','Runtime\x20user\x20','validation','items','paging','string','user','isSafeInteger','Runtime\x20role\x20membership\x20requires\x20a\x20numeric\x20userId.','4986QumQVE','expect-user-count','Reject\x20when\x20the\x20target\x20role\x20member\x20count\x20has\x20changed','Read\x20the\x20current\x20members\x20and\x20retry\x20with\x20the\x20new\x20expected\x20count.','ADMIN','userId','totalCount','Runtime\x20userId\x20must\x20be\x20a\x20positive\x20safe\x20integer.','userCount','\x22\x20is\x20ambiguous.','3214756gOxkhg','OWNER','4054450Lstnux','push','includes','Pass\x20--role\x20<id|name>.','userList','trim','str','Runtime\x20role\x20id\x20','number','Transfer\x20or\x20manage\x20application\x20ownership\x20through\x20the\x20dedicated\x20application\x20workflow.',',\x20found\x20','filter','Reload\x20the\x20role\x20list\x20and\x20retry\x20after\x20the\x20server\x20state\x20is\x20consistent.','Runtime\x20role\x20ID\x20returned\x20by\x20role\x20list','Use\x20a\x20numeric\x20userId\x20returned\x20by\x20the\x20current\x20application\x27s\x20personnel\x20list.','num','2402656kKIKfg','roleType','Run\x20`lovrabet\x20role\x20list`\x20and\x20use\x20a\x20role\x20from\x20the\x20current\x20app.','Runtime\x20role\x20member\x20count\x20changed:\x20expected\x20','Runtime\x20numeric\x20userId','userName'];a53_0x5b75=function(){return _0x393baf;};return a53_0x5b75();}
@@ -1 +1 @@
1
- const a54_0x501f06=a54_0x1a2f;function a54_0x1a2f(_0x1089fb,_0x47d611){_0x1089fb=_0x1089fb-0x1de;const _0x1ab2e2=a54_0x1ab2();let _0x1a2f7a=_0x1ab2e2[_0x1089fb];return _0x1a2f7a;}(function(_0x40e11d,_0x467ae4){const _0x285f53=a54_0x1a2f,_0x18247c=_0x40e11d();while(!![]){try{const _0x43a7d5=-parseInt(_0x285f53(0x1fc))/0x1*(-parseInt(_0x285f53(0x1e5))/0x2)+parseInt(_0x285f53(0x1f9))/0x3+parseInt(_0x285f53(0x1fa))/0x4+parseInt(_0x285f53(0x1e9))/0x5+parseInt(_0x285f53(0x1ea))/0x6*(parseInt(_0x285f53(0x1ec))/0x7)+-parseInt(_0x285f53(0x1fb))/0x8+-parseInt(_0x285f53(0x1f5))/0x9;if(_0x43a7d5===_0x467ae4)break;else _0x18247c['push'](_0x18247c['shift']());}catch(_0x55cb4f){_0x18247c['push'](_0x18247c['shift']());}}}(a54_0x1ab2,0xa680a));import{updateRuntimeAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a54_0x1ab2(){const _0x420c88=['--remark\x20must\x20not\x20be\x20blank.','307977aUSgsB','1549856HJEGsz','5356984QOARwz','38jCqdAx','name','update','The\x20current\x20runtime\x20role\x20API\x20does\x20not\x20support\x20clearing\x20an\x20existing\x20remark.','str','POST','Pass\x20--name\x20or\x20--remark\x20to\x20update\x20the\x20runtime\x20role.','remark','/client/permit/role/update','4962xxyVoo','--name\x20must\x20not\x20be\x20blank.','role','high-risk-write','3617765qEPEKe','153444PqUDFw','body','168igaIbL','Preview:\x20update\x20a\x20runtime\x20CUSTOM\x20role','string','New\x20role\x20name','appCode','build','validation','flag','New\x20non-empty\x20role\x20remark','5131017lhghIN','修改当前运行应用中的自定义角色名称或备注;变更会立即影响角色展示。','trim'];a54_0x1ab2=function(){return _0x420c88;};return a54_0x1ab2();}import{dryRun}from'../../framework/dryrun.js';import{assertCustomRuntimeRole,getRuntimeRoleById,projectRuntimeRole,ROLE_ID_FLAG,runtimeRoleWriteResult}from'../../commands/role/shared.js';function updateFields(_0x452a32){const _0x5a8243=a54_0x1a2f,_0x134d20=_0x452a32['flag'](_0x5a8243(0x1fd))!==undefined,_0x3ed1a7=_0x452a32[_0x5a8243(0x1f3)](_0x5a8243(0x1e3))!==undefined;if(!_0x134d20&&!_0x3ed1a7)throw CliErrors[_0x5a8243(0x1f2)](_0x5a8243(0x1e2));const _0x56ebb6=_0x452a32[_0x5a8243(0x1e0)](_0x5a8243(0x1fd))[_0x5a8243(0x1f7)](),_0xc30606=_0x452a32[_0x5a8243(0x1e0)](_0x5a8243(0x1e3))[_0x5a8243(0x1f7)]();if(_0x134d20&&!_0x56ebb6)throw CliErrors['validation'](_0x5a8243(0x1e6));if(_0x3ed1a7&&!_0xc30606)throw CliErrors[_0x5a8243(0x1f2)](_0x5a8243(0x1f8),_0x5a8243(0x1df));return{..._0x134d20?{'roleName':_0x56ebb6}:{},..._0x3ed1a7?{'remark':_0xc30606}:{}};}async function prepare(_0x1e8bdd){const _0x49d6c1=a54_0x1a2f,_0x4def2b=await getRuntimeRoleById(_0x1e8bdd['appCode'],_0x1e8bdd['num']('id'));return assertCustomRuntimeRole(_0x4def2b,_0x49d6c1(0x1de)),{'role':_0x4def2b,'body':{'id':_0x4def2b['id'],'appCode':_0x1e8bdd[_0x49d6c1(0x1f0)],...updateFields(_0x1e8bdd)}};}export const roleUpdate={'service':a54_0x501f06(0x1e7),'command':a54_0x501f06(0x1de),'description':'Update\x20a\x20runtime\x20CUSTOM\x20role','risk':a54_0x501f06(0x1e8),'confirmationDescription':a54_0x501f06(0x1f6),'flags':[ROLE_ID_FLAG,{'name':a54_0x501f06(0x1fd),'type':a54_0x501f06(0x1ee),'description':a54_0x501f06(0x1ef)},{'name':a54_0x501f06(0x1e3),'type':a54_0x501f06(0x1ee),'description':a54_0x501f06(0x1f4)}],async 'validate'(_0x2b6c24){updateFields(_0x2b6c24);},async 'dryRun'(_0x2b8093){const _0x57d608=a54_0x501f06,{body:_0x477290}=await prepare(_0x2b8093);return dryRun(_0x57d608(0x1e1),_0x57d608(0x1e4))[_0x57d608(0x1eb)](_0x477290)['description'](_0x57d608(0x1ed))[_0x57d608(0x1f1)]();},async 'execute'(_0x16c063){const _0x44e1e1=a54_0x501f06,{role:_0xae7e48,body:_0x503876}=await prepare(_0x16c063),_0x1b755c=await updateRuntimeAppRole(_0x503876);return{'ok':!![],'data':runtimeRoleWriteResult(_0x44e1e1(0x1de),{'roleId':_0xae7e48['id']},projectRuntimeRole(_0xae7e48),projectRuntimeRole(_0x1b755c),{'method':_0x44e1e1(0x1e1),'path':_0x44e1e1(0x1e4)})};}};
1
+ const a54_0x2dbe45=a54_0x448f;function a54_0x2225(){const _0x7d4050=['2374056zRuMER','flag','1808695QKYfwH','Update\x20a\x20runtime\x20CUSTOM\x20role','160MqVeqD','high-risk-write','build','body','New\x20non-empty\x20role\x20remark','283364bdbCKb','10OEKLHh','update','description','3383181oSCxjF','str','trim','205401ZbcJGp','--name\x20must\x20not\x20be\x20blank.','POST','validation','1610372PmAIHW','修改当前运行应用中的自定义角色名称或备注;变更会立即影响角色展示。','Preview:\x20update\x20a\x20runtime\x20CUSTOM\x20role','role','New\x20role\x20name','/client/permit/role/update','--remark\x20must\x20not\x20be\x20blank.','remark','84918PafVlS','appCode','num','name','string','The\x20current\x20runtime\x20role\x20API\x20does\x20not\x20support\x20clearing\x20an\x20existing\x20remark.'];a54_0x2225=function(){return _0x7d4050;};return a54_0x2225();}function a54_0x448f(_0x32bf49,_0xfea4b3){_0x32bf49=_0x32bf49-0x101;const _0x2225cc=a54_0x2225();let _0x448f8f=_0x2225cc[_0x32bf49];return _0x448f8f;}(function(_0xad12aa,_0x1afd9a){const _0x4a1523=a54_0x448f,_0x21f0a2=_0xad12aa();while(!![]){try{const _0x5b11e0=parseInt(_0x4a1523(0x10d))/0x1+-parseInt(_0x4a1523(0x10e))/0x2*(parseInt(_0x4a1523(0x114))/0x3)+parseInt(_0x4a1523(0x118))/0x4+parseInt(_0x4a1523(0x108))/0x5*(-parseInt(_0x4a1523(0x120))/0x6)+-parseInt(_0x4a1523(0x106))/0x7+parseInt(_0x4a1523(0x104))/0x8+parseInt(_0x4a1523(0x111))/0x9;if(_0x5b11e0===_0x1afd9a)break;else _0x21f0a2['push'](_0x21f0a2['shift']());}catch(_0x4f06c0){_0x21f0a2['push'](_0x21f0a2['shift']());}}}(a54_0x2225,0x4a76f));import{updateRuntimeAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';import{assertCustomRuntimeRole,getRuntimeRoleById,projectRuntimeRole,ROLE_ID_FLAG,runtimeRoleWriteResult}from'../../commands/role/shared.js';function updateFields(_0x3d8c85){const _0x531149=a54_0x448f,_0x511d37=_0x3d8c85[_0x531149(0x105)](_0x531149(0x101))!==undefined,_0x382e6b=_0x3d8c85[_0x531149(0x105)](_0x531149(0x11f))!==undefined;if(!_0x511d37&&!_0x382e6b)throw CliErrors[_0x531149(0x117)]('Pass\x20--name\x20or\x20--remark\x20to\x20update\x20the\x20runtime\x20role.');const _0x24e24c=_0x3d8c85[_0x531149(0x112)](_0x531149(0x101))['trim'](),_0x4b01f5=_0x3d8c85['str'](_0x531149(0x11f))[_0x531149(0x113)]();if(_0x511d37&&!_0x24e24c)throw CliErrors['validation'](_0x531149(0x115));if(_0x382e6b&&!_0x4b01f5)throw CliErrors['validation'](_0x531149(0x11e),_0x531149(0x103));return{..._0x511d37?{'roleName':_0x24e24c}:{},..._0x382e6b?{'remark':_0x4b01f5}:{}};}async function prepare(_0x3cd863){const _0x3d23ff=a54_0x448f,_0x4b6516=await getRuntimeRoleById(_0x3cd863[_0x3d23ff(0x121)],_0x3cd863[_0x3d23ff(0x122)]('id'));return assertCustomRuntimeRole(_0x4b6516,_0x3d23ff(0x10f)),{'role':_0x4b6516,'body':{'id':_0x4b6516['id'],'appCode':_0x3cd863[_0x3d23ff(0x121)],...updateFields(_0x3cd863)}};}export const roleUpdate={'service':a54_0x2dbe45(0x11b),'command':a54_0x2dbe45(0x10f),'description':a54_0x2dbe45(0x107),'risk':a54_0x2dbe45(0x109),'confirmationDescription':a54_0x2dbe45(0x119),'flags':[ROLE_ID_FLAG,{'name':'name','type':a54_0x2dbe45(0x102),'description':a54_0x2dbe45(0x11c)},{'name':a54_0x2dbe45(0x11f),'type':a54_0x2dbe45(0x102),'description':a54_0x2dbe45(0x10c)}],async 'validate'(_0x2dfc47){updateFields(_0x2dfc47);},async 'dryRun'(_0x1b77b3){const _0x292221=a54_0x2dbe45,{body:_0x32c71c}=await prepare(_0x1b77b3);return dryRun('POST',_0x292221(0x11d))[_0x292221(0x10b)](_0x32c71c)[_0x292221(0x110)](_0x292221(0x11a))[_0x292221(0x10a)]();},async 'execute'(_0x5c7fed){const _0x454a35=a54_0x2dbe45,{role:_0x2653f4,body:_0x2b305d}=await prepare(_0x5c7fed),_0x12484a=await updateRuntimeAppRole(_0x2b305d);return{'ok':!![],'data':runtimeRoleWriteResult('update',{'roleId':_0x2653f4['id']},projectRuntimeRole(_0x2653f4),projectRuntimeRole(_0x12484a),{'method':_0x454a35(0x116),'path':_0x454a35(0x11d)})};}};
@@ -1 +1 @@
1
- const a55_0x390124=a55_0x4a3f;function a55_0x4a3f(_0x2b463d,_0x56d973){_0x2b463d=_0x2b463d-0x86;const _0x5ac73c=a55_0x5ac7();let _0x4a3f36=_0x5ac73c[_0x2b463d];return _0x4a3f36;}(function(_0x2667bd,_0x330d9c){const _0x35072c=a55_0x4a3f,_0x350ad6=_0x2667bd();while(!![]){try{const _0x57ec04=-parseInt(_0x35072c(0x87))/0x1+parseInt(_0x35072c(0x93))/0x2+parseInt(_0x35072c(0x94))/0x3+-parseInt(_0x35072c(0x86))/0x4+parseInt(_0x35072c(0x9a))/0x5+parseInt(_0x35072c(0x91))/0x6*(-parseInt(_0x35072c(0x9e))/0x7)+-parseInt(_0x35072c(0x98))/0x8;if(_0x57ec04===_0x330d9c)break;else _0x350ad6['push'](_0x350ad6['shift']());}catch(_0x3baf54){_0x350ad6['push'](_0x350ad6['shift']());}}}(a55_0x5ac7,0xbe098));function a55_0x5ac7(){const _0x436fb2=['appCode','user-add','/client/permit/user-role/update-user-list','49400GhbqIK','description','899425QirqpG','build','high-risk-write','把指定运行用户加入目标角色;该用户将获得该角色对应的运行权限。','112TiDMjo','796428GnfZgz','910379ufiCIn','POST','after','warnings','roleList','Add\x20a\x20numeric\x20userId\x20to\x20one\x20runtime\x20role','role','body','shouldWrite','Preview:\x20add\x20runtime\x20role\x20member','197130nBvTRr','userId','1594200eIqFXY','4328244edoXVC'];a55_0x5ac7=function(){return _0x436fb2;};return a55_0x5ac7();}import{updateRuntimeRoleUsers}from'../../core/api-client.js';import{dryRun}from'../../framework/dryrun.js';import{EXPECT_USER_COUNT_FLAG,prepareRuntimeMemberMutation,ROLE_REF_FLAG,runtimeRoleWriteResult,USER_ID_FLAG}from'../../commands/role/shared.js';export const roleUserAdd={'service':a55_0x390124(0x8d),'command':'user-add','description':a55_0x390124(0x8c),'risk':a55_0x390124(0x9c),'confirmationDescription':a55_0x390124(0x9d),'flags':[ROLE_REF_FLAG,USER_ID_FLAG,EXPECT_USER_COUNT_FLAG],async 'dryRun'(_0x58a105){const _0x48d096=a55_0x390124,_0x10a1c5=await prepareRuntimeMemberMutation(_0x58a105,'user-add');return dryRun(_0x48d096(0x88),_0x48d096(0x97))[_0x48d096(0x8e)]({'appCode':_0x58a105[_0x48d096(0x95)],'roleList':_0x10a1c5[_0x48d096(0x8b)]})[_0x48d096(0x99)](_0x10a1c5[_0x48d096(0x8f)]?_0x48d096(0x90):_0x10a1c5[_0x48d096(0x8a)][0x0])[_0x48d096(0x9b)]();},async 'execute'(_0x2007ea){const _0x4d42d6=a55_0x390124,_0x39da05=await prepareRuntimeMemberMutation(_0x2007ea,_0x4d42d6(0x96));return _0x39da05[_0x4d42d6(0x8f)]&&await updateRuntimeRoleUsers(_0x2007ea[_0x4d42d6(0x95)],_0x39da05[_0x4d42d6(0x8b)]),{'ok':!![],'data':runtimeRoleWriteResult('user-add',{'roleId':_0x39da05[_0x4d42d6(0x8d)]['id'],'userId':_0x39da05[_0x4d42d6(0x92)]},_0x39da05['before'],_0x39da05[_0x4d42d6(0x89)],{'method':_0x4d42d6(0x88),'path':_0x4d42d6(0x97)},_0x39da05[_0x4d42d6(0x8a)])};}};
1
+ const a55_0x129124=a55_0x2eec;(function(_0x41f104,_0x226a6e){const _0x5c9cb8=a55_0x2eec,_0x2f7c63=_0x41f104();while(!![]){try{const _0x11c60c=parseInt(_0x5c9cb8(0xcd))/0x1+parseInt(_0x5c9cb8(0xce))/0x2+-parseInt(_0x5c9cb8(0xd0))/0x3*(parseInt(_0x5c9cb8(0xc1))/0x4)+parseInt(_0x5c9cb8(0xca))/0x5*(parseInt(_0x5c9cb8(0xc2))/0x6)+parseInt(_0x5c9cb8(0xc3))/0x7*(parseInt(_0x5c9cb8(0xbf))/0x8)+-parseInt(_0x5c9cb8(0xc0))/0x9*(parseInt(_0x5c9cb8(0xcb))/0xa)+-parseInt(_0x5c9cb8(0xc9))/0xb;if(_0x11c60c===_0x226a6e)break;else _0x2f7c63['push'](_0x2f7c63['shift']());}catch(_0x42191e){_0x2f7c63['push'](_0x2f7c63['shift']());}}}(a55_0xa0d0,0xd6173));function a55_0x2eec(_0x376b32,_0x317a61){_0x376b32=_0x376b32-0xbb;const _0xa0d0c7=a55_0xa0d0();let _0x2eec8f=_0xa0d0c7[_0x376b32];return _0x2eec8f;}import{updateRuntimeRoleUsers}from'../../core/api-client.js';import{dryRun}from'../../framework/dryrun.js';import{EXPECT_USER_COUNT_FLAG,prepareRuntimeMemberMutation,ROLE_REF_FLAG,runtimeRoleWriteResult,USER_ID_FLAG}from'../../commands/role/shared.js';export const roleUserAdd={'service':a55_0x129124(0xcf),'command':a55_0x129124(0xc7),'description':a55_0x129124(0xbb),'risk':a55_0x129124(0xc6),'confirmationDescription':a55_0x129124(0xc5),'flags':[ROLE_REF_FLAG,USER_ID_FLAG,EXPECT_USER_COUNT_FLAG],async 'dryRun'(_0x21642d){const _0x169323=a55_0x129124,_0x1dce27=await prepareRuntimeMemberMutation(_0x21642d,_0x169323(0xc7));return dryRun('POST',_0x169323(0xd5))[_0x169323(0xbc)]({'appCode':_0x21642d[_0x169323(0xd3)],'roleList':_0x1dce27[_0x169323(0xbe)]})['description'](_0x1dce27[_0x169323(0xcc)]?_0x169323(0xbd):_0x1dce27['warnings'][0x0])[_0x169323(0xd4)]();},async 'execute'(_0x5baddc){const _0x2fdfbb=a55_0x129124,_0x47659d=await prepareRuntimeMemberMutation(_0x5baddc,_0x2fdfbb(0xc7));return _0x47659d[_0x2fdfbb(0xcc)]&&await updateRuntimeRoleUsers(_0x5baddc[_0x2fdfbb(0xd3)],_0x47659d[_0x2fdfbb(0xbe)]),{'ok':!![],'data':runtimeRoleWriteResult(_0x2fdfbb(0xc7),{'roleId':_0x47659d[_0x2fdfbb(0xcf)]['id'],'userId':_0x47659d['userId']},_0x47659d[_0x2fdfbb(0xc8)],_0x47659d[_0x2fdfbb(0xd1)],{'method':_0x2fdfbb(0xc4),'path':_0x2fdfbb(0xd5)},_0x47659d[_0x2fdfbb(0xd2)])};}};function a55_0xa0d0(){const _0x486e42=['Preview:\x20add\x20runtime\x20role\x20member','roleList','12653768PtztWr','6355458rIIvlY','6424CAYLXI','15378OCsika','7zGDnBV','POST','把指定运行用户加入目标角色;该用户将获得该角色对应的运行权限。','high-risk-write','user-add','before','25863849YLCDTn','2420rgMLRU','10lOFqnq','shouldWrite','297246YGBhRo','3386718RlsalQ','role','1641ETKolb','after','warnings','appCode','build','/client/permit/user-role/update-user-list','Add\x20a\x20numeric\x20userId\x20to\x20one\x20runtime\x20role','body'];a55_0xa0d0=function(){return _0x486e42;};return a55_0xa0d0();}
@@ -1 +1 @@
1
- const a56_0xa41b07=a56_0x37f8;(function(_0x598283,_0x41f029){const _0x5a0a68=a56_0x37f8,_0xa73143=_0x598283();while(!![]){try{const _0x570bd3=-parseInt(_0x5a0a68(0xa1))/0x1*(parseInt(_0x5a0a68(0xac))/0x2)+parseInt(_0x5a0a68(0xa0))/0x3+-parseInt(_0x5a0a68(0xb3))/0x4*(-parseInt(_0x5a0a68(0xae))/0x5)+parseInt(_0x5a0a68(0xa5))/0x6*(-parseInt(_0x5a0a68(0xb2))/0x7)+parseInt(_0x5a0a68(0xad))/0x8*(-parseInt(_0x5a0a68(0xab))/0x9)+-parseInt(_0x5a0a68(0xaf))/0xa*(-parseInt(_0x5a0a68(0xb7))/0xb)+parseInt(_0x5a0a68(0xa4))/0xc;if(_0x570bd3===_0x41f029)break;else _0xa73143['push'](_0xa73143['shift']());}catch(_0x2841f2){_0xa73143['push'](_0xa73143['shift']());}}}(a56_0x33ca,0x5f481));function a56_0x33ca(){const _0x155462=['55565bCwcCK','305240MmLEbo','build','userId','8806brmxZE','52KxMNfW','roleList','user-remove','POST','187QEaSpD','body','/client/permit/user-role/update-user-list','825744cvxmOv','3023sMSMgU','appCode','Remove\x20a\x20numeric\x20userId\x20from\x20one\x20runtime\x20role','4391844NzJcbW','2694glsVdS','role','before','description','shouldWrite','warnings','9YpxPIK','42IPgijl','2288112ZsYlkO'];a56_0x33ca=function(){return _0x155462;};return a56_0x33ca();}function a56_0x37f8(_0x1f6f76,_0x5a2cb4){_0x1f6f76=_0x1f6f76-0x9f;const _0x33ca49=a56_0x33ca();let _0x37f88d=_0x33ca49[_0x1f6f76];return _0x37f88d;}import{updateRuntimeRoleUsers}from'../../core/api-client.js';import{dryRun}from'../../framework/dryrun.js';import{EXPECT_USER_COUNT_FLAG,prepareRuntimeMemberMutation,ROLE_REF_FLAG,runtimeRoleWriteResult,USER_ID_FLAG}from'../../commands/role/shared.js';export const roleUserRemove={'service':'role','command':a56_0xa41b07(0xb5),'description':a56_0xa41b07(0xa3),'risk':'high-risk-write','confirmationDescription':'把指定运行用户移出目标角色;该用户将失去仅由该角色授予的运行权限。','flags':[ROLE_REF_FLAG,USER_ID_FLAG,EXPECT_USER_COUNT_FLAG],async 'dryRun'(_0x1f4635){const _0x1e8c3f=a56_0xa41b07,_0x4bf481=await prepareRuntimeMemberMutation(_0x1f4635,_0x1e8c3f(0xb5));return dryRun(_0x1e8c3f(0xb6),_0x1e8c3f(0x9f))[_0x1e8c3f(0xb8)]({'appCode':_0x1f4635[_0x1e8c3f(0xa2)],'roleList':_0x4bf481[_0x1e8c3f(0xb4)]})[_0x1e8c3f(0xa8)](_0x4bf481[_0x1e8c3f(0xa9)]?'Preview:\x20remove\x20runtime\x20role\x20member':_0x4bf481[_0x1e8c3f(0xaa)][0x0])[_0x1e8c3f(0xb0)]();},async 'execute'(_0x38a761){const _0x13ee1a=a56_0xa41b07,_0x328784=await prepareRuntimeMemberMutation(_0x38a761,_0x13ee1a(0xb5));return _0x328784['shouldWrite']&&await updateRuntimeRoleUsers(_0x38a761[_0x13ee1a(0xa2)],_0x328784[_0x13ee1a(0xb4)]),{'ok':!![],'data':runtimeRoleWriteResult(_0x13ee1a(0xb5),{'roleId':_0x328784[_0x13ee1a(0xa6)]['id'],'userId':_0x328784[_0x13ee1a(0xb1)]},_0x328784[_0x13ee1a(0xa7)],_0x328784['after'],{'method':_0x13ee1a(0xb6),'path':_0x13ee1a(0x9f)},_0x328784[_0x13ee1a(0xaa)])};}};
1
+ const a56_0x54b10f=a56_0xf552;(function(_0x2a7569,_0x5f5be8){const _0xa7471d=a56_0xf552,_0x200535=_0x2a7569();while(!![]){try{const _0x1f4dfc=-parseInt(_0xa7471d(0x17c))/0x1*(parseInt(_0xa7471d(0x18e))/0x2)+parseInt(_0xa7471d(0x18f))/0x3+parseInt(_0xa7471d(0x17a))/0x4+-parseInt(_0xa7471d(0x185))/0x5*(parseInt(_0xa7471d(0x180))/0x6)+-parseInt(_0xa7471d(0x178))/0x7+-parseInt(_0xa7471d(0x18b))/0x8+-parseInt(_0xa7471d(0x189))/0x9;if(_0x1f4dfc===_0x5f5be8)break;else _0x200535['push'](_0x200535['shift']());}catch(_0x53e0f0){_0x200535['push'](_0x200535['shift']());}}}(a56_0x2098,0x402bc));import{updateRuntimeRoleUsers}from'../../core/api-client.js';import{dryRun}from'../../framework/dryrun.js';function a56_0x2098(){const _0x36e0af=['appCode','warnings','15yjUZHw','roleList','role','POST','1752435RmKnLP','before','71808gthrOS','把指定运行用户移出目标角色;该用户将失去仅由该角色授予的运行权限。','user-remove','266SQxSPM','813021XSQFCW','description','516880NyxcuW','shouldWrite','1683912lYMQFD','after','71HljOJj','body','/client/permit/user-role/update-user-list','high-risk-write','284334eUWinQ','Preview:\x20remove\x20runtime\x20role\x20member','userId'];a56_0x2098=function(){return _0x36e0af;};return a56_0x2098();}import{EXPECT_USER_COUNT_FLAG,prepareRuntimeMemberMutation,ROLE_REF_FLAG,runtimeRoleWriteResult,USER_ID_FLAG}from'../../commands/role/shared.js';function a56_0xf552(_0x476669,_0x3732cd){_0x476669=_0x476669-0x178;const _0x2098fe=a56_0x2098();let _0xf55277=_0x2098fe[_0x476669];return _0xf55277;}export const roleUserRemove={'service':a56_0x54b10f(0x187),'command':a56_0x54b10f(0x18d),'description':'Remove\x20a\x20numeric\x20userId\x20from\x20one\x20runtime\x20role','risk':a56_0x54b10f(0x17f),'confirmationDescription':a56_0x54b10f(0x18c),'flags':[ROLE_REF_FLAG,USER_ID_FLAG,EXPECT_USER_COUNT_FLAG],async 'dryRun'(_0x40531c){const _0x237a92=a56_0x54b10f,_0x1aad1a=await prepareRuntimeMemberMutation(_0x40531c,_0x237a92(0x18d));return dryRun(_0x237a92(0x188),_0x237a92(0x17e))[_0x237a92(0x17d)]({'appCode':_0x40531c[_0x237a92(0x183)],'roleList':_0x1aad1a['roleList']})[_0x237a92(0x190)](_0x1aad1a[_0x237a92(0x179)]?_0x237a92(0x181):_0x1aad1a[_0x237a92(0x184)][0x0])['build']();},async 'execute'(_0x1cbcb1){const _0x3ab3c2=a56_0x54b10f,_0x4b47de=await prepareRuntimeMemberMutation(_0x1cbcb1,_0x3ab3c2(0x18d));return _0x4b47de['shouldWrite']&&await updateRuntimeRoleUsers(_0x1cbcb1[_0x3ab3c2(0x183)],_0x4b47de[_0x3ab3c2(0x186)]),{'ok':!![],'data':runtimeRoleWriteResult(_0x3ab3c2(0x18d),{'roleId':_0x4b47de['role']['id'],'userId':_0x4b47de[_0x3ab3c2(0x182)]},_0x4b47de[_0x3ab3c2(0x18a)],_0x4b47de[_0x3ab3c2(0x17b)],{'method':_0x3ab3c2(0x188),'path':_0x3ab3c2(0x17e)},_0x4b47de[_0x3ab3c2(0x184)])};}};