@lovrabet/lovrabet-cli 2.2.7 → 2.3.0-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) 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.d.ts +1 -1
  20. package/lib/commands/common/config-policy.js +1 -1
  21. package/lib/commands/common/constraints.js +1 -1
  22. package/lib/commands/common/flags.js +1 -1
  23. package/lib/commands/common/local-file.js +1 -1
  24. package/lib/commands/config/definitions.js +1 -1
  25. package/lib/commands/config/init.d.ts +12 -0
  26. package/lib/commands/config/init.js +1 -0
  27. package/lib/commands/config/shared.d.ts +1 -1
  28. package/lib/commands/config/shared.js +1 -1
  29. package/lib/commands/data/index.js +1 -1
  30. package/lib/commands/dataset/detail.js +1 -1
  31. package/lib/commands/dataset/index.js +1 -1
  32. package/lib/commands/dataset/list.js +1 -1
  33. package/lib/commands/dataset/sdk-doc.js +1 -1
  34. package/lib/commands/doctor.js +1 -1
  35. package/lib/commands/file/index.js +1 -1
  36. package/lib/commands/init.js +1 -1
  37. package/lib/commands/kb/index.js +1 -1
  38. package/lib/commands/logs/index.js +1 -1
  39. package/lib/commands/notification/config-list.js +1 -1
  40. package/lib/commands/notification/index.js +1 -1
  41. package/lib/commands/notification/shared.js +1 -1
  42. package/lib/commands/ocr/index.js +1 -1
  43. package/lib/commands/permit/dataset-get.js +1 -1
  44. package/lib/commands/permit/dataset-set.js +1 -1
  45. package/lib/commands/permit/index.js +1 -1
  46. package/lib/commands/permit/page-get.js +1 -1
  47. package/lib/commands/permit/page-set.js +1 -1
  48. package/lib/commands/permit/role-menus-set.js +1 -1
  49. package/lib/commands/permit/role-menus.js +1 -1
  50. package/lib/commands/permit/shared.js +1 -1
  51. package/lib/commands/personal-bff/index.js +1 -1
  52. package/lib/commands/registry.js +1 -1
  53. package/lib/commands/role/create.js +1 -1
  54. package/lib/commands/role/delete.js +1 -1
  55. package/lib/commands/role/detail.js +1 -1
  56. package/lib/commands/role/index.js +1 -1
  57. package/lib/commands/role/list.js +1 -1
  58. package/lib/commands/role/shared.js +1 -1
  59. package/lib/commands/role/update.js +1 -1
  60. package/lib/commands/role/user-add.js +1 -1
  61. package/lib/commands/role/user-remove.js +1 -1
  62. package/lib/commands/schedule/index.js +1 -1
  63. package/lib/commands/schema.js +1 -1
  64. package/lib/commands/service/dynamic.js +1 -1
  65. package/lib/commands/service/function-name-adapter.js +1 -1
  66. package/lib/commands/service/index.js +1 -1
  67. package/lib/commands/service/registry.js +1 -1
  68. package/lib/commands/skill/commands/create.js +1 -1
  69. package/lib/commands/skill/commands/diagram.js +1 -1
  70. package/lib/commands/skill/commands/install.js +1 -1
  71. package/lib/commands/skill/commands/list.js +1 -1
  72. package/lib/commands/skill/commands/push.js +1 -1
  73. package/lib/commands/skill/commands/validate.js +1 -1
  74. package/lib/commands/skill/diagram.js +1 -1
  75. package/lib/commands/skill/flags.js +1 -1
  76. package/lib/commands/skill/index.js +1 -1
  77. package/lib/commands/skill/manifest-helpers.js +1 -1
  78. package/lib/commands/skill/push-execute.js +1 -1
  79. package/lib/commands/skill/push-flow-helpers.js +1 -1
  80. package/lib/commands/skill/push-retarget.js +1 -1
  81. package/lib/commands/skill/scopes.js +1 -1
  82. package/lib/commands/skill/summary.js +1 -1
  83. package/lib/commands/skill/templates.js +1 -1
  84. package/lib/commands/skill/validate.js +1 -1
  85. package/lib/commands/sql/detail.js +1 -1
  86. package/lib/commands/sql/exec.js +1 -1
  87. package/lib/commands/sql/index.js +1 -1
  88. package/lib/commands/update.js +1 -1
  89. package/lib/commands/user-account/bind.js +1 -1
  90. package/lib/commands/user-account/index.js +1 -1
  91. package/lib/commands/workspace/index.js +1 -1
  92. package/lib/config/domain-config.d.ts +11 -0
  93. package/lib/config/domain-config.js +1 -0
  94. package/lib/config/schema.d.ts +7 -1
  95. package/lib/config/schema.js +1 -1
  96. package/lib/constant/app.js +1 -1
  97. package/lib/constant/auth-mode.js +1 -1
  98. package/lib/constant/cli.js +1 -1
  99. package/lib/constant/defaults.js +1 -1
  100. package/lib/constant/distribution.d.ts +4 -0
  101. package/lib/constant/distribution.js +1 -1
  102. package/lib/constant/domain.d.ts +10 -3
  103. package/lib/constant/domain.js +1 -1
  104. package/lib/constant/env.js +1 -1
  105. package/lib/constant/output.js +1 -1
  106. package/lib/constant/product.d.ts +52 -14
  107. package/lib/constant/product.js +1 -1
  108. package/lib/constant/region.d.ts +15 -0
  109. package/lib/constant/region.js +1 -0
  110. package/lib/constant/risk.js +1 -1
  111. package/lib/constant/url.d.ts +2 -0
  112. package/lib/constant/url.js +1 -1
  113. package/lib/context.d.ts +2 -6
  114. package/lib/context.js +1 -1
  115. package/lib/core/api-client.js +1 -1
  116. package/lib/core/db-resolver.js +1 -1
  117. package/lib/core/sdk-client.d.ts +2 -0
  118. package/lib/core/sdk-client.js +1 -1
  119. package/lib/errors.js +1 -1
  120. package/lib/framework/build-all-flags.js +1 -1
  121. package/lib/framework/dryrun.js +1 -1
  122. package/lib/framework/flags.js +1 -1
  123. package/lib/framework/help.js +1 -1
  124. package/lib/framework/index.js +1 -1
  125. package/lib/framework/output.js +1 -1
  126. package/lib/framework/preparse.js +1 -1
  127. package/lib/framework/rate-limit.js +1 -1
  128. package/lib/framework/raw-flags.js +1 -1
  129. package/lib/framework/response.js +1 -1
  130. package/lib/framework/runner-confirmation.js +1 -1
  131. package/lib/framework/runner-error.js +1 -1
  132. package/lib/framework/runner.d.ts +3 -1
  133. package/lib/framework/runner.js +1 -1
  134. package/lib/framework/schema-export.js +1 -1
  135. package/lib/framework/service-order.js +1 -1
  136. package/lib/framework/types.js +1 -1
  137. package/lib/generated/build-info.d.ts +4 -4
  138. package/lib/generated/build-info.js +1 -1
  139. package/lib/help.js +1 -1
  140. package/lib/postinstall.js +1 -1
  141. package/lib/runtime/confirmation.js +1 -1
  142. package/lib/runtime/event.js +1 -1
  143. package/lib/runtime/index.js +1 -1
  144. package/lib/runtime/queue.js +1 -1
  145. package/lib/runtime/resolve.js +1 -1
  146. package/lib/skills/builtin-skill.js +1 -1
  147. package/lib/skills/npx-skills-add.js +1 -1
  148. package/lib/skills/runtime-skill-sync/constants.js +1 -1
  149. package/lib/skills/runtime-skill-sync/fs-utils.js +1 -1
  150. package/lib/skills/runtime-skill-sync/hashing.js +1 -1
  151. package/lib/skills/runtime-skill-sync/install-target.js +1 -1
  152. package/lib/skills/runtime-skill-sync/links.js +1 -1
  153. package/lib/skills/runtime-skill-sync/list-local.js +1 -1
  154. package/lib/skills/runtime-skill-sync/local-files.js +1 -1
  155. package/lib/skills/runtime-skill-sync/materialize.js +1 -1
  156. package/lib/skills/runtime-skill-sync/metadata.js +1 -1
  157. package/lib/skills/runtime-skill-sync/paths.js +1 -1
  158. package/lib/skills/runtime-skill-sync/push.js +1 -1
  159. package/lib/skills/runtime-skill-sync/scopes.js +1 -1
  160. package/lib/skills/runtime-skill-sync/zip-codec.js +1 -1
  161. package/lib/skills/runtime-skill-sync/zip-package.js +1 -1
  162. package/lib/skills/runtime-skill-sync.js +1 -1
  163. package/lib/skills/skill-presence.js +1 -1
  164. package/lib/utils/access-key-redaction.d.ts +15 -0
  165. package/lib/utils/access-key-redaction.js +1 -0
  166. package/lib/utils/apply-jq-filter.js +1 -1
  167. package/lib/utils/cli-version-check.d.ts +12 -0
  168. package/lib/utils/cli-version-check.js +1 -0
  169. package/lib/utils/cli-version-policy.d.ts +12 -0
  170. package/lib/utils/cli-version-policy.js +1 -0
  171. package/lib/utils/logger.js +1 -1
  172. package/lib/utils/lossless-json.js +1 -1
  173. package/lib/utils/params.js +1 -1
  174. package/lib/utils/platform.js +1 -1
  175. package/lib/utils/update-notice.d.ts +2 -1
  176. package/lib/utils/update-notice.js +1 -1
  177. package/lib/utils/version.js +1 -1
  178. package/lib/utils/write-cli-side-channel.js +1 -1
  179. package/package.json +3 -1
  180. package/skills/lovrabet/SKILL.md +11 -12
  181. package/skills/lovrabet/guides/troubleshooting.md +12 -8
  182. package/skills/lovrabet/references/lovrabet-app.md +1 -1
  183. package/skills/lovrabet/references/lovrabet-auth.md +7 -25
  184. package/skills/lovrabet/references/lovrabet-config-commands.md +42 -5
  185. package/skills/lovrabet/references/lovrabet-config.md +25 -5
  186. package/skills/lovrabet.manifest.json +3 -3
