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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (119) hide show
  1. package/NOTICE +5 -0
  2. package/README.md +156 -0
  3. package/lib/cli.js +1 -1
  4. package/lib/commands/api-doc/index.js +1 -1
  5. package/lib/commands/app/cache.js +1 -1
  6. package/lib/commands/app/definitions.js +1 -1
  7. package/lib/commands/app/eligibility.js +1 -1
  8. package/lib/commands/app/mock-loader.js +1 -1
  9. package/lib/commands/app/remote-source.js +1 -1
  10. package/lib/commands/app/shared.js +1 -1
  11. package/lib/commands/app-config/get.js +1 -1
  12. package/lib/commands/app-config/index.js +1 -1
  13. package/lib/commands/app-config/shared.js +1 -1
  14. package/lib/commands/artifact/index.js +1 -1
  15. package/lib/commands/auth/index.js +1 -1
  16. package/lib/commands/auth/prompt.js +1 -1
  17. package/lib/commands/bff/detail.js +1 -1
  18. package/lib/commands/bff/exec.js +1 -1
  19. package/lib/commands/bff/index.js +1 -1
  20. package/lib/commands/cli-skill/index.js +1 -1
  21. package/lib/commands/common/config-policy.js +1 -1
  22. package/lib/commands/common/constraints.js +1 -1
  23. package/lib/commands/common/flags.js +1 -1
  24. package/lib/commands/common/local-file.js +1 -1
  25. package/lib/commands/config/definitions.js +1 -1
  26. package/lib/commands/config/shared.js +1 -1
  27. package/lib/commands/data/index.js +1 -1
  28. package/lib/commands/dataset/detail.js +1 -1
  29. package/lib/commands/dataset/index.js +1 -1
  30. package/lib/commands/dataset/list.js +1 -1
  31. package/lib/commands/dataset/sdk-doc.js +1 -1
  32. package/lib/commands/doctor.js +1 -1
  33. package/lib/commands/file/index.js +1 -1
  34. package/lib/commands/init.js +1 -1
  35. package/lib/commands/kb/index.js +1 -1
  36. package/lib/commands/logs/index.js +1 -1
  37. package/lib/commands/ocr/index.js +1 -1
  38. package/lib/commands/personal-bff/index.js +1 -1
  39. package/lib/commands/registry.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/index.js +1 -1
  43. package/lib/commands/service/registry.js +1 -1
  44. package/lib/commands/skill/commands/create.js +1 -1
  45. package/lib/commands/skill/commands/install.js +1 -1
  46. package/lib/commands/skill/commands/list.js +1 -1
  47. package/lib/commands/skill/commands/push.js +1 -1
  48. package/lib/commands/skill/commands/validate.js +1 -1
  49. package/lib/commands/skill/flags.js +1 -1
  50. package/lib/commands/skill/index.js +1 -1
  51. package/lib/commands/skill/manifest-helpers.js +1 -1
  52. package/lib/commands/skill/push-execute.js +1 -1
  53. package/lib/commands/skill/push-flow-helpers.js +1 -1
  54. package/lib/commands/skill/push-retarget.js +1 -1
  55. package/lib/commands/skill/scopes.js +1 -1
  56. package/lib/commands/skill/summary.js +1 -1
  57. package/lib/commands/skill/templates.js +1 -1
  58. package/lib/commands/skill/validate.js +1 -1
  59. package/lib/commands/sql/detail.js +1 -1
  60. package/lib/commands/sql/exec.js +1 -1
  61. package/lib/commands/sql/index.js +1 -1
  62. package/lib/commands/update.js +1 -1
  63. package/lib/commands/workspace/index.js +1 -1
  64. package/lib/config/schema.js +1 -1
  65. package/lib/constant/app.js +1 -1
  66. package/lib/constant/auth-mode.js +1 -1
  67. package/lib/constant/cli.js +1 -1
  68. package/lib/constant/defaults.js +1 -1
  69. package/lib/constant/distribution.js +1 -1
  70. package/lib/constant/domain.js +1 -1
  71. package/lib/constant/env.js +1 -1
  72. package/lib/constant/output.js +1 -1
  73. package/lib/constant/product.js +1 -1
  74. package/lib/constant/risk.js +1 -1
  75. package/lib/constant/url.js +1 -1
  76. package/lib/context.js +1 -1
  77. package/lib/core/api-client.js +1 -1
  78. package/lib/core/db-resolver.js +1 -1
  79. package/lib/core/sdk-client.js +1 -1
  80. package/lib/errors.js +1 -1
  81. package/lib/framework/build-all-flags.js +1 -1
  82. package/lib/framework/dryrun.js +1 -1
  83. package/lib/framework/flags.js +1 -1
  84. package/lib/framework/help.js +1 -1
  85. package/lib/framework/index.js +1 -1
  86. package/lib/framework/output.js +1 -1
  87. package/lib/framework/preparse.js +1 -1
  88. package/lib/framework/response.js +1 -1
  89. package/lib/framework/runner-confirmation.js +1 -1
  90. package/lib/framework/runner-error.js +1 -1
  91. package/lib/framework/runner.js +1 -1
  92. package/lib/framework/schema-export.js +1 -1
  93. package/lib/framework/service-order.js +1 -1
  94. package/lib/framework/types.js +1 -1
  95. package/lib/generated/build-info.js +1 -1
  96. package/lib/help.js +1 -1
  97. package/lib/skills/npx-skills-add.js +1 -1
  98. package/lib/skills/runtime-skill-sync/constants.js +1 -1
  99. package/lib/skills/runtime-skill-sync/fs-utils.js +1 -1
  100. package/lib/skills/runtime-skill-sync/hashing.js +1 -1
  101. package/lib/skills/runtime-skill-sync/links.js +1 -1
  102. package/lib/skills/runtime-skill-sync/list-local.js +1 -1
  103. package/lib/skills/runtime-skill-sync/local-files.js +1 -1
  104. package/lib/skills/runtime-skill-sync/materialize.js +1 -1
  105. package/lib/skills/runtime-skill-sync/metadata.js +1 -1
  106. package/lib/skills/runtime-skill-sync/paths.js +1 -1
  107. package/lib/skills/runtime-skill-sync/push.js +1 -1
  108. package/lib/skills/runtime-skill-sync/scopes.js +1 -1
  109. package/lib/skills/runtime-skill-sync/zip-codec.js +1 -1
  110. package/lib/skills/runtime-skill-sync/zip-package.js +1 -1
  111. package/lib/skills/runtime-skill-sync.js +1 -1
  112. package/lib/utils/apply-jq-filter.js +1 -1
  113. package/lib/utils/logger.js +1 -1
  114. package/lib/utils/params.js +1 -1
  115. package/lib/utils/platform.js +1 -1
  116. package/lib/utils/update-notice.js +1 -1
  117. package/lib/utils/version.js +1 -1
  118. package/lib/utils/write-cli-side-channel.js +1 -1
  119. package/package.json +18 -2
package/NOTICE ADDED
@@ -0,0 +1,5 @@
1
+ Lovrabet CLI
2
+ Copyright 2026 Lovrabet Team
3
+
4
+ This product includes software developed by the Lovrabet Team.
5
+ Project home: https://github.com/lovrabet/lovrabet-cli
package/README.md ADDED
@@ -0,0 +1,156 @@
1
+ # Lovrabet CLI
2
+
3
+ Lovrabet CLI is the runtime command-line interface for Lovrabet applications. It
4
+ helps developers, delivery teams, operators, and AI agents work with published
5
+ apps, datasets, records, SQL queries, BFF scripts, files, OCR, knowledge bases,
6
+ artifacts, and runtime Skills from a stable terminal surface.
7
+
8
+ The CLI is designed for runtime operations: discover the right app, inspect data
9
+ contracts, query real records, execute approved runtime capabilities, and turn
10
+ repeatable workflows into agent-ready Skills.
11
+
12
+ ## Requirements
13
+
14
+ - Node.js 20 or later
15
+ - A Lovrabet account with access to the target runtime app
16
+ - A User Access Key for authenticated commands
17
+
18
+ ## Install
19
+
20
+ ```bash
21
+ npm install -g @lovrabet/lovrabet-cli@latest
22
+ lovrabet --version
23
+ lovrabet --help
24
+ ```
25
+
26
+ You can also run a specific version with npm tooling:
27
+
28
+ ```bash
29
+ npx @lovrabet/lovrabet-cli@latest --help
30
+ ```
31
+
32
+ ## Quick Start
33
+
34
+ Authenticate first:
35
+
36
+ ```bash
37
+ lovrabet auth login
38
+ lovrabet auth info --format compress
39
+ ```
40
+
41
+ For non-interactive environments, pass an Access Key explicitly:
42
+
43
+ ```bash
44
+ lovrabet auth login --access-key <ACCESS_KEY>
45
+ ```
46
+
47
+ List available runtime apps:
48
+
49
+ ```bash
50
+ lovrabet app list
51
+ ```
52
+
53
+ Bind the current workspace to an app, or pass `--app` / `--appcode` on each
54
+ command:
55
+
56
+ ```bash
57
+ lovrabet workspace init --app <app-name>
58
+ lovrabet workspace init --appcode <app-code>
59
+ ```
60
+
61
+ Discover a dataset and inspect its contract before querying records:
62
+
63
+ ```bash
64
+ lovrabet dataset list --name customer
65
+ lovrabet dataset detail --code <dataset-code>
66
+ lovrabet data filter --code <dataset-code> --params '{"currentPage":1,"pageSize":20}'
67
+ ```
68
+
69
+ Use `--format pretty` for human-readable output and `--format json` or
70
+ `--format compress` for scripts and agents.
71
+
72
+ ## AI Agent Skill
73
+
74
+ If your coding environment supports the `skills` CLI, install the Lovrabet CLI
75
+ Built-in Skill so the agent can follow the correct app resolution, dataset
76
+ inspection, data query, and risk-control workflow:
77
+
78
+ ```bash
79
+ lovrabet cli-skill install
80
+ ```
81
+
82
+ Equivalent direct installation:
83
+
84
+ ```bash
85
+ npx skills add lovrabet/lovrabet-cli -g -y
86
+ ```
87
+
88
+ After selecting an app, install app-specific business Skills when available:
89
+
90
+ ```bash
91
+ lovrabet skill install
92
+ lovrabet skill install --scope personal
93
+ lovrabet skill install --scope company
94
+ ```
95
+
96
+ ## Common Commands
97
+
98
+ | Area | Commands |
99
+ | --- | --- |
100
+ | Authentication | `lovrabet auth login`, `lovrabet auth info`, `lovrabet auth logout` |
101
+ | App and workspace | `lovrabet app list`, `lovrabet workspace init`, `lovrabet workspace use` |
102
+ | Dataset discovery | `lovrabet dataset list`, `lovrabet dataset detail`, `lovrabet dataset sdk-doc` |
103
+ | Data operations | `lovrabet data filter`, `lovrabet data getOne`, `lovrabet data create`, `lovrabet data update`, `lovrabet data delete`, `lovrabet data aggregate` |
104
+ | SQL and BFF | `lovrabet sql detail`, `lovrabet sql exec`, `lovrabet bff detail`, `lovrabet bff exec` |
105
+ | Personal assets | `lovrabet personal-bff list`, `lovrabet artifact list`, `lovrabet kb list` |
106
+ | Runtime files and OCR | `lovrabet file upload`, `lovrabet file query-url`, `lovrabet ocr recognize` |
107
+ | Skills | `lovrabet cli-skill install`, `lovrabet skill install`, `lovrabet skill create`, `lovrabet skill validate`, `lovrabet skill push` |
108
+ | Diagnostics | `lovrabet doctor`, `lovrabet schema`, `lovrabet logs show`, `lovrabet update` |
109
+
110
+ Run command-level help for flags and prerequisites:
111
+
112
+ ```bash
113
+ lovrabet <service> --help
114
+ lovrabet <service> <command> --help
115
+ ```
116
+
117
+ ## Output and Automation
118
+
119
+ Global options are available across commands:
120
+
121
+ ```bash
122
+ lovrabet dataset list --format json
123
+ lovrabet data filter --code <dataset-code> --params '{"currentPage":1,"pageSize":10}' --jq '.data'
124
+ lovrabet data update --code <dataset-code> --params '{"id":1,"status":"done"}' --dry-run
125
+ ```
126
+
127
+ Important options:
128
+
129
+ - `--app <name>`: select an app profile by name
130
+ - `--appcode <code>`: override the target app code
131
+ - `--env production|development|daily`: choose the target environment
132
+ - `--format json|pretty|compress`: choose output format
133
+ - `--jq <expr>`: filter JSON output
134
+ - `--dry-run`: preview supported write operations
135
+ - `--yes`: skip confirmation for high-risk writes
136
+ - `--non-interactive`: force CI-friendly behavior
137
+
138
+ ## Safety Notes
139
+
140
+ - Inspect dataset contracts with `dataset detail` before writing records.
141
+ - Prefer read commands before write commands when diagnosing data issues.
142
+ - Use `--dry-run` where supported before create, update, delete, artifact,
143
+ personal BFF, or Skill operations.
144
+ - Use `--yes` only when the target app, dataset, parameters, and impact are
145
+ already verified.
146
+ - Do not commit Access Keys, generated credentials, or local user config files.
147
+
148
+ ## Documentation
149
+
150
+ - Website: <https://www.lovrabet.com>
151
+ - Developer documentation: <https://open.lovrabet.com/>
152
+ - CLI help: `lovrabet --help`
153
+
154
+ ## License
155
+
156
+ Licensed under Apache-2.0. See `LICENSE` and `NOTICE` for details.
package/lib/cli.js CHANGED
@@ -1,2 +1,2 @@
1
1
  #!/usr/bin/env node
