@lovrabet/lovrabet-cli 2.1.18 → 2.1.19

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 (134) hide show
  1. package/README.md +7 -0
  2. package/lib/cli.js +1 -1
  3. package/lib/commands/api-doc/index.js +1 -1
  4. package/lib/commands/app/cache.js +1 -1
  5. package/lib/commands/app/definitions.js +1 -1
  6. package/lib/commands/app/eligibility.js +1 -1
  7. package/lib/commands/app/mock-loader.js +1 -1
  8. package/lib/commands/app/remote-source.js +1 -1
  9. package/lib/commands/app/shared.js +1 -1
  10. package/lib/commands/app-config/get.js +1 -1
  11. package/lib/commands/app-config/index.js +1 -1
  12. package/lib/commands/artifact/index.js +1 -1
  13. package/lib/commands/auth/device.js +1 -1
  14. package/lib/commands/auth/index.js +1 -1
  15. package/lib/commands/auth/prompt.js +1 -1
  16. package/lib/commands/bff/detail.js +1 -1
  17. package/lib/commands/bff/exec.js +1 -1
  18. package/lib/commands/bff/index.js +1 -1
  19. package/lib/commands/cli-skill/index.js +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/shared.js +1 -1
  26. package/lib/commands/data/index.js +1 -1
  27. package/lib/commands/dataset/detail.js +1 -1
  28. package/lib/commands/dataset/index.js +1 -1
  29. package/lib/commands/dataset/list.js +1 -1
  30. package/lib/commands/dataset/sdk-doc.js +1 -1
  31. package/lib/commands/doctor.js +1 -1
  32. package/lib/commands/file/index.js +1 -1
  33. package/lib/commands/init.js +1 -1
  34. package/lib/commands/kb/index.js +1 -1
  35. package/lib/commands/logs/index.js +1 -1
  36. package/lib/commands/ocr/index.js +1 -1
  37. package/lib/commands/personal-bff/index.js +1 -1
  38. package/lib/commands/registry.js +1 -1
  39. package/lib/commands/schedule/index.js +1 -1
  40. package/lib/commands/schema.js +1 -1
  41. package/lib/commands/service/dynamic.js +1 -1
  42. package/lib/commands/service/function-name-adapter.js +1 -1
  43. package/lib/commands/service/index.js +1 -1
  44. package/lib/commands/service/registry.js +1 -1
  45. package/lib/commands/skill/commands/create.js +1 -1
  46. package/lib/commands/skill/commands/install.js +1 -1
  47. package/lib/commands/skill/commands/list.js +1 -1
  48. package/lib/commands/skill/commands/push.js +1 -1
  49. package/lib/commands/skill/commands/validate.js +1 -1
  50. package/lib/commands/skill/flags.d.ts +1 -0
  51. package/lib/commands/skill/flags.js +1 -1
  52. package/lib/commands/skill/index.js +1 -1
  53. package/lib/commands/skill/manifest-helpers.js +1 -1
  54. package/lib/commands/skill/push-execute.js +1 -1
  55. package/lib/commands/skill/push-flow-helpers.js +1 -1
  56. package/lib/commands/skill/push-retarget.js +1 -1
  57. package/lib/commands/skill/scopes.js +1 -1
  58. package/lib/commands/skill/summary.js +1 -1
  59. package/lib/commands/skill/templates.js +1 -1
  60. package/lib/commands/skill/validate.js +1 -1
  61. package/lib/commands/sql/detail.js +1 -1
  62. package/lib/commands/sql/exec.js +1 -1
  63. package/lib/commands/sql/index.js +1 -1
  64. package/lib/commands/update.js +1 -1
  65. package/lib/commands/workspace/index.js +1 -1
  66. package/lib/config/schema.js +1 -1
  67. package/lib/constant/app.js +1 -1
  68. package/lib/constant/auth-mode.js +1 -1
  69. package/lib/constant/cli.js +1 -1
  70. package/lib/constant/defaults.js +1 -1
  71. package/lib/constant/distribution.js +1 -1
  72. package/lib/constant/domain.js +1 -1
  73. package/lib/constant/env.js +1 -1
  74. package/lib/constant/output.js +1 -1
  75. package/lib/constant/product.js +1 -1
  76. package/lib/constant/risk.js +1 -1
  77. package/lib/constant/url.js +1 -1
  78. package/lib/context.js +1 -1
  79. package/lib/core/api-client.js +1 -1
  80. package/lib/core/db-resolver.js +1 -1
  81. package/lib/core/sdk-client.js +1 -1
  82. package/lib/errors.js +1 -1
  83. package/lib/framework/build-all-flags.js +1 -1
  84. package/lib/framework/dryrun.js +1 -1
  85. package/lib/framework/flags.js +1 -1
  86. package/lib/framework/help.js +1 -1
  87. package/lib/framework/index.js +1 -1
  88. package/lib/framework/output.js +1 -1
  89. package/lib/framework/preparse.js +1 -1
  90. package/lib/framework/rate-limit.js +1 -1
  91. package/lib/framework/response.js +1 -1
  92. package/lib/framework/runner-confirmation.js +1 -1
  93. package/lib/framework/runner-error.js +1 -1
  94. package/lib/framework/runner.js +1 -1
  95. package/lib/framework/schema-export.js +1 -1
  96. package/lib/framework/service-order.js +1 -1
  97. package/lib/framework/types.js +1 -1
  98. package/lib/generated/build-info.d.ts +4 -4
  99. package/lib/generated/build-info.js +1 -1
  100. package/lib/help.js +1 -1
  101. package/lib/runtime/event.js +1 -1
  102. package/lib/runtime/index.js +1 -1
  103. package/lib/runtime/queue.js +1 -1
  104. package/lib/runtime/resolve.js +1 -1
  105. package/lib/skills/npx-skills-add.js +1 -1
  106. package/lib/skills/runtime-skill-sync/constants.js +1 -1
  107. package/lib/skills/runtime-skill-sync/fs-utils.js +1 -1
  108. package/lib/skills/runtime-skill-sync/hashing.js +1 -1
  109. package/lib/skills/runtime-skill-sync/install-target.d.ts +9 -0
  110. package/lib/skills/runtime-skill-sync/install-target.js +1 -0
  111. package/lib/skills/runtime-skill-sync/links.d.ts +5 -4
  112. package/lib/skills/runtime-skill-sync/links.js +1 -1
  113. package/lib/skills/runtime-skill-sync/list-local.d.ts +2 -2
  114. package/lib/skills/runtime-skill-sync/list-local.js +1 -1
  115. package/lib/skills/runtime-skill-sync/local-files.js +1 -1
  116. package/lib/skills/runtime-skill-sync/materialize.js +1 -1
  117. package/lib/skills/runtime-skill-sync/metadata.js +1 -1
  118. package/lib/skills/runtime-skill-sync/paths.js +1 -1
  119. package/lib/skills/runtime-skill-sync/push.js +1 -1
  120. package/lib/skills/runtime-skill-sync/scopes.js +1 -1
  121. package/lib/skills/runtime-skill-sync/types.d.ts +17 -0
  122. package/lib/skills/runtime-skill-sync/zip-codec.js +1 -1
  123. package/lib/skills/runtime-skill-sync/zip-package.js +1 -1
  124. package/lib/skills/runtime-skill-sync.d.ts +2 -1
  125. package/lib/skills/runtime-skill-sync.js +1 -1
  126. package/lib/utils/apply-jq-filter.js +1 -1
  127. package/lib/utils/logger.js +1 -1
  128. package/lib/utils/lossless-json.js +1 -1
  129. package/lib/utils/params.js +1 -1
  130. package/lib/utils/platform.js +1 -1
  131. package/lib/utils/update-notice.js +1 -1
  132. package/lib/utils/version.js +1 -1
  133. package/lib/utils/write-cli-side-channel.js +1 -1
  134. package/package.json +1 -1
package/README.md CHANGED
@@ -93,6 +93,13 @@ lovrabet skill install --scope personal
93
93
  lovrabet skill install --scope company