@@ -1 +1 @@
1
- function a39_0x52e0(){const _0x2fd533=['\x20selected\x20runtime\x20dataset\x20actions','after','operation','2258735uKfins','1304mgvnek','appCode','length','grant','warnings','resourceName','授予或收回目标角色对指定数据集动作的权限;变更会影响该角色用户的数据操作能力。','POST','Grant\x20or\x20revoke\x20selected\x20runtime\x20dataset\x20actions\x20for\x20one\x20role','roles','dataset-set','datasets','\x20does\x20not\x20expose\x20','rolePermit','high-risk-write','find','Runtime\x20dataset\x20','14031gYeUtE','before','11539SNYoKK','actions','DATA_EXPORT','permit','resourceType','join','permitId','551468FRjHet','bool','description','Comma-separated\x20actions:\x20','changed','1uIKeoI','DATA_DETAIL','datasetCodes','string','866694HHfvTk','\x20already\x20reflects\x20','DATA_ROW','10490MsMWMH','2085853iEENCi','2674680BOcPwv','includes','push','str','DATA_CREATE','Comma-separated\x20runtime\x20dataset\x20codes','toUpperCase','revoke','map','DATA_DELETE','3fTUDRK','datasetCode','permitList'];a39_0x52e0=function(){return _0x2fd533;};return a39_0x52e0();}const a39_0x317276=a39_0x2f95;function a39_0x2f95(_0x50e6ae,_0x2fce9c){_0x50e6ae=_0x50e6ae-0x122;const _0x52e043=a39_0x52e0();let _0x2f9558=_0x52e043[_0x50e6ae];return _0x2f9558;}(function(_0x37b3ab,_0x5abaeb){const _0x518d48=a39_0x2f95,_0x3a9965=_0x37b3ab();while(!![]){try{const _0x5c6b83=parseInt(_0x518d48(0x13f))/0x1*(-parseInt(_0x518d48(0x143))/0x2)+-parseInt(_0x518d48(0x152))/0x3*(-parseInt(_0x518d48(0x13a))/0x4)+-parseInt(_0x518d48(0x158))/0x5+parseInt(_0x518d48(0x148))/0x6+-parseInt(_0x518d48(0x147))/0x7+-parseInt(_0x518d48(0x159))/0x8*(parseInt(_0x518d48(0x131))/0x9)+parseInt(_0x518d48(0x146))/0xa*(parseInt(_0x518d48(0x133))/0xb);if(_0x5c6b83===_0x5abaeb)break;else _0x3a9965['push'](_0x3a9965['shift']());}catch(_0x4807b9){_0x3a9965['push'](_0x3a9965['shift']());}}}(a39_0x52e0,0x3c44a));import{listRuntimeDatasetRolePermits,listRuntimePermitRoles,saveRuntimeDatasetRolePermits}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,GRANT_FLAG,REVOKE_FLAG,ROLE_REF_FLAG,runtimePermitWriteResult,splitRefs}from'../../commands/permit/shared.js';const DATA_ACTIONS=[a39_0x317276(0x14c),'DATA_UPDATE',a39_0x317276(0x151),a39_0x317276(0x140),a39_0x317276(0x135),a39_0x317276(0x145)],DATASETS_FLAG={'name':a39_0x317276(0x12b),'type':a39_0x317276(0x142),'required':!![],'description':a39_0x317276(0x14d)},ACTIONS_FLAG={'name':'actions','type':a39_0x317276(0x142),'required':!![],'description':a39_0x317276(0x13d)+DATA_ACTIONS[a39_0x317276(0x138)](',\x20')};async function prepare(_0x5b8c82){const _0x1a51d8=a39_0x317276;await assertRuntimePermissionManager(_0x5b8c82[_0x1a51d8(0x15a)]);const _0xf5a378=assertGrantOrRevoke(_0x5b8c82['bool'](_0x1a51d8(0x123)),_0x5b8c82[_0x1a51d8(0x13b)]('revoke')),_0x5d8054=await resolveRuntimeRoleRef(_0x5b8c82[_0x1a51d8(0x15a)],_0x5b8c82[_0x1a51d8(0x14b)]('role'));assertRuntimePermitRoleConfigurable(_0x5d8054);const _0x51076f=splitRefs(_0x5b8c82[_0x1a51d8(0x14b)](_0x1a51d8(0x12b)),'--datasets'),_0x4a9d97=[...new Set(splitRefs(_0x5b8c82['str'](_0x1a51d8(0x134)),'--actions')[_0x1a51d8(0x150)](_0x4abde7=>_0x4abde7[_0x1a51d8(0x14e)]()))],_0x17f191=_0x4a9d97['filter'](_0x272884=>!DATA_ACTIONS[_0x1a51d8(0x149)](_0x272884));if(_0x17f191[_0x1a51d8(0x122)]>0x0)throw CliErrors['validation']('Invalid\x20dataset\x20actions:\x20'+_0x17f191['join'](',\x20')+'.');const _0x4c8796=await listRuntimeDatasetRolePermits(_0x5b8c82[_0x1a51d8(0x15a)]),_0x3a8964=await listRuntimePermitRoles(_0x5b8c82[_0x1a51d8(0x15a)]),_0x3c075b=[],_0x38d3c7=[],_0x17f061=[],_0x33a558=[];for(const _0x21d420 of _0x51076f){const _0x1eefaf=_0x4c8796[_0x1a51d8(0x12f)](_0x1f4c00=>_0x1f4c00[_0x1a51d8(0x153)]===_0x21d420);if(!_0x1eefaf)throw CliErrors['validation'](_0x1a51d8(0x130)+_0x21d420+'\x20was\x20not\x20found.');for(const _0x2b868b of _0x4a9d97){const _0x17c3b0=_0x1eefaf['dataPermitList'][_0x1a51d8(0x12f)](_0x512c29=>_0x512c29[_0x1a51d8(0x137)]===_0x2b868b);if(!_0x17c3b0)throw CliErrors['validation']('Dataset\x20'+_0x21d420+_0x1a51d8(0x12c)+_0x2b868b+'.');const _0x73843d=applyRuntimeRolePermission(_0x17c3b0[_0x1a51d8(0x12d)],_0x5d8054,_0x3a8964,_0xf5a378);_0x38d3c7[_0x1a51d8(0x14a)]({'datasetCode':_0x21d420,'resourceType':_0x2b868b,'rolePermit':_0x17c3b0['rolePermit']}),_0x17f061[_0x1a51d8(0x14a)]({'datasetCode':_0x21d420,'resourceType':_0x2b868b,'rolePermit':_0x73843d[_0x1a51d8(0x129)]}),_0x73843d[_0x1a51d8(0x13e)]?_0x3c075b[_0x1a51d8(0x14a)]({..._0x17c3b0[_0x1a51d8(0x139)]!=null?{'id':_0x17c3b0[_0x1a51d8(0x139)]}:{},'appCode':_0x5b8c82[_0x1a51d8(0x15a)],'resourceCode':_0x21d420,'resourceType':_0x2b868b,'resourceName':_0x17c3b0[_0x1a51d8(0x125)],'rolePermit':_0x73843d[_0x1a51d8(0x129)]}):_0x33a558[_0x1a51d8(0x14a)](_0x21d420+'/'+_0x2b868b+_0x1a51d8(0x144)+_0xf5a378+'\x20for\x20role\x20'+_0x5d8054['id']+'.');}}return{'operation':_0xf5a378,'role':_0x5d8054,'datasetCodes':_0x51076f,'actions':_0x4a9d97,'permitList':_0x3c075b,'before':_0x38d3c7,'after':_0x17f061,'warnings':_0x33a558};}export const permitDatasetSet={'service':a39_0x317276(0x136),'command':a39_0x317276(0x12a),'description':a39_0x317276(0x128),'risk':a39_0x317276(0x12e),'confirmationDescription':a39_0x317276(0x126),'flags':[ROLE_REF_FLAG,GRANT_FLAG,REVOKE_FLAG,DATASETS_FLAG,ACTIONS_FLAG],async 'validate'(_0x4bf6e3){const _0x3545db=a39_0x317276;assertGrantOrRevoke(_0x4bf6e3['bool']('grant'),_0x4bf6e3[_0x3545db(0x13b)](_0x3545db(0x14f)));},async 'dryRun'(_0x5df1cd){const _0x5b1747=a39_0x317276,_0x1ab990=await prepare(_0x5df1cd);return dryRun(_0x5b1747(0x127),'/client/permit/resource/batch-save-dataset')['body']({'appCode':_0x5df1cd[_0x5b1747(0x15a)],'permitList':_0x1ab990['permitList']})[_0x5b1747(0x13c)]('Preview:\x20'+_0x1ab990[_0x5b1747(0x157)]+_0x5b1747(0x155))['build']();},async 'execute'(_0x541e48){const _0x5375aa=a39_0x317276,_0x5edfb3=await prepare(_0x541e48);return _0x5edfb3[_0x5375aa(0x154)][_0x5375aa(0x122)]>0x0&&await saveRuntimeDatasetRolePermits(_0x541e48[_0x5375aa(0x15a)],_0x5edfb3[_0x5375aa(0x154)]),{'ok':!![],'data':runtimePermitWriteResult('dataset-'+_0x5edfb3['operation'],{'roleId':_0x5edfb3['role']['id'],'datasetCodes':_0x5edfb3[_0x5375aa(0x141)],'actions':_0x5edfb3['actions']},_0x5edfb3[_0x5375aa(0x132)],_0x5edfb3[_0x5375aa(0x156)],{'method':_0x5375aa(0x127),'path':'/client/permit/resource/batch-save-dataset'},_0x5edfb3[_0x5375aa(0x124)])};}};
1
+ const a40_0x2a2348=a40_0x306a;(function(_0x1d1ec4,_0x48894d){const _0x4fbb66=a40_0x306a,_0x4302f5=_0x1d1ec4();while(!![]){try{const _0xf4dd1a=parseInt(_0x4fbb66(0x16e))/0x1*(-parseInt(_0x4fbb66(0x146))/0x2)+parseInt(_0x4fbb66(0x156))/0x3*(parseInt(_0x4fbb66(0x153))/0x4)+parseInt(_0x4fbb66(0x159))/0x5+parseInt(_0x4fbb66(0x133))/0x6*(-parseInt(_0x4fbb66(0x13a))/0x7)+parseInt(_0x4fbb66(0x161))/0x8+-parseInt(_0x4fbb66(0x132))/0x9*(-parseInt(_0x4fbb66(0x147))/0xa)+-parseInt(_0x4fbb66(0x130))/0xb;if(_0xf4dd1a===_0x48894d)break;else _0x4302f5['push'](_0x4302f5['shift']());}catch(_0x586c86){_0x4302f5['push'](_0x4302f5['shift']());}}}(a40_0x21a4,0xe4adb));function a40_0x21a4(){const _0x272b5a=['3662682Faqgnh','9016090lYvRmX','\x20does\x20not\x20expose\x20','DATA_UPDATE','Dataset\x20','after','validation','find','Runtime\x20dataset\x20','--datasets','Grants\x20or\x20revokes\x20the\x20target\x20role\x20permission\x20for\x20the\x20given\x20dataset\x20actions.\x20Data\x20operations\x20for\x20users\x20in\x20that\x20role\x20will\x20change.','string','revoke','48936jgRwwv','rolePermit','permitList','180eUlHBv','DATA_CREATE','build','4676360DJznvs','includes','body','description','before','length','join','actions','7826272xmNzZl','\x20already\x20reflects\x20','datasetCodes','dataPermitList','toUpperCase','/client/permit/resource/batch-save-dataset','push','permitId','DATA_ROW','role','Invalid\x20dataset\x20actions:\x20','permit','datasetCode','1UMqNNo','POST','2303774gjDXQD','\x20selected\x20runtime\x20dataset\x20actions','9lmQQxr','426rnryhy','Grant\x20or\x20revoke\x20selected\x20runtime\x20dataset\x20actions\x20for\x20one\x20role','DATA_DELETE','\x20was\x20not\x20found.','map','high-risk-write','appCode','56371PIznTn','datasets','Comma-separated\x20actions:\x20','str','dataset-set','Comma-separated\x20runtime\x20dataset\x20codes','\x20for\x20role\x20','operation','roles','resourceName','resourceType','bool'];a40_0x21a4=function(){return _0x272b5a;};return a40_0x21a4();}import{listRuntimeDatasetRolePermits,listRuntimePermitRoles,saveRuntimeDatasetRolePermits}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';import{resolveRuntimeRoleRef}from'../../commands/role/shared.js';function a40_0x306a(_0x24b376,_0x3369c2){_0x24b376=_0x24b376-0x12f;const _0x21a414=a40_0x21a4();let _0x306a52=_0x21a414[_0x24b376];return _0x306a52;}import{applyRuntimeRolePermission,assertGrantOrRevoke,assertRuntimePermissionManager,assertRuntimePermitRoleConfigurable,GRANT_FLAG,REVOKE_FLAG,ROLE_REF_FLAG,runtimePermitWriteResult,splitRefs}from'../../commands/permit/shared.js';const DATA_ACTIONS=[a40_0x2a2348(0x157),a40_0x2a2348(0x149),a40_0x2a2348(0x135),'DATA_DETAIL','DATA_EXPORT',a40_0x2a2348(0x169)],DATASETS_FLAG={'name':a40_0x2a2348(0x13b),'type':a40_0x2a2348(0x151),'required':!![],'description':a40_0x2a2348(0x13f)},ACTIONS_FLAG={'name':a40_0x2a2348(0x160),'type':a40_0x2a2348(0x151),'required':!![],'description':a40_0x2a2348(0x13c)+DATA_ACTIONS[a40_0x2a2348(0x15f)](',\x20')};async function prepare(_0xd6be30){const _0x33dc34=a40_0x2a2348;await assertRuntimePermissionManager(_0xd6be30[_0x33dc34(0x139)]);const _0x5315e2=assertGrantOrRevoke(_0xd6be30[_0x33dc34(0x145)]('grant'),_0xd6be30[_0x33dc34(0x145)](_0x33dc34(0x152))),_0x432663=await resolveRuntimeRoleRef(_0xd6be30[_0x33dc34(0x139)],_0xd6be30['str']('role'));assertRuntimePermitRoleConfigurable(_0x432663);const _0x33634c=splitRefs(_0xd6be30[_0x33dc34(0x13d)](_0x33dc34(0x13b)),_0x33dc34(0x14f)),_0x480537=[...new Set(splitRefs(_0xd6be30[_0x33dc34(0x13d)]('actions'),'--actions')[_0x33dc34(0x137)](_0x455976=>_0x455976[_0x33dc34(0x165)]()))],_0x456f7e=_0x480537['filter'](_0x43faf9=>!DATA_ACTIONS[_0x33dc34(0x15a)](_0x43faf9));if(_0x456f7e[_0x33dc34(0x15e)]>0x0)throw CliErrors['validation'](_0x33dc34(0x16b)+_0x456f7e['join'](',\x20')+'.');const _0x4b07b8=await listRuntimeDatasetRolePermits(_0xd6be30[_0x33dc34(0x139)]),_0x44514b=await listRuntimePermitRoles(_0xd6be30[_0x33dc34(0x139)]),_0x43f033=[],_0xa50e92=[],_0x46a8d2=[],_0xcae596=[];for(const _0x53b29f of _0x33634c){const _0x11a902=_0x4b07b8[_0x33dc34(0x14d)](_0x5b6b91=>_0x5b6b91[_0x33dc34(0x16d)]===_0x53b29f);if(!_0x11a902)throw CliErrors['validation'](_0x33dc34(0x14e)+_0x53b29f+_0x33dc34(0x136));for(const _0x2516d5 of _0x480537){const _0x12aa4d=_0x11a902[_0x33dc34(0x164)][_0x33dc34(0x14d)](_0x51e5a0=>_0x51e5a0[_0x33dc34(0x144)]===_0x2516d5);if(!_0x12aa4d)throw CliErrors[_0x33dc34(0x14c)](_0x33dc34(0x14a)+_0x53b29f+_0x33dc34(0x148)+_0x2516d5+'.');const _0x16770e=applyRuntimeRolePermission(_0x12aa4d[_0x33dc34(0x154)],_0x432663,_0x44514b,_0x5315e2);_0xa50e92['push']({'datasetCode':_0x53b29f,'resourceType':_0x2516d5,'rolePermit':_0x12aa4d['rolePermit']}),_0x46a8d2[_0x33dc34(0x167)]({'datasetCode':_0x53b29f,'resourceType':_0x2516d5,'rolePermit':_0x16770e[_0x33dc34(0x142)]}),_0x16770e['changed']?_0x43f033['push']({..._0x12aa4d[_0x33dc34(0x168)]!=null?{'id':_0x12aa4d['permitId']}:{},'appCode':_0xd6be30[_0x33dc34(0x139)],'resourceCode':_0x53b29f,'resourceType':_0x2516d5,'resourceName':_0x12aa4d[_0x33dc34(0x143)],'rolePermit':_0x16770e[_0x33dc34(0x142)]}):_0xcae596[_0x33dc34(0x167)](_0x53b29f+'/'+_0x2516d5+_0x33dc34(0x162)+_0x5315e2+_0x33dc34(0x140)+_0x432663['id']+'.');}}return{'operation':_0x5315e2,'role':_0x432663,'datasetCodes':_0x33634c,'actions':_0x480537,'permitList':_0x43f033,'before':_0xa50e92,'after':_0x46a8d2,'warnings':_0xcae596};}export const permitDatasetSet={'service':a40_0x2a2348(0x16c),'command':a40_0x2a2348(0x13e),'description':a40_0x2a2348(0x134),'risk':a40_0x2a2348(0x138),'confirmationDescription':a40_0x2a2348(0x150),'flags':[ROLE_REF_FLAG,GRANT_FLAG,REVOKE_FLAG,DATASETS_FLAG,ACTIONS_FLAG],async 'validate'(_0x1bde07){const _0x33b565=a40_0x2a2348;assertGrantOrRevoke(_0x1bde07['bool']('grant'),_0x1bde07['bool'](_0x33b565(0x152)));},async 'dryRun'(_0x1e7bb1){const _0x3cef1b=a40_0x2a2348,_0x25eda1=await prepare(_0x1e7bb1);return dryRun('POST',_0x3cef1b(0x166))[_0x3cef1b(0x15b)]({'appCode':_0x1e7bb1[_0x3cef1b(0x139)],'permitList':_0x25eda1[_0x3cef1b(0x155)]})[_0x3cef1b(0x15c)]('Preview:\x20'+_0x25eda1['operation']+_0x3cef1b(0x131))[_0x3cef1b(0x158)]();},async 'execute'(_0x5436a5){const _0x470795=a40_0x2a2348,_0x4c002c=await prepare(_0x5436a5);return _0x4c002c[_0x470795(0x155)][_0x470795(0x15e)]>0x0&&await saveRuntimeDatasetRolePermits(_0x5436a5[_0x470795(0x139)],_0x4c002c[_0x470795(0x155)]),{'ok':!![],'data':runtimePermitWriteResult('dataset-'+_0x4c002c[_0x470795(0x141)],{'roleId':_0x4c002c[_0x470795(0x16a)]['id'],'datasetCodes':_0x4c002c[_0x470795(0x163)],'actions':_0x4c002c[_0x470795(0x160)]},_0x4c002c[_0x470795(0x15d)],_0x4c002c[_0x470795(0x14b)],{'method':_0x470795(0x12f),'path':_0x470795(0x166)},_0x4c002c['warnings'])};}};
@@ -1 +1 @@
1
- function a40_0x100e(_0x1bff85,_0x4c44e3){_0x1bff85=_0x1bff85-0x9a;const _0x375aee=a40_0x375a();let _0x100eb2=_0x375aee[_0x1bff85];return _0x100eb2;}(function(_0x7d3885,_0x275dd4){const _0x50cd02=a40_0x100e,_0x282287=_0x7d3885();while(!![]){try{const _0x14339c=-parseInt(_0x50cd02(0xa4))/0x1*(-parseInt(_0x50cd02(0x9a))/0x2)+parseInt(_0x50cd02(0xa5))/0x3*(-parseInt(_0x50cd02(0xa2))/0x4)+parseInt(_0x50cd02(0x9e))/0x5*(-parseInt(_0x50cd02(0xa0))/0x6)+parseInt(_0x50cd02(0x9c))/0x7*(parseInt(_0x50cd02(0x9f))/0x8)+-parseInt(_0x50cd02(0xa6))/0x9*(-parseInt(_0x50cd02(0x9b))/0xa)+parseInt(_0x50cd02(0x9d))/0xb*(-parseInt(_0x50cd02(0xa1))/0xc)+parseInt(_0x50cd02(0xa3))/0xd;if(_0x14339c===_0x275dd4)break;else _0x282287['push'](_0x282287['shift']());}catch(_0x4d07c8){_0x282287['push'](_0x282287['shift']());}}}(a40_0x375a,0xee8af));import{permitPageGet}from'../../commands/permit/page-get.js';import{permitPageSet}from'../../commands/permit/page-set.js';import{permitRoleMenus}from'../../commands/permit/role-menus.js';import{permitRoleMenusSet}from'../../commands/permit/role-menus-set.js';function a40_0x375a(){const _0x825298=['4203FHxiHM','9NNxQrx','2185762VYEeoa','7537340WJNdPI','681772WYHdRy','12494317unuKXo','55sKCpmw','8zYONgF','595416OSjgSn','12ZXcgyk','3004StoMVH','30064502BgQTfu','1CAGmMs'];a40_0x375a=function(){return _0x825298;};return a40_0x375a();}import{permitDatasetGet}from'../../commands/permit/dataset-get.js';import{permitDatasetSet}from'../../commands/permit/dataset-set.js';export const permitDefinitions=[permitPageGet,permitPageSet,permitRoleMenus,permitRoleMenusSet,permitDatasetGet,permitDatasetSet];
1
+ function a41_0x49cc(_0x1c2abe,_0x312510){_0x1c2abe=_0x1c2abe-0xf2;const _0x2d63f6=a41_0x2d63();let _0x49ccd6=_0x2d63f6[_0x1c2abe];return _0x49ccd6;}(function(_0x3cd2e2,_0x1691cf){const _0x12243b=a41_0x49cc,_0x566fe6=_0x3cd2e2();while(!![]){try{const _0x3cff39=-parseInt(_0x12243b(0xfa))/0x1+parseInt(_0x12243b(0xf5))/0x2+parseInt(_0x12243b(0xfb))/0x3*(-parseInt(_0x12243b(0xf8))/0x4)+-parseInt(_0x12243b(0xf4))/0x5*(-parseInt(_0x12243b(0xf7))/0x6)+parseInt(_0x12243b(0xf3))/0x7+parseInt(_0x12243b(0xf2))/0x8*(-parseInt(_0x12243b(0xf9))/0x9)+-parseInt(_0x12243b(0xf6))/0xa;if(_0x3cff39===_0x1691cf)break;else _0x566fe6['push'](_0x566fe6['shift']());}catch(_0x467e10){_0x566fe6['push'](_0x566fe6['shift']());}}}(a41_0x2d63,0xd7a96));import{permitPageGet}from'../../commands/permit/page-get.js';import{permitPageSet}from'../../commands/permit/page-set.js';import{permitRoleMenus}from'../../commands/permit/role-menus.js';import{permitRoleMenusSet}from'../../commands/permit/role-menus-set.js';import{permitDatasetGet}from'../../commands/permit/dataset-get.js';import{permitDatasetSet}from'../../commands/permit/dataset-set.js';export const permitDefinitions=[permitPageGet,permitPageSet,permitRoleMenus,permitRoleMenusSet,permitDatasetGet,permitDatasetSet];function a41_0x2d63(){const _0x10ae68=['13197fZgSCJ','464jUHQos','9458232YmbhYG','220xFfGON','2659480owGRLZ','8633660VsUaug','91566RJRRcX','224zgsFhD','17757kstzWC','1244906Mwlhhp'];a41_0x2d63=function(){return _0x10ae68;};return a41_0x2d63();}
@@ -1 +1 @@
1
- function a41_0x10b6(_0x4cfb8e,_0x32a8ee){_0x4cfb8e=_0x4cfb8e-0x1e8;const _0xe1b5b3=a41_0xe1b5();let _0x10b6b5=_0xe1b5b3[_0x4cfb8e];return _0x10b6b5;}const a41_0x1de8ad=a41_0x10b6;(function(_0x16a186,_0xdade96){const _0x111c7a=a41_0x10b6,_0x290685=_0x16a186();while(!![]){try{const _0x4cf972=-parseInt(_0x111c7a(0x1f3))/0x1+parseInt(_0x111c7a(0x1f7))/0x2*(parseInt(_0x111c7a(0x1f1))/0x3)+parseInt(_0x111c7a(0x1f0))/0x4+-parseInt(_0x111c7a(0x1ed))/0x5+parseInt(_0x111c7a(0x1ea))/0x6*(-parseInt(_0x111c7a(0x1ef))/0x7)+parseInt(_0x111c7a(0x1e8))/0x8*(-parseInt(_0x111c7a(0x1eb))/0x9)+-parseInt(_0x111c7a(0x1e9))/0xa*(parseInt(_0x111c7a(0x1f5))/0xb);if(_0x4cf972===_0xdade96)break;else _0x290685['push'](_0x290685['shift']());}catch(_0x230163){_0x290685['push'](_0x290685['shift']());}}}(a41_0xe1b5,0xeaaee));import{getRuntimePagePermit}from'../../core/api-client.js';function a41_0xe1b5(){const _0x57441b=['241385BSmHJA','page-get','1259929kWqICI','runtime','198988tnChHL','1134536CYtKQB','70gEgcfa','573186dwdZAg','9GjsQCf','num','197030DYsZHR','Get\x20runtime\x20page\x20permission\x20slots\x20by\x20menu\x20ID','7oJRaFU','4746960zqXWYb','33pXlkEE','permit'];a41_0xe1b5=function(){return _0x57441b;};return a41_0xe1b5();}import{MENU_ID_FLAG,projectRuntimePagePermit}from'../../commands/permit/shared.js';export const permitPageGet={'service':a41_0x1de8ad(0x1f2),'command':a41_0x1de8ad(0x1f4),'description':a41_0x1de8ad(0x1ee),'risk':'read','flags':[MENU_ID_FLAG],async 'execute'(_0x3036e2){const _0x44cba0=a41_0x1de8ad,_0xadcb2e=await getRuntimePagePermit(_0x3036e2[_0x44cba0(0x1ec)]('menu-id'));return{'ok':!![],'data':{'scope':_0x44cba0(0x1f6),'page':projectRuntimePagePermit(_0xadcb2e)}};}};
1
+ const a42_0x3e5025=a42_0x350c;(function(_0x437c44,_0x4c5830){const _0x339590=a42_0x350c,_0x20870e=_0x437c44();while(!![]){try{const _0x182c41=-parseInt(_0x339590(0x17b))/0x1*(parseInt(_0x339590(0x17e))/0x2)+-parseInt(_0x339590(0x179))/0x3+-parseInt(_0x339590(0x17c))/0x4*(parseInt(_0x339590(0x172))/0x5)+-parseInt(_0x339590(0x170))/0x6*(parseInt(_0x339590(0x173))/0x7)+-parseInt(_0x339590(0x176))/0x8*(-parseInt(_0x339590(0x16f))/0x9)+-parseInt(_0x339590(0x17f))/0xa+parseInt(_0x339590(0x177))/0xb;if(_0x182c41===_0x4c5830)break;else _0x20870e['push'](_0x20870e['shift']());}catch(_0x18a885){_0x20870e['push'](_0x20870e['shift']());}}}(a42_0x1040,0xd8438));import{getRuntimePagePermit}from'../../core/api-client.js';import{MENU_ID_FLAG,projectRuntimePagePermit}from'../../commands/permit/shared.js';function a42_0x350c(_0x37156b,_0x425cae){_0x37156b=_0x37156b-0x16f;const _0x1040e6=a42_0x1040();let _0x350c5e=_0x1040e6[_0x37156b];return _0x350c5e;}export const permitPageGet={'service':a42_0x3e5025(0x171),'command':a42_0x3e5025(0x17a),'description':a42_0x3e5025(0x17d),'risk':a42_0x3e5025(0x175),'flags':[MENU_ID_FLAG],async 'execute'(_0x5cceed){const _0x1456ea=a42_0x3e5025,_0x538b6f=await getRuntimePagePermit(_0x5cceed['num'](_0x1456ea(0x178)));return{'ok':!![],'data':{'scope':_0x1456ea(0x174),'page':projectRuntimePagePermit(_0x538b6f)}};}};function a42_0x1040(){const _0x148189=['62824KPBSso','49937063ccvxgQ','menu-id','3106386rCeWlF','page-get','2386SwiTQk','1464IpIZKG','Get\x20runtime\x20page\x20permission\x20slots\x20by\x20menu\x20ID','900akDDWY','2766380DRXoat','1224aLjgqh','59214BjLEmp','permit','8590kARWZC','1211XMWaJb','runtime','read'];a42_0x1040=function(){return _0x148189;};return a42_0x1040();}
@@ -1 +1 @@
1
- const a42_0x3a4616=a42_0x5388;function a42_0x5388(_0x32f829,_0x253065){_0x32f829=_0x32f829-0x110;const _0xa48689=a42_0xa486();let _0x538815=_0xa48689[_0x32f829];return _0x538815;}(function(_0x895cf3,_0x31df47){const _0x4b9814=a42_0x5388,_0x26a8f8=_0x895cf3();while(!![]){try{const _0x54ff85=parseInt(_0x4b9814(0x11b))/0x1+parseInt(_0x4b9814(0x124))/0x2+parseInt(_0x4b9814(0x12c))/0x3+-parseInt(_0x4b9814(0x117))/0x4+parseInt(_0x4b9814(0x120))/0x5+-parseInt(_0x4b9814(0x11d))/0x6*(-parseInt(_0x4b9814(0x11f))/0x7)+-parseInt(_0x4b9814(0x12a))/0x8;if(_0x54ff85===_0x31df47)break;else _0x26a8f8['push'](_0x26a8f8['shift']());}catch(_0x2c6bdb){_0x26a8f8['push'](_0x26a8f8['shift']());}}}(a42_0xa486,0xcc6c6));import{getRuntimePagePermit,saveRuntimePagePermit}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';import{assertRuntimePermissionManager,MENU_ID_FLAG,PAGE_ROLE_FLAGS,PAGE_SLOT_SPECS,projectRuntimePagePermit,resolveRuntimePermitRoles,runtimePermitWriteResult,splitRefs}from'../../commands/permit/shared.js';function a42_0xa486(){const _0x36db37=['before','修改指定运行页面的角色权限槽位;未获授权的用户可能无法查看页面或执行数据操作。','\x20does\x20not\x20expose\x20','1374711tmhxZY','validation','3948jZwwPw','menu-id','7497OWQMUt','1111505tTKVNV','/client/permit/page/save','page','flag','2710614CSiUzj','description','permit','Pass\x20at\x20least\x20one\x20page\x20role\x20flag\x20to\x20update.','length','page-set','14886784OKrGnm','appCode','233106GmCPwY','Preview:\x20update\x20page\x20permission\x20slots\x20','str','body','push','high-risk-write','POST','slots','key','build','4146292XUKEoG'];a42_0xa486=function(){return _0x36db37;};return a42_0xa486();}async function prepare(_0x38eba2){const _0x2061d7=a42_0x5388;await assertRuntimePermissionManager(_0x38eba2[_0x2061d7(0x12b)]);const _0x2d8ad4=_0x38eba2['num'](_0x2061d7(0x11e)),_0x4787a6=await getRuntimePagePermit(_0x2d8ad4);if(_0x4787a6['appCode']&&_0x4787a6[_0x2061d7(0x12b)]!==_0x38eba2[_0x2061d7(0x12b)])throw CliErrors['validation']('Menu\x20'+_0x2d8ad4+'\x20does\x20not\x20belong\x20to\x20app\x20'+_0x38eba2[_0x2061d7(0x12b)]+'.');const _0x43c55b=structuredClone(_0x4787a6),_0x3b73e8=[];for(const _0x5a2ef2 of PAGE_SLOT_SPECS){if(_0x38eba2[_0x2061d7(0x123)](_0x5a2ef2[_0x2061d7(0x123)])===undefined)continue;const _0xb5eb41=_0x4787a6[_0x5a2ef2[_0x2061d7(0x115)]];if(!_0xb5eb41)throw CliErrors[_0x2061d7(0x11c)]('Page\x20menu\x20'+_0x2d8ad4+_0x2061d7(0x11a)+_0x5a2ef2[_0x2061d7(0x115)]+'.');_0xb5eb41['rolePermit']=await resolveRuntimePermitRoles(_0x38eba2['appCode'],splitRefs(_0x38eba2[_0x2061d7(0x12e)](_0x5a2ef2[_0x2061d7(0x123)]),'--'+_0x5a2ef2['flag']),_0x5a2ef2['allowSelf']),_0x3b73e8[_0x2061d7(0x111)](_0x5a2ef2['key']);}if(_0x3b73e8[_0x2061d7(0x128)]===0x0)throw CliErrors[_0x2061d7(0x11c)](_0x2061d7(0x127));return{'menuId':_0x2d8ad4,'page':_0x4787a6,'before':_0x43c55b,'slots':_0x3b73e8};}export const permitPageSet={'service':a42_0x3a4616(0x126),'command':a42_0x3a4616(0x129),'description':'Set\x20selected\x20runtime\x20page\x20permission\x20slots','risk':a42_0x3a4616(0x112),'confirmationDescription':a42_0x3a4616(0x119),'flags':[MENU_ID_FLAG,...PAGE_ROLE_FLAGS],async 'dryRun'(_0x1d54f6){const _0x2cd181=a42_0x3a4616,_0x456c90=await prepare(_0x1d54f6);return dryRun(_0x2cd181(0x113),_0x2cd181(0x121))[_0x2cd181(0x110)](_0x456c90['page'])[_0x2cd181(0x125)](_0x2cd181(0x12d)+_0x456c90[_0x2cd181(0x114)]['join'](',\x20'))[_0x2cd181(0x116)]();},async 'execute'(_0x427cae){const _0x20646e=a42_0x3a4616,_0x219b39=await prepare(_0x427cae),_0x275691=await saveRuntimePagePermit(_0x219b39[_0x20646e(0x122)]);return{'ok':!![],'data':runtimePermitWriteResult(_0x20646e(0x129),{'menuId':_0x219b39['menuId'],'slots':_0x219b39[_0x20646e(0x114)]},projectRuntimePagePermit(_0x219b39[_0x20646e(0x118)]),projectRuntimePagePermit(_0x275691),{'method':'POST','path':_0x20646e(0x121)})};}};
1
+ function a43_0x2e4a(_0x12daf6,_0x9fbea){_0x12daf6=_0x12daf6-0xa1;const _0x2ed93b=a43_0x2ed9();let _0x2e4ab2=_0x2ed93b[_0x12daf6];return _0x2e4ab2;}const a43_0xa0c0ce=a43_0x2e4a;(function(_0x2de0e6,_0x51f57b){const _0x54302c=a43_0x2e4a,_0x53b130=_0x2de0e6();while(!![]){try{const _0x15c659=parseInt(_0x54302c(0xa4))/0x1+parseInt(_0x54302c(0xb9))/0x2*(-parseInt(_0x54302c(0xb1))/0x3)+parseInt(_0x54302c(0xbf))/0x4*(-parseInt(_0x54302c(0xa6))/0x5)+-parseInt(_0x54302c(0xc0))/0x6*(-parseInt(_0x54302c(0xb7))/0x7)+-parseInt(_0x54302c(0xb2))/0x8*(-parseInt(_0x54302c(0xbb))/0x9)+-parseInt(_0x54302c(0xad))/0xa*(-parseInt(_0x54302c(0xac))/0xb)+parseInt(_0x54302c(0xa1))/0xc*(-parseInt(_0x54302c(0xb8))/0xd);if(_0x15c659===_0x51f57b)break;else _0x53b130['push'](_0x53b130['shift']());}catch(_0x1edfe6){_0x53b130['push'](_0x53b130['shift']());}}}(a43_0x2ed9,0x61bc5));import{getRuntimePagePermit,saveRuntimePagePermit}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a43_0x2ed9(){const _0x2ca98e=['10Latmen','Pass\x20at\x20least\x20one\x20page\x20role\x20flag\x20to\x20update.','build','Changes\x20role\x20permission\x20slots\x20on\x20the\x20given\x20runtime\x20page.\x20Unauthorized\x20users\x20may\x20be\x20unable\x20to\x20view\x20the\x20page\x20or\x20run\x20data\x20operations.','3RVjTmt','6824rCPbJY','slots','POST','high-risk-write','join','7qXQxFn','108693uJxcAO','200890hzrqqx','/client/permit/page/save','7461KiQvbO','appCode','key','Page\x20menu\x20','20552UNvQUr','4471548deFFok','push','menu-id','str','body','2436YigJQx','flag','validation','484387euTbpB','menuId','20MYoPQL','description','page','num','before','\x20does\x20not\x20belong\x20to\x20app\x20','3100053GRcxRj'];a43_0x2ed9=function(){return _0x2ca98e;};return a43_0x2ed9();}import{dryRun}from'../../framework/dryrun.js';import{assertRuntimePermissionManager,MENU_ID_FLAG,PAGE_ROLE_FLAGS,PAGE_SLOT_SPECS,projectRuntimePagePermit,resolveRuntimePermitRoles,runtimePermitWriteResult,splitRefs}from'../../commands/permit/shared.js';async function prepare(_0x206351){const _0x4b8c36=a43_0x2e4a;await assertRuntimePermissionManager(_0x206351['appCode']);const _0x528a36=_0x206351[_0x4b8c36(0xa9)](_0x4b8c36(0xc2)),_0x41f9df=await getRuntimePagePermit(_0x528a36);if(_0x41f9df[_0x4b8c36(0xbc)]&&_0x41f9df[_0x4b8c36(0xbc)]!==_0x206351[_0x4b8c36(0xbc)])throw CliErrors[_0x4b8c36(0xa3)]('Menu\x20'+_0x528a36+_0x4b8c36(0xab)+_0x206351['appCode']+'.');const _0x4a47ca=structuredClone(_0x41f9df),_0x307e55=[];for(const _0x12f79a of PAGE_SLOT_SPECS){if(_0x206351[_0x4b8c36(0xa2)](_0x12f79a['flag'])===undefined)continue;const _0x74f475=_0x41f9df[_0x12f79a[_0x4b8c36(0xbd)]];if(!_0x74f475)throw CliErrors['validation'](_0x4b8c36(0xbe)+_0x528a36+'\x20does\x20not\x20expose\x20'+_0x12f79a[_0x4b8c36(0xbd)]+'.');_0x74f475['rolePermit']=await resolveRuntimePermitRoles(_0x206351['appCode'],splitRefs(_0x206351[_0x4b8c36(0xc3)](_0x12f79a[_0x4b8c36(0xa2)]),'--'+_0x12f79a[_0x4b8c36(0xa2)]),_0x12f79a['allowSelf']),_0x307e55[_0x4b8c36(0xc1)](_0x12f79a[_0x4b8c36(0xbd)]);}if(_0x307e55['length']===0x0)throw CliErrors[_0x4b8c36(0xa3)](_0x4b8c36(0xae));return{'menuId':_0x528a36,'page':_0x41f9df,'before':_0x4a47ca,'slots':_0x307e55};}export const permitPageSet={'service':'permit','command':'page-set','description':'Set\x20selected\x20runtime\x20page\x20permission\x20slots','risk':a43_0xa0c0ce(0xb5),'confirmationDescription':a43_0xa0c0ce(0xb0),'flags':[MENU_ID_FLAG,...PAGE_ROLE_FLAGS],async 'dryRun'(_0x23b25e){const _0x3390c8=a43_0xa0c0ce,_0x232a1d=await prepare(_0x23b25e);return dryRun('POST','/client/permit/page/save')[_0x3390c8(0xc4)](_0x232a1d[_0x3390c8(0xa8)])[_0x3390c8(0xa7)]('Preview:\x20update\x20page\x20permission\x20slots\x20'+_0x232a1d['slots'][_0x3390c8(0xb6)](',\x20'))[_0x3390c8(0xaf)]();},async 'execute'(_0x3d3b07){const _0x2c3154=a43_0xa0c0ce,_0x71b8ae=await prepare(_0x3d3b07),_0x150369=await saveRuntimePagePermit(_0x71b8ae[_0x2c3154(0xa8)]);return{'ok':!![],'data':runtimePermitWriteResult('page-set',{'menuId':_0x71b8ae[_0x2c3154(0xa5)],'slots':_0x71b8ae[_0x2c3154(0xb3)]},projectRuntimePagePermit(_0x71b8ae[_0x2c3154(0xaa)]),projectRuntimePagePermit(_0x150369),{'method':_0x2c3154(0xb4),'path':_0x2c3154(0xba)})};}};
@@ -1 +1 @@
1
- const a43_0x2bc6e4=a43_0x48d5;(function(_0x39847c,_0x566cf3){const _0x129eb6=a43_0x48d5,_0x21f290=_0x39847c();while(!![]){try{const _0x2b0f28=-parseInt(_0x129eb6(0x9a))/0x1*(-parseInt(_0x129eb6(0x89))/0x2)+parseInt(_0x129eb6(0xb7))/0x3*(parseInt(_0x129eb6(0x8b))/0x4)+parseInt(_0x129eb6(0xae))/0x5*(parseInt(_0x129eb6(0x95))/0x6)+parseInt(_0x129eb6(0xa1))/0x7+parseInt(_0x129eb6(0xb4))/0x8+parseInt(_0x129eb6(0x8a))/0x9+-parseInt(_0x129eb6(0x9d))/0xa;if(_0x2b0f28===_0x566cf3)break;else _0x21f290['push'](_0x21f290['shift']());}catch(_0x2f185d){_0x21f290['push'](_0x21f290['shift']());}}}(a43_0x5075,0xa6fee));import{listRuntimeMenuRolePermits,listRuntimePermitRoles,saveRuntimeMenuRolePermits}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a43_0x5075(){const _0x185fe0=['operation','validation','/client/permit/resource/batch-save-menu','changed','rolePermit','menus','授予或收回目标角色对指定运行菜单的访问权限;变更会影响该角色用户的菜单可见性。','\x20for\x20role\x20','67938XVlXcj','permitList','description','length','Invalid\x20runtime\x20menu\x20ID:\x20','19JVtGfZ','--menus','POST','40414260kTjOTT','before','isSafeInteger','menu-','7250873xgPbfV','body','map','Grant\x20or\x20revoke\x20selected\x20runtime\x20menus\x20for\x20one\x20role','after','revoke','role-menus-set','str','Runtime\x20menu\x20','Comma-separated\x20runtime\x20menu\x20IDs','bool','grant','string','215HRsRPW','role','\x20selected\x20runtime\x20menus','push','Preview:\x20','find','10921800IxpHLm','menuIds','warnings','1398GfxgBZ','\x20already\x20reflects\x20','appCode','build','permit','9526hIqjXv','8903466upreRk','6504LcfnSN','roles'];a43_0x5075=function(){return _0x185fe0;};return a43_0x5075();}function a43_0x48d5(_0x5650f7,_0x455c0f){_0x5650f7=_0x5650f7-0x85;const _0x507543=a43_0x5075();let _0x48d5e3=_0x507543[_0x5650f7];return _0x48d5e3;}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_0x2bc6e4(0x92),'type':a43_0x2bc6e4(0xad),'required':!![],'description':a43_0x2bc6e4(0xaa)};async function prepare(_0x46db70){const _0x556b3c=a43_0x2bc6e4;await assertRuntimePermissionManager(_0x46db70['appCode']);const _0x1b642c=assertGrantOrRevoke(_0x46db70['bool'](_0x556b3c(0xac)),_0x46db70[_0x556b3c(0xab)](_0x556b3c(0xa6))),_0x2b836b=await resolveRuntimeRoleRef(_0x46db70[_0x556b3c(0x86)],_0x46db70[_0x556b3c(0xa8)](_0x556b3c(0xaf)));assertRuntimePermitRoleConfigurable(_0x2b836b);const _0x92c09f=[...new Set(splitRefs(_0x46db70['str'](_0x556b3c(0x92)),_0x556b3c(0x9b))[_0x556b3c(0xa3)](_0x388dcd=>{const _0x36b2d2=_0x556b3c,_0x363815=Number(_0x388dcd);if(!/^\d+$/['test'](_0x388dcd)||!Number[_0x36b2d2(0x9f)](_0x363815)||_0x363815<=0x0)throw CliErrors[_0x36b2d2(0x8e)](_0x36b2d2(0x99)+_0x388dcd+'.');return _0x363815;}))],_0x9f1f52=flattenRuntimeMenuRolePermits(await listRuntimeMenuRolePermits(_0x46db70[_0x556b3c(0x86)])),_0x41dd4c=await listRuntimePermitRoles(_0x46db70[_0x556b3c(0x86)]),_0x407d09=[],_0x1840a4=[],_0xbb3e3d=[],_0x33e97e=[];for(const _0x38860d of _0x92c09f){const _0x3ee231=_0x9f1f52[_0x556b3c(0xb3)](_0x589f4c=>_0x589f4c['id']===_0x38860d);if(!_0x3ee231)throw CliErrors[_0x556b3c(0x8e)](_0x556b3c(0xa9)+_0x38860d+'\x20was\x20not\x20found.');const _0x400f11=applyRuntimeRolePermission(_0x3ee231[_0x556b3c(0x91)],_0x2b836b,_0x41dd4c,_0x1b642c);_0x1840a4[_0x556b3c(0xb1)]({'menuId':_0x38860d,'rolePermit':_0x3ee231[_0x556b3c(0x91)]}),_0xbb3e3d[_0x556b3c(0xb1)]({'menuId':_0x38860d,'rolePermit':_0x400f11['roles']});if(_0x400f11[_0x556b3c(0x90)])_0x407d09[_0x556b3c(0xb1)](menuPermitDto(_0x46db70['appCode'],_0x3ee231,_0x400f11[_0x556b3c(0x8c)]));else _0x33e97e[_0x556b3c(0xb1)](_0x556b3c(0xa9)+_0x38860d+_0x556b3c(0x85)+_0x1b642c+_0x556b3c(0x94)+_0x2b836b['id']+'.');}return{'operation':_0x1b642c,'role':_0x2b836b,'menuIds':_0x92c09f,'permitList':_0x407d09,'before':_0x1840a4,'after':_0xbb3e3d,'warnings':_0x33e97e};}export const permitRoleMenusSet={'service':a43_0x2bc6e4(0x88),'command':a43_0x2bc6e4(0xa7),'description':a43_0x2bc6e4(0xa4),'risk':'high-risk-write','confirmationDescription':a43_0x2bc6e4(0x93),'flags':[ROLE_REF_FLAG,GRANT_FLAG,REVOKE_FLAG,MENUS_FLAG],async 'validate'(_0x403d7e){const _0x2828ae=a43_0x2bc6e4;assertGrantOrRevoke(_0x403d7e['bool'](_0x2828ae(0xac)),_0x403d7e[_0x2828ae(0xab)](_0x2828ae(0xa6)));},async 'dryRun'(_0xd1427e){const _0x1b3d60=a43_0x2bc6e4,_0x42d3db=await prepare(_0xd1427e);return dryRun(_0x1b3d60(0x9c),_0x1b3d60(0x8f))[_0x1b3d60(0xa2)]({'appCode':_0xd1427e[_0x1b3d60(0x86)],'permitList':_0x42d3db[_0x1b3d60(0x96)]})[_0x1b3d60(0x97)](_0x1b3d60(0xb2)+_0x42d3db[_0x1b3d60(0x8d)]+_0x1b3d60(0xb0))[_0x1b3d60(0x87)]();},async 'execute'(_0xc3209b){const _0x34750c=a43_0x2bc6e4,_0x6317ea=await prepare(_0xc3209b);return _0x6317ea[_0x34750c(0x96)][_0x34750c(0x98)]>0x0&&await saveRuntimeMenuRolePermits(_0xc3209b[_0x34750c(0x86)],_0x6317ea['permitList']),{'ok':!![],'data':runtimePermitWriteResult(_0x34750c(0xa0)+_0x6317ea[_0x34750c(0x8d)],{'roleId':_0x6317ea['role']['id'],'menuIds':_0x6317ea[_0x34750c(0xb5)]},_0x6317ea[_0x34750c(0x9e)],_0x6317ea[_0x34750c(0xa5)],{'method':'POST','path':_0x34750c(0x8f)},_0x6317ea[_0x34750c(0xb6)])};}};
1
+ const a44_0x59704f=a44_0x53df;(function(_0x27008,_0x2270e3){const _0x1b7331=a44_0x53df,_0x416cfe=_0x27008();while(!![]){try{const _0x8bfa2b=parseInt(_0x1b7331(0x1ca))/0x1*(-parseInt(_0x1b7331(0x1d1))/0x2)+parseInt(_0x1b7331(0x1ea))/0x3*(parseInt(_0x1b7331(0x1ef))/0x4)+-parseInt(_0x1b7331(0x1cd))/0x5*(parseInt(_0x1b7331(0x1e6))/0x6)+parseInt(_0x1b7331(0x1c4))/0x7+-parseInt(_0x1b7331(0x1dc))/0x8*(parseInt(_0x1b7331(0x1ed))/0x9)+-parseInt(_0x1b7331(0x1f1))/0xa+-parseInt(_0x1b7331(0x1c8))/0xb*(-parseInt(_0x1b7331(0x1d5))/0xc);if(_0x8bfa2b===_0x2270e3)break;else _0x416cfe['push'](_0x416cfe['shift']());}catch(_0x393115){_0x416cfe['push'](_0x416cfe['shift']());}}}(a44_0xff17,0x9ee3d));function a44_0xff17(){const _0x4a6fe5=['rolePermit','string','warnings','validation','4584370FCaVHP','appCode','isSafeInteger','changed','20832020gJajvm','menuIds','3181iGNdZA','Invalid\x20runtime\x20menu\x20ID:\x20','role','5erlihj','menus','bool','permitList','466VKADCq','length','description','POST','12nkuHvq','push','/client/permit/resource/batch-save-menu','roles','\x20was\x20not\x20found.','after','Preview:\x20','6398216uOUApt','build','role-menus-set','revoke','find','Runtime\x20menu\x20','operation','before','grant','--menus','306042wjPpxX','permit','str','\x20for\x20role\x20','88278KwhIsM','\x20selected\x20runtime\x20menus','Comma-separated\x20runtime\x20menu\x20IDs','9nSSWuj','menu-','52Qwgoil','Grants\x20or\x20revokes\x20the\x20target\x20role\x20access\x20to\x20the\x20given\x20runtime\x20menus.\x20Menu\x20visibility\x20for\x20users\x20in\x20that\x20role\x20will\x20change.','6884980Fozgym'];a44_0xff17=function(){return _0x4a6fe5;};return a44_0xff17();}import{listRuntimeMenuRolePermits,listRuntimePermitRoles,saveRuntimeMenuRolePermits}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a44_0x53df(_0x347a01,_0x1d7dc1){_0x347a01=_0x347a01-0x1c0;const _0xff1754=a44_0xff17();let _0x53df05=_0xff1754[_0x347a01];return _0x53df05;}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':a44_0x59704f(0x1ce),'type':a44_0x59704f(0x1c1),'required':!![],'description':a44_0x59704f(0x1ec)};async function prepare(_0x52304f){const _0x1410cb=a44_0x59704f;await assertRuntimePermissionManager(_0x52304f['appCode']);const _0x1e1709=assertGrantOrRevoke(_0x52304f[_0x1410cb(0x1cf)](_0x1410cb(0x1e4)),_0x52304f[_0x1410cb(0x1cf)]('revoke')),_0x3599eb=await resolveRuntimeRoleRef(_0x52304f[_0x1410cb(0x1c5)],_0x52304f['str'](_0x1410cb(0x1cc)));assertRuntimePermitRoleConfigurable(_0x3599eb);const _0x4ca832=[...new Set(splitRefs(_0x52304f[_0x1410cb(0x1e8)](_0x1410cb(0x1ce)),_0x1410cb(0x1e5))['map'](_0x2ae523=>{const _0x2c0407=_0x1410cb,_0x3444c=Number(_0x2ae523);if(!/^\d+$/['test'](_0x2ae523)||!Number[_0x2c0407(0x1c6)](_0x3444c)||_0x3444c<=0x0)throw CliErrors[_0x2c0407(0x1c3)](_0x2c0407(0x1cb)+_0x2ae523+'.');return _0x3444c;}))],_0x4de93a=flattenRuntimeMenuRolePermits(await listRuntimeMenuRolePermits(_0x52304f[_0x1410cb(0x1c5)])),_0xe5e7a1=await listRuntimePermitRoles(_0x52304f[_0x1410cb(0x1c5)]),_0x3b11e6=[],_0x284bc1=[],_0x10ee45=[],_0xa5ecf9=[];for(const _0x5b9c4d of _0x4ca832){const _0x7617fe=_0x4de93a[_0x1410cb(0x1e0)](_0x41834=>_0x41834['id']===_0x5b9c4d);if(!_0x7617fe)throw CliErrors[_0x1410cb(0x1c3)](_0x1410cb(0x1e1)+_0x5b9c4d+_0x1410cb(0x1d9));const _0x4ef9f4=applyRuntimeRolePermission(_0x7617fe[_0x1410cb(0x1c0)],_0x3599eb,_0xe5e7a1,_0x1e1709);_0x284bc1['push']({'menuId':_0x5b9c4d,'rolePermit':_0x7617fe[_0x1410cb(0x1c0)]}),_0x10ee45[_0x1410cb(0x1d6)]({'menuId':_0x5b9c4d,'rolePermit':_0x4ef9f4[_0x1410cb(0x1d8)]});if(_0x4ef9f4[_0x1410cb(0x1c7)])_0x3b11e6[_0x1410cb(0x1d6)](menuPermitDto(_0x52304f[_0x1410cb(0x1c5)],_0x7617fe,_0x4ef9f4[_0x1410cb(0x1d8)]));else _0xa5ecf9[_0x1410cb(0x1d6)]('Runtime\x20menu\x20'+_0x5b9c4d+'\x20already\x20reflects\x20'+_0x1e1709+_0x1410cb(0x1e9)+_0x3599eb['id']+'.');}return{'operation':_0x1e1709,'role':_0x3599eb,'menuIds':_0x4ca832,'permitList':_0x3b11e6,'before':_0x284bc1,'after':_0x10ee45,'warnings':_0xa5ecf9};}export const permitRoleMenusSet={'service':a44_0x59704f(0x1e7),'command':a44_0x59704f(0x1de),'description':'Grant\x20or\x20revoke\x20selected\x20runtime\x20menus\x20for\x20one\x20role','risk':'high-risk-write','confirmationDescription':a44_0x59704f(0x1f0),'flags':[ROLE_REF_FLAG,GRANT_FLAG,REVOKE_FLAG,MENUS_FLAG],async 'validate'(_0x4d2f7d){const _0x12d989=a44_0x59704f;assertGrantOrRevoke(_0x4d2f7d[_0x12d989(0x1cf)](_0x12d989(0x1e4)),_0x4d2f7d[_0x12d989(0x1cf)](_0x12d989(0x1df)));},async 'dryRun'(_0x53f5be){const _0x4cb178=a44_0x59704f,_0xfe594d=await prepare(_0x53f5be);return dryRun(_0x4cb178(0x1d4),_0x4cb178(0x1d7))['body']({'appCode':_0x53f5be['appCode'],'permitList':_0xfe594d['permitList']})[_0x4cb178(0x1d3)](_0x4cb178(0x1db)+_0xfe594d['operation']+_0x4cb178(0x1eb))[_0x4cb178(0x1dd)]();},async 'execute'(_0x30c9b4){const _0x53ebb5=a44_0x59704f,_0x475451=await prepare(_0x30c9b4);return _0x475451[_0x53ebb5(0x1d0)][_0x53ebb5(0x1d2)]>0x0&&await saveRuntimeMenuRolePermits(_0x30c9b4[_0x53ebb5(0x1c5)],_0x475451[_0x53ebb5(0x1d0)]),{'ok':!![],'data':runtimePermitWriteResult(_0x53ebb5(0x1ee)+_0x475451[_0x53ebb5(0x1e2)],{'roleId':_0x475451[_0x53ebb5(0x1cc)]['id'],'menuIds':_0x475451[_0x53ebb5(0x1c9)]},_0x475451[_0x53ebb5(0x1e3)],_0x475451[_0x53ebb5(0x1da)],{'method':_0x53ebb5(0x1d4),'path':_0x53ebb5(0x1d7)},_0x475451[_0x53ebb5(0x1c2)])};}};
@@ -1 +1 @@
1
- const a44_0xf79b0d=a44_0x3a6d;(function(_0x144818,_0x5743e1){const _0x20036d=a44_0x3a6d,_0x45cc59=_0x144818();while(!![]){try{const _0x1b931c=parseInt(_0x20036d(0x1c7))/0x1*(parseInt(_0x20036d(0x1d5))/0x2)+parseInt(_0x20036d(0x1cc))/0x3*(parseInt(_0x20036d(0x1d4))/0x4)+parseInt(_0x20036d(0x1d7))/0x5*(parseInt(_0x20036d(0x1c6))/0x6)+-parseInt(_0x20036d(0x1c8))/0x7+-parseInt(_0x20036d(0x1d0))/0x8+parseInt(_0x20036d(0x1cb))/0x9*(-parseInt(_0x20036d(0x1c5))/0xa)+parseInt(_0x20036d(0x1d2))/0xb;if(_0x1b931c===_0x5743e1)break;else _0x45cc59['push'](_0x45cc59['shift']());}catch(_0x431dec){_0x45cc59['push'](_0x45cc59['shift']());}}}(a44_0x56e2,0xc8e9e));import{getRuntimeRoleMenuResources}from'../../core/api-client.js';import{resolveRuntimeRoleRef}from'../../commands/role/shared.js';function a44_0x3a6d(_0x36251f,_0xbfa945){_0x36251f=_0x36251f-0x1c5;const _0x56e26a=a44_0x56e2();let _0x3a6d25=_0x56e26a[_0x36251f];return _0x3a6d25;}import{ROLE_REF_FLAG}from'../../commands/permit/shared.js';function a44_0x56e2(){const _0x56b7e1=['1308069TSUXCf','read','runtime','1164591wWtsEQ','11862SsMgsD','appCode','roleName','permit','9693512whDLSc','role-menus','13024066RRujCE','role','440Tbpngm','4vVyXsm','roleType','55MVVPnS','30HypDFe','238386MPOPEU','276854OICrDr'];a44_0x56e2=function(){return _0x56b7e1;};return a44_0x56e2();}export const permitRoleMenus={'service':a44_0xf79b0d(0x1cf),'command':a44_0xf79b0d(0x1d1),'description':'Show\x20evaluated\x20runtime\x20menu\x20access\x20for\x20one\x20role','risk':a44_0xf79b0d(0x1c9),'flags':[ROLE_REF_FLAG],async 'execute'(_0x1b115a){const _0x27cdda=a44_0xf79b0d,_0x247333=await resolveRuntimeRoleRef(_0x1b115a['appCode'],_0x1b115a['str'](_0x27cdda(0x1d3))),_0x2c0441=await getRuntimeRoleMenuResources(_0x1b115a[_0x27cdda(0x1cd)],_0x247333['id']);return{'ok':!![],'data':{'scope':_0x27cdda(0x1ca),'role':{'id':_0x247333['id'],'roleName':_0x247333[_0x27cdda(0x1ce)],'roleType':_0x247333[_0x27cdda(0x1d6)]},'menus':_0x2c0441}};}};
1
+ const a45_0x906d17=a45_0x6f59;(function(_0x1aa0bf,_0x2940ed){const _0x47cf12=a45_0x6f59,_0x558882=_0x1aa0bf();while(!![]){try{const _0x3b25e6=parseInt(_0x47cf12(0xe8))/0x1+-parseInt(_0x47cf12(0xde))/0x2+parseInt(_0x47cf12(0xdf))/0x3*(-parseInt(_0x47cf12(0xe9))/0x4)+-parseInt(_0x47cf12(0xe6))/0x5*(-parseInt(_0x47cf12(0xec))/0x6)+parseInt(_0x47cf12(0xe3))/0x7*(parseInt(_0x47cf12(0xe2))/0x8)+parseInt(_0x47cf12(0xe4))/0x9+parseInt(_0x47cf12(0xe1))/0xa*(-parseInt(_0x47cf12(0xed))/0xb);if(_0x3b25e6===_0x2940ed)break;else _0x558882['push'](_0x558882['shift']());}catch(_0x48754a){_0x558882['push'](_0x558882['shift']());}}}(a45_0x58e7,0xd82d7));function a45_0x6f59(_0x31d268,_0x43dab9){_0x31d268=_0x31d268-0xde;const _0x58e705=a45_0x58e7();let _0x6f59d0=_0x58e705[_0x31d268];return _0x6f59d0;}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':a45_0x906d17(0xf0),'command':a45_0x906d17(0xe5),'description':'Show\x20evaluated\x20runtime\x20menu\x20access\x20for\x20one\x20role','risk':'read','flags':[ROLE_REF_FLAG],async 'execute'(_0x2b79c3){const _0x1a1a7e=a45_0x906d17,_0x5e0338=await resolveRuntimeRoleRef(_0x2b79c3[_0x1a1a7e(0xe0)],_0x2b79c3[_0x1a1a7e(0xeb)](_0x1a1a7e(0xea))),_0x24c15f=await getRuntimeRoleMenuResources(_0x2b79c3[_0x1a1a7e(0xe0)],_0x5e0338['id']);return{'ok':!![],'data':{'scope':_0x1a1a7e(0xee),'role':{'id':_0x5e0338['id'],'roleName':_0x5e0338[_0x1a1a7e(0xe7)],'roleType':_0x5e0338[_0x1a1a7e(0xef)]},'menus':_0x24c15f}};}};function a45_0x58e7(){const _0x193b9b=['1459927HOuJrB','6619653PNsYPo','role-menus','2097465owTVqA','roleName','734098sxCBeK','6142148LtJXwF','role','str','18loIEzD','4188107aXpMYB','runtime','roleType','permit','1176850ZXTWKO','3DvyXFT','appCode','20FKRonJ','40VoToKG'];a45_0x58e7=function(){return _0x193b9b;};return a45_0x58e7();}
@@ -1 +1 @@
1
- const a45_0x2b2ab9=a45_0x3c99;(function(_0x3372e8,_0x224720){const _0x4fda76=a45_0x3c99,_0x593de4=_0x3372e8();while(!![]){try{const _0x3b3686=-parseInt(_0x4fda76(0x17f))/0x1*(parseInt(_0x4fda76(0x178))/0x2)+parseInt(_0x4fda76(0x152))/0x3+-parseInt(_0x4fda76(0x15c))/0x4+-parseInt(_0x4fda76(0x16f))/0x5+parseInt(_0x4fda76(0x184))/0x6*(-parseInt(_0x4fda76(0x168))/0x7)+-parseInt(_0x4fda76(0x147))/0x8*(parseInt(_0x4fda76(0x183))/0x9)+-parseInt(_0x4fda76(0x176))/0xa*(-parseInt(_0x4fda76(0x169))/0xb);if(_0x3b3686===_0x224720)break;else _0x593de4['push'](_0x593de4['shift']());}catch(_0x158abd){_0x593de4['push'](_0x593de4['shift']());}}}(a45_0x5e47,0xa1d38));import{getLoginUserInfo,listRuntimePermitRoles,listRuntimeRoleUsers}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';export const MENU_ID_FLAG={'name':a45_0x2b2ab9(0x153),'type':'number','required':!![],'description':a45_0x2b2ab9(0x15b)};export const ROLE_REF_FLAG={'name':'role','type':a45_0x2b2ab9(0x16e),'required':!![],'description':'Runtime\x20role\x20ID\x20or\x20exact\x20role\x20name'};function a45_0x5e47(){const _0x4f322c=['length','isSafeInteger','resourceCode','values','roleName','Cannot\x20resolve\x20the\x20current\x20AK\x20userId\x20for\x20permission\x20management.','Cannot\x20change\x20resource\x20permissions\x20for\x20','Revoke\x20the\x20selected\x20resources\x20from\x20the\x20role','8KZfidt','Comma-separated\x20runtime\x20role\x20IDs\x20or\x20names','MENU','label','ADMIN\x20and\x20OWNER\x20have\x20full\x20runtime\x20access;\x20configure\x20USER\x20or\x20CUSTOM\x20instead.','create-roles','OWNER','map','menu-roles','resourceType','test','548661KgYgeC','menu-id','dataUpdate','children','\x20must\x20contain\x20at\x20least\x20one\x20value.','SELF','dataDetail','userId','rolePermit','Runtime\x20menu\x20ID','1887924IymDtZ','row-roles','pageId','some','Ask\x20an\x20application\x20manager\x20to\x20perform\x20this\x20operation.','boolean','push','\x20runtime\x20role\x20','grant','trim','runtime','Use\x20a\x20role\x20ID\x20from\x20`lovrabet\x20role\x20list`.','3776311LCmRuk','12034utrTXc','Grant\x20the\x20selected\x20resources\x20to\x20the\x20role','datasetCode','roleType','menuId','string','3370310zavdxQ','update-roles','appCode','revoke','Configure\x20USER,\x20CUSTOM,\x20or\x20an\x20applicable\x20special\x20role\x20instead.','ALL','Pass\x20exactly\x20one\x20of\x20--grant\x20or\x20--revoke.','41610KklaGq','key','1278swapIj','permitId','dataCreate','validation','Permission\x20role\x20\x22','The\x20current\x20service\x20contract\x20does\x20not\x20persist\x20an\x20empty\x20rolePermit;\x20grant\x20another\x20role\x20first.','filter','1801dZVTyQ','split','find','dataExport','11122434MTDxlb','6JLbjDS','\x22\x20is\x20ambiguous.','SELF\x20is\x20only\x20valid\x20for\x20--row-roles.','Cannot\x20revoke\x20the\x20last\x20role\x20from\x20a\x20runtime\x20resource.','menuPermit','dataPermit','detail-roles','dataDelete'];a45_0x5e47=function(){return _0x4f322c;};return a45_0x5e47();}export const GRANT_FLAG={'name':'grant','type':a45_0x2b2ab9(0x161),'description':a45_0x2b2ab9(0x16a)};export const REVOKE_FLAG={'name':a45_0x2b2ab9(0x172),'type':a45_0x2b2ab9(0x161),'description':a45_0x2b2ab9(0x146)};export const PAGE_SLOT_SPECS=[{'flag':a45_0x2b2ab9(0x14f),'key':a45_0x2b2ab9(0x188),'allowSelf':![]},{'flag':a45_0x2b2ab9(0x14c),'key':a45_0x2b2ab9(0x17a),'allowSelf':![]},{'flag':a45_0x2b2ab9(0x170),'key':a45_0x2b2ab9(0x154),'allowSelf':![]},{'flag':'delete-roles','key':a45_0x2b2ab9(0x18b),'allowSelf':![]},{'flag':a45_0x2b2ab9(0x18a),'key':a45_0x2b2ab9(0x158),'allowSelf':![]},{'flag':'export-roles','key':a45_0x2b2ab9(0x182),'allowSelf':![]},{'flag':a45_0x2b2ab9(0x15d),'key':a45_0x2b2ab9(0x189),'allowSelf':!![]}];export const PAGE_ROLE_FLAGS=PAGE_SLOT_SPECS[a45_0x2b2ab9(0x14e)](_0xd080ee=>({'name':_0xd080ee['flag'],'type':a45_0x2b2ab9(0x16e),'description':a45_0x2b2ab9(0x148)}));export function splitRefs(_0x5c4dd1,_0x338fb1){const _0x30cbfa=a45_0x2b2ab9,_0x191755=[...new Set(_0x5c4dd1[_0x30cbfa(0x180)](',')[_0x30cbfa(0x14e)](_0x28a8af=>_0x28a8af[_0x30cbfa(0x165)]())[_0x30cbfa(0x17e)](Boolean))];if(_0x191755[_0x30cbfa(0x18c)]===0x0)throw CliErrors['validation'](_0x338fb1+_0x30cbfa(0x156));return _0x191755;}export function assertGrantOrRevoke(_0x2d4660,_0x1f62d8){const _0x487965=a45_0x2b2ab9;if(_0x2d4660===_0x1f62d8)throw CliErrors[_0x487965(0x17b)](_0x487965(0x175));return _0x2d4660?_0x487965(0x164):'revoke';}function resolvePermitRole(_0x30d484,_0x26ef32){const _0x53815a=a45_0x2b2ab9,_0xbc37c9=_0x26ef32[_0x53815a(0x165)](),_0x1bfaf0=/^-?\d+$/[_0x53815a(0x151)](_0xbc37c9)?_0x30d484[_0x53815a(0x17e)](_0x2cb37c=>_0x2cb37c['id']===Number(_0xbc37c9)):_0x30d484[_0x53815a(0x17e)](_0x42901e=>_0x42901e['roleName']===_0xbc37c9||_0x42901e['roleType']===_0xbc37c9['toUpperCase']());if(_0x1bfaf0[_0x53815a(0x18c)]!==0x1)throw CliErrors[_0x53815a(0x17b)](_0x1bfaf0['length']===0x0?'Permission\x20role\x20\x22'+_0xbc37c9+'\x22\x20was\x20not\x20found.':_0x53815a(0x17c)+_0xbc37c9+_0x53815a(0x185),_0x53815a(0x167));return _0x1bfaf0[0x0];}export async function resolveRuntimePermitRoles(_0xa5e1e2,_0x33070d,_0x47aa9e){const _0x4fe9a9=a45_0x2b2ab9,_0x87dc5e=await listRuntimePermitRoles(_0xa5e1e2,{'needSelf':!![],'needPublic':!![]}),_0x59403c=[...new Map(_0x33070d['map'](_0x5701f5=>resolvePermitRole(_0x87dc5e,_0x5701f5))['map'](_0x34c3a0=>[_0x34c3a0['id'],_0x34c3a0]))[_0x4fe9a9(0x142)]()],_0x40448a=_0x59403c[_0x4fe9a9(0x181)](_0x35874b=>_0x35874b[_0x4fe9a9(0x16c)]==='ADMIN'||_0x35874b[_0x4fe9a9(0x16c)]===_0x4fe9a9(0x14d));if(_0x40448a)throw CliErrors[_0x4fe9a9(0x17b)](_0x40448a[_0x4fe9a9(0x16c)]+'\x20has\x20full\x20runtime\x20access\x20and\x20cannot\x20be\x20a\x20resource\x20permission\x20target.',_0x4fe9a9(0x173));if(!_0x47aa9e&&_0x59403c['some'](_0x22600d=>_0x22600d[_0x4fe9a9(0x16c)]===_0x4fe9a9(0x157)))throw CliErrors[_0x4fe9a9(0x17b)](_0x4fe9a9(0x186));return _0x59403c;}function a45_0x3c99(_0x56aaed,_0x29300c){_0x56aaed=_0x56aaed-0x141;const _0x5e47d3=a45_0x5e47();let _0x3c9981=_0x5e47d3[_0x56aaed];return _0x3c9981;}export async function assertRuntimePermissionManager(_0x2bb144){const _0x1bd192=a45_0x2b2ab9,_0xee578f=await getLoginUserInfo(),_0x57b2d3=_0xee578f['userId']??_0xee578f['id'],_0x9bcff9=Number(_0x57b2d3);if(!Number[_0x1bd192(0x18d)](_0x9bcff9)||_0x9bcff9<=0x0)throw CliErrors[_0x1bd192(0x17b)](_0x1bd192(0x144));const _0x223374=await listRuntimeRoleUsers(_0x2bb144),_0x58da3b=_0x223374[_0x1bd192(0x15f)](_0x4f98b9=>(_0x4f98b9[_0x1bd192(0x16c)]==='ADMIN'||_0x4f98b9['roleType']==='OWNER')&&_0x4f98b9['userList'][_0x1bd192(0x15f)](_0x460377=>_0x460377[_0x1bd192(0x159)]===_0x9bcff9));if(!_0x58da3b)throw CliErrors[_0x1bd192(0x17b)]('Runtime\x20resource\x20permission\x20changes\x20require\x20an\x20ADMIN\x20or\x20OWNER\x20role.',_0x1bd192(0x160));}export function assertRuntimePermitRoleConfigurable(_0x5a9631){const _0x2e2e3a=a45_0x2b2ab9;if(_0x5a9631['roleType']==='ADMIN'||_0x5a9631[_0x2e2e3a(0x16c)]===_0x2e2e3a(0x14d))throw CliErrors['validation'](_0x2e2e3a(0x145)+_0x5a9631[_0x2e2e3a(0x16c)]+_0x2e2e3a(0x163)+_0x5a9631['roleName']+'.',_0x2e2e3a(0x14b));}function asPermitRole(_0x46f190){const _0x1560b9=a45_0x2b2ab9;return{'id':_0x46f190['id'],'roleName':_0x46f190[_0x1560b9(0x143)],'roleType':_0x46f190[_0x1560b9(0x16c)],'allowed':!![]};}export function applyRuntimeRolePermission(_0x1cdea1,_0xe6ca5a,_0x2fd7ec,_0x1f22ae){const _0x121834=a45_0x2b2ab9,_0x181131=!_0x1cdea1||_0x1cdea1[_0x121834(0x18c)]===0x0,_0x33b6b0=_0x1cdea1?.[_0x121834(0x15f)](_0x586110=>_0x586110[_0x121834(0x16c)]===_0x121834(0x174))??![];if(_0x1f22ae==='grant'&&(_0x181131||_0x33b6b0))return{'roles':_0x1cdea1??null,'changed':![]};let _0x202430=_0x181131||_0x33b6b0?_0x2fd7ec['filter'](_0x2faefa=>_0x2faefa['id']>0x0):[..._0x1cdea1];const _0x5ced4a=_0x202430['some'](_0x452028=>_0x452028['id']===_0xe6ca5a['id']);if(_0x1f22ae===_0x121834(0x164)){if(_0x5ced4a)return{'roles':_0x202430,'changed':![]};return _0x202430[_0x121834(0x162)](asPermitRole(_0xe6ca5a)),{'roles':_0x202430,'changed':!![]};}if(!_0x5ced4a)return{'roles':_0x202430,'changed':_0x181131||_0x33b6b0};_0x202430=_0x202430[_0x121834(0x17e)](_0x5a21e9=>_0x5a21e9['id']!==_0xe6ca5a['id']);if(_0x202430[_0x121834(0x18c)]===0x0)throw CliErrors[_0x121834(0x17b)](_0x121834(0x187),_0x121834(0x17d));return{'roles':_0x202430,'changed':!![]};}export function projectRuntimePagePermit(_0x22f212){const _0x220c60=a45_0x2b2ab9,_0x3cd295={'menuId':_0x22f212[_0x220c60(0x16d)],'pageId':_0x22f212['pageId'],'appCode':_0x22f212[_0x220c60(0x171)],'datasetCode':_0x22f212[_0x220c60(0x16b)]};for(const _0x469dc6 of PAGE_SLOT_SPECS){const _0x130ad1=_0x22f212[_0x469dc6[_0x220c60(0x177)]];_0x130ad1&&(_0x3cd295[_0x469dc6[_0x220c60(0x177)]]={'resourceCode':_0x130ad1[_0x220c60(0x141)],'resourceType':_0x130ad1[_0x220c60(0x150)],'roles':(_0x130ad1[_0x220c60(0x15a)]??[])['map'](_0x2633b5=>({'id':_0x2633b5['id'],'roleName':_0x2633b5['roleName'],'roleType':_0x2633b5[_0x220c60(0x16c)]}))});}return _0x3cd295;}export function flattenRuntimeMenuRolePermits(_0xd75d3a){const _0x4675d6=[],_0x21a195=_0x1ed77f=>{const _0x5c8062=a45_0x3c99;_0x4675d6[_0x5c8062(0x162)](_0x1ed77f);for(const _0x320263 of _0x1ed77f[_0x5c8062(0x155)]??[])_0x21a195(_0x320263);};for(const _0x576340 of _0xd75d3a)_0x21a195(_0x576340);return _0x4675d6;}export function runtimePermitWriteResult(_0xe6b2c1,_0x5b860f,_0x5563d3,_0x16145d,_0xa98ecb,_0x300685=[]){const _0x3f3b2e=a45_0x2b2ab9;return{'operation':_0xe6b2c1,'scope':_0x3f3b2e(0x166),'selector':_0x5b860f,'before':_0x5563d3,'after':_0x16145d,'dryRun':![],'backend':_0xa98ecb,'warnings':_0x300685};}export function menuPermitDto(_0x3cb5ba,_0x5cfd3a,_0x43b100){const _0x544de0=a45_0x2b2ab9;return{..._0x5cfd3a[_0x544de0(0x179)]!=null?{'id':_0x5cfd3a['permitId']}:{},'appCode':_0x3cb5ba,'menuId':_0x5cfd3a['id'],'pageId':_0x5cfd3a[_0x544de0(0x15e)]??null,'resourceCode':String(_0x5cfd3a['id']),'resourceType':_0x544de0(0x149),'resourceName':_0x5cfd3a[_0x544de0(0x14a)],'rolePermit':_0x43b100};}
1
+ const a46_0x4d75eb=a46_0x3e1f;(function(_0x40aad0,_0x17d103){const _0x4c44f2=a46_0x3e1f,_0xf13a8e=_0x40aad0();while(!![]){try{const _0x1680c2=parseInt(_0x4c44f2(0x14a))/0x1+-parseInt(_0x4c44f2(0x125))/0x2*(-parseInt(_0x4c44f2(0x14d))/0x3)+-parseInt(_0x4c44f2(0x151))/0x4*(parseInt(_0x4c44f2(0x132))/0x5)+parseInt(_0x4c44f2(0x135))/0x6+-parseInt(_0x4c44f2(0x15f))/0x7+-parseInt(_0x4c44f2(0x147))/0x8*(-parseInt(_0x4c44f2(0x157))/0x9)+parseInt(_0x4c44f2(0x152))/0xa*(parseInt(_0x4c44f2(0x15c))/0xb);if(_0x1680c2===_0x17d103)break;else _0xf13a8e['push'](_0xf13a8e['shift']());}catch(_0x5c3bea){_0xf13a8e['push'](_0xf13a8e['shift']());}}}(a46_0xea92,0x94d34));import{getLoginUserInfo,listRuntimePermitRoles,listRuntimeRoleUsers}from'../../core/api-client.js';function a46_0x3e1f(_0x47df42,_0x54282d){_0x47df42=_0x47df42-0x120;const _0xea9212=a46_0xea92();let _0x3e1ff5=_0xea9212[_0x47df42];return _0x3e1ff5;}import{CliErrors}from'../../errors.js';export const MENU_ID_FLAG={'name':a46_0x4d75eb(0x13f),'type':a46_0x4d75eb(0x126),'required':!![],'description':a46_0x4d75eb(0x143)};export const ROLE_REF_FLAG={'name':a46_0x4d75eb(0x168),'type':a46_0x4d75eb(0x12a),'required':!![],'description':a46_0x4d75eb(0x153)};export const GRANT_FLAG={'name':a46_0x4d75eb(0x155),'type':'boolean','description':a46_0x4d75eb(0x14f)};export const REVOKE_FLAG={'name':'revoke','type':'boolean','description':a46_0x4d75eb(0x129)};export const PAGE_SLOT_SPECS=[{'flag':'menu-roles','key':a46_0x4d75eb(0x138),'allowSelf':![]},{'flag':a46_0x4d75eb(0x130),'key':a46_0x4d75eb(0x160),'allowSelf':![]},{'flag':'update-roles','key':a46_0x4d75eb(0x163),'allowSelf':![]},{'flag':a46_0x4d75eb(0x161),'key':'dataDelete','allowSelf':![]},{'flag':'detail-roles','key':a46_0x4d75eb(0x166),'allowSelf':![]},{'flag':'export-roles','key':'dataExport','allowSelf':![]},{'flag':'row-roles','key':'dataPermit','allowSelf':!![]}];function a46_0xea92(){const _0x2265e4=['grant','userList','117eLzEVl','permitId','resourceCode','\x20has\x20full\x20runtime\x20access\x20and\x20cannot\x20be\x20a\x20resource\x20permission\x20target.','The\x20current\x20service\x20contract\x20does\x20not\x20persist\x20an\x20empty\x20rolePermit;\x20grant\x20another\x20role\x20first.','33VKvFFR','push','values','6286819LGnDML','dataCreate','delete-roles','\x20must\x20contain\x20at\x20least\x20one\x20value.','dataUpdate','Cannot\x20change\x20resource\x20permissions\x20for\x20','find','dataDetail','runtime','role','OWNER','Permission\x20role\x20\x22','roleName','\x20runtime\x20role\x20','Pass\x20exactly\x20one\x20of\x20--grant\x20or\x20--revoke.','revoke','2zloLZX','number','Use\x20a\x20role\x20ID\x20from\x20`lovrabet\x20role\x20list`.','SELF\x20is\x20only\x20valid\x20for\x20--row-roles.','Revoke\x20the\x20selected\x20resources\x20from\x20the\x20role','string','flag','Ask\x20an\x20application\x20manager\x20to\x20perform\x20this\x20operation.','ALL','SELF','resourceType','create-roles','filter','56645hCBtIf','MENU','trim','3652602fJAqPO','roleType','Cannot\x20resolve\x20the\x20current\x20AK\x20userId\x20for\x20permission\x20management.','menuPermit','toUpperCase','pageId','\x22\x20is\x20ambiguous.','children','ADMIN','map','menu-id','Runtime\x20resource\x20permission\x20changes\x20require\x20an\x20ADMIN\x20or\x20OWNER\x20role.','isSafeInteger','some','Runtime\x20menu\x20ID','datasetCode','validation','label','68776ikrXyt','ADMIN\x20and\x20OWNER\x20have\x20full\x20runtime\x20access;\x20configure\x20USER\x20or\x20CUSTOM\x20instead.','\x22\x20was\x20not\x20found.','452853ltBOwI','appCode','key','3457062OWYgfl','userId','Grant\x20the\x20selected\x20resources\x20to\x20the\x20role','length','428foulBm','1313910SmZNke','Runtime\x20role\x20ID\x20or\x20exact\x20role\x20name','Comma-separated\x20runtime\x20role\x20IDs\x20or\x20names'];a46_0xea92=function(){return _0x2265e4;};return a46_0xea92();}export const PAGE_ROLE_FLAGS=PAGE_SLOT_SPECS[a46_0x4d75eb(0x13e)](_0x12a2d6=>({'name':_0x12a2d6[a46_0x4d75eb(0x12b)],'type':'string','description':a46_0x4d75eb(0x154)}));export function splitRefs(_0x51c1b5,_0xd48d4e){const _0x49d2d2=a46_0x4d75eb,_0x2e9999=[...new Set(_0x51c1b5['split'](',')[_0x49d2d2(0x13e)](_0x395fba=>_0x395fba['trim']())[_0x49d2d2(0x131)](Boolean))];if(_0x2e9999[_0x49d2d2(0x150)]===0x0)throw CliErrors[_0x49d2d2(0x145)](_0xd48d4e+_0x49d2d2(0x162));return _0x2e9999;}export function assertGrantOrRevoke(_0x42814b,_0xff268b){const _0x3c264a=a46_0x4d75eb;if(_0x42814b===_0xff268b)throw CliErrors[_0x3c264a(0x145)](_0x3c264a(0x123));return _0x42814b?_0x3c264a(0x155):_0x3c264a(0x124);}function resolvePermitRole(_0x58439a,_0x12c31b){const _0x2e8169=a46_0x4d75eb,_0x4194a4=_0x12c31b[_0x2e8169(0x134)](),_0x55be44=/^-?\d+$/['test'](_0x4194a4)?_0x58439a[_0x2e8169(0x131)](_0x20a494=>_0x20a494['id']===Number(_0x4194a4)):_0x58439a[_0x2e8169(0x131)](_0x443d38=>_0x443d38[_0x2e8169(0x121)]===_0x4194a4||_0x443d38[_0x2e8169(0x136)]===_0x4194a4[_0x2e8169(0x139)]());if(_0x55be44[_0x2e8169(0x150)]!==0x1)throw CliErrors[_0x2e8169(0x145)](_0x55be44[_0x2e8169(0x150)]===0x0?_0x2e8169(0x120)+_0x4194a4+_0x2e8169(0x149):_0x2e8169(0x120)+_0x4194a4+_0x2e8169(0x13b),_0x2e8169(0x127));return _0x55be44[0x0];}export async function resolveRuntimePermitRoles(_0xa8c445,_0x39f80c,_0x5c468b){const _0x171b8e=a46_0x4d75eb,_0x585fed=await listRuntimePermitRoles(_0xa8c445,{'needSelf':!![],'needPublic':!![]}),_0x39fbe1=[...new Map(_0x39f80c[_0x171b8e(0x13e)](_0x5486b3=>resolvePermitRole(_0x585fed,_0x5486b3))[_0x171b8e(0x13e)](_0x1d7106=>[_0x1d7106['id'],_0x1d7106]))[_0x171b8e(0x15e)]()],_0x32d411=_0x39fbe1[_0x171b8e(0x165)](_0x680ebc=>_0x680ebc['roleType']==='ADMIN'||_0x680ebc[_0x171b8e(0x136)]==='OWNER');if(_0x32d411)throw CliErrors[_0x171b8e(0x145)](_0x32d411[_0x171b8e(0x136)]+_0x171b8e(0x15a),'Configure\x20USER,\x20CUSTOM,\x20or\x20an\x20applicable\x20special\x20role\x20instead.');if(!_0x5c468b&&_0x39fbe1[_0x171b8e(0x142)](_0x75f729=>_0x75f729[_0x171b8e(0x136)]===_0x171b8e(0x12e)))throw CliErrors[_0x171b8e(0x145)](_0x171b8e(0x128));return _0x39fbe1;}export async function assertRuntimePermissionManager(_0x666cc7){const _0x35d2b0=a46_0x4d75eb,_0x51570c=await getLoginUserInfo(),_0x575f2f=_0x51570c[_0x35d2b0(0x14e)]??_0x51570c['id'],_0x4dea66=Number(_0x575f2f);if(!Number[_0x35d2b0(0x141)](_0x4dea66)||_0x4dea66<=0x0)throw CliErrors[_0x35d2b0(0x145)](_0x35d2b0(0x137));const _0xd0ac8f=await listRuntimeRoleUsers(_0x666cc7),_0x1b8691=_0xd0ac8f[_0x35d2b0(0x142)](_0x2cd0f2=>(_0x2cd0f2[_0x35d2b0(0x136)]==='ADMIN'||_0x2cd0f2[_0x35d2b0(0x136)]===_0x35d2b0(0x169))&&_0x2cd0f2[_0x35d2b0(0x156)][_0x35d2b0(0x142)](_0x3165b0=>_0x3165b0[_0x35d2b0(0x14e)]===_0x4dea66));if(!_0x1b8691)throw CliErrors['validation'](_0x35d2b0(0x140),_0x35d2b0(0x12c));}export function assertRuntimePermitRoleConfigurable(_0x436a53){const _0x215e45=a46_0x4d75eb;if(_0x436a53['roleType']===_0x215e45(0x13d)||_0x436a53[_0x215e45(0x136)]===_0x215e45(0x169))throw CliErrors['validation'](_0x215e45(0x164)+_0x436a53[_0x215e45(0x136)]+_0x215e45(0x122)+_0x436a53[_0x215e45(0x121)]+'.',_0x215e45(0x148));}function asPermitRole(_0x352b6a){const _0x40ecf1=a46_0x4d75eb;return{'id':_0x352b6a['id'],'roleName':_0x352b6a['roleName'],'roleType':_0x352b6a[_0x40ecf1(0x136)],'allowed':!![]};}export function applyRuntimeRolePermission(_0x31b5b4,_0x25767d,_0x115b65,_0x5dee6f){const _0x4f1a76=a46_0x4d75eb,_0x2337f2=!_0x31b5b4||_0x31b5b4[_0x4f1a76(0x150)]===0x0,_0x40b3e3=_0x31b5b4?.[_0x4f1a76(0x142)](_0x5139d0=>_0x5139d0['roleType']===_0x4f1a76(0x12d))??![];if(_0x5dee6f===_0x4f1a76(0x155)&&(_0x2337f2||_0x40b3e3))return{'roles':_0x31b5b4??null,'changed':![]};let _0x18ee99=_0x2337f2||_0x40b3e3?_0x115b65[_0x4f1a76(0x131)](_0x1e7622=>_0x1e7622['id']>0x0):[..._0x31b5b4];const _0xc60cd8=_0x18ee99[_0x4f1a76(0x142)](_0x2a8983=>_0x2a8983['id']===_0x25767d['id']);if(_0x5dee6f===_0x4f1a76(0x155)){if(_0xc60cd8)return{'roles':_0x18ee99,'changed':![]};return _0x18ee99[_0x4f1a76(0x15d)](asPermitRole(_0x25767d)),{'roles':_0x18ee99,'changed':!![]};}if(!_0xc60cd8)return{'roles':_0x18ee99,'changed':_0x2337f2||_0x40b3e3};_0x18ee99=_0x18ee99['filter'](_0x15cfcd=>_0x15cfcd['id']!==_0x25767d['id']);if(_0x18ee99['length']===0x0)throw CliErrors[_0x4f1a76(0x145)]('Cannot\x20revoke\x20the\x20last\x20role\x20from\x20a\x20runtime\x20resource.',_0x4f1a76(0x15b));return{'roles':_0x18ee99,'changed':!![]};}export function projectRuntimePagePermit(_0x152449){const _0x599e1a=a46_0x4d75eb,_0x29f6ed={'menuId':_0x152449['menuId'],'pageId':_0x152449[_0x599e1a(0x13a)],'appCode':_0x152449[_0x599e1a(0x14b)],'datasetCode':_0x152449[_0x599e1a(0x144)]};for(const _0x14326b of PAGE_SLOT_SPECS){const _0x5d5993=_0x152449[_0x14326b[_0x599e1a(0x14c)]];_0x5d5993&&(_0x29f6ed[_0x14326b[_0x599e1a(0x14c)]]={'resourceCode':_0x5d5993[_0x599e1a(0x159)],'resourceType':_0x5d5993[_0x599e1a(0x12f)],'roles':(_0x5d5993['rolePermit']??[])['map'](_0xe5c981=>({'id':_0xe5c981['id'],'roleName':_0xe5c981['roleName'],'roleType':_0xe5c981[_0x599e1a(0x136)]}))});}return _0x29f6ed;}export function flattenRuntimeMenuRolePermits(_0x8b7e25){const _0x310012=[],_0x51b6f4=_0x25425d=>{const _0x327c04=a46_0x3e1f;_0x310012['push'](_0x25425d);for(const _0x24e939 of _0x25425d[_0x327c04(0x13c)]??[])_0x51b6f4(_0x24e939);};for(const _0xf4dbb9 of _0x8b7e25)_0x51b6f4(_0xf4dbb9);return _0x310012;}export function runtimePermitWriteResult(_0x510d22,_0x113965,_0x2d4593,_0x33fa13,_0x5de952,_0x1e3e59=[]){const _0x5813b5=a46_0x4d75eb;return{'operation':_0x510d22,'scope':_0x5813b5(0x167),'selector':_0x113965,'before':_0x2d4593,'after':_0x33fa13,'dryRun':![],'backend':_0x5de952,'warnings':_0x1e3e59};}export function menuPermitDto(_0x489402,_0x40df7c,_0x5af8e0){const _0x3ed893=a46_0x4d75eb;return{..._0x40df7c['permitId']!=null?{'id':_0x40df7c[_0x3ed893(0x158)]}:{},'appCode':_0x489402,'menuId':_0x40df7c['id'],'pageId':_0x40df7c['pageId']??null,'resourceCode':String(_0x40df7c['id']),'resourceType':_0x3ed893(0x133),'resourceName':_0x40df7c[_0x3ed893(0x146)],'rolePermit':_0x5af8e0};}
@@ -1 +1 @@
1
- const a46_0x9d3956=a46_0x2bd1;function a46_0x2bd1(_0x3e26ff,_0x4d7d05){_0x3e26ff=_0x3e26ff-0x9e;const _0x249073=a46_0x2490();let _0x2bd1e8=_0x249073[_0x3e26ff];return _0x2bd1e8;}(function(_0x4f90eb,_0xceefb2){const _0x590ed2=a46_0x2bd1,_0x496e95=_0x4f90eb();while(!![]){try{const _0x34c247=-parseInt(_0x590ed2(0xd9))/0x1*(-parseInt(_0x590ed2(0xb6))/0x2)+-parseInt(_0x590ed2(0xa2))/0x3+-parseInt(_0x590ed2(0xcf))/0x4*(-parseInt(_0x590ed2(0xa7))/0x5)+parseInt(_0x590ed2(0xdd))/0x6*(parseInt(_0x590ed2(0xa1))/0x7)+-parseInt(_0x590ed2(0xd2))/0x8*(parseInt(_0x590ed2(0xbe))/0x9)+-parseInt(_0x590ed2(0xb8))/0xa+parseInt(_0x590ed2(0xcb))/0xb;if(_0x34c247===_0xceefb2)break;else _0x496e95['push'](_0x496e95['shift']());}catch(_0x5a8a33){_0x496e95['push'](_0x496e95['shift']());}}}(a46_0x2490,0x727ef));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_0x9d3956(0xd7),'type':'string','description':a46_0x9d3956(0xc7)},FUNCTION_NAME_FLAG={'name':a46_0x9d3956(0xab),'type':a46_0x9d3956(0xdf),'required':!![],'description':a46_0x9d3956(0xa8)},DESCRIPTION_FLAG={'name':a46_0x9d3956(0xc2),'type':a46_0x9d3956(0xdf),'description':'Personal\x20Backend\x20Function\x20description'},SOURCE_SESSION_FLAG={'name':'source-session-id','type':a46_0x9d3956(0xdf),'description':a46_0x9d3956(0xa5)};function normalizeFunctionName(_0x595597){const _0x354e02=a46_0x9d3956,_0x550408=String(_0x595597||'')[_0x354e02(0xc5)]();if(!_0x550408||!FUNCTION_NAME_PATTERN[_0x354e02(0xdc)](_0x550408))throw CliErrors[_0x354e02(0xc3)]('--name\x20must\x20be\x20a\x20valid\x20JavaScript\x20identifier,\x20for\x20example\x20loadOrders.');return _0x550408;}function readScriptFile(_0x280fa0){const _0x4391f7=a46_0x9d3956;if(!_0x280fa0)throw CliErrors[_0x4391f7(0xc3)](_0x4391f7(0xaa));if(!existsSync(_0x280fa0))throw CliErrors['validation'](_0x4391f7(0x9e)+_0x280fa0);if(!statSync(_0x280fa0)[_0x4391f7(0xa9)]())throw CliErrors[_0x4391f7(0xc3)]('File\x20is\x20not\x20a\x20regular\x20file:\x20'+_0x280fa0);const _0x3bf47a=readFileSync(_0x280fa0,_0x4391f7(0xad));if(!_0x3bf47a[_0x4391f7(0xc5)]())throw CliErrors[_0x4391f7(0xc3)]('Personal\x20Backend\x20Function\x20script\x20file\x20is\x20blank.');return _0x3bf47a;}function optionalTrimmed(_0x5e0fce){const _0x432471=a46_0x9d3956,_0x491198=String(_0x5e0fce||'')[_0x432471(0xc5)]();return _0x491198||undefined;}function summarizeBff(_0x576cfc){const _0x51b5ef=a46_0x9d3956;return{'id':_0x576cfc['id'],'appCode':_0x576cfc[_0x51b5ef(0xa6)],'functionName':_0x576cfc['functionName'],'description':_0x576cfc[_0x51b5ef(0xc2)],'scriptType':_0x576cfc[_0x51b5ef(0xd1)],'version':_0x576cfc[_0x51b5ef(0xb5)],'gmtModified':_0x576cfc[_0x51b5ef(0xb2)],'updateTime':_0x576cfc[_0x51b5ef(0xc0)]};}function detailBff(_0x4c3671){const _0x1951e0=a46_0x9d3956;return{'id':_0x4c3671['id'],'appCode':_0x4c3671[_0x1951e0(0xa6)],'functionName':_0x4c3671[_0x1951e0(0xd8)],'description':_0x4c3671[_0x1951e0(0xc2)],'scriptType':_0x4c3671[_0x1951e0(0xd1)],'scriptContent':_0x4c3671[_0x1951e0(0xa0)]??'','config':_0x4c3671[_0x1951e0(0xd6)],'version':_0x4c3671['version'],'createUserId':_0x4c3671[_0x1951e0(0xba)],'gmtCreate':_0x4c3671['gmtCreate'],'gmtModified':_0x4c3671['gmtModified'],'createTime':_0x4c3671[_0x1951e0(0xce)],'updateTime':_0x4c3671['updateTime']};}function buildCreateInput(_0x3c198f){const _0x2e7087=a46_0x9d3956;return{'functionName':normalizeFunctionName(_0x3c198f[_0x2e7087(0xae)](_0x2e7087(0xab))),...optionalTrimmed(_0x3c198f[_0x2e7087(0xae)]('description'))?{'description':optionalTrimmed(_0x3c198f[_0x2e7087(0xae)](_0x2e7087(0xc2)))}:{},'scriptContent':readScriptFile(_0x3c198f[_0x2e7087(0xae)](_0x2e7087(0xd7))),...optionalTrimmed(_0x3c198f[_0x2e7087(0xae)]('source-session-id'))?{'sourceSessionId':optionalTrimmed(_0x3c198f[_0x2e7087(0xae)](_0x2e7087(0xb7)))}:{}};}function buildUpdateInput(_0x5ac12a){const _0x2d852d=a46_0x9d3956,_0x38f58e={};optionalTrimmed(_0x5ac12a[_0x2d852d(0xae)](_0x2d852d(0xab)))&&(_0x38f58e[_0x2d852d(0xd8)]=normalizeFunctionName(_0x5ac12a[_0x2d852d(0xae)]('name')));_0x5ac12a[_0x2d852d(0xe2)](_0x2d852d(0xc2))!==undefined&&(_0x38f58e[_0x2d852d(0xc2)]=_0x5ac12a[_0x2d852d(0xae)](_0x2d852d(0xc2)));optionalTrimmed(_0x5ac12a[_0x2d852d(0xae)](_0x2d852d(0xd7)))&&(_0x38f58e[_0x2d852d(0xa0)]=readScriptFile(_0x5ac12a[_0x2d852d(0xae)](_0x2d852d(0xd7))));_0x5ac12a['flag'](_0x2d852d(0xb7))!==undefined&&(_0x38f58e['sourceSessionId']=_0x5ac12a['str']('source-session-id'));if(Object[_0x2d852d(0xbd)](_0x38f58e)[_0x2d852d(0xe4)]===0x0)throw CliErrors[_0x2d852d(0xc3)](_0x2d852d(0xbc));return _0x38f58e;}function parseExecParams(_0x36b626){const _0x164e8d=a46_0x9d3956,_0x219920=parseJsonParams(_0x36b626)??{};if(Array[_0x164e8d(0xc1)](_0x219920))throw CliErrors[_0x164e8d(0xc3)](_0x164e8d(0xa3));return _0x219920;}const personalBffList={'service':'personal-bff','command':a46_0x9d3956(0xd4),'description':a46_0x9d3956(0xd3),'risk':a46_0x9d3956(0xcc),'flags':[VERBOSE_FLAG],async 'execute'(_0xcf009d){const _0x494d36=a46_0x9d3956,_0x3a5b14=await listPersonalBffs(_0xcf009d[_0x494d36(0xa6)]);return{'ok':!![],'data':{'total':_0x3a5b14[_0x494d36(0xe4)],'items':_0xcf009d['bool'](_0x494d36(0xc8))?_0x3a5b14:_0x3a5b14[_0x494d36(0xb0)](summarizeBff)}};}},personalBffDetail={'service':a46_0x9d3956(0xb3),'command':'detail','description':a46_0x9d3956(0xcd),'risk':'read','flags':[{...ID_FLAG,'description':a46_0x9d3956(0xe3)}],async 'execute'(_0x32dfaa){const _0x5f583b=a46_0x9d3956,_0x17a66e=await getPersonalBff(_0x32dfaa[_0x5f583b(0xe1)]('id'),_0x32dfaa[_0x5f583b(0xa6)]);return{'ok':!![],'data':detailBff(_0x17a66e)};}},personalBffCreate={'service':a46_0x9d3956(0xb3),'command':'create','description':a46_0x9d3956(0xda),'risk':a46_0x9d3956(0xd5),'confirmationDescription':'把本地脚本保存为Personal\x20Backend\x20Function;之后可在当前应用中调用该脚本。','flags':[FUNCTION_NAME_FLAG,{...FILE_FLAG,'required':!![]},DESCRIPTION_FLAG,SOURCE_SESSION_FLAG],async 'execute'(_0x19cac4){const _0x7c4521=a46_0x9d3956,_0x135ab9=buildCreateInput(_0x19cac4),_0x166521=await createPersonalBff(_0x19cac4['appCode'],_0x135ab9);return{'ok':!![],'data':detailBff(_0x166521),'message':_0x7c4521(0xa4)+_0x166521['id']+(_0x166521['functionName']?'\x20('+_0x166521[_0x7c4521(0xd8)]+')':'')};},async 'dryRun'(_0xbed3b5){const _0x593cbe=a46_0x9d3956,_0x569373=buildCreateInput(_0xbed3b5);return dryRun(_0x593cbe(0xdb),_0x593cbe(0xbb))[_0x593cbe(0xb1)]({'appCode':_0xbed3b5[_0x593cbe(0xa6)],..._0x569373})['description'](_0x593cbe(0xde)+_0x569373['functionName'])['build']();}},personalBffUpdate={'service':'personal-bff','command':a46_0x9d3956(0xb9),'description':a46_0x9d3956(0xca),'risk':'write','confirmationDescription':a46_0x9d3956(0xac),'flags':[{...ID_FLAG,'description':a46_0x9d3956(0xe3)},{...FUNCTION_NAME_FLAG,'required':![]},FILE_FLAG,DESCRIPTION_FLAG,SOURCE_SESSION_FLAG],async 'execute'(_0x461b88){const _0x1e6a35=a46_0x9d3956,_0x58f85e=_0x461b88[_0x1e6a35(0xe1)]('id'),_0x14c759=buildUpdateInput(_0x461b88),_0x517683=await updatePersonalBff(_0x58f85e,_0x461b88['appCode'],_0x14c759);return{'ok':!![],'data':detailBff(_0x517683),'message':_0x1e6a35(0xe0)+_0x517683['id']+(_0x517683[_0x1e6a35(0xd8)]?'\x20('+_0x517683[_0x1e6a35(0xd8)]+')':'')};},async 'dryRun'(_0x5d9bf5){const _0x3371ee=a46_0x9d3956,_0x3ce294=_0x5d9bf5[_0x3371ee(0xe1)]('id'),_0xf144b5=buildUpdateInput(_0x5d9bf5);return dryRun('POST',_0x3371ee(0x9f)+_0x3ce294+_0x3371ee(0xaf))['body']({'appCode':_0x5d9bf5['appCode'],..._0xf144b5})[_0x3371ee(0xc2)]('Preview:\x20update\x20Personal\x20Backend\x20Function\x20'+_0x3ce294)['build']();}},personalBffExec={'service':a46_0x9d3956(0xb3),'command':a46_0x9d3956(0xc9),'description':a46_0x9d3956(0xc6),'risk':'write','confirmationDescription':a46_0x9d3956(0xc4),'flags':[{...ID_FLAG,'description':'Personal\x20Backend\x20Function\x20script\x20ID'},{...PARAMS_FLAG,'description':a46_0x9d3956(0xbf)}],async 'validate'(_0x26c639){const _0x55f9d1=a46_0x9d3956;parseExecParams(_0x26c639[_0x55f9d1(0xae)]('params'));},async 'execute'(_0x1a9c31){const _0x27b413=a46_0x9d3956,_0x574e1e=_0x1a9c31[_0x27b413(0xe1)]('id'),_0x5c94bb=parseExecParams(_0x1a9c31[_0x27b413(0xae)](_0x27b413(0xd0))),_0x19ed5e=await executePersonalBff(_0x574e1e,_0x1a9c31[_0x27b413(0xa6)],_0x5c94bb);return{'ok':!![],'data':{'result':_0x19ed5e},'message':_0x27b413(0xb4)+_0x574e1e};}};export const personalBffDefinitions=[personalBffList,personalBffDetail,personalBffCreate,personalBffUpdate,personalBffExec];function a46_0x2490(){const _0x43c4fe=['File\x20not\x20found:\x20','/client/runtime-bff/personal/','scriptContent','1498742dKYJax','2462871hqXjzG','--params\x20must\x20be\x20a\x20JSON\x20object.','Created\x20Personal\x20Backend\x20Function\x20','Optional\x20source\x20RuntimeAgent\x20session\x20id','appCode','5XNwkol','Personal\x20Backend\x20Function\x20name,\x20for\x20example\x20loadOrders','isFile','File\x20path\x20is\x20required.','name','更新Personal\x20Backend\x20Function\x20的脚本或元信息;之后的调用将使用新版本。','utf8','str','/update','map','body','gmtModified','personal-bff','Executed\x20Personal\x20Backend\x20Function\x20','version','1094IesUUN','source-session-id','3982360OPJSCh','update','createUserId','/client/runtime-bff/personal/create','personal-bff\x20update\x20requires\x20at\x20least\x20one\x20of\x20--name,\x20--description,\x20--file,\x20or\x20--source-session-id.','keys','6759288ZpMZjI','JSON\x20object\x20passed\x20to\x20the\x20Personal\x20Backend\x20Function\x20execution','updateTime','isArray','description','validation','执行Personal\x20Backend\x20Function\x20脚本;脚本可能读取或修改业务数据,也可能调用外部服务。','trim','根据\x20ID\x20执行Personal\x20Backend\x20Function,并可传入\x20JSON\x20参数','Path\x20to\x20a\x20local\x20UTF-8\x20JavaScript\x20or\x20TypeScript\x20file','verbose','exec','根据\x20ID\x20更新Personal\x20Backend\x20Function','14894704HlDjTL','read','Show\x20one\x20Personal\x20Backend\x20Function\x20by\x20id','createTime','2724884yyDTfH','params','scriptType','8VGNUsM','List\x20current\x20user\x27s\x20Personal\x20Backend\x20Function\x20scripts\x20for\x20the\x20current\x20app','list','write','config','file','functionName','347TmMYkR','根据本地脚本文件创建Personal\x20Backend\x20Function','POST','test','6GzuNED','Preview:\x20create\x20Personal\x20Backend\x20Function\x20','string','Updated\x20Personal\x20Backend\x20Function\x20','num','flag','Personal\x20Backend\x20Function\x20script\x20ID','length'];a46_0x2490=function(){return _0x43c4fe;};return a46_0x2490();}
1
+ const a47_0x1d72a8=a47_0x148e;(function(_0x339f2c,_0x36bf1f){const _0x2eab86=a47_0x148e,_0x1e62c5=_0x339f2c();while(!![]){try{const _0x5c5a9a=parseInt(_0x2eab86(0x165))/0x1+-parseInt(_0x2eab86(0x132))/0x2+parseInt(_0x2eab86(0x147))/0x3*(-parseInt(_0x2eab86(0x15c))/0x4)+parseInt(_0x2eab86(0x143))/0x5+-parseInt(_0x2eab86(0x14c))/0x6*(-parseInt(_0x2eab86(0x155))/0x7)+parseInt(_0x2eab86(0x16c))/0x8*(parseInt(_0x2eab86(0x15d))/0x9)+parseInt(_0x2eab86(0x167))/0xa*(-parseInt(_0x2eab86(0x15e))/0xb);if(_0x5c5a9a===_0x36bf1f)break;else _0x1e62c5['push'](_0x1e62c5['shift']());}catch(_0x4a9190){_0x1e62c5['push'](_0x1e62c5['shift']());}}}(a47_0x28a0,0x3c2fa));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';function a47_0x28a0(){const _0x1bc213=['21ODXrPL','functionName','Personal\x20Backend\x20Function\x20name,\x20for\x20example\x20loadOrders','name','bool','30ostjVF','Create\x20a\x20Personal\x20Backend\x20Function\x20from\x20a\x20local\x20script\x20file','description','flag','write','exec','utf8','updateTime','Path\x20to\x20a\x20local\x20UTF-8\x20JavaScript\x20or\x20TypeScript\x20file','394737fwbSJi','Personal\x20Backend\x20Function\x20script\x20file\x20is\x20blank.','update','test','Personal\x20Backend\x20Function\x20script\x20ID','sourceSessionId','Updates\x20the\x20Personal\x20Backend\x20Function\x20script\x20or\x20metadata.\x20Later\x20calls\x20use\x20the\x20new\x20version.','221768WswZnD','1251459IlEFiX','22vCOcrb','personal-bff','trim','--name\x20must\x20be\x20a\x20valid\x20JavaScript\x20identifier,\x20for\x20example\x20loadOrders.','Preview:\x20create\x20Personal\x20Backend\x20Function\x20','keys','JSON\x20object\x20passed\x20to\x20the\x20Personal\x20Backend\x20Function\x20execution','323010LVGduu','createUserId','2185970uTgFpE','createTime','scriptContent','detail','Runs\x20the\x20Personal\x20Backend\x20Function\x20script.\x20The\x20script\x20may\x20read\x20or\x20change\x20business\x20data,\x20or\x20call\x20external\x20services.','24UCBGdL','Optional\x20source\x20RuntimeAgent\x20session\x20id','source-session-id','version','verbose','params','length','create','validation','142864gENEmO','isArray','POST','num','config','/client/runtime-bff/personal/create','Show\x20one\x20Personal\x20Backend\x20Function\x20by\x20id','--params\x20must\x20be\x20a\x20JSON\x20object.','build','Saves\x20the\x20local\x20script\x20as\x20a\x20Personal\x20Backend\x20Function.\x20The\x20script\x20can\x20then\x20be\x20called\x20in\x20the\x20current\x20app.','appCode','string','read','/client/runtime-bff/personal/','File\x20is\x20not\x20a\x20regular\x20file:\x20','str','gmtModified','605620BZrTul','Execute\x20a\x20Personal\x20Backend\x20Function\x20by\x20ID,\x20optionally\x20with\x20JSON\x20params','file','Updated\x20Personal\x20Backend\x20Function\x20'];a47_0x28a0=function(){return _0x1bc213;};return a47_0x28a0();}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':a47_0x1d72a8(0x145),'type':'string','description':a47_0x1d72a8(0x154)},FUNCTION_NAME_FLAG={'name':a47_0x1d72a8(0x14a),'type':a47_0x1d72a8(0x13d),'required':!![],'description':a47_0x1d72a8(0x149)},DESCRIPTION_FLAG={'name':a47_0x1d72a8(0x14e),'type':a47_0x1d72a8(0x13d),'description':'Personal\x20Backend\x20Function\x20description'},SOURCE_SESSION_FLAG={'name':a47_0x1d72a8(0x16e),'type':a47_0x1d72a8(0x13d),'description':a47_0x1d72a8(0x16d)};function normalizeFunctionName(_0x1088b4){const _0x494551=a47_0x1d72a8,_0xf9e7d5=String(_0x1088b4||'')[_0x494551(0x160)]();if(!_0xf9e7d5||!FUNCTION_NAME_PATTERN[_0x494551(0x158)](_0xf9e7d5))throw CliErrors[_0x494551(0x131)](_0x494551(0x161));return _0xf9e7d5;}function readScriptFile(_0x383d1c){const _0x398329=a47_0x1d72a8;if(!_0x383d1c)throw CliErrors[_0x398329(0x131)]('File\x20path\x20is\x20required.');if(!existsSync(_0x383d1c))throw CliErrors['validation']('File\x20not\x20found:\x20'+_0x383d1c);if(!statSync(_0x383d1c)['isFile']())throw CliErrors[_0x398329(0x131)](_0x398329(0x140)+_0x383d1c);const _0x3307ff=readFileSync(_0x383d1c,_0x398329(0x152));if(!_0x3307ff[_0x398329(0x160)]())throw CliErrors[_0x398329(0x131)](_0x398329(0x156));return _0x3307ff;}function optionalTrimmed(_0x18e598){const _0x142792=a47_0x1d72a8,_0x3ddbb=String(_0x18e598||'')[_0x142792(0x160)]();return _0x3ddbb||undefined;}function summarizeBff(_0x1e92c5){const _0x41c95a=a47_0x1d72a8;return{'id':_0x1e92c5['id'],'appCode':_0x1e92c5[_0x41c95a(0x13c)],'functionName':_0x1e92c5[_0x41c95a(0x148)],'description':_0x1e92c5['description'],'scriptType':_0x1e92c5['scriptType'],'version':_0x1e92c5[_0x41c95a(0x16f)],'gmtModified':_0x1e92c5['gmtModified'],'updateTime':_0x1e92c5[_0x41c95a(0x153)]};}function detailBff(_0x2721a6){const _0x27c998=a47_0x1d72a8;return{'id':_0x2721a6['id'],'appCode':_0x2721a6[_0x27c998(0x13c)],'functionName':_0x2721a6[_0x27c998(0x148)],'description':_0x2721a6[_0x27c998(0x14e)],'scriptType':_0x2721a6['scriptType'],'scriptContent':_0x2721a6['scriptContent']??'','config':_0x2721a6[_0x27c998(0x136)],'version':_0x2721a6[_0x27c998(0x16f)],'createUserId':_0x2721a6[_0x27c998(0x166)],'gmtCreate':_0x2721a6['gmtCreate'],'gmtModified':_0x2721a6[_0x27c998(0x142)],'createTime':_0x2721a6[_0x27c998(0x168)],'updateTime':_0x2721a6[_0x27c998(0x153)]};}function buildCreateInput(_0xa350c5){const _0x189a3e=a47_0x1d72a8;return{'functionName':normalizeFunctionName(_0xa350c5[_0x189a3e(0x141)]('name')),...optionalTrimmed(_0xa350c5[_0x189a3e(0x141)]('description'))?{'description':optionalTrimmed(_0xa350c5['str']('description'))}:{},'scriptContent':readScriptFile(_0xa350c5['str']('file')),...optionalTrimmed(_0xa350c5[_0x189a3e(0x141)](_0x189a3e(0x16e)))?{'sourceSessionId':optionalTrimmed(_0xa350c5[_0x189a3e(0x141)]('source-session-id'))}:{}};}function buildUpdateInput(_0x44e610){const _0x7dd785=a47_0x1d72a8,_0x3a3d5c={};optionalTrimmed(_0x44e610[_0x7dd785(0x141)](_0x7dd785(0x14a)))&&(_0x3a3d5c[_0x7dd785(0x148)]=normalizeFunctionName(_0x44e610[_0x7dd785(0x141)](_0x7dd785(0x14a))));_0x44e610[_0x7dd785(0x14f)](_0x7dd785(0x14e))!==undefined&&(_0x3a3d5c[_0x7dd785(0x14e)]=_0x44e610[_0x7dd785(0x141)](_0x7dd785(0x14e)));optionalTrimmed(_0x44e610[_0x7dd785(0x141)](_0x7dd785(0x145)))&&(_0x3a3d5c[_0x7dd785(0x169)]=readScriptFile(_0x44e610[_0x7dd785(0x141)]('file')));_0x44e610[_0x7dd785(0x14f)](_0x7dd785(0x16e))!==undefined&&(_0x3a3d5c[_0x7dd785(0x15a)]=_0x44e610[_0x7dd785(0x141)](_0x7dd785(0x16e)));if(Object[_0x7dd785(0x163)](_0x3a3d5c)['length']===0x0)throw CliErrors[_0x7dd785(0x131)]('personal-bff\x20update\x20requires\x20at\x20least\x20one\x20of\x20--name,\x20--description,\x20--file,\x20or\x20--source-session-id.');return _0x3a3d5c;}function a47_0x148e(_0x56278a,_0x58823b){_0x56278a=_0x56278a-0x12d;const _0x28a091=a47_0x28a0();let _0x148ed8=_0x28a091[_0x56278a];return _0x148ed8;}function parseExecParams(_0x1b9d73){const _0x4aef76=a47_0x1d72a8,_0xb609c9=parseJsonParams(_0x1b9d73)??{};if(Array[_0x4aef76(0x133)](_0xb609c9))throw CliErrors[_0x4aef76(0x131)](_0x4aef76(0x139));return _0xb609c9;}const personalBffList={'service':a47_0x1d72a8(0x15f),'command':'list','description':'List\x20current\x20user\x27s\x20Personal\x20Backend\x20Function\x20scripts\x20for\x20the\x20current\x20app','risk':a47_0x1d72a8(0x13e),'flags':[VERBOSE_FLAG],async 'execute'(_0x4a3f1e){const _0x563679=a47_0x1d72a8,_0x54297b=await listPersonalBffs(_0x4a3f1e[_0x563679(0x13c)]);return{'ok':!![],'data':{'total':_0x54297b[_0x563679(0x12f)],'items':_0x4a3f1e[_0x563679(0x14b)](_0x563679(0x12d))?_0x54297b:_0x54297b['map'](summarizeBff)}};}},personalBffDetail={'service':a47_0x1d72a8(0x15f),'command':a47_0x1d72a8(0x16a),'description':a47_0x1d72a8(0x138),'risk':a47_0x1d72a8(0x13e),'flags':[{...ID_FLAG,'description':a47_0x1d72a8(0x159)}],async 'execute'(_0x2c0517){const _0x37c6bf=await getPersonalBff(_0x2c0517['num']('id'),_0x2c0517['appCode']);return{'ok':!![],'data':detailBff(_0x37c6bf)};}},personalBffCreate={'service':a47_0x1d72a8(0x15f),'command':a47_0x1d72a8(0x130),'description':a47_0x1d72a8(0x14d),'risk':a47_0x1d72a8(0x150),'confirmationDescription':a47_0x1d72a8(0x13b),'flags':[FUNCTION_NAME_FLAG,{...FILE_FLAG,'required':!![]},DESCRIPTION_FLAG,SOURCE_SESSION_FLAG],async 'execute'(_0x4f4219){const _0x53865d=a47_0x1d72a8,_0x70d1df=buildCreateInput(_0x4f4219),_0x4b0005=await createPersonalBff(_0x4f4219[_0x53865d(0x13c)],_0x70d1df);return{'ok':!![],'data':detailBff(_0x4b0005),'message':'Created\x20Personal\x20Backend\x20Function\x20'+_0x4b0005['id']+(_0x4b0005['functionName']?'\x20('+_0x4b0005['functionName']+')':'')};},async 'dryRun'(_0x25aa92){const _0x3eacf4=a47_0x1d72a8,_0x5c3099=buildCreateInput(_0x25aa92);return dryRun(_0x3eacf4(0x134),_0x3eacf4(0x137))['body']({'appCode':_0x25aa92[_0x3eacf4(0x13c)],..._0x5c3099})[_0x3eacf4(0x14e)](_0x3eacf4(0x162)+_0x5c3099[_0x3eacf4(0x148)])[_0x3eacf4(0x13a)]();}},personalBffUpdate={'service':'personal-bff','command':a47_0x1d72a8(0x157),'description':'Update\x20a\x20Personal\x20Backend\x20Function\x20by\x20ID','risk':a47_0x1d72a8(0x150),'confirmationDescription':a47_0x1d72a8(0x15b),'flags':[{...ID_FLAG,'description':a47_0x1d72a8(0x159)},{...FUNCTION_NAME_FLAG,'required':![]},FILE_FLAG,DESCRIPTION_FLAG,SOURCE_SESSION_FLAG],async 'execute'(_0x96428e){const _0x547492=a47_0x1d72a8,_0x1eb430=_0x96428e[_0x547492(0x135)]('id'),_0x512e9c=buildUpdateInput(_0x96428e),_0xaf9564=await updatePersonalBff(_0x1eb430,_0x96428e[_0x547492(0x13c)],_0x512e9c);return{'ok':!![],'data':detailBff(_0xaf9564),'message':_0x547492(0x146)+_0xaf9564['id']+(_0xaf9564['functionName']?'\x20('+_0xaf9564[_0x547492(0x148)]+')':'')};},async 'dryRun'(_0x17535e){const _0x2346e9=a47_0x1d72a8,_0x5b877b=_0x17535e[_0x2346e9(0x135)]('id'),_0x237934=buildUpdateInput(_0x17535e);return dryRun(_0x2346e9(0x134),_0x2346e9(0x13f)+_0x5b877b+'/update')['body']({'appCode':_0x17535e[_0x2346e9(0x13c)],..._0x237934})['description']('Preview:\x20update\x20Personal\x20Backend\x20Function\x20'+_0x5b877b)[_0x2346e9(0x13a)]();}},personalBffExec={'service':a47_0x1d72a8(0x15f),'command':a47_0x1d72a8(0x151),'description':a47_0x1d72a8(0x144),'risk':a47_0x1d72a8(0x150),'confirmationDescription':a47_0x1d72a8(0x16b),'flags':[{...ID_FLAG,'description':a47_0x1d72a8(0x159)},{...PARAMS_FLAG,'description':a47_0x1d72a8(0x164)}],async 'validate'(_0x41c64c){const _0x473295=a47_0x1d72a8;parseExecParams(_0x41c64c[_0x473295(0x141)](_0x473295(0x12e)));},async 'execute'(_0x322cac){const _0x413aa0=a47_0x1d72a8,_0x520dfa=_0x322cac[_0x413aa0(0x135)]('id'),_0x223fab=parseExecParams(_0x322cac[_0x413aa0(0x141)]('params')),_0x40cf56=await executePersonalBff(_0x520dfa,_0x322cac[_0x413aa0(0x13c)],_0x223fab);return{'ok':!![],'data':{'result':_0x40cf56},'message':'Executed\x20Personal\x20Backend\x20Function\x20'+_0x520dfa};}};export const personalBffDefinitions=[personalBffList,personalBffDetail,personalBffCreate,personalBffUpdate,personalBffExec];
@@ -1 +1 @@
1
- const a47_0x42fdb7=a47_0x3e5d;function a47_0x3b67(){const _0x18c32d=['Agent\x20Schedules','set','Personal\x20Backend\x20Function','Schema','app\x20use','Skills','defaultCommand','map','4735566VwhSTS','run','Use\x20`lovrabet\x20logs\x20show`\x20to\x20view\x20command\x20history.','init','874539APFLaN','Knowledge\x20Base','Self\x20Update','`lovrabet\x20app\x20init`\x20has\x20been\x20removed.','app','33813307GFMflo','File','Use\x20`lovrabet\x20workspace\x20init\x20--appcode\x20<code>`\x20instead.','5754784fqhdgT','values','push','`lovrabet\x20app\x20use`\x20has\x20been\x20removed.','15055QLWEpH','has','10OYtQZH','2730MhNkaH','service','User\x20Accounts','Notification\x20Configs','logs\x20clear','isSingleCommand','write','get','12FdNYhL','app\x20init','command','logs','Artifacts','Configuration','Runtime\x20Roles','show','6503744tiSsrR','list','use','API\x20Documentation','config-list','install','Datasets','description','Workspace','Instant\x20API','Diagnostics','from','2gAyFmS','login','Runtime\x20Permissions','711249VjbslS','clear'];a47_0x3b67=function(){return _0x18c32d;};return a47_0x3b67();}(function(_0x577b8c,_0x12161c){const _0x2ee3a7=a47_0x3e5d,_0x2789d6=_0x577b8c();while(!![]){try{const _0x16714f=parseInt(_0x2ee3a7(0x158))/0x1*(-parseInt(_0x2ee3a7(0x147))/0x2)+-parseInt(_0x2ee3a7(0x14a))/0x3*(parseInt(_0x2ee3a7(0x16f))/0x4)+-parseInt(_0x2ee3a7(0x164))/0x5*(-parseInt(_0x2ee3a7(0x167))/0x6)+-parseInt(_0x2ee3a7(0x160))/0x7+-parseInt(_0x2ee3a7(0x177))/0x8+-parseInt(_0x2ee3a7(0x154))/0x9+-parseInt(_0x2ee3a7(0x166))/0xa*(-parseInt(_0x2ee3a7(0x15d))/0xb);if(_0x16714f===_0x12161c)break;else _0x2789d6['push'](_0x2789d6['shift']());}catch(_0x4f7be0){_0x2789d6['push'](_0x2789d6['shift']());}}}(a47_0x3b67,0xaa244));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';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(_0xa94f68){const _0x169ff8=a47_0x3e5d;for(const _0x1a55cd of _0xa94f68){definitions[_0x169ff8(0x14d)](_0x1a55cd[_0x169ff8(0x168)]+':'+_0x1a55cd[_0x169ff8(0x171)],_0x1a55cd);let _0x2492e6=serviceGroups[_0x169ff8(0x16e)](_0x1a55cd[_0x169ff8(0x168)]);!_0x2492e6&&(_0x2492e6=[],serviceGroups['set'](_0x1a55cd[_0x169ff8(0x168)],_0x2492e6)),_0x2492e6[_0x169ff8(0x162)](_0x1a55cd);}}function registerService(_0x13264f,_0x18accd,_0xb12e2b){const _0x25610f=a47_0x3e5d;registerDefinitions(_0x18accd);const _0x42a968=_0x15ee1e=>_0x15ee1e==='read'?'':_0x15ee1e===_0x25610f(0x16d)?'\x20\x20[write]':'\x20\x20[high-risk-write]',_0x11850b={'service':_0x18accd[0x0][_0x25610f(0x168)],'label':_0x13264f,'commands':_0x18accd[_0x25610f(0x153)](_0x326e87=>({'command':_0x326e87['command'],'description':_0x326e87[_0x25610f(0x17e)],'tag':_0x42a968(_0x326e87['risk'])})),'defaultCommand':_0xb12e2b?.[_0x25610f(0x152)]??(_0xb12e2b?.[_0x25610f(0x16c)]?_0x18accd[0x0]['command']:undefined),'isSingleCommand':_0xb12e2b?.[_0x25610f(0x16c)]};serviceRegistry[_0x25610f(0x162)](_0x11850b),serviceByName[_0x25610f(0x14d)](_0x11850b[_0x25610f(0x168)],_0x11850b);}registerService('Authentication',authDefinitions,{'defaultCommand':a47_0x42fdb7(0x148)}),registerService(a47_0x42fdb7(0x169),userAccountDefinitions),registerService('App\x20Management',appDefinitions,{'defaultCommand':a47_0x42fdb7(0x178)}),registerService(a47_0x42fdb7(0x17f),workspaceDefinitions),registerService('Runtime\x20App\x20Config',appConfigDefinitions),registerService(a47_0x42fdb7(0x174),configDefinitions,{'defaultCommand':'list'}),registerService(a47_0x42fdb7(0x175),roleDefinitions,{'defaultCommand':a47_0x42fdb7(0x178)}),registerService(a47_0x42fdb7(0x149),permitDefinitions),registerService(a47_0x42fdb7(0x17a),apiDocDefinitions),registerService(a47_0x42fdb7(0x17d),datasetDefinitions),registerService(a47_0x42fdb7(0x144),dataDefinitions),registerService('SQL\x20Queries',sqlDefinitions),registerService('Backend\x20Function\x20Scripts',bffDefinitions),registerService(a47_0x42fdb7(0x14e),personalBffDefinitions),registerService(a47_0x42fdb7(0x173),artifactDefinitions),registerService(a47_0x42fdb7(0x15e),fileDefinitions),registerService('OCR',ocrDefinitions),registerService(a47_0x42fdb7(0x159),kbDefinitions),registerService(a47_0x42fdb7(0x16a),notificationDefinitions,{'defaultCommand':a47_0x42fdb7(0x17b)}),registerService(a47_0x42fdb7(0x14c),scheduleDefinitions,{'defaultCommand':'list'}),registerService('Service\x20Tree',serviceDefinitions,{'defaultCommand':a47_0x42fdb7(0x178)}),registerService(a47_0x42fdb7(0x151),skillDefinitions,{'defaultCommand':a47_0x42fdb7(0x17c)}),registerService('CLI\x20Built-in\x20Skill',cliSkillDefinitions,{'defaultCommand':a47_0x42fdb7(0x17c)}),registerService(a47_0x42fdb7(0x15a),[updateDefinition],{'defaultCommand':a47_0x42fdb7(0x155),'isSingleCommand':!![]}),registerService(a47_0x42fdb7(0x145),[doctorDefinition],{'isSingleCommand':!![]}),registerService(a47_0x42fdb7(0x14f),[schemaDefinition],{'isSingleCommand':!![]}),registerService('Logs',logsDefinitions,{'defaultCommand':a47_0x42fdb7(0x176)});export function findDefinition(_0x589ab7,_0x17da34){const _0x11d853=a47_0x42fdb7;return definitions[_0x11d853(0x16e)](_0x589ab7+':'+_0x17da34);}export function resolveRemovedCommand(_0x1e6002,_0x35d31a){const _0xf85d74=a47_0x42fdb7;if(_0x1e6002===_0xf85d74(0x15c)&&_0x35d31a===_0xf85d74(0x157))return{'command':_0xf85d74(0x170),'message':_0xf85d74(0x15b),'hint':_0xf85d74(0x15f)};if(_0x1e6002===_0xf85d74(0x15c)&&_0x35d31a===_0xf85d74(0x179))return{'command':_0xf85d74(0x150),'message':_0xf85d74(0x163),'hint':'Use\x20`lovrabet\x20workspace\x20use\x20--app\x20<name>`\x20instead.'};if(_0x1e6002===_0xf85d74(0x172)&&_0x35d31a===_0xf85d74(0x14b))return{'command':_0xf85d74(0x16b),'message':'`lovrabet\x20logs\x20clear`\x20has\x20been\x20removed.','hint':_0xf85d74(0x156)};return undefined;}export function isKnownService(_0x2da882){const _0x18c9db=a47_0x42fdb7;return serviceByName[_0x18c9db(0x165)](_0x2da882);}export function getServiceEntry(_0x41be68){const _0x58cb8e=a47_0x42fdb7;return serviceByName[_0x58cb8e(0x16e)](_0x41be68);}function a47_0x3e5d(_0x220bf2,_0x143e3f){_0x220bf2=_0x220bf2-0x144;const _0x3b6710=a47_0x3b67();let _0x3e5d23=_0x3b6710[_0x220bf2];return _0x3e5d23;}export function getAllDefinitions(){const _0x4b0dc3=a47_0x42fdb7;return Array[_0x4b0dc3(0x146)](definitions[_0x4b0dc3(0x161)]());}
1
+ const a48_0x1859d0=a48_0x2fc8;(function(_0x54c502,_0x23c23a){const _0x13b9e5=a48_0x2fc8,_0x123904=_0x54c502();while(!![]){try{const _0x7c6333=-parseInt(_0x13b9e5(0xf2))/0x1+parseInt(_0x13b9e5(0xe2))/0x2*(parseInt(_0x13b9e5(0x10a))/0x3)+-parseInt(_0x13b9e5(0x106))/0x4*(parseInt(_0x13b9e5(0xed))/0x5)+-parseInt(_0x13b9e5(0xeb))/0x6+-parseInt(_0x13b9e5(0x105))/0x7+-parseInt(_0x13b9e5(0xf6))/0x8*(parseInt(_0x13b9e5(0xee))/0x9)+parseInt(_0x13b9e5(0xe7))/0xa;if(_0x7c6333===_0x23c23a)break;else _0x123904['push'](_0x123904['shift']());}catch(_0x113c06){_0x123904['push'](_0x123904['shift']());}}}(a48_0x7f45,0xa3cf4));import{authDefinitions}from'../commands/auth/index.js';import{logsDefinitions}from'../commands/logs/index.js';import{skillDefinitions}from'../commands/skill/index.js';function a48_0x2fc8(_0x1dfac2,_0x5af89b){_0x1dfac2=_0x1dfac2-0xe1;const _0x7f45b4=a48_0x7f45();let _0x2fc8a7=_0x7f45b4[_0x1dfac2];return _0x2fc8a7;}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';import{userAccountDefinitions}from'../commands/user-account/index.js';import{notificationDefinitions}from'../commands/notification/index.js';import{roleDefinitions}from'../commands/role/index.js';function a48_0x7f45(){const _0x14701e=['45458aEbAxc','Runtime\x20Roles','risk','Personal\x20Backend\x20Function','944hiIypz','description','Use\x20`lovrabet\x20workspace\x20use\x20--app\x20<name>`\x20instead.','list','`lovrabet\x20app\x20init`\x20has\x20been\x20removed.','read','install','command','Use\x20`lovrabet\x20workspace\x20init\x20--appcode\x20<code>`\x20instead.','SQL\x20Queries','app\x20init','Diagnostics','Artifacts','Logs','use','1821323yPwIvq','4PWsUnP','login','Instant\x20API','`lovrabet\x20auth\x20init`\x20has\x20been\x20removed.','6jrcZhy','`lovrabet\x20logs\x20clear`\x20has\x20been\x20removed.','Configuration','app\x20use','config-list','Use\x20`lovrabet\x20logs\x20show`\x20to\x20view\x20command\x20history.','`lovrabet\x20app\x20use`\x20has\x20been\x20removed.','User\x20Accounts','OCR','Service\x20Tree','set','get','clear','values','API\x20Documentation','Use\x20`lovrabet\x20config\x20init`\x20for\x20node\x20configuration,\x20then\x20`lovrabet\x20auth\x20login`\x20for\x20AccessKey\x20authentication.','logs\x20clear','push','app','Knowledge\x20Base','has','map','Skills','App\x20Management','isSingleCommand','1305514cmUtUX','Notification\x20Configs','auth','CLI\x20Built-in\x20Skill','Self\x20Update','8130860eDTvwd','init','Agent\x20Schedules','logs','5203314VEUvMe','Workspace','198570jIsZfx','17928juoqyh','Runtime\x20Permissions','service','\x20\x20[high-risk-write]'];a48_0x7f45=function(){return _0x14701e;};return a48_0x7f45();}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(_0x229e00){const _0x5a4ee3=a48_0x2fc8;for(const _0x2efdfd of _0x229e00){definitions[_0x5a4ee3(0x114)](_0x2efdfd[_0x5a4ee3(0xf0)]+':'+_0x2efdfd[_0x5a4ee3(0xfd)],_0x2efdfd);let _0x483333=serviceGroups[_0x5a4ee3(0x115)](_0x2efdfd['service']);!_0x483333&&(_0x483333=[],serviceGroups[_0x5a4ee3(0x114)](_0x2efdfd[_0x5a4ee3(0xf0)],_0x483333)),_0x483333[_0x5a4ee3(0x11b)](_0x2efdfd);}}function registerService(_0x534f4a,_0x5227e7,_0xb400a7){const _0x2c043f=a48_0x2fc8;registerDefinitions(_0x5227e7);const _0x528183=_0x38f41b=>_0x38f41b===_0x2c043f(0xfb)?'':_0x38f41b==='write'?'\x20\x20[write]':_0x2c043f(0xf1),_0x4bc2b6={'service':_0x5227e7[0x0]['service'],'label':_0x534f4a,'commands':_0x5227e7[_0x2c043f(0x11f)](_0xaa34c7=>({'command':_0xaa34c7[_0x2c043f(0xfd)],'description':_0xaa34c7[_0x2c043f(0xf7)],'tag':_0x528183(_0xaa34c7[_0x2c043f(0xf4)])})),'defaultCommand':_0xb400a7?.['defaultCommand']??(_0xb400a7?.['isSingleCommand']?_0x5227e7[0x0]['command']:undefined),'isSingleCommand':_0xb400a7?.[_0x2c043f(0xe1)]};serviceRegistry[_0x2c043f(0x11b)](_0x4bc2b6),serviceByName[_0x2c043f(0x114)](_0x4bc2b6[_0x2c043f(0xf0)],_0x4bc2b6);}registerService('Authentication',authDefinitions,{'defaultCommand':a48_0x1859d0(0x107)}),registerService(a48_0x1859d0(0x111),userAccountDefinitions),registerService(a48_0x1859d0(0x121),appDefinitions,{'defaultCommand':'list'}),registerService(a48_0x1859d0(0xec),workspaceDefinitions),registerService('Runtime\x20App\x20Config',appConfigDefinitions),registerService(a48_0x1859d0(0x10c),configDefinitions,{'defaultCommand':a48_0x1859d0(0xf9)}),registerService(a48_0x1859d0(0xf3),roleDefinitions,{'defaultCommand':a48_0x1859d0(0xf9)}),registerService(a48_0x1859d0(0xef),permitDefinitions),registerService(a48_0x1859d0(0x118),apiDocDefinitions),registerService('Datasets',datasetDefinitions),registerService(a48_0x1859d0(0x108),dataDefinitions),registerService(a48_0x1859d0(0xff),sqlDefinitions),registerService('Backend\x20Function\x20Scripts',bffDefinitions),registerService(a48_0x1859d0(0xf5),personalBffDefinitions),registerService(a48_0x1859d0(0x102),artifactDefinitions),registerService('File',fileDefinitions),registerService(a48_0x1859d0(0x112),ocrDefinitions),registerService(a48_0x1859d0(0x11d),kbDefinitions),registerService(a48_0x1859d0(0xe3),notificationDefinitions,{'defaultCommand':a48_0x1859d0(0x10e)}),registerService(a48_0x1859d0(0xe9),scheduleDefinitions,{'defaultCommand':a48_0x1859d0(0xf9)}),registerService(a48_0x1859d0(0x113),serviceDefinitions,{'defaultCommand':'list'}),registerService(a48_0x1859d0(0x120),skillDefinitions,{'defaultCommand':a48_0x1859d0(0xfc)}),registerService(a48_0x1859d0(0xe5),cliSkillDefinitions,{'defaultCommand':'install'}),registerService(a48_0x1859d0(0xe6),[updateDefinition],{'defaultCommand':'run','isSingleCommand':!![]}),registerService(a48_0x1859d0(0x101),[doctorDefinition],{'isSingleCommand':!![]}),registerService('Schema',[schemaDefinition],{'isSingleCommand':!![]}),registerService(a48_0x1859d0(0x103),logsDefinitions,{'defaultCommand':'show'});export function findDefinition(_0x21243f,_0x56ef21){const _0x22bf6a=a48_0x1859d0;return definitions[_0x22bf6a(0x115)](_0x21243f+':'+_0x56ef21);}export function resolveRemovedCommand(_0x581829,_0x118ac2){const _0x39f6ad=a48_0x1859d0;if(_0x581829===_0x39f6ad(0xe4)&&_0x118ac2===_0x39f6ad(0xe8))return{'command':'auth\x20init','message':_0x39f6ad(0x109),'hint':_0x39f6ad(0x119)};if(_0x581829===_0x39f6ad(0x11c)&&_0x118ac2===_0x39f6ad(0xe8))return{'command':_0x39f6ad(0x100),'message':_0x39f6ad(0xfa),'hint':_0x39f6ad(0xfe)};if(_0x581829===_0x39f6ad(0x11c)&&_0x118ac2===_0x39f6ad(0x104))return{'command':_0x39f6ad(0x10d),'message':_0x39f6ad(0x110),'hint':_0x39f6ad(0xf8)};if(_0x581829===_0x39f6ad(0xea)&&_0x118ac2===_0x39f6ad(0x116))return{'command':_0x39f6ad(0x11a),'message':_0x39f6ad(0x10b),'hint':_0x39f6ad(0x10f)};return undefined;}export function isKnownService(_0x4efaf1){const _0x28e5d8=a48_0x1859d0;return serviceByName[_0x28e5d8(0x11e)](_0x4efaf1);}export function getServiceEntry(_0x4e481d){const _0x13334b=a48_0x1859d0;return serviceByName[_0x13334b(0x115)](_0x4e481d);}export function getAllDefinitions(){const _0x39c1cc=a48_0x1859d0;return Array['from'](definitions[_0x39c1cc(0x117)]());}
@@ -1 +1 @@
1
- const a48_0x146977=a48_0x50b6;(function(_0x1ae014,_0x440a7e){const _0x3b839d=a48_0x50b6,_0x5cc0f7=_0x1ae014();while(!![]){try{const _0x10ae3e=parseInt(_0x3b839d(0x100))/0x1+-parseInt(_0x3b839d(0xf5))/0x2*(parseInt(_0x3b839d(0x109))/0x3)+-parseInt(_0x3b839d(0x10d))/0x4*(-parseInt(_0x3b839d(0xf8))/0x5)+-parseInt(_0x3b839d(0xfe))/0x6+-parseInt(_0x3b839d(0xf2))/0x7+-parseInt(_0x3b839d(0x107))/0x8+parseInt(_0x3b839d(0x103))/0x9;if(_0x10ae3e===_0x440a7e)break;else _0x5cc0f7['push'](_0x5cc0f7['shift']());}catch(_0x507edb){_0x5cc0f7['push'](_0x5cc0f7['shift']());}}}(a48_0x199a,0x98305));import{createRuntimeAppRole}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';function a48_0x199a(){const _0x489bc2=['POST','role','2868568hlTDMm','Create\x20a\x20runtime\x20CUSTOM\x20role','2991JtIxiA','CUSTOM','trim','/client/permit/role/create','536aUeAxt','8509067feQfLF','str','build','234DvFpwC','string','Preview:\x20create\x20a\x20runtime\x20CUSTOM\x20role','17860aiwjlA','description','Role\x20name','create','appCode','validation','1969740NZXEDj','remark','853272MuhETY','body','--name\x20must\x20not\x20be\x20blank.','11794824WCMgIy','high-risk-write'];a48_0x199a=function(){return _0x489bc2;};return a48_0x199a();}import{projectRuntimeRole,runtimeRoleWriteResult}from'../../commands/role/shared.js';function input(_0x3cc330){const _0x5bb027=a48_0x50b6,_0x338bdf=_0x3cc330[_0x5bb027(0xf3)]('name')[_0x5bb027(0x10b)]();if(!_0x338bdf)throw CliErrors[_0x5bb027(0xfd)](_0x5bb027(0x102));const _0x1219f1=_0x3cc330[_0x5bb027(0xf3)](_0x5bb027(0xff))[_0x5bb027(0x10b)]();return{'appCode':_0x3cc330[_0x5bb027(0xfc)],'roleName':_0x338bdf,..._0x1219f1?{'remark':_0x1219f1}:{}};}function a48_0x50b6(_0x1c3fc3,_0xc59246){_0x1c3fc3=_0x1c3fc3-0xf2;const _0x199ab7=a48_0x199a();let _0x50b650=_0x199ab7[_0x1c3fc3];return _0x50b650;}export const roleCreate={'service':a48_0x146977(0x106),'command':a48_0x146977(0xfb),'description':a48_0x146977(0x108),'risk':a48_0x146977(0x104),'confirmationDescription':'在当前运行应用中创建一个自定义角色;创建后可用于成员与资源权限配置。','flags':[{'name':'name','type':a48_0x146977(0xf6),'required':!![],'description':a48_0x146977(0xfa)},{'name':'remark','type':a48_0x146977(0xf6),'description':'Optional\x20role\x20remark'}],async 'validate'(_0x131845){input(_0x131845);},async 'dryRun'(_0x10e9b0){const _0xf6aa1=a48_0x146977;return dryRun(_0xf6aa1(0x105),_0xf6aa1(0x10c))[_0xf6aa1(0x101)]({'roleType':_0xf6aa1(0x10a),...input(_0x10e9b0)})[_0xf6aa1(0xf9)](_0xf6aa1(0xf7))[_0xf6aa1(0xf4)]();},async 'execute'(_0x4a85d3){const _0x203313=a48_0x146977,_0x123c00=await createRuntimeAppRole(input(_0x4a85d3));return{'ok':!![],'data':runtimeRoleWriteResult(_0x203313(0xfb),{'roleId':_0x123c00['id']},null,projectRuntimeRole(_0x123c00),{'method':_0x203313(0x105),'path':'/client/permit/role/create'})};}};
1
+ function a49_0x3b3c(){const _0x53a938=['20671AwzDrj','4795jfYqRj','high-risk-write','POST','984XWQdwC','/client/permit/role/create','219vDdOHf','Creates\x20a\x20custom\x20role\x20in\x20the\x20current\x20runtime\x20app.\x20After\x20creation\x20it\x20can\x20be\x20used\x20for\x20member\x20and\x20resource\x20permissions.','name','validation','str','role','20395820Pcxyze','36866KDdvEv','14349584XcFBZE','Preview:\x20create\x20a\x20runtime\x20CUSTOM\x20role','293702AOVMwY','4660pAQGKs','remark','string','appCode','trim','create','--name\x20must\x20not\x20be\x20blank.','1451988QLEbzB'];a49_0x3b3c=function(){return _0x53a938;};return a49_0x3b3c();}const a49_0xec892=a49_0x8fbc;(function(_0x37f8e0,_0x4d8ed0){const _0x222961=a49_0x8fbc,_0x1d46be=_0x37f8e0();while(!![]){try{const _0x2ac155=parseInt(_0x222961(0x19e))/0x1+parseInt(_0x222961(0x19b))/0x2*(-parseInt(_0x222961(0x1ad))/0x3)+-parseInt(_0x222961(0x19f))/0x4*(-parseInt(_0x222961(0x1a8))/0x5)+parseInt(_0x222961(0x1ab))/0x6*(parseInt(_0x222961(0x1a7))/0x7)+-parseInt(_0x222961(0x19c))/0x8+parseInt(_0x222961(0x1a6))/0x9+parseInt(_0x222961(0x19a))/0xa;if(_0x2ac155===_0x4d8ed0)break;else _0x1d46be['push'](_0x1d46be['shift']());}catch(_0x2e3615){_0x1d46be['push'](_0x1d46be['shift']());}}}(a49_0x3b3c,0xe99a4));import{createRuntimeAppRole}from'../../core/api-client.js';function a49_0x8fbc(_0x2a3465,_0x4c9924){_0x2a3465=_0x2a3465-0x195;const _0x3b3c04=a49_0x3b3c();let _0x8fbc08=_0x3b3c04[_0x2a3465];return _0x8fbc08;}import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';import{projectRuntimeRole,runtimeRoleWriteResult}from'../../commands/role/shared.js';function input(_0xdf0f8a){const _0x885bd1=a49_0x8fbc,_0x1a6c0a=_0xdf0f8a[_0x885bd1(0x198)](_0x885bd1(0x196))[_0x885bd1(0x1a3)]();if(!_0x1a6c0a)throw CliErrors[_0x885bd1(0x197)](_0x885bd1(0x1a5));const _0x78f59d=_0xdf0f8a['str'](_0x885bd1(0x1a0))[_0x885bd1(0x1a3)]();return{'appCode':_0xdf0f8a[_0x885bd1(0x1a2)],'roleName':_0x1a6c0a,..._0x78f59d?{'remark':_0x78f59d}:{}};}export const roleCreate={'service':a49_0xec892(0x199),'command':a49_0xec892(0x1a4),'description':'Create\x20a\x20runtime\x20CUSTOM\x20role','risk':a49_0xec892(0x1a9),'confirmationDescription':a49_0xec892(0x195),'flags':[{'name':a49_0xec892(0x196),'type':'string','required':!![],'description':'Role\x20name'},{'name':a49_0xec892(0x1a0),'type':a49_0xec892(0x1a1),'description':'Optional\x20role\x20remark'}],async 'validate'(_0xadb167){input(_0xadb167);},async 'dryRun'(_0x23cdb3){const _0x20e47d=a49_0xec892;return dryRun(_0x20e47d(0x1aa),'/client/permit/role/create')['body']({'roleType':'CUSTOM',...input(_0x23cdb3)})['description'](_0x20e47d(0x19d))['build']();},async 'execute'(_0x127a13){const _0x2ec368=a49_0xec892,_0x1661a4=await createRuntimeAppRole(input(_0x127a13));return{'ok':!![],'data':runtimeRoleWriteResult('create',{'roleId':_0x1661a4['id']},null,projectRuntimeRole(_0x1661a4),{'method':_0x2ec368(0x1aa),'path':_0x2ec368(0x1ac)})};}};
@@ -1 +1 @@
1
- const a49_0x56591a=a49_0x2d19;(function(_0x175f75,_0x5667c9){const _0x4e4a81=a49_0x2d19,_0xeba193=_0x175f75();while(!![]){try{const _0x5070ab=parseInt(_0x4e4a81(0x1ce))/0x1+parseInt(_0x4e4a81(0x1c8))/0x2+-parseInt(_0x4e4a81(0x1bc))/0x3+-parseInt(_0x4e4a81(0x1bf))/0x4*(-parseInt(_0x4e4a81(0x1c1))/0x5)+parseInt(_0x4e4a81(0x1bb))/0x6*(parseInt(_0x4e4a81(0x1c5))/0x7)+-parseInt(_0x4e4a81(0x1cc))/0x8*(-parseInt(_0x4e4a81(0x1c6))/0x9)+-parseInt(_0x4e4a81(0x1c4))/0xa;if(_0x5070ab===_0x5667c9)break;else _0xeba193['push'](_0xeba193['shift']());}catch(_0x1ef97b){_0xeba193['push'](_0xeba193['shift']());}}}(a49_0x7366,0xdbd1d));function a49_0x2d19(_0x1681b6,_0x5cecfa){_0x1681b6=_0x1681b6-0x1bb;const _0x736629=a49_0x7366();let _0x2d19a9=_0x736629[_0x1681b6];return _0x2d19a9;}import{deleteRuntimeAppRole}from'../../core/api-client.js';import{dryRun}from'../../framework/dryrun.js';import{assertCustomRuntimeRole,getRuntimeRoleById,projectRuntimeRole,ROLE_ID_FLAG,runtimeRoleWriteResult}from'../../commands/role/shared.js';function a49_0x7366(){const _0x350ce3=['402YDCRzq','1151763ZMbiaS','delete','body','652072ZGVRld','Preview:\x20delete\x20a\x20runtime\x20CUSTOM\x20role','10WhErwd','appCode','high-risk-write','27838180DcWbWm','130249JJeMcj','7688007lbbEzx','删除当前运行应用中的自定义角色;该角色的成员关系和权限配置可能随之失效。','1736286qmMgrR','num','description','role','8xbmvpy','/client/permit/role/delete','773049HPMOYa','POST'];a49_0x7366=function(){return _0x350ce3;};return a49_0x7366();}async function prepare(_0x26cf98){const _0x4b4f67=a49_0x2d19,_0x580c40=await getRuntimeRoleById(_0x26cf98[_0x4b4f67(0x1c2)],_0x26cf98[_0x4b4f67(0x1c9)]('id'));return assertCustomRuntimeRole(_0x580c40,_0x4b4f67(0x1bd)),_0x580c40;}export const roleDelete={'service':a49_0x56591a(0x1cb),'command':a49_0x56591a(0x1bd),'description':'Delete\x20a\x20runtime\x20CUSTOM\x20role','risk':a49_0x56591a(0x1c3),'confirmationDescription':a49_0x56591a(0x1c7),'flags':[ROLE_ID_FLAG],async 'dryRun'(_0x369708){const _0x297970=a49_0x56591a,_0x17b50b=await prepare(_0x369708);return dryRun('POST',_0x297970(0x1cd))[_0x297970(0x1be)]({'id':_0x17b50b['id']})[_0x297970(0x1ca)](_0x297970(0x1c0))['build']();},async 'execute'(_0x2f5463){const _0x50ba20=a49_0x56591a,_0x36062d=await prepare(_0x2f5463);return await deleteRuntimeAppRole(_0x36062d['id']),{'ok':!![],'data':runtimeRoleWriteResult(_0x50ba20(0x1bd),{'roleId':_0x36062d['id']},projectRuntimeRole(_0x36062d),null,{'method':_0x50ba20(0x1cf),'path':_0x50ba20(0x1cd)})};}};
1
+ const a50_0x3a1eab=a50_0x54f6;(function(_0x2eaac5,_0x38995e){const _0x53cb9a=a50_0x54f6,_0x5ea7ec=_0x2eaac5();while(!![]){try{const _0x2f3672=parseInt(_0x53cb9a(0x164))/0x1+parseInt(_0x53cb9a(0x165))/0x2+parseInt(_0x53cb9a(0x16a))/0x3*(parseInt(_0x53cb9a(0x176))/0x4)+-parseInt(_0x53cb9a(0x171))/0x5*(-parseInt(_0x53cb9a(0x161))/0x6)+parseInt(_0x53cb9a(0x163))/0x7+-parseInt(_0x53cb9a(0x16c))/0x8*(parseInt(_0x53cb9a(0x173))/0x9)+parseInt(_0x53cb9a(0x16d))/0xa*(-parseInt(_0x53cb9a(0x170))/0xb);if(_0x2f3672===_0x38995e)break;else _0x5ea7ec['push'](_0x5ea7ec['shift']());}catch(_0x4d214c){_0x5ea7ec['push'](_0x5ea7ec['shift']());}}}(a50_0x17b7,0xe0ca2));import{deleteRuntimeAppRole}from'../../core/api-client.js';function a50_0x17b7(){const _0x19712f=['12475848gpGFCY','294290OrOzOr','2560440kzIUfW','Deletes\x20the\x20custom\x20role\x20in\x20the\x20current\x20runtime\x20app.\x20Membership\x20and\x20permission\x20config\x20for\x20that\x20role\x20may\x20become\x20invalid.','description','num','POST','53958NLsIPZ','role','8ARLSWY','10uEYFav','body','appCode','24056219QABGVT','1465YqQitW','delete','15494013zQUWYc','build','high-risk-write','160pCyRRI','Delete\x20a\x20runtime\x20CUSTOM\x20role','15420QzLVtP','/client/permit/role/delete'];a50_0x17b7=function(){return _0x19712f;};return a50_0x17b7();}import{dryRun}from'../../framework/dryrun.js';function a50_0x54f6(_0x42e04e,_0x2cc6b2){_0x42e04e=_0x42e04e-0x161;const _0x17b703=a50_0x17b7();let _0x54f674=_0x17b703[_0x42e04e];return _0x54f674;}import{assertCustomRuntimeRole,getRuntimeRoleById,projectRuntimeRole,ROLE_ID_FLAG,runtimeRoleWriteResult}from'../../commands/role/shared.js';async function prepare(_0x8ac0b2){const _0x4ea611=a50_0x54f6,_0x38f9ec=await getRuntimeRoleById(_0x8ac0b2[_0x4ea611(0x16f)],_0x8ac0b2[_0x4ea611(0x168)]('id'));return assertCustomRuntimeRole(_0x38f9ec,_0x4ea611(0x172)),_0x38f9ec;}export const roleDelete={'service':a50_0x3a1eab(0x16b),'command':a50_0x3a1eab(0x172),'description':a50_0x3a1eab(0x177),'risk':a50_0x3a1eab(0x175),'confirmationDescription':a50_0x3a1eab(0x166),'flags':[ROLE_ID_FLAG],async 'dryRun'(_0x96a511){const _0x4f370e=a50_0x3a1eab,_0x45b3ad=await prepare(_0x96a511);return dryRun(_0x4f370e(0x169),_0x4f370e(0x162))[_0x4f370e(0x16e)]({'id':_0x45b3ad['id']})[_0x4f370e(0x167)]('Preview:\x20delete\x20a\x20runtime\x20CUSTOM\x20role')[_0x4f370e(0x174)]();},async 'execute'(_0x453afe){const _0x4534c2=a50_0x3a1eab,_0x5e6ac9=await prepare(_0x453afe);return await deleteRuntimeAppRole(_0x5e6ac9['id']),{'ok':!![],'data':runtimeRoleWriteResult(_0x4534c2(0x172),{'roleId':_0x5e6ac9['id']},projectRuntimeRole(_0x5e6ac9),null,{'method':_0x4534c2(0x169),'path':_0x4534c2(0x162)})};}};
@@ -1 +1 @@
1
- const a50_0xcefe7f=a50_0x2442;function a50_0x1ead(){const _0x5a9480=['3308535DLaKYI','1510MPFdzn','read','85TZpFgD','62018tNWDuY','role','12093352ArAbjj','Show\x20one\x20runtime\x20role\x20by\x20ID','1455642qUTpXR','runtime','224KpmCEi','14JfWWCP','appCode','284XwgIFY','3404CzVzrC','num','11794752yokDTE'];a50_0x1ead=function(){return _0x5a9480;};return a50_0x1ead();}(function(_0x463f49,_0x1d31f5){const _0x4349cd=a50_0x2442,_0x3c5453=_0x463f49();while(!![]){try{const _0xc2ce7d=parseInt(_0x4349cd(0xfb))/0x1*(parseInt(_0x4349cd(0xff))/0x2)+parseInt(_0x4349cd(0x102))/0x3+parseInt(_0x4349cd(0xfe))/0x4*(-parseInt(_0x4349cd(0x105))/0x5)+-parseInt(_0x4349cd(0xf9))/0x6*(-parseInt(_0x4349cd(0xfc))/0x7)+-parseInt(_0x4349cd(0xf7))/0x8+parseInt(_0x4349cd(0x101))/0x9+parseInt(_0x4349cd(0x103))/0xa*(-parseInt(_0x4349cd(0xf5))/0xb);if(_0xc2ce7d===_0x1d31f5)break;else _0x3c5453['push'](_0x3c5453['shift']());}catch(_0x11da23){_0x3c5453['push'](_0x3c5453['shift']());}}}(a50_0x1ead,0xdf8a5));function a50_0x2442(_0x21b1df,_0x15d55f){_0x21b1df=_0x21b1df-0xf5;const _0x1ead5d=a50_0x1ead();let _0x24421a=_0x1ead5d[_0x21b1df];return _0x24421a;}import{getRuntimeRoleById,projectRuntimeRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';export const roleDetail={'service':a50_0xcefe7f(0xf6),'command':'detail','description':a50_0xcefe7f(0xf8),'risk':a50_0xcefe7f(0x104),'flags':[ROLE_ID_FLAG],async 'execute'(_0x234c34){const _0x4e506a=a50_0xcefe7f,_0x4efed2=await getRuntimeRoleById(_0x234c34[_0x4e506a(0xfd)],_0x234c34[_0x4e506a(0x100)]('id'));return{'ok':!![],'data':{'scope':_0x4e506a(0xfa),'role':projectRuntimeRole(_0x4efed2)}};}};
1
+ function a51_0x4d3c(){const _0x2855c2=['42230UlTihr','1341qtlkxn','2440912EeCdYY','role','num','1338505gmqVvV','250LeOYog','41204PDWHVX','detail','26778PrQefY','209371rgPuyg','read','appCode','257280EeKJxI','Show\x20one\x20runtime\x20role\x20by\x20ID','2fwiYRc','runtime'];a51_0x4d3c=function(){return _0x2855c2;};return a51_0x4d3c();}function a51_0x5ef2(_0x235658,_0x28e0bc){_0x235658=_0x235658-0x1a4;const _0x4d3cf8=a51_0x4d3c();let _0x5ef2b1=_0x4d3cf8[_0x235658];return _0x5ef2b1;}const a51_0x925129=a51_0x5ef2;(function(_0x221b5e,_0x1018ef){const _0x1275f1=a51_0x5ef2,_0xfee626=_0x221b5e();while(!![]){try{const _0x572829=parseInt(_0x1275f1(0x1a4))/0x1*(-parseInt(_0x1275f1(0x1a9))/0x2)+parseInt(_0x1275f1(0x1a7))/0x3+-parseInt(_0x1275f1(0x1b2))/0x4+parseInt(_0x1275f1(0x1b1))/0x5*(parseInt(_0x1275f1(0x1b4))/0x6)+-parseInt(_0x1275f1(0x1b0))/0x7+-parseInt(_0x1275f1(0x1ad))/0x8+-parseInt(_0x1275f1(0x1ac))/0x9*(-parseInt(_0x1275f1(0x1ab))/0xa);if(_0x572829===_0x1018ef)break;else _0xfee626['push'](_0xfee626['shift']());}catch(_0x14caaf){_0xfee626['push'](_0xfee626['shift']());}}}(a51_0x4d3c,0x363b8));import{getRuntimeRoleById,projectRuntimeRole,ROLE_ID_FLAG}from'../../commands/role/shared.js';export const roleDetail={'service':a51_0x925129(0x1ae),'command':a51_0x925129(0x1b3),'description':a51_0x925129(0x1a8),'risk':a51_0x925129(0x1a5),'flags':[ROLE_ID_FLAG],async 'execute'(_0x160464){const _0x1dd1ae=a51_0x925129,_0x51d3f2=await getRuntimeRoleById(_0x160464[_0x1dd1ae(0x1a6)],_0x160464[_0x1dd1ae(0x1af)]('id'));return{'ok':!![],'data':{'scope':_0x1dd1ae(0x1aa),'role':projectRuntimeRole(_0x51d3f2)}};}};
@@ -1 +1 @@
1
- (function(_0xbdcdf1,_0x2106f4){const _0x5516b3=a51_0x2e9b,_0x3baf96=_0xbdcdf1();while(!![]){try{const _0x367b86=-parseInt(_0x5516b3(0xff))/0x1*(parseInt(_0x5516b3(0x101))/0x2)+parseInt(_0x5516b3(0x106))/0x3*(parseInt(_0x5516b3(0x107))/0x4)+-parseInt(_0x5516b3(0x103))/0x5+parseInt(_0x5516b3(0x105))/0x6*(-parseInt(_0x5516b3(0xfd))/0x7)+-parseInt(_0x5516b3(0x100))/0x8+-parseInt(_0x5516b3(0xfe))/0x9*(-parseInt(_0x5516b3(0x104))/0xa)+-parseInt(_0x5516b3(0x102))/0xb;if(_0x367b86===_0x2106f4)break;else _0x3baf96['push'](_0x3baf96['shift']());}catch(_0x119f8f){_0x3baf96['push'](_0x3baf96['shift']());}}}(a51_0x5ed0,0x45e81));import{roleList}from'../../commands/role/list.js';import{roleDetail}from'../../commands/role/detail.js';import{roleCreate}from'../../commands/role/create.js';function a51_0x2e9b(_0x29041e,_0x28b29b){_0x29041e=_0x29041e-0xfd;const _0x5ed0d2=a51_0x5ed0();let _0x2e9bc8=_0x5ed0d2[_0x29041e];return _0x2e9bc8;}import{roleUpdate}from'../../commands/role/update.js';import{roleDelete}from'../../commands/role/delete.js';function a51_0x5ed0(){const _0xa4241d=['4lrEVeY','7861pDmMLu','1665Ciwylr','6287gfMrOj','3300272JTjjZo','6IBJNAp','359887CKknAd','433970XxImRk','18230QNrzeA','150yFJvhc','1584189oWESsg'];a51_0x5ed0=function(){return _0xa4241d;};return a51_0x5ed0();}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];
1
+ (function(_0x356a74,_0x43cf15){const _0x3f3348=a52_0x4ba3,_0x10b626=_0x356a74();while(!![]){try{const _0x1f0641=-parseInt(_0x3f3348(0xca))/0x1+-parseInt(_0x3f3348(0xce))/0x2*(-parseInt(_0x3f3348(0xcc))/0x3)+-parseInt(_0x3f3348(0xcd))/0x4+-parseInt(_0x3f3348(0xc9))/0x5*(parseInt(_0x3f3348(0xcb))/0x6)+parseInt(_0x3f3348(0xcf))/0x7+parseInt(_0x3f3348(0xd0))/0x8+parseInt(_0x3f3348(0xd1))/0x9;if(_0x1f0641===_0x43cf15)break;else _0x10b626['push'](_0x10b626['shift']());}catch(_0x382050){_0x10b626['push'](_0x10b626['shift']());}}}(a52_0xae5f,0x468be));import{roleList}from'../../commands/role/list.js';import{roleDetail}from'../../commands/role/detail.js';function a52_0xae5f(){const _0x22cdfe=['6gKZPsM','12867qJNZPZ','1758752BlzhYN','182vFULRE','3203823GfNlpB','1560152CRmhdj','5716953HpqZkI','2028395ZkQcei','543899jDgUvo'];a52_0xae5f=function(){return _0x22cdfe;};return a52_0xae5f();}import{roleCreate}from'../../commands/role/create.js';import{roleUpdate}from'../../commands/role/update.js';import{roleDelete}from'../../commands/role/delete.js';function a52_0x4ba3(_0x1206c6,_0x5d3d63){_0x1206c6=_0x1206c6-0xc9;const _0xae5f76=a52_0xae5f();let _0x4ba3f6=_0xae5f76[_0x1206c6];return _0x4ba3f6;}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];
@@ -1 +1 @@
1
- const a52_0x515c44=a52_0xba48;function a52_0xba48(_0x40bc20,_0x4a0503){_0x40bc20=_0x40bc20-0x196;const _0x2bfefc=a52_0x2bfe();let _0xba48df=_0x2bfefc[_0x40bc20];return _0xba48df;}(function(_0x5cb927,_0x486d4a){const _0xc1a603=a52_0xba48,_0x52f9c7=_0x5cb927();while(!![]){try{const _0x117044=-parseInt(_0xc1a603(0x196))/0x1*(parseInt(_0xc1a603(0x19c))/0x2)+-parseInt(_0xc1a603(0x1a8))/0x3+parseInt(_0xc1a603(0x1b0))/0x4*(-parseInt(_0xc1a603(0x1b6))/0x5)+-parseInt(_0xc1a603(0x1a1))/0x6+parseInt(_0xc1a603(0x1a2))/0x7*(parseInt(_0xc1a603(0x19e))/0x8)+parseInt(_0xc1a603(0x1ae))/0x9+parseInt(_0xc1a603(0x1af))/0xa;if(_0x117044===_0x486d4a)break;else _0x52f9c7['push'](_0x52f9c7['shift']());}catch(_0xa78410){_0x52f9c7['push'](_0x52f9c7['shift']());}}}(a52_0x2bfe,0x23ac3));import{listRuntimeAppRoles}from'../../core/api-client.js';function a52_0x2bfe(){const _0x2b6979=['roleType','20874IFWzmJ','includes','number','str','List\x20runtime\x20roles\x20for\x20the\x20current\x20app','Page\x20size\x20from\x201\x20to\x20100','344052xeGPbH','4059330qZDUKW','8FGTsUR','items','name','appCode','length','trim','235295hAFuIR','filter','map','role','2LIXSkl','string','Runtime\x20role\x20type','paging','type','page','91282pNTIvZ','validation','224WHaZeS','num','isSafeInteger','1513440WcmJbi','36638VRoZLj','runtime','pagesize','toUpperCase','Page\x20number'];a52_0x2bfe=function(){return _0x2b6979;};return a52_0x2bfe();}import{CliErrors}from'../../errors.js';import{listAllRuntimeRoles,projectRuntimeRole,RUNTIME_ROLE_TYPES}from'../../commands/role/shared.js';export const roleList={'service':a52_0x515c44(0x1b9),'command':'list','description':a52_0x515c44(0x1ac),'risk':'read','flags':[{'name':a52_0x515c44(0x19a),'type':'string','enum':RUNTIME_ROLE_TYPES,'description':a52_0x515c44(0x198)},{'name':a52_0x515c44(0x1b2),'type':a52_0x515c44(0x197),'description':'Fuzzy\x20role-name\x20filter'},{'name':a52_0x515c44(0x19b),'type':a52_0x515c44(0x1aa),'default':0x1,'description':a52_0x515c44(0x1a6)},{'name':'pagesize','type':'number','default':0x64,'description':a52_0x515c44(0x1ad)}],async 'validate'(_0x26b9c0){const _0x5d9ede=a52_0x515c44,_0x5cf11a=_0x26b9c0[_0x5d9ede(0x1ab)](_0x5d9ede(0x19a))['toUpperCase']();if(_0x5cf11a&&!RUNTIME_ROLE_TYPES[_0x5d9ede(0x1a9)](_0x5cf11a))throw CliErrors[_0x5d9ede(0x19d)]('Invalid\x20runtime\x20role\x20type:\x20'+_0x5cf11a+'.');const _0x48fdf0=_0x26b9c0[_0x5d9ede(0x19f)](_0x5d9ede(0x19b),0x1),_0x52ca6c=_0x26b9c0['num']('pagesize',0x64);if(!Number[_0x5d9ede(0x1a0)](_0x48fdf0)||_0x48fdf0<0x1)throw CliErrors[_0x5d9ede(0x19d)]('--page\x20must\x20be\x20a\x20positive\x20integer.');if(!Number[_0x5d9ede(0x1a0)](_0x52ca6c)||_0x52ca6c<0x1||_0x52ca6c>0x64)throw CliErrors['validation']('--pagesize\x20must\x20be\x20an\x20integer\x20from\x201\x20to\x20100.');},async 'execute'(_0x102363){const _0x3e8a82=a52_0x515c44,_0x803418=_0x102363['str'](_0x3e8a82(0x19a))[_0x3e8a82(0x1a5)](),_0x8ff7a2=_0x102363['str'](_0x3e8a82(0x1b2))[_0x3e8a82(0x1b5)](),_0x2265dc=_0x102363[_0x3e8a82(0x19f)](_0x3e8a82(0x19b),0x1),_0x4027d7=_0x102363[_0x3e8a82(0x19f)](_0x3e8a82(0x1a4),0x64);if(_0x803418){const _0x43d57f=(await listAllRuntimeRoles(_0x102363[_0x3e8a82(0x1b3)],{..._0x8ff7a2?{'roleName':_0x8ff7a2}:{}}))[_0x3e8a82(0x1b7)](_0x5e3d9b=>_0x5e3d9b[_0x3e8a82(0x1a7)]===_0x803418),_0x504786=(_0x2265dc-0x1)*_0x4027d7;return{'ok':!![],'data':{'scope':_0x3e8a82(0x1a3),'roles':_0x43d57f['slice'](_0x504786,_0x504786+_0x4027d7)[_0x3e8a82(0x1b8)](projectRuntimeRole),'paging':{'currentPage':_0x2265dc,'pageSize':_0x4027d7,'totalCount':_0x43d57f[_0x3e8a82(0x1b4)]}}};}const _0x36e576=await listRuntimeAppRoles(_0x102363['appCode'],{..._0x8ff7a2?{'roleName':_0x8ff7a2}:{},'currentPage':_0x2265dc,'pageSize':_0x4027d7});return{'ok':!![],'data':{'scope':'runtime','roles':_0x36e576[_0x3e8a82(0x1b1)][_0x3e8a82(0x1b8)](projectRuntimeRole),'paging':_0x36e576[_0x3e8a82(0x199)]}};}};
1
+ const a53_0x3596ca=a53_0x2c1f;(function(_0x3a602d,_0x2095dd){const _0x54aebb=a53_0x2c1f,_0x1befb8=_0x3a602d();while(!![]){try{const _0x5d4546=parseInt(_0x54aebb(0x114))/0x1+parseInt(_0x54aebb(0x117))/0x2+parseInt(_0x54aebb(0x123))/0x3*(-parseInt(_0x54aebb(0x125))/0x4)+parseInt(_0x54aebb(0x12c))/0x5*(-parseInt(_0x54aebb(0x120))/0x6)+-parseInt(_0x54aebb(0x11e))/0x7*(-parseInt(_0x54aebb(0x122))/0x8)+-parseInt(_0x54aebb(0x11d))/0x9+-parseInt(_0x54aebb(0x11c))/0xa*(parseInt(_0x54aebb(0x12d))/0xb);if(_0x5d4546===_0x2095dd)break;else _0x1befb8['push'](_0x1befb8['shift']());}catch(_0x4d5a9e){_0x1befb8['push'](_0x1befb8['shift']());}}}(a53_0x2dcc,0xe28ba));function a53_0x2c1f(_0x31ae03,_0x50f17a){_0x31ae03=_0x31ae03-0x10d;const _0x2dcca9=a53_0x2dcc();let _0x2c1f77=_0x2dcca9[_0x31ae03];return _0x2c1f77;}import{listRuntimeAppRoles}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';function a53_0x2dcc(){const _0x235e7c=['14612706BeDXdo','168JcpahD','map','12tzHibU','toUpperCase','400584gVVEIq','801vRyxIJ','type','18508tTZIlG','appCode','Page\x20size\x20from\x201\x20to\x20100','name','validation','filter','Invalid\x20runtime\x20role\x20type:\x20','398280fjsDwO','33XzMhKV','num','string','page','length','runtime','Page\x20number','Fuzzy\x20role-name\x20filter','--pagesize\x20must\x20be\x20an\x20integer\x20from\x201\x20to\x20100.','roleType','list','1795417LGmvAB','--page\x20must\x20be\x20a\x20positive\x20integer.','items','3632418lPOXob','number','isSafeInteger','pagesize','str','2890310EJpQla'];a53_0x2dcc=function(){return _0x235e7c;};return a53_0x2dcc();}import{listAllRuntimeRoles,projectRuntimeRole,RUNTIME_ROLE_TYPES}from'../../commands/role/shared.js';export const roleList={'service':'role','command':a53_0x3596ca(0x113),'description':'List\x20runtime\x20roles\x20for\x20the\x20current\x20app','risk':'read','flags':[{'name':a53_0x3596ca(0x124),'type':a53_0x3596ca(0x12f),'enum':RUNTIME_ROLE_TYPES,'description':'Runtime\x20role\x20type'},{'name':a53_0x3596ca(0x128),'type':a53_0x3596ca(0x12f),'description':a53_0x3596ca(0x110)},{'name':a53_0x3596ca(0x130),'type':a53_0x3596ca(0x118),'default':0x1,'description':a53_0x3596ca(0x10f)},{'name':a53_0x3596ca(0x11a),'type':'number','default':0x64,'description':a53_0x3596ca(0x127)}],async 'validate'(_0x3f8924){const _0x361d92=a53_0x3596ca,_0x6d85a1=_0x3f8924[_0x361d92(0x11b)](_0x361d92(0x124))[_0x361d92(0x121)]();if(_0x6d85a1&&!RUNTIME_ROLE_TYPES['includes'](_0x6d85a1))throw CliErrors[_0x361d92(0x129)](_0x361d92(0x12b)+_0x6d85a1+'.');const _0x1e918e=_0x3f8924[_0x361d92(0x12e)](_0x361d92(0x130),0x1),_0x471a3c=_0x3f8924[_0x361d92(0x12e)](_0x361d92(0x11a),0x64);if(!Number[_0x361d92(0x119)](_0x1e918e)||_0x1e918e<0x1)throw CliErrors['validation'](_0x361d92(0x115));if(!Number[_0x361d92(0x119)](_0x471a3c)||_0x471a3c<0x1||_0x471a3c>0x64)throw CliErrors[_0x361d92(0x129)](_0x361d92(0x111));},async 'execute'(_0x5b6fe1){const _0xcb1117=a53_0x3596ca,_0x243456=_0x5b6fe1[_0xcb1117(0x11b)](_0xcb1117(0x124))[_0xcb1117(0x121)](),_0x4db740=_0x5b6fe1['str']('name')['trim'](),_0x66e421=_0x5b6fe1[_0xcb1117(0x12e)](_0xcb1117(0x130),0x1),_0x4181bf=_0x5b6fe1[_0xcb1117(0x12e)](_0xcb1117(0x11a),0x64);if(_0x243456){const _0x1f33d8=(await listAllRuntimeRoles(_0x5b6fe1[_0xcb1117(0x126)],{..._0x4db740?{'roleName':_0x4db740}:{}}))[_0xcb1117(0x12a)](_0x3ad4b7=>_0x3ad4b7[_0xcb1117(0x112)]===_0x243456),_0x51e30d=(_0x66e421-0x1)*_0x4181bf;return{'ok':!![],'data':{'scope':_0xcb1117(0x10e),'roles':_0x1f33d8['slice'](_0x51e30d,_0x51e30d+_0x4181bf)[_0xcb1117(0x11f)](projectRuntimeRole),'paging':{'currentPage':_0x66e421,'pageSize':_0x4181bf,'totalCount':_0x1f33d8[_0xcb1117(0x10d)]}}};}const _0x14128a=await listRuntimeAppRoles(_0x5b6fe1[_0xcb1117(0x126)],{..._0x4db740?{'roleName':_0x4db740}:{},'currentPage':_0x66e421,'pageSize':_0x4181bf});return{'ok':!![],'data':{'scope':_0xcb1117(0x10e),'roles':_0x14128a[_0xcb1117(0x116)]['map'](projectRuntimeRole),'paging':_0x14128a['paging']}};}};