2
- const a0_0x582230=a0_0x378f;(function(_0x3e9047,_0x5742dc){const _0x47773f=a0_0x378f,_0xcdc9e7=_0x3e9047();while(!![]){try{const _0x29ba79=-parseInt(_0x47773f(0x1ee))/0x1+parseInt(_0x47773f(0x1ea))/0x2+-parseInt(_0x47773f(0x1e6))/0x3*(parseInt(_0x47773f(0x1e2))/0x4)+parseInt(_0x47773f(0x1e7))/0x5+parseInt(_0x47773f(0x1d3))/0x6+-parseInt(_0x47773f(0x1ef))/0x7*(-parseInt(_0x47773f(0x1ec))/0x8)+-parseInt(_0x47773f(0x1e8))/0x9;if(_0x29ba79===_0x5742dc)break;else _0xcdc9e7['push'](_0xcdc9e7['shift']());}catch(_0x5aee49){_0xcdc9e7['push'](_0xcdc9e7['shift']());}}}(a0_0x4182,0x2c10f));import{jsx as a0_0x2bd191}from'react/jsx-runtime';import a0_0x539073 from'meow';import{render}from'ink';import{Help}from'./help.js';import{CliError,CliErrors}from'./errors.js';import{buildConfigFromFlags,initGlobalEnvironment}from'./context.js';function a0_0x4182(){const _0x71ddc8=['handler','flags','exit','write','corrected',':\x20--','Unexpected\x20error:','assign','definition','1564260wEcyTu','name','[preparse]\x20','slice','log','input','./framework/preparse.js','stderr','error','hint','args','defaultCommand','ExitPromptError','exitCode','length','4syOtqW','catch','ERR_USE_AFTER_CLOSE','code','249846ifIoOq','1052280YdCdJR','1915398UbbnIF','\x0aCancelled.\x0a','53080ICTSdO','\x20->\x20--','16nogzXp','unknownCommand','214001XcTDED','675129Nqbkks','help'];a0_0x4182=function(){return _0x71ddc8;};return a0_0x4182();}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_0x539073(helpText,{'importMeta':import.meta,'flags':buildMeowFlags(),'version':getCliVersionDisplay()});void main()[a0_0x582230(0x1e3)](handleError);async function main(){try{await run();}catch(_0x218a78){handleError(_0x218a78);}}async function run(){const _0x11169c=a0_0x582230;let _0x24df54=cli['input'][0x0],_0x2ac264=cli[_0x11169c(0x1d8)][0x1];const _0x1c0d93=cli['flags'];try{const {correctFlags:_0x1293ed}=await import(_0x11169c(0x1d9)),_0x3d5120=getAllDefinitions()['flatMap'](_0x15e80e=>_0x15e80e['flags']??[]),{flags:_0x562d58,corrections:_0x4f30e3}=_0x1293ed(_0x1c0d93,_0x3d5120);if(_0x4f30e3[_0x11169c(0x1e1)]>0x0){for(const _0xcc2ff2 of _0x4f30e3){process[_0x11169c(0x1da)][_0x11169c(0x1cd)](_0x11169c(0x1d5)+_0xcc2ff2[_0x11169c(0x1f1)]+_0x11169c(0x1cf)+_0xcc2ff2['original']+_0x11169c(0x1eb)+_0xcc2ff2[_0x11169c(0x1ce)]+'\x0a');}Object[_0x11169c(0x1d1)](_0x1c0d93,_0x562d58);}}catch{}if(!_0x24df54){const {waitUntilExit:_0x3c5af}=render(a0_0x2bd191(Help,{}));await _0x3c5af();return;}if(!isKnownService(_0x24df54)){const _0x25ac81=resolveDynamicServiceCommand(cli[_0x11169c(0x1d8)],_0x1c0d93);if(_0x25ac81){if(_0x1c0d93[_0x11169c(0x1f0)]){console[_0x11169c(0x1d7)](generateCommandHelp(_0x25ac81[_0x11169c(0x1d2)]));return;}Object[_0x11169c(0x1d1)](_0x1c0d93,_0x25ac81[_0x11169c(0x1f2)]);const _0x17890e=buildConfigFromFlags(_0x1c0d93);await initGlobalEnvironment(_0x17890e);const _0x5cc81e=createPipelineEnv(_0x17890e,_0x1c0d93);_0x5cc81e[_0x11169c(0x1dd)]=_0x25ac81[_0x11169c(0x1dd)],await runCommand(_0x25ac81[_0x11169c(0x1d2)],_0x5cc81e);return;}if(_0x1c0d93[_0x11169c(0x1f0)]){const _0xce8991=generateDynamicServiceHelp(_0x24df54);if(_0xce8991){console['log'](_0xce8991);return;}}const {waitUntilExit:_0x29fd18}=render(a0_0x2bd191(Help,{}));await _0x29fd18();return;}const _0x400a93=getServiceEntry(_0x24df54);if(!_0x2ac264){if(_0x1c0d93[_0x11169c(0x1f0)]){console['log'](generateServiceHelp(_0x24df54));return;}if(_0x400a93[_0x11169c(0x1de)])_0x2ac264=_0x400a93[_0x11169c(0x1de)];else{console[_0x11169c(0x1d7)](generateServiceHelp(_0x24df54));return;}}const _0x548d18=findDefinition(_0x24df54,_0x2ac264);!_0x548d18&&(console['log'](generateServiceHelp(_0x24df54)),handleError(CliErrors[_0x11169c(0x1ed)](_0x24df54+'\x20'+_0x2ac264)));if(_0x1c0d93[_0x11169c(0x1f0)]){console['log'](generateCommandHelp(_0x548d18));return;}const _0x292095=buildConfigFromFlags(_0x1c0d93);await initGlobalEnvironment(_0x292095);const _0x9bcf01=createPipelineEnv(_0x292095,_0x1c0d93);_0x9bcf01[_0x11169c(0x1dd)]=cli[_0x11169c(0x1d8)][_0x11169c(0x1d6)](0x2),await runCommand(_0x548d18,_0x9bcf01);}function handleError(_0x5a287a){const _0x3d3d2f=a0_0x582230;if(_0x5a287a instanceof CliError){_0x5a287a['code']==='cancelled'&&(process[_0x3d3d2f(0x1da)][_0x3d3d2f(0x1cd)](_0x3d3d2f(0x1e9)),process[_0x3d3d2f(0x1cc)](0x0));console['error']('Error:\x20'+_0x5a287a['message']);if(_0x5a287a[_0x3d3d2f(0x1dc)])console[_0x3d3d2f(0x1db)]('Hint:\x20'+_0x5a287a[_0x3d3d2f(0x1dc)]);process['exit'](_0x5a287a[_0x3d3d2f(0x1e0)]);}isUserCancellation(_0x5a287a)&&(process[_0x3d3d2f(0x1da)][_0x3d3d2f(0x1cd)](_0x3d3d2f(0x1e9)),process['exit'](0x0)),console[_0x3d3d2f(0x1db)](_0x3d3d2f(0x1d0),_0x5a287a),process[_0x3d3d2f(0x1cc)](0x1);}function a0_0x378f(_0x4ed4df,_0x2cee25){_0x4ed4df=_0x4ed4df-0x1cc;const _0x4182ed=a0_0x4182();let _0x378f75=_0x4182ed[_0x4ed4df];return _0x378f75;}function isUserCancellation(_0x2270d0){const _0x270b92=a0_0x582230;if(!(_0x2270d0 instanceof Error))return![];if(_0x2270d0[_0x270b92(0x1d4)]===_0x270b92(0x1df))return!![];if(_0x2270d0[_0x270b92(0x1e5)]===_0x270b92(0x1e4))return!![];if(_0x2270d0['code']==='ERR_STREAM_DESTROYED')return!![];return![];}
2
+ const a0_0x49fef4=a0_0x2a84;(function(_0x29aa0d,_0xc83115){const _0x4e032f=a0_0x2a84,_0x516006=_0x29aa0d();while(!![]){try{const _0x487262=parseInt(_0x4e032f(0x97))/0x1+-parseInt(_0x4e032f(0x88))/0x2+parseInt(_0x4e032f(0x8e))/0x3+parseInt(_0x4e032f(0x93))/0x4+parseInt(_0x4e032f(0x7c))/0x5+parseInt(_0x4e032f(0x9e))/0x6+-parseInt(_0x4e032f(0x8b))/0x7;if(_0x487262===_0xc83115)break;else _0x516006['push'](_0x516006['shift']());}catch(_0x2a5943){_0x516006['push'](_0x516006['shift']());}}}(a0_0x28b5,0x86a9e));function a0_0x2a84(_0x3eef4c,_0x3dd23c){_0x3eef4c=_0x3eef4c-0x7c;const _0x28b59f=a0_0x28b5();let _0x2a84cb=_0x28b59f[_0x3eef4c];return _0x2a84cb;}import{jsx as a0_0x15bf29}from'react/jsx-runtime';import a0_0x3d9436 from'meow';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';function a0_0x28b5(){const _0x3a0119=['2144211lNtaJn','write','ERR_STREAM_DESTROYED','unknownCommand','ERR_USE_AFTER_CLOSE','1886224vwGuDV','definition','exitCode','code','884952ZCPQZU','stderr','flags','input','Unexpected\x20error:','ExitPromptError','args','348540CpmQDz','slice','log','\x20->\x20--','hint','catch','3507735VBilyz','Hint:\x20','error','handler','cancelled','corrected','exit','assign','./framework/preparse.js','help','[preparse]\x20','flatMap','202182BbbIuS','length','message','15247463skMEmk','\x0aCancelled.\x0a','defaultCommand'];a0_0x28b5=function(){return _0x3a0119;};return a0_0x28b5();}import{buildMeowFlags}from'./constant/cli.js';import{getCliVersionDisplay}from'./utils/version.js';const helpText=generateFullHelp(),cli=a0_0x3d9436(helpText,{'importMeta':import.meta,'flags':buildMeowFlags(),'version':getCliVersionDisplay()});void main()[a0_0x49fef4(0xa3)](handleError);async function main(){try{await run();}catch(_0x5f1a6e){handleError(_0x5f1a6e);}}async function run(){const _0x4af414=a0_0x49fef4;let _0x4300d4=cli[_0x4af414(0x9a)][0x0],_0x17a535=cli[_0x4af414(0x9a)][0x1];const _0x279cc0=cli[_0x4af414(0x99)];try{const {correctFlags:_0x37c30e}=await import(_0x4af414(0x84)),_0x1e4a56=getAllDefinitions()[_0x4af414(0x87)](_0x33f2c8=>_0x33f2c8[_0x4af414(0x99)]??[]),{flags:_0x134f2a,corrections:_0xf3b958}=_0x37c30e(_0x279cc0,_0x1e4a56);if(_0xf3b958[_0x4af414(0x89)]>0x0){for(const _0x4d355c of _0xf3b958){process[_0x4af414(0x98)]['write'](_0x4af414(0x86)+_0x4d355c[_0x4af414(0x7f)]+':\x20--'+_0x4d355c['original']+_0x4af414(0xa1)+_0x4d355c[_0x4af414(0x81)]+'\x0a');}Object['assign'](_0x279cc0,_0x134f2a);}}catch{}if(!_0x4300d4){const {waitUntilExit:_0x5414d4}=render(a0_0x15bf29(Help,{}));await _0x5414d4();return;}if(!isKnownService(_0x4300d4)){const _0x508d01=resolveDynamicServiceCommand(cli[_0x4af414(0x9a)],_0x279cc0);if(_0x508d01){if(_0x279cc0['help']){console[_0x4af414(0xa0)](generateCommandHelp(_0x508d01[_0x4af414(0x94)]));return;}Object[_0x4af414(0x83)](_0x279cc0,_0x508d01[_0x4af414(0x99)]);const _0x1c58ef=buildConfigFromFlags(_0x279cc0);await initGlobalEnvironment(_0x1c58ef);const _0x39a95e=createPipelineEnv(_0x1c58ef,_0x279cc0);_0x39a95e['args']=_0x508d01['args'],await runCommand(_0x508d01[_0x4af414(0x94)],_0x39a95e);return;}if(_0x279cc0[_0x4af414(0x85)]){const _0x4c4007=generateDynamicServiceHelp(_0x4300d4);if(_0x4c4007){console[_0x4af414(0xa0)](_0x4c4007);return;}}const {waitUntilExit:_0xb69b84}=render(a0_0x15bf29(Help,{}));await _0xb69b84();return;}const _0x432465=getServiceEntry(_0x4300d4);if(!_0x17a535){if(_0x279cc0['help']){console[_0x4af414(0xa0)](generateServiceHelp(_0x4300d4));return;}if(_0x432465[_0x4af414(0x8d)])_0x17a535=_0x432465['defaultCommand'];else{console['log'](generateServiceHelp(_0x4300d4));return;}}const _0xe13126=findDefinition(_0x4300d4,_0x17a535);!_0xe13126&&(console[_0x4af414(0xa0)](generateServiceHelp(_0x4300d4)),handleError(CliErrors[_0x4af414(0x91)](_0x4300d4+'\x20'+_0x17a535)));if(_0x279cc0[_0x4af414(0x85)]){console[_0x4af414(0xa0)](generateCommandHelp(_0xe13126));return;}const _0x5a3225=buildConfigFromFlags(_0x279cc0);await initGlobalEnvironment(_0x5a3225);const _0x2ede5c=createPipelineEnv(_0x5a3225,_0x279cc0);_0x2ede5c[_0x4af414(0x9d)]=cli[_0x4af414(0x9a)][_0x4af414(0x9f)](0x2),await runCommand(_0xe13126,_0x2ede5c);}function handleError(_0x1d8448){const _0x2c386e=a0_0x49fef4;if(_0x1d8448 instanceof CliError){_0x1d8448[_0x2c386e(0x96)]===_0x2c386e(0x80)&&(process[_0x2c386e(0x98)][_0x2c386e(0x8f)](_0x2c386e(0x8c)),process['exit'](0x0));console[_0x2c386e(0x7e)]('Error:\x20'+_0x1d8448[_0x2c386e(0x8a)]);if(_0x1d8448[_0x2c386e(0xa2)])console[_0x2c386e(0x7e)](_0x2c386e(0x7d)+_0x1d8448[_0x2c386e(0xa2)]);process['exit'](_0x1d8448[_0x2c386e(0x95)]);}isUserCancellation(_0x1d8448)&&(process[_0x2c386e(0x98)]['write'](_0x2c386e(0x8c)),process[_0x2c386e(0x82)](0x0)),console[_0x2c386e(0x7e)](_0x2c386e(0x9b),_0x1d8448),process[_0x2c386e(0x82)](0x1);}function isUserCancellation(_0x87853e){const _0x3bcf6c=a0_0x49fef4;if(!(_0x87853e instanceof Error))return![];if(_0x87853e['name']===_0x3bcf6c(0x9c))return!![];if(_0x87853e[_0x3bcf6c(0x96)]===_0x3bcf6c(0x92))return!![];if(_0x87853e[_0x3bcf6c(0x96)]===_0x3bcf6c(0x90))return!![];return![];}
@@ -1 +1 @@
1
- function a1_0x4125(_0x1a04ab,_0x25b3ab){_0x1a04ab=_0x1a04ab-0x7b;const _0x49dbb0=a1_0x49db();let _0x4125e2=_0x49dbb0[_0x1a04ab];return _0x4125e2;}const a1_0x14ac1c=a1_0x4125;function a1_0x49db(){const _0xa54ac1=['detail','whenToUse','Execute\x20custom\x20SQL','##\x20Aggregate\x20dataset\x20data','dataset_data_aggregate','dataset_detail','dataset','Prefer\x20`filter`\x20when\x20the\x20record\x20id\x20is\x20unknown.','fields/properties\x20describe\x20data\x20shape','keyword','bf_execute','string','lovrabet\x20data\x20filter\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22currentPage\x22:1,\x22pageSize\x22:5}\x27','##\x20Execute\x20BF\x20endpoint\x20function\x0a\x0aExecute\x20a\x20known\x20endpoint\x20script.','聚合查询数据集数据','Aggregate\x20dataset\x20data','str','lovrabet\x20bff\x20detail\x20--id\x20<scriptId>\x20--appcode\x20<appCode>','Search\x20docs\x20by\x20code,\x20summary,\x20path,\x20or\x20usage\x20text','Use\x20`where`,\x20`select`,\x20`orderBy`,\x20`currentPage`,\x20and\x20`pageSize`\x20to\x20inspect\x20live\x20data\x20shape.','已经确认目标\x20BF\x20的\x20scriptName,且需要实际调用该\x20ENDPOINT\x20脚本完成业务操作时使用','CLI\x20users\x20should\x20prefer\x20`lovrabet\x20dataset\x20list`\x20for\x20this\x20workflow.','Use\x20`having`\x20only\x20for\x20post-aggregation\x20filters.','Use\x20read-only\x20data\x20commands\x20before\x20writing\x20Artifacts\x20that\x20display\x20real\x20data.','POST','Use\x20`lovrabet\x20sql\x20detail`\x20before\x20execution.','This\x20is\x20a\x20write\x20operation;\x20use\x20dry-run\x20when\x20available\x20and\x20safe\x20fixtures\x20for\x20smoke\x20tests.','category','{\x22where\x22:{},\x22currentPage\x22:1,\x22pageSize\x22:20}','/api/{appCode}/{datasetCode}/filter','paging.totalCount\x20gives\x20total\x20rows','dataset_data_filter','lovrabet\x20bff\x20exec\x20--name\x20<functionName>\x20--params\x20\x27{}\x27','List\x20BF\x20endpoint\x20functions','Current\x20app\x20code','Endpoint\x20function\x20name','Show\x20runtime\x20API\x20documentation\x20by\x20code','{\x22fieldName\x22:\x22value\x22}','查询单条数据','custom_sql','tableData\x20contains\x20records','638182fUGAno','map','join','##\x20Filter\x20dataset\x20data','Returns\x20the\x20created\x20record\x20or\x20backend\x20operation\x20result','4786635VudPTw','List\x20datasets','toLowerCase','Returns\x20SQL\x20execution\x20payload','datasetCode','/api/dataset/get-dataset-list-by-app-code','filter','lovrabet\x20sql\x20exec\x20--sqlcode\x20<sqlCode>\x20--params\x20\x27{}\x27','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','paging\x20contains\x20pagination','Create\x20dataset\x20record','operations\x20describes\x20runtime\x20APIs','API\x20doc\x20code,\x20for\x20example\x20dataset_list','code','需要按数据集\x20code\x20获取字段、表信息、关联关系(relations)或操作定义时使用','需要先确认当前应用有哪些可执行的\x20BF/ENDPOINT\x20函数,以及收敛可用\x20scriptName\x20时使用','需要按\x20appCode\x20分页获取运行态数据集列表,并优先收敛可用\x20datasetCode\x20时使用','/api/{appCode}/{datasetCode}/aggregate','{\x22aggregate\x22:[{\x22column\x22:\x20\x22id\x22,\x22type\x22:\x22COUNT\x22,\x22alias\x22:\x22cnt\x22}],\x22groupBy\x22:[]}','lovrabet\x20dataset\x20list\x20--appcode\x20<appCode>\x20--format\x20compress','CLI\x20has\x20typed\x20`bff\x20detail`\x20and\x20`bff\x20exec`\x20commands\x20for\x20endpoint\x20scripts.','255sWUAUn','`field`\x20is\x20accepted\x20as\x20a\x20deprecated\x20alias\x20for\x20`column`;\x20new\x20calls\x20should\x20use\x20`column`.','custom_sql_execute','GET','List\x20available\x20runtime\x20API\x20documentation\x20entries','Get\x20one\x20dataset\x20record','lovrabet\x20data\x20create\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22name\x22:\x22demo\x22}\x27','已经知道记录\x20id,需要按数据集读取单条业务数据时使用','title','18ZFgsiM','api-doc','/api/endpoint/{appCode}/functions','read','164742tPlEVd','##\x20List\x20datasets','appCode','/api/{appCode}/{datasetCode}/getOne','bf_function_list','910084TAqmNc','488654sbEIZb','执行指定\x20BF\x20函数','##\x20Dataset\x20detail','32-character\x20dataset\x20code','8536700VLQWiA','Inspect\x20field\x20names,\x20relations,\x20and\x20operation\x20metadata\x20for\x20a\x20known\x20dataset\x20code.','scriptName','需要按\x20groupBy\x20分组并做\x20count、sum、avg、max、min\x20等聚合统计时使用','If\x20SDK\x20usage\x20is\x20needed,\x20follow\x20with\x20`lovrabet\x20dataset\x20sdk-doc\x20--code\x20<datasetCode>`.','dataset_data_get_one','344IGJuWP','Use\x20this\x20API\x20or\x20`lovrabet\x20dataset\x20list`\x20to\x20discover\x20available\x20dataset\x20codes\x20before\x20reading\x20data.','294795yMmQWm','已经确认目标\x20sqlCode\x20存在,并需要实际执行该自定义\x20SQL\x20时使用','path','分页获取数据集列表','Aggregate\x20supports\x20COUNT,\x20SUM,\x20AVG,\x20MAX,\x20and\x20MIN\x20definitions\x20in\x20the\x20`aggregate`\x20array.','validation','method','summary','Execute\x20BF\x20endpoint\x20function','dataset_data_create','trim','Returns\x20endpoint\x20functionName/id/description','relations\x20contains\x20the\x20object-shaped\x20API\x20relations\x20value\x20when\x20returned','/api/dataset/getOneByCode?code={datasetCode}','/api/endpoint/{appCode}/{scriptName}','find','需要携带\x20where、orderBy、分页等条件读取业务数据时使用'];a1_0x49db=function(){return _0xa54ac1;};return a1_0x49db();}(function(_0x174ff0,_0x4f9368){const _0x5714f4=a1_0x4125,_0x8bee6b=_0x174ff0();while(!![]){try{const _0x346009=parseInt(_0x5714f4(0x9c))/0x1+-parseInt(_0x5714f4(0xc9))/0x2*(-parseInt(_0x5714f4(0xbf))/0x3)+parseInt(_0x5714f4(0xc8))/0x4+parseInt(_0x5714f4(0xb6))/0x5*(parseInt(_0x5714f4(0xc3))/0x6)+-parseInt(_0x5714f4(0xa1))/0x7+parseInt(_0x5714f4(0xd3))/0x8*(-parseInt(_0x5714f4(0xd5))/0x9)+-parseInt(_0x5714f4(0xcd))/0xa;if(_0x346009===_0x4f9368)break;else _0x8bee6b['push'](_0x8bee6b['shift']());}catch(_0x29a00e){_0x8bee6b['push'](_0x8bee6b['shift']());}}}(a1_0x49db,0xbfe70));import{CliErrors}from'../../errors.js';const CATEGORY_FLAG={'name':a1_0x14ac1c(0x8e),'type':a1_0x14ac1c(0x7e),'description':'Filter\x20docs\x20by\x20category,\x20for\x20example\x20dataset'},KEYWORD_FLAG={'name':a1_0x14ac1c(0x7c),'type':'string','description':a1_0x14ac1c(0x85)},DOC_CODE_FLAG={'name':a1_0x14ac1c(0xae),'type':a1_0x14ac1c(0x7e),'required':!![],'description':a1_0x14ac1c(0xad)},DOCS=[{'code':'dataset_list','category':'dataset','title':a1_0x14ac1c(0xa2),'method':a1_0x14ac1c(0x8b),'path':a1_0x14ac1c(0xa6),'summary':a1_0x14ac1c(0xd8),'whenToUse':a1_0x14ac1c(0xb1),'pathParams':[],'queryParams':[],'bodySchema':'{\x22appCode\x22:\x22app-aa63b188\x22,\x22currentPage\x22:1,\x22pageSize\x22:100}','responseHighlights':['tableData\x20contains\x20dataset\x20id/code/name',a1_0x14ac1c(0x91)],'examples':[a1_0x14ac1c(0xb4)],'notes':[a1_0x14ac1c(0x88)],'markdown':[a1_0x14ac1c(0xc4),'',a1_0x14ac1c(0xd4)]['join']('\x0a')},{'code':a1_0x14ac1c(0xeb),'category':a1_0x14ac1c(0xec),'title':'Dataset\x20detail','method':a1_0x14ac1c(0xb9),'path':a1_0x14ac1c(0xe2),'summary':'获取数据集详情','whenToUse':a1_0x14ac1c(0xaf),'pathParams':[],'queryParams':[{'name':a1_0x14ac1c(0xae),'description':a1_0x14ac1c(0xcc)}],'bodySchema':'None','responseHighlights':[a1_0x14ac1c(0x7b),a1_0x14ac1c(0xe1),a1_0x14ac1c(0xac)],'examples':['lovrabet\x20dataset\x20detail\x20--code\x20<datasetCode>\x20--appcode\x20<appCode>'],'notes':[a1_0x14ac1c(0xd1)],'markdown':[a1_0x14ac1c(0xcb),'',a1_0x14ac1c(0xce)][a1_0x14ac1c(0x9e)]('\x0a')},{'code':a1_0x14ac1c(0x92),'category':a1_0x14ac1c(0xec),'title':'Filter\x20dataset\x20data','method':a1_0x14ac1c(0x8b),'path':a1_0x14ac1c(0x90),'summary':'条件过滤查询数据','whenToUse':a1_0x14ac1c(0xe5),'pathParams':[{'name':a1_0x14ac1c(0xc5),'description':'Current\x20app\x20code'},{'name':a1_0x14ac1c(0xa5),'description':a1_0x14ac1c(0xcc)}],'queryParams':[],'bodySchema':a1_0x14ac1c(0x8f),'responseHighlights':[a1_0x14ac1c(0x9b),a1_0x14ac1c(0xaa)],'examples':[a1_0x14ac1c(0x7f)],'notes':[a1_0x14ac1c(0x8a)],'markdown':[a1_0x14ac1c(0x9f),'',a1_0x14ac1c(0x86)]['join']('\x0a')},{'code':a1_0x14ac1c(0xea),'category':'dataset','title':a1_0x14ac1c(0x82),'method':a1_0x14ac1c(0x8b),'path':a1_0x14ac1c(0xb2),'summary':a1_0x14ac1c(0x81),'whenToUse':a1_0x14ac1c(0xd0),'pathParams':[{'name':a1_0x14ac1c(0xc5),'description':a1_0x14ac1c(0x95)},{'name':a1_0x14ac1c(0xa5),'description':a1_0x14ac1c(0xcc)}],'queryParams':[],'bodySchema':a1_0x14ac1c(0xb3),'responseHighlights':['result\x20rows\x20contain\x20aggregate\x20aliases','where\x20filters\x20before\x20aggregation'],'examples':[a1_0x14ac1c(0xa9)],'notes':[a1_0x14ac1c(0x89),a1_0x14ac1c(0xb7)],'markdown':[a1_0x14ac1c(0xe9),'',a1_0x14ac1c(0xd9)][a1_0x14ac1c(0x9e)]('\x0a')},{'code':a1_0x14ac1c(0xd2),'category':a1_0x14ac1c(0xec),'title':a1_0x14ac1c(0xbb),'method':a1_0x14ac1c(0x8b),'path':a1_0x14ac1c(0xc6),'summary':a1_0x14ac1c(0x99),'whenToUse':a1_0x14ac1c(0xbd),'pathParams':[{'name':a1_0x14ac1c(0xc5),'description':a1_0x14ac1c(0x95)},{'name':a1_0x14ac1c(0xa5),'description':a1_0x14ac1c(0xcc)}],'queryParams':[],'bodySchema':'{\x22id\x22:123}','responseHighlights':['Returns\x20one\x20matching\x20business\x20record'],'examples':['lovrabet\x20data\x20getOne\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22id\x22:123}\x27'],'notes':[a1_0x14ac1c(0xed)],'markdown':'##\x20Get\x20one\x20dataset\x20record\x0a\x0aRead\x20one\x20record\x20by\x20id.'},{'code':a1_0x14ac1c(0xde),'category':a1_0x14ac1c(0xec),'title':a1_0x14ac1c(0xab),'method':'POST','path':'/api/{appCode}/{datasetCode}/create','summary':'创建数据','whenToUse':'需要向指定数据集新增一条业务数据时使用','pathParams':[{'name':a1_0x14ac1c(0xc5),'description':a1_0x14ac1c(0x95)},{'name':'datasetCode','description':a1_0x14ac1c(0xcc)}],'queryParams':[],'bodySchema':a1_0x14ac1c(0x98),'responseHighlights':[a1_0x14ac1c(0xa0)],'examples':[a1_0x14ac1c(0xbc)],'notes':[a1_0x14ac1c(0x8d)],'markdown':'##\x20Create\x20dataset\x20record\x0a\x0aCreate\x20one\x20data\x20record\x20in\x20a\x20dataset.'},{'code':a1_0x14ac1c(0xc7),'category':'bf','title':a1_0x14ac1c(0x94),'method':a1_0x14ac1c(0xb9),'path':a1_0x14ac1c(0xc1),'summary':'获取应用下可调用的\x20BF\x20函数列表','whenToUse':a1_0x14ac1c(0xb0),'pathParams':[{'name':a1_0x14ac1c(0xc5),'description':a1_0x14ac1c(0x95)}],'queryParams':[],'bodySchema':'None','responseHighlights':[a1_0x14ac1c(0xe0)],'examples':[a1_0x14ac1c(0x84)],'notes':[a1_0x14ac1c(0xb5)],'markdown':'##\x20List\x20BF\x20endpoint\x20functions\x0a\x0aDiscover\x20executable\x20endpoint\x20functions.'},{'code':a1_0x14ac1c(0x7d),'category':'bf','title':a1_0x14ac1c(0xdd),'method':a1_0x14ac1c(0x8b),'path':a1_0x14ac1c(0xe3),'summary':a1_0x14ac1c(0xca),'whenToUse':a1_0x14ac1c(0x87),'pathParams':[{'name':'appCode','description':'Current\x20app\x20code'},{'name':a1_0x14ac1c(0xcf),'description':a1_0x14ac1c(0x96)}],'queryParams':[],'bodySchema':'{\x22param\x22:\x22value\x22}','responseHighlights':['Returns\x20script\x20business\x20payload'],'examples':[a1_0x14ac1c(0x93)],'notes':['Script\x20behavior\x20may\x20have\x20side\x20effects;\x20inspect\x20detail\x20first.'],'markdown':a1_0x14ac1c(0x80)},{'code':a1_0x14ac1c(0xb8),'category':a1_0x14ac1c(0x9a),'title':a1_0x14ac1c(0xe8),'method':'POST','path':'/api/custom/executeSql','summary':'执行自定义\x20SQL','whenToUse':a1_0x14ac1c(0xd6),'pathParams':[],'queryParams':[],'bodySchema':'{\x22appCode\x22:\x22app-aa63b188\x22,\x22sqlCode\x22:\x22xxxxxxxx-xxxxxxxx\x22,\x22params\x22:{}}','responseHighlights':[a1_0x14ac1c(0xa4)],'examples':[a1_0x14ac1c(0xa8)],'notes':[a1_0x14ac1c(0x8c)],'markdown':'##\x20Execute\x20custom\x20SQL\x0a\x0aExecute\x20a\x20configured\x20SQL\x20script\x20by\x20sqlCode.'}];function entrySummary(_0x5030cf){const _0x35bb16=a1_0x14ac1c;return{'code':_0x5030cf['code'],'category':_0x5030cf['category'],'method':_0x5030cf[_0x35bb16(0xdb)],'path':_0x5030cf['path'],'summary':_0x5030cf[_0x35bb16(0xdc)],'whenToUse':_0x5030cf[_0x35bb16(0xe7)]};}export function listApiDocEntries(_0x5e1fd4={}){const _0xeab310=a1_0x14ac1c,_0xeb1323=String(_0x5e1fd4[_0xeab310(0x8e)]||'')[_0xeab310(0xdf)](),_0x9aef0b=String(_0x5e1fd4[_0xeab310(0x7c)]||'')[_0xeab310(0xdf)]()[_0xeab310(0xa3)]();return DOCS[_0xeab310(0xa7)](_0x2502c7=>{const _0xdf3506=_0xeab310;if(_0xeb1323&&_0x2502c7[_0xdf3506(0x8e)]!==_0xeb1323)return![];if(!_0x9aef0b)return!![];return[_0x2502c7[_0xdf3506(0xae)],_0x2502c7['category'],_0x2502c7[_0xdf3506(0xdb)],_0x2502c7[_0xdf3506(0xd7)],_0x2502c7[_0xdf3506(0xdc)],_0x2502c7[_0xdf3506(0xe7)],_0x2502c7[_0xdf3506(0xbe)]][_0xdf3506(0x9e)]('\x20')[_0xdf3506(0xa3)]()['includes'](_0x9aef0b);})[_0xeab310(0x9d)](entrySummary);}export function getApiDocDetail(_0x1027b5){const _0x8f4cd7=a1_0x14ac1c,_0x523307=DOCS[_0x8f4cd7(0xe4)](_0x2740d1=>_0x2740d1[_0x8f4cd7(0xae)]===_0x1027b5);if(!_0x523307)throw CliErrors[_0x8f4cd7(0xda)]('API\x20doc\x20code\x20not\x20found:\x20'+_0x1027b5);return{..._0x523307};}const apiDocList={'service':a1_0x14ac1c(0xc0),'command':'list','description':a1_0x14ac1c(0xba),'risk':a1_0x14ac1c(0xc2),'requiresAppCode':![],'flags':[CATEGORY_FLAG,KEYWORD_FLAG],async 'execute'(_0x21863f){const _0x1a1bee=a1_0x14ac1c,_0x465c3b=listApiDocEntries({'category':_0x21863f[_0x1a1bee(0x83)](_0x1a1bee(0x8e)),'keyword':_0x21863f[_0x1a1bee(0x83)](_0x1a1bee(0x7c))});return{'ok':!![],'data':{'total':_0x465c3b['length'],'items':_0x465c3b}};}},apiDocDetail={'service':a1_0x14ac1c(0xc0),'command':a1_0x14ac1c(0xe6),'description':a1_0x14ac1c(0x97),'risk':a1_0x14ac1c(0xc2),'requiresAppCode':![],'flags':[DOC_CODE_FLAG],async 'execute'(_0x6a5a22){const _0x54b661=a1_0x14ac1c;return{'ok':!![],'data':getApiDocDetail(_0x6a5a22['str'](_0x54b661(0xae)))};}};export const apiDocDefinitions=[apiDocList,apiDocDetail];
1
+ const a1_0x34576b=a1_0x2b0c;(function(_0x4b7d10,_0x16031a){const _0x3f5cd9=a1_0x2b0c,_0x3f75f9=_0x4b7d10();while(!![]){try{const _0x2f0def=parseInt(_0x3f5cd9(0xe3))/0x1+-parseInt(_0x3f5cd9(0xad))/0x2*(-parseInt(_0x3f5cd9(0xa4))/0x3)+-parseInt(_0x3f5cd9(0x108))/0x4+-parseInt(_0x3f5cd9(0xbe))/0x5+-parseInt(_0x3f5cd9(0xef))/0x6+parseInt(_0x3f5cd9(0xe9))/0x7*(-parseInt(_0x3f5cd9(0x113))/0x8)+-parseInt(_0x3f5cd9(0xa0))/0x9*(-parseInt(_0x3f5cd9(0x102))/0xa);if(_0x2f0def===_0x16031a)break;else _0x3f75f9['push'](_0x3f75f9['shift']());}catch(_0x259066){_0x3f75f9['push'](_0x3f75f9['shift']());}}}(a1_0x183a,0xd7c34));function a1_0x183a(){const _0x4a9165=['List\x20BF\x20endpoint\x20functions','765bvsZia','/api/{appCode}/{datasetCode}/create','dataset','scriptName','4807866Cbatrl','32-character\x20dataset\x20code','custom_sql','Create\x20dataset\x20record','tableData\x20contains\x20records','CLI\x20has\x20typed\x20`bff\x20detail`\x20and\x20`bff\x20exec`\x20commands\x20for\x20endpoint\x20scripts.','已经确认目标\x20BF\x20的\x20scriptName,且需要实际调用该\x20ENDPOINT\x20脚本完成业务操作时使用','需要按\x20appCode\x20分页获取运行态数据集列表,并优先收敛可用\x20datasetCode\x20时使用','Inspect\x20field\x20names,\x20relations,\x20and\x20operation\x20metadata\x20for\x20a\x20known\x20dataset\x20code.','2fSAtFt','whenToUse','dataset_data_create','需要向指定数据集新增一条业务数据时使用','dataset_data_filter','map','/api/dataset/get-dataset-list-by-app-code','Dataset\x20detail','dataset_detail','custom_sql_execute','toLowerCase','CLI\x20users\x20should\x20prefer\x20`lovrabet\x20dataset\x20list`\x20for\x20this\x20workflow.','{\x22where\x22:{},\x22currentPage\x22:1,\x22pageSize\x22:20}','If\x20SDK\x20usage\x20is\x20needed,\x20follow\x20with\x20`lovrabet\x20dataset\x20sdk-doc\x20--code\x20<datasetCode>`.','POST','lovrabet\x20sql\x20exec\x20--sqlcode\x20<sqlCode>\x20--params\x20\x27{}\x27','Current\x20app\x20code','4185445KUfJHR','join','api-doc','This\x20is\x20a\x20write\x20operation;\x20use\x20dry-run\x20when\x20available\x20and\x20safe\x20fixtures\x20for\x20smoke\x20tests.','Filter\x20dataset\x20data','Get\x20one\x20dataset\x20record','执行自定义\x20SQL','detail','Filter\x20docs\x20by\x20category,\x20for\x20example\x20dataset','需要携带\x20where、orderBy、分页等条件读取业务数据时使用','find','lovrabet\x20data\x20filter\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22currentPage\x22:1,\x22pageSize\x22:5}\x27','Prefer\x20`filter`\x20when\x20the\x20record\x20id\x20is\x20unknown.','##\x20Get\x20one\x20dataset\x20record\x0a\x0aRead\x20one\x20record\x20by\x20id.','length','获取数据集详情','bf_execute','tableData\x20contains\x20dataset\x20id/code/name','category','需要按数据集\x20code\x20获取字段、表信息、关联关系(relations)或操作定义时使用','List\x20datasets','filter','Aggregate\x20supports\x20COUNT,\x20SUM,\x20AVG,\x20MAX,\x20and\x20MIN\x20definitions\x20in\x20the\x20`aggregate`\x20array.','##\x20Execute\x20BF\x20endpoint\x20function\x0a\x0aExecute\x20a\x20known\x20endpoint\x20script.','Search\x20docs\x20by\x20code,\x20summary,\x20path,\x20or\x20usage\x20text','Show\x20runtime\x20API\x20documentation\x20by\x20code','Aggregate\x20dataset\x20data','/api/endpoint/{appCode}/functions','##\x20Create\x20dataset\x20record\x0a\x0aCreate\x20one\x20data\x20record\x20in\x20a\x20dataset.','fields/properties\x20describe\x20data\x20shape','None','{\x22param\x22:\x22value\x22}','Execute\x20custom\x20SQL','method','##\x20Dataset\x20detail','summary','查询单条数据','363790NyBgZU','Endpoint\x20function\x20name','where\x20filters\x20before\x20aggregation','paging.totalCount\x20gives\x20total\x20rows','Script\x20behavior\x20may\x20have\x20side\x20effects;\x20inspect\x20detail\x20first.','read','1148LUOAmu','str','lovrabet\x20dataset\x20list\x20--appcode\x20<appCode>\x20--format\x20compress','{\x22appCode\x22:\x22app-aa63b188\x22,\x22currentPage\x22:1,\x22pageSize\x22:100}','appCode','Returns\x20one\x20matching\x20business\x20record','686280IupsmJ','operations\x20describes\x20runtime\x20APIs','##\x20Execute\x20custom\x20SQL\x0a\x0aExecute\x20a\x20configured\x20SQL\x20script\x20by\x20sqlCode.','Returns\x20the\x20created\x20record\x20or\x20backend\x20operation\x20result','list','string','result\x20rows\x20contain\x20aggregate\x20aliases','code','Returns\x20script\x20business\x20payload','datasetCode','/api/{appCode}/{datasetCode}/aggregate','lovrabet\x20data\x20create\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22name\x22:\x22demo\x22}\x27','`field`\x20is\x20accepted\x20as\x20a\x20deprecated\x20alias\x20for\x20`column`;\x20new\x20calls\x20should\x20use\x20`column`.','Use\x20read-only\x20data\x20commands\x20before\x20writing\x20Artifacts\x20that\x20display\x20real\x20data.','已经确认目标\x20sqlCode\x20存在,并需要实际执行该自定义\x20SQL\x20时使用','Use\x20`lovrabet\x20sql\x20detail`\x20before\x20execution.','bf_function_list','keyword','Returns\x20SQL\x20execution\x20payload','249000JbczNU','需要按\x20groupBy\x20分组并做\x20count、sum、avg、max、min\x20等聚合统计时使用','trim','{\x22fieldName\x22:\x22value\x22}','##\x20List\x20BF\x20endpoint\x20functions\x0a\x0aDiscover\x20executable\x20endpoint\x20functions.','/api/{appCode}/{datasetCode}/getOne','3144444qbFmZf','获取应用下可调用的\x20BF\x20函数列表','需要先确认当前应用有哪些可执行的\x20BF/ENDPOINT\x20函数,以及收敛可用\x20scriptName\x20时使用','GET','paging\x20contains\x20pagination','{\x22aggregate\x22:[{\x22column\x22:\x20\x22id\x22,\x22type\x22:\x22COUNT\x22,\x22alias\x22:\x22cnt\x22}],\x22groupBy\x22:[]}','relations\x20contains\x20the\x20object-shaped\x20API\x20relations\x20value\x20when\x20returned','dataset_data_aggregate','List\x20available\x20runtime\x20API\x20documentation\x20entries','{\x22id\x22:123}','聚合查询数据集数据','71296sYUSoq','lovrabet\x20bff\x20exec\x20--name\x20<functionName>\x20--params\x20\x27{}\x27','lovrabet\x20bff\x20detail\x20--id\x20<scriptId>\x20--appcode\x20<appCode>'];a1_0x183a=function(){return _0x4a9165;};return a1_0x183a();}import{CliErrors}from'../../errors.js';const CATEGORY_FLAG={'name':a1_0x34576b(0xd0),'type':a1_0x34576b(0xf4),'description':a1_0x34576b(0xc6)},KEYWORD_FLAG={'name':'keyword','type':a1_0x34576b(0xf4),'description':a1_0x34576b(0xd6)},DOC_CODE_FLAG={'name':a1_0x34576b(0xf6),'type':a1_0x34576b(0xf4),'required':!![],'description':'API\x20doc\x20code,\x20for\x20example\x20dataset_list'},DOCS=[{'code':'dataset_list','category':'dataset','title':a1_0x34576b(0xd2),'method':a1_0x34576b(0xbb),'path':a1_0x34576b(0xb3),'summary':'分页获取数据集列表','whenToUse':a1_0x34576b(0xab),'pathParams':[],'queryParams':[],'bodySchema':a1_0x34576b(0xec),'responseHighlights':[a1_0x34576b(0xcf),a1_0x34576b(0xe6)],'examples':[a1_0x34576b(0xeb)],'notes':[a1_0x34576b(0xb8)],'markdown':['##\x20List\x20datasets','','Use\x20this\x20API\x20or\x20`lovrabet\x20dataset\x20list`\x20to\x20discover\x20available\x20dataset\x20codes\x20before\x20reading\x20data.'][a1_0x34576b(0xbf)]('\x0a')},{'code':a1_0x34576b(0xb5),'category':a1_0x34576b(0xa2),'title':a1_0x34576b(0xb4),'method':a1_0x34576b(0x10b),'path':'/api/dataset/getOneByCode?code={datasetCode}','summary':a1_0x34576b(0xcd),'whenToUse':a1_0x34576b(0xd1),'pathParams':[],'queryParams':[{'name':'code','description':'32-character\x20dataset\x20code'}],'bodySchema':a1_0x34576b(0xdc),'responseHighlights':[a1_0x34576b(0xdb),a1_0x34576b(0x10e),a1_0x34576b(0xf0)],'examples':['lovrabet\x20dataset\x20detail\x20--code\x20<datasetCode>\x20--appcode\x20<appCode>'],'notes':[a1_0x34576b(0xba)],'markdown':[a1_0x34576b(0xe0),'',a1_0x34576b(0xac)][a1_0x34576b(0xbf)]('\x0a')},{'code':a1_0x34576b(0xb1),'category':a1_0x34576b(0xa2),'title':a1_0x34576b(0xc2),'method':a1_0x34576b(0xbb),'path':'/api/{appCode}/{datasetCode}/filter','summary':'条件过滤查询数据','whenToUse':a1_0x34576b(0xc7),'pathParams':[{'name':a1_0x34576b(0xed),'description':a1_0x34576b(0xbd)},{'name':a1_0x34576b(0xf8),'description':a1_0x34576b(0xa5)}],'queryParams':[],'bodySchema':a1_0x34576b(0xb9),'responseHighlights':[a1_0x34576b(0xa8),a1_0x34576b(0x10c)],'examples':[a1_0x34576b(0xc9)],'notes':[a1_0x34576b(0xfc)],'markdown':['##\x20Filter\x20dataset\x20data','','Use\x20`where`,\x20`select`,\x20`orderBy`,\x20`currentPage`,\x20and\x20`pageSize`\x20to\x20inspect\x20live\x20data\x20shape.'][a1_0x34576b(0xbf)]('\x0a')},{'code':a1_0x34576b(0x10f),'category':'dataset','title':a1_0x34576b(0xd8),'method':a1_0x34576b(0xbb),'path':a1_0x34576b(0xf9),'summary':a1_0x34576b(0x112),'whenToUse':a1_0x34576b(0x103),'pathParams':[{'name':a1_0x34576b(0xed),'description':a1_0x34576b(0xbd)},{'name':a1_0x34576b(0xf8),'description':a1_0x34576b(0xa5)}],'queryParams':[],'bodySchema':a1_0x34576b(0x10d),'responseHighlights':[a1_0x34576b(0xf5),a1_0x34576b(0xe5)],'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':['Use\x20`having`\x20only\x20for\x20post-aggregation\x20filters.',a1_0x34576b(0xfb)],'markdown':['##\x20Aggregate\x20dataset\x20data','',a1_0x34576b(0xd4)][a1_0x34576b(0xbf)]('\x0a')},{'code':'dataset_data_get_one','category':a1_0x34576b(0xa2),'title':a1_0x34576b(0xc3),'method':a1_0x34576b(0xbb),'path':a1_0x34576b(0x107),'summary':a1_0x34576b(0xe2),'whenToUse':'已经知道记录\x20id,需要按数据集读取单条业务数据时使用','pathParams':[{'name':a1_0x34576b(0xed),'description':a1_0x34576b(0xbd)},{'name':'datasetCode','description':a1_0x34576b(0xa5)}],'queryParams':[],'bodySchema':a1_0x34576b(0x111),'responseHighlights':[a1_0x34576b(0xee)],'examples':['lovrabet\x20data\x20getOne\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22id\x22:123}\x27'],'notes':[a1_0x34576b(0xca)],'markdown':a1_0x34576b(0xcb)},{'code':a1_0x34576b(0xaf),'category':a1_0x34576b(0xa2),'title':a1_0x34576b(0xa7),'method':'POST','path':a1_0x34576b(0xa1),'summary':'创建数据','whenToUse':a1_0x34576b(0xb0),'pathParams':[{'name':a1_0x34576b(0xed),'description':a1_0x34576b(0xbd)},{'name':a1_0x34576b(0xf8),'description':a1_0x34576b(0xa5)}],'queryParams':[],'bodySchema':a1_0x34576b(0x105),'responseHighlights':[a1_0x34576b(0xf2)],'examples':[a1_0x34576b(0xfa)],'notes':[a1_0x34576b(0xc1)],'markdown':a1_0x34576b(0xda)},{'code':a1_0x34576b(0xff),'category':'bf','title':a1_0x34576b(0x116),'method':a1_0x34576b(0x10b),'path':a1_0x34576b(0xd9),'summary':a1_0x34576b(0x109),'whenToUse':a1_0x34576b(0x10a),'pathParams':[{'name':a1_0x34576b(0xed),'description':a1_0x34576b(0xbd)}],'queryParams':[],'bodySchema':a1_0x34576b(0xdc),'responseHighlights':['Returns\x20endpoint\x20functionName/id/description'],'examples':[a1_0x34576b(0x115)],'notes':[a1_0x34576b(0xa9)],'markdown':a1_0x34576b(0x106)},{'code':a1_0x34576b(0xce),'category':'bf','title':'Execute\x20BF\x20endpoint\x20function','method':a1_0x34576b(0xbb),'path':'/api/endpoint/{appCode}/{scriptName}','summary':'执行指定\x20BF\x20函数','whenToUse':a1_0x34576b(0xaa),'pathParams':[{'name':a1_0x34576b(0xed),'description':a1_0x34576b(0xbd)},{'name':a1_0x34576b(0xa3),'description':a1_0x34576b(0xe4)}],'queryParams':[],'bodySchema':a1_0x34576b(0xdd),'responseHighlights':[a1_0x34576b(0xf7)],'examples':[a1_0x34576b(0x114)],'notes':[a1_0x34576b(0xe7)],'markdown':a1_0x34576b(0xd5)},{'code':a1_0x34576b(0xb6),'category':a1_0x34576b(0xa6),'title':a1_0x34576b(0xde),'method':a1_0x34576b(0xbb),'path':'/api/custom/executeSql','summary':a1_0x34576b(0xc4),'whenToUse':a1_0x34576b(0xfd),'pathParams':[],'queryParams':[],'bodySchema':'{\x22appCode\x22:\x22app-aa63b188\x22,\x22sqlCode\x22:\x22xxxxxxxx-xxxxxxxx\x22,\x22params\x22:{}}','responseHighlights':[a1_0x34576b(0x101)],'examples':[a1_0x34576b(0xbc)],'notes':[a1_0x34576b(0xfe)],'markdown':a1_0x34576b(0xf1)}];function entrySummary(_0x1bb937){const _0x5ce083=a1_0x34576b;return{'code':_0x1bb937['code'],'category':_0x1bb937[_0x5ce083(0xd0)],'method':_0x1bb937[_0x5ce083(0xdf)],'path':_0x1bb937['path'],'summary':_0x1bb937[_0x5ce083(0xe1)],'whenToUse':_0x1bb937[_0x5ce083(0xae)]};}export function listApiDocEntries(_0x4560b7={}){const _0x5404f2=a1_0x34576b,_0x3b9d4a=String(_0x4560b7[_0x5404f2(0xd0)]||'')[_0x5404f2(0x104)](),_0x37a013=String(_0x4560b7['keyword']||'')[_0x5404f2(0x104)]()['toLowerCase']();return DOCS[_0x5404f2(0xd3)](_0x315408=>{const _0x32ae3b=_0x5404f2;if(_0x3b9d4a&&_0x315408[_0x32ae3b(0xd0)]!==_0x3b9d4a)return![];if(!_0x37a013)return!![];return[_0x315408[_0x32ae3b(0xf6)],_0x315408['category'],_0x315408[_0x32ae3b(0xdf)],_0x315408['path'],_0x315408[_0x32ae3b(0xe1)],_0x315408[_0x32ae3b(0xae)],_0x315408['title']][_0x32ae3b(0xbf)]('\x20')[_0x32ae3b(0xb7)]()['includes'](_0x37a013);})[_0x5404f2(0xb2)](entrySummary);}export function getApiDocDetail(_0xcabdf2){const _0x27021a=a1_0x34576b,_0x3e6497=DOCS[_0x27021a(0xc8)](_0x4e59e6=>_0x4e59e6[_0x27021a(0xf6)]===_0xcabdf2);if(!_0x3e6497)throw CliErrors['validation']('API\x20doc\x20code\x20not\x20found:\x20'+_0xcabdf2);return{..._0x3e6497};}const apiDocList={'service':a1_0x34576b(0xc0),'command':a1_0x34576b(0xf3),'description':a1_0x34576b(0x110),'risk':a1_0x34576b(0xe8),'requiresAppCode':![],'flags':[CATEGORY_FLAG,KEYWORD_FLAG],async 'execute'(_0xa68bad){const _0x1ce875=a1_0x34576b,_0x2d1b0a=listApiDocEntries({'category':_0xa68bad[_0x1ce875(0xea)](_0x1ce875(0xd0)),'keyword':_0xa68bad[_0x1ce875(0xea)](_0x1ce875(0x100))});return{'ok':!![],'data':{'total':_0x2d1b0a[_0x1ce875(0xcc)],'items':_0x2d1b0a}};}},apiDocDetail={'service':'api-doc','command':a1_0x34576b(0xc5),'description':a1_0x34576b(0xd7),'risk':'read','requiresAppCode':![],'flags':[DOC_CODE_FLAG],async 'execute'(_0x21c123){const _0x3fc4f4=a1_0x34576b;return{'ok':!![],'data':getApiDocDetail(_0x21c123[_0x3fc4f4(0xea)]('code'))};}};function a1_0x2b0c(_0x1849d6,_0x5b2802){_0x1849d6=_0x1849d6-0xa0;const _0x183ad4=a1_0x183a();let _0x2b0cc3=_0x183ad4[_0x1849d6];return _0x2b0cc3;}export const apiDocDefinitions=[apiDocList,apiDocDetail];
@@ -1 +1 @@
1
- (function(_0x40f225,_0x13b226){const _0x59de76=a2_0x477b,_0x452940=_0x40f225();while(!![]){try{const _0x162f66=parseInt(_0x59de76(0xce))/0x1*(-parseInt(_0x59de76(0xd2))/0x2)+parseInt(_0x59de76(0xb9))/0x3*(-parseInt(_0x59de76(0xd0))/0x4)+parseInt(_0x59de76(0xcd))/0x5*(-parseInt(_0x59de76(0xd1))/0x6)+parseInt(_0x59de76(0xbf))/0x7*(-parseInt(_0x59de76(0xcc))/0x8)+parseInt(_0x59de76(0xb5))/0x9*(-parseInt(_0x59de76(0xca))/0xa)+-parseInt(_0x59de76(0xd4))/0xb*(parseInt(_0x59de76(0xc7))/0xc)+parseInt(_0x59de76(0xc9))/0xd*(parseInt(_0x59de76(0xbb))/0xe);if(_0x162f66===_0x13b226)break;else _0x452940['push'](_0x452940['shift']());}catch(_0x29946e){_0x452940['push'](_0x452940['shift']());}}}(a2_0xa4f5,0x6a7e3));import{createHash}from'node:crypto';import{existsSync,mkdirSync,readFileSync,renameSync,unlinkSync,writeFileSync}from'node:fs';import{homedir}from'node:os';import{dirname,resolve}from'node:path';function a2_0xa4f5(){const _0x186ae1=['sha256','1312262htecSn','unknown','homeDirName','code','111104vKrFwM','stringify','items','EPERM','utf8','appName','EACCES','parse','36aToZFP','update','377QmEoGb','53730ZRiwCe','slice','72jDjNjW','3431925MEspgh','406022zUAgXw','trim','4ILtSjk','6wuRLPz','4NYxLCa','.tmp','1431771mTSTET','isArray','99iCTjXs','ak_','cache','digest','573597ZOYCac'];a2_0xa4f5=function(){return _0x186ae1;};return a2_0xa4f5();}function a2_0x477b(_0x401fd5,_0x1b924b){_0x401fd5=_0x401fd5-0xb5;const _0xa4f559=a2_0xa4f5();let _0x477b8c=_0xa4f559[_0x401fd5];return _0x477b8c;}import{PRODUCT_CONFIG}from'../../constant/product.js';import{isRuntimeAccessibleApp}from'../../commands/app/eligibility.js';export function fingerprintAccessKey(_0x3aff88){const _0x35f638=a2_0x477b,_0x47b860=_0x3aff88[_0x35f638(0xcf)](),_0x34de4a=_0x47b860[_0x35f638(0xcb)](-0x6)||_0x35f638(0xbc),_0x4f7f56=createHash(_0x35f638(0xba))[_0x35f638(0xc8)](_0x47b860)[_0x35f638(0xb8)]('hex')[_0x35f638(0xcb)](0x0,0xc);return _0x35f638(0xb6)+_0x34de4a+'_'+_0x4f7f56;}export function getAppCacheFilePath(_0x2666e2,_0x45b861){const _0x22b3ca=a2_0x477b;return resolve(homedir(),PRODUCT_CONFIG[_0x22b3ca(0xbd)],_0x22b3ca(0xb7),_0x2666e2,fingerprintAccessKey(_0x45b861),'my-apps.json');}export function readCachedAppList(_0x55978c,_0x454a3f){const _0x45d0f2=a2_0x477b;if(!_0x454a3f?.[_0x45d0f2(0xcf)]())return null;const _0xebe450=getAppCacheFilePath(_0x55978c,_0x454a3f);if(!existsSync(_0xebe450))return null;try{const _0x1ae0a3=readFileSync(_0xebe450,'utf8');if(!_0x1ae0a3[_0x45d0f2(0xcf)]())return null;const _0x45959d=JSON[_0x45d0f2(0xc6)](_0x1ae0a3);if(!Array[_0x45d0f2(0xd5)](_0x45959d['items']))return null;return _0x45959d;}catch{return null;}}export function writeCachedAppList(_0x3df600,_0x10bc69,_0x4a6517){const _0x292e8a=a2_0x477b,_0x304dd5=getAppCacheFilePath(_0x3df600,_0x10bc69),_0xd87c93=dirname(_0x304dd5);!existsSync(_0xd87c93)&&mkdirSync(_0xd87c93,{'recursive':!![]});const _0x389f4=_0x304dd5+_0x292e8a(0xd3);try{writeFileSync(_0x389f4,JSON[_0x292e8a(0xc0)](_0x4a6517,null,0x2)+'\x0a',{'encoding':_0x292e8a(0xc3),'mode':0x180});try{renameSync(_0x389f4,_0x304dd5);}catch(_0x26cfb8){if(_0x26cfb8['code']===_0x292e8a(0xc2)||_0x26cfb8[_0x292e8a(0xbe)]==='EXDEV'||_0x26cfb8[_0x292e8a(0xbe)]===_0x292e8a(0xc5)){writeFileSync(_0x304dd5,JSON[_0x292e8a(0xc0)](_0x4a6517,null,0x2)+'\x0a',{'encoding':_0x292e8a(0xc3)});try{unlinkSync(_0x389f4);}catch{}}else throw _0x26cfb8;}}catch(_0xa60b77){try{unlinkSync(_0x389f4);}catch{}throw _0xa60b77;}return _0x304dd5;}export function resolveCachedAppCode(_0x143d7c,_0x26adb6,_0x5db7f2){const _0xcd1354=a2_0x477b;if(!_0x143d7c)return undefined;const _0x29633c=readCachedAppList(_0x26adb6,_0x5db7f2),_0x398a96=_0x29633c?.[_0xcd1354(0xc1)]['find'](_0x505045=>_0x505045[_0xcd1354(0xc4)]===_0x143d7c&&isRuntimeAccessibleApp(_0x505045));return _0x398a96?.['appCode']?.[_0xcd1354(0xcf)]()||undefined;}
1
+ (function(_0x4a70fd,_0x195fff){const _0x435f7d=a2_0x1658,_0x548dfc=_0x4a70fd();while(!![]){try{const _0x38e527=parseInt(_0x435f7d(0x1f8))/0x1*(parseInt(_0x435f7d(0x1ea))/0x2)+-parseInt(_0x435f7d(0x205))/0x3*(parseInt(_0x435f7d(0x1e9))/0x4)+-parseInt(_0x435f7d(0x1f5))/0x5*(-parseInt(_0x435f7d(0x1f1))/0x6)+parseInt(_0x435f7d(0x1fa))/0x7+parseInt(_0x435f7d(0x1eb))/0x8*(parseInt(_0x435f7d(0x204))/0x9)+-parseInt(_0x435f7d(0x1e6))/0xa+parseInt(_0x435f7d(0x1f0))/0xb*(-parseInt(_0x435f7d(0x1fd))/0xc);if(_0x38e527===_0x195fff)break;else _0x548dfc['push'](_0x548dfc['shift']());}catch(_0x23d774){_0x548dfc['push'](_0x548dfc['shift']());}}}(a2_0x5324,0x56c09));import{createHash}from'node:crypto';function a2_0x1658(_0x2c29bc,_0x87c063){_0x2c29bc=_0x2c29bc-0x1e6;const _0x53249c=a2_0x5324();let _0x1658a2=_0x53249c[_0x2c29bc];return _0x1658a2;}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(_0xc0b136){const _0x37ddbb=a2_0x1658,_0x369022=_0xc0b136[_0x37ddbb(0x201)](),_0x221e93=_0x369022[_0x37ddbb(0x203)](-0x6)||_0x37ddbb(0x1fc),_0x223f15=createHash('sha256')['update'](_0x369022)[_0x37ddbb(0x1ef)](_0x37ddbb(0x1f7))['slice'](0x0,0xc);return _0x37ddbb(0x1f6)+_0x221e93+'_'+_0x223f15;}export function getAppCacheFilePath(_0x411799,_0x1ff483){const _0x530655=a2_0x1658;return resolve(homedir(),PRODUCT_CONFIG[_0x530655(0x202)],_0x530655(0x1f4),_0x411799,fingerprintAccessKey(_0x1ff483),'my-apps.json');}export function readCachedAppList(_0x15787c,_0x57b78e){const _0xa65de4=a2_0x1658;if(!_0x57b78e?.[_0xa65de4(0x201)]())return null;const _0x5f1639=getAppCacheFilePath(_0x15787c,_0x57b78e);if(!existsSync(_0x5f1639))return null;try{const _0x1238a4=readFileSync(_0x5f1639,'utf8');if(!_0x1238a4[_0xa65de4(0x201)]())return null;const _0x551833=JSON[_0xa65de4(0x1fe)](_0x1238a4);if(!Array[_0xa65de4(0x1f2)](_0x551833[_0xa65de4(0x1ff)]))return null;return _0x551833;}catch{return null;}}export function writeCachedAppList(_0x2a5c22,_0x48ed6f,_0x36fb90){const _0x15c855=a2_0x1658,_0x2ff1a1=getAppCacheFilePath(_0x2a5c22,_0x48ed6f),_0x2a21a3=dirname(_0x2ff1a1);!existsSync(_0x2a21a3)&&mkdirSync(_0x2a21a3,{'recursive':!![]});const _0x5a6129=_0x2ff1a1+_0x15c855(0x1e7);try{writeFileSync(_0x5a6129,JSON[_0x15c855(0x1fb)](_0x36fb90,null,0x2)+'\x0a',{'encoding':_0x15c855(0x1f9),'mode':0x180});try{renameSync(_0x5a6129,_0x2ff1a1);}catch(_0x39b929){if(_0x39b929[_0x15c855(0x1f3)]==='EPERM'||_0x39b929['code']===_0x15c855(0x1ee)||_0x39b929[_0x15c855(0x1f3)]===_0x15c855(0x1ec)){writeFileSync(_0x2ff1a1,JSON[_0x15c855(0x1fb)](_0x36fb90,null,0x2)+'\x0a',{'encoding':_0x15c855(0x1f9)});try{unlinkSync(_0x5a6129);}catch{}}else throw _0x39b929;}}catch(_0x575dc8){try{unlinkSync(_0x5a6129);}catch{}throw _0x575dc8;}return _0x2ff1a1;}export function resolveCachedAppCode(_0x7850e6,_0x4a67ee,_0x37292d){const _0x492fa8=a2_0x1658;if(!_0x7850e6)return undefined;const _0xa79164=readCachedAppList(_0x4a67ee,_0x37292d),_0x177c35=_0xa79164?.[_0x492fa8(0x1ff)][_0x492fa8(0x1ed)](_0x23c74a=>_0x23c74a[_0x492fa8(0x1e8)]===_0x7850e6&&isRuntimeAccessibleApp(_0x23c74a));return _0x177c35?.[_0x492fa8(0x200)]?.['trim']()||undefined;}function a2_0x5324(){const _0x59f004=['461224zEVjbM','13848mHgtNA','EACCES','find','EXDEV','digest','228239HIgONx','18JcGheL','isArray','code','cache','894275yxrGMD','ak_','hex','1fcEhNf','utf8','3761044CuXntN','stringify','unknown','84VAwWor','parse','items','appCode','trim','homeDirName','slice','837plutqt','12VCFJHb','2577680toPLaH','.tmp','appName','707104HzYwOi'];a2_0x5324=function(){return _0x59f004;};return a2_0x5324();}
@@ -1 +1 @@
1
- const a3_0x44fca9=a3_0x5ae1;(function(_0xd7fc65,_0x10a1e5){const _0x340617=a3_0x5ae1,_0x3dcd8d=_0xd7fc65();while(!![]){try{const _0x5c4d20=-parseInt(_0x340617(0x1a3))/0x1+-parseInt(_0x340617(0x14d))/0x2+parseInt(_0x340617(0x161))/0x3*(parseInt(_0x340617(0x16a))/0x4)+parseInt(_0x340617(0x192))/0x5+-parseInt(_0x340617(0x167))/0x6*(-parseInt(_0x340617(0x17a))/0x7)+-parseInt(_0x340617(0x1a8))/0x8*(-parseInt(_0x340617(0x19a))/0x9)+-parseInt(_0x340617(0x162))/0xa*(-parseInt(_0x340617(0x181))/0xb);if(_0x5c4d20===_0x10a1e5)break;else _0x3dcd8d['push'](_0x3dcd8d['shift']());}catch(_0x6616f5){_0x3dcd8d['push'](_0x3dcd8d['shift']());}}}(a3_0x2526,0x8ec3a));import{CliErrors}from'../../errors.js';import{initCreateFlagDefs,initImportFlagDefs,runInit,runInitImport}from'../../commands/init.js';function a3_0x5ae1(_0x1ea8ff,_0x17811f){_0x1ea8ff=_0x1ea8ff-0x14d;const _0x2526f4=a3_0x2526();let _0x5ae10d=_0x2526f4[_0x1ea8ff];return _0x5ae10d;}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';import{filterRuntimeAccessibleApps,findAppByCode,isRuntimeAccessibleApp,runtimeInaccessibleAppError}from'../../commands/app/eligibility.js';const GLOBAL_FLAG={'name':a3_0x44fca9(0x1a1),'type':a3_0x44fca9(0x18f),'description':a3_0x44fca9(0x190),'default':![]};function collectFlags(_0xedf3ae,_0x103f24){const _0x4ccc8d=a3_0x44fca9,_0x473c44={};for(const _0x20ce91 of _0x103f24){const _0x49f6ef=_0x20ce91[_0x4ccc8d(0x19c)]===_0x4ccc8d(0x18f)?_0xedf3ae[_0x4ccc8d(0x195)](_0x20ce91[_0x4ccc8d(0x18b)]):_0xedf3ae['str'](_0x20ce91[_0x4ccc8d(0x18b)]);if(_0x49f6ef!==''&&_0x49f6ef!==![])_0x473c44[_0x20ce91['name']]=_0x49f6ef;}if(_0xedf3ae['nonInteractive'])_0x473c44[_0x4ccc8d(0x171)]=!![];return _0x473c44;}function normalizeLanguages(_0x275cdd){const _0x4e27ad=a3_0x44fca9;if(!Array[_0x4e27ad(0x18c)](_0x275cdd))return[];return _0x275cdd[_0x4e27ad(0x153)](_0x1ea7d8=>typeof _0x1ea7d8===_0x4e27ad(0x18e))[_0x4e27ad(0x196)](_0x2020f5=>_0x2020f5['trim']())['filter'](Boolean);}function buildRemoteAppI18nFields(_0x3ec8c9){const _0x310be7=a3_0x44fca9,_0xa611d2=normalizeLanguages(_0x3ec8c9[_0x310be7(0x19f)]?.['langs']);return{'enableI18n':typeof _0x3ec8c9[_0x310be7(0x14e)]==='boolean'?_0x3ec8c9['enableI18n']:null,'languages':_0xa611d2,'i18nInfo':_0x3ec8c9[_0x310be7(0x19f)]?{..._0x3ec8c9[_0x310be7(0x19f)],'langs':_0xa611d2['length']?_0xa611d2:null}:null};}function a3_0x2526(){const _0x24641c=['Import\x20the\x20default\x20app\x20selection\x20from\x20a\x20.rabetbase.json\x20file','4851325YGnJFR','isCurrent','.\x20Local\x20aliases\x20can\x20be\x20added\x20under\x20apps.<alias>.appcode.','bool','map','\x20cached\x20app(s)\x20for\x20env=\x22','warn','trim','9YRZKnh','\x20workspace\x20init\x20--appcode\x20<code>\x20[--env\x20daily]','type','.appcode\x20to\x20.lovrabet.json.','source','i18nInfo','length','global','import','1157029CmmKub','production','cachePath','../../commands/app/remote-source.js','args','2349192wtJHih','No\x20apps\x20found\x20on\x20the\x20platform.','2254748kyuxZO','enableI18n','Remote\x20app\x20name\x20to\x20activate','items','Refreshed\x20app\x20cache\x20with\x20','appPublishStatus','filter','Force\x20remote\x20fetch\x20and\x20refresh\x20local\x20cache','appCode','local','env','envName','use','Available\x20remote\x20apps:\x20','../../commands/app/cache.js','App\x20\x22','No\x20cached\x20apps\x20found.','\x20workspace\x20use\x20--app\x20<name>\x20[--env\x20daily]','Filter\x20by\x20environment\x20(default:\x20current\x20env)','pull','3eNqwnu','23590bnTSJI','List\x20apps\x20available\x20to\x20the\x20current\x20access\x20key','globalPath','`\x20instead.','cache','825648qNsHCk','write','Refresh\x20the\x20local\x20app\x20cache\x20from\x20the\x20platform','1800520nQTJQN','push','accessKey','Read\x20app\x20list\x20from\x20local\x20cache\x20only','remote','mergedCli','../../context.js','nonInteractive','list','include-unpublished','appName','projectPath','Default\x20app\x20candidate\x20set\x20to\x20\x22','str','appcode','no-cache','56xfOEIV','\x20is\x20deprecated.\x20Use\x20`','from','find','config','Deprecated:\x20use\x20workspace\x20init\x20to\x20bind\x20the\x20current\x20directory\x20to\x20an\x20app','fetchedAt','253FbHtOU','join','Usage:\x20','project-default','Use\x20`','appOwnerName','\x20app\x20use\x20<name>\x20[--global]','defaultApp','validation','app','name','isArray','raw','string','boolean','Use\x20global\x20config\x20scope'];a3_0x2526=function(){return _0x24641c;};return a3_0x2526();}const initDef={'service':'app','command':'init','description':a3_0x44fca9(0x17f),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initCreateFlagDefs,async 'execute'(_0x58e68e){const _0x1e7f5b=a3_0x44fca9;return warnDeprecatedAppCommand('init',CLI_BIN_NAME+_0x1e7f5b(0x19b)),await runInit(collectFlags(_0x58e68e,initCreateFlagDefs)),{'ok':!![]};}},listDef={'service':'app','command':a3_0x44fca9(0x172),'description':a3_0x44fca9(0x163),'risk':'read','requiresAuth':!![],'requiresAppCode':![],'hasFormat':!![],'flags':[{'name':a3_0x44fca9(0x157),'type':a3_0x44fca9(0x18e),'description':a3_0x44fca9(0x15f),'enum':[...RUNTIME_ENV_VALUES]},{'name':a3_0x44fca9(0x156),'type':a3_0x44fca9(0x18f),'description':a3_0x44fca9(0x16d),'default':![]},{'name':'no-cache','type':a3_0x44fca9(0x18f),'description':'Force\x20remote\x20fetch\x20and\x20refresh\x20local\x20cache','default':![]},{'name':a3_0x44fca9(0x173),'type':a3_0x44fca9(0x18f),'description':'Include\x20unpublished\x20apps\x20for\x20diagnostics','default':![]}],async 'execute'(_0x42e68f){const _0x285e35=a3_0x44fca9,_0x3a8364=_0x42e68f[_0x285e35(0x177)](_0x285e35(0x157))||_0x42e68f['envName']||getEnv()||_0x285e35(0x1a4),_0x2e732f=_0x42e68f[_0x285e35(0x195)](_0x285e35(0x156)),_0x40b0a4=_0x42e68f[_0x285e35(0x195)]('no-cache'),_0x11594e=_0x42e68f[_0x285e35(0x195)]('include-unpublished'),{readRawConfigWithLayers:_0x268588,resolveDefaultAppSource:_0x81c5e4,getLocalAppAliases:_0x32df08}=await import('../../context.js'),{getRemoteAppList:_0x3c15b0}=await import(_0x285e35(0x1a6)),{config:_0x5cebc6,layers:_0x1524e0}=_0x268588(),_0x16e0b9=_0x81c5e4(_0x1524e0),{defaultApp:_0x2c6b37}=_0x5cebc6,_0x3a6443=await _0x3c15b0({'env':_0x3a8364,'accessKey':_0x42e68f[_0x285e35(0x16c)],'localOnly':_0x2e732f,'noCache':_0x40b0a4}),_0x18dac4=_0x11594e?_0x3a6443[_0x285e35(0x150)]:filterRuntimeAccessibleApps(_0x3a6443['items']),_0x27354b=_0x3a6443[_0x285e35(0x150)][_0x285e35(0x1a0)]-_0x18dac4[_0x285e35(0x1a0)],_0x315404=_0x18dac4['map'](_0x49447f=>{const _0xf4ce61=_0x285e35;return{'name':_0x49447f[_0xf4ce61(0x174)],'appcode':_0x49447f[_0xf4ce61(0x155)],'named':!![],'definedIn':_0xf4ce61(0x16e),'isDefault':_0x49447f['appName']===_0x2c6b37,...buildAppProfileListFields(_0x3a8364),...buildRemoteAppI18nFields(_0x49447f),'source':_0x3a6443[_0xf4ce61(0x19e)],'owner':_0x49447f[_0xf4ce61(0x186)]??null,'status':_0x49447f[_0xf4ce61(0x152)]??null,'cachedAt':_0x3a6443[_0xf4ce61(0x180)]};}),_0x2e9bc2=_0x32df08(_0x5cebc6);let _0x4bfb50=0x0;for(const [_0x33660e,_0x30b7f5]of Object['entries'](_0x2e9bc2)){const _0x40dd9d=typeof _0x30b7f5[_0x285e35(0x178)]===_0x285e35(0x18e)?_0x30b7f5[_0x285e35(0x178)][_0x285e35(0x199)]():'';if(!_0x40dd9d)continue;const _0x5697c8=findAppByCode(_0x3a6443['items'],_0x40dd9d);if(!_0x11594e&&_0x5697c8&&!isRuntimeAccessibleApp(_0x5697c8))continue;_0x4bfb50+=0x1,_0x315404[_0x285e35(0x16b)]({'name':_0x33660e,'appcode':_0x40dd9d,'named':!![],'definedIn':_0x285e35(0x156),'isDefault':_0x33660e===_0x2c6b37,...buildAppProfileListFields(_0x3a8364),'source':_0x285e35(0x17e),'owner':null,'status':null,'cachedAt':null});}enrichAppListItemsWithMergedSelection(_0x315404,_0x42e68f[_0x285e35(0x16f)]);const _0x3eb29f=_0x315404[_0x285e35(0x17d)](_0x10a1d8=>_0x10a1d8[_0x285e35(0x193)]===!![]),_0x5a1c96=_0x2c6b37??_0x3eb29f?.[_0x285e35(0x18b)]??null,_0x4841e6={'env':_0x3a8364,'source':_0x3a6443[_0x285e35(0x19e)],'fetchedAt':_0x3a6443[_0x285e35(0x180)],'cachePath':_0x3a6443[_0x285e35(0x1a5)],'globalPath':_0x1524e0[_0x285e35(0x164)]??null,'projectPath':_0x1524e0[_0x285e35(0x175)]??null,'defaultApp':_0x5a1c96,'defaultAppSource':_0x2c6b37!=null?_0x16e0b9:null,'localAliasCount':_0x4bfb50,'remoteTotal':_0x3a6443[_0x285e35(0x150)][_0x285e35(0x1a0)],'hiddenUnpublishedCount':_0x27354b,'includeUnpublished':_0x11594e};if(_0x315404[_0x285e35(0x1a0)]===0x0)return{'ok':!![],'data':{'items':_0x315404,'meta':_0x4841e6},'message':_0x3a6443[_0x285e35(0x19e)]===_0x285e35(0x166)?_0x285e35(0x15d):_0x285e35(0x1a9)};return{'ok':!![],'data':{'items':_0x315404,'meta':_0x4841e6}};}},pullDef={'service':'app','command':a3_0x44fca9(0x160),'description':a3_0x44fca9(0x169),'risk':a3_0x44fca9(0x168),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a3_0x44fca9(0x157),'type':a3_0x44fca9(0x18e),'description':'Target\x20environment\x20(default:\x20current\x20env)','enum':[...RUNTIME_ENV_VALUES]},{'name':a3_0x44fca9(0x156),'type':a3_0x44fca9(0x18f),'description':'Read\x20from\x20local\x20cache\x20only','default':![]},{'name':a3_0x44fca9(0x179),'type':a3_0x44fca9(0x18f),'description':a3_0x44fca9(0x154),'default':![]}],async 'execute'(_0x5604f7){const _0x1d72ff=a3_0x44fca9,_0x2d8356=_0x5604f7[_0x1d72ff(0x177)]('env')||_0x5604f7[_0x1d72ff(0x158)]||getEnv()||'production',_0x5a2738=_0x5604f7[_0x1d72ff(0x195)](_0x1d72ff(0x156)),_0x289787=_0x5604f7[_0x1d72ff(0x195)](_0x1d72ff(0x179)),{getRemoteAppList:_0x10dbe0}=await import(_0x1d72ff(0x1a6)),_0x43445a=await _0x10dbe0({'env':_0x2d8356,'accessKey':_0x5604f7[_0x1d72ff(0x16c)],'localOnly':_0x5a2738,'noCache':_0x289787});return{'ok':!![],'data':{'total':_0x43445a[_0x1d72ff(0x150)][_0x1d72ff(0x1a0)],'env':_0x2d8356,'source':_0x43445a[_0x1d72ff(0x19e)],'fetchedAt':_0x43445a[_0x1d72ff(0x180)],'cachePath':_0x43445a['cachePath']},'message':_0x43445a[_0x1d72ff(0x19e)]===_0x1d72ff(0x166)?'Loaded\x20'+_0x43445a[_0x1d72ff(0x150)][_0x1d72ff(0x1a0)]+_0x1d72ff(0x197)+_0x2d8356+'\x22.':_0x1d72ff(0x151)+_0x43445a[_0x1d72ff(0x150)][_0x1d72ff(0x1a0)]+'\x20app(s)\x20for\x20env=\x22'+_0x2d8356+'\x22.'};}},useDef={'service':a3_0x44fca9(0x18a),'command':a3_0x44fca9(0x159),'description':'Deprecated:\x20use\x20workspace\x20use\x20to\x20bind\x20the\x20current\x20directory\x20to\x20an\x20app','risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a3_0x44fca9(0x18b),'description':a3_0x44fca9(0x14f),'required':!![]}],'flags':[GLOBAL_FLAG],async 'validate'(_0x432950){const _0xfe71ae=a3_0x44fca9;if(!_0x432950[_0xfe71ae(0x1a7)][0x0])throw CliErrors[_0xfe71ae(0x189)]('Missing\x20app\x20name.',_0xfe71ae(0x183)+CLI_BIN_NAME+_0xfe71ae(0x187));},async 'execute'(_0x594443){const _0x382df8=a3_0x44fca9;warnDeprecatedAppCommand('use',CLI_BIN_NAME+_0x382df8(0x15e));const _0x28c516=_0x594443['args'][0x0];if(!_0x28c516)throw CliErrors[_0x382df8(0x189)]('Missing\x20app\x20name.',_0x382df8(0x183)+CLI_BIN_NAME+_0x382df8(0x187));const {buildConfigFromFlags:_0x145c4f,resolveLocalAppAliasCode:_0x57681b}=await import(_0x382df8(0x170)),{readCachedAppList:_0x1bce31}=await import(_0x382df8(0x15b)),_0x2f7eeb=_0x594443[_0x382df8(0x177)](_0x382df8(0x157)),_0x33efee=_0x145c4f(_0x2f7eeb?{'env':_0x2f7eeb}:{}),_0x5e35b3=_0x1bce31(_0x33efee[_0x382df8(0x157)],_0x33efee['accessKey']),_0x39770f=_0x5e35b3?.[_0x382df8(0x150)][_0x382df8(0x17d)](_0x16a920=>_0x16a920[_0x382df8(0x174)]===_0x28c516),_0x188436=_0x57681b(_0x33efee[_0x382df8(0x18d)]??{},_0x28c516);if(_0x39770f&&!isRuntimeAccessibleApp(_0x39770f))throw runtimeInaccessibleAppError(_0x39770f,'\x22'+_0x28c516+'\x22');if(_0x188436){const _0x1cf3cf=_0x5e35b3?.[_0x382df8(0x150)][_0x382df8(0x17d)](_0x1bed83=>_0x1bed83[_0x382df8(0x155)]?.[_0x382df8(0x199)]()===_0x188436);if(_0x1cf3cf&&!isRuntimeAccessibleApp(_0x1cf3cf))throw runtimeInaccessibleAppError(_0x1cf3cf,'\x22'+_0x28c516+'\x22');}if(!_0x39770f&&!_0x188436&&_0x33efee[_0x382df8(0x188)]!==_0x28c516){const _0x26cdec=[..._0x5e35b3?.[_0x382df8(0x150)]['map'](_0x3c2a33=>_0x3c2a33[_0x382df8(0x174)])??[]],_0x76560=_0x26cdec['length']===0x0?_0x382df8(0x185)+CLI_BIN_NAME+'\x20app\x20list`\x20to\x20discover\x20remote\x20apps,\x20or\x20add\x20apps.'+_0x28c516+_0x382df8(0x19d):_0x382df8(0x15a)+Array[_0x382df8(0x17c)](new Set(_0x26cdec))[_0x382df8(0x182)](',\x20')+_0x382df8(0x194);throw CliErrors['validation'](_0x382df8(0x15c)+_0x28c516+'\x22\x20not\x20found.',_0x76560);}const _0x1f909a=_0x594443[_0x382df8(0x195)](_0x382df8(0x1a1));let _0xfb586c;if(_0x1f909a)_0xfb586c={'global':!![]};else{const {isInProject:_0x39dcf2}=await import(_0x382df8(0x170)),_0x1e1a31=_0x39dcf2();_0xfb586c=toScopeFlags(resolveConfigScope({'explicitGlobal':![],'policy':_0x382df8(0x184),'inProject':_0x1e1a31}));}const _0x40e6dc=readConfig(_0xfb586c);return _0x40e6dc['defaultApp']=_0x28c516,writeConfig(_0x40e6dc,_0xfb586c),{'ok':!![],'message':_0x382df8(0x176)+_0x28c516+'\x22'+scopeLabel(_0xfb586c)+'.'};}};function warnDeprecatedAppCommand(_0x2c509d,_0x4bb6e9){const _0x22116f=a3_0x44fca9;console[_0x22116f(0x198)](CLI_BIN_NAME+'\x20app\x20'+_0x2c509d+_0x22116f(0x17b)+_0x4bb6e9+_0x22116f(0x165));}const importDef={'service':a3_0x44fca9(0x18a),'command':a3_0x44fca9(0x1a2),'description':a3_0x44fca9(0x191),'risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initImportFlagDefs,async 'execute'(_0x7c63ae){return await runInitImport(collectFlags(_0x7c63ae,initImportFlagDefs)),{'ok':!![]};}};export const appDefinitions=[initDef,listDef,pullDef,useDef,importDef];
1
+ const a3_0x132a24=a3_0x52c8;(function(_0x34ea92,_0x1bad8d){const _0x451e29=a3_0x52c8,_0x434c18=_0x34ea92();while(!![]){try{const _0x6386b6=parseInt(_0x451e29(0x1c1))/0x1*(parseInt(_0x451e29(0x1ee))/0x2)+parseInt(_0x451e29(0x1c7))/0x3+parseInt(_0x451e29(0x1d5))/0x4+-parseInt(_0x451e29(0x1fa))/0x5+-parseInt(_0x451e29(0x1e6))/0x6*(-parseInt(_0x451e29(0x1c3))/0x7)+-parseInt(_0x451e29(0x1fe))/0x8+-parseInt(_0x451e29(0x1ed))/0x9;if(_0x6386b6===_0x1bad8d)break;else _0x434c18['push'](_0x434c18['shift']());}catch(_0x3de7f6){_0x434c18['push'](_0x434c18['shift']());}}}(a3_0x43d8,0xa3a6c));import{CliErrors}from'../../errors.js';import{initCreateFlagDefs,initImportFlagDefs,runInit,runInitImport}from'../../commands/init.js';import{getEnv,RUNTIME_ENV_VALUES}from'../../constant/env.js';function a3_0x52c8(_0x5a5c41,_0x52de31){_0x5a5c41=_0x5a5c41-0x1aa;const _0x43d8b8=a3_0x43d8();let _0x52c85c=_0x43d8b8[_0x5a5c41];return _0x52c85c;}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';import{filterRuntimeAccessibleApps,findAppByCode,isRuntimeAccessibleApp,runtimeInaccessibleAppError}from'../../commands/app/eligibility.js';const GLOBAL_FLAG={'name':'global','type':a3_0x132a24(0x1ce),'description':a3_0x132a24(0x1df),'default':![]};function a3_0x43d8(){const _0x5bf296=['Use\x20`','no-cache','cachePath','appCode','2876208gRGCar','Read\x20from\x20local\x20cache\x20only','cache','warn','../../commands/app/cache.js','name','\x20app\x20use\x20<name>\x20[--global]','Deprecated:\x20use\x20workspace\x20init\x20to\x20bind\x20the\x20current\x20directory\x20to\x20an\x20app','map','Remote\x20app\x20name\x20to\x20activate','Use\x20global\x20config\x20scope','No\x20apps\x20found\x20on\x20the\x20platform.','\x20is\x20deprecated.\x20Use\x20`','Usage:\x20','trim','\x20workspace\x20init\x20--appcode\x20<code>\x20[--env\x20daily]','type','84546pAhPXv','entries','Filter\x20by\x20environment\x20(default:\x20current\x20env)','Deprecated:\x20use\x20workspace\x20use\x20to\x20bind\x20the\x20current\x20directory\x20to\x20an\x20app','length','args','`\x20instead.','16592067NarmxC','810396NSqbNs','\x20workspace\x20use\x20--app\x20<name>\x20[--env\x20daily]','use','Available\x20remote\x20apps:\x20','fetchedAt','appOwnerName','join','import','bool','Target\x20environment\x20(default:\x20current\x20env)','No\x20cached\x20apps\x20found.','str','1128750WGLYRv','mergedCli','list','include-unpublished','1610784NGigUq','appPublishStatus','find','from','Default\x20app\x20candidate\x20set\x20to\x20\x22','env','raw','Missing\x20app\x20name.','filter','local','.appcode\x20to\x20.lovrabet.json.','langs','globalPath','global','nonInteractive','\x22\x20not\x20found.','app','items','../../context.js','../../commands/app/remote-source.js','config','defaultApp','envName','remote','2vyINtc','validation','539FnNWZy','enableI18n','Refreshed\x20app\x20cache\x20with\x20','projectPath','979566DfFujh','write','production','source','push','Force\x20remote\x20fetch\x20and\x20refresh\x20local\x20cache','accessKey','boolean','appName','string'];a3_0x43d8=function(){return _0x5bf296;};return a3_0x43d8();}function collectFlags(_0x2d078a,_0x5ec672){const _0x109cc3=a3_0x132a24,_0x265163={};for(const _0x1cbbf1 of _0x5ec672){const _0x549371=_0x1cbbf1[_0x109cc3(0x1e5)]==='boolean'?_0x2d078a[_0x109cc3(0x1f6)](_0x1cbbf1['name']):_0x2d078a[_0x109cc3(0x1f9)](_0x1cbbf1['name']);if(_0x549371!==''&&_0x549371!==![])_0x265163[_0x1cbbf1[_0x109cc3(0x1da)]]=_0x549371;}if(_0x2d078a[_0x109cc3(0x1b7)])_0x265163[_0x109cc3(0x1b7)]=!![];return _0x265163;}function normalizeLanguages(_0x530608){const _0x5309d5=a3_0x132a24;if(!Array['isArray'](_0x530608))return[];return _0x530608[_0x5309d5(0x1b1)](_0xc6ea60=>typeof _0xc6ea60==='string')[_0x5309d5(0x1dd)](_0x4a032c=>_0x4a032c[_0x5309d5(0x1e3)]())[_0x5309d5(0x1b1)](Boolean);}function buildRemoteAppI18nFields(_0x591a0c){const _0x29db51=a3_0x132a24,_0x108e44=normalizeLanguages(_0x591a0c['i18nInfo']?.[_0x29db51(0x1b4)]);return{'enableI18n':typeof _0x591a0c[_0x29db51(0x1c4)]==='boolean'?_0x591a0c[_0x29db51(0x1c4)]:null,'languages':_0x108e44,'i18nInfo':_0x591a0c['i18nInfo']?{..._0x591a0c['i18nInfo'],'langs':_0x108e44[_0x29db51(0x1ea)]?_0x108e44:null}:null};}const initDef={'service':a3_0x132a24(0x1b9),'command':'init','description':a3_0x132a24(0x1dc),'risk':a3_0x132a24(0x1c8),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initCreateFlagDefs,async 'execute'(_0x5ca3a9){const _0x6dc1cc=a3_0x132a24;return warnDeprecatedAppCommand('init',CLI_BIN_NAME+_0x6dc1cc(0x1e4)),await runInit(collectFlags(_0x5ca3a9,initCreateFlagDefs)),{'ok':!![]};}},listDef={'service':a3_0x132a24(0x1b9),'command':a3_0x132a24(0x1fc),'description':'List\x20apps\x20available\x20to\x20the\x20current\x20access\x20key','risk':'read','requiresAuth':!![],'requiresAppCode':![],'hasFormat':!![],'flags':[{'name':a3_0x132a24(0x1ae),'type':'string','description':a3_0x132a24(0x1e8),'enum':[...RUNTIME_ENV_VALUES]},{'name':a3_0x132a24(0x1b2),'type':a3_0x132a24(0x1ce),'description':'Read\x20app\x20list\x20from\x20local\x20cache\x20only','default':![]},{'name':a3_0x132a24(0x1d2),'type':'boolean','description':a3_0x132a24(0x1cc),'default':![]},{'name':a3_0x132a24(0x1fd),'type':a3_0x132a24(0x1ce),'description':'Include\x20unpublished\x20apps\x20for\x20diagnostics','default':![]}],async 'execute'(_0x1a5c6d){const _0x2e9e4f=a3_0x132a24,_0x1eb112=_0x1a5c6d['str'](_0x2e9e4f(0x1ae))||_0x1a5c6d[_0x2e9e4f(0x1bf)]||getEnv()||_0x2e9e4f(0x1c9),_0x392455=_0x1a5c6d[_0x2e9e4f(0x1f6)](_0x2e9e4f(0x1b2)),_0x47173d=_0x1a5c6d[_0x2e9e4f(0x1f6)](_0x2e9e4f(0x1d2)),_0x150d4c=_0x1a5c6d[_0x2e9e4f(0x1f6)](_0x2e9e4f(0x1fd)),{readRawConfigWithLayers:_0x1b18af,resolveDefaultAppSource:_0x5812bc,getLocalAppAliases:_0x41ad28}=await import(_0x2e9e4f(0x1bb)),{getRemoteAppList:_0xe9ab3c}=await import(_0x2e9e4f(0x1bc)),{config:_0x259b45,layers:_0x10d614}=_0x1b18af(),_0xdc3a05=_0x5812bc(_0x10d614),{defaultApp:_0x1efa4a}=_0x259b45,_0x42a1cb=await _0xe9ab3c({'env':_0x1eb112,'accessKey':_0x1a5c6d[_0x2e9e4f(0x1cd)],'localOnly':_0x392455,'noCache':_0x47173d}),_0x567efb=_0x150d4c?_0x42a1cb[_0x2e9e4f(0x1ba)]:filterRuntimeAccessibleApps(_0x42a1cb['items']),_0x2b9a9e=_0x42a1cb['items'][_0x2e9e4f(0x1ea)]-_0x567efb[_0x2e9e4f(0x1ea)],_0x1ef04c=_0x567efb[_0x2e9e4f(0x1dd)](_0x3ea044=>{const _0x374f18=_0x2e9e4f;return{'name':_0x3ea044[_0x374f18(0x1cf)],'appcode':_0x3ea044['appCode'],'named':!![],'definedIn':_0x374f18(0x1c0),'isDefault':_0x3ea044[_0x374f18(0x1cf)]===_0x1efa4a,...buildAppProfileListFields(_0x1eb112),...buildRemoteAppI18nFields(_0x3ea044),'source':_0x42a1cb[_0x374f18(0x1ca)],'owner':_0x3ea044[_0x374f18(0x1f3)]??null,'status':_0x3ea044[_0x374f18(0x1aa)]??null,'cachedAt':_0x42a1cb['fetchedAt']};}),_0x1c0feb=_0x41ad28(_0x259b45);let _0x3e4268=0x0;for(const [_0x73bcf7,_0x5277ec]of Object[_0x2e9e4f(0x1e7)](_0x1c0feb)){const _0x3b2d43=typeof _0x5277ec['appcode']===_0x2e9e4f(0x1d0)?_0x5277ec['appcode'][_0x2e9e4f(0x1e3)]():'';if(!_0x3b2d43)continue;const _0x38f7d9=findAppByCode(_0x42a1cb[_0x2e9e4f(0x1ba)],_0x3b2d43);if(!_0x150d4c&&_0x38f7d9&&!isRuntimeAccessibleApp(_0x38f7d9))continue;_0x3e4268+=0x1,_0x1ef04c[_0x2e9e4f(0x1cb)]({'name':_0x73bcf7,'appcode':_0x3b2d43,'named':!![],'definedIn':'local','isDefault':_0x73bcf7===_0x1efa4a,...buildAppProfileListFields(_0x1eb112),'source':_0x2e9e4f(0x1bd),'owner':null,'status':null,'cachedAt':null});}enrichAppListItemsWithMergedSelection(_0x1ef04c,_0x1a5c6d[_0x2e9e4f(0x1fb)]);const _0x5b5b67=_0x1ef04c['find'](_0x1b2931=>_0x1b2931['isCurrent']===!![]),_0xccf022=_0x1efa4a??_0x5b5b67?.[_0x2e9e4f(0x1da)]??null,_0x40b6b1={'env':_0x1eb112,'source':_0x42a1cb[_0x2e9e4f(0x1ca)],'fetchedAt':_0x42a1cb[_0x2e9e4f(0x1f2)],'cachePath':_0x42a1cb[_0x2e9e4f(0x1d3)],'globalPath':_0x10d614[_0x2e9e4f(0x1b5)]??null,'projectPath':_0x10d614[_0x2e9e4f(0x1c6)]??null,'defaultApp':_0xccf022,'defaultAppSource':_0x1efa4a!=null?_0xdc3a05:null,'localAliasCount':_0x3e4268,'remoteTotal':_0x42a1cb[_0x2e9e4f(0x1ba)][_0x2e9e4f(0x1ea)],'hiddenUnpublishedCount':_0x2b9a9e,'includeUnpublished':_0x150d4c};if(_0x1ef04c[_0x2e9e4f(0x1ea)]===0x0)return{'ok':!![],'data':{'items':_0x1ef04c,'meta':_0x40b6b1},'message':_0x42a1cb[_0x2e9e4f(0x1ca)]===_0x2e9e4f(0x1d7)?_0x2e9e4f(0x1f8):_0x2e9e4f(0x1e0)};return{'ok':!![],'data':{'items':_0x1ef04c,'meta':_0x40b6b1}};}},pullDef={'service':a3_0x132a24(0x1b9),'command':'pull','description':'Refresh\x20the\x20local\x20app\x20cache\x20from\x20the\x20platform','risk':a3_0x132a24(0x1c8),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a3_0x132a24(0x1ae),'type':a3_0x132a24(0x1d0),'description':a3_0x132a24(0x1f7),'enum':[...RUNTIME_ENV_VALUES]},{'name':a3_0x132a24(0x1b2),'type':a3_0x132a24(0x1ce),'description':a3_0x132a24(0x1d6),'default':![]},{'name':a3_0x132a24(0x1d2),'type':a3_0x132a24(0x1ce),'description':a3_0x132a24(0x1cc),'default':![]}],async 'execute'(_0x3dfae2){const _0x31c15e=a3_0x132a24,_0x3e35a3=_0x3dfae2[_0x31c15e(0x1f9)](_0x31c15e(0x1ae))||_0x3dfae2[_0x31c15e(0x1bf)]||getEnv()||_0x31c15e(0x1c9),_0x483fa1=_0x3dfae2[_0x31c15e(0x1f6)](_0x31c15e(0x1b2)),_0x59f91a=_0x3dfae2[_0x31c15e(0x1f6)](_0x31c15e(0x1d2)),{getRemoteAppList:_0x5ea2e4}=await import(_0x31c15e(0x1bc)),_0x280b52=await _0x5ea2e4({'env':_0x3e35a3,'accessKey':_0x3dfae2[_0x31c15e(0x1cd)],'localOnly':_0x483fa1,'noCache':_0x59f91a});return{'ok':!![],'data':{'total':_0x280b52[_0x31c15e(0x1ba)][_0x31c15e(0x1ea)],'env':_0x3e35a3,'source':_0x280b52[_0x31c15e(0x1ca)],'fetchedAt':_0x280b52[_0x31c15e(0x1f2)],'cachePath':_0x280b52['cachePath']},'message':_0x280b52[_0x31c15e(0x1ca)]===_0x31c15e(0x1d7)?'Loaded\x20'+_0x280b52['items'][_0x31c15e(0x1ea)]+'\x20cached\x20app(s)\x20for\x20env=\x22'+_0x3e35a3+'\x22.':_0x31c15e(0x1c5)+_0x280b52[_0x31c15e(0x1ba)][_0x31c15e(0x1ea)]+'\x20app(s)\x20for\x20env=\x22'+_0x3e35a3+'\x22.'};}},useDef={'service':a3_0x132a24(0x1b9),'command':'use','description':a3_0x132a24(0x1e9),'risk':a3_0x132a24(0x1c8),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'args':[{'name':a3_0x132a24(0x1da),'description':a3_0x132a24(0x1de),'required':!![]}],'flags':[GLOBAL_FLAG],async 'validate'(_0x5ae178){const _0x249502=a3_0x132a24;if(!_0x5ae178[_0x249502(0x1eb)][0x0])throw CliErrors[_0x249502(0x1c2)]('Missing\x20app\x20name.',_0x249502(0x1e2)+CLI_BIN_NAME+_0x249502(0x1db));},async 'execute'(_0x3329ae){const _0x4d142b=a3_0x132a24;warnDeprecatedAppCommand(_0x4d142b(0x1f0),CLI_BIN_NAME+_0x4d142b(0x1ef));const _0x349cc4=_0x3329ae['args'][0x0];if(!_0x349cc4)throw CliErrors['validation'](_0x4d142b(0x1b0),_0x4d142b(0x1e2)+CLI_BIN_NAME+'\x20app\x20use\x20<name>\x20[--global]');const {buildConfigFromFlags:_0x9275ae,resolveLocalAppAliasCode:_0x3f8bc2}=await import(_0x4d142b(0x1bb)),{readCachedAppList:_0x2562d1}=await import(_0x4d142b(0x1d9)),_0x328f27=_0x3329ae[_0x4d142b(0x1f9)](_0x4d142b(0x1ae)),_0xff83c7=_0x9275ae(_0x328f27?{'env':_0x328f27}:{}),_0x499d71=_0x2562d1(_0xff83c7[_0x4d142b(0x1ae)],_0xff83c7[_0x4d142b(0x1cd)]),_0x44419e=_0x499d71?.['items'][_0x4d142b(0x1ab)](_0xce6b70=>_0xce6b70[_0x4d142b(0x1cf)]===_0x349cc4),_0x3258e9=_0x3f8bc2(_0xff83c7[_0x4d142b(0x1af)]??{},_0x349cc4);if(_0x44419e&&!isRuntimeAccessibleApp(_0x44419e))throw runtimeInaccessibleAppError(_0x44419e,'\x22'+_0x349cc4+'\x22');if(_0x3258e9){const _0x565b5d=_0x499d71?.[_0x4d142b(0x1ba)]['find'](_0x3404a8=>_0x3404a8[_0x4d142b(0x1d4)]?.[_0x4d142b(0x1e3)]()===_0x3258e9);if(_0x565b5d&&!isRuntimeAccessibleApp(_0x565b5d))throw runtimeInaccessibleAppError(_0x565b5d,'\x22'+_0x349cc4+'\x22');}if(!_0x44419e&&!_0x3258e9&&_0xff83c7['defaultApp']!==_0x349cc4){const _0x4e557b=[..._0x499d71?.[_0x4d142b(0x1ba)]['map'](_0xdca81a=>_0xdca81a[_0x4d142b(0x1cf)])??[]],_0x244d66=_0x4e557b[_0x4d142b(0x1ea)]===0x0?_0x4d142b(0x1d1)+CLI_BIN_NAME+'\x20app\x20list`\x20to\x20discover\x20remote\x20apps,\x20or\x20add\x20apps.'+_0x349cc4+_0x4d142b(0x1b3):_0x4d142b(0x1f1)+Array[_0x4d142b(0x1ac)](new Set(_0x4e557b))[_0x4d142b(0x1f4)](',\x20')+'.\x20Local\x20aliases\x20can\x20be\x20added\x20under\x20apps.<alias>.appcode.';throw CliErrors[_0x4d142b(0x1c2)]('App\x20\x22'+_0x349cc4+_0x4d142b(0x1b8),_0x244d66);}const _0x25cd35=_0x3329ae[_0x4d142b(0x1f6)](_0x4d142b(0x1b6));let _0x4dbf85;if(_0x25cd35)_0x4dbf85={'global':!![]};else{const {isInProject:_0x62f7ff}=await import(_0x4d142b(0x1bb)),_0x346a18=_0x62f7ff();_0x4dbf85=toScopeFlags(resolveConfigScope({'explicitGlobal':![],'policy':'project-default','inProject':_0x346a18}));}const _0x10b485=readConfig(_0x4dbf85);return _0x10b485[_0x4d142b(0x1be)]=_0x349cc4,writeConfig(_0x10b485,_0x4dbf85),{'ok':!![],'message':_0x4d142b(0x1ad)+_0x349cc4+'\x22'+scopeLabel(_0x4dbf85)+'.'};}};function warnDeprecatedAppCommand(_0x400b5c,_0x4e61fc){const _0x3ab2a2=a3_0x132a24;console[_0x3ab2a2(0x1d8)](CLI_BIN_NAME+'\x20app\x20'+_0x400b5c+_0x3ab2a2(0x1e1)+_0x4e61fc+_0x3ab2a2(0x1ec));}const importDef={'service':'app','command':a3_0x132a24(0x1f5),'description':'Import\x20the\x20default\x20app\x20selection\x20from\x20a\x20.rabetbase.json\x20file','risk':'write','requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':initImportFlagDefs,async 'execute'(_0x1edcd8){return await runInitImport(collectFlags(_0x1edcd8,initImportFlagDefs)),{'ok':!![]};}};export const appDefinitions=[initDef,listDef,pullDef,useDef,importDef];
@@ -1 +1 @@
1
- (function(_0x53f895,_0x30994c){const _0x53177c=a4_0x406a,_0x2923ad=_0x53f895();while(!![]){try{const _0x5704b4=parseInt(_0x53177c(0xee))/0x1*(parseInt(_0x53177c(0xf4))/0x2)+-parseInt(_0x53177c(0xe7))/0x3+parseInt(_0x53177c(0xf0))/0x4+parseInt(_0x53177c(0xec))/0x5+-parseInt(_0x53177c(0xf2))/0x6*(-parseInt(_0x53177c(0xea))/0x7)+parseInt(_0x53177c(0xed))/0x8*(parseInt(_0x53177c(0xf3))/0x9)+-parseInt(_0x53177c(0xe8))/0xa;if(_0x5704b4===_0x30994c)break;else _0x2923ad['push'](_0x2923ad['shift']());}catch(_0x21b320){_0x2923ad['push'](_0x2923ad['shift']());}}}(a4_0x2a42,0xb2545));function a4_0x406a(_0x386e70,_0x5c0449){_0x386e70=_0x386e70-0xe0;const _0x2a42af=a4_0x2a42();let _0x406a9b=_0x2a42af[_0x386e70];return _0x406a9b;}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(_0x231674){const _0xa3bb78=a4_0x406a;if(typeof _0x231674!==_0xa3bb78(0xe3))return null;const _0x1153aa=_0x231674['trim']();return _0x1153aa?_0x1153aa[_0xa3bb78(0xf1)]():null;}export function isRuntimeAccessibleApp(_0x31479a){const _0x23779b=a4_0x406a;return normalizeAppPublishStatus(_0x31479a[_0x23779b(0xe1)])===RUNTIME_ACCESSIBLE_APP_STATUS;}export function filterRuntimeAccessibleApps(_0x4c6e32){return _0x4c6e32['filter'](isRuntimeAccessibleApp);}export function findAppByName(_0x1efcb4,_0xd67dc7){const _0x2f046b=a4_0x406a;return _0x1efcb4['find'](_0x3174cd=>_0x3174cd[_0x2f046b(0xef)]===_0xd67dc7);}export function findAppByCode(_0x4d0a88,_0x29df38){const _0x323e58=a4_0x406a,_0x2a1df1=_0x29df38[_0x323e58(0xe4)]();if(!_0x2a1df1)return undefined;return _0x4d0a88[_0x323e58(0xeb)](_0x250e7a=>_0x250e7a[_0x323e58(0xe6)]?.[_0x323e58(0xe4)]()===_0x2a1df1);}function a4_0x2a42(){const _0x53725f=['appPublishStatus','.\x20Publish\x20the\x20app\x20before\x20using\x20','string','trim','\x20is\x20not\x20available\x20for\x20runtime\x20AI\x20access.','appCode','773121BFfiCI','27623300QNTGqc','UNKNOWN','844221HrIqfl','find','4678130DpaEeq','8878424XzNjNt','192371MImCIX','appName','2673812pPPJPX','toUpperCase','42VvbUmj','9LjDXyD','2sySSXR','App\x20','validation'];a4_0x2a42=function(){return _0x53725f;};return a4_0x2a42();}export function runtimeInaccessibleAppError(_0x49da8b,_0x59fd38){const _0x315ae3=a4_0x406a,_0x34afe7=normalizeAppPublishStatus(_0x49da8b['appPublishStatus'])??_0x315ae3(0xe9);return CliErrors[_0x315ae3(0xe0)](_0x315ae3(0xf5)+_0x59fd38+_0x315ae3(0xe5),'Current\x20status:\x20'+_0x34afe7+_0x315ae3(0xe2)+CLI_BIN_NAME+'\x20dataset/data/sql/bff\x20commands,\x20or\x20choose\x20a\x20published\x20app.');}
1
+ (function(_0x4d877e,_0x496b03){const _0x5924b4=a4_0x478e,_0x41c568=_0x4d877e();while(!![]){try{const _0x1e7ba2=-parseInt(_0x5924b4(0x10f))/0x1*(parseInt(_0x5924b4(0x109))/0x2)+parseInt(_0x5924b4(0x106))/0x3+-parseInt(_0x5924b4(0x100))/0x4+-parseInt(_0x5924b4(0x108))/0x5+parseInt(_0x5924b4(0x110))/0x6*(-parseInt(_0x5924b4(0x104))/0x7)+-parseInt(_0x5924b4(0x103))/0x8*(-parseInt(_0x5924b4(0x102))/0x9)+parseInt(_0x5924b4(0x10a))/0xa;if(_0x1e7ba2===_0x496b03)break;else _0x41c568['push'](_0x41c568['shift']());}catch(_0x28c35e){_0x41c568['push'](_0x41c568['shift']());}}}(a4_0x45f6,0x619a4));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(_0x364904){const _0x4c872b=a4_0x478e;if(typeof _0x364904!=='string')return null;const _0x419b8f=_0x364904[_0x4c872b(0x112)]();return _0x419b8f?_0x419b8f[_0x4c872b(0x105)]():null;}function a4_0x478e(_0x2c7e4f,_0x327feb){_0x2c7e4f=_0x2c7e4f-0x100;const _0x45f646=a4_0x45f6();let _0x478e46=_0x45f646[_0x2c7e4f];return _0x478e46;}export function isRuntimeAccessibleApp(_0x567700){const _0x17479d=a4_0x478e;return normalizeAppPublishStatus(_0x567700[_0x17479d(0x113)])===RUNTIME_ACCESSIBLE_APP_STATUS;}export function filterRuntimeAccessibleApps(_0x4902e7){return _0x4902e7['filter'](isRuntimeAccessibleApp);}function a4_0x45f6(){const _0x4b8b3a=['trim','appPublishStatus','1253368LpFeNj','find','81epIjCe','344408jAvHPe','7sYuguZ','toUpperCase','1644000JLcvpS','appCode','1928270gkuukV','8huuPPr','9074320fbignh','UNKNOWN','\x20dataset/data/sql/bff\x20commands,\x20or\x20choose\x20a\x20published\x20app.','App\x20','Current\x20status:\x20','160211PgTzLf','619626ZRFAgr','appName'];a4_0x45f6=function(){return _0x4b8b3a;};return a4_0x45f6();}export function findAppByName(_0x15753f,_0x1f485d){const _0x1b8959=a4_0x478e;return _0x15753f[_0x1b8959(0x101)](_0x3f2c8a=>_0x3f2c8a[_0x1b8959(0x111)]===_0x1f485d);}export function findAppByCode(_0x476d24,_0x9e6805){const _0x528b62=a4_0x478e,_0x2e0b18=_0x9e6805[_0x528b62(0x112)]();if(!_0x2e0b18)return undefined;return _0x476d24['find'](_0x1e78d1=>_0x1e78d1[_0x528b62(0x107)]?.[_0x528b62(0x112)]()===_0x2e0b18);}export function runtimeInaccessibleAppError(_0x43aead,_0x4a6be9){const _0x1714b7=a4_0x478e,_0x1f4ac8=normalizeAppPublishStatus(_0x43aead[_0x1714b7(0x113)])??_0x1714b7(0x10b);return CliErrors['validation'](_0x1714b7(0x10d)+_0x4a6be9+'\x20is\x20not\x20available\x20for\x20runtime\x20AI\x20access.',_0x1714b7(0x10e)+_0x1f4ac8+'.\x20Publish\x20the\x20app\x20before\x20using\x20'+CLI_BIN_NAME+_0x1714b7(0x10c));}
@@ -1 +1 @@
1
- function a5_0x32f9(_0xe90cd,_0x4705a7){_0xe90cd=_0xe90cd-0x9d;const _0x50e648=a5_0x50e6();let _0x32f9ca=_0x50e648[_0xe90cd];return _0x32f9ca;}(function(_0x1d9e98,_0x372295){const _0x289350=a5_0x32f9,_0x239faf=_0x1d9e98();while(!![]){try{const _0x2ae3c6=parseInt(_0x289350(0xa4))/0x1*(parseInt(_0x289350(0xa0))/0x2)+-parseInt(_0x289350(0xa3))/0x3+-parseInt(_0x289350(0xac))/0x4*(parseInt(_0x289350(0xa7))/0x5)+parseInt(_0x289350(0xb0))/0x6*(-parseInt(_0x289350(0x9e))/0x7)+-parseInt(_0x289350(0xa2))/0x8+parseInt(_0x289350(0x9d))/0x9*(-parseInt(_0x289350(0xa8))/0xa)+parseInt(_0x289350(0xa9))/0xb;if(_0x2ae3c6===_0x372295)break;else _0x239faf['push'](_0x239faf['shift']());}catch(_0x58ea63){_0x239faf['push'](_0x239faf['shift']());}}}(a5_0x50e6,0x38b55));import{fileURLToPath}from'url';import{dirname,join}from'path';import{readFileSync}from'fs';function a5_0x50e6(){const _0x53f236=['success','parse','../../../mock/app-list.json','3750QuMwdp','9ijENdG','3269GRcRbN','utf-8','14tlJgWc','tableData','525440FEBZFk','1345257jZGhgC','42119sezJGz','errorCode','errorMsg','145drPejV','4376370ayhach','15268627ETQsVk','Mock\x20API\x20error:\x20','data','28552zdrOBb'];a5_0x50e6=function(){return _0x53f236;};return a5_0x50e6();}const __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename);function loadMockAppList(){const _0xc8aba8=a5_0x32f9,_0x5a5be6=join(__dirname,_0xc8aba8(0xaf)),_0x1aa660=readFileSync(_0x5a5be6,_0xc8aba8(0x9f));return JSON[_0xc8aba8(0xae)](_0x1aa660);}let _cached=null;export function getMockAppList(){return!_cached&&(_cached=loadMockAppList()),_cached;}export function getMockRemoteAppItems(){const _0x20054a=a5_0x32f9,_0x5a799a=getMockAppList();if(!_0x5a799a[_0x20054a(0xad)])throw new Error(_0x20054a(0xaa)+_0x5a799a[_0x20054a(0xa6)]+'\x20('+_0x5a799a[_0x20054a(0xa5)]+')');return _0x5a799a[_0x20054a(0xab)][_0x20054a(0xa1)];}
1
+ (function(_0x4eecb9,_0x589415){const _0x420553=a5_0x30ed,_0x167b83=_0x4eecb9();while(!![]){try{const _0x21674f=-parseInt(_0x420553(0x77))/0x1*(parseInt(_0x420553(0x72))/0x2)+parseInt(_0x420553(0x70))/0x3+parseInt(_0x420553(0x71))/0x4*(parseInt(_0x420553(0x74))/0x5)+-parseInt(_0x420553(0x75))/0x6+parseInt(_0x420553(0x6b))/0x7+-parseInt(_0x420553(0x76))/0x8+parseInt(_0x420553(0x73))/0x9*(-parseInt(_0x420553(0x6e))/0xa);if(_0x21674f===_0x589415)break;else _0x167b83['push'](_0x167b83['shift']());}catch(_0x31532d){_0x167b83['push'](_0x167b83['shift']());}}}(a5_0x1f95,0xd795f));function a5_0x1f95(){const _0x825473=['2131866xnQzto','4jdHdLv','174830gHUfvc','1972575yNZwad','6970805tqCGJe','1824684lLpyPK','8317760EGofPC','6GjRUpq','errorCode','parse','6060285PSapgW','data','utf-8','10afhrUh','Mock\x20API\x20error:\x20'];a5_0x1f95=function(){return _0x825473;};return a5_0x1f95();}function a5_0x30ed(_0x50cee9,_0x24db49){_0x50cee9=_0x50cee9-0x69;const _0x1f95ae=a5_0x1f95();let _0x30edb7=_0x1f95ae[_0x50cee9];return _0x30edb7;}import{fileURLToPath}from'url';import{dirname,join}from'path';import{readFileSync}from'fs';const __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename);function loadMockAppList(){const _0x279095=a5_0x30ed,_0x177b1d=join(__dirname,'../../../mock/app-list.json'),_0x4ed866=readFileSync(_0x177b1d,_0x279095(0x6d));return JSON[_0x279095(0x6a)](_0x4ed866);}let _cached=null;export function getMockAppList(){return!_cached&&(_cached=loadMockAppList()),_cached;}export function getMockRemoteAppItems(){const _0xe6c60a=a5_0x30ed,_0x2ce250=getMockAppList();if(!_0x2ce250['success'])throw new Error(_0xe6c60a(0x6f)+_0x2ce250['errorMsg']+'\x20('+_0x2ce250[_0xe6c60a(0x69)]+')');return _0x2ce250[_0xe6c60a(0x6c)]['tableData'];}
@@ -1 +1 @@
1
- (function(_0x509b8d,_0xa48487){const _0x4ef80c=a6_0x3983,_0x5cd267=_0x509b8d();while(!![]){try{const _0x228105=-parseInt(_0x4ef80c(0x139))/0x1+-parseInt(_0x4ef80c(0x141))/0x2+-parseInt(_0x4ef80c(0x138))/0x3*(parseInt(_0x4ef80c(0x137))/0x4)+-parseInt(_0x4ef80c(0x142))/0x5*(parseInt(_0x4ef80c(0x134))/0x6)+-parseInt(_0x4ef80c(0x13e))/0x7+parseInt(_0x4ef80c(0x136))/0x8*(-parseInt(_0x4ef80c(0x13f))/0x9)+-parseInt(_0x4ef80c(0x13d))/0xa*(-parseInt(_0x4ef80c(0x132))/0xb);if(_0x228105===_0xa48487)break;else _0x5cd267['push'](_0x5cd267['shift']());}catch(_0x34e084){_0x5cd267['push'](_0x5cd267['shift']());}}}(a6_0x281a,0xc3187));import{getMyApps}from'../../core/api-client.js';import{getMockRemoteAppItems}from'../../commands/app/mock-loader.js';function a6_0x3983(_0x24ac21,_0x328cac){_0x24ac21=_0x24ac21-0x132;const _0x281ae0=a6_0x281a();let _0x3983f7=_0x281ae0[_0x24ac21];return _0x3983f7;}import{getAppCacheFilePath,readCachedAppList,writeCachedAppList}from'../../commands/app/cache.js';import{productEnv}from'../../constant/product.js';export function shouldUseMockRemoteApps(){const _0x121167=a6_0x3983,_0x199ace=(productEnv(_0x121167(0x135))||'')['trim']()[_0x121167(0x144)]();return _0x199ace===_0x121167(0x13b);}export async function getRemoteAppItems(){if(shouldUseMockRemoteApps())return getMockRemoteAppItems();return getMyApps();}export async function getRemoteAppList(_0x2cf9fb){const _0x38d57c=a6_0x3983,{env:_0x3dd043,accessKey:_0x1494f5,localOnly:localOnly=![],noCache:noCache=![]}=_0x2cf9fb,_0x13a169=readCachedAppList(_0x3dd043,_0x1494f5),_0x4a1c9d=_0x1494f5?.['trim']()?getAppCacheFilePath(_0x3dd043,_0x1494f5):null;if(localOnly)return{'items':_0x13a169?.[_0x38d57c(0x140)]??[],'source':_0x38d57c(0x13a),'fetchedAt':_0x13a169?.[_0x38d57c(0x133)]??null,'cachePath':_0x4a1c9d};try{const _0x1525d8=await getRemoteAppItems(),_0x4a75b4=shouldUseMockRemoteApps()?'mock':'remote',_0x15e8a9=new Date()[_0x38d57c(0x143)](),_0xf9775a=_0x1494f5?.[_0x38d57c(0x13c)]()?writeCachedAppList(_0x3dd043,_0x1494f5,{'env':_0x3dd043,'fetchedAt':_0x15e8a9,'source':_0x4a75b4,'items':_0x1525d8}):null;return{'items':_0x1525d8,'source':_0x4a75b4,'fetchedAt':_0x15e8a9,'cachePath':_0xf9775a};}catch(_0x2b8b1b){if(!noCache&&_0x13a169)return{'items':_0x13a169[_0x38d57c(0x140)],'source':_0x38d57c(0x13a),'fetchedAt':_0x13a169[_0x38d57c(0x133)],'cachePath':_0x4a1c9d};throw _0x2b8b1b;}}function a6_0x281a(){const _0x4854c7=['items','1501620ylZXTk','40PckSAj','toISOString','toLowerCase','45980IsSCRe','fetchedAt','631524CsPQVY','APP_LIST_SOURCE','35688kzhqek','8YMoDyz','858894jKJuBS','218402wZeTaP','cache','mock','trim','12340zKJphw','2646917SDyHTq','3222vkWQei'];a6_0x281a=function(){return _0x4854c7;};return a6_0x281a();}
1
+ (function(_0x53f731,_0x1ff799){const _0x1cf37f=a6_0x2da0,_0x219f66=_0x53f731();while(!![]){try{const _0x5cdf53=-parseInt(_0x1cf37f(0xaf))/0x1*(parseInt(_0x1cf37f(0xac))/0x2)+parseInt(_0x1cf37f(0xb3))/0x3+parseInt(_0x1cf37f(0xb2))/0x4*(parseInt(_0x1cf37f(0xb0))/0x5)+-parseInt(_0x1cf37f(0xb5))/0x6+parseInt(_0x1cf37f(0xae))/0x7*(parseInt(_0x1cf37f(0xa9))/0x8)+parseInt(_0x1cf37f(0xa4))/0x9*(parseInt(_0x1cf37f(0xa8))/0xa)+-parseInt(_0x1cf37f(0xa5))/0xb*(parseInt(_0x1cf37f(0xb1))/0xc);if(_0x5cdf53===_0x1ff799)break;else _0x219f66['push'](_0x219f66['shift']());}catch(_0x16dd9d){_0x219f66['push'](_0x219f66['shift']());}}}(a6_0xa72f,0x32dff));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 _0x38c13c=a6_0x2da0,_0x45ac04=(productEnv(_0x38c13c(0xa6))||'')[_0x38c13c(0xab)]()['toLowerCase']();return _0x45ac04===_0x38c13c(0xa7);}function a6_0x2da0(_0x2f8a74,_0x4ca61c){_0x2f8a74=_0x2f8a74-0xa4;const _0xa72f10=a6_0xa72f();let _0x2da017=_0xa72f10[_0x2f8a74];return _0x2da017;}function a6_0xa72f(){const _0x53fd70=['cache','51399xxvkcU','2350942YjtjwV','APP_LIST_SOURCE','mock','590JUWEtp','293816miSHrm','fetchedAt','trim','2xqGFPR','items','14kmpHQb','47201cgsiIv','115375EmAWzP','36KmOAtd','64nUTRTd','944025PakfZA','remote','1185168cnhcta'];a6_0xa72f=function(){return _0x53fd70;};return a6_0xa72f();}export async function getRemoteAppItems(){if(shouldUseMockRemoteApps())return getMockRemoteAppItems();return getMyApps();}export async function getRemoteAppList(_0x200755){const _0x2814a0=a6_0x2da0,{env:_0x194740,accessKey:_0x5dea2f,localOnly:localOnly=![],noCache:noCache=![]}=_0x200755,_0x443b78=readCachedAppList(_0x194740,_0x5dea2f),_0x342657=_0x5dea2f?.[_0x2814a0(0xab)]()?getAppCacheFilePath(_0x194740,_0x5dea2f):null;if(localOnly)return{'items':_0x443b78?.[_0x2814a0(0xad)]??[],'source':_0x2814a0(0xb6),'fetchedAt':_0x443b78?.[_0x2814a0(0xaa)]??null,'cachePath':_0x342657};try{const _0x276f7d=await getRemoteAppItems(),_0x322d32=shouldUseMockRemoteApps()?_0x2814a0(0xa7):_0x2814a0(0xb4),_0x65b624=new Date()['toISOString'](),_0x4fdf12=_0x5dea2f?.[_0x2814a0(0xab)]()?writeCachedAppList(_0x194740,_0x5dea2f,{'env':_0x194740,'fetchedAt':_0x65b624,'source':_0x322d32,'items':_0x276f7d}):null;return{'items':_0x276f7d,'source':_0x322d32,'fetchedAt':_0x65b624,'cachePath':_0x4fdf12};}catch(_0x53f71f){if(!noCache&&_0x443b78)return{'items':_0x443b78['items'],'source':_0x2814a0(0xb6),'fetchedAt':_0x443b78['fetchedAt'],'cachePath':_0x342657};throw _0x53f71f;}}
@@ -1 +1 @@
1
- (function(_0x202d54,_0x1894a5){const _0x5b6fce=a7_0x4af0,_0x72dd9d=_0x202d54();while(!![]){try{const _0x5198b4=-parseInt(_0x5b6fce(0xf8))/0x1+-parseInt(_0x5b6fce(0x105))/0x2*(parseInt(_0x5b6fce(0x104))/0x3)+-parseInt(_0x5b6fce(0x103))/0x4*(parseInt(_0x5b6fce(0x109))/0x5)+-parseInt(_0x5b6fce(0x107))/0x6*(-parseInt(_0x5b6fce(0xf6))/0x7)+parseInt(_0x5b6fce(0x10c))/0x8+-parseInt(_0x5b6fce(0x10a))/0x9+parseInt(_0x5b6fce(0x102))/0xa*(parseInt(_0x5b6fce(0x10b))/0xb);if(_0x5198b4===_0x1894a5)break;else _0x72dd9d['push'](_0x72dd9d['shift']());}catch(_0x289d3a){_0x72dd9d['push'](_0x72dd9d['shift']());}}}(a7_0x5957,0x9c4eb));import{CLI_BIN_NAME}from'../../constant/cli.js';import{formatScopeLabel}from'../../commands/common/config-policy.js';export{CLI_BIN_NAME};export function enrichAppListItemsWithMergedSelection(_0x50f0a5,_0x49988f){const _0x32a08d=a7_0x4af0;if(!_0x49988f)return;const _0x270367=!!(_0x49988f[_0x32a08d(0xff)]??_0x49988f[_0x32a08d(0x100)]);for(const _0x49dd91 of _0x50f0a5){_0x49dd91['isCurrent']=![];}const _0x17bb4c=_0x49988f[_0x32a08d(0xfe)]!=null?String(_0x49988f['appCode'])[_0x32a08d(0x106)]():'';if(_0x270367){const _0x1561c0=_0x49988f[_0x32a08d(0xff)]??_0x49988f[_0x32a08d(0x100)];if(_0x1561c0){const _0x43f765=_0x50f0a5['find'](_0x110c65=>_0x110c65['named']===!![]&&_0x110c65[_0x32a08d(0x101)]===_0x1561c0&&_0x110c65[_0x32a08d(0xf9)]==='local'),_0x55b81a=_0x43f765??_0x50f0a5['find'](_0x58d4d0=>_0x58d4d0[_0x32a08d(0xfc)]===!![]&&_0x58d4d0[_0x32a08d(0x101)]===_0x1561c0);if(_0x55b81a){const _0x79730=String(_0x55b81a['appcode']??'')[_0x32a08d(0x106)]();if(!_0x17bb4c||_0x79730===_0x17bb4c){_0x55b81a['isCurrent']=!![];return;}}}if(_0x17bb4c){const _0x4c00b4=_0x50f0a5[_0x32a08d(0xfd)](_0x12ecd=>String(_0x12ecd[_0x32a08d(0x108)]??'')['trim']()===_0x17bb4c);_0x4c00b4&&(_0x4c00b4[_0x32a08d(0xfb)]=!![]);}return;}if(!_0x17bb4c)return;for(const _0x4d95fb of _0x50f0a5){String(_0x4d95fb[_0x32a08d(0x108)]??'')[_0x32a08d(0x106)]()===_0x17bb4c&&(_0x4d95fb[_0x32a08d(0xfb)]=!![]);}}export{readScopedConfig as readConfig,writeScopedConfig as writeConfig,isInProject}from'../../context.js';export function scopeLabel(_0x1318b2){const _0x3752a2=a7_0x4af0;return formatScopeLabel(_0x1318b2[_0x3752a2(0xf7)]?_0x3752a2(0xf7):_0x3752a2(0xfa));}function a7_0x4af0(_0x19e425,_0x27ecdb){_0x19e425=_0x19e425-0xf6;const _0x59571f=a7_0x5957();let _0x4af087=_0x59571f[_0x19e425];return _0x4af087;}function a7_0x5957(){const _0x310efd=['trim','396qEAkQE','appcode','50UrDWrp','6434946RVFVdQ','6138prNCKj','128816tGymbo','10437nzGyCP','global','1131903QdMEAP','definedIn','project','isCurrent','named','find','appCode','currentApp','defaultApp','name','66970gWWWDF','148924dSpYkK','6HEWdfX','991992aErEmN'];a7_0x5957=function(){return _0x310efd;};return a7_0x5957();}
1
+ (function(_0x928dd2,_0x40062f){const _0x31bbae=a7_0x4667,_0x8f80cb=_0x928dd2();while(!![]){try{const _0xbf931b=parseInt(_0x31bbae(0x139))/0x1*(parseInt(_0x31bbae(0x13b))/0x2)+-parseInt(_0x31bbae(0x131))/0x3+parseInt(_0x31bbae(0x12f))/0x4*(parseInt(_0x31bbae(0x12e))/0x5)+parseInt(_0x31bbae(0x138))/0x6+-parseInt(_0x31bbae(0x13e))/0x7+-parseInt(_0x31bbae(0x13a))/0x8*(-parseInt(_0x31bbae(0x13d))/0x9)+-parseInt(_0x31bbae(0x130))/0xa;if(_0xbf931b===_0x40062f)break;else _0x8f80cb['push'](_0x8f80cb['shift']());}catch(_0x4468be){_0x8f80cb['push'](_0x8f80cb['shift']());}}}(a7_0x1692,0x8a3a0));function a7_0x4667(_0x4159b5,_0x3d6772){_0x4159b5=_0x4159b5-0x12d;const _0x1692d4=a7_0x1692();let _0x466787=_0x1692d4[_0x4159b5];return _0x466787;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{formatScopeLabel}from'../../commands/common/config-policy.js';export{CLI_BIN_NAME};export function enrichAppListItemsWithMergedSelection(_0x5819c1,_0x570039){const _0x20b797=a7_0x4667;if(!_0x570039)return;const _0x5224b1=!!(_0x570039['currentApp']??_0x570039[_0x20b797(0x142)]);for(const _0x250adf of _0x5819c1){_0x250adf['isCurrent']=![];}const _0x96b30f=_0x570039[_0x20b797(0x135)]!=null?String(_0x570039[_0x20b797(0x135)])['trim']():'';if(_0x5224b1){const _0x773b8f=_0x570039[_0x20b797(0x140)]??_0x570039[_0x20b797(0x142)];if(_0x773b8f){const _0x40aaaf=_0x5819c1[_0x20b797(0x137)](_0x413a0f=>_0x413a0f[_0x20b797(0x12d)]===!![]&&_0x413a0f[_0x20b797(0x136)]===_0x773b8f&&_0x413a0f['definedIn']===_0x20b797(0x133)),_0x1922dd=_0x40aaaf??_0x5819c1['find'](_0x21a8f5=>_0x21a8f5['named']===!![]&&_0x21a8f5['name']===_0x773b8f);if(_0x1922dd){const _0x1703e3=String(_0x1922dd[_0x20b797(0x13c)]??'')[_0x20b797(0x13f)]();if(!_0x96b30f||_0x1703e3===_0x96b30f){_0x1922dd[_0x20b797(0x134)]=!![];return;}}}if(_0x96b30f){const _0x2048ac=_0x5819c1[_0x20b797(0x137)](_0x1cce25=>String(_0x1cce25[_0x20b797(0x13c)]??'')[_0x20b797(0x13f)]()===_0x96b30f);_0x2048ac&&(_0x2048ac[_0x20b797(0x134)]=!![]);}return;}if(!_0x96b30f)return;for(const _0x3bd0fa of _0x5819c1){String(_0x3bd0fa[_0x20b797(0x13c)]??'')[_0x20b797(0x13f)]()===_0x96b30f&&(_0x3bd0fa[_0x20b797(0x134)]=!![]);}}function a7_0x1692(){const _0x3a3f53=['8yYZfcG','22gAcRsn','appcode','6565239DeLoXb','964509nJEUra','trim','currentApp','global','defaultApp','named','25285YhCyeg','820hCSUHB','17389980KYSDKz','1693764rHmMQO','project','local','isCurrent','appCode','name','find','1882578GzhCOf','84330RIbiaa'];a7_0x1692=function(){return _0x3a3f53;};return a7_0x1692();}export{readScopedConfig as readConfig,writeScopedConfig as writeConfig,isInProject}from'../../context.js';export function scopeLabel(_0x2d705c){const _0x4d2815=a7_0x4667;return formatScopeLabel(_0x2d705c[_0x4d2815(0x141)]?_0x4d2815(0x141):_0x4d2815(0x132));}
@@ -1 +1 @@
1
- const a8_0x1e7cdc=a8_0x5874;(function(_0x8f811e,_0x1d6b77){const _0x3505bf=a8_0x5874,_0x2930ac=_0x8f811e();while(!![]){try{const _0xe12abf=-parseInt(_0x3505bf(0x121))/0x1*(-parseInt(_0x3505bf(0x122))/0x2)+parseInt(_0x3505bf(0x119))/0x3*(-parseInt(_0x3505bf(0x11f))/0x4)+-parseInt(_0x3505bf(0x113))/0x5+-parseInt(_0x3505bf(0x124))/0x6*(parseInt(_0x3505bf(0x125))/0x7)+-parseInt(_0x3505bf(0x116))/0x8+-parseInt(_0x3505bf(0x115))/0x9+parseInt(_0x3505bf(0x11a))/0xa*(parseInt(_0x3505bf(0x127))/0xb);if(_0xe12abf===_0x1d6b77)break;else _0x2930ac['push'](_0x2930ac['shift']());}catch(_0x4cbf0c){_0x2930ac['push'](_0x2930ac['shift']());}}}(a8_0x4f82,0x9f545));function a8_0x4f82(){const _0x22f3ec=['10wJSqdd','Unable\x20to\x20inspect\x20app-config\x20key\x20status:\x20key=','read','appCode','Check\x20that\x20the\x20key\x20exists,\x20the\x20current\x20AccessKey\x20has\x20permission,\x20and\x20the\x20runtime\x20read-only\x20app-config\x20endpoint\x20is\x20available.','595388tPSUUt','validation','2927JMZLKB','538VZGssj','get','238422mSTjLP','119qSeXKd',',\x20appCode=','30240826VFXoBD','args','Check\x20whether\x20one\x20runtime\x20app-config\x20key\x20is\x20configured\x20without\x20printing\x20its\x20value','1478495Ammevi','apiError','5303529PequHp','8205704fJqtop','app-config','trim','6tIymSD'];a8_0x4f82=function(){return _0x22f3ec;};return a8_0x4f82();}import{getRuntimeAppConfigByKey}from'../../core/api-client.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';function a8_0x5874(_0x76435f,_0x43b8e5){_0x76435f=_0x76435f-0x111;const _0x4f820d=a8_0x4f82();let _0x587445=_0x4f820d[_0x76435f];return _0x587445;}import{projectAppConfigVisibilityCheck}from'../../commands/app-config/shared.js';export const appConfigGet={'service':a8_0x1e7cdc(0x117),'command':a8_0x1e7cdc(0x123),'description':a8_0x1e7cdc(0x112),'risk':a8_0x1e7cdc(0x11c),'args':[{'name':'key','description':'App\x20config\x20key','required':!![]}],'flags':[],async 'execute'(_0xa2d470){const _0x238749=a8_0x1e7cdc,_0x337a6e=_0xa2d470[_0x238749(0x111)][0x0]?.[_0x238749(0x118)]();if(!_0x337a6e)throw CliErrors[_0x238749(0x120)]('Missing\x20app-config\x20key.','Usage:\x20'+CLI_BIN_NAME+'\x20app-config\x20get\x20<key>');try{const _0x1af86f=await getRuntimeAppConfigByKey(_0xa2d470[_0x238749(0x11d)],_0x337a6e);return{'ok':!![],'data':projectAppConfigVisibilityCheck(_0x1af86f,{'appCode':_0xa2d470['appCode'],'key':_0x337a6e})};}catch{throw CliErrors[_0x238749(0x114)](_0x238749(0x11b)+_0x337a6e+_0x238749(0x126)+_0xa2d470[_0x238749(0x11d)],_0x238749(0x11e));}}};
1
+ function a8_0x5f3c(_0x461772,_0x3110e8){_0x461772=_0x461772-0x15c;const _0x3e84a4=a8_0x3e84();let _0x5f3c49=_0x3e84a4[_0x461772];return _0x5f3c49;}const a8_0x526fc7=a8_0x5f3c;(function(_0x592dc4,_0x5b02ca){const _0x40a7cd=a8_0x5f3c,_0xc737ab=_0x592dc4();while(!![]){try{const _0xd88c6a=parseInt(_0x40a7cd(0x172))/0x1*(parseInt(_0x40a7cd(0x160))/0x2)+parseInt(_0x40a7cd(0x15f))/0x3+parseInt(_0x40a7cd(0x166))/0x4+-parseInt(_0x40a7cd(0x171))/0x5*(parseInt(_0x40a7cd(0x16a))/0x6)+parseInt(_0x40a7cd(0x162))/0x7*(parseInt(_0x40a7cd(0x170))/0x8)+parseInt(_0x40a7cd(0x163))/0x9+-parseInt(_0x40a7cd(0x16d))/0xa;if(_0xd88c6a===_0x5b02ca)break;else _0xc737ab['push'](_0xc737ab['shift']());}catch(_0x5b0064){_0xc737ab['push'](_0xc737ab['shift']());}}}(a8_0x3e84,0xad3aa));import{getRuntimeAppConfigByKey}from'../../core/api-client.js';function a8_0x3e84(){const _0x330620=['apiError','appCode','17913580UTebTV','\x20app-config\x20get\x20<key>','args','8oDILvH','4295UQGLNy','1XjtBxS','Check\x20that\x20the\x20key\x20exists,\x20the\x20current\x20AccessKey\x20has\x20permission,\x20and\x20the\x20runtime\x20read-only\x20app-config\x20endpoint\x20is\x20available.','App\x20config\x20key','trim','2452791SetEMb','1432814DRmWjH','read','5039867bhqLXv','10471401ZPxjWy','Missing\x20app-config\x20key.','Check\x20whether\x20one\x20runtime\x20app-config\x20key\x20is\x20configured\x20without\x20printing\x20its\x20value','1748856szqKlK','Unable\x20to\x20inspect\x20app-config\x20key\x20status:\x20key=','key',',\x20appCode=','9456XPzAPg'];a8_0x3e84=function(){return _0x330620;};return a8_0x3e84();}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{projectAppConfigVisibilityCheck}from'../../commands/app-config/shared.js';export const appConfigGet={'service':'app-config','command':'get','description':a8_0x526fc7(0x165),'risk':a8_0x526fc7(0x161),'args':[{'name':a8_0x526fc7(0x168),'description':a8_0x526fc7(0x15d),'required':!![]}],'flags':[],async 'execute'(_0x21def5){const _0x225c3b=a8_0x526fc7,_0x3ef971=_0x21def5[_0x225c3b(0x16f)][0x0]?.[_0x225c3b(0x15e)]();if(!_0x3ef971)throw CliErrors['validation'](_0x225c3b(0x164),'Usage:\x20'+CLI_BIN_NAME+_0x225c3b(0x16e));try{const _0x1bd30d=await getRuntimeAppConfigByKey(_0x21def5['appCode'],_0x3ef971);return{'ok':!![],'data':projectAppConfigVisibilityCheck(_0x1bd30d,{'appCode':_0x21def5[_0x225c3b(0x16c)],'key':_0x3ef971})};}catch{throw CliErrors[_0x225c3b(0x16b)](_0x225c3b(0x167)+_0x3ef971+_0x225c3b(0x169)+_0x21def5[_0x225c3b(0x16c)],_0x225c3b(0x15c));}}};
@@ -1 +1 @@
1
- function a9_0x4ef1(_0x457966,_0x48af64){_0x457966=_0x457966-0x1b0;const _0x501418=a9_0x5014();let _0x4ef1d7=_0x501418[_0x457966];return _0x4ef1d7;}(function(_0x355159,_0x406264){const _0x3fee90=a9_0x4ef1,_0x5a4bd2=_0x355159();while(!![]){try{const _0x1bd0f8=-parseInt(_0x3fee90(0x1b5))/0x1+-parseInt(_0x3fee90(0x1b2))/0x2*(-parseInt(_0x3fee90(0x1b3))/0x3)+parseInt(_0x3fee90(0x1b0))/0x4*(-parseInt(_0x3fee90(0x1b1))/0x5)+-parseInt(_0x3fee90(0x1b8))/0x6+parseInt(_0x3fee90(0x1b7))/0x7+parseInt(_0x3fee90(0x1b6))/0x8+parseInt(_0x3fee90(0x1b4))/0x9;if(_0x1bd0f8===_0x406264)break;else _0x5a4bd2['push'](_0x5a4bd2['shift']());}catch(_0x269a29){_0x5a4bd2['push'](_0x5a4bd2['shift']());}}}(a9_0x5014,0xaffa1));import{appConfigGet}from'../../commands/app-config/get.js';export const appConfigDefinitions=[appConfigGet];function a9_0x5014(){const _0x7bf7b9=['1002162wlmBcy','4457424usCezS','2325834dLKzoA','5838264OrTCBf','4WvhwaV','3127650eMwtff','4aDqKnm','1714371IZTwOG','11602647UYfdcl'];a9_0x5014=function(){return _0x7bf7b9;};return a9_0x5014();}
1
+ (function(_0x59b7c4,_0x41d12a){const _0x12d1e4=a9_0x2275,_0x48f818=_0x59b7c4();while(!![]){try{const _0x35d77c=parseInt(_0x12d1e4(0xcf))/0x1*(-parseInt(_0x12d1e4(0xcd))/0x2)+-parseInt(_0x12d1e4(0xcb))/0x3*(parseInt(_0x12d1e4(0xc7))/0x4)+parseInt(_0x12d1e4(0xce))/0x5+parseInt(_0x12d1e4(0xd0))/0x6+-parseInt(_0x12d1e4(0xd1))/0x7*(-parseInt(_0x12d1e4(0xca))/0x8)+-parseInt(_0x12d1e4(0xd2))/0x9*(-parseInt(_0x12d1e4(0xc8))/0xa)+parseInt(_0x12d1e4(0xcc))/0xb*(-parseInt(_0x12d1e4(0xc9))/0xc);if(_0x35d77c===_0x41d12a)break;else _0x48f818['push'](_0x48f818['shift']());}catch(_0x3b2baf){_0x48f818['push'](_0x48f818['shift']());}}}(a9_0x3d4b,0xadbee));function a9_0x3d4b(){const _0x1a952a=['4WlkvGs','150sWAunN','4730316weZbGP','1614376FYozYX','462057xbvbqb','33vxhRsk','1371944IQSitO','3490060oCNYwl','1jDYVuQ','7356948cWfXWO','7oidbCO','364959eOVpXj'];a9_0x3d4b=function(){return _0x1a952a;};return a9_0x3d4b();}import{appConfigGet}from'../../commands/app-config/get.js';function a9_0x2275(_0x437a4a,_0x12ad9d){_0x437a4a=_0x437a4a-0xc7;const _0x3d4b97=a9_0x3d4b();let _0x2275da=_0x3d4b97[_0x437a4a];return _0x2275da;}export const appConfigDefinitions=[appConfigGet];
@@ -1 +1 @@
1
- (function(_0x4a1bf9,_0x118e87){const _0x350a31=a10_0x2bf5,_0x387035=_0x4a1bf9();while(!![]){try{const _0x244ad7=-parseInt(_0x350a31(0xf8))/0x1*(-parseInt(_0x350a31(0xf5))/0x2)+-parseInt(_0x350a31(0x109))/0x3*(-parseInt(_0x350a31(0xfd))/0x4)+-parseInt(_0x350a31(0xf1))/0x5*(parseInt(_0x350a31(0xf7))/0x6)+-parseInt(_0x350a31(0xf0))/0x7+-parseInt(_0x350a31(0xff))/0x8+parseInt(_0x350a31(0x107))/0x9*(-parseInt(_0x350a31(0xf3))/0xa)+parseInt(_0x350a31(0xf9))/0xb;if(_0x244ad7===_0x118e87)break;else _0x387035['push'](_0x387035['shift']());}catch(_0x4665e6){_0x387035['push'](_0x387035['shift']());}}}(a10_0x3682,0xf10fb));function normalizeTags(_0x426c67){const _0x5247ef=a10_0x2bf5;if(Array[_0x5247ef(0xf6)](_0x426c67))return _0x426c67[_0x5247ef(0x101)](_0x431752=>String(_0x431752))[_0x5247ef(0x104)](Boolean);if(typeof _0x426c67!==_0x5247ef(0x105))return[];const _0x521812=_0x426c67[_0x5247ef(0xf4)]();if(!_0x521812)return[];try{const _0x5b9aaa=JSON['parse'](_0x521812);if(Array[_0x5247ef(0xf6)](_0x5b9aaa))return _0x5b9aaa[_0x5247ef(0x101)](_0x34d9e1=>String(_0x34d9e1))[_0x5247ef(0x104)](Boolean);}catch{}return _0x521812[_0x5247ef(0x100)](',')['map'](_0x15d4f4=>_0x15d4f4[_0x5247ef(0xf4)]())[_0x5247ef(0x104)](Boolean);}export function projectAppConfigVisibilityCheck(_0x21d312,_0x472fd7){const _0xd269a7=a10_0x2bf5,_0x41c615=_0x21d312[_0xd269a7(0x106)],_0x974db5={'appCode':typeof _0x21d312[_0xd269a7(0x102)]===_0xd269a7(0x105)&&_0x21d312[_0xd269a7(0x102)]['trim']()?_0x21d312['appCode']:_0x472fd7[_0xd269a7(0x102)],'key':typeof _0x21d312[_0xd269a7(0x108)]==='string'&&_0x21d312[_0xd269a7(0x108)][_0xd269a7(0xf4)]()?_0x21d312[_0xd269a7(0x108)]:_0x472fd7[_0xd269a7(0x108)],'tags':normalizeTags(_0x21d312['tags']),'hasValue':typeof _0x41c615==='string'?_0x41c615[_0xd269a7(0xfe)]>0x0:_0x41c615!=null,'valueRedacted':!![],'gmtModified':_0x21d312[_0xd269a7(0xfb)]??_0x21d312[_0xd269a7(0xfc)]??'','gmtCreate':_0x21d312[_0xd269a7(0xfa)]??_0x21d312[_0xd269a7(0xf2)]??''};return typeof _0x21d312[_0xd269a7(0x103)]==='string'&&_0x21d312[_0xd269a7(0x103)]['trim']()&&(_0x974db5['traceId']=_0x21d312[_0xd269a7(0x103)]),_0x974db5;}function a10_0x2bf5(_0x52e5aa,_0x50c233){_0x52e5aa=_0x52e5aa-0xf0;const _0x3682b8=a10_0x3682();let _0x2bf5a8=_0x3682b8[_0x52e5aa];return _0x2bf5a8;}function a10_0x3682(){const _0x3999e6=['appCode','traceId','filter','string','value','4844493nGNPDI','key','3COdEAk','2619687dpCYak','1441455DvzeMa','createTime','30ZGgHov','trim','165238qaSXJs','isArray','6Ruvrbh','22eJeoYz','2135826scArpO','gmtCreate','gmtModified','updateTime','6487496uPIvUP','length','2951264MOHPio','split','map'];a10_0x3682=function(){return _0x3999e6;};return a10_0x3682();}
1
+ (function(_0x371144,_0x1f638e){const _0x364dc9=a10_0x4bf5,_0x2c125f=_0x371144();while(!![]){try{const _0x284286=parseInt(_0x364dc9(0xcb))/0x1+-parseInt(_0x364dc9(0xde))/0x2+parseInt(_0x364dc9(0xc7))/0x3*(parseInt(_0x364dc9(0xdd))/0x4)+parseInt(_0x364dc9(0xd0))/0x5*(parseInt(_0x364dc9(0xcf))/0x6)+-parseInt(_0x364dc9(0xd6))/0x7+-parseInt(_0x364dc9(0xcc))/0x8*(parseInt(_0x364dc9(0xce))/0x9)+-parseInt(_0x364dc9(0xdf))/0xa*(parseInt(_0x364dc9(0xc8))/0xb);if(_0x284286===_0x1f638e)break;else _0x2c125f['push'](_0x2c125f['shift']());}catch(_0x26d859){_0x2c125f['push'](_0x2c125f['shift']());}}}(a10_0x4942,0xe911e));function a10_0x4bf5(_0x2a31f0,_0x1063bc){_0x2a31f0=_0x2a31f0-0xc7;const _0x494216=a10_0x4942();let _0x4bf551=_0x494216[_0x2a31f0];return _0x4bf551;}function normalizeTags(_0x428bb8){const _0x5db963=a10_0x4bf5;if(Array[_0x5db963(0xda)](_0x428bb8))return _0x428bb8[_0x5db963(0xd1)](_0x56f78b=>String(_0x56f78b))[_0x5db963(0xd5)](Boolean);if(typeof _0x428bb8!==_0x5db963(0xd8))return[];const _0x9bae22=_0x428bb8[_0x5db963(0xca)]();if(!_0x9bae22)return[];try{const _0x19c2fe=JSON['parse'](_0x9bae22);if(Array[_0x5db963(0xda)](_0x19c2fe))return _0x19c2fe['map'](_0x384273=>String(_0x384273))[_0x5db963(0xd5)](Boolean);}catch{}return _0x9bae22[_0x5db963(0xd9)](',')['map'](_0x507dec=>_0x507dec[_0x5db963(0xca)]())[_0x5db963(0xd5)](Boolean);}function a10_0x4942(){const _0x5dcd44=['traceId','string','split','isArray','tags','gmtModified','20istyyo','3545518GikbWI','30UDIAyV','1090335oYCYsv','540188SVJycK','appCode','trim','1325300kWrzhO','8geaGDp','key','7941204pFurml','78VyWOyC','583855GqQxZw','map','value','updateTime','createTime','filter','6324185WOmiQb'];a10_0x4942=function(){return _0x5dcd44;};return a10_0x4942();}export function projectAppConfigVisibilityCheck(_0x4b68ab,_0x37276c){const _0x532852=a10_0x4bf5,_0x1d0e15=_0x4b68ab[_0x532852(0xd2)],_0x2d72d4={'appCode':typeof _0x4b68ab[_0x532852(0xc9)]===_0x532852(0xd8)&&_0x4b68ab[_0x532852(0xc9)]['trim']()?_0x4b68ab[_0x532852(0xc9)]:_0x37276c[_0x532852(0xc9)],'key':typeof _0x4b68ab[_0x532852(0xcd)]===_0x532852(0xd8)&&_0x4b68ab[_0x532852(0xcd)][_0x532852(0xca)]()?_0x4b68ab[_0x532852(0xcd)]:_0x37276c[_0x532852(0xcd)],'tags':normalizeTags(_0x4b68ab[_0x532852(0xdb)]),'hasValue':typeof _0x1d0e15===_0x532852(0xd8)?_0x1d0e15['length']>0x0:_0x1d0e15!=null,'valueRedacted':!![],'gmtModified':_0x4b68ab[_0x532852(0xdc)]??_0x4b68ab[_0x532852(0xd3)]??'','gmtCreate':_0x4b68ab['gmtCreate']??_0x4b68ab[_0x532852(0xd4)]??''};return typeof _0x4b68ab['traceId']===_0x532852(0xd8)&&_0x4b68ab[_0x532852(0xd7)][_0x532852(0xca)]()&&(_0x2d72d4[_0x532852(0xd7)]=_0x4b68ab['traceId']),_0x2d72d4;}