94
94
  ```
95
95
 
96
+ Business Skills continue to install into user-level Agent Skill directories by
97
+ default, with app-prefixed link names such as `<appCode>--<skillCode>`. Use
98
+ `lovrabet skill install --project` to link them into the current
99
+ project's `.agents/skills/<skillCode>` directory. Project and user-level
100
+ installations can coexist; an explicit project installation does not remove
101
+ existing user-level links or the cache they still reference.
102
+
96
103
  ## Common Commands
97
104
 
98
105
  | Area | Commands |
package/lib/cli.js CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- const a0_0x176173=a0_0x21ab;(function(_0x19117d,_0x1f7500){const _0x76a903=a0_0x21ab,_0x1f9c32=_0x19117d();while(!![]){try{const _0x405c30=-parseInt(_0x76a903(0x1d6))/0x1*(-parseInt(_0x76a903(0x1ec))/0x2)+-parseInt(_0x76a903(0x1e3))/0x3*(parseInt(_0x76a903(0x1e6))/0x4)+parseInt(_0x76a903(0x1da))/0x5+parseInt(_0x76a903(0x1eb))/0x6+-parseInt(_0x76a903(0x1d0))/0x7*(parseInt(_0x76a903(0x1f6))/0x8)+-parseInt(_0x76a903(0x1cb))/0x9*(parseInt(_0x76a903(0x1f5))/0xa)+-parseInt(_0x76a903(0x1d5))/0xb*(-parseInt(_0x76a903(0x1d1))/0xc);if(_0x405c30===_0x1f7500)break;else _0x1f9c32['push'](_0x1f9c32['shift']());}catch(_0x1b4f1a){_0x1f9c32['push'](_0x1f9c32['shift']());}}}(a0_0x50a2,0xcd690));import{jsx as a0_0x79b948}from'react/jsx-runtime';import a0_0x352557 from'meow';import{render}from'ink';function a0_0x50a2(){const _0x11a483=['10DVAPID','12257776wmXDwV','error','flags','./framework/preparse.js','12000717nFDUIL','original','catch','[preparse]\x20','flatMap','7oJSJzm','21774864CIIXtC','hint','code','Unexpected\x20error:','11jwostg','379403yolRKE','handler','message','unknownCommand','7472230DRoRMv','args','input','stderr','log','slice','length','definition','ERR_USE_AFTER_CLOSE','12lZRfZZ','Hint:\x20','exitCode','421868LaDyVb','help','ExitPromptError','name',':\x20--','366234DyDOMP','4ZQFVRN','write','cancelled','assign','ERR_STREAM_DESTROYED','exit','defaultCommand','Error:\x20','\x0aCancelled.\x0a'];a0_0x50a2=function(){return _0x11a483;};return a0_0x50a2();}import{Help}from'./help.js';function a0_0x21ab(_0x39fe3e,_0x4e6aa2){_0x39fe3e=_0x39fe3e-0x1cb;const _0x50a226=a0_0x50a2();let _0x21ab61=_0x50a226[_0x39fe3e];return _0x21ab61;}import{CliError,CliErrors}from'./errors.js';import{buildConfigFromFlags,initGlobalEnvironment}from'./context.js';import{isKnownService,getServiceEntry,findDefinition,getAllDefinitions}from'./commands/registry.js';import{generateDynamicServiceHelp,resolveDynamicServiceCommand}from'./commands/service/dynamic.js';import{runCommand,createPipelineEnv}from'./framework/runner.js';import{generateCommandHelp,generateServiceHelp,generateFullHelp}from'./framework/help.js';import{buildMeowFlags}from'./constant/cli.js';import{getCliVersionDisplay}from'./utils/version.js';const helpText=generateFullHelp(),cli=a0_0x352557(helpText,{'importMeta':import.meta,'flags':buildMeowFlags(),'version':getCliVersionDisplay()});void main()[a0_0x176173(0x1cd)](handleError);async function main(){try{await run();}catch(_0x50c6de){handleError(_0x50c6de);}}async function run(){const _0xf74f71=a0_0x176173;let _0x1d045e=cli[_0xf74f71(0x1dc)][0x0],_0x527dc0=cli[_0xf74f71(0x1dc)][0x1];const _0x43bba1=cli[_0xf74f71(0x1f8)];try{const {correctFlags:_0x529f5b}=await import(_0xf74f71(0x1f9)),_0xf636e9=getAllDefinitions()[_0xf74f71(0x1cf)](_0x197a1a=>_0x197a1a['flags']??[]),{flags:_0x23ceec,corrections:_0x4fea5c}=_0x529f5b(_0x43bba1,_0xf636e9);if(_0x4fea5c[_0xf74f71(0x1e0)]>0x0){for(const _0x124043 of _0x4fea5c){process[_0xf74f71(0x1dd)][_0xf74f71(0x1ed)](_0xf74f71(0x1ce)+_0x124043[_0xf74f71(0x1d7)]+_0xf74f71(0x1ea)+_0x124043[_0xf74f71(0x1cc)]+'\x20->\x20--'+_0x124043['corrected']+'\x0a');}Object['assign'](_0x43bba1,_0x23ceec);}}catch{}if(!_0x1d045e){const {waitUntilExit:_0x1b360b}=render(a0_0x79b948(Help,{}));await _0x1b360b();return;}if(!isKnownService(_0x1d045e)){const _0x2a9fba=resolveDynamicServiceCommand(cli[_0xf74f71(0x1dc)],_0x43bba1);if(_0x2a9fba){if(_0x43bba1['help']){console[_0xf74f71(0x1de)](generateCommandHelp(_0x2a9fba[_0xf74f71(0x1e1)]));return;}Object[_0xf74f71(0x1ef)](_0x43bba1,_0x2a9fba[_0xf74f71(0x1f8)]);const _0x3fc5ff=buildConfigFromFlags(_0x43bba1);await initGlobalEnvironment(_0x3fc5ff);const _0x35854d=createPipelineEnv(_0x3fc5ff,_0x43bba1);_0x35854d[_0xf74f71(0x1db)]=_0x2a9fba['args'],await runCommand(_0x2a9fba[_0xf74f71(0x1e1)],_0x35854d);return;}if(_0x43bba1[_0xf74f71(0x1e7)]){const _0x3282c0=generateDynamicServiceHelp(_0x1d045e);if(_0x3282c0){console[_0xf74f71(0x1de)](_0x3282c0);return;}}const {waitUntilExit:_0x3c0aff}=render(a0_0x79b948(Help,{}));await _0x3c0aff();return;}const _0x1a7a6b=getServiceEntry(_0x1d045e);if(!_0x527dc0){if(_0x43bba1[_0xf74f71(0x1e7)]){console[_0xf74f71(0x1de)](generateServiceHelp(_0x1d045e));return;}if(_0x1a7a6b[_0xf74f71(0x1f2)])_0x527dc0=_0x1a7a6b[_0xf74f71(0x1f2)];else{console[_0xf74f71(0x1de)](generateServiceHelp(_0x1d045e));return;}}const _0x22d0eb=findDefinition(_0x1d045e,_0x527dc0);!_0x22d0eb&&(console[_0xf74f71(0x1de)](generateServiceHelp(_0x1d045e)),handleError(CliErrors[_0xf74f71(0x1d9)](_0x1d045e+'\x20'+_0x527dc0)));if(_0x43bba1['help']){console['log'](generateCommandHelp(_0x22d0eb));return;}const _0xcba504=buildConfigFromFlags(_0x43bba1);await initGlobalEnvironment(_0xcba504);const _0xe27982=createPipelineEnv(_0xcba504,_0x43bba1);_0xe27982['args']=cli['input'][_0xf74f71(0x1df)](0x2),await runCommand(_0x22d0eb,_0xe27982);}function handleError(_0x23b547){const _0x3cd13c=a0_0x176173;if(_0x23b547 instanceof CliError){_0x23b547[_0x3cd13c(0x1d3)]===_0x3cd13c(0x1ee)&&(process[_0x3cd13c(0x1dd)][_0x3cd13c(0x1ed)](_0x3cd13c(0x1f4)),process[_0x3cd13c(0x1f1)](0x0));console[_0x3cd13c(0x1f7)](_0x3cd13c(0x1f3)+_0x23b547[_0x3cd13c(0x1d8)]);if(_0x23b547[_0x3cd13c(0x1d2)])console['error'](_0x3cd13c(0x1e4)+_0x23b547['hint']);process[_0x3cd13c(0x1f1)](_0x23b547[_0x3cd13c(0x1e5)]);}isUserCancellation(_0x23b547)&&(process['stderr']['write'](_0x3cd13c(0x1f4)),process[_0x3cd13c(0x1f1)](0x0)),console['error'](_0x3cd13c(0x1d4),_0x23b547),process[_0x3cd13c(0x1f1)](0x1);}function isUserCancellation(_0x2412db){const _0x4eecc0=a0_0x176173;if(!(_0x2412db instanceof Error))return![];if(_0x2412db[_0x4eecc0(0x1e9)]===_0x4eecc0(0x1e8))return!![];if(_0x2412db[_0x4eecc0(0x1d3)]===_0x4eecc0(0x1e2))return!![];if(_0x2412db['code']===_0x4eecc0(0x1f0))return!![];return![];}
2
+ const a0_0xbf022c=a0_0xd661;(function(_0x285a2d,_0x119e48){const _0x4890ba=a0_0xd661,_0x422666=_0x285a2d();while(!![]){try{const _0x5cdeb3=parseInt(_0x4890ba(0x171))/0x1*(parseInt(_0x4890ba(0x179))/0x2)+-parseInt(_0x4890ba(0x183))/0x3*(parseInt(_0x4890ba(0x17c))/0x4)+-parseInt(_0x4890ba(0x15f))/0x5+-parseInt(_0x4890ba(0x165))/0x6*(-parseInt(_0x4890ba(0x16c))/0x7)+parseInt(_0x4890ba(0x173))/0x8*(-parseInt(_0x4890ba(0x178))/0x9)+-parseInt(_0x4890ba(0x162))/0xa*(parseInt(_0x4890ba(0x167))/0xb)+parseInt(_0x4890ba(0x16b))/0xc;if(_0x5cdeb3===_0x119e48)break;else _0x422666['push'](_0x422666['shift']());}catch(_0x22c72f){_0x422666['push'](_0x422666['shift']());}}}(a0_0x66a1,0x1be9f));import{jsx as a0_0x525750}from'react/jsx-runtime';import a0_0x464999 from'meow';function a0_0xd661(_0x2da4b3,_0x25d896){_0x2da4b3=_0x2da4b3-0x15e;const _0x66a12d=a0_0x66a1();let _0xd66124=_0x66a12d[_0x2da4b3];return _0xd66124;}import{render}from'ink';import{Help}from'./help.js';import{CliError,CliErrors}from'./errors.js';import{buildConfigFromFlags,initGlobalEnvironment}from'./context.js';import{isKnownService,getServiceEntry,findDefinition,getAllDefinitions}from'./commands/registry.js';import{generateDynamicServiceHelp,resolveDynamicServiceCommand}from'./commands/service/dynamic.js';import{runCommand,createPipelineEnv}from'./framework/runner.js';import{generateCommandHelp,generateServiceHelp,generateFullHelp}from'./framework/help.js';import{buildMeowFlags}from'./constant/cli.js';import{getCliVersionDisplay}from'./utils/version.js';const helpText=generateFullHelp(),cli=a0_0x464999(helpText,{'importMeta':import.meta,'flags':buildMeowFlags(),'version':getCliVersionDisplay()});void main()[a0_0xbf022c(0x163)](handleError);function a0_0x66a1(){const _0x62ee80=['359615BFSDWg','defaultCommand','assign','967530ADMEfB','catch','Hint:\x20','6MhHSfm','ERR_USE_AFTER_CLOSE','11RMkcgq',':\x20--','message','name','2430276udnMRK','687288tZZoEO','write','input','log','unknownCommand','22cAjJUS','stderr','128iBqmXY','args','Unexpected\x20error:','Error:\x20','flags','79785PclXVQ','18356EQLwlB','error','\x0aCancelled.\x0a','51848JzJVEN','handler','exit','ExitPromptError','code','hint','definition','18VRFYYt','help','[preparse]\x20'];a0_0x66a1=function(){return _0x62ee80;};return a0_0x66a1();}async function main(){try{await run();}catch(_0x423c6a){handleError(_0x423c6a);}}async function run(){const _0x3314ac=a0_0xbf022c;let _0x368e45=cli[_0x3314ac(0x16e)][0x0],_0xf704f3=cli[_0x3314ac(0x16e)][0x1];const _0x3f661e=cli[_0x3314ac(0x177)];try{const {correctFlags:_0x2e78c0}=await import('./framework/preparse.js'),_0x52cc07=getAllDefinitions()['flatMap'](_0x5b2fb0=>_0x5b2fb0[_0x3314ac(0x177)]??[]),{flags:_0x833ec6,corrections:_0x1d59a1}=_0x2e78c0(_0x3f661e,_0x52cc07);if(_0x1d59a1['length']>0x0){for(const _0x5c62db of _0x1d59a1){process['stderr'][_0x3314ac(0x16d)](_0x3314ac(0x15e)+_0x5c62db[_0x3314ac(0x17d)]+_0x3314ac(0x168)+_0x5c62db['original']+'\x20->\x20--'+_0x5c62db['corrected']+'\x0a');}Object[_0x3314ac(0x161)](_0x3f661e,_0x833ec6);}}catch{}if(!_0x368e45){const {waitUntilExit:_0x487fc3}=render(a0_0x525750(Help,{}));await _0x487fc3();return;}if(!isKnownService(_0x368e45)){const _0x33edab=resolveDynamicServiceCommand(cli[_0x3314ac(0x16e)],_0x3f661e);if(_0x33edab){if(_0x3f661e['help']){console[_0x3314ac(0x16f)](generateCommandHelp(_0x33edab[_0x3314ac(0x182)]));return;}Object[_0x3314ac(0x161)](_0x3f661e,_0x33edab[_0x3314ac(0x177)]);const _0x170d43=buildConfigFromFlags(_0x3f661e);await initGlobalEnvironment(_0x170d43);const _0x2dea8b=createPipelineEnv(_0x170d43,_0x3f661e);_0x2dea8b[_0x3314ac(0x174)]=_0x33edab[_0x3314ac(0x174)],await runCommand(_0x33edab[_0x3314ac(0x182)],_0x2dea8b);return;}if(_0x3f661e[_0x3314ac(0x184)]){const _0x3cd1c2=generateDynamicServiceHelp(_0x368e45);if(_0x3cd1c2){console[_0x3314ac(0x16f)](_0x3cd1c2);return;}}const {waitUntilExit:_0x363ce6}=render(a0_0x525750(Help,{}));await _0x363ce6();return;}const _0x48ffe1=getServiceEntry(_0x368e45);if(!_0xf704f3){if(_0x3f661e[_0x3314ac(0x184)]){console[_0x3314ac(0x16f)](generateServiceHelp(_0x368e45));return;}if(_0x48ffe1[_0x3314ac(0x160)])_0xf704f3=_0x48ffe1[_0x3314ac(0x160)];else{console['log'](generateServiceHelp(_0x368e45));return;}}const _0x4b044a=findDefinition(_0x368e45,_0xf704f3);!_0x4b044a&&(console[_0x3314ac(0x16f)](generateServiceHelp(_0x368e45)),handleError(CliErrors[_0x3314ac(0x170)](_0x368e45+'\x20'+_0xf704f3)));if(_0x3f661e[_0x3314ac(0x184)]){console['log'](generateCommandHelp(_0x4b044a));return;}const _0x37b729=buildConfigFromFlags(_0x3f661e);await initGlobalEnvironment(_0x37b729);const _0x31796c=createPipelineEnv(_0x37b729,_0x3f661e);_0x31796c[_0x3314ac(0x174)]=cli['input']['slice'](0x2),await runCommand(_0x4b044a,_0x31796c);}function handleError(_0x460686){const _0x5c3205=a0_0xbf022c;if(_0x460686 instanceof CliError){_0x460686[_0x5c3205(0x180)]==='cancelled'&&(process[_0x5c3205(0x172)][_0x5c3205(0x16d)](_0x5c3205(0x17b)),process['exit'](0x0));console[_0x5c3205(0x17a)](_0x5c3205(0x176)+_0x460686[_0x5c3205(0x169)]);if(_0x460686[_0x5c3205(0x181)])console[_0x5c3205(0x17a)](_0x5c3205(0x164)+_0x460686[_0x5c3205(0x181)]);process[_0x5c3205(0x17e)](_0x460686['exitCode']);}isUserCancellation(_0x460686)&&(process[_0x5c3205(0x172)][_0x5c3205(0x16d)](_0x5c3205(0x17b)),process[_0x5c3205(0x17e)](0x0)),console[_0x5c3205(0x17a)](_0x5c3205(0x175),_0x460686),process[_0x5c3205(0x17e)](0x1);}function isUserCancellation(_0x4155a8){const _0x4dd449=a0_0xbf022c;if(!(_0x4155a8 instanceof Error))return![];if(_0x4155a8[_0x4dd449(0x16a)]===_0x4dd449(0x17f))return!![];if(_0x4155a8[_0x4dd449(0x180)]===_0x4dd449(0x166))return!![];if(_0x4155a8['code']==='ERR_STREAM_DESTROYED')return!![];return![];}
@@ -1 +1 @@
1
- const a1_0xe0984a=a1_0x25ad;(function(_0x9aab0f,_0x58b55e){const _0x4ef953=a1_0x25ad,_0x33fde6=_0x9aab0f();while(!![]){try{const _0x81251f=-parseInt(_0x4ef953(0x190))/0x1+-parseInt(_0x4ef953(0x1c9))/0x2*(parseInt(_0x4ef953(0x171))/0x3)+-parseInt(_0x4ef953(0x17a))/0x4+parseInt(_0x4ef953(0x18b))/0x5+parseInt(_0x4ef953(0x1be))/0x6*(parseInt(_0x4ef953(0x1ae))/0x7)+parseInt(_0x4ef953(0x172))/0x8+parseInt(_0x4ef953(0x19f))/0x9*(parseInt(_0x4ef953(0x1a4))/0xa);if(_0x81251f===_0x58b55e)break;else _0x33fde6['push'](_0x33fde6['shift']());}catch(_0x378887){_0x33fde6['push'](_0x33fde6['shift']());}}}(a1_0x4560,0x1a649));function a1_0x25ad(_0x3827c8,_0x3062c1){_0x3827c8=_0x3827c8-0x15e;const _0x456000=a1_0x4560();let _0x25ad23=_0x456000[_0x3827c8];return _0x25ad23;}import{CliErrors}from'../../errors.js';const CATEGORY_FLAG={'name':a1_0xe0984a(0x1ca),'type':a1_0xe0984a(0x178),'description':a1_0xe0984a(0x15e)},KEYWORD_FLAG={'name':'keyword','type':a1_0xe0984a(0x178),'description':a1_0xe0984a(0x18f)},DOC_CODE_FLAG={'name':a1_0xe0984a(0x16d),'type':a1_0xe0984a(0x178),'required':!![],'description':'API\x20doc\x20code,\x20for\x20example\x20dataset_list'},DOCS=[{'code':a1_0xe0984a(0x1c1),'category':a1_0xe0984a(0x1a6),'title':a1_0xe0984a(0x1ac),'method':a1_0xe0984a(0x17d),'path':'/api/dataset/get-dataset-list-by-app-code','summary':a1_0xe0984a(0x18e),'whenToUse':a1_0xe0984a(0x1bd),'pathParams':[],'queryParams':[],'bodySchema':a1_0xe0984a(0x18c),'responseHighlights':[a1_0xe0984a(0x16b),'paging.totalCount\x20gives\x20total\x20rows'],'examples':[a1_0xe0984a(0x174)],'notes':[a1_0xe0984a(0x1aa)],'markdown':[a1_0xe0984a(0x184),'',a1_0xe0984a(0x18a)][a1_0xe0984a(0x1bb)]('\x0a')},{'code':a1_0xe0984a(0x165),'category':'dataset','title':a1_0xe0984a(0x1bc),'method':'GET','path':'/api/dataset/getOneByCode?code={datasetCode}','summary':a1_0xe0984a(0x19c),'whenToUse':a1_0xe0984a(0x1b6),'pathParams':[],'queryParams':[{'name':a1_0xe0984a(0x16d),'description':a1_0xe0984a(0x1a5)}],'bodySchema':a1_0xe0984a(0x1a1),'responseHighlights':[a1_0xe0984a(0x1c8),'relations\x20contains\x20the\x20object-shaped\x20API\x20relations\x20value\x20when\x20returned','operations\x20describes\x20runtime\x20APIs'],'examples':[a1_0xe0984a(0x187)],'notes':[a1_0xe0984a(0x196)],'markdown':[a1_0xe0984a(0x198),'',a1_0xe0984a(0x189)][a1_0xe0984a(0x1bb)]('\x0a')},{'code':'dataset_data_filter','category':a1_0xe0984a(0x1a6),'title':a1_0xe0984a(0x1b3),'method':a1_0xe0984a(0x17d),'path':a1_0xe0984a(0x17c),'summary':a1_0xe0984a(0x17e),'whenToUse':'需要携带\x20where、orderBy、分页等条件读取业务数据时使用','pathParams':[{'name':a1_0xe0984a(0x16f),'description':'Current\x20app\x20code'},{'name':a1_0xe0984a(0x1c3),'description':'32-character\x20dataset\x20code'}],'queryParams':[],'bodySchema':'{\x22where\x22:{},\x22currentPage\x22:1,\x22pageSize\x22:20}','responseHighlights':['tableData\x20contains\x20records','paging\x20contains\x20pagination'],'examples':[a1_0xe0984a(0x19d)],'notes':[a1_0xe0984a(0x197)],'markdown':['##\x20Filter\x20dataset\x20data','',a1_0xe0984a(0x1b8)][a1_0xe0984a(0x1bb)]('\x0a')},{'code':a1_0xe0984a(0x1b5),'category':a1_0xe0984a(0x1a6),'title':'Aggregate\x20dataset\x20data','method':a1_0xe0984a(0x17d),'path':a1_0xe0984a(0x1a7),'summary':a1_0xe0984a(0x188),'whenToUse':a1_0xe0984a(0x163),'pathParams':[{'name':a1_0xe0984a(0x16f),'description':a1_0xe0984a(0x160)},{'name':'datasetCode','description':a1_0xe0984a(0x1a5)}],'queryParams':[],'bodySchema':a1_0xe0984a(0x193),'responseHighlights':[a1_0xe0984a(0x166),a1_0xe0984a(0x195)],'examples':['lovrabet\x20data\x20aggregate\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22aggregate\x22:[{\x22column\x22:\x22id\x22,\x22type\x22:\x22COUNT\x22,\x22alias\x22:\x22cnt\x22}]}\x27'],'notes':[a1_0xe0984a(0x182),'`field`\x20is\x20accepted\x20as\x20a\x20deprecated\x20alias\x20for\x20`column`;\x20new\x20calls\x20should\x20use\x20`column`.'],'markdown':[a1_0xe0984a(0x185),'',a1_0xe0984a(0x19e)][a1_0xe0984a(0x1bb)]('\x0a')},{'code':'dataset_data_get_one','category':a1_0xe0984a(0x1a6),'title':a1_0xe0984a(0x16a),'method':a1_0xe0984a(0x17d),'path':a1_0xe0984a(0x164),'summary':a1_0xe0984a(0x1a9),'whenToUse':a1_0xe0984a(0x177),'pathParams':[{'name':a1_0xe0984a(0x16f),'description':a1_0xe0984a(0x160)},{'name':a1_0xe0984a(0x1c3),'description':a1_0xe0984a(0x1a5)}],'queryParams':[],'bodySchema':a1_0xe0984a(0x1ab),'responseHighlights':['Returns\x20one\x20matching\x20business\x20record'],'examples':['lovrabet\x20data\x20getOne\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22id\x22:123}\x27'],'notes':[a1_0xe0984a(0x192)],'markdown':'##\x20Get\x20one\x20dataset\x20record\x0a\x0aRead\x20one\x20record\x20by\x20id.'},{'code':a1_0xe0984a(0x1b4),'category':a1_0xe0984a(0x1a6),'title':'Create\x20dataset\x20record','method':'POST','path':'/api/{appCode}/{datasetCode}/create','summary':'创建数据','whenToUse':a1_0xe0984a(0x1a8),'pathParams':[{'name':'appCode','description':a1_0xe0984a(0x160)},{'name':a1_0xe0984a(0x1c3),'description':a1_0xe0984a(0x1a5)}],'queryParams':[],'bodySchema':a1_0xe0984a(0x179),'responseHighlights':[a1_0xe0984a(0x1c5)],'examples':[a1_0xe0984a(0x173)],'notes':[a1_0xe0984a(0x1c0)],'markdown':a1_0xe0984a(0x191)},{'code':a1_0xe0984a(0x176),'category':'bf','title':'Get\x20BF\x20endpoint\x20function\x20contract','method':'GET','path':a1_0xe0984a(0x199),'summary':'按应用和函数名精确获取\x20BF\x20运行契约','whenToUse':'已经从用户、平台\x20UI\x20或前序上下文确认函数名,需要查看该\x20ENDPOINT\x20的运行态元信息时使用','pathParams':[{'name':'appCode','description':a1_0xe0984a(0x160)},{'name':a1_0xe0984a(0x1af),'description':'Exact\x20endpoint\x20function\x20name'}],'queryParams':[],'bodySchema':'None','responseHighlights':[a1_0xe0984a(0x181)],'examples':[a1_0xe0984a(0x1b1)],'notes':[a1_0xe0984a(0x15f)],'markdown':'##\x20Get\x20BF\x20endpoint\x20function\x20contract\x0a\x0aInspect\x20one\x20known\x20endpoint\x20function\x20through\x20the\x20AK-authenticated\x20exact\x20detail\x20API.'},{'code':a1_0xe0984a(0x1ad),'category':'bf','title':'Execute\x20BF\x20endpoint\x20function','method':a1_0xe0984a(0x17d),'path':a1_0xe0984a(0x17f),'summary':a1_0xe0984a(0x1a0),'whenToUse':a1_0xe0984a(0x1b0),'pathParams':[{'name':a1_0xe0984a(0x16f),'description':a1_0xe0984a(0x160)},{'name':a1_0xe0984a(0x1af),'description':a1_0xe0984a(0x1c7)}],'queryParams':[],'bodySchema':a1_0xe0984a(0x170),'responseHighlights':[a1_0xe0984a(0x1a2)],'examples':[a1_0xe0984a(0x16e)],'notes':[a1_0xe0984a(0x1ba)],'markdown':a1_0xe0984a(0x167)},{'code':a1_0xe0984a(0x1c4),'category':'custom_sql','title':a1_0xe0984a(0x168),'method':'POST','path':a1_0xe0984a(0x19b),'summary':'执行自定义\x20SQL','whenToUse':a1_0xe0984a(0x16c),'pathParams':[],'queryParams':[],'bodySchema':a1_0xe0984a(0x1b7),'responseHighlights':[a1_0xe0984a(0x1b2)],'examples':['lovrabet\x20sql\x20exec\x20--sqlcode\x20<sqlCode>\x20--params\x20\x27{}\x27'],'notes':['Use\x20`lovrabet\x20sql\x20detail`\x20before\x20execution.'],'markdown':'##\x20Execute\x20custom\x20SQL\x0a\x0aExecute\x20a\x20configured\x20SQL\x20script\x20by\x20sqlCode.'}];function entrySummary(_0x5678b7){const _0x5a2eae=a1_0xe0984a;return{'code':_0x5678b7[_0x5a2eae(0x16d)],'category':_0x5678b7[_0x5a2eae(0x1ca)],'method':_0x5678b7[_0x5a2eae(0x161)],'path':_0x5678b7[_0x5a2eae(0x1c2)],'summary':_0x5678b7['summary'],'whenToUse':_0x5678b7[_0x5a2eae(0x180)]};}function a1_0x4560(){const _0x4fab97=['lovrabet\x20dataset\x20detail\x20--code\x20<datasetCode>\x20--appcode\x20<appCode>','聚合查询数据集数据','Inspect\x20field\x20names,\x20relations,\x20and\x20operation\x20metadata\x20for\x20a\x20known\x20dataset\x20code.','Use\x20this\x20API\x20or\x20`lovrabet\x20dataset\x20list`\x20to\x20discover\x20available\x20dataset\x20codes\x20before\x20reading\x20data.','860395EsQgLt','{\x22appCode\x22:\x22app-aa63b188\x22,\x22currentPage\x22:1,\x22pageSize\x22:100}','filter','分页获取数据集列表','Search\x20docs\x20by\x20code,\x20summary,\x20path,\x20or\x20usage\x20text','111777pDSHvX','##\x20Create\x20dataset\x20record\x0a\x0aCreate\x20one\x20data\x20record\x20in\x20a\x20dataset.','Prefer\x20`filter`\x20when\x20the\x20record\x20id\x20is\x20unknown.','{\x22aggregate\x22:[{\x22column\x22:\x20\x22id\x22,\x22type\x22:\x22COUNT\x22,\x22alias\x22:\x22cnt\x22}],\x22groupBy\x22:[]}','includes','where\x20filters\x20before\x20aggregation','If\x20SDK\x20usage\x20is\x20needed,\x20follow\x20with\x20`lovrabet\x20dataset\x20sdk-doc\x20--code\x20<datasetCode>`.','Use\x20read-only\x20data\x20commands\x20before\x20writing\x20Artifacts\x20that\x20display\x20real\x20data.','##\x20Dataset\x20detail','/client/bff/endpoint/{appCode}/{functionName}','List\x20available\x20runtime\x20API\x20documentation\x20entries','/api/custom/executeSql','获取数据集详情','lovrabet\x20data\x20filter\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22currentPage\x22:1,\x22pageSize\x22:5}\x27','Aggregate\x20supports\x20COUNT,\x20SUM,\x20AVG,\x20MAX,\x20and\x20MIN\x20definitions\x20in\x20the\x20`aggregate`\x20array.','123561OORxUU','执行指定\x20BF\x20函数','None','Returns\x20script\x20business\x20payload','length','140UKNbWO','32-character\x20dataset\x20code','dataset','/api/{appCode}/{datasetCode}/aggregate','需要向指定数据集新增一条业务数据时使用','查询单条数据','CLI\x20users\x20should\x20prefer\x20`lovrabet\x20dataset\x20list`\x20for\x20this\x20workflow.','{\x22id\x22:123}','List\x20datasets','bf_execute','11347xyIbTf','functionName','已经确认目标\x20BF\x20的\x20functionName,且需要实际调用该\x20ENDPOINT\x20函数完成业务操作时使用','lovrabet\x20bff\x20detail\x20--name\x20<functionName>','Returns\x20SQL\x20execution\x20payload','Filter\x20dataset\x20data','dataset_data_create','dataset_data_aggregate','需要按数据集\x20code\x20获取字段、表信息、关联关系(relations)或操作定义时使用','{\x22appCode\x22:\x22app-aa63b188\x22,\x22sqlCode\x22:\x22xxxxxxxx-xxxxxxxx\x22,\x22params\x22:{}}','Use\x20`where`,\x20`select`,\x20`orderBy`,\x20`currentPage`,\x20and\x20`pageSize`\x20to\x20inspect\x20live\x20data\x20shape.','detail','Script\x20behavior\x20may\x20have\x20side\x20effects;\x20inspect\x20detail\x20first.','join','Dataset\x20detail','需要按\x20appCode\x20分页获取运行态数据集列表,并优先收敛可用\x20datasetCode\x20时使用','144thOvkw','API\x20doc\x20code\x20not\x20found:\x20','This\x20is\x20a\x20write\x20operation;\x20use\x20dry-run\x20when\x20available\x20and\x20safe\x20fixtures\x20for\x20smoke\x20tests.','dataset_list','path','datasetCode','custom_sql_execute','Returns\x20the\x20created\x20record\x20or\x20backend\x20operation\x20result','validation','Endpoint\x20function\x20name','fields/properties\x20describe\x20data\x20shape','42530JdzqKi','category','Filter\x20docs\x20by\x20category,\x20for\x20example\x20dataset','This\x20is\x20an\x20exact\x20lookup\x20by\x20appCode\x20+\x20functionName.\x20The\x20CLI\x20does\x20not\x20enumerate\x20BFF\x20functions\x20or\x20expose\x20platform-only\x20fields.','Current\x20app\x20code','method','api-doc','需要按\x20groupBy\x20分组并做\x20count、sum、avg、max、min\x20等聚合统计时使用','/api/{appCode}/{datasetCode}/getOne','dataset_detail','result\x20rows\x20contain\x20aggregate\x20aliases','##\x20Execute\x20BF\x20endpoint\x20function\x0a\x0aExecute\x20a\x20known\x20endpoint\x20script.','Execute\x20custom\x20SQL','Show\x20runtime\x20API\x20documentation\x20by\x20code','Get\x20one\x20dataset\x20record','tableData\x20contains\x20dataset\x20id/code/name','已经确认目标\x20sqlCode\x20存在,并需要实际执行该自定义\x20SQL\x20时使用','code','lovrabet\x20bff\x20exec\x20--name\x20<functionName>\x20--params\x20\x27{}\x27','appCode','{\x22param\x22:\x22value\x22}','9vSWABD','451632LcWaqB','lovrabet\x20data\x20create\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22name\x22:\x22demo\x22}\x27','lovrabet\x20dataset\x20list\x20--appcode\x20<appCode>\x20--format\x20compress','str','bf_detail','已经知道记录\x20id,需要按数据集读取单条业务数据时使用','string','{\x22fieldName\x22:\x22value\x22}','703864hHOFzd','keyword','/api/{appCode}/{datasetCode}/filter','POST','条件过滤查询数据','/api/endpoint/{appCode}/{functionName}','whenToUse','CLI\x20returns\x20appCode/functionName/description/version/gmtModified','Use\x20`having`\x20only\x20for\x20post-aggregation\x20filters.','toLowerCase','##\x20List\x20datasets','##\x20Aggregate\x20dataset\x20data','read'];a1_0x4560=function(){return _0x4fab97;};return a1_0x4560();}export function listApiDocEntries(_0x213e7a={}){const _0x3cd3d2=a1_0xe0984a,_0x44d3a7=String(_0x213e7a[_0x3cd3d2(0x1ca)]||'')['trim'](),_0x2c8739=String(_0x213e7a[_0x3cd3d2(0x17b)]||'')['trim']()[_0x3cd3d2(0x183)]();return DOCS[_0x3cd3d2(0x18d)](_0x22ad97=>{const _0x243b40=_0x3cd3d2;if(_0x44d3a7&&_0x22ad97[_0x243b40(0x1ca)]!==_0x44d3a7)return![];if(!_0x2c8739)return!![];return[_0x22ad97[_0x243b40(0x16d)],_0x22ad97[_0x243b40(0x1ca)],_0x22ad97[_0x243b40(0x161)],_0x22ad97['path'],_0x22ad97['summary'],_0x22ad97[_0x243b40(0x180)],_0x22ad97['title']][_0x243b40(0x1bb)]('\x20')[_0x243b40(0x183)]()[_0x243b40(0x194)](_0x2c8739);})['map'](entrySummary);}export function getApiDocDetail(_0xb2bbd3){const _0x2788cb=a1_0xe0984a,_0x54d6ff=DOCS['find'](_0x4d7ec9=>_0x4d7ec9[_0x2788cb(0x16d)]===_0xb2bbd3);if(!_0x54d6ff)throw CliErrors[_0x2788cb(0x1c6)](_0x2788cb(0x1bf)+_0xb2bbd3);return{..._0x54d6ff};}const apiDocList={'service':a1_0xe0984a(0x162),'command':'list','description':a1_0xe0984a(0x19a),'risk':'read','requiresAppCode':![],'flags':[CATEGORY_FLAG,KEYWORD_FLAG],async 'execute'(_0x5053ee){const _0x3f1f51=a1_0xe0984a,_0x1983fc=listApiDocEntries({'category':_0x5053ee[_0x3f1f51(0x175)](_0x3f1f51(0x1ca)),'keyword':_0x5053ee[_0x3f1f51(0x175)](_0x3f1f51(0x17b))});return{'ok':!![],'data':{'total':_0x1983fc[_0x3f1f51(0x1a3)],'items':_0x1983fc}};}},apiDocDetail={'service':a1_0xe0984a(0x162),'command':a1_0xe0984a(0x1b9),'description':a1_0xe0984a(0x169),'risk':a1_0xe0984a(0x186),'requiresAppCode':![],'flags':[DOC_CODE_FLAG],async 'execute'(_0x437277){const _0x419a09=a1_0xe0984a;return{'ok':!![],'data':getApiDocDetail(_0x437277['str'](_0x419a09(0x16d)))};}};export const apiDocDefinitions=[apiDocList,apiDocDetail];
1
+ const a1_0x79cf86=a1_0x541a;(function(_0x6d53cd,_0x420a34){const _0x1a4a2e=a1_0x541a,_0x31629e=_0x6d53cd();while(!![]){try{const _0x5b09de=parseInt(_0x1a4a2e(0x206))/0x1+parseInt(_0x1a4a2e(0x200))/0x2*(-parseInt(_0x1a4a2e(0x249))/0x3)+parseInt(_0x1a4a2e(0x20f))/0x4+parseInt(_0x1a4a2e(0x20c))/0x5*(-parseInt(_0x1a4a2e(0x24c))/0x6)+parseInt(_0x1a4a2e(0x252))/0x7*(-parseInt(_0x1a4a2e(0x20d))/0x8)+parseInt(_0x1a4a2e(0x23f))/0x9*(parseInt(_0x1a4a2e(0x1ff))/0xa)+-parseInt(_0x1a4a2e(0x215))/0xb;if(_0x5b09de===_0x420a34)break;else _0x31629e['push'](_0x31629e['shift']());}catch(_0x1e27d0){_0x31629e['push'](_0x31629e['shift']());}}}(a1_0x22ed,0x41c83));import{CliErrors}from'../../errors.js';const CATEGORY_FLAG={'name':'category','type':a1_0x79cf86(0x232),'description':'Filter\x20docs\x20by\x20category,\x20for\x20example\x20dataset'},KEYWORD_FLAG={'name':a1_0x79cf86(0x233),'type':a1_0x79cf86(0x232),'description':a1_0x79cf86(0x1f7)},DOC_CODE_FLAG={'name':a1_0x79cf86(0x1e9),'type':a1_0x79cf86(0x232),'required':!![],'description':a1_0x79cf86(0x1f3)},DOCS=[{'code':'dataset_list','category':a1_0x79cf86(0x253),'title':'List\x20datasets','method':a1_0x79cf86(0x24a),'path':'/api/dataset/get-dataset-list-by-app-code','summary':'分页获取数据集列表','whenToUse':'需要按\x20appCode\x20分页获取运行态数据集列表,并优先收敛可用\x20datasetCode\x20时使用','pathParams':[],'queryParams':[],'bodySchema':a1_0x79cf86(0x218),'responseHighlights':[a1_0x79cf86(0x21a),a1_0x79cf86(0x205)],'examples':['lovrabet\x20dataset\x20list\x20--appcode\x20<appCode>\x20--format\x20compress'],'notes':[a1_0x79cf86(0x230)],'markdown':[a1_0x79cf86(0x243),'',a1_0x79cf86(0x1e7)][a1_0x79cf86(0x219)]('\x0a')},{'code':a1_0x79cf86(0x207),'category':'dataset','title':a1_0x79cf86(0x21d),'method':a1_0x79cf86(0x1f1),'path':a1_0x79cf86(0x1f4),'summary':a1_0x79cf86(0x22c),'whenToUse':'需要按数据集\x20code\x20获取字段、表信息、关联关系(relations)或操作定义时使用','pathParams':[],'queryParams':[{'name':a1_0x79cf86(0x1e9),'description':a1_0x79cf86(0x216)}],'bodySchema':'None','responseHighlights':[a1_0x79cf86(0x22d),a1_0x79cf86(0x1ef),a1_0x79cf86(0x23a)],'examples':[a1_0x79cf86(0x1fa)],'notes':[a1_0x79cf86(0x1f2)],'markdown':['##\x20Dataset\x20detail','',a1_0x79cf86(0x20a)][a1_0x79cf86(0x219)]('\x0a')},{'code':a1_0x79cf86(0x21f),'category':a1_0x79cf86(0x253),'title':a1_0x79cf86(0x234),'method':'POST','path':a1_0x79cf86(0x240),'summary':'条件过滤查询数据','whenToUse':'需要携带\x20where、orderBy、分页等条件读取业务数据时使用','pathParams':[{'name':a1_0x79cf86(0x22e),'description':'Current\x20app\x20code'},{'name':a1_0x79cf86(0x1ec),'description':'32-character\x20dataset\x20code'}],'queryParams':[],'bodySchema':a1_0x79cf86(0x227),'responseHighlights':['tableData\x20contains\x20records','paging\x20contains\x20pagination'],'examples':[a1_0x79cf86(0x225)],'notes':['Use\x20read-only\x20data\x20commands\x20before\x20writing\x20Artifacts\x20that\x20display\x20real\x20data.'],'markdown':[a1_0x79cf86(0x21e),'',a1_0x79cf86(0x23e)][a1_0x79cf86(0x219)]('\x0a')},{'code':a1_0x79cf86(0x224),'category':a1_0x79cf86(0x253),'title':a1_0x79cf86(0x202),'method':'POST','path':a1_0x79cf86(0x213),'summary':a1_0x79cf86(0x223),'whenToUse':a1_0x79cf86(0x23d),'pathParams':[{'name':a1_0x79cf86(0x22e),'description':a1_0x79cf86(0x23b)},{'name':a1_0x79cf86(0x1ec),'description':a1_0x79cf86(0x216)}],'queryParams':[],'bodySchema':a1_0x79cf86(0x244),'responseHighlights':[a1_0x79cf86(0x22a),'where\x20filters\x20before\x20aggregation'],'examples':[a1_0x79cf86(0x239)],'notes':[a1_0x79cf86(0x20b),a1_0x79cf86(0x1fc)],'markdown':['##\x20Aggregate\x20dataset\x20data','',a1_0x79cf86(0x1fb)][a1_0x79cf86(0x219)]('\x0a')},{'code':a1_0x79cf86(0x241),'category':a1_0x79cf86(0x253),'title':a1_0x79cf86(0x1ed),'method':a1_0x79cf86(0x24a),'path':a1_0x79cf86(0x24b),'summary':a1_0x79cf86(0x201),'whenToUse':'已经知道记录\x20id,需要按数据集读取单条业务数据时使用','pathParams':[{'name':a1_0x79cf86(0x22e),'description':a1_0x79cf86(0x23b)},{'name':a1_0x79cf86(0x1ec),'description':a1_0x79cf86(0x216)}],'queryParams':[],'bodySchema':'{\x22id\x22:123}','responseHighlights':[a1_0x79cf86(0x245)],'examples':[a1_0x79cf86(0x1eb)],'notes':[a1_0x79cf86(0x1f8)],'markdown':a1_0x79cf86(0x1f0)},{'code':'dataset_data_create','category':a1_0x79cf86(0x253),'title':'Create\x20dataset\x20record','method':a1_0x79cf86(0x24a),'path':a1_0x79cf86(0x1f6),'summary':a1_0x79cf86(0x237),'whenToUse':a1_0x79cf86(0x247),'pathParams':[{'name':'appCode','description':a1_0x79cf86(0x23b)},{'name':a1_0x79cf86(0x1ec),'description':a1_0x79cf86(0x216)}],'queryParams':[],'bodySchema':a1_0x79cf86(0x248),'responseHighlights':[a1_0x79cf86(0x251)],'examples':[a1_0x79cf86(0x220)],'notes':['This\x20is\x20a\x20write\x20operation;\x20use\x20dry-run\x20when\x20available\x20and\x20safe\x20fixtures\x20for\x20smoke\x20tests.'],'markdown':'##\x20Create\x20dataset\x20record\x0a\x0aCreate\x20one\x20data\x20record\x20in\x20a\x20dataset.'},{'code':a1_0x79cf86(0x24e),'category':'bf','title':a1_0x79cf86(0x246),'method':a1_0x79cf86(0x1f1),'path':a1_0x79cf86(0x1fe),'summary':'按应用和函数名精确获取\x20BF\x20运行契约','whenToUse':a1_0x79cf86(0x212),'pathParams':[{'name':'appCode','description':a1_0x79cf86(0x23b)},{'name':a1_0x79cf86(0x20e),'description':'Exact\x20endpoint\x20function\x20name'}],'queryParams':[],'bodySchema':a1_0x79cf86(0x255),'responseHighlights':['CLI\x20returns\x20appCode/functionName/description/version/gmtModified'],'examples':['lovrabet\x20bff\x20detail\x20--name\x20<functionName>'],'notes':[a1_0x79cf86(0x256)],'markdown':a1_0x79cf86(0x24f)},{'code':a1_0x79cf86(0x210),'category':'bf','title':'Execute\x20BF\x20endpoint\x20function','method':a1_0x79cf86(0x24a),'path':a1_0x79cf86(0x228),'summary':a1_0x79cf86(0x250),'whenToUse':a1_0x79cf86(0x209),'pathParams':[{'name':a1_0x79cf86(0x22e),'description':a1_0x79cf86(0x23b)},{'name':a1_0x79cf86(0x20e),'description':a1_0x79cf86(0x21b)}],'queryParams':[],'bodySchema':'{\x22param\x22:\x22value\x22}','responseHighlights':[a1_0x79cf86(0x238)],'examples':[a1_0x79cf86(0x231)],'notes':[a1_0x79cf86(0x1e8)],'markdown':a1_0x79cf86(0x22b)},{'code':a1_0x79cf86(0x235),'category':a1_0x79cf86(0x1f5),'title':a1_0x79cf86(0x226),'method':a1_0x79cf86(0x24a),'path':a1_0x79cf86(0x257),'summary':'执行自定义\x20SQL','whenToUse':a1_0x79cf86(0x211),'pathParams':[],'queryParams':[],'bodySchema':a1_0x79cf86(0x221),'responseHighlights':[a1_0x79cf86(0x24d)],'examples':[a1_0x79cf86(0x242)],'notes':[a1_0x79cf86(0x21c)],'markdown':a1_0x79cf86(0x214)}];function a1_0x541a(_0x2682ec,_0x569dd0){_0x2682ec=_0x2682ec-0x1e7;const _0x22edc7=a1_0x22ed();let _0x541af5=_0x22edc7[_0x2682ec];return _0x541af5;}function entrySummary(_0x3abfd5){const _0x538a17=a1_0x79cf86;return{'code':_0x3abfd5['code'],'category':_0x3abfd5[_0x538a17(0x204)],'method':_0x3abfd5[_0x538a17(0x22f)],'path':_0x3abfd5[_0x538a17(0x1f9)],'summary':_0x3abfd5[_0x538a17(0x222)],'whenToUse':_0x3abfd5['whenToUse']};}export function listApiDocEntries(_0x389412={}){const _0x161a54=a1_0x79cf86,_0x47d9d4=String(_0x389412[_0x161a54(0x204)]||'')[_0x161a54(0x236)](),_0x70aafa=String(_0x389412[_0x161a54(0x233)]||'')[_0x161a54(0x236)]()[_0x161a54(0x217)]();return DOCS[_0x161a54(0x203)](_0x20c097=>{const _0x54cfc9=_0x161a54;if(_0x47d9d4&&_0x20c097[_0x54cfc9(0x204)]!==_0x47d9d4)return![];if(!_0x70aafa)return!![];return[_0x20c097[_0x54cfc9(0x1e9)],_0x20c097[_0x54cfc9(0x204)],_0x20c097[_0x54cfc9(0x22f)],_0x20c097[_0x54cfc9(0x1f9)],_0x20c097[_0x54cfc9(0x222)],_0x20c097[_0x54cfc9(0x1fd)],_0x20c097['title']][_0x54cfc9(0x219)]('\x20')[_0x54cfc9(0x217)]()[_0x54cfc9(0x229)](_0x70aafa);})[_0x161a54(0x254)](entrySummary);}function a1_0x22ed(){const _0x1b39d3=['Use\x20`having`\x20only\x20for\x20post-aggregation\x20filters.','87160MEIYRK','634648efoOOG','functionName','1928036mBMbjj','bf_execute','已经确认目标\x20sqlCode\x20存在,并需要实际执行该自定义\x20SQL\x20时使用','已经从用户、平台\x20UI\x20或前序上下文确认函数名,需要查看该\x20ENDPOINT\x20的运行态元信息时使用','/api/{appCode}/{datasetCode}/aggregate','##\x20Execute\x20custom\x20SQL\x0a\x0aExecute\x20a\x20configured\x20SQL\x20script\x20by\x20sqlCode.','2749219NVdCKJ','32-character\x20dataset\x20code','toLowerCase','{\x22appCode\x22:\x22app-aa63b188\x22,\x22currentPage\x22:1,\x22pageSize\x22:100}','join','tableData\x20contains\x20dataset\x20id/code/name','Endpoint\x20function\x20name','Use\x20`lovrabet\x20sql\x20detail`\x20before\x20execution.','Dataset\x20detail','##\x20Filter\x20dataset\x20data','dataset_data_filter','lovrabet\x20data\x20create\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22name\x22:\x22demo\x22}\x27','{\x22appCode\x22:\x22app-aa63b188\x22,\x22sqlCode\x22:\x22xxxxxxxx-xxxxxxxx\x22,\x22params\x22:{}}','summary','聚合查询数据集数据','dataset_data_aggregate','lovrabet\x20data\x20filter\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22currentPage\x22:1,\x22pageSize\x22:5}\x27','Execute\x20custom\x20SQL','{\x22where\x22:{},\x22currentPage\x22:1,\x22pageSize\x22:20}','/api/endpoint/{appCode}/{functionName}','includes','result\x20rows\x20contain\x20aggregate\x20aliases','##\x20Execute\x20BF\x20endpoint\x20function\x0a\x0aExecute\x20a\x20known\x20endpoint\x20script.','获取数据集详情','fields/properties\x20describe\x20data\x20shape','appCode','method','CLI\x20users\x20should\x20prefer\x20`lovrabet\x20dataset\x20list`\x20for\x20this\x20workflow.','lovrabet\x20bff\x20exec\x20--name\x20<functionName>\x20--params\x20\x27{}\x27','string','keyword','Filter\x20dataset\x20data','custom_sql_execute','trim','创建数据','Returns\x20script\x20business\x20payload','lovrabet\x20data\x20aggregate\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22aggregate\x22:[{\x22column\x22:\x22id\x22,\x22type\x22:\x22COUNT\x22,\x22alias\x22:\x22cnt\x22}]}\x27','operations\x20describes\x20runtime\x20APIs','Current\x20app\x20code','API\x20doc\x20code\x20not\x20found:\x20','需要按\x20groupBy\x20分组并做\x20count、sum、avg、max、min\x20等聚合统计时使用','Use\x20`where`,\x20`select`,\x20`orderBy`,\x20`currentPage`,\x20and\x20`pageSize`\x20to\x20inspect\x20live\x20data\x20shape.','602325oEgqVA','/api/{appCode}/{datasetCode}/filter','dataset_data_get_one','lovrabet\x20sql\x20exec\x20--sqlcode\x20<sqlCode>\x20--params\x20\x27{}\x27','##\x20List\x20datasets','{\x22aggregate\x22:[{\x22column\x22:\x20\x22id\x22,\x22type\x22:\x22COUNT\x22,\x22alias\x22:\x22cnt\x22}],\x22groupBy\x22:[]}','Returns\x20one\x20matching\x20business\x20record','Get\x20BF\x20endpoint\x20function\x20contract','需要向指定数据集新增一条业务数据时使用','{\x22fieldName\x22:\x22value\x22}','15BgIoiO','POST','/api/{appCode}/{datasetCode}/getOne','12vkOmjD','Returns\x20SQL\x20execution\x20payload','bf_detail','##\x20Get\x20BF\x20endpoint\x20function\x20contract\x0a\x0aInspect\x20one\x20known\x20endpoint\x20function\x20through\x20the\x20AK-authenticated\x20exact\x20detail\x20API.','执行指定\x20BF\x20函数','Returns\x20the\x20created\x20record\x20or\x20backend\x20operation\x20result','21YZwcaj','dataset','map','None','This\x20is\x20an\x20exact\x20lookup\x20by\x20appCode\x20+\x20functionName.\x20The\x20CLI\x20does\x20not\x20enumerate\x20BFF\x20functions\x20or\x20expose\x20platform-only\x20fields.','/api/custom/executeSql','api-doc','Use\x20this\x20API\x20or\x20`lovrabet\x20dataset\x20list`\x20to\x20discover\x20available\x20dataset\x20codes\x20before\x20reading\x20data.','Script\x20behavior\x20may\x20have\x20side\x20effects;\x20inspect\x20detail\x20first.','code','validation','lovrabet\x20data\x20getOne\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22id\x22:123}\x27','datasetCode','Get\x20one\x20dataset\x20record','str','relations\x20contains\x20the\x20object-shaped\x20API\x20relations\x20value\x20when\x20returned','##\x20Get\x20one\x20dataset\x20record\x0a\x0aRead\x20one\x20record\x20by\x20id.','GET','If\x20SDK\x20usage\x20is\x20needed,\x20follow\x20with\x20`lovrabet\x20dataset\x20sdk-doc\x20--code\x20<datasetCode>`.','API\x20doc\x20code,\x20for\x20example\x20dataset_list','/api/dataset/getOneByCode?code={datasetCode}','custom_sql','/api/{appCode}/{datasetCode}/create','Search\x20docs\x20by\x20code,\x20summary,\x20path,\x20or\x20usage\x20text','Prefer\x20`filter`\x20when\x20the\x20record\x20id\x20is\x20unknown.','path','lovrabet\x20dataset\x20detail\x20--code\x20<datasetCode>\x20--appcode\x20<appCode>','Aggregate\x20supports\x20COUNT,\x20SUM,\x20AVG,\x20MAX,\x20and\x20MIN\x20definitions\x20in\x20the\x20`aggregate`\x20array.','`field`\x20is\x20accepted\x20as\x20a\x20deprecated\x20alias\x20for\x20`column`;\x20new\x20calls\x20should\x20use\x20`column`.','whenToUse','/client/bff/endpoint/{appCode}/{functionName}','30TCOnZp','68454bqVIfz','查询单条数据','Aggregate\x20dataset\x20data','filter','category','paging.totalCount\x20gives\x20total\x20rows','280580yVZLOs','dataset_detail','detail','已经确认目标\x20BF\x20的\x20functionName,且需要实际调用该\x20ENDPOINT\x20函数完成业务操作时使用','Inspect\x20field\x20names,\x20relations,\x20and\x20operation\x20metadata\x20for\x20a\x20known\x20dataset\x20code.'];a1_0x22ed=function(){return _0x1b39d3;};return a1_0x22ed();}export function getApiDocDetail(_0x4543e9){const _0x58f75d=a1_0x79cf86,_0x256099=DOCS['find'](_0x3c9a5a=>_0x3c9a5a['code']===_0x4543e9);if(!_0x256099)throw CliErrors[_0x58f75d(0x1ea)](_0x58f75d(0x23c)+_0x4543e9);return{..._0x256099};}const apiDocList={'service':a1_0x79cf86(0x258),'command':'list','description':'List\x20available\x20runtime\x20API\x20documentation\x20entries','risk':'read','requiresAppCode':![],'flags':[CATEGORY_FLAG,KEYWORD_FLAG],async 'execute'(_0xe9379c){const _0xe7aeca=a1_0x79cf86,_0x102d4c=listApiDocEntries({'category':_0xe9379c['str'](_0xe7aeca(0x204)),'keyword':_0xe9379c[_0xe7aeca(0x1ee)](_0xe7aeca(0x233))});return{'ok':!![],'data':{'total':_0x102d4c['length'],'items':_0x102d4c}};}},apiDocDetail={'service':a1_0x79cf86(0x258),'command':a1_0x79cf86(0x208),'description':'Show\x20runtime\x20API\x20documentation\x20by\x20code','risk':'read','requiresAppCode':![],'flags':[DOC_CODE_FLAG],async 'execute'(_0x116a1a){const _0x3523df=a1_0x79cf86;return{'ok':!![],'data':getApiDocDetail(_0x116a1a[_0x3523df(0x1ee)]('code'))};}};export const apiDocDefinitions=[apiDocList,apiDocDetail];
@@ -1 +1 @@
1
- (function(_0x2f9233,_0x3fad9e){const _0xf6dfb5=a2_0x5cca,_0x549fed=_0x2f9233();while(!![]){try{const _0x2c3443=-parseInt(_0xf6dfb5(0xa0))/0x1*(parseInt(_0xf6dfb5(0x93))/0x2)+parseInt(_0xf6dfb5(0xa1))/0x3+-parseInt(_0xf6dfb5(0x95))/0x4+parseInt(_0xf6dfb5(0x92))/0x5*(-parseInt(_0xf6dfb5(0xa2))/0x6)+-parseInt(_0xf6dfb5(0x9d))/0x7+-parseInt(_0xf6dfb5(0x99))/0x8+parseInt(_0xf6dfb5(0xa9))/0x9;if(_0x2c3443===_0x3fad9e)break;else _0x549fed['push'](_0x549fed['shift']());}catch(_0x79a1e7){_0x549fed['push'](_0x549fed['shift']());}}}(a2_0x4047,0xf1774));import{createHash}from'node:crypto';function a2_0x5cca(_0x137bc0,_0x908857){_0x137bc0=_0x137bc0-0x90;const _0x404739=a2_0x4047();let _0x5cca7f=_0x404739[_0x137bc0];return _0x5cca7f;}import{existsSync,mkdirSync,readFileSync,renameSync,unlinkSync,writeFileSync}from'node:fs';import{homedir}from'node:os';import{dirname,resolve}from'node:path';import{PRODUCT_CONFIG}from'../../constant/product.js';import{isRuntimeAccessibleApp}from'../../commands/app/eligibility.js';export function fingerprintAccessKey(_0x25891d){const _0x9cbbd4=a2_0x5cca,_0x355ebf=_0x25891d[_0x9cbbd4(0x9f)](),_0x109a5c=_0x355ebf[_0x9cbbd4(0xaa)](-0x6)||_0x9cbbd4(0x98),_0x3c4b89=createHash('sha256')[_0x9cbbd4(0xa4)](_0x355ebf)[_0x9cbbd4(0xa3)](_0x9cbbd4(0x9e))[_0x9cbbd4(0xaa)](0x0,0xc);return _0x9cbbd4(0x90)+_0x109a5c+'_'+_0x3c4b89;}export function getAppCacheFilePath(_0x262b0b,_0x3c8ab3){const _0x18e23e=a2_0x5cca;return resolve(homedir(),PRODUCT_CONFIG['homeDirName'],'cache',_0x262b0b,fingerprintAccessKey(_0x3c8ab3),_0x18e23e(0xac));}export function readCachedAppList(_0x251c61,_0x27310c){const _0x1ad604=a2_0x5cca;if(!_0x27310c?.[_0x1ad604(0x9f)]())return null;const _0x1fb589=getAppCacheFilePath(_0x251c61,_0x27310c);if(!existsSync(_0x1fb589))return null;try{const _0x34fd5d=readFileSync(_0x1fb589,_0x1ad604(0x9b));if(!_0x34fd5d['trim']())return null;const _0x41a415=JSON[_0x1ad604(0x94)](_0x34fd5d);if(!Array[_0x1ad604(0xa8)](_0x41a415[_0x1ad604(0x9c)]))return null;return _0x41a415;}catch{return null;}}export function writeCachedAppList(_0x2756dd,_0x4af457,_0x3644ff){const _0x301858=a2_0x5cca,_0x193b78=getAppCacheFilePath(_0x2756dd,_0x4af457),_0x26c529=dirname(_0x193b78);!existsSync(_0x26c529)&&mkdirSync(_0x26c529,{'recursive':!![]});const _0xd2f606=_0x193b78+_0x301858(0xa7);try{writeFileSync(_0xd2f606,JSON['stringify'](_0x3644ff,null,0x2)+'\x0a',{'encoding':_0x301858(0x9b),'mode':0x180});try{renameSync(_0xd2f606,_0x193b78);}catch(_0x2aeffa){if(_0x2aeffa[_0x301858(0x97)]===_0x301858(0xab)||_0x2aeffa[_0x301858(0x97)]===_0x301858(0xa6)||_0x2aeffa[_0x301858(0x97)]===_0x301858(0x96)){writeFileSync(_0x193b78,JSON[_0x301858(0x91)](_0x3644ff,null,0x2)+'\x0a',{'encoding':_0x301858(0x9b)});try{unlinkSync(_0xd2f606);}catch{}}else throw _0x2aeffa;}}catch(_0x560e9a){try{unlinkSync(_0xd2f606);}catch{}throw _0x560e9a;}return _0x193b78;}function a2_0x4047(){const _0x1f92c5=['utf8','items','3884006ZjSONa','hex','trim','1281190ayAqwJ','2989215aaeapf','1173066QDIgym','digest','update','find','EXDEV','.tmp','isArray','43482501UlmmLQ','slice','EPERM','my-apps.json','ak_','stringify','25ARbxwE','2DjOckF','parse','3147620qyJVvz','EACCES','code','unknown','9905936vhhNTQ','appName'];a2_0x4047=function(){return _0x1f92c5;};return a2_0x4047();}export function resolveCachedAppCode(_0x4051ff,_0x3f1099,_0x434cdc){const _0x49635d=a2_0x5cca;if(!_0x4051ff)return undefined;const _0x24cabb=readCachedAppList(_0x3f1099,_0x434cdc),_0x1dc96e=_0x24cabb?.[_0x49635d(0x9c)][_0x49635d(0xa5)](_0x1f160a=>_0x1f160a[_0x49635d(0x9a)]===_0x4051ff&&isRuntimeAccessibleApp(_0x1f160a));return _0x1dc96e?.['appCode']?.[_0x49635d(0x9f)]()||undefined;}
1
+ (function(_0x3db07e,_0xeb1300){const _0x38f357=a2_0x3376,_0x54b24e=_0x3db07e();while(!![]){try{const _0x1d0862=-parseInt(_0x38f357(0x86))/0x1+parseInt(_0x38f357(0x9d))/0x2+parseInt(_0x38f357(0x84))/0x3+-parseInt(_0x38f357(0x81))/0x4+parseInt(_0x38f357(0x99))/0x5*(parseInt(_0x38f357(0x98))/0x6)+parseInt(_0x38f357(0x8c))/0x7*(-parseInt(_0x38f357(0x97))/0x8)+-parseInt(_0x38f357(0x9a))/0x9*(-parseInt(_0x38f357(0x83))/0xa);if(_0x1d0862===_0xeb1300)break;else _0x54b24e['push'](_0x54b24e['shift']());}catch(_0x1de5d6){_0x54b24e['push'](_0x54b24e['shift']());}}}(a2_0xade2,0x5ebe3));import{createHash}from'node:crypto';import{existsSync,mkdirSync,readFileSync,renameSync,unlinkSync,writeFileSync}from'node:fs';function a2_0xade2(){const _0x23957b=['EPERM','hex','utf8','update','EXDEV','trim','code','ak_','appCode','582856mUTtgu','6BnPUnD','766975DmbGOz','5213547BlRhlV','appName','slice','78484WRFpnQ','2852472AXmkFO','cache','20ZhspmP','2191698chnNpj','items','397728AzQiuw','unknown','sha256','stringify','isArray','.tmp','56QNVckZ','EACCES'];a2_0xade2=function(){return _0x23957b;};return a2_0xade2();}import{homedir}from'node:os';import{dirname,resolve}from'node:path';import{PRODUCT_CONFIG}from'../../constant/product.js';import{isRuntimeAccessibleApp}from'../../commands/app/eligibility.js';export function fingerprintAccessKey(_0xde1daf){const _0x30f7d7=a2_0x3376,_0x1184a1=_0xde1daf[_0x30f7d7(0x93)](),_0x1e4e37=_0x1184a1[_0x30f7d7(0x9c)](-0x6)||_0x30f7d7(0x87),_0x2bda83=createHash(_0x30f7d7(0x88))[_0x30f7d7(0x91)](_0x1184a1)['digest'](_0x30f7d7(0x8f))['slice'](0x0,0xc);return _0x30f7d7(0x95)+_0x1e4e37+'_'+_0x2bda83;}function a2_0x3376(_0x37598b,_0x29af2f){_0x37598b=_0x37598b-0x81;const _0xade267=a2_0xade2();let _0x3376da=_0xade267[_0x37598b];return _0x3376da;}export function getAppCacheFilePath(_0x1e4854,_0x18bde7){const _0x293dc3=a2_0x3376;return resolve(homedir(),PRODUCT_CONFIG['homeDirName'],_0x293dc3(0x82),_0x1e4854,fingerprintAccessKey(_0x18bde7),'my-apps.json');}export function readCachedAppList(_0x45a147,_0x5ac949){const _0xbbe165=a2_0x3376;if(!_0x5ac949?.[_0xbbe165(0x93)]())return null;const _0x2d2bb9=getAppCacheFilePath(_0x45a147,_0x5ac949);if(!existsSync(_0x2d2bb9))return null;try{const _0xff35f1=readFileSync(_0x2d2bb9,_0xbbe165(0x90));if(!_0xff35f1[_0xbbe165(0x93)]())return null;const _0x3c08a4=JSON['parse'](_0xff35f1);if(!Array[_0xbbe165(0x8a)](_0x3c08a4[_0xbbe165(0x85)]))return null;return _0x3c08a4;}catch{return null;}}export function writeCachedAppList(_0x1f64f6,_0x189655,_0x549e41){const _0x3c104e=a2_0x3376,_0x47b5cc=getAppCacheFilePath(_0x1f64f6,_0x189655),_0x332e76=dirname(_0x47b5cc);!existsSync(_0x332e76)&&mkdirSync(_0x332e76,{'recursive':!![]});const _0x477516=_0x47b5cc+_0x3c104e(0x8b);try{writeFileSync(_0x477516,JSON[_0x3c104e(0x89)](_0x549e41,null,0x2)+'\x0a',{'encoding':_0x3c104e(0x90),'mode':0x180});try{renameSync(_0x477516,_0x47b5cc);}catch(_0x435e48){if(_0x435e48[_0x3c104e(0x94)]===_0x3c104e(0x8e)||_0x435e48[_0x3c104e(0x94)]===_0x3c104e(0x92)||_0x435e48[_0x3c104e(0x94)]===_0x3c104e(0x8d)){writeFileSync(_0x47b5cc,JSON[_0x3c104e(0x89)](_0x549e41,null,0x2)+'\x0a',{'encoding':'utf8'});try{unlinkSync(_0x477516);}catch{}}else throw _0x435e48;}}catch(_0x20e464){try{unlinkSync(_0x477516);}catch{}throw _0x20e464;}return _0x47b5cc;}export function resolveCachedAppCode(_0x93b548,_0x7f2436,_0x120745){const _0x11b1e1=a2_0x3376;if(!_0x93b548)return undefined;const _0x46c5c3=readCachedAppList(_0x7f2436,_0x120745),_0x2fb19a=_0x46c5c3?.['items']['find'](_0x4c8925=>_0x4c8925[_0x11b1e1(0x9b)]===_0x93b548&&isRuntimeAccessibleApp(_0x4c8925));return _0x2fb19a?.[_0x11b1e1(0x96)]?.[_0x11b1e1(0x93)]()||undefined;}
@@ -1 +1 @@
1
- const a3_0xd9389e=a3_0x34c8;(function(_0x4b40ab,_0x58a850){const _0xc7e4ef=a3_0x34c8,_0x57b259=_0x4b40ab();while(!![]){try{const _0x25c9fa=-parseInt(_0xc7e4ef(0x99))/0x1*(-parseInt(_0xc7e4ef(0x8d))/0x2)+parseInt(_0xc7e4ef(0xc9))/0x3+parseInt(_0xc7e4ef(0x7e))/0x4*(-parseInt(_0xc7e4ef(0xd3))/0x5)+-parseInt(_0xc7e4ef(0x96))/0x6*(-parseInt(_0xc7e4ef(0x82))/0x7)+parseInt(_0xc7e4ef(0xc3))/0x8*(parseInt(_0xc7e4ef(0x9e))/0x9)+-parseInt(_0xc7e4ef(0xa4))/0xa*(parseInt(_0xc7e4ef(0x95))/0xb)+parseInt(_0xc7e4ef(0xb8))/0xc*(parseInt(_0xc7e4ef(0xac))/0xd);if(_0x25c9fa===_0x58a850)break;else _0x57b259['push'](_0x57b259['shift']());}catch(_0x1b4e09){_0x57b259['push'](_0x57b259['shift']());}}}(a3_0x11a3,0x40b1a));import{CliErrors}from'../../errors.js';import{initCreateFlagDefs,initImportFlagDefs,runInit,runInitImport}from'../../commands/init.js';import{getEnv,RUNTIME_ENV_VALUES}from'../../constant/env.js';import{buildAppProfileListFields}from'../../config/schema.js';import{CLI_BIN_NAME,readConfig,writeConfig,scopeLabel,enrichAppListItemsWithMergedSelection}from'../../commands/app/shared.js';import{resolveConfigScope,toScopeFlags}from'../../commands/common/config-policy.js';function a3_0x11a3(){const _0x5b44cc=['Use\x20global\x20config\x20scope','find','trim','12028YHPusP','Filter\x20by\x20environment\x20(default:\x20current\x20env)','App\x20\x22','map','7YUPWQk','../../context.js','Default\x20app\x20candidate\x20set\x20to\x20\x22','local','globalPath','pull','Include\x20unpublished\x20apps\x20for\x20diagnostics','appName','isArray','bool','\x20workspace\x20use\x20--app\x20<name>\x20[--env\x20daily]','274jIFeOJ','Usage:\x20','Deprecated:\x20use\x20workspace\x20init\x20to\x20bind\x20the\x20current\x20directory\x20to\x20an\x20app','Use\x20`','type','production','app','config','596387YNjHAZ','1806942qWWPMk','appCode','.appcode\x20to\x20.lovrabet.json.','1613AConml','envName','../../commands/app/remote-source.js','mergedCli','No\x20cached\x20apps\x20found.','12321LVRnGp','\x20cached\x20app(s)\x20for\x20env=\x22','appPublishStatus','str','isCurrent','Missing\x20app\x20name.','60Xashny','Refresh\x20the\x20local\x20app\x20cache\x20from\x20the\x20platform','warn','write','env','import','List\x20apps\x20available\x20to\x20the\x20current\x20access\x20key','nonInteractive','8086gzTBVK','boolean','enableI18n','project-default','Deprecated:\x20use\x20workspace\x20use\x20to\x20bind\x20the\x20current\x20directory\x20to\x20an\x20app','appcode','Remote\x20app\x20name\x20to\x20activate','name','init','string','\x20app\x20list`\x20to\x20discover\x20remote\x20apps,\x20or\x20add\x20apps.','filter','1116qvwcYn','length','read','no-cache','\x20app\x20use\x20<name>\x20[--global]','Refreshed\x20app\x20cache\x20with\x20','Read\x20app\x20list\x20from\x20local\x20cache\x20only','validation','include-unpublished','appOwnerName','\x20is\x20deprecated.\x20Use\x20`','848kuLARe','fetchedAt','\x22\x20not\x20found.','source','Force\x20remote\x20fetch\x20and\x20refresh\x20local\x20cache','cachePath','290187ncPLoL','Import\x20the\x20default\x20app\x20selection\x20from\x20a\x20.rabetbase.json\x20file','use','from','../../commands/app/cache.js','\x20app(s)\x20for\x20env=\x22','push','items','\x20workspace\x20init\x20--appcode\x20<code>\x20[--env\x20daily]','remote','385vtwgQs','No\x20apps\x20found\x20on\x20the\x20platform.','args','i18nInfo','accessKey','cache','raw','Target\x20environment\x20(default:\x20current\x20env)','`\x20instead.','global'];a3_0x11a3=function(){return _0x5b44cc;};return a3_0x11a3();}import{filterRuntimeAccessibleApps,findAppByCode,isRuntimeAccessibleApp,runtimeInaccessibleAppError}from'../../commands/app/eligibility.js';const GLOBAL_FLAG={'name':a3_0xd9389e(0x7a),'type':'boolean','description':a3_0xd9389e(0x7b),'default':![]};function collectFlags(_0x180393,_0x4abfaa){const _0x361b7a=a3_0xd9389e,_0x331641={};for(const _0x3e9b56 of _0x4abfaa){const _0x5d409b=_0x3e9b56[_0x361b7a(0x91)]===_0x361b7a(0xad)?_0x180393[_0x361b7a(0x8b)](_0x3e9b56['name']):_0x180393[_0x361b7a(0xa1)](_0x3e9b56[_0x361b7a(0xb3)]);if(_0x5d409b!==''&&_0x5d409b!==![])_0x331641[_0x3e9b56['name']]=_0x5d409b;}if(_0x180393[_0x361b7a(0xab)])_0x331641[_0x361b7a(0xab)]=!![];return _0x331641;}function normalizeLanguages(_0x8779a6){const _0x526b37=a3_0xd9389e;if(!Array[_0x526b37(0x8a)](_0x8779a6))return[];return _0x8779a6[_0x526b37(0xb7)](_0x395ea9=>typeof _0x395ea9===_0x526b37(0xb5))[_0x526b37(0x81)](_0x58690f=>_0x58690f[_0x526b37(0x7d)]())[_0x526b37(0xb7)](Boolean);}function buildRemoteAppI18nFields(_0x531943){const _0x51b545=a3_0xd9389e,_0x57ffb2=normalizeLanguages(_0x531943[_0x51b545(0xd6)]?.['langs']);return{'enableI18n':typeof _0x531943[_0x51b545(0xae)]===_0x51b545(0xad)?_0x531943[_0x51b545(0xae)]:null,'languages':_0x57ffb2,'i18nInfo':_0x531943[_0x51b545(0xd6)]?{..._0x531943['i18nInfo'],'langs':_0x57ffb2['length']?_0x57ffb2:null}:null};}const initDef={'service':a3_0xd9389e(0x93),'command':a3_0xd9389e(0xb4),'description':a3_0xd9389e(0x8f),'risk':a3_0xd9389e(0xa7),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initCreateFlagDefs,async 'execute'(_0x28c40e){const _0x136f6e=a3_0xd9389e;return warnDeprecatedAppCommand('init',CLI_BIN_NAME+_0x136f6e(0xd1)),await runInit(collectFlags(_0x28c40e,initCreateFlagDefs)),{'ok':!![]};}},listDef={'service':'app','command':'list','description':a3_0xd9389e(0xaa),'risk':a3_0xd9389e(0xba),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':!![],'flags':[{'name':a3_0xd9389e(0xa8),'type':'string','description':a3_0xd9389e(0x7f),'enum':[...RUNTIME_ENV_VALUES]},{'name':a3_0xd9389e(0x85),'type':a3_0xd9389e(0xad),'description':a3_0xd9389e(0xbe),'default':![]},{'name':'no-cache','type':'boolean','description':'Force\x20remote\x20fetch\x20and\x20refresh\x20local\x20cache','default':![]},{'name':'include-unpublished','type':a3_0xd9389e(0xad),'description':a3_0xd9389e(0x88),'default':![]}],async 'execute'(_0x318c33){const _0x548421=a3_0xd9389e,_0x5dab80=_0x318c33[_0x548421(0xa1)](_0x548421(0xa8))||_0x318c33[_0x548421(0x9a)]||getEnv()||'production',_0x46b027=_0x318c33[_0x548421(0x8b)](_0x548421(0x85)),_0x5d8a09=_0x318c33['bool'](_0x548421(0xbb)),_0x2e4e70=_0x318c33[_0x548421(0x8b)](_0x548421(0xc0)),{readRawConfigWithLayers:_0x3f64ce,resolveDefaultAppSource:_0x481cc2,getLocalAppAliases:_0xfa11ff}=await import(_0x548421(0x83)),{getRemoteAppList:_0x4d8157}=await import('../../commands/app/remote-source.js'),{config:_0x2d1045,layers:_0xea3a0c}=_0x3f64ce(),_0xc62d52=_0x481cc2(_0xea3a0c),{defaultApp:_0x55a2c5}=_0x2d1045,_0x2df3eb=await _0x4d8157({'env':_0x5dab80,'accessKey':_0x318c33['accessKey'],'localOnly':_0x46b027,'noCache':_0x5d8a09}),_0xe368b6=_0x2e4e70?_0x2df3eb['items']:filterRuntimeAccessibleApps(_0x2df3eb[_0x548421(0xd0)]),_0x4b14d0=_0x2df3eb[_0x548421(0xd0)][_0x548421(0xb9)]-_0xe368b6[_0x548421(0xb9)],_0xa08ed3=_0xe368b6[_0x548421(0x81)](_0x202862=>{const _0x10bd59=_0x548421;return{'name':_0x202862['appName'],'appcode':_0x202862[_0x10bd59(0x97)],'named':!![],'definedIn':_0x10bd59(0xd2),'isDefault':_0x202862['appName']===_0x55a2c5,...buildAppProfileListFields(_0x5dab80),...buildRemoteAppI18nFields(_0x202862),'source':_0x2df3eb['source'],'owner':_0x202862[_0x10bd59(0xc1)]??null,'status':_0x202862[_0x10bd59(0xa0)]??null,'cachedAt':_0x2df3eb['fetchedAt']};}),_0x5c10b2=_0xfa11ff(_0x2d1045);let _0x23a816=0x0;for(const [_0x3b314a,_0x313e97]of Object['entries'](_0x5c10b2)){const _0x294483=typeof _0x313e97[_0x548421(0xb1)]===_0x548421(0xb5)?_0x313e97[_0x548421(0xb1)][_0x548421(0x7d)]():'';if(!_0x294483)continue;const _0x765974=findAppByCode(_0x2df3eb[_0x548421(0xd0)],_0x294483);if(!_0x2e4e70&&_0x765974&&!isRuntimeAccessibleApp(_0x765974))continue;_0x23a816+=0x1,_0xa08ed3[_0x548421(0xcf)]({'name':_0x3b314a,'appcode':_0x294483,'named':!![],'definedIn':_0x548421(0x85),'isDefault':_0x3b314a===_0x55a2c5,...buildAppProfileListFields(_0x5dab80),'source':_0x548421(0x94),'owner':null,'status':null,'cachedAt':null});}enrichAppListItemsWithMergedSelection(_0xa08ed3,_0x318c33[_0x548421(0x9c)]);const _0x3be932=_0xa08ed3['find'](_0x327754=>_0x327754[_0x548421(0xa2)]===!![]),_0x4be74d=_0x55a2c5??_0x3be932?.['name']??null,_0x1eae9b={'env':_0x5dab80,'source':_0x2df3eb['source'],'fetchedAt':_0x2df3eb['fetchedAt'],'cachePath':_0x2df3eb[_0x548421(0xc8)],'globalPath':_0xea3a0c[_0x548421(0x86)]??null,'projectPath':_0xea3a0c['projectPath']??null,'defaultApp':_0x4be74d,'defaultAppSource':_0x55a2c5!=null?_0xc62d52:null,'localAliasCount':_0x23a816,'remoteTotal':_0x2df3eb[_0x548421(0xd0)]['length'],'hiddenUnpublishedCount':_0x4b14d0,'includeUnpublished':_0x2e4e70};if(_0xa08ed3[_0x548421(0xb9)]===0x0)return{'ok':!![],'data':{'items':_0xa08ed3,'meta':_0x1eae9b},'message':_0x2df3eb[_0x548421(0xc6)]===_0x548421(0x76)?_0x548421(0x9d):_0x548421(0xd4)};return{'ok':!![],'data':{'items':_0xa08ed3,'meta':_0x1eae9b}};}},pullDef={'service':'app','command':a3_0xd9389e(0x87),'description':a3_0xd9389e(0xa5),'risk':a3_0xd9389e(0xa7),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a3_0xd9389e(0xa8),'type':a3_0xd9389e(0xb5),'description':a3_0xd9389e(0x78),'enum':[...RUNTIME_ENV_VALUES]},{'name':'local','type':a3_0xd9389e(0xad),'description':'Read\x20from\x20local\x20cache\x20only','default':![]},{'name':a3_0xd9389e(0xbb),'type':a3_0xd9389e(0xad),'description':a3_0xd9389e(0xc7),'default':![]}],async 'execute'(_0x41c8f0){const _0x4154dc=a3_0xd9389e,_0x1b144a=_0x41c8f0[_0x4154dc(0xa1)](_0x4154dc(0xa8))||_0x41c8f0[_0x4154dc(0x9a)]||getEnv()||_0x4154dc(0x92),_0x57e4c1=_0x41c8f0['bool'](_0x4154dc(0x85)),_0x5072e3=_0x41c8f0[_0x4154dc(0x8b)](_0x4154dc(0xbb)),{getRemoteAppList:_0x5cb56d}=await import(_0x4154dc(0x9b)),_0x2dd0c6=await _0x5cb56d({'env':_0x1b144a,'accessKey':_0x41c8f0['accessKey'],'localOnly':_0x57e4c1,'noCache':_0x5072e3});return{'ok':!![],'data':{'total':_0x2dd0c6[_0x4154dc(0xd0)][_0x4154dc(0xb9)],'env':_0x1b144a,'source':_0x2dd0c6[_0x4154dc(0xc6)],'fetchedAt':_0x2dd0c6[_0x4154dc(0xc4)],'cachePath':_0x2dd0c6['cachePath']},'message':_0x2dd0c6[_0x4154dc(0xc6)]===_0x4154dc(0x76)?'Loaded\x20'+_0x2dd0c6[_0x4154dc(0xd0)][_0x4154dc(0xb9)]+_0x4154dc(0x9f)+_0x1b144a+'\x22.':_0x4154dc(0xbd)+_0x2dd0c6[_0x4154dc(0xd0)][_0x4154dc(0xb9)]+_0x4154dc(0xce)+_0x1b144a+'\x22.'};}},useDef={'service':a3_0xd9389e(0x93),'command':'use','description':a3_0xd9389e(0xb0),'risk':a3_0xd9389e(0xa7),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a3_0xd9389e(0xb3),'description':a3_0xd9389e(0xb2),'required':!![]}],'flags':[GLOBAL_FLAG],async 'validate'(_0x4b3713){const _0x351907=a3_0xd9389e;if(!_0x4b3713[_0x351907(0xd5)][0x0])throw CliErrors[_0x351907(0xbf)]('Missing\x20app\x20name.',_0x351907(0x8e)+CLI_BIN_NAME+_0x351907(0xbc));},async 'execute'(_0xe8564b){const _0x15f3c1=a3_0xd9389e;warnDeprecatedAppCommand(_0x15f3c1(0xcb),CLI_BIN_NAME+_0x15f3c1(0x8c));const _0x2e0d54=_0xe8564b[_0x15f3c1(0xd5)][0x0];if(!_0x2e0d54)throw CliErrors[_0x15f3c1(0xbf)](_0x15f3c1(0xa3),'Usage:\x20'+CLI_BIN_NAME+_0x15f3c1(0xbc));const {buildConfigFromFlags:_0x1978a4,resolveLocalAppAliasCode:_0x350ecb}=await import(_0x15f3c1(0x83)),{readCachedAppList:_0x2f060f}=await import(_0x15f3c1(0xcd)),_0x2329ae=_0xe8564b[_0x15f3c1(0xa1)](_0x15f3c1(0xa8)),_0x312c54=_0x1978a4(_0x2329ae?{'env':_0x2329ae}:{}),_0x3009a3=_0x2f060f(_0x312c54[_0x15f3c1(0xa8)],_0x312c54[_0x15f3c1(0xd7)]),_0x3f0e10=_0x3009a3?.[_0x15f3c1(0xd0)][_0x15f3c1(0x7c)](_0x36a883=>_0x36a883['appName']===_0x2e0d54),_0x490f82=_0x350ecb(_0x312c54[_0x15f3c1(0x77)]??{},_0x2e0d54);if(_0x3f0e10&&!isRuntimeAccessibleApp(_0x3f0e10))throw runtimeInaccessibleAppError(_0x3f0e10,'\x22'+_0x2e0d54+'\x22');if(_0x490f82){const _0x534e87=_0x3009a3?.['items'][_0x15f3c1(0x7c)](_0xe755aa=>_0xe755aa[_0x15f3c1(0x97)]?.[_0x15f3c1(0x7d)]()===_0x490f82);if(_0x534e87&&!isRuntimeAccessibleApp(_0x534e87))throw runtimeInaccessibleAppError(_0x534e87,'\x22'+_0x2e0d54+'\x22');}if(!_0x3f0e10&&!_0x490f82&&_0x312c54['defaultApp']!==_0x2e0d54){const _0x4e711d=[..._0x3009a3?.[_0x15f3c1(0xd0)]['map'](_0xbb9bb0=>_0xbb9bb0[_0x15f3c1(0x89)])??[]],_0x1f34fe=_0x4e711d['length']===0x0?_0x15f3c1(0x90)+CLI_BIN_NAME+_0x15f3c1(0xb6)+_0x2e0d54+_0x15f3c1(0x98):'Available\x20remote\x20apps:\x20'+Array[_0x15f3c1(0xcc)](new Set(_0x4e711d))['join'](',\x20')+'.\x20Local\x20aliases\x20can\x20be\x20added\x20under\x20apps.<alias>.appcode.';throw CliErrors['validation'](_0x15f3c1(0x80)+_0x2e0d54+_0x15f3c1(0xc5),_0x1f34fe);}const _0x568883=_0xe8564b['bool'](_0x15f3c1(0x7a));let _0x84ad91;if(_0x568883)_0x84ad91={'global':!![]};else{const {isInProject:_0x3ed71d}=await import(_0x15f3c1(0x83)),_0x1c8bd2=_0x3ed71d();_0x84ad91=toScopeFlags(resolveConfigScope({'explicitGlobal':![],'policy':_0x15f3c1(0xaf),'inProject':_0x1c8bd2}));}const _0x10bf73=readConfig(_0x84ad91);return _0x10bf73['defaultApp']=_0x2e0d54,writeConfig(_0x10bf73,_0x84ad91),{'ok':!![],'message':_0x15f3c1(0x84)+_0x2e0d54+'\x22'+scopeLabel(_0x84ad91)+'.'};}};function a3_0x34c8(_0x58ea13,_0x553204){_0x58ea13=_0x58ea13-0x76;const _0x11a3bd=a3_0x11a3();let _0x34c889=_0x11a3bd[_0x58ea13];return _0x34c889;}function warnDeprecatedAppCommand(_0x4b16c0,_0x315563){const _0x3f231f=a3_0xd9389e;console[_0x3f231f(0xa6)](CLI_BIN_NAME+'\x20app\x20'+_0x4b16c0+_0x3f231f(0xc2)+_0x315563+_0x3f231f(0x79));}const importDef={'service':a3_0xd9389e(0x93),'command':a3_0xd9389e(0xa9),'description':a3_0xd9389e(0xca),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initImportFlagDefs,async 'execute'(_0x5650b4){return await runInitImport(collectFlags(_0x5650b4,initImportFlagDefs)),{'ok':!![]};}};export const appDefinitions=[initDef,listDef,pullDef,useDef,importDef];
1
+ const a3_0x26f05d=a3_0x5cdb;(function(_0x4d3ff7,_0x4f0807){const _0x1755a9=a3_0x5cdb,_0x3879eb=_0x4d3ff7();while(!![]){try{const _0x2f4451=-parseInt(_0x1755a9(0x1e6))/0x1+parseInt(_0x1755a9(0x22c))/0x2+parseInt(_0x1755a9(0x221))/0x3+parseInt(_0x1755a9(0x21b))/0x4*(-parseInt(_0x1755a9(0x1fb))/0x5)+-parseInt(_0x1755a9(0x204))/0x6+parseInt(_0x1755a9(0x215))/0x7+-parseInt(_0x1755a9(0x1e2))/0x8*(parseInt(_0x1755a9(0x232))/0x9);if(_0x2f4451===_0x4f0807)break;else _0x3879eb['push'](_0x3879eb['shift']());}catch(_0x4acdc0){_0x3879eb['push'](_0x3879eb['shift']());}}}(a3_0x571c,0x57770));import{CliErrors}from'../../errors.js';import{initCreateFlagDefs,initImportFlagDefs,runInit,runInitImport}from'../../commands/init.js';import{getEnv,RUNTIME_ENV_VALUES}from'../../constant/env.js';import{buildAppProfileListFields}from'../../config/schema.js';import{CLI_BIN_NAME,readConfig,writeConfig,scopeLabel,enrichAppListItemsWithMergedSelection}from'../../commands/app/shared.js';function a3_0x571c(){const _0x4ccc6f=['\x20workspace\x20use\x20--app\x20<name>\x20[--env\x20daily]','global','bool','../../commands/app/cache.js','1886802NYUnEc','Force\x20remote\x20fetch\x20and\x20refresh\x20local\x20cache','appcode','app','Deprecated:\x20use\x20workspace\x20init\x20to\x20bind\x20the\x20current\x20directory\x20to\x20an\x20app','Default\x20app\x20candidate\x20set\x20to\x20\x22','\x20app\x20','accessKey','no-cache','\x20workspace\x20init\x20--appcode\x20<code>\x20[--env\x20daily]','source','\x20cached\x20app(s)\x20for\x20env=\x22','Missing\x20app\x20name.','../../context.js','map','join','Import\x20the\x20default\x20app\x20selection\x20from\x20a\x20.rabetbase.json\x20file','2681238uSvTrW','Read\x20app\x20list\x20from\x20local\x20cache\x20only','length','appPublishStatus','write','Deprecated:\x20use\x20workspace\x20use\x20to\x20bind\x20the\x20current\x20directory\x20to\x20an\x20app','2092864ICNBER','No\x20cached\x20apps\x20found.','nonInteractive','\x20app\x20list`\x20to\x20discover\x20remote\x20apps,\x20or\x20add\x20apps.','string','defaultApp','1242321oDPDMY','init','cache','import','Usage:\x20','langs','local','config','env','args','appOwnerName','1352204NZWlBE','../../commands/app/remote-source.js','name','appName','.\x20Local\x20aliases\x20can\x20be\x20added\x20under\x20apps.<alias>.appcode.','push','118980CtTaKA','isArray','cachePath','production','find','128YLUwQn','List\x20apps\x20available\x20to\x20the\x20current\x20access\x20key','use','.appcode\x20to\x20.lovrabet.json.','65784IoetzT','i18nInfo','\x20app\x20use\x20<name>\x20[--global]','Loaded\x20','Refresh\x20the\x20local\x20app\x20cache\x20from\x20the\x20platform','project-default','str','Available\x20remote\x20apps:\x20','projectPath','Use\x20`','App\x20\x22','raw','mergedCli','Use\x20global\x20config\x20scope','Include\x20unpublished\x20apps\x20for\x20diagnostics','validation','boolean','Target\x20environment\x20(default:\x20current\x20env)','enableI18n','remote','Read\x20from\x20local\x20cache\x20only','5NzEclP','\x22\x20not\x20found.','include-unpublished','items','trim'];a3_0x571c=function(){return _0x4ccc6f;};return a3_0x571c();}import{resolveConfigScope,toScopeFlags}from'../../commands/common/config-policy.js';import{filterRuntimeAccessibleApps,findAppByCode,isRuntimeAccessibleApp,runtimeInaccessibleAppError}from'../../commands/app/eligibility.js';const GLOBAL_FLAG={'name':a3_0x26f05d(0x201),'type':a3_0x26f05d(0x1f6),'description':a3_0x26f05d(0x1f3),'default':![]};function collectFlags(_0xafd8d,_0xcc012c){const _0x2d39f3=a3_0x26f05d,_0x6be71f={};for(const _0x1dd9d8 of _0xcc012c){const _0x4f99ba=_0x1dd9d8['type']===_0x2d39f3(0x1f6)?_0xafd8d[_0x2d39f3(0x202)](_0x1dd9d8[_0x2d39f3(0x22e)]):_0xafd8d[_0x2d39f3(0x1ec)](_0x1dd9d8[_0x2d39f3(0x22e)]);if(_0x4f99ba!==''&&_0x4f99ba!==![])_0x6be71f[_0x1dd9d8[_0x2d39f3(0x22e)]]=_0x4f99ba;}if(_0xafd8d[_0x2d39f3(0x21d)])_0x6be71f['nonInteractive']=!![];return _0x6be71f;}function normalizeLanguages(_0x546b4d){const _0xfa2e09=a3_0x26f05d;if(!Array[_0xfa2e09(0x233)](_0x546b4d))return[];return _0x546b4d['filter'](_0x100e18=>typeof _0x100e18===_0xfa2e09(0x21f))[_0xfa2e09(0x212)](_0x5041a4=>_0x5041a4[_0xfa2e09(0x1ff)]())['filter'](Boolean);}function a3_0x5cdb(_0x40dc4a,_0x50f069){_0x40dc4a=_0x40dc4a-0x1e0;const _0x571c51=a3_0x571c();let _0x5cdb07=_0x571c51[_0x40dc4a];return _0x5cdb07;}function buildRemoteAppI18nFields(_0x53f46c){const _0x383c0f=a3_0x26f05d,_0x44b83e=normalizeLanguages(_0x53f46c[_0x383c0f(0x1e7)]?.[_0x383c0f(0x226)]);return{'enableI18n':typeof _0x53f46c[_0x383c0f(0x1f8)]===_0x383c0f(0x1f6)?_0x53f46c[_0x383c0f(0x1f8)]:null,'languages':_0x44b83e,'i18nInfo':_0x53f46c[_0x383c0f(0x1e7)]?{..._0x53f46c['i18nInfo'],'langs':_0x44b83e['length']?_0x44b83e:null}:null};}const initDef={'service':a3_0x26f05d(0x207),'command':a3_0x26f05d(0x222),'description':a3_0x26f05d(0x208),'risk':a3_0x26f05d(0x219),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initCreateFlagDefs,async 'execute'(_0x41c90d){const _0x19c90c=a3_0x26f05d;return warnDeprecatedAppCommand(_0x19c90c(0x222),CLI_BIN_NAME+_0x19c90c(0x20d)),await runInit(collectFlags(_0x41c90d,initCreateFlagDefs)),{'ok':!![]};}},listDef={'service':a3_0x26f05d(0x207),'command':'list','description':a3_0x26f05d(0x1e3),'risk':'read','requiresAuth':!![],'requiresAppCode':![],'hasFormat':!![],'flags':[{'name':a3_0x26f05d(0x229),'type':a3_0x26f05d(0x21f),'description':'Filter\x20by\x20environment\x20(default:\x20current\x20env)','enum':[...RUNTIME_ENV_VALUES]},{'name':a3_0x26f05d(0x227),'type':'boolean','description':a3_0x26f05d(0x216),'default':![]},{'name':a3_0x26f05d(0x20c),'type':a3_0x26f05d(0x1f6),'description':a3_0x26f05d(0x205),'default':![]},{'name':a3_0x26f05d(0x1fd),'type':a3_0x26f05d(0x1f6),'description':a3_0x26f05d(0x1f4),'default':![]}],async 'execute'(_0x1d8dfd){const _0x35d26c=a3_0x26f05d,_0xa7de3a=_0x1d8dfd['str']('env')||_0x1d8dfd['envName']||getEnv()||_0x35d26c(0x1e0),_0x5a0968=_0x1d8dfd[_0x35d26c(0x202)](_0x35d26c(0x227)),_0x42aec4=_0x1d8dfd['bool']('no-cache'),_0x48e756=_0x1d8dfd[_0x35d26c(0x202)](_0x35d26c(0x1fd)),{readRawConfigWithLayers:_0x22ca45,resolveDefaultAppSource:_0x1a051c,getLocalAppAliases:_0x257b6f}=await import(_0x35d26c(0x211)),{getRemoteAppList:_0x614180}=await import(_0x35d26c(0x22d)),{config:_0x176a81,layers:_0x15b20d}=_0x22ca45(),_0x18812b=_0x1a051c(_0x15b20d),{defaultApp:_0x16cb79}=_0x176a81,_0x426dca=await _0x614180({'env':_0xa7de3a,'accessKey':_0x1d8dfd[_0x35d26c(0x20b)],'localOnly':_0x5a0968,'noCache':_0x42aec4}),_0x5b785e=_0x48e756?_0x426dca[_0x35d26c(0x1fe)]:filterRuntimeAccessibleApps(_0x426dca[_0x35d26c(0x1fe)]),_0x568412=_0x426dca[_0x35d26c(0x1fe)][_0x35d26c(0x217)]-_0x5b785e[_0x35d26c(0x217)],_0x202967=_0x5b785e[_0x35d26c(0x212)](_0x7c2efb=>{const _0x3d9f9d=_0x35d26c;return{'name':_0x7c2efb[_0x3d9f9d(0x22f)],'appcode':_0x7c2efb['appCode'],'named':!![],'definedIn':_0x3d9f9d(0x1f9),'isDefault':_0x7c2efb[_0x3d9f9d(0x22f)]===_0x16cb79,...buildAppProfileListFields(_0xa7de3a),...buildRemoteAppI18nFields(_0x7c2efb),'source':_0x426dca[_0x3d9f9d(0x20e)],'owner':_0x7c2efb[_0x3d9f9d(0x22b)]??null,'status':_0x7c2efb[_0x3d9f9d(0x218)]??null,'cachedAt':_0x426dca['fetchedAt']};}),_0x13f9c1=_0x257b6f(_0x176a81);let _0x5a0404=0x0;for(const [_0x328051,_0x7e95e6]of Object['entries'](_0x13f9c1)){const _0x1867eb=typeof _0x7e95e6[_0x35d26c(0x206)]===_0x35d26c(0x21f)?_0x7e95e6['appcode']['trim']():'';if(!_0x1867eb)continue;const _0x5583ec=findAppByCode(_0x426dca[_0x35d26c(0x1fe)],_0x1867eb);if(!_0x48e756&&_0x5583ec&&!isRuntimeAccessibleApp(_0x5583ec))continue;_0x5a0404+=0x1,_0x202967[_0x35d26c(0x231)]({'name':_0x328051,'appcode':_0x1867eb,'named':!![],'definedIn':_0x35d26c(0x227),'isDefault':_0x328051===_0x16cb79,...buildAppProfileListFields(_0xa7de3a),'source':_0x35d26c(0x228),'owner':null,'status':null,'cachedAt':null});}enrichAppListItemsWithMergedSelection(_0x202967,_0x1d8dfd[_0x35d26c(0x1f2)]);const _0x42894a=_0x202967[_0x35d26c(0x1e1)](_0xbe3916=>_0xbe3916['isCurrent']===!![]),_0x106938=_0x16cb79??_0x42894a?.[_0x35d26c(0x22e)]??null,_0x8bf365={'env':_0xa7de3a,'source':_0x426dca[_0x35d26c(0x20e)],'fetchedAt':_0x426dca['fetchedAt'],'cachePath':_0x426dca[_0x35d26c(0x234)],'globalPath':_0x15b20d['globalPath']??null,'projectPath':_0x15b20d[_0x35d26c(0x1ee)]??null,'defaultApp':_0x106938,'defaultAppSource':_0x16cb79!=null?_0x18812b:null,'localAliasCount':_0x5a0404,'remoteTotal':_0x426dca['items']['length'],'hiddenUnpublishedCount':_0x568412,'includeUnpublished':_0x48e756};if(_0x202967['length']===0x0)return{'ok':!![],'data':{'items':_0x202967,'meta':_0x8bf365},'message':_0x426dca[_0x35d26c(0x20e)]===_0x35d26c(0x223)?_0x35d26c(0x21c):'No\x20apps\x20found\x20on\x20the\x20platform.'};return{'ok':!![],'data':{'items':_0x202967,'meta':_0x8bf365}};}},pullDef={'service':'app','command':'pull','description':a3_0x26f05d(0x1ea),'risk':a3_0x26f05d(0x219),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a3_0x26f05d(0x229),'type':a3_0x26f05d(0x21f),'description':a3_0x26f05d(0x1f7),'enum':[...RUNTIME_ENV_VALUES]},{'name':a3_0x26f05d(0x227),'type':a3_0x26f05d(0x1f6),'description':a3_0x26f05d(0x1fa),'default':![]},{'name':a3_0x26f05d(0x20c),'type':a3_0x26f05d(0x1f6),'description':a3_0x26f05d(0x205),'default':![]}],async 'execute'(_0x5ee8f1){const _0x3892c7=a3_0x26f05d,_0xc3366e=_0x5ee8f1[_0x3892c7(0x1ec)](_0x3892c7(0x229))||_0x5ee8f1['envName']||getEnv()||_0x3892c7(0x1e0),_0x4a74e3=_0x5ee8f1[_0x3892c7(0x202)](_0x3892c7(0x227)),_0x5b9fbf=_0x5ee8f1[_0x3892c7(0x202)]('no-cache'),{getRemoteAppList:_0x3ca946}=await import(_0x3892c7(0x22d)),_0x599e6e=await _0x3ca946({'env':_0xc3366e,'accessKey':_0x5ee8f1[_0x3892c7(0x20b)],'localOnly':_0x4a74e3,'noCache':_0x5b9fbf});return{'ok':!![],'data':{'total':_0x599e6e[_0x3892c7(0x1fe)][_0x3892c7(0x217)],'env':_0xc3366e,'source':_0x599e6e[_0x3892c7(0x20e)],'fetchedAt':_0x599e6e['fetchedAt'],'cachePath':_0x599e6e[_0x3892c7(0x234)]},'message':_0x599e6e['source']===_0x3892c7(0x223)?_0x3892c7(0x1e9)+_0x599e6e[_0x3892c7(0x1fe)][_0x3892c7(0x217)]+_0x3892c7(0x20f)+_0xc3366e+'\x22.':'Refreshed\x20app\x20cache\x20with\x20'+_0x599e6e[_0x3892c7(0x1fe)][_0x3892c7(0x217)]+'\x20app(s)\x20for\x20env=\x22'+_0xc3366e+'\x22.'};}},useDef={'service':'app','command':'use','description':a3_0x26f05d(0x21a),'risk':a3_0x26f05d(0x219),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a3_0x26f05d(0x22e),'description':'Remote\x20app\x20name\x20to\x20activate','required':!![]}],'flags':[GLOBAL_FLAG],async 'validate'(_0x31e31d){const _0x42d65d=a3_0x26f05d;if(!_0x31e31d['args'][0x0])throw CliErrors[_0x42d65d(0x1f5)](_0x42d65d(0x210),'Usage:\x20'+CLI_BIN_NAME+_0x42d65d(0x1e8));},async 'execute'(_0x2cecd2){const _0x2fba5f=a3_0x26f05d;warnDeprecatedAppCommand(_0x2fba5f(0x1e4),CLI_BIN_NAME+_0x2fba5f(0x200));const _0x10aabd=_0x2cecd2[_0x2fba5f(0x22a)][0x0];if(!_0x10aabd)throw CliErrors[_0x2fba5f(0x1f5)](_0x2fba5f(0x210),_0x2fba5f(0x225)+CLI_BIN_NAME+_0x2fba5f(0x1e8));const {buildConfigFromFlags:_0x2b514a,resolveLocalAppAliasCode:_0x56aec5}=await import(_0x2fba5f(0x211)),{readCachedAppList:_0x2b9e8e}=await import(_0x2fba5f(0x203)),_0x3806d9=_0x2cecd2[_0x2fba5f(0x1ec)]('env'),_0x5b86a5=_0x2b514a(_0x3806d9?{'env':_0x3806d9}:{}),_0x293d01=_0x2b9e8e(_0x5b86a5[_0x2fba5f(0x229)],_0x5b86a5[_0x2fba5f(0x20b)]),_0x350b4d=_0x293d01?.[_0x2fba5f(0x1fe)][_0x2fba5f(0x1e1)](_0x2384c8=>_0x2384c8['appName']===_0x10aabd),_0x521551=_0x56aec5(_0x5b86a5[_0x2fba5f(0x1f1)]??{},_0x10aabd);if(_0x350b4d&&!isRuntimeAccessibleApp(_0x350b4d))throw runtimeInaccessibleAppError(_0x350b4d,'\x22'+_0x10aabd+'\x22');if(_0x521551){const _0x498731=_0x293d01?.[_0x2fba5f(0x1fe)]['find'](_0x24f7d2=>_0x24f7d2['appCode']?.[_0x2fba5f(0x1ff)]()===_0x521551);if(_0x498731&&!isRuntimeAccessibleApp(_0x498731))throw runtimeInaccessibleAppError(_0x498731,'\x22'+_0x10aabd+'\x22');}if(!_0x350b4d&&!_0x521551&&_0x5b86a5['defaultApp']!==_0x10aabd){const _0x5a9c68=[..._0x293d01?.[_0x2fba5f(0x1fe)][_0x2fba5f(0x212)](_0x5dffa4=>_0x5dffa4[_0x2fba5f(0x22f)])??[]],_0x3040b1=_0x5a9c68[_0x2fba5f(0x217)]===0x0?_0x2fba5f(0x1ef)+CLI_BIN_NAME+_0x2fba5f(0x21e)+_0x10aabd+_0x2fba5f(0x1e5):_0x2fba5f(0x1ed)+Array['from'](new Set(_0x5a9c68))[_0x2fba5f(0x213)](',\x20')+_0x2fba5f(0x230);throw CliErrors['validation'](_0x2fba5f(0x1f0)+_0x10aabd+_0x2fba5f(0x1fc),_0x3040b1);}const _0x3d84ce=_0x2cecd2[_0x2fba5f(0x202)](_0x2fba5f(0x201));let _0x3fc99a;if(_0x3d84ce)_0x3fc99a={'global':!![]};else{const {isInProject:_0x3dbf84}=await import(_0x2fba5f(0x211)),_0x5e202e=_0x3dbf84();_0x3fc99a=toScopeFlags(resolveConfigScope({'explicitGlobal':![],'policy':_0x2fba5f(0x1eb),'inProject':_0x5e202e}));}const _0xda8a49=readConfig(_0x3fc99a);return _0xda8a49[_0x2fba5f(0x220)]=_0x10aabd,writeConfig(_0xda8a49,_0x3fc99a),{'ok':!![],'message':_0x2fba5f(0x209)+_0x10aabd+'\x22'+scopeLabel(_0x3fc99a)+'.'};}};function warnDeprecatedAppCommand(_0x2a0f7c,_0x37c7bb){const _0x251d9c=a3_0x26f05d;console['warn'](CLI_BIN_NAME+_0x251d9c(0x20a)+_0x2a0f7c+'\x20is\x20deprecated.\x20Use\x20`'+_0x37c7bb+'`\x20instead.');}const importDef={'service':a3_0x26f05d(0x207),'command':a3_0x26f05d(0x224),'description':a3_0x26f05d(0x214),'risk':a3_0x26f05d(0x219),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initImportFlagDefs,async 'execute'(_0x305789){return await runInitImport(collectFlags(_0x305789,initImportFlagDefs)),{'ok':!![]};}};export const appDefinitions=[initDef,listDef,pullDef,useDef,importDef];
@@ -1 +1 @@
1
- (function(_0x47cc4c,_0x3c3261){const _0x2e4621=a4_0x3668,_0x49d2a2=_0x47cc4c();while(!![]){try{const _0x273fff=parseInt(_0x2e4621(0x11e))/0x1+parseInt(_0x2e4621(0x10b))/0x2*(parseInt(_0x2e4621(0x113))/0x3)+-parseInt(_0x2e4621(0x117))/0x4+parseInt(_0x2e4621(0x119))/0x5+-parseInt(_0x2e4621(0x110))/0x6+parseInt(_0x2e4621(0x116))/0x7*(parseInt(_0x2e4621(0x118))/0x8)+parseInt(_0x2e4621(0x10f))/0x9*(-parseInt(_0x2e4621(0x10c))/0xa);if(_0x273fff===_0x3c3261)break;else _0x49d2a2['push'](_0x49d2a2['shift']());}catch(_0x5284a5){_0x49d2a2['push'](_0x49d2a2['shift']());}}}(a4_0x3819,0xd3776));import{CLI_BIN_NAME}from'../../constant/cli.js';import{RUNTIME_ACCESSIBLE_APP_STATUS}from'../../constant/app.js';import{CliErrors}from'../../errors.js';export function normalizeAppPublishStatus(_0x55468f){const _0x48de4c=a4_0x3668;if(typeof _0x55468f!==_0x48de4c(0x10a))return null;const _0x45f31a=_0x55468f[_0x48de4c(0x11c)]();return _0x45f31a?_0x45f31a[_0x48de4c(0x111)]():null;}function a4_0x3819(){const _0x425529=['\x20is\x20not\x20available\x20for\x20runtime\x20AI\x20access.','185119qVUslC','App\x20','UNKNOWN','appPublishStatus','string','290924ttlYhx','590SFAZfD','Current\x20status:\x20','filter','36279oDBeLP','7577376GpOhWN','toUpperCase','validation','15udHEgw','appName','appCode','35qnrehF','4808864VCweps','1840808kLCVcL','7530865PHopqL','find','.\x20Publish\x20the\x20app\x20before\x20using\x20','trim'];a4_0x3819=function(){return _0x425529;};return a4_0x3819();}export function isRuntimeAccessibleApp(_0x2cb4db){const _0x3bc687=a4_0x3668;return normalizeAppPublishStatus(_0x2cb4db[_0x3bc687(0x121)])===RUNTIME_ACCESSIBLE_APP_STATUS;}function a4_0x3668(_0x1f4f9e,_0x512c7d){_0x1f4f9e=_0x1f4f9e-0x10a;const _0x38192b=a4_0x3819();let _0x3668d1=_0x38192b[_0x1f4f9e];return _0x3668d1;}export function filterRuntimeAccessibleApps(_0xe71261){const _0x2a5053=a4_0x3668;return _0xe71261[_0x2a5053(0x10e)](isRuntimeAccessibleApp);}export function findAppByName(_0x492de8,_0x50f74d){const _0x5e7586=a4_0x3668;return _0x492de8['find'](_0x23078d=>_0x23078d[_0x5e7586(0x114)]===_0x50f74d);}export function findAppByCode(_0x5db910,_0x1d1d00){const _0x1d9373=a4_0x3668,_0x52eeda=_0x1d1d00[_0x1d9373(0x11c)]();if(!_0x52eeda)return undefined;return _0x5db910[_0x1d9373(0x11a)](_0x439c51=>_0x439c51[_0x1d9373(0x115)]?.[_0x1d9373(0x11c)]()===_0x52eeda);}export function runtimeInaccessibleAppError(_0x458e07,_0x4f6450){const _0x5acb65=a4_0x3668,_0x565d98=normalizeAppPublishStatus(_0x458e07[_0x5acb65(0x121)])??_0x5acb65(0x120);return CliErrors[_0x5acb65(0x112)](_0x5acb65(0x11f)+_0x4f6450+_0x5acb65(0x11d),_0x5acb65(0x10d)+_0x565d98+_0x5acb65(0x11b)+CLI_BIN_NAME+'\x20dataset/data/sql/bff\x20commands,\x20or\x20choose\x20a\x20published\x20app.');}
1
+ (function(_0x550f43,_0x1ce54c){const _0x67c074=a4_0x4f48,_0x551ad2=_0x550f43();while(!![]){try{const _0x5083a2=parseInt(_0x67c074(0x109))/0x1+parseInt(_0x67c074(0x113))/0x2*(-parseInt(_0x67c074(0x103))/0x3)+-parseInt(_0x67c074(0x112))/0x4*(-parseInt(_0x67c074(0x10d))/0x5)+parseInt(_0x67c074(0x10b))/0x6*(parseInt(_0x67c074(0x102))/0x7)+parseInt(_0x67c074(0x114))/0x8*(-parseInt(_0x67c074(0x106))/0x9)+parseInt(_0x67c074(0x118))/0xa*(parseInt(_0x67c074(0x10c))/0xb)+parseInt(_0x67c074(0x111))/0xc*(-parseInt(_0x67c074(0x104))/0xd);if(_0x5083a2===_0x1ce54c)break;else _0x551ad2['push'](_0x551ad2['shift']());}catch(_0x5d6348){_0x551ad2['push'](_0x551ad2['shift']());}}}(a4_0x3f82,0x30bd6));import{CLI_BIN_NAME}from'../../constant/cli.js';import{RUNTIME_ACCESSIBLE_APP_STATUS}from'../../constant/app.js';import{CliErrors}from'../../errors.js';export function normalizeAppPublishStatus(_0x368beb){const _0x1c416e=a4_0x4f48;if(typeof _0x368beb!==_0x1c416e(0x101))return null;const _0x5ac519=_0x368beb['trim']();return _0x5ac519?_0x5ac519[_0x1c416e(0x108)]():null;}export function isRuntimeAccessibleApp(_0xf7ef28){const _0x467961=a4_0x4f48;return normalizeAppPublishStatus(_0xf7ef28[_0x467961(0x107)])===RUNTIME_ACCESSIBLE_APP_STATUS;}function a4_0x3f82(){const _0x304036=['appPublishStatus','toUpperCase','13745phdQmb','find','36nKHEOr','120329RdCKNh','9545XnmOiy','\x20dataset/data/sql/bff\x20commands,\x20or\x20choose\x20a\x20published\x20app.','trim','filter','12qTFROh','4dvfuNd','382NNBaco','8ulWaPJ','appName','\x20is\x20not\x20available\x20for\x20runtime\x20AI\x20access.','validation','350XIkdmV','string','328013AaCkbN','2592MtKvUK','3768661aUgVoR','appCode','226026YuoeGh'];a4_0x3f82=function(){return _0x304036;};return a4_0x3f82();}export function filterRuntimeAccessibleApps(_0x21a154){const _0x1b9afa=a4_0x4f48;return _0x21a154[_0x1b9afa(0x110)](isRuntimeAccessibleApp);}export function findAppByName(_0x15ca39,_0x40203d){const _0x3a3cfb=a4_0x4f48;return _0x15ca39['find'](_0x4790bb=>_0x4790bb[_0x3a3cfb(0x115)]===_0x40203d);}export function findAppByCode(_0xe6e51,_0x33fc1c){const _0x135cb0=a4_0x4f48,_0x2002f4=_0x33fc1c[_0x135cb0(0x10f)]();if(!_0x2002f4)return undefined;return _0xe6e51[_0x135cb0(0x10a)](_0x284e94=>_0x284e94[_0x135cb0(0x105)]?.[_0x135cb0(0x10f)]()===_0x2002f4);}function a4_0x4f48(_0x2b6be1,_0x1dc803){_0x2b6be1=_0x2b6be1-0x101;const _0x3f8218=a4_0x3f82();let _0x4f48b5=_0x3f8218[_0x2b6be1];return _0x4f48b5;}export function runtimeInaccessibleAppError(_0x4cbfca,_0x4cce6e){const _0x5cece8=a4_0x4f48,_0x437fd6=normalizeAppPublishStatus(_0x4cbfca['appPublishStatus'])??'UNKNOWN';return CliErrors[_0x5cece8(0x117)]('App\x20'+_0x4cce6e+_0x5cece8(0x116),'Current\x20status:\x20'+_0x437fd6+'.\x20Publish\x20the\x20app\x20before\x20using\x20'+CLI_BIN_NAME+_0x5cece8(0x10e));}
@@ -1 +1 @@
1
- (function(_0x503c3f,_0x47afb5){const _0xdd5e24=a5_0x2e33,_0x5112e0=_0x503c3f();while(!![]){try{const _0x426384=parseInt(_0xdd5e24(0xdd))/0x1*(parseInt(_0xdd5e24(0xda))/0x2)+parseInt(_0xdd5e24(0xd5))/0x3*(parseInt(_0xdd5e24(0xdf))/0x4)+parseInt(_0xdd5e24(0xd4))/0x5*(parseInt(_0xdd5e24(0xdc))/0x6)+-parseInt(_0xdd5e24(0xd8))/0x7+parseInt(_0xdd5e24(0xd6))/0x8+parseInt(_0xdd5e24(0xe0))/0x9*(-parseInt(_0xdd5e24(0xd9))/0xa)+parseInt(_0xdd5e24(0xd7))/0xb;if(_0x426384===_0x47afb5)break;else _0x5112e0['push'](_0x5112e0['shift']());}catch(_0x30c78a){_0x5112e0['push'](_0x5112e0['shift']());}}}(a5_0x352a,0x70ec2));function a5_0x2e33(_0x25fb16,_0x1b8400){_0x25fb16=_0x25fb16-0xd2;const _0x352aa6=a5_0x352a();let _0x2e33b0=_0x352aa6[_0x25fb16];return _0x2e33b0;}import{fileURLToPath}from'url';import{dirname,join}from'path';function a5_0x352a(){const _0x322910=['802544AhToVH','10793893ELmOZT','6459845krXzQO','20MVXpIq','3436lwSKox','errorMsg','6lcVWgc','151tbbUpV','../../../mock/app-list.json','4276vpLLBK','3950469NBzwsl','utf-8','success','1185095gtgsym','1923vnQuRo'];a5_0x352a=function(){return _0x322910;};return a5_0x352a();}import{readFileSync}from'fs';const __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename);function loadMockAppList(){const _0x36ee35=a5_0x2e33,_0x10cc6a=join(__dirname,_0x36ee35(0xde)),_0x1adcbf=readFileSync(_0x10cc6a,_0x36ee35(0xd2));return JSON['parse'](_0x1adcbf);}let _cached=null;export function getMockAppList(){return!_cached&&(_cached=loadMockAppList()),_cached;}export function getMockRemoteAppItems(){const _0x3d23fc=a5_0x2e33,_0x2c5bbf=getMockAppList();if(!_0x2c5bbf[_0x3d23fc(0xd3)])throw new Error('Mock\x20API\x20error:\x20'+_0x2c5bbf[_0x3d23fc(0xdb)]+'\x20('+_0x2c5bbf['errorCode']+')');return _0x2c5bbf['data']['tableData'];}
1
+ (function(_0x488cce,_0x5962f7){const _0x445d1f=a5_0x5068,_0x365f4e=_0x488cce();while(!![]){try{const _0x164ab4=-parseInt(_0x445d1f(0x10a))/0x1*(parseInt(_0x445d1f(0x108))/0x2)+parseInt(_0x445d1f(0x10b))/0x3*(parseInt(_0x445d1f(0x10d))/0x4)+parseInt(_0x445d1f(0x116))/0x5+-parseInt(_0x445d1f(0x115))/0x6*(parseInt(_0x445d1f(0x10e))/0x7)+parseInt(_0x445d1f(0x105))/0x8*(-parseInt(_0x445d1f(0x110))/0x9)+-parseInt(_0x445d1f(0x114))/0xa+-parseInt(_0x445d1f(0x10f))/0xb*(-parseInt(_0x445d1f(0x111))/0xc);if(_0x164ab4===_0x5962f7)break;else _0x365f4e['push'](_0x365f4e['shift']());}catch(_0xbf55c2){_0x365f4e['push'](_0x365f4e['shift']());}}}(a5_0x4cff,0xdf571));import{fileURLToPath}from'url';import{dirname,join}from'path';function a5_0x4cff(){const _0x5a2e88=['parse','307FmHfzB','3Thwjsd','utf-8','1268412KUvLpH','1513001HLcOKS','550seZnGs','14922ApePDi','1194876qOXbpe','Mock\x20API\x20error:\x20','tableData','8558040VyYaTL','42KCyYsx','1442445fcWUZV','../../../mock/app-list.json','6488ylPDlJ','success','errorMsg','6228pdhPix'];a5_0x4cff=function(){return _0x5a2e88;};return a5_0x4cff();}import{readFileSync}from'fs';const __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename);function loadMockAppList(){const _0x1fc200=a5_0x5068,_0x17935a=join(__dirname,_0x1fc200(0x117)),_0x3c9156=readFileSync(_0x17935a,_0x1fc200(0x10c));return JSON[_0x1fc200(0x109)](_0x3c9156);}let _cached=null;export function getMockAppList(){return!_cached&&(_cached=loadMockAppList()),_cached;}function a5_0x5068(_0x247bdc,_0x38345a){_0x247bdc=_0x247bdc-0x105;const _0x4cfff5=a5_0x4cff();let _0x5068ab=_0x4cfff5[_0x247bdc];return _0x5068ab;}export function getMockRemoteAppItems(){const _0x4c36e8=a5_0x5068,_0x4890b9=getMockAppList();if(!_0x4890b9[_0x4c36e8(0x106)])throw new Error(_0x4c36e8(0x112)+_0x4890b9[_0x4c36e8(0x107)]+'\x20('+_0x4890b9['errorCode']+')');return _0x4890b9['data'][_0x4c36e8(0x113)];}
@@ -1 +1 @@
1
- (function(_0x2bcf63,_0x36ed41){const _0xfdfa7=a6_0x4175,_0x408a2a=_0x2bcf63();while(!![]){try{const _0x4ae53f=parseInt(_0xfdfa7(0x167))/0x1*(-parseInt(_0xfdfa7(0x171))/0x2)+parseInt(_0xfdfa7(0x174))/0x3*(parseInt(_0xfdfa7(0x16d))/0x4)+-parseInt(_0xfdfa7(0x176))/0x5+-parseInt(_0xfdfa7(0x172))/0x6+parseInt(_0xfdfa7(0x168))/0x7+-parseInt(_0xfdfa7(0x173))/0x8*(-parseInt(_0xfdfa7(0x177))/0x9)+parseInt(_0xfdfa7(0x16a))/0xa;if(_0x4ae53f===_0x36ed41)break;else _0x408a2a['push'](_0x408a2a['shift']());}catch(_0x2d46a7){_0x408a2a['push'](_0x408a2a['shift']());}}}(a6_0x54f7,0x8d2af));import{getMyApps}from'../../core/api-client.js';import{getMockRemoteAppItems}from'../../commands/app/mock-loader.js';function a6_0x4175(_0x4da5e2,_0x5961e3){_0x4da5e2=_0x4da5e2-0x167;const _0x54f728=a6_0x54f7();let _0x41756d=_0x54f728[_0x4da5e2];return _0x41756d;}function a6_0x54f7(){const _0x11e2c2=['4577805fLiidz','9laVTpb','688gpYSfj','2358076GqRhyB','remote','7253570oxSvtr','APP_LIST_SOURCE','toLowerCase','196RIurId','fetchedAt','mock','trim','2804BULmZN','848454OVDdAD','6484248SmqiOd','44511dSWswQ','items'];a6_0x54f7=function(){return _0x11e2c2;};return a6_0x54f7();}import{getAppCacheFilePath,readCachedAppList,writeCachedAppList}from'../../commands/app/cache.js';import{productEnv}from'../../constant/product.js';export function shouldUseMockRemoteApps(){const _0x1f843e=a6_0x4175,_0x9509da=(productEnv(_0x1f843e(0x16b))||'')[_0x1f843e(0x170)]()[_0x1f843e(0x16c)]();return _0x9509da==='mock';}export async function getRemoteAppItems(){if(shouldUseMockRemoteApps())return getMockRemoteAppItems();return getMyApps();}export async function getRemoteAppList(_0x11c151){const _0x1c9713=a6_0x4175,{env:_0x558750,accessKey:_0x2eafa0,localOnly:localOnly=![],noCache:noCache=![]}=_0x11c151,_0x16dc3f=readCachedAppList(_0x558750,_0x2eafa0),_0x3b439f=_0x2eafa0?.[_0x1c9713(0x170)]()?getAppCacheFilePath(_0x558750,_0x2eafa0):null;if(localOnly)return{'items':_0x16dc3f?.['items']??[],'source':'cache','fetchedAt':_0x16dc3f?.['fetchedAt']??null,'cachePath':_0x3b439f};try{const _0x486768=await getRemoteAppItems(),_0x1e260d=shouldUseMockRemoteApps()?_0x1c9713(0x16f):_0x1c9713(0x169),_0x3c4998=new Date()['toISOString'](),_0x40d536=_0x2eafa0?.[_0x1c9713(0x170)]()?writeCachedAppList(_0x558750,_0x2eafa0,{'env':_0x558750,'fetchedAt':_0x3c4998,'source':_0x1e260d,'items':_0x486768}):null;return{'items':_0x486768,'source':_0x1e260d,'fetchedAt':_0x3c4998,'cachePath':_0x40d536};}catch(_0x29bf5d){if(!noCache&&_0x16dc3f)return{'items':_0x16dc3f[_0x1c9713(0x175)],'source':'cache','fetchedAt':_0x16dc3f[_0x1c9713(0x16e)],'cachePath':_0x3b439f};throw _0x29bf5d;}}
1
+ (function(_0x3caa1b,_0x3f0d34){const _0x3ad7b4=a6_0x1d8c,_0x440896=_0x3caa1b();while(!![]){try{const _0x36f6d0=-parseInt(_0x3ad7b4(0x1f3))/0x1*(parseInt(_0x3ad7b4(0x1f1))/0x2)+-parseInt(_0x3ad7b4(0x1fa))/0x3+-parseInt(_0x3ad7b4(0x1ec))/0x4+parseInt(_0x3ad7b4(0x1f0))/0x5*(parseInt(_0x3ad7b4(0x1f4))/0x6)+parseInt(_0x3ad7b4(0x1ee))/0x7+-parseInt(_0x3ad7b4(0x1f9))/0x8+parseInt(_0x3ad7b4(0x1f5))/0x9;if(_0x36f6d0===_0x3f0d34)break;else _0x440896['push'](_0x440896['shift']());}catch(_0x37a827){_0x440896['push'](_0x440896['shift']());}}}(a6_0x4301,0x1a6ee));function a6_0x1d8c(_0x3b807d,_0x2fe884){_0x3b807d=_0x3b807d-0x1ec;const _0x430141=a6_0x4301();let _0x1d8cb3=_0x430141[_0x3b807d];return _0x1d8cb3;}import{getMyApps}from'../../core/api-client.js';import{getMockRemoteAppItems}from'../../commands/app/mock-loader.js';import{getAppCacheFilePath,readCachedAppList,writeCachedAppList}from'../../commands/app/cache.js';import{productEnv}from'../../constant/product.js';export function shouldUseMockRemoteApps(){const _0x18775b=a6_0x1d8c,_0x13915b=(productEnv('APP_LIST_SOURCE')||'')[_0x18775b(0x1ef)]()['toLowerCase']();return _0x13915b===_0x18775b(0x1f2);}export async function getRemoteAppItems(){if(shouldUseMockRemoteApps())return getMockRemoteAppItems();return getMyApps();}function a6_0x4301(){const _0x20cd42=['toISOString','847112XUkEUb','501966DnsQNy','remote','220952CMbBdU','cache','6846urkHEl','trim','18095mQDZdE','1618gUNxTs','mock','48druCbZ','270MjQMhx','2805462pziOqY','fetchedAt','items'];a6_0x4301=function(){return _0x20cd42;};return a6_0x4301();}export async function getRemoteAppList(_0x2ae037){const _0x524bf6=a6_0x1d8c,{env:_0xb94480,accessKey:_0x1601fa,localOnly:localOnly=![],noCache:noCache=![]}=_0x2ae037,_0x4fa561=readCachedAppList(_0xb94480,_0x1601fa),_0x38a6b2=_0x1601fa?.['trim']()?getAppCacheFilePath(_0xb94480,_0x1601fa):null;if(localOnly)return{'items':_0x4fa561?.[_0x524bf6(0x1f7)]??[],'source':_0x524bf6(0x1ed),'fetchedAt':_0x4fa561?.[_0x524bf6(0x1f6)]??null,'cachePath':_0x38a6b2};try{const _0x3ba0bb=await getRemoteAppItems(),_0x52c40a=shouldUseMockRemoteApps()?_0x524bf6(0x1f2):_0x524bf6(0x1fb),_0x232557=new Date()[_0x524bf6(0x1f8)](),_0x506e57=_0x1601fa?.[_0x524bf6(0x1ef)]()?writeCachedAppList(_0xb94480,_0x1601fa,{'env':_0xb94480,'fetchedAt':_0x232557,'source':_0x52c40a,'items':_0x3ba0bb}):null;return{'items':_0x3ba0bb,'source':_0x52c40a,'fetchedAt':_0x232557,'cachePath':_0x506e57};}catch(_0x2a79da){if(!noCache&&_0x4fa561)return{'items':_0x4fa561['items'],'source':_0x524bf6(0x1ed),'fetchedAt':_0x4fa561['fetchedAt'],'cachePath':_0x38a6b2};throw _0x2a79da;}}
@@ -1 +1 @@
1
- (function(_0x1dd206,_0x5acdf5){const _0x1b1069=a7_0x6d3d,_0x1a5763=_0x1dd206();while(!![]){try{const _0x40b49f=parseInt(_0x1b1069(0x109))/0x1*(-parseInt(_0x1b1069(0x108))/0x2)+-parseInt(_0x1b1069(0x104))/0x3*(-parseInt(_0x1b1069(0x113))/0x4)+parseInt(_0x1b1069(0x117))/0x5*(parseInt(_0x1b1069(0x100))/0x6)+parseInt(_0x1b1069(0x110))/0x7+parseInt(_0x1b1069(0x102))/0x8+-parseInt(_0x1b1069(0x10a))/0x9*(-parseInt(_0x1b1069(0x105))/0xa)+parseInt(_0x1b1069(0x112))/0xb*(-parseInt(_0x1b1069(0x10e))/0xc);if(_0x40b49f===_0x5acdf5)break;else _0x1a5763['push'](_0x1a5763['shift']());}catch(_0x4abd32){_0x1a5763['push'](_0x1a5763['shift']());}}}(a7_0x4472,0x6404f));function a7_0x6d3d(_0x183ce9,_0x4c0508){_0x183ce9=_0x183ce9-0x100;const _0x4472d4=a7_0x4472();let _0x6d3d97=_0x4472d4[_0x183ce9];return _0x6d3d97;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{formatScopeLabel}from'../../commands/common/config-policy.js';export{CLI_BIN_NAME};export function enrichAppListItemsWithMergedSelection(_0x4cde63,_0x53e746){const _0x2684e6=a7_0x6d3d;if(!_0x53e746)return;const _0x547538=!!(_0x53e746['currentApp']??_0x53e746[_0x2684e6(0x115)]);for(const _0x568d8a of _0x4cde63){_0x568d8a[_0x2684e6(0x10d)]=![];}const _0x108266=_0x53e746['appCode']!=null?String(_0x53e746[_0x2684e6(0x116)])[_0x2684e6(0x106)]():'';if(_0x547538){const _0x3b5f07=_0x53e746[_0x2684e6(0x103)]??_0x53e746['defaultApp'];if(_0x3b5f07){const _0xc9f712=_0x4cde63[_0x2684e6(0x111)](_0x5bbbd0=>_0x5bbbd0[_0x2684e6(0x101)]===!![]&&_0x5bbbd0['name']===_0x3b5f07&&_0x5bbbd0[_0x2684e6(0x107)]===_0x2684e6(0x10f)),_0x27888b=_0xc9f712??_0x4cde63[_0x2684e6(0x111)](_0x3d0c27=>_0x3d0c27['named']===!![]&&_0x3d0c27[_0x2684e6(0x10c)]===_0x3b5f07);if(_0x27888b){const _0x39158e=String(_0x27888b[_0x2684e6(0x118)]??'')['trim']();if(!_0x108266||_0x39158e===_0x108266){_0x27888b[_0x2684e6(0x10d)]=!![];return;}}}if(_0x108266){const _0x109375=_0x4cde63[_0x2684e6(0x111)](_0x48500c=>String(_0x48500c['appcode']??'')[_0x2684e6(0x106)]()===_0x108266);_0x109375&&(_0x109375[_0x2684e6(0x10d)]=!![]);}return;}if(!_0x108266)return;for(const _0x4f7064 of _0x4cde63){String(_0x4f7064[_0x2684e6(0x118)]??'')[_0x2684e6(0x106)]()===_0x108266&&(_0x4f7064[_0x2684e6(0x10d)]=!![]);}}export{readScopedConfig as readConfig,writeScopedConfig as writeConfig,isInProject}from'../../context.js';function a7_0x4472(){const _0x5c40a8=['36405jeUFiV','appcode','114ZJLOfO','named','841088qemFgK','currentApp','1141323KuhWTI','30QkOHoL','trim','definedIn','2mPwUTu','581766kHMrow','1329381LoYMaw','global','name','isCurrent','12ILvsGm','local','5574800vwzOyV','find','13776829CEhmZy','8jQjZlB','project','defaultApp','appCode'];a7_0x4472=function(){return _0x5c40a8;};return a7_0x4472();}export function scopeLabel(_0x3ed0c2){const _0x325204=a7_0x6d3d;return formatScopeLabel(_0x3ed0c2['global']?_0x325204(0x10b):_0x325204(0x114));}
1
+ (function(_0x582797,_0x1e7237){const _0x4a59f2=a7_0x4110,_0x557ea1=_0x582797();while(!![]){try{const _0x374d20=-parseInt(_0x4a59f2(0x7b))/0x1*(parseInt(_0x4a59f2(0x7f))/0x2)+-parseInt(_0x4a59f2(0x77))/0x3+parseInt(_0x4a59f2(0x75))/0x4*(parseInt(_0x4a59f2(0x71))/0x5)+parseInt(_0x4a59f2(0x6b))/0x6*(-parseInt(_0x4a59f2(0x78))/0x7)+parseInt(_0x4a59f2(0x70))/0x8+parseInt(_0x4a59f2(0x73))/0x9*(parseInt(_0x4a59f2(0x68))/0xa)+parseInt(_0x4a59f2(0x72))/0xb;if(_0x374d20===_0x1e7237)break;else _0x557ea1['push'](_0x557ea1['shift']());}catch(_0x3741f7){_0x557ea1['push'](_0x557ea1['shift']());}}}(a7_0x34a2,0x48e35));import{CLI_BIN_NAME}from'../../constant/cli.js';function a7_0x34a2(){const _0x2be6ca=['trim','defaultApp','local','appcode','1393336FvXIbB','915FpoELQ','9522414TrLWvt','216jSOfZT','appCode','5476qjhvok','definedIn','1164411fWOojj','77vIUonn','currentApp','named','302558bZkQWg','find','project','global','2wHzJya','42410AZEaTF','name','isCurrent','219768zrpsZw'];a7_0x34a2=function(){return _0x2be6ca;};return a7_0x34a2();}import{formatScopeLabel}from'../../commands/common/config-policy.js';export{CLI_BIN_NAME};function a7_0x4110(_0xb9d534,_0x46e3aa){_0xb9d534=_0xb9d534-0x68;const _0x34a266=a7_0x34a2();let _0x411066=_0x34a266[_0xb9d534];return _0x411066;}export function enrichAppListItemsWithMergedSelection(_0x5423ed,_0x1ecab6){const _0x142f01=a7_0x4110;if(!_0x1ecab6)return;const _0x1a446b=!!(_0x1ecab6[_0x142f01(0x79)]??_0x1ecab6[_0x142f01(0x6d)]);for(const _0xfd91d of _0x5423ed){_0xfd91d['isCurrent']=![];}const _0x501918=_0x1ecab6[_0x142f01(0x74)]!=null?String(_0x1ecab6['appCode'])['trim']():'';if(_0x1a446b){const _0x48d800=_0x1ecab6[_0x142f01(0x79)]??_0x1ecab6['defaultApp'];if(_0x48d800){const _0x5050f0=_0x5423ed[_0x142f01(0x7c)](_0x1a3bf6=>_0x1a3bf6[_0x142f01(0x7a)]===!![]&&_0x1a3bf6[_0x142f01(0x69)]===_0x48d800&&_0x1a3bf6[_0x142f01(0x76)]===_0x142f01(0x6e)),_0x3bfe49=_0x5050f0??_0x5423ed[_0x142f01(0x7c)](_0x2998b8=>_0x2998b8[_0x142f01(0x7a)]===!![]&&_0x2998b8[_0x142f01(0x69)]===_0x48d800);if(_0x3bfe49){const _0x29f226=String(_0x3bfe49[_0x142f01(0x6f)]??'')[_0x142f01(0x6c)]();if(!_0x501918||_0x29f226===_0x501918){_0x3bfe49[_0x142f01(0x6a)]=!![];return;}}}if(_0x501918){const _0x177e66=_0x5423ed[_0x142f01(0x7c)](_0x5be749=>String(_0x5be749[_0x142f01(0x6f)]??'')[_0x142f01(0x6c)]()===_0x501918);_0x177e66&&(_0x177e66[_0x142f01(0x6a)]=!![]);}return;}if(!_0x501918)return;for(const _0x14a0d1 of _0x5423ed){String(_0x14a0d1[_0x142f01(0x6f)]??'')[_0x142f01(0x6c)]()===_0x501918&&(_0x14a0d1['isCurrent']=!![]);}}export{readScopedConfig as readConfig,writeScopedConfig as writeConfig,isInProject}from'../../context.js';export function scopeLabel(_0x2cff2a){const _0x41943a=a7_0x4110;return formatScopeLabel(_0x2cff2a[_0x41943a(0x7e)]?_0x41943a(0x7e):_0x41943a(0x7d));}
@@ -1 +1 @@
1
- const a8_0x5ec566=a8_0x13df;(function(_0x39a6f0,_0x1bb051){const _0x4c0210=a8_0x13df,_0x39a1fd=_0x39a6f0();while(!![]){try{const _0x5e32e0=-parseInt(_0x4c0210(0x194))/0x1*(-parseInt(_0x4c0210(0x1a2))/0x2)+parseInt(_0x4c0210(0x19c))/0x3+parseInt(_0x4c0210(0x193))/0x4*(parseInt(_0x4c0210(0x18f))/0x5)+parseInt(_0x4c0210(0x192))/0x6*(-parseInt(_0x4c0210(0x1a1))/0x7)+parseInt(_0x4c0210(0x196))/0x8+-parseInt(_0x4c0210(0x191))/0x9*(parseInt(_0x4c0210(0x19b))/0xa)+parseInt(_0x4c0210(0x19d))/0xb;if(_0x5e32e0===_0x1bb051)break;else _0x39a1fd['push'](_0x39a1fd['shift']());}catch(_0x5e1473){_0x39a1fd['push'](_0x39a1fd['shift']());}}}(a8_0x325d,0xceab6));import{getRuntimeAppConfigByKey}from'../../core/api-client.js';function a8_0x325d(){const _0x3db642=['295024GuckDv','19xoJRyH','apiError','6978464bhkcVa','Unable\x20to\x20get\x20app-config\x20value:\x20key=','\x20app-config\x20get\x20<key>','key','Get\x20one\x20runtime\x20app-config\x20value\x20by\x20key','8550YvLFEG','2298267ojdehT','5875188zHlsVQ','Usage:\x20','get','App\x20config\x20key','7WxnhKV','28486xbFVCQ','Missing\x20app-config\x20key.',',\x20appCode=','args','35TXBIGh','validation','10359TKvOFA','6772746UhQJSN'];a8_0x325d=function(){return _0x3db642;};return a8_0x325d();}import{CliErrors}from'../../errors.js';function a8_0x13df(_0x19ea68,_0x989835){_0x19ea68=_0x19ea68-0x18d;const _0x325d7e=a8_0x325d();let _0x13df8e=_0x325d7e[_0x19ea68];return _0x13df8e;}import{CLI_BIN_NAME}from'../../constant/cli.js';export const appConfigGet={'service':'app-config','command':a8_0x5ec566(0x19f),'description':a8_0x5ec566(0x19a),'risk':'read','args':[{'name':a8_0x5ec566(0x199),'description':a8_0x5ec566(0x1a0),'required':!![]}],'flags':[],async 'execute'(_0x4aba6d){const _0x21bcce=a8_0x5ec566,_0x16acba=_0x4aba6d[_0x21bcce(0x18e)][0x0]?.['trim']();if(!_0x16acba)throw CliErrors[_0x21bcce(0x190)](_0x21bcce(0x1a3),_0x21bcce(0x19e)+CLI_BIN_NAME+_0x21bcce(0x198));try{const _0xe4de6c=await getRuntimeAppConfigByKey(_0x4aba6d['appCode'],_0x16acba);return{'ok':!![],'data':_0xe4de6c};}catch{throw CliErrors[_0x21bcce(0x195)](_0x21bcce(0x197)+_0x16acba+_0x21bcce(0x18d)+_0x4aba6d['appCode'],'Check\x20that\x20the\x20key\x20exists,\x20the\x20current\x20AccessKey\x20has\x20permission,\x20and\x20the\x20runtime\x20app-config\x20endpoint\x20is\x20available.');}}};
1
+ const a8_0x47e670=a8_0x1d96;function a8_0x1d96(_0x411eb2,_0x449795){_0x411eb2=_0x411eb2-0x117;const _0x430293=a8_0x4302();let _0x1d963f=_0x430293[_0x411eb2];return _0x1d963f;}function a8_0x4302(){const _0x262774=['9961830HDyExj','125135oHNrHN','key','trim','read','Check\x20that\x20the\x20key\x20exists,\x20the\x20current\x20AccessKey\x20has\x20permission,\x20and\x20the\x20runtime\x20app-config\x20endpoint\x20is\x20available.','appCode','28qkfHpZ','apiError','3149643EwFNSK','Unable\x20to\x20get\x20app-config\x20value:\x20key=','6KiRZGl','69944QLfmAP','32364CiwLqo','549574htPggC','Get\x20one\x20runtime\x20app-config\x20value\x20by\x20key','App\x20config\x20key','validation','147840DKBcmL','\x20app-config\x20get\x20<key>','app-config','128eqUKcw','Missing\x20app-config\x20key.','682aSeSEI'];a8_0x4302=function(){return _0x262774;};return a8_0x4302();}(function(_0x24e42a,_0xa08a7d){const _0x53894e=a8_0x1d96,_0x4bfdbe=_0x24e42a();while(!![]){try{const _0x14b024=-parseInt(_0x53894e(0x11d))/0x1+parseInt(_0x53894e(0x124))/0x2*(parseInt(_0x53894e(0x11c))/0x3)+-parseInt(_0x53894e(0x12e))/0x4*(-parseInt(_0x53894e(0x128))/0x5)+-parseInt(_0x53894e(0x11a))/0x6*(-parseInt(_0x53894e(0x118))/0x7)+-parseInt(_0x53894e(0x11b))/0x8+-parseInt(_0x53894e(0x127))/0x9+parseInt(_0x53894e(0x121))/0xa*(parseInt(_0x53894e(0x126))/0xb);if(_0x14b024===_0xa08a7d)break;else _0x4bfdbe['push'](_0x4bfdbe['shift']());}catch(_0x8b0cde){_0x4bfdbe['push'](_0x4bfdbe['shift']());}}}(a8_0x4302,0x8a6cf));import{getRuntimeAppConfigByKey}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const appConfigGet={'service':a8_0x47e670(0x123),'command':'get','description':a8_0x47e670(0x11e),'risk':a8_0x47e670(0x12b),'args':[{'name':a8_0x47e670(0x129),'description':a8_0x47e670(0x11f),'required':!![]}],'flags':[],async 'execute'(_0x77482d){const _0x4081ad=a8_0x47e670,_0x49d0a1=_0x77482d['args'][0x0]?.[_0x4081ad(0x12a)]();if(!_0x49d0a1)throw CliErrors[_0x4081ad(0x120)](_0x4081ad(0x125),'Usage:\x20'+CLI_BIN_NAME+_0x4081ad(0x122));try{const _0x59ab1a=await getRuntimeAppConfigByKey(_0x77482d[_0x4081ad(0x12d)],_0x49d0a1);return{'ok':!![],'data':_0x59ab1a};}catch{throw CliErrors[_0x4081ad(0x117)](_0x4081ad(0x119)+_0x49d0a1+',\x20appCode='+_0x77482d['appCode'],_0x4081ad(0x12c));}}};
@@ -1 +1 @@
1
- (function(_0x17cec3,_0x4cd309){const _0xbfa460=a9_0x3dcd,_0x55709a=_0x17cec3();while(!![]){try{const _0x3eec7e=parseInt(_0xbfa460(0x13a))/0x1+parseInt(_0xbfa460(0x13e))/0x2*(parseInt(_0xbfa460(0x138))/0x3)+parseInt(_0xbfa460(0x13b))/0x4+-parseInt(_0xbfa460(0x141))/0x5*(parseInt(_0xbfa460(0x140))/0x6)+parseInt(_0xbfa460(0x13d))/0x7+-parseInt(_0xbfa460(0x13f))/0x8*(-parseInt(_0xbfa460(0x13c))/0x9)+-parseInt(_0xbfa460(0x139))/0xa;if(_0x3eec7e===_0x4cd309)break;else _0x55709a['push'](_0x55709a['shift']());}catch(_0x12696){_0x55709a['push'](_0x55709a['shift']());}}}(a9_0x52a1,0x87537));import{appConfigGet}from'../../commands/app-config/get.js';function a9_0x52a1(){const _0x14ca96=['840AhtnnG','24054MOzGoR','5eJAKWn','67587GoLXlk','28023320wgTsuG','471485oHjhYU','4205696rKilrB','78633yINGgz','2342116NJiStR','52PwkRtA'];a9_0x52a1=function(){return _0x14ca96;};return a9_0x52a1();}function a9_0x3dcd(_0x57a6f8,_0x38c033){_0x57a6f8=_0x57a6f8-0x138;const _0x52a1be=a9_0x52a1();let _0x3dcd79=_0x52a1be[_0x57a6f8];return _0x3dcd79;}export const appConfigDefinitions=[appConfigGet];
1
+ (function(_0x5ba81a,_0x53262e){const _0x310617=a9_0x4c4f,_0x4ac01d=_0x5ba81a();while(!![]){try{const _0x2506dd=-parseInt(_0x310617(0xc8))/0x1*(parseInt(_0x310617(0xd0))/0x2)+parseInt(_0x310617(0xcc))/0x3*(-parseInt(_0x310617(0xca))/0x4)+-parseInt(_0x310617(0xd2))/0x5*(parseInt(_0x310617(0xcb))/0x6)+-parseInt(_0x310617(0xcf))/0x7+-parseInt(_0x310617(0xd1))/0x8+-parseInt(_0x310617(0xcd))/0x9+parseInt(_0x310617(0xc9))/0xa*(parseInt(_0x310617(0xce))/0xb);if(_0x2506dd===_0x53262e)break;else _0x4ac01d['push'](_0x4ac01d['shift']());}catch(_0x1c753b){_0x4ac01d['push'](_0x4ac01d['shift']());}}}(a9_0x27d6,0xa41c5));function a9_0x4c4f(_0x248439,_0x163de6){_0x248439=_0x248439-0xc8;const _0x27d66c=a9_0x27d6();let _0x4c4f66=_0x27d66c[_0x248439];return _0x4c4f66;}import{appConfigGet}from'../../commands/app-config/get.js';export const appConfigDefinitions=[appConfigGet];function a9_0x27d6(){const _0x5a3748=['28501JhaBTk','1597799uCkFHQ','18VrmmSq','7518800jJyPBy','45ulTSGT','22489KfCgLk','14520JAVqxc','8btikqv','540786lWSdoO','960651MevZow','2410326YVWmJY'];a9_0x27d6=function(){return _0x5a3748;};return a9_0x27d6();}
@@ -1 +1 @@
1
- const a10_0x2519e0=a10_0x6dc3;(function(_0x16075f,_0x3b0645){const _0x41a9dc=a10_0x6dc3,_0x5ce3e0=_0x16075f();while(!![]){try{const _0x536f55=parseInt(_0x41a9dc(0x22f))/0x1+parseInt(_0x41a9dc(0x1e0))/0x2*(-parseInt(_0x41a9dc(0x1fe))/0x3)+-parseInt(_0x41a9dc(0x200))/0x4+-parseInt(_0x41a9dc(0x229))/0x5+parseInt(_0x41a9dc(0x1f2))/0x6+parseInt(_0x41a9dc(0x207))/0x7+-parseInt(_0x41a9dc(0x22c))/0x8*(-parseInt(_0x41a9dc(0x209))/0x9);if(_0x536f55===_0x3b0645)break;else _0x5ce3e0['push'](_0x5ce3e0['shift']());}catch(_0x3b5195){_0x5ce3e0['push'](_0x5ce3e0['shift']());}}}(a10_0x3c64,0x63898));import{existsSync,readFileSync,statSync}from'node:fs';import{createRuntimeArtifact,getRuntimeArtifact,listRuntimeArtifacts,updateRuntimeArtifact}from'../../core/api-client.js';import{ID_FLAG,VERBOSE_FLAG}from'../../commands/common/flags.js';function a10_0x3c64(){const _0xf45491=['Preview:\x20update\x20react_module\x20Artifact\x20','metadata','Updated\x20Artifact\x20','/update','1869051Feootm','compiledContent','299680cgPWMh','favorite','Update\x20a\x20react_module\x20Artifact\x20from\x20a\x20local\x20source\x20file','content','react_module','/client/artifact/create','validation','753669AMaGaF','parse','6323049dKlkli','includes','Artifact\x20source\x20file\x20is\x20blank.','.\x20Unsupported:\x20','utf8','lodash','isFile','map','deleted','List\x20current-app\x20react_module\x20Artifacts','string','startsWith','@ant-design/icons','react_module\x20imports\x20are\x20limited\x20to:\x20','filter','update','Created\x20Artifact\x20','isArray','File\x20path\x20is\x20required.','bool','num','POST','Invalid\x20JSON\x20for\x20--metadata:\x20','Show\x20one\x20Artifact\x20by\x20id','str','Preview:\x20create\x20react_module\x20Artifact','write','artifact','Optional\x20favorite-state\x20filter','Path\x20to\x20a\x20local\x20UTF-8\x20React\x20module\x20source\x20file','Artifact\x20ID','number','2856830kktfzC','source','verbose','8Ygzyxx','createTime','boolean','419867nuiDdd','appCode','body','2aMwAxz','updateTime','name','add','Artifact\x20metadata\x20as\x20JSON\x20object;\x20compiledContent\x20is\x20stripped','antd','build','lastIndex','some','artifactType','object','flag','/client/artifact/','trim','Artifact\x20display\x20name','split','Optional\x20source\x20filter,\x20for\x20example\x20AGENT','react','2681472BzFbPk','description','list','test','data','react_module\x20must\x20be\x20an\x20embeddable\x20React\x20module,\x20not\x20full\x20HTML\x20or\x20a\x20ReactDOM/createRoot\x20mount\x20entry.','length','read'];a10_0x3c64=function(){return _0xf45491;};return a10_0x3c64();}import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';function a10_0x6dc3(_0xad3c1e,_0xe72d95){_0xad3c1e=_0xad3c1e-0x1df;const _0x3c64ee=a10_0x3c64();let _0x6dc310=_0x3c64ee[_0xad3c1e];return _0x6dc310;}const ARTIFACT_TYPE_REACT_MODULE=a10_0x2519e0(0x204),ARTIFACT_SOURCE_AGENT='AGENT',ALLOWED_REACT_MODULE_IMPORTS=[a10_0x2519e0(0x1f1),'react-dom',a10_0x2519e0(0x20e),'dayjs',a10_0x2519e0(0x1e5),a10_0x2519e0(0x215)];export const ALLOWED_REACT_MODULE_IMPORTS_TEXT=ALLOWED_REACT_MODULE_IMPORTS['join'](',\x20');const IMPORT_SOURCE_PATTERNS=[/\bimport\s+(?:type\s+)?(?:[^'";]*?\s+from\s+)?["']([^"']+)["']/g,/\bexport\s+(?:type\s+)?[^'";]*?\s+from\s+["']([^"']+)["']/g,/\bimport\s*\(\s*["']([^"']+)["']\s*\)/g,/\brequire\s*\(\s*["']([^"']+)["']\s*\)/g],PAGE_LEVEL_PATTERNS=[/<!doctype\s+html/i,/<\s*html\b/i,/\bcreateRoot\s*\(/,/\bReactDOM\s*\.\s*render\s*\(/,/\bReactDOM\s*\.\s*createRoot\s*\(/],FILE_FLAG={'name':'file','type':a10_0x2519e0(0x213),'required':!![],'description':a10_0x2519e0(0x226)},ARTIFACT_NAME_FLAG={'name':'name','type':a10_0x2519e0(0x213),'description':a10_0x2519e0(0x1ee)},METADATA_FLAG={'name':a10_0x2519e0(0x1fb),'type':a10_0x2519e0(0x213),'description':a10_0x2519e0(0x1e4)};function isPlainObject(_0xd23493){const _0x5295cc=a10_0x2519e0;return typeof _0xd23493===_0x5295cc(0x1ea)&&_0xd23493!==null&&!Array[_0x5295cc(0x21a)](_0xd23493);}function readSourceFile(_0x59f688){const _0x14df53=a10_0x2519e0;if(!_0x59f688)throw CliErrors[_0x14df53(0x206)](_0x14df53(0x21b));if(!existsSync(_0x59f688))throw CliErrors[_0x14df53(0x206)]('File\x20not\x20found:\x20'+_0x59f688);if(!statSync(_0x59f688)[_0x14df53(0x20f)]())throw CliErrors['validation']('File\x20is\x20not\x20a\x20regular\x20file:\x20'+_0x59f688);const _0x58244f=readFileSync(_0x59f688,_0x14df53(0x20d));return validateReactModuleSource(_0x58244f),_0x58244f;}function parseMetadata(_0x39003d){const _0x561da3=a10_0x2519e0;if(!_0x39003d)return undefined;let _0x502c08;try{_0x502c08=JSON[_0x561da3(0x208)](_0x39003d);}catch{throw CliErrors[_0x561da3(0x206)](_0x561da3(0x21f)+_0x39003d);}if(!isPlainObject(_0x502c08))throw CliErrors[_0x561da3(0x206)]('--metadata\x20must\x20be\x20a\x20JSON\x20object.');const _0x2b441f={..._0x502c08};return delete _0x2b441f[_0x561da3(0x1ff)],_0x2b441f;}function getPackageName(_0xf01268){const _0x5ed2a5=a10_0x2519e0;if(_0xf01268[_0x5ed2a5(0x214)]('@')){const [_0x1d3130,_0x254e74]=_0xf01268[_0x5ed2a5(0x1ef)]('/');return _0x1d3130&&_0x254e74?_0x1d3130+'/'+_0x254e74:_0xf01268;}return _0xf01268[_0x5ed2a5(0x1ef)]('/')[0x0]||_0xf01268;}function validateAllowedImports(_0x1b4f62){const _0x4c3d82=a10_0x2519e0,_0x284345=new Set();for(const _0x35ab59 of IMPORT_SOURCE_PATTERNS){_0x35ab59[_0x4c3d82(0x1e7)]=0x0;let _0x4078cc;while((_0x4078cc=_0x35ab59['exec'](_0x1b4f62))!==null){const _0x12b987=_0x4078cc[0x1]?.['trim']();_0x12b987&&_0x284345[_0x4c3d82(0x1e3)](_0x12b987);}}const _0x575684=[..._0x284345][_0x4c3d82(0x210)](getPackageName)[_0x4c3d82(0x217)](_0x51e9fb=>!ALLOWED_REACT_MODULE_IMPORTS[_0x4c3d82(0x20a)](_0x51e9fb));if(_0x575684[_0x4c3d82(0x1f8)]>0x0)throw CliErrors[_0x4c3d82(0x206)](_0x4c3d82(0x216)+ALLOWED_REACT_MODULE_IMPORTS_TEXT+_0x4c3d82(0x20c)+[...new Set(_0x575684)]['join'](',\x20'));}export function validateReactModuleSource(_0x548815){const _0x15f41c=a10_0x2519e0;if(!_0x548815['trim']())throw CliErrors[_0x15f41c(0x206)](_0x15f41c(0x20b));if(PAGE_LEVEL_PATTERNS[_0x15f41c(0x1e8)](_0x305d1b=>_0x305d1b[_0x15f41c(0x1f5)](_0x548815)))throw CliErrors[_0x15f41c(0x206)](_0x15f41c(0x1f7));validateAllowedImports(_0x548815);}function buildArtifactInput(_0xd55cf2){const _0x303028=a10_0x2519e0,_0x4afef1=readSourceFile(_0xd55cf2[_0x303028(0x221)]('file')),_0x1ce8f8=_0xd55cf2[_0x303028(0x221)]('name')[_0x303028(0x1ed)](),_0x5c215f=parseMetadata(_0xd55cf2['str'](_0x303028(0x1fb)));return{'artifactType':ARTIFACT_TYPE_REACT_MODULE,..._0x1ce8f8?{'name':_0x1ce8f8}:{},'content':_0x4afef1,..._0x5c215f?{'metadata':_0x5c215f}:{},'source':ARTIFACT_SOURCE_AGENT};}function summarizeArtifact(_0x2d4fbe){const _0x487e48=a10_0x2519e0;return{'id':_0x2d4fbe['id'],'name':_0x2d4fbe['name'],'artifactType':_0x2d4fbe[_0x487e48(0x1e9)],'source':_0x2d4fbe[_0x487e48(0x22a)],'favorite':_0x2d4fbe[_0x487e48(0x201)],'deleted':_0x2d4fbe['deleted'],'createTime':_0x2d4fbe['createTime'],'updateTime':_0x2d4fbe[_0x487e48(0x1e1)]};}function detailArtifact(_0x4b071a){const _0x29f54d=a10_0x2519e0;return{'id':_0x4b071a['id'],'appCode':_0x4b071a[_0x29f54d(0x230)],'name':_0x4b071a[_0x29f54d(0x1e2)],'artifactType':_0x4b071a[_0x29f54d(0x1e9)],'source':_0x4b071a[_0x29f54d(0x22a)],'favorite':_0x4b071a[_0x29f54d(0x201)],'deleted':_0x4b071a[_0x29f54d(0x211)],'content':_0x4b071a[_0x29f54d(0x203)]??'','compiledContent':_0x4b071a[_0x29f54d(0x1ff)],'metadata':_0x4b071a[_0x29f54d(0x1fb)]??{},'createTime':_0x4b071a[_0x29f54d(0x22d)],'updateTime':_0x4b071a[_0x29f54d(0x1e1)]};}function readFavoriteFlag(_0x57a9a5){const _0x252cab=a10_0x2519e0,_0x5c6645=_0x57a9a5[_0x252cab(0x1eb)](_0x252cab(0x201));return _0x5c6645===undefined||_0x5c6645===null||_0x5c6645===''?undefined:_0x57a9a5[_0x252cab(0x21c)]('favorite');}const artifactList={'service':a10_0x2519e0(0x224),'command':a10_0x2519e0(0x1f4),'description':a10_0x2519e0(0x212),'risk':a10_0x2519e0(0x1f9),'flags':[{'name':a10_0x2519e0(0x22a),'type':a10_0x2519e0(0x213),'description':a10_0x2519e0(0x1f0)},{'name':'favorite','type':a10_0x2519e0(0x22e),'description':a10_0x2519e0(0x225)},VERBOSE_FLAG],async 'execute'(_0x303ad0){const _0x23a6b7=a10_0x2519e0,_0x35fd51=await listRuntimeArtifacts(_0x303ad0['appCode'],{'artifactType':ARTIFACT_TYPE_REACT_MODULE,..._0x303ad0[_0x23a6b7(0x221)](_0x23a6b7(0x22a))?{'source':_0x303ad0[_0x23a6b7(0x221)]('source')}:{},...readFavoriteFlag(_0x303ad0)!==undefined?{'favorite':readFavoriteFlag(_0x303ad0)}:{}});return{'ok':!![],'data':{'total':_0x35fd51[_0x23a6b7(0x1f8)],'items':_0x303ad0[_0x23a6b7(0x21c)](_0x23a6b7(0x22b))?_0x35fd51:_0x35fd51['map'](summarizeArtifact)}};}},artifactDetail={'service':a10_0x2519e0(0x224),'command':'detail','description':a10_0x2519e0(0x220),'risk':a10_0x2519e0(0x1f9),'flags':[{...ID_FLAG,'description':a10_0x2519e0(0x227)}],async 'execute'(_0x2337aa){const _0x2b5bfa=a10_0x2519e0,_0x5bc8cf=await getRuntimeArtifact(_0x2337aa[_0x2b5bfa(0x21d)]('id'),_0x2337aa[_0x2b5bfa(0x230)]);return{'ok':!![],'data':detailArtifact(_0x5bc8cf)};}},artifactCreate={'service':a10_0x2519e0(0x224),'command':'create','description':'Create\x20a\x20react_module\x20Artifact\x20from\x20a\x20local\x20source\x20file','risk':a10_0x2519e0(0x223),'flags':[FILE_FLAG,ARTIFACT_NAME_FLAG,METADATA_FLAG],async 'execute'(_0xe26a7){const _0x45d4ad=a10_0x2519e0,_0x3880d3=buildArtifactInput(_0xe26a7),_0x29b060=await createRuntimeArtifact(_0xe26a7[_0x45d4ad(0x230)],_0x3880d3);return{'ok':!![],'data':detailArtifact(_0x29b060),'message':_0x45d4ad(0x219)+_0x29b060['id']+(_0x29b060[_0x45d4ad(0x1e2)]?'\x20('+_0x29b060[_0x45d4ad(0x1e2)]+')':'')};},async 'dryRun'(_0x57f9ad){const _0x4c91fa=a10_0x2519e0,_0x108889=buildArtifactInput(_0x57f9ad);return dryRun(_0x4c91fa(0x21e),_0x4c91fa(0x205))['body']({'appCode':_0x57f9ad[_0x4c91fa(0x230)],..._0x108889})[_0x4c91fa(0x1f3)](_0x4c91fa(0x222))[_0x4c91fa(0x1e6)]();},'writeEventSubject'(_0x4f24de){const _0x72cd87=a10_0x2519e0,_0x21ef7a=_0x4f24de['data']?.['id'];if(typeof _0x21ef7a!=='string'&&typeof _0x21ef7a!==_0x72cd87(0x228))return undefined;return{'kind':_0x72cd87(0x224),'id':String(_0x21ef7a),'action':'create'};}},artifactUpdate={'service':a10_0x2519e0(0x224),'command':a10_0x2519e0(0x218),'description':a10_0x2519e0(0x202),'risk':'write','flags':[{...ID_FLAG,'description':a10_0x2519e0(0x227)},FILE_FLAG,ARTIFACT_NAME_FLAG,METADATA_FLAG],async 'execute'(_0x136504){const _0x112530=a10_0x2519e0,_0x140b3f=_0x136504[_0x112530(0x21d)]('id'),_0x5254f7=buildArtifactInput(_0x136504),_0x59a56f=await updateRuntimeArtifact(_0x140b3f,_0x136504[_0x112530(0x230)],_0x5254f7);return{'ok':!![],'data':detailArtifact(_0x59a56f),'message':_0x112530(0x1fc)+_0x59a56f['id']+(_0x59a56f[_0x112530(0x1e2)]?'\x20('+_0x59a56f[_0x112530(0x1e2)]+')':'')};},async 'dryRun'(_0x519c35){const _0x17897c=a10_0x2519e0,_0x1ef314=_0x519c35[_0x17897c(0x21d)]('id'),_0x29595e=buildArtifactInput(_0x519c35);return dryRun(_0x17897c(0x21e),_0x17897c(0x1ec)+_0x1ef314+_0x17897c(0x1fd))[_0x17897c(0x1df)]({'appCode':_0x519c35[_0x17897c(0x230)],..._0x29595e})['description'](_0x17897c(0x1fa)+_0x1ef314)[_0x17897c(0x1e6)]();},'writeEventSubject'(_0xae65da){const _0x29feb3=a10_0x2519e0,_0x24c640=_0xae65da[_0x29feb3(0x1f6)]?.['id'];if(typeof _0x24c640!==_0x29feb3(0x213)&&typeof _0x24c640!==_0x29feb3(0x228))return undefined;return{'kind':'artifact','id':String(_0x24c640),'action':_0x29feb3(0x218)};}};export const artifactDefinitions=[artifactList,artifactDetail,artifactCreate,artifactUpdate];
1
+ const a10_0xe15a9b=a10_0x391e;function a10_0x391e(_0x4a60a6,_0x37195c){_0x4a60a6=_0x4a60a6-0xf0;const _0x1473c1=a10_0x1473();let _0x391ee7=_0x1473c1[_0x4a60a6];return _0x391ee7;}(function(_0x17a535,_0x1c0a41){const _0x51966d=a10_0x391e,_0x363170=_0x17a535();while(!![]){try{const _0x247d44=-parseInt(_0x51966d(0x100))/0x1*(-parseInt(_0x51966d(0x12b))/0x2)+-parseInt(_0x51966d(0xf4))/0x3*(parseInt(_0x51966d(0x145))/0x4)+-parseInt(_0x51966d(0x111))/0x5*(parseInt(_0x51966d(0x11e))/0x6)+parseInt(_0x51966d(0x13d))/0x7*(-parseInt(_0x51966d(0x123))/0x8)+-parseInt(_0x51966d(0xfa))/0x9*(-parseInt(_0x51966d(0xfb))/0xa)+parseInt(_0x51966d(0x144))/0xb*(-parseInt(_0x51966d(0x134))/0xc)+parseInt(_0x51966d(0xf2))/0xd*(parseInt(_0x51966d(0x138))/0xe);if(_0x247d44===_0x1c0a41)break;else _0x363170['push'](_0x363170['shift']());}catch(_0xe7023b){_0x363170['push'](_0x363170['shift']());}}}(a10_0x1473,0x8ba6e));import{existsSync,readFileSync,statSync}from'node:fs';import{createRuntimeArtifact,getRuntimeArtifact,listRuntimeArtifacts,updateRuntimeArtifact}from'../../core/api-client.js';import{ID_FLAG,VERBOSE_FLAG}from'../../commands/common/flags.js';import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';const ARTIFACT_TYPE_REACT_MODULE=a10_0xe15a9b(0x126),ARTIFACT_SOURCE_AGENT=a10_0xe15a9b(0x133),ALLOWED_REACT_MODULE_IMPORTS=[a10_0xe15a9b(0x106),a10_0xe15a9b(0x13b),a10_0xe15a9b(0x121),'dayjs','antd',a10_0xe15a9b(0x12e)];export const ALLOWED_REACT_MODULE_IMPORTS_TEXT=ALLOWED_REACT_MODULE_IMPORTS[a10_0xe15a9b(0x12a)](',\x20');const IMPORT_SOURCE_PATTERNS=[/\bimport\s+(?:type\s+)?(?:[^'";]*?\s+from\s+)?["']([^"']+)["']/g,/\bexport\s+(?:type\s+)?[^'";]*?\s+from\s+["']([^"']+)["']/g,/\bimport\s*\(\s*["']([^"']+)["']\s*\)/g,/\brequire\s*\(\s*["']([^"']+)["']\s*\)/g],PAGE_LEVEL_PATTERNS=[/<!doctype\s+html/i,/<\s*html\b/i,/\bcreateRoot\s*\(/,/\bReactDOM\s*\.\s*render\s*\(/,/\bReactDOM\s*\.\s*createRoot\s*\(/],FILE_FLAG={'name':a10_0xe15a9b(0x143),'type':a10_0xe15a9b(0x113),'required':!![],'description':'Path\x20to\x20a\x20local\x20UTF-8\x20React\x20module\x20source\x20file'},ARTIFACT_NAME_FLAG={'name':a10_0xe15a9b(0x124),'type':a10_0xe15a9b(0x113),'description':a10_0xe15a9b(0x119)},METADATA_FLAG={'name':a10_0xe15a9b(0xf1),'type':a10_0xe15a9b(0x113),'description':'Artifact\x20metadata\x20as\x20JSON\x20object;\x20compiledContent\x20is\x20stripped'};function isPlainObject(_0x2f989b){const _0x183430=a10_0xe15a9b;return typeof _0x2f989b===_0x183430(0xf3)&&_0x2f989b!==null&&!Array[_0x183430(0x11f)](_0x2f989b);}function readSourceFile(_0x3ac4af){const _0x1f76e4=a10_0xe15a9b;if(!_0x3ac4af)throw CliErrors['validation'](_0x1f76e4(0x10c));if(!existsSync(_0x3ac4af))throw CliErrors[_0x1f76e4(0x103)](_0x1f76e4(0x117)+_0x3ac4af);if(!statSync(_0x3ac4af)[_0x1f76e4(0xf8)]())throw CliErrors[_0x1f76e4(0x103)](_0x1f76e4(0x116)+_0x3ac4af);const _0x238ea3=readFileSync(_0x3ac4af,'utf8');return validateReactModuleSource(_0x238ea3),_0x238ea3;}function parseMetadata(_0x781121){const _0x3afc5a=a10_0xe15a9b;if(!_0x781121)return undefined;let _0x23cccd;try{_0x23cccd=JSON[_0x3afc5a(0x13c)](_0x781121);}catch{throw CliErrors['validation'](_0x3afc5a(0x120)+_0x781121);}if(!isPlainObject(_0x23cccd))throw CliErrors['validation'](_0x3afc5a(0x102));const _0x8c296b={..._0x23cccd};return delete _0x8c296b[_0x3afc5a(0xf9)],_0x8c296b;}function getPackageName(_0x35e963){const _0x2207a1=a10_0xe15a9b;if(_0x35e963[_0x2207a1(0x10f)]('@')){const [_0x996978,_0x4ac6c9]=_0x35e963[_0x2207a1(0x128)]('/');return _0x996978&&_0x4ac6c9?_0x996978+'/'+_0x4ac6c9:_0x35e963;}return _0x35e963[_0x2207a1(0x128)]('/')[0x0]||_0x35e963;}function validateAllowedImports(_0xa31825){const _0x54f8bf=a10_0xe15a9b,_0x5aa90f=new Set();for(const _0x2731bd of IMPORT_SOURCE_PATTERNS){_0x2731bd['lastIndex']=0x0;let _0x5b12b9;while((_0x5b12b9=_0x2731bd[_0x54f8bf(0xfe)](_0xa31825))!==null){const _0x4ff177=_0x5b12b9[0x1]?.['trim']();_0x4ff177&&_0x5aa90f['add'](_0x4ff177);}}const _0x447b06=[..._0x5aa90f][_0x54f8bf(0xfc)](getPackageName)[_0x54f8bf(0x115)](_0xd3a934=>!ALLOWED_REACT_MODULE_IMPORTS[_0x54f8bf(0x101)](_0xd3a934));if(_0x447b06[_0x54f8bf(0x112)]>0x0)throw CliErrors[_0x54f8bf(0x103)](_0x54f8bf(0x140)+ALLOWED_REACT_MODULE_IMPORTS_TEXT+'.\x20Unsupported:\x20'+[...new Set(_0x447b06)][_0x54f8bf(0x12a)](',\x20'));}export function validateReactModuleSource(_0x487e93){const _0x3e40ff=a10_0xe15a9b;if(!_0x487e93['trim']())throw CliErrors['validation']('Artifact\x20source\x20file\x20is\x20blank.');if(PAGE_LEVEL_PATTERNS[_0x3e40ff(0xfd)](_0x4eea47=>_0x4eea47[_0x3e40ff(0x11c)](_0x487e93)))throw CliErrors[_0x3e40ff(0x103)]('react_module\x20must\x20be\x20an\x20embeddable\x20React\x20module,\x20not\x20full\x20HTML\x20or\x20a\x20ReactDOM/createRoot\x20mount\x20entry.');validateAllowedImports(_0x487e93);}function buildArtifactInput(_0x23d3b3){const _0x5b7ab6=a10_0xe15a9b,_0x58216f=readSourceFile(_0x23d3b3[_0x5b7ab6(0xf6)](_0x5b7ab6(0x143))),_0x1e2b1d=_0x23d3b3['str'](_0x5b7ab6(0x124))['trim'](),_0x1f550a=parseMetadata(_0x23d3b3['str'](_0x5b7ab6(0xf1)));return{'artifactType':ARTIFACT_TYPE_REACT_MODULE,..._0x1e2b1d?{'name':_0x1e2b1d}:{},'content':_0x58216f,..._0x1f550a?{'metadata':_0x1f550a}:{},'source':ARTIFACT_SOURCE_AGENT};}function summarizeArtifact(_0x5c66ac){const _0x2e0eca=a10_0xe15a9b;return{'id':_0x5c66ac['id'],'name':_0x5c66ac[_0x2e0eca(0x124)],'artifactType':_0x5c66ac[_0x2e0eca(0x127)],'source':_0x5c66ac['source'],'favorite':_0x5c66ac[_0x2e0eca(0xf5)],'deleted':_0x5c66ac['deleted'],'createTime':_0x5c66ac[_0x2e0eca(0x137)],'updateTime':_0x5c66ac[_0x2e0eca(0x11a)]};}function detailArtifact(_0x1a46b7){const _0x55ed17=a10_0xe15a9b;return{'id':_0x1a46b7['id'],'appCode':_0x1a46b7[_0x55ed17(0x10b)],'name':_0x1a46b7['name'],'artifactType':_0x1a46b7[_0x55ed17(0x127)],'source':_0x1a46b7[_0x55ed17(0x12f)],'favorite':_0x1a46b7['favorite'],'deleted':_0x1a46b7['deleted'],'content':_0x1a46b7[_0x55ed17(0x12d)]??'','compiledContent':_0x1a46b7[_0x55ed17(0xf9)],'metadata':_0x1a46b7['metadata']??{},'createTime':_0x1a46b7['createTime'],'updateTime':_0x1a46b7[_0x55ed17(0x11a)]};}function readFavoriteFlag(_0x2b71de){const _0x186919=a10_0xe15a9b,_0x46bea1=_0x2b71de[_0x186919(0x129)](_0x186919(0xf5));return _0x46bea1===undefined||_0x46bea1===null||_0x46bea1===''?undefined:_0x2b71de[_0x186919(0x131)](_0x186919(0xf5));}const artifactList={'service':a10_0xe15a9b(0x136),'command':a10_0xe15a9b(0x110),'description':a10_0xe15a9b(0x13f),'risk':a10_0xe15a9b(0x142),'flags':[{'name':a10_0xe15a9b(0x12f),'type':a10_0xe15a9b(0x113),'description':a10_0xe15a9b(0x13a)},{'name':'favorite','type':a10_0xe15a9b(0x11d),'description':a10_0xe15a9b(0x10e)},VERBOSE_FLAG],async 'execute'(_0x52c0f3){const _0x3e87c1=a10_0xe15a9b,_0x155e15=await listRuntimeArtifacts(_0x52c0f3[_0x3e87c1(0x10b)],{'artifactType':ARTIFACT_TYPE_REACT_MODULE,..._0x52c0f3[_0x3e87c1(0xf6)]('source')?{'source':_0x52c0f3[_0x3e87c1(0xf6)](_0x3e87c1(0x12f))}:{},...readFavoriteFlag(_0x52c0f3)!==undefined?{'favorite':readFavoriteFlag(_0x52c0f3)}:{}});return{'ok':!![],'data':{'total':_0x155e15[_0x3e87c1(0x112)],'items':_0x52c0f3[_0x3e87c1(0x131)](_0x3e87c1(0x122))?_0x155e15:_0x155e15['map'](summarizeArtifact)}};}},artifactDetail={'service':a10_0xe15a9b(0x136),'command':a10_0xe15a9b(0x10a),'description':a10_0xe15a9b(0x118),'risk':a10_0xe15a9b(0x142),'flags':[{...ID_FLAG,'description':a10_0xe15a9b(0x108)}],async 'execute'(_0x4e3915){const _0x249c58=a10_0xe15a9b,_0x9f6575=await getRuntimeArtifact(_0x4e3915[_0x249c58(0x107)]('id'),_0x4e3915['appCode']);return{'ok':!![],'data':detailArtifact(_0x9f6575)};}},artifactCreate={'service':'artifact','command':a10_0xe15a9b(0x105),'description':a10_0xe15a9b(0x141),'risk':a10_0xe15a9b(0x10d),'flags':[FILE_FLAG,ARTIFACT_NAME_FLAG,METADATA_FLAG],async 'execute'(_0x365a14){const _0x16a74e=a10_0xe15a9b,_0x587829=buildArtifactInput(_0x365a14),_0xbf4b4=await createRuntimeArtifact(_0x365a14[_0x16a74e(0x10b)],_0x587829);return{'ok':!![],'data':detailArtifact(_0xbf4b4),'message':'Created\x20Artifact\x20'+_0xbf4b4['id']+(_0xbf4b4[_0x16a74e(0x124)]?'\x20('+_0xbf4b4[_0x16a74e(0x124)]+')':'')};},async 'dryRun'(_0x5b7f58){const _0x4462f4=a10_0xe15a9b,_0x5f23b6=buildArtifactInput(_0x5b7f58);return dryRun(_0x4462f4(0x130),_0x4462f4(0x13e))[_0x4462f4(0x114)]({'appCode':_0x5b7f58[_0x4462f4(0x10b)],..._0x5f23b6})[_0x4462f4(0x104)](_0x4462f4(0x11b))[_0x4462f4(0xf0)]();},'writeEventSubject'(_0x220b43){const _0x2c85bd=a10_0xe15a9b,_0x587e2b=_0x220b43[_0x2c85bd(0x12c)]?.['id'];if(typeof _0x587e2b!==_0x2c85bd(0x113)&&typeof _0x587e2b!==_0x2c85bd(0x135))return undefined;return{'kind':_0x2c85bd(0x136),'id':String(_0x587e2b),'action':_0x2c85bd(0x105)};}},artifactUpdate={'service':a10_0xe15a9b(0x136),'command':a10_0xe15a9b(0xff),'description':a10_0xe15a9b(0x109),'risk':a10_0xe15a9b(0x10d),'flags':[{...ID_FLAG,'description':a10_0xe15a9b(0x108)},FILE_FLAG,ARTIFACT_NAME_FLAG,METADATA_FLAG],async 'execute'(_0x655ed0){const _0x373529=a10_0xe15a9b,_0x4b3a89=_0x655ed0[_0x373529(0x107)]('id'),_0x47495e=buildArtifactInput(_0x655ed0),_0x50c739=await updateRuntimeArtifact(_0x4b3a89,_0x655ed0[_0x373529(0x10b)],_0x47495e);return{'ok':!![],'data':detailArtifact(_0x50c739),'message':_0x373529(0xf7)+_0x50c739['id']+(_0x50c739[_0x373529(0x124)]?'\x20('+_0x50c739[_0x373529(0x124)]+')':'')};},async 'dryRun'(_0x455979){const _0x4f44bf=a10_0xe15a9b,_0x13b483=_0x455979[_0x4f44bf(0x107)]('id'),_0x46a075=buildArtifactInput(_0x455979);return dryRun(_0x4f44bf(0x130),_0x4f44bf(0x132)+_0x13b483+_0x4f44bf(0x125))[_0x4f44bf(0x114)]({'appCode':_0x455979[_0x4f44bf(0x10b)],..._0x46a075})[_0x4f44bf(0x104)](_0x4f44bf(0x139)+_0x13b483)[_0x4f44bf(0xf0)]();},'writeEventSubject'(_0x9aa69b){const _0x7806d4=a10_0xe15a9b,_0x3a1452=_0x9aa69b['data']?.['id'];if(typeof _0x3a1452!==_0x7806d4(0x113)&&typeof _0x3a1452!=='number')return undefined;return{'kind':_0x7806d4(0x136),'id':String(_0x3a1452),'action':'update'};}};function a10_0x1473(){const _0x1f538a=['401352IaWbkj','number','artifact','createTime','28exSEaI','Preview:\x20update\x20react_module\x20Artifact\x20','Optional\x20source\x20filter,\x20for\x20example\x20AGENT','react-dom','parse','7yLWDQe','/client/artifact/create','List\x20current-app\x20react_module\x20Artifacts','react_module\x20imports\x20are\x20limited\x20to:\x20','Create\x20a\x20react_module\x20Artifact\x20from\x20a\x20local\x20source\x20file','read','file','209SOrNvS','292wOJPBT','build','metadata','11815531cUsSfE','object','20157cBRqry','favorite','str','Updated\x20Artifact\x20','isFile','compiledContent','18HLWSye','4812760HPIhsI','map','some','exec','update','1EXJEnG','includes','--metadata\x20must\x20be\x20a\x20JSON\x20object.','validation','description','create','react','num','Artifact\x20ID','Update\x20a\x20react_module\x20Artifact\x20from\x20a\x20local\x20source\x20file','detail','appCode','File\x20path\x20is\x20required.','write','Optional\x20favorite-state\x20filter','startsWith','list','2395AqRfDl','length','string','body','filter','File\x20is\x20not\x20a\x20regular\x20file:\x20','File\x20not\x20found:\x20','Show\x20one\x20Artifact\x20by\x20id','Artifact\x20display\x20name','updateTime','Preview:\x20create\x20react_module\x20Artifact','test','boolean','6906wCamJN','isArray','Invalid\x20JSON\x20for\x20--metadata:\x20','lodash','verbose','9106040GxgXYZ','name','/update','react_module','artifactType','split','flag','join','1214466ZNDCgi','data','content','@ant-design/icons','source','POST','bool','/client/artifact/','AGENT'];a10_0x1473=function(){return _0x1f538a;};return a10_0x1473();}export const artifactDefinitions=[artifactList,artifactDetail,artifactCreate,artifactUpdate];
@@ -1 +1 @@
1
- const a11_0x50c07c=a11_0x456b;(function(_0x49d648,_0x5e4c0c){const _0x5e67a9=a11_0x456b,_0x527a87=_0x49d648();while(!![]){try{const _0x4d01fd=-parseInt(_0x5e67a9(0x183))/0x1*(parseInt(_0x5e67a9(0x1ad))/0x2)+-parseInt(_0x5e67a9(0x185))/0x3*(parseInt(_0x5e67a9(0x1a5))/0x4)+parseInt(_0x5e67a9(0x1c5))/0x5*(parseInt(_0x5e67a9(0x1ae))/0x6)+parseInt(_0x5e67a9(0x182))/0x7*(-parseInt(_0x5e67a9(0x1a8))/0x8)+-parseInt(_0x5e67a9(0x1b9))/0x9+parseInt(_0x5e67a9(0x1bf))/0xa*(parseInt(_0x5e67a9(0x191))/0xb)+parseInt(_0x5e67a9(0x1bb))/0xc;if(_0x4d01fd===_0x5e4c0c)break;else _0x527a87['push'](_0x527a87['shift']());}catch(_0x8fce50){_0x527a87['push'](_0x527a87['shift']());}}}(a11_0x45a7,0x99227));import{existsSync,mkdirSync,readFileSync,unlinkSync,writeFileSync}from'node:fs';import{dirname}from'node:path';function a11_0x45a7(){const _0x1c8344=['source','lovrabet-cli','203SuSxNh','165229VjgfKe','expired','3685746SkMoFa','Invalid\x20access_key\x20returned\x20by\x20server.','createdAt','randomUUID','stderr','now','networkError','scope','padStart','bool','project','accessKey','11SfJDjH','Verify:\x20','Device\x20authorization\x20timed\x20out\x20after\x2010\x20minutes.\x20Run\x20`lovrabet\x20auth\x20device`\x20to\x20get\x20a\x20new\x20code.','object','string','url-only','Device\x20code\x20expired.\x20Run\x20`lovrabet\x20auth\x20device`\x20to\x20get\x20a\x20new\x20code.','/device-auth?code=','floor','Waiting\x20for\x20authorization\x20(timeout:\x2010\x20minutes,\x20Ctrl+C\x20to\x20cancel)...','removeListener','access_key','Invalid\x20device\x20auth\x20response','Write\x20to\x20global\x20config\x20(default)','\x0dWaiting\x20for\x20authorization...\x20','trim','global-default','data','status','log','4TySAOu','),\x20retrying...','Authorize\x20via\x20device\x20code\x20flow\x20(open\x20browser,\x20no\x20copy-paste)','187696pDaiQF','nonInteractive','\x20config.','Print\x20URL\x20to\x20stdout\x20and\x20exit\x20(for\x20WorkBuddy\x20integration)','Open\x20this\x20URL\x20in\x20your\x20browser\x20to\x20authorize:','10sidGNK','6MhxZan','name','&source=','auth','Device\x20auth\x20API\x20unreachable\x20after\x20multiple\x20retries.','global','signal','device','write','App\x20name\x20shown\x20on\x20authorization\x20page\x20(default:\x20lovrabet)','apiError','638658wSJYUd','\x20auth\x20device','35870148UIFQEz','aborted','Device\x20authorization\x20cancelled.','json','3073340RvuAmH','SIGINT','stringify','/.device-auth','code','success','684065SoREtQ','abort','getTime','boolean','After\x20authorizing,\x20re-run:\x20','validation','application/json','Device\x20authorization\x20URL\x20printed.\x20Complete\x20authorization\x20in\x20browser,\x20then\x20re-run.','POST','utf8','cancelled','Write\x20to\x20project\x20config'];a11_0x45a7=function(){return _0x1c8344;};return a11_0x45a7();}import{homedir}from'node:os';import{readScopedConfig,writeScopedConfig}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{PRODUCT_CONFIG}from'../../constant/product.js';import{getUserDomain}from'../../constant/domain.js';import{CliErrors}from'../../errors.js';import{resolveConfigScope,toScopeFlags}from'../../commands/common/config-policy.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';function resolveAuthScopeFlags(_0xb71945){const _0x1aee92=a11_0x456b;return toScopeFlags(resolveConfigScope({'explicitGlobal':_0xb71945[_0x1aee92(0x18e)](_0x1aee92(0x1b3)),'explicitProject':_0xb71945[_0x1aee92(0x18e)]('project'),'policy':_0x1aee92(0x1a1)}));}const ACCESS_KEY_PATTERN=/^ak_[A-Za-z0-9]{16,}$/,DEVICE_CODE_TTL_MS=0x927c0,POLL_INTERVAL_MS=0xbb8,MAX_POLLS=0xc8,MAX_CONSECUTIVE_NETWORK_ERRORS=0x5;export function generateDeviceCode(){const _0x7c9d27=a11_0x456b;return crypto[_0x7c9d27(0x188)]();}export function buildDeviceAuthUrl(_0x1a9b1f,_0x1d5a92,_0x1a4b1d=a11_0x50c07c(0x181)){const _0x1c2bb2=a11_0x50c07c;return _0x1a9b1f+_0x1c2bb2(0x198)+encodeURIComponent(_0x1d5a92)+_0x1c2bb2(0x1b0)+encodeURIComponent(_0x1a4b1d);}function a11_0x456b(_0x4c49a4,_0x1f6194){_0x4c49a4=_0x4c49a4-0x177;const _0x45a7cd=a11_0x45a7();let _0x456bbe=_0x45a7cd[_0x4c49a4];return _0x456bbe;}export function getDeviceCodePath(){const _0x3420e3=a11_0x50c07c;return homedir()+'/'+PRODUCT_CONFIG['homeDirName']+_0x3420e3(0x1c2);}export function readStoredDeviceCode(){const _0x342102=a11_0x50c07c,_0x56764d=getDeviceCodePath();if(!existsSync(_0x56764d))return null;try{const _0x175a54=readFileSync(_0x56764d,{'encoding':_0x342102(0x17d)}),_0x1f61b4=JSON['parse'](_0x175a54);if(_0x1f61b4&&typeof _0x1f61b4[_0x342102(0x1c3)]===_0x342102(0x195)&&typeof _0x1f61b4[_0x342102(0x187)]===_0x342102(0x195)&&(_0x1f61b4[_0x342102(0x18c)]===_0x342102(0x1b3)||_0x1f61b4['scope']===_0x342102(0x18f)))return _0x1f61b4;}catch{}return null;}export function writeStoredDeviceCode(_0x36fbd6,_0x1afba6){const _0x2871f5=a11_0x50c07c,_0xc8b0ff=getDeviceCodePath(),_0x196f21=dirname(_0xc8b0ff);!existsSync(_0x196f21)&&mkdirSync(_0x196f21,{'recursive':!![]});const _0x3d7c05={'code':_0x36fbd6,'createdAt':new Date()['toISOString'](),'scope':_0x1afba6};writeFileSync(_0xc8b0ff,JSON['stringify'](_0x3d7c05),{'encoding':_0x2871f5(0x17d),'mode':0x180});}export function deleteStoredDeviceCode(){const _0x382252=getDeviceCodePath();try{unlinkSync(_0x382252);}catch{}}export function isStoredDeviceCodeExpired(_0x265498){const _0x3461bc=a11_0x50c07c;return Date[_0x3461bc(0x18a)]()-new Date(_0x265498[_0x3461bc(0x187)])[_0x3461bc(0x1c7)]()>DEVICE_CODE_TTL_MS;}export async function fetchDeviceToken(_0x51ac9d,_0x43de47){const _0x344c12=a11_0x50c07c,_0x1882bf=_0x51ac9d+'/api/device-auth/token',_0x311969=new AbortController(),_0x33641e=setTimeout(()=>_0x311969[_0x344c12(0x1c6)](),0x2710),_0x5e33dc=await fetch(_0x1882bf,{'method':_0x344c12(0x17c),'headers':{'Content-Type':_0x344c12(0x17a)},'body':JSON[_0x344c12(0x1c1)]({'code':_0x43de47}),'signal':_0x311969[_0x344c12(0x1b4)]});clearTimeout(_0x33641e);if(!_0x5e33dc['ok'])throw CliErrors['networkError']('Device\x20auth\x20API\x20returned\x20HTTP\x20'+_0x5e33dc[_0x344c12(0x1a3)]);const _0xf7938b=await _0x5e33dc[_0x344c12(0x1be)](),_0x36e36e=_0xf7938b['data']&&typeof _0xf7938b[_0x344c12(0x1a2)]===_0x344c12(0x194)?_0xf7938b['data']:_0xf7938b;if(!_0x36e36e||typeof _0x36e36e[_0x344c12(0x1a3)]!==_0x344c12(0x195))throw CliErrors['apiError'](_0x344c12(0x19d));return{'status':_0x36e36e['status'],'access_key':typeof _0x36e36e[_0x344c12(0x19c)]===_0x344c12(0x195)?_0x36e36e[_0x344c12(0x19c)]:undefined};}export async function pollDeviceToken(_0x495e61,_0x24156f,_0x69b12d){const _0xc9c662=a11_0x50c07c;let _0x2422d8=0x0;for(let _0x3ab806=0x0;_0x3ab806<MAX_POLLS;_0x3ab806++){if(_0x69b12d[_0xc9c662(0x1bc)])throw CliErrors[_0xc9c662(0x17e)](_0xc9c662(0x1bd));let _0x55fb5a;try{_0x55fb5a=await fetchDeviceToken(_0x495e61,_0x24156f);}catch(_0x4627ed){if(_0x4627ed instanceof Error&&_0x4627ed[_0xc9c662(0x1af)]==='AbortError')throw CliErrors[_0xc9c662(0x17e)](_0xc9c662(0x1bd));_0x2422d8++;if(_0x2422d8>=MAX_CONSECUTIVE_NETWORK_ERRORS)throw CliErrors[_0xc9c662(0x18b)](_0xc9c662(0x1b2));writeCliSideChannelLine('Device\x20auth\x20API\x20error\x20('+_0x2422d8+'/'+MAX_CONSECUTIVE_NETWORK_ERRORS+_0xc9c662(0x1a6)),await sleep(POLL_INTERVAL_MS);continue;}_0x2422d8=0x0;if(_0x55fb5a['status']===_0xc9c662(0x1c4)){if(!_0x55fb5a['access_key'])throw CliErrors[_0xc9c662(0x1b8)](_0xc9c662(0x186));return _0x55fb5a[_0xc9c662(0x19c)];}if(_0x55fb5a[_0xc9c662(0x1a3)]===_0xc9c662(0x184)){deleteStoredDeviceCode();throw CliErrors['validation'](_0xc9c662(0x197));}const _0x17a0db=(_0x3ab806+0x1)*POLL_INTERVAL_MS,_0x2864d2=DEVICE_CODE_TTL_MS-_0x17a0db,_0x12f408=Math[_0xc9c662(0x199)](_0x2864d2/0xea60),_0x4695e1=Math[_0xc9c662(0x199)](_0x2864d2%0xea60/0x3e8);process[_0xc9c662(0x189)][_0xc9c662(0x1b6)](_0xc9c662(0x19f)+_0x12f408+':'+String(_0x4695e1)[_0xc9c662(0x18d)](0x2,'0')+'\x20remaining'),await sleep(POLL_INTERVAL_MS);}deleteStoredDeviceCode();throw CliErrors[_0xc9c662(0x179)](_0xc9c662(0x193));}function sleep(_0x13d2ed){return new Promise(_0x34b59f=>setTimeout(_0x34b59f,_0x13d2ed));}export const authDeviceDefinition={'service':a11_0x50c07c(0x1b1),'command':a11_0x50c07c(0x1b5),'description':a11_0x50c07c(0x1a7),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':'global','type':a11_0x50c07c(0x177),'description':a11_0x50c07c(0x19e),'default':!![]},{'name':'project','type':'boolean','description':a11_0x50c07c(0x17f),'default':![]},{'name':'source','type':a11_0x50c07c(0x195),'description':a11_0x50c07c(0x1b7),'default':a11_0x50c07c(0x181)},{'name':a11_0x50c07c(0x196),'type':a11_0x50c07c(0x177),'description':a11_0x50c07c(0x1ab),'default':![]}],async 'execute'(_0x25d117){const _0xb07415=a11_0x50c07c,_0x280eba=resolveAuthScopeFlags(_0x25d117),_0x4ce595=_0x280eba['global']?_0xb07415(0x1b3):_0xb07415(0x18f),_0x45b59a=readScopedConfig(_0x280eba);if(_0x45b59a[_0xb07415(0x190)])return{'ok':!![],'message':'Already\x20authorized.\x20Use\x20`lovrabet\x20auth\x20status`\x20to\x20verify.'};const _0x16b797=(_0x25d117['str'](_0xb07415(0x180))||'lovrabet-cli')[_0xb07415(0x1a0)](),_0x14bbdd=getUserDomain(),_0x5f2474=readStoredDeviceCode(),_0x5edc55=_0x5f2474&&!isStoredDeviceCodeExpired(_0x5f2474)?_0x5f2474['code']:((()=>{const _0x3cd9ea=generateDeviceCode();return writeStoredDeviceCode(_0x3cd9ea,_0x4ce595),_0x3cd9ea;})()),_0x1254a0=buildDeviceAuthUrl(_0x14bbdd,_0x5edc55,_0x16b797);if(_0x25d117[_0xb07415(0x18e)]('url-only'))return console[_0xb07415(0x1a4)](_0x1254a0),{'ok':!![]};writeCliSideChannelLine(_0xb07415(0x1ac)),writeCliSideChannelLine(''),writeCliSideChannelLine(_0x1254a0),writeCliSideChannelLine(''),writeCliSideChannelLine('The\x20device\x20code\x20is\x20valid\x20for\x2010\x20minutes.');if(_0x25d117[_0xb07415(0x1a9)])return writeCliSideChannelLine(_0xb07415(0x178)+CLI_BIN_NAME+_0xb07415(0x1ba)),{'ok':!![],'message':_0xb07415(0x17b)};writeCliSideChannelLine(_0xb07415(0x19a));const _0x1a4fb6=new AbortController(),_0x22ffdb=()=>{const _0x486f09=_0xb07415;_0x1a4fb6[_0x486f09(0x1c6)](),process['removeListener'](_0x486f09(0x1c0),_0x22ffdb);};process['once']('SIGINT',_0x22ffdb);let _0x443463;try{_0x443463=await pollDeviceToken(_0x14bbdd,_0x5edc55,_0x1a4fb6[_0xb07415(0x1b4)]);}finally{process[_0xb07415(0x19b)](_0xb07415(0x1c0),_0x22ffdb);}if(!ACCESS_KEY_PATTERN['test'](_0x443463))throw CliErrors[_0xb07415(0x1b8)](_0xb07415(0x186));const _0x40e4e8=readScopedConfig(_0x280eba);return _0x40e4e8['accessKey']=_0x443463,writeScopedConfig(_0x40e4e8,_0x280eba),deleteStoredDeviceCode(),process[_0xb07415(0x189)][_0xb07415(0x1b6)]('\x0a'),writeCliSideChannelLine('AccessKey\x20saved\x20to\x20'+_0x4ce595+_0xb07415(0x1aa)),writeCliSideChannelLine(_0xb07415(0x192)+CLI_BIN_NAME+'\x20auth\x20status'),{'ok':!![],'message':'Device\x20authorization\x20successful.'};}};
1
+ const a11_0x560a90=a11_0x2052;(function(_0x853cba,_0x573004){const _0x1de039=a11_0x2052,_0x5b915c=_0x853cba();while(!![]){try{const _0x44786a=-parseInt(_0x1de039(0x18a))/0x1+parseInt(_0x1de039(0x16f))/0x2*(parseInt(_0x1de039(0x1a1))/0x3)+-parseInt(_0x1de039(0x1b5))/0x4*(parseInt(_0x1de039(0x188))/0x5)+-parseInt(_0x1de039(0x19e))/0x6*(-parseInt(_0x1de039(0x1b4))/0x7)+-parseInt(_0x1de039(0x17b))/0x8*(parseInt(_0x1de039(0x16c))/0x9)+-parseInt(_0x1de039(0x176))/0xa+-parseInt(_0x1de039(0x1a0))/0xb*(-parseInt(_0x1de039(0x1a5))/0xc);if(_0x44786a===_0x573004)break;else _0x5b915c['push'](_0x5b915c['shift']());}catch(_0x2d7e33){_0x5b915c['push'](_0x5b915c['shift']());}}}(a11_0x4f20,0x4ee08));import{existsSync,mkdirSync,readFileSync,unlinkSync,writeFileSync}from'node:fs';import{dirname}from'node:path';import{homedir}from'node:os';import{readScopedConfig,writeScopedConfig}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{PRODUCT_CONFIG}from'../../constant/product.js';import{getUserDomain}from'../../constant/domain.js';import{CliErrors}from'../../errors.js';import{resolveConfigScope,toScopeFlags}from'../../commands/common/config-policy.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';function resolveAuthScopeFlags(_0x269688){const _0x5d33ab=a11_0x2052;return toScopeFlags(resolveConfigScope({'explicitGlobal':_0x269688[_0x5d33ab(0x1a7)]('global'),'explicitProject':_0x269688[_0x5d33ab(0x1a7)]('project'),'policy':_0x5d33ab(0x174)}));}const ACCESS_KEY_PATTERN=/^ak_[A-Za-z0-9]{16,}$/,DEVICE_CODE_TTL_MS=0x927c0,POLL_INTERVAL_MS=0xbb8,MAX_POLLS=0xc8,MAX_CONSECUTIVE_NETWORK_ERRORS=0x5;export function generateDeviceCode(){return crypto['randomUUID']();}export function buildDeviceAuthUrl(_0x38290c,_0x5dbfcd,_0x229552=a11_0x560a90(0x1bc)){const _0x4bbee0=a11_0x560a90;return _0x38290c+'/device-auth?code='+encodeURIComponent(_0x5dbfcd)+_0x4bbee0(0x179)+encodeURIComponent(_0x229552);}export function getDeviceCodePath(){const _0x5adb8f=a11_0x560a90;return homedir()+'/'+PRODUCT_CONFIG['homeDirName']+_0x5adb8f(0x195);}export function readStoredDeviceCode(){const _0x50a910=a11_0x560a90,_0x5b3190=getDeviceCodePath();if(!existsSync(_0x5b3190))return null;try{const _0x122300=readFileSync(_0x5b3190,{'encoding':_0x50a910(0x17e)}),_0x5ed9ce=JSON['parse'](_0x122300);if(_0x5ed9ce&&typeof _0x5ed9ce[_0x50a910(0x184)]===_0x50a910(0x1af)&&typeof _0x5ed9ce['createdAt']===_0x50a910(0x1af)&&(_0x5ed9ce['scope']==='global'||_0x5ed9ce[_0x50a910(0x1be)]===_0x50a910(0x1a6)))return _0x5ed9ce;}catch{}return null;}function a11_0x4f20(){const _0x269ae0=['application/json','url-only','\x0dWaiting\x20for\x20authorization...\x20','global-default','object','169970FYPsPi','cancelled','accessKey','&source=','name','17624GJWLsX','auth','Device\x20code\x20expired.\x20Run\x20`lovrabet\x20auth\x20device`\x20to\x20get\x20a\x20new\x20code.','utf8','\x20remaining','abort','removeListener','Invalid\x20device\x20auth\x20response','Device\x20auth\x20API\x20error\x20(','code','Device\x20authorization\x20URL\x20printed.\x20Complete\x20authorization\x20in\x20browser,\x20then\x20re-run.','Already\x20authorized.\x20Use\x20`lovrabet\x20auth\x20status`\x20to\x20verify.','trim','906220cWYgQQ','Waiting\x20for\x20authorization\x20(timeout:\x2010\x20minutes,\x20Ctrl+C\x20to\x20cancel)...','496813cIplzW','data','validation','apiError','aborted','Invalid\x20access_key\x20returned\x20by\x20server.','success','stderr','status','test','Write\x20to\x20global\x20config\x20(default)','/.device-auth','Print\x20URL\x20to\x20stdout\x20and\x20exit\x20(for\x20WorkBuddy\x20integration)','Verify:\x20','SIGINT','device','Device\x20authorization\x20timed\x20out\x20after\x2010\x20minutes.\x20Run\x20`lovrabet\x20auth\x20device`\x20to\x20get\x20a\x20new\x20code.','Device\x20authorization\x20cancelled.','networkError','getTime','47616HHPoTG','Authorize\x20via\x20device\x20code\x20flow\x20(open\x20browser,\x20no\x20copy-paste)','610159UXwzNE','39681DxkiRR','Device\x20auth\x20API\x20unreachable\x20after\x20multiple\x20retries.','expired','signal','132PaudwG','project','bool','now','log','App\x20name\x20shown\x20on\x20authorization\x20page\x20(default:\x20lovrabet)','toISOString','createdAt','Write\x20to\x20project\x20config','\x20config.','string','\x20auth\x20status','),\x20retrying...','After\x20authorizing,\x20re-run:\x20','\x20auth\x20device','105vdBpdW','4DEPOdH','/api/device-auth/token','global','padStart','once','boolean','write','lovrabet-cli','floor','scope','access_key','Open\x20this\x20URL\x20in\x20your\x20browser\x20to\x20authorize:','str','873wERnQv','source','nonInteractive','76XevjQr','stringify'];a11_0x4f20=function(){return _0x269ae0;};return a11_0x4f20();}export function writeStoredDeviceCode(_0xd87169,_0x36b3f3){const _0x1e237d=a11_0x560a90,_0x2d296b=getDeviceCodePath(),_0x1fc565=dirname(_0x2d296b);!existsSync(_0x1fc565)&&mkdirSync(_0x1fc565,{'recursive':!![]});const _0x583f0c={'code':_0xd87169,'createdAt':new Date()[_0x1e237d(0x1ab)](),'scope':_0x36b3f3};writeFileSync(_0x2d296b,JSON[_0x1e237d(0x170)](_0x583f0c),{'encoding':'utf8','mode':0x180});}export function deleteStoredDeviceCode(){const _0x142be9=getDeviceCodePath();try{unlinkSync(_0x142be9);}catch{}}export function isStoredDeviceCodeExpired(_0x2c02f4){const _0x409ba3=a11_0x560a90;return Date[_0x409ba3(0x1a8)]()-new Date(_0x2c02f4[_0x409ba3(0x1ac)])[_0x409ba3(0x19d)]()>DEVICE_CODE_TTL_MS;}export async function fetchDeviceToken(_0x10a3b4,_0x379aa0){const _0x214021=a11_0x560a90,_0x573a1d=_0x10a3b4+_0x214021(0x1b6),_0xe695cc=new AbortController(),_0x39b121=setTimeout(()=>_0xe695cc[_0x214021(0x180)](),0x2710),_0x54d42e=await fetch(_0x573a1d,{'method':'POST','headers':{'Content-Type':_0x214021(0x171)},'body':JSON[_0x214021(0x170)]({'code':_0x379aa0}),'signal':_0xe695cc[_0x214021(0x1a4)]});clearTimeout(_0x39b121);if(!_0x54d42e['ok'])throw CliErrors[_0x214021(0x19c)]('Device\x20auth\x20API\x20returned\x20HTTP\x20'+_0x54d42e[_0x214021(0x192)]);const _0x11aa79=await _0x54d42e['json'](),_0xece35c=_0x11aa79[_0x214021(0x18b)]&&typeof _0x11aa79[_0x214021(0x18b)]===_0x214021(0x175)?_0x11aa79[_0x214021(0x18b)]:_0x11aa79;if(!_0xece35c||typeof _0xece35c['status']!==_0x214021(0x1af))throw CliErrors[_0x214021(0x18d)](_0x214021(0x182));return{'status':_0xece35c['status'],'access_key':typeof _0xece35c[_0x214021(0x1bf)]==='string'?_0xece35c[_0x214021(0x1bf)]:undefined};}export async function pollDeviceToken(_0x45ab6d,_0xf311b0,_0x3ce5e2){const _0x3ed586=a11_0x560a90;let _0x2d9ef4=0x0;for(let _0x575d6f=0x0;_0x575d6f<MAX_POLLS;_0x575d6f++){if(_0x3ce5e2[_0x3ed586(0x18e)])throw CliErrors[_0x3ed586(0x177)](_0x3ed586(0x19b));let _0xe28e6d;try{_0xe28e6d=await fetchDeviceToken(_0x45ab6d,_0xf311b0);}catch(_0x4fb410){if(_0x4fb410 instanceof Error&&_0x4fb410[_0x3ed586(0x17a)]==='AbortError')throw CliErrors[_0x3ed586(0x177)](_0x3ed586(0x19b));_0x2d9ef4++;if(_0x2d9ef4>=MAX_CONSECUTIVE_NETWORK_ERRORS)throw CliErrors[_0x3ed586(0x19c)](_0x3ed586(0x1a2));writeCliSideChannelLine(_0x3ed586(0x183)+_0x2d9ef4+'/'+MAX_CONSECUTIVE_NETWORK_ERRORS+_0x3ed586(0x1b1)),await sleep(POLL_INTERVAL_MS);continue;}_0x2d9ef4=0x0;if(_0xe28e6d[_0x3ed586(0x192)]===_0x3ed586(0x190)){if(!_0xe28e6d[_0x3ed586(0x1bf)])throw CliErrors['apiError']('Invalid\x20access_key\x20returned\x20by\x20server.');return _0xe28e6d[_0x3ed586(0x1bf)];}if(_0xe28e6d['status']===_0x3ed586(0x1a3)){deleteStoredDeviceCode();throw CliErrors['validation'](_0x3ed586(0x17d));}const _0x2ad3f1=(_0x575d6f+0x1)*POLL_INTERVAL_MS,_0x2e4d2e=DEVICE_CODE_TTL_MS-_0x2ad3f1,_0x36efe8=Math[_0x3ed586(0x1bd)](_0x2e4d2e/0xea60),_0x3eb07d=Math[_0x3ed586(0x1bd)](_0x2e4d2e%0xea60/0x3e8);process[_0x3ed586(0x191)]['write'](_0x3ed586(0x173)+_0x36efe8+':'+String(_0x3eb07d)[_0x3ed586(0x1b8)](0x2,'0')+_0x3ed586(0x17f)),await sleep(POLL_INTERVAL_MS);}deleteStoredDeviceCode();throw CliErrors[_0x3ed586(0x18c)](_0x3ed586(0x19a));}function sleep(_0x2e0c6e){return new Promise(_0x180ac3=>setTimeout(_0x180ac3,_0x2e0c6e));}function a11_0x2052(_0x165e5c,_0x14b181){_0x165e5c=_0x165e5c-0x16b;const _0x4f202f=a11_0x4f20();let _0x205269=_0x4f202f[_0x165e5c];return _0x205269;}export const authDeviceDefinition={'service':a11_0x560a90(0x17c),'command':a11_0x560a90(0x199),'description':a11_0x560a90(0x19f),'risk':a11_0x560a90(0x1bb),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a11_0x560a90(0x1b7),'type':'boolean','description':a11_0x560a90(0x194),'default':!![]},{'name':'project','type':a11_0x560a90(0x1ba),'description':a11_0x560a90(0x1ad),'default':![]},{'name':a11_0x560a90(0x16d),'type':a11_0x560a90(0x1af),'description':a11_0x560a90(0x1aa),'default':a11_0x560a90(0x1bc)},{'name':a11_0x560a90(0x172),'type':'boolean','description':a11_0x560a90(0x196),'default':![]}],async 'execute'(_0x1da036){const _0x2596e0=a11_0x560a90,_0x463426=resolveAuthScopeFlags(_0x1da036),_0x94b62b=_0x463426[_0x2596e0(0x1b7)]?_0x2596e0(0x1b7):_0x2596e0(0x1a6),_0x92e5e=readScopedConfig(_0x463426);if(_0x92e5e[_0x2596e0(0x178)])return{'ok':!![],'message':_0x2596e0(0x186)};const _0x1a5bef=(_0x1da036[_0x2596e0(0x16b)](_0x2596e0(0x16d))||'lovrabet-cli')[_0x2596e0(0x187)](),_0x56e77e=getUserDomain(),_0x4566f9=readStoredDeviceCode(),_0x283c12=_0x4566f9&&!isStoredDeviceCodeExpired(_0x4566f9)?_0x4566f9[_0x2596e0(0x184)]:((()=>{const _0x523f82=generateDeviceCode();return writeStoredDeviceCode(_0x523f82,_0x94b62b),_0x523f82;})()),_0xacf1e0=buildDeviceAuthUrl(_0x56e77e,_0x283c12,_0x1a5bef);if(_0x1da036['bool'](_0x2596e0(0x172)))return console[_0x2596e0(0x1a9)](_0xacf1e0),{'ok':!![]};writeCliSideChannelLine(_0x2596e0(0x1c0)),writeCliSideChannelLine(''),writeCliSideChannelLine(_0xacf1e0),writeCliSideChannelLine(''),writeCliSideChannelLine('The\x20device\x20code\x20is\x20valid\x20for\x2010\x20minutes.');if(_0x1da036[_0x2596e0(0x16e)])return writeCliSideChannelLine(_0x2596e0(0x1b2)+CLI_BIN_NAME+_0x2596e0(0x1b3)),{'ok':!![],'message':_0x2596e0(0x185)};writeCliSideChannelLine(_0x2596e0(0x189));const _0x9b2903=new AbortController(),_0xfcb67=()=>{const _0x2bdf4a=_0x2596e0;_0x9b2903[_0x2bdf4a(0x180)](),process[_0x2bdf4a(0x181)](_0x2bdf4a(0x198),_0xfcb67);};process[_0x2596e0(0x1b9)](_0x2596e0(0x198),_0xfcb67);let _0x438897;try{_0x438897=await pollDeviceToken(_0x56e77e,_0x283c12,_0x9b2903[_0x2596e0(0x1a4)]);}finally{process['removeListener']('SIGINT',_0xfcb67);}if(!ACCESS_KEY_PATTERN[_0x2596e0(0x193)](_0x438897))throw CliErrors[_0x2596e0(0x18d)](_0x2596e0(0x18f));const _0x25dd16=readScopedConfig(_0x463426);return _0x25dd16[_0x2596e0(0x178)]=_0x438897,writeScopedConfig(_0x25dd16,_0x463426),deleteStoredDeviceCode(),process[_0x2596e0(0x191)][_0x2596e0(0x1bb)]('\x0a'),writeCliSideChannelLine('AccessKey\x20saved\x20to\x20'+_0x94b62b+_0x2596e0(0x1ae)),writeCliSideChannelLine(_0x2596e0(0x197)+CLI_BIN_NAME+_0x2596e0(0x1b0)),{'ok':!![],'message':'Device\x20authorization\x20successful.'};}};