@lovrabet/lovrabet-cli 2.3.0-beta.2 → 2.3.0-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.
- package/lib/cli.js +1 -1
- package/lib/commands/api-doc/index.js +1 -1
- package/lib/commands/app/cache.js +1 -1
- package/lib/commands/app/definitions.js +1 -1
- package/lib/commands/app/eligibility.js +1 -1
- package/lib/commands/app/mock-loader.js +1 -1
- package/lib/commands/app/remote-source.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/artifact/index.js +1 -1
- package/lib/commands/auth/device.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/auth/prompt.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/exec.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/common/config-policy.js +1 -1
- package/lib/commands/common/constraints.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/config/definitions.js +1 -1
- package/lib/commands/config/init.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/sdk-doc.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/notification/config-list.js +1 -1
- package/lib/commands/notification/index.js +1 -1
- package/lib/commands/notification/shared.js +1 -1
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/permit/dataset-get.js +1 -1
- package/lib/commands/permit/dataset-set.js +1 -1
- package/lib/commands/permit/index.js +1 -1
- package/lib/commands/permit/page-get.js +1 -1
- package/lib/commands/permit/page-set.js +1 -1
- package/lib/commands/permit/role-menus-set.js +1 -1
- package/lib/commands/permit/role-menus.js +1 -1
- package/lib/commands/permit/shared.js +1 -1
- package/lib/commands/personal-bff/index.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/create.js +1 -1
- package/lib/commands/role/delete.js +1 -1
- package/lib/commands/role/detail.js +1 -1
- package/lib/commands/role/index.js +1 -1
- package/lib/commands/role/list.js +1 -1
- package/lib/commands/role/shared.js +1 -1
- package/lib/commands/role/update.js +1 -1
- package/lib/commands/role/user-add.js +1 -1
- package/lib/commands/role/user-remove.js +1 -1
- package/lib/commands/schedule/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/service/dynamic.js +1 -1
- package/lib/commands/service/function-name-adapter.js +1 -1
- package/lib/commands/service/index.js +1 -1
- package/lib/commands/service/registry.js +1 -1
- package/lib/commands/skill/commands/create.js +1 -1
- package/lib/commands/skill/commands/diagram.js +1 -1
- package/lib/commands/skill/commands/install.js +1 -1
- package/lib/commands/skill/commands/list.js +1 -1
- package/lib/commands/skill/commands/push.js +1 -1
- package/lib/commands/skill/commands/validate.js +1 -1
- package/lib/commands/skill/diagram.js +1 -1
- package/lib/commands/skill/flags.js +1 -1
- package/lib/commands/skill/index.js +1 -1
- package/lib/commands/skill/manifest-helpers.js +1 -1
- package/lib/commands/skill/push-execute.js +1 -1
- package/lib/commands/skill/push-flow-helpers.js +1 -1
- package/lib/commands/skill/push-retarget.js +1 -1
- package/lib/commands/skill/scopes.js +1 -1
- package/lib/commands/skill/summary.js +1 -1
- package/lib/commands/skill/templates.js +1 -1
- package/lib/commands/skill/validate.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/update.js +1 -1
- package/lib/commands/user-account/bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/config/domain-config.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/app.js +1 -1
- package/lib/constant/auth-mode.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/distribution.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/product.js +1 -1
- package/lib/constant/region.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/url.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/sdk-client.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/dryrun.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/preparse.js +1 -1
- package/lib/framework/rate-limit.js +1 -1
- package/lib/framework/raw-flags.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-confirmation.js +1 -1
- package/lib/framework/runner-error.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/service-order.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/runtime-skill-sync/constants.js +1 -1
- package/lib/skills/runtime-skill-sync/fs-utils.js +1 -1
- package/lib/skills/runtime-skill-sync/hashing.js +1 -1
- package/lib/skills/runtime-skill-sync/install-target.js +1 -1
- package/lib/skills/runtime-skill-sync/links.js +1 -1
- package/lib/skills/runtime-skill-sync/list-local.js +1 -1
- package/lib/skills/runtime-skill-sync/local-files.js +1 -1
- package/lib/skills/runtime-skill-sync/materialize.js +1 -1
- package/lib/skills/runtime-skill-sync/metadata.js +1 -1
- package/lib/skills/runtime-skill-sync/paths.js +1 -1
- package/lib/skills/runtime-skill-sync/push.js +1 -1
- package/lib/skills/runtime-skill-sync/scopes.js +1 -1
- package/lib/skills/runtime-skill-sync/zip-codec.js +1 -1
- package/lib/skills/runtime-skill-sync/zip-package.js +1 -1
- package/lib/skills/runtime-skill-sync.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/utils/access-key-redaction.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/cli-version-policy.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/lossless-json.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/lovrabet/SKILL.md +1 -1
- package/skills/lovrabet.manifest.json +3 -3
package/lib/cli.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
|
|
2
|
+
(function(_0x3ccf48,_0x1c9d29){const _0x278f01=a0_0x3073,_0x38bd3d=_0x3ccf48();while(!![]){try{const _0x1a1679=parseInt(_0x278f01(0x1fe))/0x1+parseInt(_0x278f01(0x202))/0x2*(-parseInt(_0x278f01(0x1fc))/0x3)+parseInt(_0x278f01(0x200))/0x4*(-parseInt(_0x278f01(0x203))/0x5)+-parseInt(_0x278f01(0x1f0))/0x6+parseInt(_0x278f01(0x1fa))/0x7+-parseInt(_0x278f01(0x1e0))/0x8*(parseInt(_0x278f01(0x1f9))/0x9)+-parseInt(_0x278f01(0x1df))/0xa*(-parseInt(_0x278f01(0x1f5))/0xb);if(_0x1a1679===_0x1c9d29)break;else _0x38bd3d['push'](_0x38bd3d['shift']());}catch(_0x134b9f){_0x38bd3d['push'](_0x38bd3d['shift']());}}}(a0_0x179d,0x6d20b));import{jsx as a0_0x260f74}from'react/jsx-runtime';import a0_0x2a9027 from'meow';import{render}from'ink';import{Help}from'./help.js';import{CliError,CliErrors}from'./errors.js';function a0_0x179d(){const _0x1c124f=['unknownCommand','error','handler','Hint:\x20','ERR_STREAM_DESTROYED','exit','input','5316366tVuyzh','flags','ERR_USE_AFTER_CLOSE','message','original','15687683drzqti','Error:\x20','\x20->\x20--','cancelled','18tpmLAv','4447982HvqLYi','\x0aCancelled.\x0a','6294XyrnUR','exitCode','692236Aabari','defaultCommand','2012YQwtoK','./framework/preparse.js','420atrzSv','6605zMaTen',':\x20--','Unexpected\x20error:','[preparse]\x20','name','ExitPromptError','slice','code','args','length','10pdwMEP','1262896cDWUmc','validation','write','help','definition','corrected','log','stderr','assign'];a0_0x179d=function(){return _0x1c124f;};return a0_0x179d();}import{buildConfigFromFlags,initGlobalEnvironment}from'./context.js';import{isKnownService,getServiceEntry,findDefinition,getAllDefinitions,resolveRemovedCommand}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_0x2a9027(helpText,{'importMeta':import.meta,'flags':buildMeowFlags(),'version':getCliVersionDisplay()});void main()['catch'](handleError);async function main(){try{await run();}catch(_0x443191){handleError(_0x443191);}}async function run(){const _0x3168c0=a0_0x3073;let _0x3c6b63=cli['input'][0x0],_0x4d70d8=cli[_0x3168c0(0x1ef)][0x1];const _0x21d918=cli['flags'];try{const {correctFlags:_0x5a5657}=await import(_0x3168c0(0x201)),_0x2c5e52=getAllDefinitions()['flatMap'](_0x131220=>_0x131220[_0x3168c0(0x1f1)]??[]),{flags:_0x351d0c,corrections:_0x354fd6}=_0x5a5657(_0x21d918,_0x2c5e52);if(_0x354fd6[_0x3168c0(0x1de)]>0x0){for(const _0x417cad of _0x354fd6){process[_0x3168c0(0x1e7)][_0x3168c0(0x1e2)](_0x3168c0(0x206)+_0x417cad[_0x3168c0(0x1eb)]+_0x3168c0(0x204)+_0x417cad[_0x3168c0(0x1f4)]+_0x3168c0(0x1f7)+_0x417cad[_0x3168c0(0x1e5)]+'\x0a');}Object[_0x3168c0(0x1e8)](_0x21d918,_0x351d0c);}}catch{}if(!_0x3c6b63){const {waitUntilExit:_0x3fa189}=render(a0_0x260f74(Help,{}));await _0x3fa189();return;}const _0x5a96f4=resolveRemovedCommand(_0x3c6b63,_0x4d70d8);if(_0x5a96f4)throw CliErrors[_0x3168c0(0x1e1)](_0x5a96f4[_0x3168c0(0x1f3)],_0x5a96f4['hint']);if(!isKnownService(_0x3c6b63)){const _0x2a18de=resolveDynamicServiceCommand(cli['input'],_0x21d918);if(_0x2a18de){if(_0x21d918[_0x3168c0(0x1e3)]){console[_0x3168c0(0x1e6)](generateCommandHelp(_0x2a18de[_0x3168c0(0x1e4)]));return;}Object[_0x3168c0(0x1e8)](_0x21d918,_0x2a18de[_0x3168c0(0x1f1)]);const _0xf5388c=buildConfigFromFlags(_0x21d918);await initGlobalEnvironment(_0xf5388c);const _0x40bd49=createPipelineEnv(_0xf5388c,_0x21d918);_0x40bd49[_0x3168c0(0x1dd)]=_0x2a18de['args'],await runCommand(_0x2a18de[_0x3168c0(0x1e4)],_0x40bd49);return;}if(_0x21d918[_0x3168c0(0x1e3)]){const _0x296274=generateDynamicServiceHelp(_0x3c6b63);if(_0x296274){console[_0x3168c0(0x1e6)](_0x296274);return;}}const {waitUntilExit:_0x3f09e7}=render(a0_0x260f74(Help,{}));await _0x3f09e7();return;}const _0x4908fe=getServiceEntry(_0x3c6b63);if(!_0x4d70d8){if(_0x21d918[_0x3168c0(0x1e3)]){console[_0x3168c0(0x1e6)](generateServiceHelp(_0x3c6b63));return;}if(_0x4908fe['defaultCommand'])_0x4d70d8=_0x4908fe[_0x3168c0(0x1ff)];else{console[_0x3168c0(0x1e6)](generateServiceHelp(_0x3c6b63));return;}}const _0x454e06=findDefinition(_0x3c6b63,_0x4d70d8);!_0x454e06&&(console[_0x3168c0(0x1e6)](generateServiceHelp(_0x3c6b63)),handleError(CliErrors[_0x3168c0(0x1e9)](_0x3c6b63+'\x20'+_0x4d70d8)));if(_0x21d918[_0x3168c0(0x1e3)]){console[_0x3168c0(0x1e6)](generateCommandHelp(_0x454e06));return;}const _0x4631fe=buildConfigFromFlags(_0x21d918);await initGlobalEnvironment(_0x4631fe);const _0x5703b4=createPipelineEnv(_0x4631fe,_0x21d918);_0x5703b4[_0x3168c0(0x1dd)]=cli[_0x3168c0(0x1ef)][_0x3168c0(0x1db)](0x2),await runCommand(_0x454e06,_0x5703b4);}function a0_0x3073(_0x4ec629,_0x16533c){_0x4ec629=_0x4ec629-0x1db;const _0x179dc7=a0_0x179d();let _0x3073cf=_0x179dc7[_0x4ec629];return _0x3073cf;}function handleError(_0x38c59c){const _0x3cd1d5=a0_0x3073;if(_0x38c59c instanceof CliError){_0x38c59c[_0x3cd1d5(0x1dc)]===_0x3cd1d5(0x1f8)&&(process[_0x3cd1d5(0x1e7)][_0x3cd1d5(0x1e2)](_0x3cd1d5(0x1fb)),process[_0x3cd1d5(0x1ee)](0x0));console['error'](_0x3cd1d5(0x1f6)+_0x38c59c[_0x3cd1d5(0x1f3)]);if(_0x38c59c['hint'])console[_0x3cd1d5(0x1ea)](_0x3cd1d5(0x1ec)+_0x38c59c['hint']);process[_0x3cd1d5(0x1ee)](_0x38c59c[_0x3cd1d5(0x1fd)]);}isUserCancellation(_0x38c59c)&&(process['stderr']['write']('\x0aCancelled.\x0a'),process[_0x3cd1d5(0x1ee)](0x0)),console['error'](_0x3cd1d5(0x205),_0x38c59c),process['exit'](0x1);}function isUserCancellation(_0x15eb59){const _0x5093f4=a0_0x3073;if(!(_0x15eb59 instanceof Error))return![];if(_0x15eb59[_0x5093f4(0x207)]===_0x5093f4(0x208))return!![];if(_0x15eb59[_0x5093f4(0x1dc)]===_0x5093f4(0x1f2))return!![];if(_0x15eb59['code']===_0x5093f4(0x1ed))return!![];return![];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a1_0x85d992=a1_0x5938;(function(_0x2b38eb,_0x1aa2df){const _0x1a38de=a1_0x5938,_0x504569=_0x2b38eb();while(!![]){try{const _0xd6f281=-parseInt(_0x1a38de(0x119))/0x1+-parseInt(_0x1a38de(0xdc))/0x2*(-parseInt(_0x1a38de(0xf2))/0x3)+parseInt(_0x1a38de(0xcc))/0x4*(parseInt(_0x1a38de(0x12b))/0x5)+parseInt(_0x1a38de(0x121))/0x6+parseInt(_0x1a38de(0xcd))/0x7+-parseInt(_0x1a38de(0xf6))/0x8+-parseInt(_0x1a38de(0xc5))/0x9;if(_0xd6f281===_0x1aa2df)break;else _0x504569['push'](_0x504569['shift']());}catch(_0x4a2b08){_0x504569['push'](_0x504569['shift']());}}}(a1_0x1fb1,0xcb360));import{CliErrors}from'../../errors.js';function a1_0x5938(_0x21512f,_0x2afdc3){_0x21512f=_0x21512f-0xb9;const _0x1fb117=a1_0x1fb1();let _0x5938d0=_0x1fb117[_0x21512f];return _0x5938d0;}const CATEGORY_FLAG={'name':a1_0x85d992(0xd2),'type':a1_0x85d992(0xf8),'description':a1_0x85d992(0xc6)},KEYWORD_FLAG={'name':a1_0x85d992(0x122),'type':a1_0x85d992(0xf8),'description':'Search\x20docs\x20by\x20code,\x20summary,\x20path,\x20or\x20usage\x20text'},DOC_CODE_FLAG={'name':a1_0x85d992(0xeb),'type':a1_0x85d992(0xf8),'required':!![],'description':'API\x20doc\x20code,\x20for\x20example\x20dataset_list'},DOCS=[{'code':a1_0x85d992(0x108),'category':a1_0x85d992(0xf9),'title':a1_0x85d992(0xd7),'method':a1_0x85d992(0x134),'path':a1_0x85d992(0xfb),'summary':a1_0x85d992(0x11c),'whenToUse':'Use\x20when\x20you\x20need\x20a\x20paginated\x20runtime\x20dataset\x20list\x20by\x20appCode\x20and\x20want\x20to\x20collect\x20available\x20datasetCode\x20values','pathParams':[],'queryParams':[],'bodySchema':a1_0x85d992(0xe5),'responseHighlights':[a1_0x85d992(0xfe),a1_0x85d992(0x10d)],'examples':[a1_0x85d992(0x116)],'notes':[a1_0x85d992(0x117)],'markdown':[a1_0x85d992(0xe6),'','Use\x20this\x20API\x20or\x20`lovrabet\x20dataset\x20list`\x20to\x20discover\x20available\x20dataset\x20codes\x20before\x20reading\x20data.'][a1_0x85d992(0xea)]('\x0a')},{'code':a1_0x85d992(0xc2),'category':'dataset','title':a1_0x85d992(0x127),'method':a1_0x85d992(0x103),'path':a1_0x85d992(0xce),'summary':'Get\x20dataset\x20detail','whenToUse':a1_0x85d992(0xf3),'pathParams':[],'queryParams':[{'name':a1_0x85d992(0xeb),'description':a1_0x85d992(0xca)}],'bodySchema':'None','responseHighlights':[a1_0x85d992(0xff),'relations\x20contains\x20the\x20object-shaped\x20API\x20relations\x20value\x20when\x20returned',a1_0x85d992(0x135)],'examples':['lovrabet\x20dataset\x20detail\x20--code\x20<datasetCode>\x20--appcode\x20<appCode>'],'notes':[a1_0x85d992(0xfc)],'markdown':[a1_0x85d992(0xe8),'',a1_0x85d992(0xd0)][a1_0x85d992(0xea)]('\x0a')},{'code':a1_0x85d992(0x104),'category':a1_0x85d992(0xf9),'title':a1_0x85d992(0xc4),'method':a1_0x85d992(0x134),'path':a1_0x85d992(0xd8),'summary':'Filter\x20dataset\x20records','whenToUse':a1_0x85d992(0xbb),'pathParams':[{'name':a1_0x85d992(0x109),'description':a1_0x85d992(0x10e)},{'name':a1_0x85d992(0x10a),'description':a1_0x85d992(0xca)}],'queryParams':[],'bodySchema':a1_0x85d992(0x112),'responseHighlights':[a1_0x85d992(0x129),a1_0x85d992(0x102)],'examples':[a1_0x85d992(0xe2),a1_0x85d992(0xe0)],'notes':['where,\x20select,\x20orderBy,\x20currentPage,\x20and\x20pageSize\x20belong\x20inside\x20one\x20--params\x20JSON\x20object;\x20they\x20are\x20not\x20standalone\x20CLI\x20flags.',a1_0x85d992(0xc7),'Verify\x20tableData\x20and\x20paging\x20before\x20treating\x20the\x20response\x20as\x20a\x20business\x20fact.',a1_0x85d992(0xc0)],'markdown':[a1_0x85d992(0xc8),'','Use\x20`where`,\x20`select`,\x20`orderBy`,\x20`currentPage`,\x20and\x20`pageSize`\x20to\x20inspect\x20live\x20data\x20shape.'][a1_0x85d992(0xea)]('\x0a')},{'code':'dataset_data_aggregate','category':a1_0x85d992(0xf9),'title':a1_0x85d992(0xd4),'method':a1_0x85d992(0x134),'path':a1_0x85d992(0xc3),'summary':'Aggregate\x20dataset\x20records','whenToUse':a1_0x85d992(0xba),'pathParams':[{'name':a1_0x85d992(0x109),'description':a1_0x85d992(0x10e)},{'name':a1_0x85d992(0x10a),'description':'32-character\x20dataset\x20code'}],'queryParams':[],'bodySchema':a1_0x85d992(0x10b),'responseHighlights':[a1_0x85d992(0xdf),a1_0x85d992(0xbf)],'examples':['lovrabet\x20data\x20aggregate\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22aggregate\x22:[{\x22column\x22:\x22id\x22,\x22type\x22:\x22COUNT\x22,\x22alias\x22:\x22cnt\x22}]}\x27'],'notes':[a1_0x85d992(0xdd),a1_0x85d992(0x126)],'markdown':[a1_0x85d992(0xe9),'',a1_0x85d992(0xbe)][a1_0x85d992(0xea)]('\x0a')},{'code':a1_0x85d992(0x101),'category':a1_0x85d992(0xf9),'title':a1_0x85d992(0x10c),'method':a1_0x85d992(0x134),'path':a1_0x85d992(0x12d),'summary':'Get\x20one\x20dataset\x20record','whenToUse':a1_0x85d992(0xc9),'pathParams':[{'name':'appCode','description':a1_0x85d992(0x10e)},{'name':a1_0x85d992(0x10a),'description':a1_0x85d992(0xca)}],'queryParams':[],'bodySchema':a1_0x85d992(0x10f),'responseHighlights':[a1_0x85d992(0x107)],'examples':[a1_0x85d992(0xde)],'notes':[a1_0x85d992(0x11b)],'markdown':a1_0x85d992(0x125)},{'code':a1_0x85d992(0xda),'category':a1_0x85d992(0xf9),'title':'Create\x20dataset\x20record','method':a1_0x85d992(0x134),'path':a1_0x85d992(0x11d),'summary':a1_0x85d992(0x12e),'whenToUse':a1_0x85d992(0x120),'pathParams':[{'name':a1_0x85d992(0x109),'description':a1_0x85d992(0x10e)},{'name':a1_0x85d992(0x10a),'description':a1_0x85d992(0xca)}],'queryParams':[],'bodySchema':'{\x22fieldName\x22:\x22value\x22}','responseHighlights':[a1_0x85d992(0xd1)],'examples':[a1_0x85d992(0xcb)],'notes':['This\x20is\x20a\x20write\x20operation;\x20use\x20dry-run\x20when\x20available\x20and\x20safe\x20fixtures\x20for\x20smoke\x20tests.'],'markdown':a1_0x85d992(0xed)},{'code':'bf_detail','category':'bf','title':a1_0x85d992(0x11a),'method':a1_0x85d992(0x103),'path':a1_0x85d992(0x106),'summary':a1_0x85d992(0xc1),'whenToUse':a1_0x85d992(0x123),'pathParams':[{'name':a1_0x85d992(0x109),'description':'Current\x20app\x20code'},{'name':a1_0x85d992(0xb9),'description':a1_0x85d992(0xe3)}],'queryParams':[],'bodySchema':a1_0x85d992(0xf1),'responseHighlights':[a1_0x85d992(0x12c)],'examples':['lovrabet\x20bff\x20detail\x20--name\x20<functionName>'],'notes':[a1_0x85d992(0xd3)],'markdown':a1_0x85d992(0x131)},{'code':a1_0x85d992(0xf5),'category':'bf','title':a1_0x85d992(0xf4),'method':a1_0x85d992(0x134),'path':a1_0x85d992(0x111),'summary':a1_0x85d992(0xfa),'whenToUse':'Use\x20when\x20the\x20target\x20BF\x20functionName\x20is\x20confirmed\x20and\x20you\x20need\x20to\x20call\x20that\x20ENDPOINT','pathParams':[{'name':a1_0x85d992(0x109),'description':a1_0x85d992(0x10e)},{'name':a1_0x85d992(0xb9),'description':a1_0x85d992(0xbd)}],'queryParams':[],'bodySchema':'{\x22param\x22:\x22value\x22}','responseHighlights':[a1_0x85d992(0x128)],'examples':[a1_0x85d992(0x124)],'notes':['Script\x20behavior\x20may\x20have\x20side\x20effects;\x20inspect\x20detail\x20first.'],'markdown':a1_0x85d992(0xe1)},{'code':'custom_sql_execute','category':a1_0x85d992(0x133),'title':'Execute\x20custom\x20SQL','method':a1_0x85d992(0x134),'path':a1_0x85d992(0x11f),'summary':a1_0x85d992(0x132),'whenToUse':a1_0x85d992(0xd6),'pathParams':[],'queryParams':[],'bodySchema':a1_0x85d992(0x118),'responseHighlights':[a1_0x85d992(0xf0)],'examples':[a1_0x85d992(0xbc)],'notes':[a1_0x85d992(0x11e)],'markdown':a1_0x85d992(0xe4)}];function entrySummary(_0xd809c){const _0x40e2b6=a1_0x85d992;return{'code':_0xd809c[_0x40e2b6(0xeb)],'category':_0xd809c[_0x40e2b6(0xd2)],'method':_0xd809c['method'],'path':_0xd809c[_0x40e2b6(0x110)],'summary':_0xd809c['summary'],'whenToUse':_0xd809c['whenToUse']};}export function listApiDocEntries(_0x9ccc54={}){const _0x59ae2f=a1_0x85d992,_0x10684e=String(_0x9ccc54[_0x59ae2f(0xd2)]||'')[_0x59ae2f(0xdb)](),_0x18340a=String(_0x9ccc54['keyword']||'')[_0x59ae2f(0xdb)]()[_0x59ae2f(0x12f)]();return DOCS['filter'](_0x5d6298=>{const _0x457d6b=_0x59ae2f;if(_0x10684e&&_0x5d6298[_0x457d6b(0xd2)]!==_0x10684e)return![];if(!_0x18340a)return!![];return[_0x5d6298[_0x457d6b(0xeb)],_0x5d6298[_0x457d6b(0xd2)],_0x5d6298[_0x457d6b(0x12a)],_0x5d6298['path'],_0x5d6298[_0x457d6b(0xcf)],_0x5d6298[_0x457d6b(0x115)],_0x5d6298[_0x457d6b(0xfd)]][_0x457d6b(0xea)]('\x20')[_0x457d6b(0x12f)]()[_0x457d6b(0xd5)](_0x18340a);})[_0x59ae2f(0xee)](entrySummary);}function a1_0x1fb1(){const _0x4846a9=['Inspect\x20field\x20names,\x20relations,\x20and\x20operation\x20metadata\x20for\x20a\x20known\x20dataset\x20code.','Returns\x20the\x20created\x20record\x20or\x20backend\x20operation\x20result','category','This\x20is\x20an\x20exact\x20lookup\x20by\x20appCode\x20+\x20functionName.\x20The\x20CLI\x20does\x20not\x20enumerate\x20Backend\x20Function\x20definitions\x20or\x20expose\x20platform-only\x20fields.','Aggregate\x20dataset\x20data','includes','Use\x20when\x20the\x20target\x20sqlCode\x20exists\x20and\x20you\x20need\x20to\x20execute\x20that\x20custom\x20SQL','List\x20datasets','/api/{appCode}/{datasetCode}/filter','find','dataset_data_create','trim','2290814wJGtFY','Use\x20`having`\x20only\x20for\x20post-aggregation\x20filters.','lovrabet\x20data\x20getOne\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22id\x22:123}\x27','result\x20rows\x20contain\x20aggregate\x20aliases','lovrabet\x20data\x20filter\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22where\x22:{\x22status\x22:{\x22$eq\x22:\x22active\x22}},\x22orderBy\x22:[{\x22id\x22:\x22asc\x22}],\x22currentPage\x22:2,\x22pageSize\x22:20}\x27','##\x20Execute\x20BF\x20endpoint\x20function\x0a\x0aExecute\x20a\x20known\x20endpoint\x20script.','lovrabet\x20data\x20filter\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22where\x22:{\x22status\x22:{\x22$eq\x22:\x22active\x22}},\x22orderBy\x22:[{\x22id\x22:\x22asc\x22}],\x22currentPage\x22:1,\x22pageSize\x22:20}\x27','Exact\x20endpoint\x20function\x20name','##\x20Execute\x20custom\x20SQL\x0a\x0aExecute\x20a\x20configured\x20SQL\x20script\x20by\x20sqlCode.','{\x22appCode\x22:\x22app-aa63b188\x22,\x22currentPage\x22:1,\x22pageSize\x22:100}','##\x20List\x20datasets','read','##\x20Dataset\x20detail','##\x20Aggregate\x20dataset\x20data','join','code','List\x20available\x20runtime\x20API\x20documentation\x20entries','##\x20Create\x20dataset\x20record\x0a\x0aCreate\x20one\x20data\x20record\x20in\x20a\x20dataset.','map','API\x20doc\x20code\x20not\x20found:\x20','Returns\x20SQL\x20execution\x20payload','None','3ieUKfY','Use\x20when\x20you\x20need\x20fields,\x20table\x20info,\x20relations,\x20or\x20operation\x20definitions\x20for\x20a\x20dataset\x20code','Execute\x20BF\x20endpoint\x20function','bf_execute','7846784gqHWOI','length','string','dataset','Execute\x20a\x20BF\x20endpoint\x20function','/api/dataset/get-dataset-list-by-app-code','If\x20SDK\x20usage\x20is\x20needed,\x20follow\x20with\x20`lovrabet\x20dataset\x20sdk-doc\x20--code\x20<datasetCode>`.','title','tableData\x20contains\x20dataset\x20id/code/name','fields/properties\x20describe\x20data\x20shape','validation','dataset_data_get_one','paging\x20contains\x20pagination','GET','dataset_data_filter','str','/client/bff/endpoint/{appCode}/{functionName}','Returns\x20one\x20matching\x20business\x20record','dataset_list','appCode','datasetCode','{\x22aggregate\x22:[{\x22column\x22:\x20\x22id\x22,\x22type\x22:\x22COUNT\x22,\x22alias\x22:\x22cnt\x22}],\x22groupBy\x22:[]}','Get\x20one\x20dataset\x20record','paging.totalCount\x20gives\x20total\x20rows','Current\x20app\x20code','{\x22id\x22:123}','path','/api/endpoint/{appCode}/{functionName}','{\x22where\x22:{},\x22currentPage\x22:1,\x22pageSize\x22:20}','api-doc','detail','whenToUse','lovrabet\x20dataset\x20list\x20--appcode\x20<appCode>\x20--format\x20compress','CLI\x20users\x20should\x20prefer\x20`lovrabet\x20dataset\x20list`\x20for\x20this\x20workflow.','{\x22appCode\x22:\x22app-aa63b188\x22,\x22sqlCode\x22:\x22xxxxxxxx-xxxxxxxx\x22,\x22params\x22:{}}','1174513KeSFmu','Get\x20BF\x20endpoint\x20function\x20contract','Prefer\x20`filter`\x20when\x20the\x20record\x20id\x20is\x20unknown.','List\x20datasets\x20with\x20pagination','/api/{appCode}/{datasetCode}/create','Use\x20`lovrabet\x20sql\x20detail`\x20before\x20execution.','/api/custom/executeSql','Use\x20when\x20you\x20need\x20to\x20insert\x20one\x20business\x20record\x20into\x20a\x20dataset','7996230mXIHuD','keyword','Use\x20when\x20the\x20function\x20name\x20is\x20already\x20confirmed\x20and\x20you\x20need\x20that\x20ENDPOINT\x27s\x20runtime\x20metadata','lovrabet\x20bff\x20exec\x20--name\x20<functionName>\x20--params\x20\x27{}\x27','##\x20Get\x20one\x20dataset\x20record\x0a\x0aRead\x20one\x20record\x20by\x20id.','`field`\x20is\x20accepted\x20as\x20a\x20deprecated\x20alias\x20for\x20`column`;\x20new\x20calls\x20should\x20use\x20`column`.','Dataset\x20detail','Returns\x20script\x20business\x20payload','tableData\x20contains\x20records','method','203815RnQUDf','CLI\x20returns\x20appCode/functionName/description/version/gmtModified','/api/{appCode}/{datasetCode}/getOne','Create\x20a\x20dataset\x20record','toLowerCase','Show\x20runtime\x20API\x20documentation\x20by\x20code','##\x20Get\x20BF\x20endpoint\x20function\x20contract\x0a\x0aInspect\x20one\x20known\x20endpoint\x20function\x20through\x20the\x20AK-authenticated\x20exact\x20detail\x20API.','Execute\x20custom\x20SQL','custom_sql','POST','operations\x20describes\x20runtime\x20APIs','functionName','Use\x20when\x20you\x20need\x20groupBy\x20plus\x20count,\x20sum,\x20avg,\x20max,\x20or\x20min\x20aggregates','Use\x20when\x20you\x20need\x20to\x20read\x20business\x20data\x20with\x20where,\x20orderBy,\x20pagination,\x20or\x20similar\x20filters','lovrabet\x20sql\x20exec\x20--sqlcode\x20<sqlCode>\x20--params\x20\x27{}\x27','Endpoint\x20function\x20name','Aggregate\x20supports\x20COUNT,\x20SUM,\x20AVG,\x20MAX,\x20and\x20MIN\x20definitions\x20in\x20the\x20`aggregate`\x20array.','where\x20filters\x20before\x20aggregation','Use\x20read-only\x20data\x20commands\x20before\x20writing\x20Artifacts\x20that\x20display\x20real\x20data.','Get\x20a\x20BF\x20endpoint\x20contract\x20by\x20app\x20and\x20function\x20name','dataset_detail','/api/{appCode}/{datasetCode}/aggregate','Filter\x20dataset\x20data','18709011XIwFyr','Filter\x20docs\x20by\x20category,\x20for\x20example\x20dataset','For\x20the\x20next\x20page,\x20keep\x20where/select/orderBy/pageSize\x20unchanged\x20and\x20increment\x20only\x20currentPage,\x20which\x20starts\x20at\x201.','##\x20Filter\x20dataset\x20data','Use\x20when\x20you\x20already\x20know\x20the\x20record\x20id\x20and\x20need\x20one\x20business\x20row\x20from\x20a\x20dataset','32-character\x20dataset\x20code','lovrabet\x20data\x20create\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22name\x22:\x22demo\x22}\x27','148hRAhjx','7561043TEMQBG','/api/dataset/getOneByCode?code={datasetCode}','summary'];a1_0x1fb1=function(){return _0x4846a9;};return a1_0x1fb1();}export function getApiDocDetail(_0xb1fbd4){const _0x406919=a1_0x85d992,_0x54b473=DOCS[_0x406919(0xd9)](_0x3b9e81=>_0x3b9e81[_0x406919(0xeb)]===_0xb1fbd4);if(!_0x54b473)throw CliErrors[_0x406919(0x100)](_0x406919(0xef)+_0xb1fbd4);return{..._0x54b473};}const apiDocList={'service':a1_0x85d992(0x113),'command':'list','description':a1_0x85d992(0xec),'risk':a1_0x85d992(0xe7),'requiresAppCode':![],'flags':[CATEGORY_FLAG,KEYWORD_FLAG],async 'execute'(_0x57c6ec){const _0x5dfbdd=a1_0x85d992,_0x269929=listApiDocEntries({'category':_0x57c6ec[_0x5dfbdd(0x105)](_0x5dfbdd(0xd2)),'keyword':_0x57c6ec[_0x5dfbdd(0x105)](_0x5dfbdd(0x122))});return{'ok':!![],'data':{'total':_0x269929[_0x5dfbdd(0xf7)],'items':_0x269929}};}},apiDocDetail={'service':'api-doc','command':a1_0x85d992(0x114),'description':a1_0x85d992(0x130),'risk':a1_0x85d992(0xe7),'requiresAppCode':![],'flags':[DOC_CODE_FLAG],async 'execute'(_0x1accee){const _0x2233f9=a1_0x85d992;return{'ok':!![],'data':getApiDocDetail(_0x1accee[_0x2233f9(0x105)](_0x2233f9(0xeb)))};}};export const apiDocDefinitions=[apiDocList,apiDocDetail];
|
|
1
|
+
const a1_0x13b218=a1_0x1d57;function a1_0x3c72(){const _0x5dfbd6=['##\x20Execute\x20custom\x20SQL\x0a\x0aExecute\x20a\x20configured\x20SQL\x20script\x20by\x20sqlCode.','This\x20is\x20a\x20write\x20operation;\x20use\x20dry-run\x20when\x20available\x20and\x20safe\x20fixtures\x20for\x20smoke\x20tests.','Use\x20when\x20you\x20need\x20a\x20paginated\x20runtime\x20dataset\x20list\x20by\x20appCode\x20and\x20want\x20to\x20collect\x20available\x20datasetCode\x20values','4oFJHgg','Use\x20`lovrabet\x20sql\x20detail`\x20before\x20execution.','includes','Use\x20when\x20you\x20need\x20to\x20insert\x20one\x20business\x20record\x20into\x20a\x20dataset','499535vJFoyL','Dataset\x20detail','category','lovrabet\x20data\x20create\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22name\x22:\x22demo\x22}\x27','length','Use\x20when\x20you\x20already\x20know\x20the\x20record\x20id\x20and\x20need\x20one\x20business\x20row\x20from\x20a\x20dataset','CLI\x20returns\x20appCode/functionName/description/version/gmtModified','fields/properties\x20describe\x20data\x20shape','appCode','List\x20datasets','api-doc','/api/{appCode}/{datasetCode}/filter','##\x20Execute\x20BF\x20endpoint\x20function\x0a\x0aExecute\x20a\x20known\x20endpoint\x20script.','2874579SJPptN','837044fuOxhv','string','API\x20doc\x20code\x20not\x20found:\x20','POST','/api/{appCode}/{datasetCode}/aggregate','/api/dataset/get-dataset-list-by-app-code','GET','paging.totalCount\x20gives\x20total\x20rows','Use\x20`where`,\x20`select`,\x20`orderBy`,\x20`currentPage`,\x20and\x20`pageSize`\x20to\x20inspect\x20live\x20data\x20shape.','result\x20rows\x20contain\x20aggregate\x20aliases','custom_sql','dataset_data_get_one','trim','/api/endpoint/{appCode}/{functionName}','Current\x20app\x20code','{\x22param\x22:\x22value\x22}','paging\x20contains\x20pagination','/api/custom/executeSql','Use\x20when\x20the\x20function\x20name\x20is\x20already\x20confirmed\x20and\x20you\x20need\x20that\x20ENDPOINT\x27s\x20runtime\x20metadata','5482806xBTLuf','Inspect\x20field\x20names,\x20relations,\x20and\x20operation\x20metadata\x20for\x20a\x20known\x20dataset\x20code.','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','##\x20Create\x20dataset\x20record\x0a\x0aCreate\x20one\x20data\x20record\x20in\x20a\x20dataset.','custom_sql_execute','Execute\x20a\x20BF\x20endpoint\x20function','title','32-character\x20dataset\x20code','list','List\x20available\x20runtime\x20API\x20documentation\x20entries','455774zMTYxl','dataset_data_filter','Create\x20a\x20dataset\x20record','where,\x20select,\x20orderBy,\x20currentPage,\x20and\x20pageSize\x20belong\x20inside\x20one\x20--params\x20JSON\x20object;\x20they\x20are\x20not\x20standalone\x20CLI\x20flags.','6897474pPyXeE','16SfXBKT','Execute\x20BF\x20endpoint\x20function','lovrabet\x20sql\x20exec\x20--sqlcode\x20<sqlCode>\x20--params\x20\x27{}\x27','Aggregate\x20dataset\x20data','Filter\x20dataset\x20data','Use\x20when\x20the\x20target\x20sqlCode\x20exists\x20and\x20you\x20need\x20to\x20execute\x20that\x20custom\x20SQL','/client/bff/endpoint/{appCode}/{functionName}','map','relations\x20contains\x20the\x20object-shaped\x20API\x20relations\x20value\x20when\x20returned','{\x22fieldName\x22:\x22value\x22}','Use\x20read-only\x20data\x20commands\x20before\x20writing\x20Artifacts\x20that\x20display\x20real\x20data.','datasetCode','Get\x20one\x20dataset\x20record','Create\x20dataset\x20record','Use\x20when\x20you\x20need\x20to\x20read\x20business\x20data\x20with\x20where,\x20orderBy,\x20pagination,\x20or\x20similar\x20filters','This\x20is\x20an\x20exact\x20lookup\x20by\x20appCode\x20+\x20functionName.\x20The\x20CLI\x20does\x20not\x20enumerate\x20Backend\x20Function\x20definitions\x20or\x20expose\x20platform-only\x20fields.','where\x20filters\x20before\x20aggregation','summary','Returns\x20SQL\x20execution\x20payload','/api/{appCode}/{datasetCode}/getOne','dataset','join','Returns\x20the\x20created\x20record\x20or\x20backend\x20operation\x20result','Get\x20BF\x20endpoint\x20function\x20contract','Search\x20docs\x20by\x20code,\x20summary,\x20path,\x20or\x20usage\x20text','dataset_data_create','detail','Use\x20when\x20you\x20need\x20groupBy\x20plus\x20count,\x20sum,\x20avg,\x20max,\x20or\x20min\x20aggregates','Endpoint\x20function\x20name','2664991bsRBYM','##\x20Aggregate\x20dataset\x20data','List\x20datasets\x20with\x20pagination','Use\x20`having`\x20only\x20for\x20post-aggregation\x20filters.','validation','whenToUse','Returns\x20one\x20matching\x20business\x20record','Use\x20this\x20API\x20or\x20`lovrabet\x20dataset\x20list`\x20to\x20discover\x20available\x20dataset\x20codes\x20before\x20reading\x20data.','path','lovrabet\x20dataset\x20list\x20--appcode\x20<appCode>\x20--format\x20compress','toLowerCase','keyword','lovrabet\x20dataset\x20detail\x20--code\x20<datasetCode>\x20--appcode\x20<appCode>','If\x20SDK\x20usage\x20is\x20needed,\x20follow\x20with\x20`lovrabet\x20dataset\x20sdk-doc\x20--code\x20<datasetCode>`.','read','str','lovrabet\x20bff\x20detail\x20--name\x20<functionName>','functionName','filter','Aggregate\x20supports\x20COUNT,\x20SUM,\x20AVG,\x20MAX,\x20and\x20MIN\x20definitions\x20in\x20the\x20`aggregate`\x20array.','dataset_detail','Verify\x20tableData\x20and\x20paging\x20before\x20treating\x20the\x20response\x20as\x20a\x20business\x20fact.','##\x20Get\x20one\x20dataset\x20record\x0a\x0aRead\x20one\x20record\x20by\x20id.','method','Aggregate\x20dataset\x20records','code','Execute\x20custom\x20SQL','`field`\x20is\x20accepted\x20as\x20a\x20deprecated\x20alias\x20for\x20`column`;\x20new\x20calls\x20should\x20use\x20`column`.','Script\x20behavior\x20may\x20have\x20side\x20effects;\x20inspect\x20detail\x20first.'];a1_0x3c72=function(){return _0x5dfbd6;};return a1_0x3c72();}(function(_0x221f57,_0x2701a9){const _0x210a5d=a1_0x1d57,_0x42c6e6=_0x221f57();while(!![]){try{const _0xd69775=parseInt(_0x210a5d(0x128))/0x1+-parseInt(_0x210a5d(0x145))/0x2+-parseInt(_0x210a5d(0x127))/0x3*(-parseInt(_0x210a5d(0x116))/0x4)+-parseInt(_0x210a5d(0x11a))/0x5+-parseInt(_0x210a5d(0x13b))/0x6+-parseInt(_0x210a5d(0xf6))/0x7*(parseInt(_0x210a5d(0x14a))/0x8)+parseInt(_0x210a5d(0x149))/0x9;if(_0xd69775===_0x2701a9)break;else _0x42c6e6['push'](_0x42c6e6['shift']());}catch(_0x17a105){_0x42c6e6['push'](_0x42c6e6['shift']());}}}(a1_0x3c72,0x8860a));import{CliErrors}from'../../errors.js';const CATEGORY_FLAG={'name':a1_0x13b218(0x11c),'type':a1_0x13b218(0x129),'description':'Filter\x20docs\x20by\x20category,\x20for\x20example\x20dataset'},KEYWORD_FLAG={'name':a1_0x13b218(0x101),'type':'string','description':a1_0x13b218(0x162)},DOC_CODE_FLAG={'name':a1_0x13b218(0x10f),'type':a1_0x13b218(0x129),'required':!![],'description':'API\x20doc\x20code,\x20for\x20example\x20dataset_list'},DOCS=[{'code':'dataset_list','category':a1_0x13b218(0x15e),'title':a1_0x13b218(0x123),'method':a1_0x13b218(0x12b),'path':a1_0x13b218(0x12d),'summary':a1_0x13b218(0xf8),'whenToUse':a1_0x13b218(0x115),'pathParams':[],'queryParams':[],'bodySchema':'{\x22appCode\x22:\x22app-aa63b188\x22,\x22currentPage\x22:1,\x22pageSize\x22:100}','responseHighlights':['tableData\x20contains\x20dataset\x20id/code/name',a1_0x13b218(0x12f)],'examples':[a1_0x13b218(0xff)],'notes':['CLI\x20users\x20should\x20prefer\x20`lovrabet\x20dataset\x20list`\x20for\x20this\x20workflow.'],'markdown':['##\x20List\x20datasets','',a1_0x13b218(0xfd)]['join']('\x0a')},{'code':a1_0x13b218(0x10a),'category':'dataset','title':a1_0x13b218(0x11b),'method':'GET','path':'/api/dataset/getOneByCode?code={datasetCode}','summary':'Get\x20dataset\x20detail','whenToUse':'Use\x20when\x20you\x20need\x20fields,\x20table\x20info,\x20relations,\x20or\x20operation\x20definitions\x20for\x20a\x20dataset\x20code','pathParams':[],'queryParams':[{'name':a1_0x13b218(0x10f),'description':a1_0x13b218(0x142)}],'bodySchema':'None','responseHighlights':[a1_0x13b218(0x121),a1_0x13b218(0x152),'operations\x20describes\x20runtime\x20APIs'],'examples':[a1_0x13b218(0x102)],'notes':[a1_0x13b218(0x103)],'markdown':['##\x20Dataset\x20detail','',a1_0x13b218(0x13c)]['join']('\x0a')},{'code':a1_0x13b218(0x146),'category':a1_0x13b218(0x15e),'title':a1_0x13b218(0x14e),'method':'POST','path':a1_0x13b218(0x125),'summary':'Filter\x20dataset\x20records','whenToUse':a1_0x13b218(0x158),'pathParams':[{'name':'appCode','description':'Current\x20app\x20code'},{'name':a1_0x13b218(0x155),'description':a1_0x13b218(0x142)}],'queryParams':[],'bodySchema':'{\x22where\x22:{},\x22currentPage\x22:1,\x22pageSize\x22:20}','responseHighlights':['tableData\x20contains\x20records',a1_0x13b218(0x138)],'examples':['lovrabet\x20data\x20filter\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22where\x22:{\x22status\x22:{\x22$eq\x22:\x22active\x22}},\x22orderBy\x22:[{\x22id\x22:\x22asc\x22}],\x22currentPage\x22:1,\x22pageSize\x22:20}\x27','lovrabet\x20data\x20filter\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22where\x22:{\x22status\x22:{\x22$eq\x22:\x22active\x22}},\x22orderBy\x22:[{\x22id\x22:\x22asc\x22}],\x22currentPage\x22:2,\x22pageSize\x22:20}\x27'],'notes':[a1_0x13b218(0x148),'For\x20the\x20next\x20page,\x20keep\x20where/select/orderBy/pageSize\x20unchanged\x20and\x20increment\x20only\x20currentPage,\x20which\x20starts\x20at\x201.',a1_0x13b218(0x10b),a1_0x13b218(0x154)],'markdown':['##\x20Filter\x20dataset\x20data','',a1_0x13b218(0x130)][a1_0x13b218(0x15f)]('\x0a')},{'code':'dataset_data_aggregate','category':a1_0x13b218(0x15e),'title':a1_0x13b218(0x14d),'method':'POST','path':a1_0x13b218(0x12c),'summary':a1_0x13b218(0x10e),'whenToUse':a1_0x13b218(0x165),'pathParams':[{'name':a1_0x13b218(0x122),'description':a1_0x13b218(0x136)},{'name':a1_0x13b218(0x155),'description':a1_0x13b218(0x142)}],'queryParams':[],'bodySchema':'{\x22aggregate\x22:[{\x22column\x22:\x20\x22id\x22,\x22type\x22:\x22COUNT\x22,\x22alias\x22:\x22cnt\x22}],\x22groupBy\x22:[]}','responseHighlights':[a1_0x13b218(0x131),a1_0x13b218(0x15a)],'examples':[a1_0x13b218(0x13d)],'notes':[a1_0x13b218(0xf9),a1_0x13b218(0x111)],'markdown':[a1_0x13b218(0xf7),'',a1_0x13b218(0x109)]['join']('\x0a')},{'code':a1_0x13b218(0x133),'category':a1_0x13b218(0x15e),'title':a1_0x13b218(0x156),'method':a1_0x13b218(0x12b),'path':a1_0x13b218(0x15d),'summary':'Get\x20one\x20dataset\x20record','whenToUse':a1_0x13b218(0x11f),'pathParams':[{'name':a1_0x13b218(0x122),'description':a1_0x13b218(0x136)},{'name':a1_0x13b218(0x155),'description':'32-character\x20dataset\x20code'}],'queryParams':[],'bodySchema':'{\x22id\x22:123}','responseHighlights':[a1_0x13b218(0xfc)],'examples':['lovrabet\x20data\x20getOne\x20--code\x20<datasetCode>\x20--params\x20\x27{\x22id\x22:123}\x27'],'notes':['Prefer\x20`filter`\x20when\x20the\x20record\x20id\x20is\x20unknown.'],'markdown':a1_0x13b218(0x10c)},{'code':a1_0x13b218(0x163),'category':a1_0x13b218(0x15e),'title':a1_0x13b218(0x157),'method':'POST','path':'/api/{appCode}/{datasetCode}/create','summary':a1_0x13b218(0x147),'whenToUse':a1_0x13b218(0x119),'pathParams':[{'name':a1_0x13b218(0x122),'description':a1_0x13b218(0x136)},{'name':a1_0x13b218(0x155),'description':a1_0x13b218(0x142)}],'queryParams':[],'bodySchema':a1_0x13b218(0x153),'responseHighlights':[a1_0x13b218(0x160)],'examples':[a1_0x13b218(0x11d)],'notes':[a1_0x13b218(0x114)],'markdown':a1_0x13b218(0x13e)},{'code':'bf_detail','category':'bf','title':a1_0x13b218(0x161),'method':a1_0x13b218(0x12e),'path':a1_0x13b218(0x150),'summary':'Get\x20a\x20BF\x20endpoint\x20contract\x20by\x20app\x20and\x20function\x20name','whenToUse':a1_0x13b218(0x13a),'pathParams':[{'name':a1_0x13b218(0x122),'description':a1_0x13b218(0x136)},{'name':a1_0x13b218(0x107),'description':'Exact\x20endpoint\x20function\x20name'}],'queryParams':[],'bodySchema':'None','responseHighlights':[a1_0x13b218(0x120)],'examples':[a1_0x13b218(0x106)],'notes':[a1_0x13b218(0x159)],'markdown':'##\x20Get\x20BF\x20endpoint\x20function\x20contract\x0a\x0aInspect\x20one\x20known\x20endpoint\x20function\x20through\x20the\x20AK-authenticated\x20exact\x20detail\x20API.'},{'code':'bf_execute','category':'bf','title':a1_0x13b218(0x14b),'method':'POST','path':a1_0x13b218(0x135),'summary':a1_0x13b218(0x140),'whenToUse':'Use\x20when\x20the\x20target\x20BF\x20functionName\x20is\x20confirmed\x20and\x20you\x20need\x20to\x20call\x20that\x20ENDPOINT','pathParams':[{'name':'appCode','description':'Current\x20app\x20code'},{'name':a1_0x13b218(0x107),'description':a1_0x13b218(0xf5)}],'queryParams':[],'bodySchema':a1_0x13b218(0x137),'responseHighlights':['Returns\x20script\x20business\x20payload'],'examples':['lovrabet\x20bff\x20exec\x20--name\x20<functionName>\x20--params\x20\x27{}\x27'],'notes':[a1_0x13b218(0x112)],'markdown':a1_0x13b218(0x126)},{'code':a1_0x13b218(0x13f),'category':a1_0x13b218(0x132),'title':a1_0x13b218(0x110),'method':a1_0x13b218(0x12b),'path':a1_0x13b218(0x139),'summary':'Execute\x20custom\x20SQL','whenToUse':a1_0x13b218(0x14f),'pathParams':[],'queryParams':[],'bodySchema':'{\x22appCode\x22:\x22app-aa63b188\x22,\x22sqlCode\x22:\x22xxxxxxxx-xxxxxxxx\x22,\x22params\x22:{}}','responseHighlights':[a1_0x13b218(0x15c)],'examples':[a1_0x13b218(0x14c)],'notes':[a1_0x13b218(0x117)],'markdown':a1_0x13b218(0x113)}];function entrySummary(_0x2717ef){const _0x3619f4=a1_0x13b218;return{'code':_0x2717ef[_0x3619f4(0x10f)],'category':_0x2717ef[_0x3619f4(0x11c)],'method':_0x2717ef[_0x3619f4(0x10d)],'path':_0x2717ef[_0x3619f4(0xfe)],'summary':_0x2717ef[_0x3619f4(0x15b)],'whenToUse':_0x2717ef[_0x3619f4(0xfb)]};}function a1_0x1d57(_0x487cfb,_0x3f2b02){_0x487cfb=_0x487cfb-0xf5;const _0x3c72ea=a1_0x3c72();let _0x1d57a4=_0x3c72ea[_0x487cfb];return _0x1d57a4;}export function listApiDocEntries(_0x186b0f={}){const _0x2eee2c=a1_0x13b218,_0xb2d86c=String(_0x186b0f['category']||'')[_0x2eee2c(0x134)](),_0x93d79e=String(_0x186b0f[_0x2eee2c(0x101)]||'')[_0x2eee2c(0x134)]()[_0x2eee2c(0x100)]();return DOCS[_0x2eee2c(0x108)](_0x23d701=>{const _0x4fc1e1=_0x2eee2c;if(_0xb2d86c&&_0x23d701['category']!==_0xb2d86c)return![];if(!_0x93d79e)return!![];return[_0x23d701['code'],_0x23d701['category'],_0x23d701[_0x4fc1e1(0x10d)],_0x23d701[_0x4fc1e1(0xfe)],_0x23d701['summary'],_0x23d701[_0x4fc1e1(0xfb)],_0x23d701[_0x4fc1e1(0x141)]][_0x4fc1e1(0x15f)]('\x20')['toLowerCase']()[_0x4fc1e1(0x118)](_0x93d79e);})[_0x2eee2c(0x151)](entrySummary);}export function getApiDocDetail(_0x25e5a6){const _0x304955=a1_0x13b218,_0x1a0344=DOCS['find'](_0x365cb7=>_0x365cb7['code']===_0x25e5a6);if(!_0x1a0344)throw CliErrors[_0x304955(0xfa)](_0x304955(0x12a)+_0x25e5a6);return{..._0x1a0344};}const apiDocList={'service':a1_0x13b218(0x124),'command':a1_0x13b218(0x143),'description':a1_0x13b218(0x144),'risk':a1_0x13b218(0x104),'requiresAppCode':![],'flags':[CATEGORY_FLAG,KEYWORD_FLAG],async 'execute'(_0xc3652e){const _0x194150=a1_0x13b218,_0x5c711a=listApiDocEntries({'category':_0xc3652e[_0x194150(0x105)](_0x194150(0x11c)),'keyword':_0xc3652e[_0x194150(0x105)](_0x194150(0x101))});return{'ok':!![],'data':{'total':_0x5c711a[_0x194150(0x11e)],'items':_0x5c711a}};}},apiDocDetail={'service':'api-doc','command':a1_0x13b218(0x164),'description':'Show\x20runtime\x20API\x20documentation\x20by\x20code','risk':'read','requiresAppCode':![],'flags':[DOC_CODE_FLAG],async 'execute'(_0x2417b5){const _0x209641=a1_0x13b218;return{'ok':!![],'data':getApiDocDetail(_0x2417b5[_0x209641(0x105)](_0x209641(0x10f)))};}};export const apiDocDefinitions=[apiDocList,apiDocDetail];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x38f001,_0x4e6e64){const _0x24d4a6=a2_0x378d,_0x3c935b=_0x38f001();while(!![]){try{const _0x58a837=-parseInt(_0x24d4a6(0xb6))/0x1*(parseInt(_0x24d4a6(0xaf))/0x2)+-parseInt(_0x24d4a6(0xa3))/0x3+parseInt(_0x24d4a6(0xae))/0x4+parseInt(_0x24d4a6(0xb5))/0x5*(-parseInt(_0x24d4a6(0xa5))/0x6)+-parseInt(_0x24d4a6(0xb0))/0x7+-parseInt(_0x24d4a6(0xab))/0x8*(parseInt(_0x24d4a6(0xba))/0x9)+parseInt(_0x24d4a6(0xaa))/0xa;if(_0x58a837===_0x4e6e64)break;else _0x3c935b['push'](_0x3c935b['shift']());}catch(_0xfdd39a){_0x3c935b['push'](_0x3c935b['shift']());}}}(a2_0x53b8,0xe8762));import{createHash}from'node:crypto';import{existsSync,mkdirSync,readFileSync,renameSync,unlinkSync,writeFileSync}from'node:fs';import{homedir}from'node:os';function a2_0x53b8(){const _0x210eb8=['digest','232818SECkkM','ak_','items','EPERM','stringify','47029050NOvJwG','3005304EGmFpS','homeDirName','unknown','1502648FapvpD','2FpONJa','5315674QHJWBR','EACCES','.tmp','parse','trim','105SSqQfn','50461NLMxqf','cache','my-apps.json','appCode','27sMONVL','sha256','appName','code','4124130EqhpIF'];a2_0x53b8=function(){return _0x210eb8;};return a2_0x53b8();}function a2_0x378d(_0x19905d,_0x5c9eb0){_0x19905d=_0x19905d-0xa2;const _0x53b802=a2_0x53b8();let _0x378d5e=_0x53b802[_0x19905d];return _0x378d5e;}import{dirname,resolve}from'node:path';import{PRODUCT_CONFIG}from'../../constant/product.js';import{isRuntimeAccessibleApp}from'../../commands/app/eligibility.js';export function fingerprintAccessKey(_0x20308b){const _0x29cb90=a2_0x378d,_0x12e922=_0x20308b['trim'](),_0x125227=_0x12e922['slice'](-0x6)||_0x29cb90(0xad),_0x159fb1=createHash(_0x29cb90(0xbb))['update'](_0x12e922)[_0x29cb90(0xa4)]('hex')['slice'](0x0,0xc);return _0x29cb90(0xa6)+_0x125227+'_'+_0x159fb1;}export function getAppCacheFilePath(_0x47eefb,_0xdeeef5){const _0x1ee482=a2_0x378d;return resolve(homedir(),PRODUCT_CONFIG[_0x1ee482(0xac)],_0x1ee482(0xb7),_0x47eefb,fingerprintAccessKey(_0xdeeef5),_0x1ee482(0xb8));}export function readCachedAppList(_0x389056,_0x5aa369){const _0x3d1312=a2_0x378d;if(!_0x5aa369?.[_0x3d1312(0xb4)]())return null;const _0x25b259=getAppCacheFilePath(_0x389056,_0x5aa369);if(!existsSync(_0x25b259))return null;try{const _0x6ca29c=readFileSync(_0x25b259,'utf8');if(!_0x6ca29c[_0x3d1312(0xb4)]())return null;const _0x584e93=JSON[_0x3d1312(0xb3)](_0x6ca29c);if(!Array['isArray'](_0x584e93['items']))return null;return _0x584e93;}catch{return null;}}export function writeCachedAppList(_0xd8d322,_0x1eb9f3,_0x182bf7){const _0x2e5397=a2_0x378d,_0x2a735c=getAppCacheFilePath(_0xd8d322,_0x1eb9f3),_0x433b47=dirname(_0x2a735c);!existsSync(_0x433b47)&&mkdirSync(_0x433b47,{'recursive':!![]});const _0x362a5c=_0x2a735c+_0x2e5397(0xb2);try{writeFileSync(_0x362a5c,JSON[_0x2e5397(0xa9)](_0x182bf7,null,0x2)+'\x0a',{'encoding':'utf8','mode':0x180});try{renameSync(_0x362a5c,_0x2a735c);}catch(_0x4a5667){if(_0x4a5667[_0x2e5397(0xa2)]===_0x2e5397(0xa8)||_0x4a5667[_0x2e5397(0xa2)]==='EXDEV'||_0x4a5667[_0x2e5397(0xa2)]===_0x2e5397(0xb1)){writeFileSync(_0x2a735c,JSON[_0x2e5397(0xa9)](_0x182bf7,null,0x2)+'\x0a',{'encoding':'utf8'});try{unlinkSync(_0x362a5c);}catch{}}else throw _0x4a5667;}}catch(_0x385845){try{unlinkSync(_0x362a5c);}catch{}throw _0x385845;}return _0x2a735c;}export function resolveCachedAppCode(_0x45a7bd,_0x61b9b9,_0x1791a2){const _0x5d7c64=a2_0x378d;if(!_0x45a7bd)return undefined;const _0x199922=readCachedAppList(_0x61b9b9,_0x1791a2),_0x367c9f=_0x199922?.[_0x5d7c64(0xa7)]['find'](_0x4a572e=>_0x4a572e[_0x5d7c64(0xbc)]===_0x45a7bd&&isRuntimeAccessibleApp(_0x4a572e));return _0x367c9f?.[_0x5d7c64(0xb9)]?.[_0x5d7c64(0xb4)]()||undefined;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a3_0x1f88fd=a3_0x7b20;(function(_0xf3f636,_0x3e99e2){const _0x370897=a3_0x7b20,_0x3f0dbf=_0xf3f636();while(!![]){try{const _0xdbf99d=parseInt(_0x370897(0x11e))/0x1+parseInt(_0x370897(0x11d))/0x2*(parseInt(_0x370897(0x11a))/0x3)+-parseInt(_0x370897(0x156))/0x4*(parseInt(_0x370897(0x11f))/0x5)+parseInt(_0x370897(0x148))/0x6*(-parseInt(_0x370897(0x12d))/0x7)+-parseInt(_0x370897(0x129))/0x8+parseInt(_0x370897(0x142))/0x9+parseInt(_0x370897(0x157))/0xa;if(_0xdbf99d===_0x3e99e2)break;else _0x3f0dbf['push'](_0x3f0dbf['shift']());}catch(_0x3398ac){_0x3f0dbf['push'](_0x3f0dbf['shift']());}}}(a3_0x3a8e,0x53354));import{appImportFlagDefs,runAppImport}from'../../commands/init.js';import{getEnv,RUNTIME_ENV_VALUES}from'../../constant/env.js';function a3_0x3a8e(){const _0x27eafa=['no-cache','envName','cachePath','../../context.js','nonInteractive','config','Include\x20unpublished\x20apps\x20for\x20diagnostics','Refresh\x20the\x20local\x20app\x20cache\x20from\x20the\x20platform','appcode','\x20cached\x20app(s)\x20for\x20env=\x22','appName','enableI18n','length','name','string','2553093YeoDqd','Filter\x20by\x20environment\x20(default:\x20current\x20env)','production','i18nInfo','Read\x20from\x20local\x20cache\x20only','Force\x20remote\x20fetch\x20and\x20refresh\x20local\x20cache','6IDoDWW','List\x20apps\x20available\x20to\x20the\x20current\x20access\x20key','bool','entries','Import\x20the\x20default\x20app\x20selection\x20from\x20a\x20.rabetbase.json\x20file','Target\x20environment\x20(default:\x20current\x20env)','import','push','str','filter','langs','appCode','Reads\x20the\x20given\x20.rabetbase.json\x20and\x20imports\x20a\x20usable\x20default\x20app\x20into\x20local\x20.lovrabet.json.\x20Matching\x20keys\x20may\x20be\x20updated.','source','899548yshGif','1586840uJnWHB','isArray','isCurrent','local','fetchedAt','Read\x20app\x20list\x20from\x20local\x20cache\x20only','mergedCli','3PnRTiL','No\x20cached\x20apps\x20found.','cache','1345458hMDOkw','626276geqJHu','15nWSkZo','Refreshed\x20app\x20cache\x20with\x20','include-unpublished','find','../../commands/app/remote-source.js','Reads\x20the\x20apps\x20available\x20to\x20the\x20current\x20account\x20and\x20overwrites\x20the\x20local\x20app\x20cache\x20for\x20that\x20environment.\x20Platform\x20apps\x20are\x20not\x20modified.','items','type','write','app','4699416WTilGo','accessKey','env','globalPath','969206LpElxz','boolean','appPublishStatus','projectPath','Loaded\x20','map'];a3_0x3a8e=function(){return _0x27eafa;};return a3_0x3a8e();}function a3_0x7b20(_0x2696a4,_0xd5cb95){_0x2696a4=_0x2696a4-0x115;const _0x3a8e78=a3_0x3a8e();let _0x7b207e=_0x3a8e78[_0x2696a4];return _0x7b207e;}import{buildAppProfileListFields}from'../../config/schema.js';import{enrichAppListItemsWithMergedSelection}from'../../commands/app/shared.js';import{filterRuntimeAccessibleApps,findAppByCode,isRuntimeAccessibleApp}from'../../commands/app/eligibility.js';function collectFlags(_0x399311,_0x498bd5){const _0x101dc7=a3_0x7b20,_0x4a4f22={};for(const _0x313de4 of _0x498bd5){const _0x2754fc=_0x313de4[_0x101dc7(0x126)]===_0x101dc7(0x12e)?_0x399311['bool'](_0x313de4[_0x101dc7(0x140)]):_0x399311[_0x101dc7(0x150)](_0x313de4[_0x101dc7(0x140)]);if(_0x2754fc!==''&&_0x2754fc!==![])_0x4a4f22[_0x313de4[_0x101dc7(0x140)]]=_0x2754fc;}if(_0x399311['nonInteractive'])_0x4a4f22[_0x101dc7(0x137)]=!![];return _0x4a4f22;}function normalizeLanguages(_0x55df9a){const _0x99d14e=a3_0x7b20;if(!Array[_0x99d14e(0x158)](_0x55df9a))return[];return _0x55df9a[_0x99d14e(0x151)](_0x1dd1a9=>typeof _0x1dd1a9===_0x99d14e(0x141))['map'](_0x28112d=>_0x28112d['trim']())[_0x99d14e(0x151)](Boolean);}function buildRemoteAppI18nFields(_0xf27400){const _0xf92840=a3_0x7b20,_0x4e100e=normalizeLanguages(_0xf27400[_0xf92840(0x145)]?.[_0xf92840(0x152)]);return{'enableI18n':typeof _0xf27400['enableI18n']===_0xf92840(0x12e)?_0xf27400[_0xf92840(0x13e)]:null,'languages':_0x4e100e,'i18nInfo':_0xf27400['i18nInfo']?{..._0xf27400[_0xf92840(0x145)],'langs':_0x4e100e[_0xf92840(0x13f)]?_0x4e100e:null}:null};}const listDef={'service':'app','command':'list','description':a3_0x1f88fd(0x149),'risk':'read','requiresAuth':!![],'requiresAppCode':![],'hasFormat':!![],'flags':[{'name':a3_0x1f88fd(0x12b),'type':a3_0x1f88fd(0x141),'description':a3_0x1f88fd(0x143),'enum':[...RUNTIME_ENV_VALUES]},{'name':'local','type':a3_0x1f88fd(0x12e),'description':a3_0x1f88fd(0x118),'default':![]},{'name':a3_0x1f88fd(0x133),'type':'boolean','description':a3_0x1f88fd(0x147),'default':![]},{'name':a3_0x1f88fd(0x121),'type':'boolean','description':a3_0x1f88fd(0x139),'default':![]}],async 'execute'(_0xc10c1a){const _0x10e406=a3_0x1f88fd,_0x290f37=_0xc10c1a[_0x10e406(0x150)](_0x10e406(0x12b))||_0xc10c1a[_0x10e406(0x134)]||getEnv()||_0x10e406(0x144),_0x4c882b=_0xc10c1a[_0x10e406(0x14a)](_0x10e406(0x116)),_0x2d8238=_0xc10c1a[_0x10e406(0x14a)](_0x10e406(0x133)),_0x5bbc00=_0xc10c1a[_0x10e406(0x14a)](_0x10e406(0x121)),{readRawConfigWithLayers:_0x4324c5,resolveDefaultAppSource:_0x1a78e0,getLocalAppAliases:_0x3bc11b}=await import(_0x10e406(0x136)),{getRemoteAppList:_0x5800a7}=await import(_0x10e406(0x123)),{config:_0x42df70,layers:_0x42e6eb}=_0x4324c5(),_0x41d7f5=_0x1a78e0(_0x42e6eb),{defaultApp:_0xb7fb03}=_0x42df70,_0x4fdd09=await _0x5800a7({'env':_0x290f37,'accessKey':_0xc10c1a[_0x10e406(0x12a)],'localOnly':_0x4c882b,'noCache':_0x2d8238}),_0x527c0b=_0x5bbc00?_0x4fdd09[_0x10e406(0x125)]:filterRuntimeAccessibleApps(_0x4fdd09[_0x10e406(0x125)]),_0xa6436f=_0x4fdd09[_0x10e406(0x125)]['length']-_0x527c0b[_0x10e406(0x13f)],_0x29fc6e=_0x527c0b[_0x10e406(0x132)](_0x312748=>{const _0x20f9d3=_0x10e406;return{'name':_0x312748[_0x20f9d3(0x13d)],'appcode':_0x312748[_0x20f9d3(0x153)],'named':!![],'definedIn':'remote','isDefault':_0x312748[_0x20f9d3(0x13d)]===_0xb7fb03,...buildAppProfileListFields(_0x290f37),...buildRemoteAppI18nFields(_0x312748),'source':_0x4fdd09[_0x20f9d3(0x155)],'owner':_0x312748['appOwnerName']??null,'status':_0x312748[_0x20f9d3(0x12f)]??null,'cachedAt':_0x4fdd09[_0x20f9d3(0x117)]};}),_0x445165=_0x3bc11b(_0x42df70);let _0x202f62=0x0;for(const [_0x5ec253,_0x5e885c]of Object[_0x10e406(0x14b)](_0x445165)){const _0x13ed3a=typeof _0x5e885c[_0x10e406(0x13b)]===_0x10e406(0x141)?_0x5e885c['appcode']['trim']():'';if(!_0x13ed3a)continue;const _0x512cd1=findAppByCode(_0x4fdd09['items'],_0x13ed3a);if(!_0x5bbc00&&_0x512cd1&&!isRuntimeAccessibleApp(_0x512cd1))continue;_0x202f62+=0x1,_0x29fc6e[_0x10e406(0x14f)]({'name':_0x5ec253,'appcode':_0x13ed3a,'named':!![],'definedIn':_0x10e406(0x116),'isDefault':_0x5ec253===_0xb7fb03,...buildAppProfileListFields(_0x290f37),'source':_0x10e406(0x138),'owner':null,'status':null,'cachedAt':null});}enrichAppListItemsWithMergedSelection(_0x29fc6e,_0xc10c1a[_0x10e406(0x119)]);const _0x918dc2=_0x29fc6e[_0x10e406(0x122)](_0x5678c6=>_0x5678c6[_0x10e406(0x115)]===!![]),_0x5d2b44=_0xb7fb03??_0x918dc2?.['name']??null,_0x103230={'env':_0x290f37,'source':_0x4fdd09['source'],'fetchedAt':_0x4fdd09['fetchedAt'],'cachePath':_0x4fdd09[_0x10e406(0x135)],'globalPath':_0x42e6eb[_0x10e406(0x12c)]??null,'projectPath':_0x42e6eb[_0x10e406(0x130)]??null,'defaultApp':_0x5d2b44,'defaultAppSource':_0xb7fb03!=null?_0x41d7f5:null,'localAliasCount':_0x202f62,'remoteTotal':_0x4fdd09['items'][_0x10e406(0x13f)],'hiddenUnpublishedCount':_0xa6436f,'includeUnpublished':_0x5bbc00};if(_0x29fc6e['length']===0x0)return{'ok':!![],'data':{'items':_0x29fc6e,'meta':_0x103230},'message':_0x4fdd09[_0x10e406(0x155)]===_0x10e406(0x11c)?_0x10e406(0x11b):'No\x20apps\x20found\x20on\x20the\x20platform.'};return{'ok':!![],'data':{'items':_0x29fc6e,'meta':_0x103230}};}},pullDef={'service':a3_0x1f88fd(0x128),'command':'pull','description':a3_0x1f88fd(0x13a),'risk':a3_0x1f88fd(0x127),'confirmationDescription':a3_0x1f88fd(0x124),'requiresAuth':!![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a3_0x1f88fd(0x12b),'type':a3_0x1f88fd(0x141),'description':a3_0x1f88fd(0x14d),'enum':[...RUNTIME_ENV_VALUES]},{'name':a3_0x1f88fd(0x116),'type':a3_0x1f88fd(0x12e),'description':a3_0x1f88fd(0x146),'default':![]},{'name':a3_0x1f88fd(0x133),'type':'boolean','description':a3_0x1f88fd(0x147),'default':![]}],async 'execute'(_0x33482b){const _0x28a092=a3_0x1f88fd,_0x36d7ac=_0x33482b[_0x28a092(0x150)]('env')||_0x33482b[_0x28a092(0x134)]||getEnv()||_0x28a092(0x144),_0x3cca10=_0x33482b[_0x28a092(0x14a)](_0x28a092(0x116)),_0x2d88a2=_0x33482b['bool'](_0x28a092(0x133)),{getRemoteAppList:_0xc66a76}=await import(_0x28a092(0x123)),_0x2beae8=await _0xc66a76({'env':_0x36d7ac,'accessKey':_0x33482b[_0x28a092(0x12a)],'localOnly':_0x3cca10,'noCache':_0x2d88a2});return{'ok':!![],'data':{'total':_0x2beae8[_0x28a092(0x125)]['length'],'env':_0x36d7ac,'source':_0x2beae8[_0x28a092(0x155)],'fetchedAt':_0x2beae8[_0x28a092(0x117)],'cachePath':_0x2beae8['cachePath']},'message':_0x2beae8[_0x28a092(0x155)]==='cache'?_0x28a092(0x131)+_0x2beae8[_0x28a092(0x125)]['length']+_0x28a092(0x13c)+_0x36d7ac+'\x22.':_0x28a092(0x120)+_0x2beae8[_0x28a092(0x125)]['length']+'\x20app(s)\x20for\x20env=\x22'+_0x36d7ac+'\x22.'};}},importDef={'service':a3_0x1f88fd(0x128),'command':a3_0x1f88fd(0x14e),'description':a3_0x1f88fd(0x14c),'risk':a3_0x1f88fd(0x127),'confirmationDescription':a3_0x1f88fd(0x154),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':appImportFlagDefs,async 'execute'(_0x9a2b72){return await runAppImport(collectFlags(_0x9a2b72,appImportFlagDefs)),{'ok':!![]};}};export const appDefinitions=[listDef,pullDef,importDef];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x46b404,_0x3e0e10){const _0xe07495=a4_0x5c16,_0x549ce9=_0x46b404();while(!![]){try{const _0x408945=-parseInt(_0xe07495(0x98))/0x1+-parseInt(_0xe07495(0x99))/0x2+-parseInt(_0xe07495(0x95))/0x3*(parseInt(_0xe07495(0x92))/0x4)+parseInt(_0xe07495(0x8e))/0x5+-parseInt(_0xe07495(0x88))/0x6*(parseInt(_0xe07495(0x96))/0x7)+-parseInt(_0xe07495(0x8b))/0x8+parseInt(_0xe07495(0x94))/0x9;if(_0x408945===_0x3e0e10)break;else _0x549ce9['push'](_0x549ce9['shift']());}catch(_0x1e948f){_0x549ce9['push'](_0x549ce9['shift']());}}}(a4_0x1dd3,0x6e655));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(_0x53b99c){const _0x1cecfc=a4_0x5c16;if(typeof _0x53b99c!==_0x1cecfc(0x97))return null;const _0x6b161a=_0x53b99c[_0x1cecfc(0x90)]();return _0x6b161a?_0x6b161a['toUpperCase']():null;}export function isRuntimeAccessibleApp(_0x4db372){const _0x4db85f=a4_0x5c16;return normalizeAppPublishStatus(_0x4db372[_0x4db85f(0x85)])===RUNTIME_ACCESSIBLE_APP_STATUS;}export function filterRuntimeAccessibleApps(_0x326bf7){return _0x326bf7['filter'](isRuntimeAccessibleApp);}function a4_0x1dd3(){const _0x31f42a=['appPublishStatus','find','appCode','5186838LKesvU','appName','App\x20','3827912WZxCGm','Current\x20status:\x20','\x20dataset/data/sql/bff\x20commands,\x20or\x20choose\x20a\x20published\x20app.','1300370anKYVz','.\x20Publish\x20the\x20app\x20before\x20using\x20','trim','UNKNOWN','88OYrNzF','\x20is\x20not\x20available\x20for\x20runtime\x20AI\x20access.','23298363RNHvhL','9810RIgymv','7xUNBiw','string','397001dXFrWY','1169394yUlTsE'];a4_0x1dd3=function(){return _0x31f42a;};return a4_0x1dd3();}export function findAppByName(_0x44520d,_0x52601c){const _0x52d2d3=a4_0x5c16;return _0x44520d[_0x52d2d3(0x86)](_0x584c95=>_0x584c95[_0x52d2d3(0x89)]===_0x52601c);}export function findAppByCode(_0x23ce51,_0x75258a){const _0xd7e221=a4_0x5c16,_0xa314a7=_0x75258a[_0xd7e221(0x90)]();if(!_0xa314a7)return undefined;return _0x23ce51[_0xd7e221(0x86)](_0x514260=>_0x514260[_0xd7e221(0x87)]?.[_0xd7e221(0x90)]()===_0xa314a7);}function a4_0x5c16(_0x1937ac,_0xb470be){_0x1937ac=_0x1937ac-0x85;const _0x1dd362=a4_0x1dd3();let _0x5c1639=_0x1dd362[_0x1937ac];return _0x5c1639;}export function runtimeInaccessibleAppError(_0x101359,_0x594caa){const _0x2279ba=a4_0x5c16,_0x4a71e4=normalizeAppPublishStatus(_0x101359[_0x2279ba(0x85)])??_0x2279ba(0x91);return CliErrors['validation'](_0x2279ba(0x8a)+_0x594caa+_0x2279ba(0x93),_0x2279ba(0x8c)+_0x4a71e4+_0x2279ba(0x8f)+CLI_BIN_NAME+_0x2279ba(0x8d));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
function
|
|
1
|
+
function a5_0x57c9(_0x1d911a,_0x12f215){_0x1d911a=_0x1d911a-0xa2;const _0x3e62a7=a5_0x3e62();let _0x57c91f=_0x3e62a7[_0x1d911a];return _0x57c91f;}(function(_0x3169ce,_0xa082a9){const _0x935363=a5_0x57c9,_0x18dfe3=_0x3169ce();while(!![]){try{const _0x359b7d=-parseInt(_0x935363(0xae))/0x1+parseInt(_0x935363(0xaf))/0x2*(parseInt(_0x935363(0xa9))/0x3)+-parseInt(_0x935363(0xac))/0x4*(parseInt(_0x935363(0xb0))/0x5)+parseInt(_0x935363(0xb2))/0x6*(parseInt(_0x935363(0xa2))/0x7)+-parseInt(_0x935363(0xa5))/0x8*(parseInt(_0x935363(0xa8))/0x9)+parseInt(_0x935363(0xa4))/0xa*(parseInt(_0x935363(0xad))/0xb)+-parseInt(_0x935363(0xb1))/0xc*(-parseInt(_0x935363(0xa3))/0xd);if(_0x359b7d===_0xa082a9)break;else _0x18dfe3['push'](_0x18dfe3['shift']());}catch(_0x5ba7f7){_0x18dfe3['push'](_0x18dfe3['shift']());}}}(a5_0x3e62,0xc19f0));import{fileURLToPath}from'url';import{dirname,join}from'path';function a5_0x3e62(){const _0xa393a0=['77elwaep','1444837GCmIbc','910852WhZVnO','15rFBDfb','5556WevPRs','570RXMlnr','utf-8','errorCode','27916IEtfLo','72319VSoELB','1373480jXsszs','8BYCmXm','../../../mock/app-list.json','parse','11907747hKsFHj','3BUmJVB','Mock\x20API\x20error:\x20','data','1080532bGaSNO'];a5_0x3e62=function(){return _0xa393a0;};return a5_0x3e62();}import{readFileSync}from'fs';const __filename=fileURLToPath(import.meta.url),__dirname=dirname(__filename);function loadMockAppList(){const _0x19d803=a5_0x57c9,_0x4aabd4=join(__dirname,_0x19d803(0xa6)),_0x517fd8=readFileSync(_0x4aabd4,_0x19d803(0xb3));return JSON[_0x19d803(0xa7)](_0x517fd8);}let _cached=null;export function getMockAppList(){return!_cached&&(_cached=loadMockAppList()),_cached;}export function getMockRemoteAppItems(){const _0x4a0f1f=a5_0x57c9,_0x24216b=getMockAppList();if(!_0x24216b['success'])throw new Error(_0x4a0f1f(0xaa)+_0x24216b['errorMsg']+'\x20('+_0x24216b[_0x4a0f1f(0xb4)]+')');return _0x24216b[_0x4a0f1f(0xab)]['tableData'];}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3427ef,_0x2d7aee){const _0x32cfb2=a6_0x5922,_0x3419e2=_0x3427ef();while(!![]){try{const _0x3e1f29=-parseInt(_0x32cfb2(0xbf))/0x1+parseInt(_0x32cfb2(0xc1))/0x2*(parseInt(_0x32cfb2(0xc2))/0x3)+parseInt(_0x32cfb2(0xc9))/0x4*(parseInt(_0x32cfb2(0xc0))/0x5)+-parseInt(_0x32cfb2(0xbd))/0x6+-parseInt(_0x32cfb2(0xc7))/0x7*(parseInt(_0x32cfb2(0xbe))/0x8)+-parseInt(_0x32cfb2(0xbb))/0x9*(parseInt(_0x32cfb2(0xcb))/0xa)+-parseInt(_0x32cfb2(0xba))/0xb*(-parseInt(_0x32cfb2(0xc4))/0xc);if(_0x3e1f29===_0x2d7aee)break;else _0x3419e2['push'](_0x3419e2['shift']());}catch(_0x232569){_0x3419e2['push'](_0x3419e2['shift']());}}}(a6_0xb806,0xdf304));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';function a6_0xb806(){const _0xee2de7=['44692jfdsdG','fetchedAt','4122980iMwdjW','remote','30487193LuAfBh','18KdmFxH','toLowerCase','9961764bzIJAH','5632GdxzYZ','1496190yJbwEL','345MnhKqQ','8NCffJB','1324506EIxUWq','toISOString','12muTkDs','trim','cache','4109HpNStX','mock'];a6_0xb806=function(){return _0xee2de7;};return a6_0xb806();}function a6_0x5922(_0x25a257,_0x5a3f21){_0x25a257=_0x25a257-0xb9;const _0xb80645=a6_0xb806();let _0x5922c3=_0xb80645[_0x25a257];return _0x5922c3;}export function shouldUseMockRemoteApps(){const _0x325032=a6_0x5922,_0x4bebde=(productEnv('APP_LIST_SOURCE')||'')[_0x325032(0xc5)]()[_0x325032(0xbc)]();return _0x4bebde===_0x325032(0xc8);}export async function getRemoteAppItems(){if(shouldUseMockRemoteApps())return getMockRemoteAppItems();return getMyApps();}export async function getRemoteAppList(_0x8e6915){const _0x41cc71=a6_0x5922,{env:_0x5708f5,accessKey:_0x416ba3,localOnly:localOnly=![],noCache:noCache=![]}=_0x8e6915,_0x340a64=readCachedAppList(_0x5708f5,_0x416ba3),_0x2464f9=_0x416ba3?.[_0x41cc71(0xc5)]()?getAppCacheFilePath(_0x5708f5,_0x416ba3):null;if(localOnly)return{'items':_0x340a64?.['items']??[],'source':_0x41cc71(0xc6),'fetchedAt':_0x340a64?.[_0x41cc71(0xca)]??null,'cachePath':_0x2464f9};try{const _0x303caa=await getRemoteAppItems(),_0x1b6a45=shouldUseMockRemoteApps()?_0x41cc71(0xc8):_0x41cc71(0xb9),_0x5c033d=new Date()[_0x41cc71(0xc3)](),_0x4130d8=_0x416ba3?.['trim']()?writeCachedAppList(_0x5708f5,_0x416ba3,{'env':_0x5708f5,'fetchedAt':_0x5c033d,'source':_0x1b6a45,'items':_0x303caa}):null;return{'items':_0x303caa,'source':_0x1b6a45,'fetchedAt':_0x5c033d,'cachePath':_0x4130d8};}catch(_0x1fa1ff){if(!noCache&&_0x340a64)return{'items':_0x340a64['items'],'source':_0x41cc71(0xc6),'fetchedAt':_0x340a64['fetchedAt'],'cachePath':_0x2464f9};throw _0x1fa1ff;}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x5ad68f,_0x7f62a4){const _0x11b290=a7_0x73ca,_0x1cfee8=_0x5ad68f();while(!![]){try{const _0x4ea7e5=-parseInt(_0x11b290(0x17e))/0x1*(parseInt(_0x11b290(0x16a))/0x2)+parseInt(_0x11b290(0x178))/0x3*(-parseInt(_0x11b290(0x177))/0x4)+-parseInt(_0x11b290(0x16d))/0x5+-parseInt(_0x11b290(0x170))/0x6+parseInt(_0x11b290(0x179))/0x7*(parseInt(_0x11b290(0x17d))/0x8)+parseInt(_0x11b290(0x17c))/0x9+parseInt(_0x11b290(0x175))/0xa*(parseInt(_0x11b290(0x17a))/0xb);if(_0x4ea7e5===_0x7f62a4)break;else _0x1cfee8['push'](_0x1cfee8['shift']());}catch(_0x43f7b5){_0x1cfee8['push'](_0x1cfee8['shift']());}}}(a7_0x4d7a,0x66646));export function enrichAppListItemsWithMergedSelection(_0x58fb54,_0x4cd3e1){const _0x55c8fd=a7_0x73ca;if(!_0x4cd3e1)return;const _0x3b733c=!!(_0x4cd3e1[_0x55c8fd(0x174)]??_0x4cd3e1[_0x55c8fd(0x176)]);for(const _0x276f89 of _0x58fb54){_0x276f89[_0x55c8fd(0x16c)]=![];}const _0x22b399=_0x4cd3e1[_0x55c8fd(0x16e)]!=null?String(_0x4cd3e1[_0x55c8fd(0x16e)])['trim']():'';if(_0x3b733c){const _0x3b6d28=_0x4cd3e1[_0x55c8fd(0x174)]??_0x4cd3e1[_0x55c8fd(0x176)];if(_0x3b6d28){const _0x410059=_0x58fb54[_0x55c8fd(0x171)](_0x5cda59=>_0x5cda59[_0x55c8fd(0x16b)]===!![]&&_0x5cda59[_0x55c8fd(0x16f)]===_0x3b6d28&&_0x5cda59['definedIn']===_0x55c8fd(0x17b)),_0x3e217f=_0x410059??_0x58fb54[_0x55c8fd(0x171)](_0x489e4c=>_0x489e4c['named']===!![]&&_0x489e4c[_0x55c8fd(0x16f)]===_0x3b6d28);if(_0x3e217f){const _0x120591=String(_0x3e217f[_0x55c8fd(0x172)]??'')['trim']();if(!_0x22b399||_0x120591===_0x22b399){_0x3e217f[_0x55c8fd(0x16c)]=!![];return;}}}if(_0x22b399){const _0x29083f=_0x58fb54[_0x55c8fd(0x171)](_0x3d04e7=>String(_0x3d04e7[_0x55c8fd(0x172)]??'')[_0x55c8fd(0x173)]()===_0x22b399);_0x29083f&&(_0x29083f[_0x55c8fd(0x16c)]=!![]);}return;}if(!_0x22b399)return;for(const _0x394d16 of _0x58fb54){String(_0x394d16[_0x55c8fd(0x172)]??'')[_0x55c8fd(0x173)]()===_0x22b399&&(_0x394d16[_0x55c8fd(0x16c)]=!![]);}}function a7_0x73ca(_0x58c598,_0x5f267b){_0x58c598=_0x58c598-0x16a;const _0x4d7a37=a7_0x4d7a();let _0x73ca34=_0x4d7a37[_0x58c598];return _0x73ca34;}function a7_0x4d7a(){const _0x48db42=['1118403dalzdl','8eartpO','1NeEFtr','777028KoXnVu','named','isCurrent','2480365QatPXE','appCode','name','1330968ylnRPh','find','appcode','trim','currentApp','118780aCEFxr','defaultApp','236xHoCCp','39099AQUBoQ','2555259YDznwq','1672mZeRUY','local'];a7_0x4d7a=function(){return _0x48db42;};return a7_0x4d7a();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a8_0x43194b=a8_0x5007;(function(_0x20d9fa,_0x2877a1){const _0xfc6930=a8_0x5007,_0x295288=_0x20d9fa();while(!![]){try{const _0x589712=parseInt(_0xfc6930(0x70))/0x1*(parseInt(_0xfc6930(0x74))/0x2)+parseInt(_0xfc6930(0x79))/0x3+parseInt(_0xfc6930(0x73))/0x4+-parseInt(_0xfc6930(0x76))/0x5*(parseInt(_0xfc6930(0x7d))/0x6)+parseInt(_0xfc6930(0x71))/0x7+parseInt(_0xfc6930(0x7c))/0x8+-parseInt(_0xfc6930(0x6f))/0x9;if(_0x589712===_0x2877a1)break;else _0x295288['push'](_0x295288['shift']());}catch(_0x17cd0c){_0x295288['push'](_0x295288['shift']());}}}(a8_0x158e,0xa3955));function a8_0x5007(_0x393dfc,_0x37bdeb){_0x393dfc=_0x393dfc-0x6a;const _0x158e94=a8_0x158e();let _0x500776=_0x158e94[_0x393dfc];return _0x500776;}import{getRuntimeAppConfigByKey}from'../../core/api-client.js';function a8_0x158e(){const _0x50c1bf=['Unable\x20to\x20get\x20app-config\x20value:\x20key=','apiError','Get\x20one\x20runtime\x20app-config\x20value\x20by\x20key','\x20app-config\x20get\x20<key>','13674276ijuqdQ','1628lmxMEC','1987552tdcfKk','key','1850256xAYBtC','1588cZTuTS','app-config','5012755kxegEw','get',',\x20appCode=','1014906XyAPoi','Missing\x20app-config\x20key.','args','6516144eEWKUL','6SCjlqi','Usage:\x20'];a8_0x158e=function(){return _0x50c1bf;};return a8_0x158e();}import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const appConfigGet={'service':a8_0x43194b(0x75),'command':a8_0x43194b(0x77),'description':a8_0x43194b(0x6d),'risk':'read','args':[{'name':a8_0x43194b(0x72),'description':'App\x20config\x20key','required':!![]}],'flags':[],async 'execute'(_0x13167d){const _0xad26e8=a8_0x43194b,_0x20854b=_0x13167d[_0xad26e8(0x7b)][0x0]?.['trim']();if(!_0x20854b)throw CliErrors['validation'](_0xad26e8(0x7a),_0xad26e8(0x6a)+CLI_BIN_NAME+_0xad26e8(0x6e));try{const _0x5f41b3=await getRuntimeAppConfigByKey(_0x13167d['appCode'],_0x20854b);return{'ok':!![],'data':_0x5f41b3};}catch{throw CliErrors[_0xad26e8(0x6c)](_0xad26e8(0x6b)+_0x20854b+_0xad26e8(0x78)+_0x13167d['appCode'],'Check\x20that\x20the\x20key\x20exists,\x20the\x20current\x20AccessKey\x20has\x20permission,\x20and\x20the\x20runtime\x20app-config\x20endpoint\x20is\x20available.');}}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
function a9_0x41c8(_0x13e114,_0x3ef283){_0x13e114=_0x13e114-0x107;const _0x44000d=a9_0x4400();let _0x41c895=_0x44000d[_0x13e114];return _0x41c895;}(function(_0x155228,_0x25e8c0){const _0x4fbaa2=a9_0x41c8,_0x24911a=_0x155228();while(!![]){try{const _0x509bde=-parseInt(_0x4fbaa2(0x10d))/0x1+parseInt(_0x4fbaa2(0x10a))/0x2+-parseInt(_0x4fbaa2(0x10c))/0x3*(parseInt(_0x4fbaa2(0x10b))/0x4)+parseInt(_0x4fbaa2(0x107))/0x5+parseInt(_0x4fbaa2(0x109))/0x6+parseInt(_0x4fbaa2(0x10f))/0x7*(-parseInt(_0x4fbaa2(0x108))/0x8)+parseInt(_0x4fbaa2(0x10e))/0x9;if(_0x509bde===_0x25e8c0)break;else _0x24911a['push'](_0x24911a['shift']());}catch(_0x51558d){_0x24911a['push'](_0x24911a['shift']());}}}(a9_0x4400,0xa45be));function a9_0x4400(){const _0x4d0e04=['611891iVMUTB','1886553DLCWRm','1031653DuLCSZ','2723590Kqckxe','8HwcBeJ','3539142xDWztL','592620XkGFin','4BLvcDq','624054VDxvXF'];a9_0x4400=function(){return _0x4d0e04;};return a9_0x4400();}import{appConfigGet}from'../../commands/app-config/get.js';export const appConfigDefinitions=[appConfigGet];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a10_0x40fb0c=a10_0xd9a7;(function(_0x2c33fc,_0x271eab){const _0x485b3e=a10_0xd9a7,_0x106330=_0x2c33fc();while(!![]){try{const _0x351d71=parseInt(_0x485b3e(0xef))/0x1+-parseInt(_0x485b3e(0xd5))/0x2*(-parseInt(_0x485b3e(0xb3))/0x3)+-parseInt(_0x485b3e(0xf1))/0x4+parseInt(_0x485b3e(0xe2))/0x5+parseInt(_0x485b3e(0xb6))/0x6*(parseInt(_0x485b3e(0xbc))/0x7)+parseInt(_0x485b3e(0xad))/0x8+parseInt(_0x485b3e(0xcc))/0x9*(parseInt(_0x485b3e(0xd7))/0xa);if(_0x351d71===_0x271eab)break;else _0x106330['push'](_0x106330['shift']());}catch(_0x2db91b){_0x106330['push'](_0x106330['shift']());}}}(a10_0x5aeb,0x486ec));import{existsSync,readFileSync,statSync}from'node:fs';import{createRuntimeArtifact,getRuntimeArtifact,listRuntimeArtifacts,updateRuntimeArtifact}from'../../core/api-client.js';import{ID_FLAG,VERBOSE_FLAG}from'../../commands/common/flags.js';function a10_0x5aeb(){const _0x9b762c=['create','.\x20Unsupported:\x20','exec','/client/artifact/','lodash','num','react_module\x20imports\x20are\x20limited\x20to:\x20','691392ilRygT','string','number','compiledContent','/update','content','80829plyysA','Artifact\x20ID','parse','240acafnF','lastIndex','artifact','source','Path\x20to\x20a\x20local\x20UTF-8\x20React\x20module\x20source\x20file','react-dom','50603GlQEtR','data','list','flag','trim','AGENT','Updated\x20Artifact\x20','name','Artifact\x20source\x20file\x20is\x20blank.','updateTime','Optional\x20source\x20filter,\x20for\x20example\x20AGENT','add','body','validation','build','join','14031QEWtvS','map','utf8','File\x20path\x20is\x20required.','Preview:\x20update\x20react_module\x20Artifact\x20','react_module\x20must\x20be\x20an\x20embeddable\x20React\x20module,\x20not\x20full\x20HTML\x20or\x20a\x20ReactDOM/createRoot\x20mount\x20entry.','includes','deleted','isFile','6LGLOjx','some','270LVMVNJ','str','@ant-design/icons','length','description','write','Saves\x20and\x20recompiles\x20Artifact\x20source.\x20Embedded\x20module\x20display\x20and\x20interaction\x20in\x20the\x20app\x20may\x20change\x20immediately.','POST','Saves\x20and\x20compiles\x20new\x20Artifact\x20source.\x20On\x20success,\x20a\x20displayable\x20embedded\x20module\x20is\x20added\x20to\x20the\x20current\x20app.','/client/artifact/create','file','253755hExIWL','Artifact\x20metadata\x20as\x20JSON\x20object;\x20compiledContent\x20is\x20stripped','Preview:\x20create\x20react_module\x20Artifact','startsWith','update','File\x20is\x20not\x20a\x20regular\x20file:\x20','react_module','appCode','Update\x20a\x20react_module\x20Artifact\x20from\x20a\x20local\x20source\x20file','bool','File\x20not\x20found:\x20','split','react','102924fotSIK','Optional\x20favorite-state\x20filter','1421988DaQMvX','metadata','isArray','filter','object','artifactType','Create\x20a\x20react_module\x20Artifact\x20from\x20a\x20local\x20source\x20file','List\x20current-app\x20react_module\x20Artifacts','favorite','antd'];a10_0x5aeb=function(){return _0x9b762c;};return a10_0x5aeb();}import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';const ARTIFACT_TYPE_REACT_MODULE=a10_0x40fb0c(0xe8),ARTIFACT_SOURCE_AGENT=a10_0x40fb0c(0xc1),ALLOWED_REACT_MODULE_IMPORTS=[a10_0x40fb0c(0xee),a10_0x40fb0c(0xbb),a10_0x40fb0c(0xaa),'dayjs',a10_0x40fb0c(0xfa),a10_0x40fb0c(0xd9)];export const ALLOWED_REACT_MODULE_IMPORTS_TEXT=ALLOWED_REACT_MODULE_IMPORTS['join'](',\x20');const IMPORT_SOURCE_PATTERNS=[/\bimport\s+(?:type\s+)?(?:[^'";]*?\s+from\s+)?["']([^"']+)["']/g,/\bexport\s+(?:type\s+)?[^'";]*?\s+from\s+["']([^"']+)["']/g,/\bimport\s*\(\s*["']([^"']+)["']\s*\)/g,/\brequire\s*\(\s*["']([^"']+)["']\s*\)/g],PAGE_LEVEL_PATTERNS=[/<!doctype\s+html/i,/<\s*html\b/i,/\bcreateRoot\s*\(/,/\bReactDOM\s*\.\s*render\s*\(/,/\bReactDOM\s*\.\s*createRoot\s*\(/],FILE_FLAG={'name':a10_0x40fb0c(0xe1),'type':'string','required':!![],'description':a10_0x40fb0c(0xba)},ARTIFACT_NAME_FLAG={'name':a10_0x40fb0c(0xc3),'type':'string','description':'Artifact\x20display\x20name'},METADATA_FLAG={'name':'metadata','type':a10_0x40fb0c(0xae),'description':a10_0x40fb0c(0xe3)};function isPlainObject(_0x2d0b63){const _0x5be210=a10_0x40fb0c;return typeof _0x2d0b63===_0x5be210(0xf5)&&_0x2d0b63!==null&&!Array[_0x5be210(0xf3)](_0x2d0b63);}function readSourceFile(_0x3474ee){const _0x5b3021=a10_0x40fb0c;if(!_0x3474ee)throw CliErrors['validation'](_0x5b3021(0xcf));if(!existsSync(_0x3474ee))throw CliErrors['validation'](_0x5b3021(0xec)+_0x3474ee);if(!statSync(_0x3474ee)[_0x5b3021(0xd4)]())throw CliErrors[_0x5b3021(0xc9)](_0x5b3021(0xe7)+_0x3474ee);const _0x363189=readFileSync(_0x3474ee,_0x5b3021(0xce));return validateReactModuleSource(_0x363189),_0x363189;}function parseMetadata(_0x323e1d){const _0x3e37e7=a10_0x40fb0c;if(!_0x323e1d)return undefined;let _0x1771ef;try{_0x1771ef=JSON[_0x3e37e7(0xb5)](_0x323e1d);}catch{throw CliErrors[_0x3e37e7(0xc9)]('Invalid\x20JSON\x20for\x20--metadata:\x20'+_0x323e1d);}if(!isPlainObject(_0x1771ef))throw CliErrors[_0x3e37e7(0xc9)]('--metadata\x20must\x20be\x20a\x20JSON\x20object.');const _0x2d6990={..._0x1771ef};return delete _0x2d6990['compiledContent'],_0x2d6990;}function getPackageName(_0xd98e1f){const _0x22d497=a10_0x40fb0c;if(_0xd98e1f[_0x22d497(0xe5)]('@')){const [_0x391f3d,_0xf7ffa8]=_0xd98e1f[_0x22d497(0xed)]('/');return _0x391f3d&&_0xf7ffa8?_0x391f3d+'/'+_0xf7ffa8:_0xd98e1f;}return _0xd98e1f[_0x22d497(0xed)]('/')[0x0]||_0xd98e1f;}function validateAllowedImports(_0x7a3213){const _0x5f1424=a10_0x40fb0c,_0x2326b1=new Set();for(const _0x60a46a of IMPORT_SOURCE_PATTERNS){_0x60a46a[_0x5f1424(0xb7)]=0x0;let _0x761cd9;while((_0x761cd9=_0x60a46a[_0x5f1424(0xa8)](_0x7a3213))!==null){const _0x205cbd=_0x761cd9[0x1]?.['trim']();_0x205cbd&&_0x2326b1[_0x5f1424(0xc7)](_0x205cbd);}}const _0x3cb0a2=[..._0x2326b1][_0x5f1424(0xcd)](getPackageName)[_0x5f1424(0xf4)](_0x3d887f=>!ALLOWED_REACT_MODULE_IMPORTS[_0x5f1424(0xd2)](_0x3d887f));if(_0x3cb0a2[_0x5f1424(0xda)]>0x0)throw CliErrors[_0x5f1424(0xc9)](_0x5f1424(0xac)+ALLOWED_REACT_MODULE_IMPORTS_TEXT+_0x5f1424(0xa7)+[...new Set(_0x3cb0a2)][_0x5f1424(0xcb)](',\x20'));}export function validateReactModuleSource(_0x200dca){const _0x55f140=a10_0x40fb0c;if(!_0x200dca['trim']())throw CliErrors[_0x55f140(0xc9)](_0x55f140(0xc4));if(PAGE_LEVEL_PATTERNS[_0x55f140(0xd6)](_0x39ac6c=>_0x39ac6c['test'](_0x200dca)))throw CliErrors[_0x55f140(0xc9)](_0x55f140(0xd1));validateAllowedImports(_0x200dca);}function buildArtifactInput(_0x501994){const _0x456c9a=a10_0x40fb0c,_0x8f1ba8=readSourceFile(_0x501994[_0x456c9a(0xd8)](_0x456c9a(0xe1))),_0x1436a3=_0x501994['str'](_0x456c9a(0xc3))[_0x456c9a(0xc0)](),_0x274631=parseMetadata(_0x501994[_0x456c9a(0xd8)](_0x456c9a(0xf2)));return{'artifactType':ARTIFACT_TYPE_REACT_MODULE,..._0x1436a3?{'name':_0x1436a3}:{},'content':_0x8f1ba8,..._0x274631?{'metadata':_0x274631}:{},'source':ARTIFACT_SOURCE_AGENT};}function summarizeArtifact(_0x4083ea){const _0x4a4802=a10_0x40fb0c;return{'id':_0x4083ea['id'],'name':_0x4083ea['name'],'artifactType':_0x4083ea[_0x4a4802(0xf6)],'source':_0x4083ea[_0x4a4802(0xb9)],'favorite':_0x4083ea[_0x4a4802(0xf9)],'deleted':_0x4083ea[_0x4a4802(0xd3)],'createTime':_0x4083ea['createTime'],'updateTime':_0x4083ea[_0x4a4802(0xc5)]};}function detailArtifact(_0x3cb0f0){const _0x35da75=a10_0x40fb0c;return{'id':_0x3cb0f0['id'],'appCode':_0x3cb0f0[_0x35da75(0xe9)],'name':_0x3cb0f0['name'],'artifactType':_0x3cb0f0['artifactType'],'source':_0x3cb0f0['source'],'favorite':_0x3cb0f0['favorite'],'deleted':_0x3cb0f0[_0x35da75(0xd3)],'content':_0x3cb0f0[_0x35da75(0xb2)]??'','compiledContent':_0x3cb0f0[_0x35da75(0xb0)],'metadata':_0x3cb0f0[_0x35da75(0xf2)]??{},'createTime':_0x3cb0f0['createTime'],'updateTime':_0x3cb0f0['updateTime']};}function readFavoriteFlag(_0xfbfdc6){const _0x1ae814=a10_0x40fb0c,_0x3c6563=_0xfbfdc6[_0x1ae814(0xbf)](_0x1ae814(0xf9));return _0x3c6563===undefined||_0x3c6563===null||_0x3c6563===''?undefined:_0xfbfdc6[_0x1ae814(0xeb)](_0x1ae814(0xf9));}function a10_0xd9a7(_0x34ac48,_0x59aac5){_0x34ac48=_0x34ac48-0xa6;const _0x5aebb9=a10_0x5aeb();let _0xd9a740=_0x5aebb9[_0x34ac48];return _0xd9a740;}const artifactList={'service':'artifact','command':a10_0x40fb0c(0xbe),'description':a10_0x40fb0c(0xf8),'risk':'read','flags':[{'name':'source','type':a10_0x40fb0c(0xae),'description':a10_0x40fb0c(0xc6)},{'name':a10_0x40fb0c(0xf9),'type':'boolean','description':a10_0x40fb0c(0xf0)},VERBOSE_FLAG],async 'execute'(_0x24e4d9){const _0x29fe4f=a10_0x40fb0c,_0x3a2a34=await listRuntimeArtifacts(_0x24e4d9[_0x29fe4f(0xe9)],{'artifactType':ARTIFACT_TYPE_REACT_MODULE,..._0x24e4d9[_0x29fe4f(0xd8)](_0x29fe4f(0xb9))?{'source':_0x24e4d9[_0x29fe4f(0xd8)](_0x29fe4f(0xb9))}:{},...readFavoriteFlag(_0x24e4d9)!==undefined?{'favorite':readFavoriteFlag(_0x24e4d9)}:{}});return{'ok':!![],'data':{'total':_0x3a2a34[_0x29fe4f(0xda)],'items':_0x24e4d9[_0x29fe4f(0xeb)]('verbose')?_0x3a2a34:_0x3a2a34[_0x29fe4f(0xcd)](summarizeArtifact)}};}},artifactDetail={'service':a10_0x40fb0c(0xb8),'command':'detail','description':'Show\x20one\x20Artifact\x20by\x20id','risk':'read','flags':[{...ID_FLAG,'description':a10_0x40fb0c(0xb4)}],async 'execute'(_0x45d03c){const _0x217d7b=a10_0x40fb0c,_0x4c4e25=await getRuntimeArtifact(_0x45d03c[_0x217d7b(0xab)]('id'),_0x45d03c[_0x217d7b(0xe9)]);return{'ok':!![],'data':detailArtifact(_0x4c4e25)};}},artifactCreate={'service':a10_0x40fb0c(0xb8),'command':a10_0x40fb0c(0xa6),'description':a10_0x40fb0c(0xf7),'risk':a10_0x40fb0c(0xdc),'confirmationDescription':a10_0x40fb0c(0xdf),'flags':[FILE_FLAG,ARTIFACT_NAME_FLAG,METADATA_FLAG],async 'execute'(_0x1f9f70){const _0x3915a7=a10_0x40fb0c,_0x5c3f58=buildArtifactInput(_0x1f9f70),_0x46ee70=await createRuntimeArtifact(_0x1f9f70[_0x3915a7(0xe9)],_0x5c3f58);return{'ok':!![],'data':detailArtifact(_0x46ee70),'message':'Created\x20Artifact\x20'+_0x46ee70['id']+(_0x46ee70['name']?'\x20('+_0x46ee70[_0x3915a7(0xc3)]+')':'')};},async 'dryRun'(_0xe184a){const _0x4f5755=a10_0x40fb0c,_0xe55478=buildArtifactInput(_0xe184a);return dryRun(_0x4f5755(0xde),_0x4f5755(0xe0))[_0x4f5755(0xc8)]({'appCode':_0xe184a[_0x4f5755(0xe9)],..._0xe55478})[_0x4f5755(0xdb)](_0x4f5755(0xe4))['build']();},'writeEventSubject'(_0x3c4716){const _0x2ac8d7=a10_0x40fb0c,_0x5b34f3=_0x3c4716[_0x2ac8d7(0xbd)]?.['id'];if(typeof _0x5b34f3!==_0x2ac8d7(0xae)&&typeof _0x5b34f3!==_0x2ac8d7(0xaf))return undefined;return{'kind':'artifact','id':String(_0x5b34f3),'action':_0x2ac8d7(0xa6)};}},artifactUpdate={'service':'artifact','command':a10_0x40fb0c(0xe6),'description':a10_0x40fb0c(0xea),'risk':a10_0x40fb0c(0xdc),'confirmationDescription':a10_0x40fb0c(0xdd),'flags':[{...ID_FLAG,'description':a10_0x40fb0c(0xb4)},FILE_FLAG,ARTIFACT_NAME_FLAG,METADATA_FLAG],async 'execute'(_0x141fc7){const _0x351a7b=a10_0x40fb0c,_0x40ea1e=_0x141fc7[_0x351a7b(0xab)]('id'),_0x3f894b=buildArtifactInput(_0x141fc7),_0x55e57e=await updateRuntimeArtifact(_0x40ea1e,_0x141fc7[_0x351a7b(0xe9)],_0x3f894b);return{'ok':!![],'data':detailArtifact(_0x55e57e),'message':_0x351a7b(0xc2)+_0x55e57e['id']+(_0x55e57e[_0x351a7b(0xc3)]?'\x20('+_0x55e57e[_0x351a7b(0xc3)]+')':'')};},async 'dryRun'(_0x208cd2){const _0x4d403c=a10_0x40fb0c,_0x44be4e=_0x208cd2[_0x4d403c(0xab)]('id'),_0x332e0d=buildArtifactInput(_0x208cd2);return dryRun('POST',_0x4d403c(0xa9)+_0x44be4e+_0x4d403c(0xb1))['body']({'appCode':_0x208cd2[_0x4d403c(0xe9)],..._0x332e0d})[_0x4d403c(0xdb)](_0x4d403c(0xd0)+_0x44be4e)[_0x4d403c(0xca)]();},'writeEventSubject'(_0x433614){const _0x56f4a8=a10_0x40fb0c,_0x141c49=_0x433614[_0x56f4a8(0xbd)]?.['id'];if(typeof _0x141c49!==_0x56f4a8(0xae)&&typeof _0x141c49!==_0x56f4a8(0xaf))return undefined;return{'kind':'artifact','id':String(_0x141c49),'action':_0x56f4a8(0xe6)};}};export const artifactDefinitions=[artifactList,artifactDetail,artifactCreate,artifactUpdate];
|
|
1
|
+
const a10_0xc0e850=a10_0x34be;(function(_0x4cbe4c,_0x2f2c35){const _0x475b5b=a10_0x34be,_0x3f26c6=_0x4cbe4c();while(!![]){try{const _0x3ead5b=-parseInt(_0x475b5b(0x152))/0x1+parseInt(_0x475b5b(0x136))/0x2+parseInt(_0x475b5b(0x147))/0x3+-parseInt(_0x475b5b(0x122))/0x4+-parseInt(_0x475b5b(0x131))/0x5*(-parseInt(_0x475b5b(0x12c))/0x6)+parseInt(_0x475b5b(0x153))/0x7*(-parseInt(_0x475b5b(0x148))/0x8)+-parseInt(_0x475b5b(0x15d))/0x9;if(_0x3ead5b===_0x2f2c35)break;else _0x3f26c6['push'](_0x3f26c6['shift']());}catch(_0x48f518){_0x3f26c6['push'](_0x3f26c6['shift']());}}}(a10_0x34f9,0x528f4));function a10_0x34be(_0x26b740,_0x43bcc6){_0x26b740=_0x26b740-0x113;const _0x34f9a7=a10_0x34f9();let _0x34be6d=_0x34f9a7[_0x26b740];return _0x34be6d;}import{existsSync,readFileSync,statSync}from'node:fs';import{createRuntimeArtifact,getRuntimeArtifact,listRuntimeArtifacts,updateRuntimeArtifact}from'../../core/api-client.js';import{ID_FLAG,VERBOSE_FLAG}from'../../commands/common/flags.js';import{CliErrors}from'../../errors.js';import{dryRun}from'../../framework/dryrun.js';const ARTIFACT_TYPE_REACT_MODULE=a10_0xc0e850(0x14a),ARTIFACT_SOURCE_AGENT=a10_0xc0e850(0x123),ALLOWED_REACT_MODULE_IMPORTS=[a10_0xc0e850(0x116),'react-dom',a10_0xc0e850(0x11d),a10_0xc0e850(0x160),a10_0xc0e850(0x11f),a10_0xc0e850(0x124)];export const ALLOWED_REACT_MODULE_IMPORTS_TEXT=ALLOWED_REACT_MODULE_IMPORTS[a10_0xc0e850(0x151)](',\x20');const IMPORT_SOURCE_PATTERNS=[/\bimport\s+(?:type\s+)?(?:[^'";]*?\s+from\s+)?["']([^"']+)["']/g,/\bexport\s+(?:type\s+)?[^'";]*?\s+from\s+["']([^"']+)["']/g,/\bimport\s*\(\s*["']([^"']+)["']\s*\)/g,/\brequire\s*\(\s*["']([^"']+)["']\s*\)/g],PAGE_LEVEL_PATTERNS=[/<!doctype\s+html/i,/<\s*html\b/i,/\bcreateRoot\s*\(/,/\bReactDOM\s*\.\s*render\s*\(/,/\bReactDOM\s*\.\s*createRoot\s*\(/],FILE_FLAG={'name':a10_0xc0e850(0x128),'type':a10_0xc0e850(0x155),'required':!![],'description':'Path\x20to\x20a\x20local\x20UTF-8\x20React\x20module\x20source\x20file'},ARTIFACT_NAME_FLAG={'name':a10_0xc0e850(0x138),'type':a10_0xc0e850(0x155),'description':a10_0xc0e850(0x146)},METADATA_FLAG={'name':a10_0xc0e850(0x154),'type':a10_0xc0e850(0x155),'description':a10_0xc0e850(0x143)};function isPlainObject(_0x51602e){const _0x2d8ae4=a10_0xc0e850;return typeof _0x51602e===_0x2d8ae4(0x12a)&&_0x51602e!==null&&!Array[_0x2d8ae4(0x120)](_0x51602e);}function readSourceFile(_0xfed638){const _0x2a32a2=a10_0xc0e850;if(!_0xfed638)throw CliErrors[_0x2a32a2(0x119)](_0x2a32a2(0x12e));if(!existsSync(_0xfed638))throw CliErrors[_0x2a32a2(0x119)](_0x2a32a2(0x13e)+_0xfed638);if(!statSync(_0xfed638)['isFile']())throw CliErrors['validation'](_0x2a32a2(0x14d)+_0xfed638);const _0x3b0c10=readFileSync(_0xfed638,_0x2a32a2(0x134));return validateReactModuleSource(_0x3b0c10),_0x3b0c10;}function parseMetadata(_0x27e4d9){const _0x2e6d44=a10_0xc0e850;if(!_0x27e4d9)return undefined;let _0x47a3f4;try{_0x47a3f4=JSON[_0x2e6d44(0x139)](_0x27e4d9);}catch{throw CliErrors[_0x2e6d44(0x119)](_0x2e6d44(0x140)+_0x27e4d9);}if(!isPlainObject(_0x47a3f4))throw CliErrors[_0x2e6d44(0x119)]('--metadata\x20must\x20be\x20a\x20JSON\x20object.');const _0x333064={..._0x47a3f4};return delete _0x333064[_0x2e6d44(0x11c)],_0x333064;}function getPackageName(_0xac97dd){const _0x328ec9=a10_0xc0e850;if(_0xac97dd[_0x328ec9(0x14e)]('@')){const [_0x4b96f1,_0x1ab3eb]=_0xac97dd[_0x328ec9(0x15c)]('/');return _0x4b96f1&&_0x1ab3eb?_0x4b96f1+'/'+_0x1ab3eb:_0xac97dd;}return _0xac97dd[_0x328ec9(0x15c)]('/')[0x0]||_0xac97dd;}function validateAllowedImports(_0x13d8f8){const _0x109e98=a10_0xc0e850,_0x26df77=new Set();for(const _0x14e472 of IMPORT_SOURCE_PATTERNS){_0x14e472['lastIndex']=0x0;let _0x2782be;while((_0x2782be=_0x14e472[_0x109e98(0x162)](_0x13d8f8))!==null){const _0x2ed6f9=_0x2782be[0x1]?.['trim']();_0x2ed6f9&&_0x26df77[_0x109e98(0x15a)](_0x2ed6f9);}}const _0x53ba0c=[..._0x26df77][_0x109e98(0x15f)](getPackageName)['filter'](_0x4e4a9e=>!ALLOWED_REACT_MODULE_IMPORTS['includes'](_0x4e4a9e));if(_0x53ba0c[_0x109e98(0x12f)]>0x0)throw CliErrors['validation'](_0x109e98(0x11e)+ALLOWED_REACT_MODULE_IMPORTS_TEXT+_0x109e98(0x118)+[...new Set(_0x53ba0c)][_0x109e98(0x151)](',\x20'));}export function validateReactModuleSource(_0x39c3a7){const _0x40ca4d=a10_0xc0e850;if(!_0x39c3a7[_0x40ca4d(0x129)]())throw CliErrors['validation'](_0x40ca4d(0x135));if(PAGE_LEVEL_PATTERNS['some'](_0x228f61=>_0x228f61[_0x40ca4d(0x115)](_0x39c3a7)))throw CliErrors['validation'](_0x40ca4d(0x142));validateAllowedImports(_0x39c3a7);}function buildArtifactInput(_0x3f8e87){const _0x2d053d=a10_0xc0e850,_0x7ed782=readSourceFile(_0x3f8e87[_0x2d053d(0x132)]('file')),_0x1a0863=_0x3f8e87['str']('name')[_0x2d053d(0x129)](),_0x4e90d0=parseMetadata(_0x3f8e87[_0x2d053d(0x132)]('metadata'));return{'artifactType':ARTIFACT_TYPE_REACT_MODULE,..._0x1a0863?{'name':_0x1a0863}:{},'content':_0x7ed782,..._0x4e90d0?{'metadata':_0x4e90d0}:{},'source':ARTIFACT_SOURCE_AGENT};}function summarizeArtifact(_0x2b315c){const _0x3b911f=a10_0xc0e850;return{'id':_0x2b315c['id'],'name':_0x2b315c['name'],'artifactType':_0x2b315c[_0x3b911f(0x156)],'source':_0x2b315c[_0x3b911f(0x127)],'favorite':_0x2b315c[_0x3b911f(0x15e)],'deleted':_0x2b315c[_0x3b911f(0x13a)],'createTime':_0x2b315c[_0x3b911f(0x126)],'updateTime':_0x2b315c[_0x3b911f(0x141)]};}function detailArtifact(_0x13c6a6){const _0x31591e=a10_0xc0e850;return{'id':_0x13c6a6['id'],'appCode':_0x13c6a6[_0x31591e(0x121)],'name':_0x13c6a6[_0x31591e(0x138)],'artifactType':_0x13c6a6['artifactType'],'source':_0x13c6a6[_0x31591e(0x127)],'favorite':_0x13c6a6['favorite'],'deleted':_0x13c6a6[_0x31591e(0x13a)],'content':_0x13c6a6[_0x31591e(0x13d)]??'','compiledContent':_0x13c6a6[_0x31591e(0x11c)],'metadata':_0x13c6a6[_0x31591e(0x154)]??{},'createTime':_0x13c6a6[_0x31591e(0x126)],'updateTime':_0x13c6a6[_0x31591e(0x141)]};}function readFavoriteFlag(_0x2a2a85){const _0x3b8e43=a10_0xc0e850,_0x2d5f50=_0x2a2a85['flag'](_0x3b8e43(0x15e));return _0x2d5f50===undefined||_0x2d5f50===null||_0x2d5f50===''?undefined:_0x2a2a85[_0x3b8e43(0x150)](_0x3b8e43(0x15e));}const artifactList={'service':a10_0xc0e850(0x13b),'command':'list','description':a10_0xc0e850(0x158),'risk':a10_0xc0e850(0x114),'flags':[{'name':a10_0xc0e850(0x127),'type':a10_0xc0e850(0x155),'description':'Optional\x20source\x20filter,\x20for\x20example\x20AGENT'},{'name':a10_0xc0e850(0x15e),'type':a10_0xc0e850(0x15b),'description':'Optional\x20favorite-state\x20filter'},VERBOSE_FLAG],async 'execute'(_0x2b8e7c){const _0x48328e=a10_0xc0e850,_0x37a6e2=await listRuntimeArtifacts(_0x2b8e7c[_0x48328e(0x121)],{'artifactType':ARTIFACT_TYPE_REACT_MODULE,..._0x2b8e7c[_0x48328e(0x132)](_0x48328e(0x127))?{'source':_0x2b8e7c[_0x48328e(0x132)](_0x48328e(0x127))}:{},...readFavoriteFlag(_0x2b8e7c)!==undefined?{'favorite':readFavoriteFlag(_0x2b8e7c)}:{}});return{'ok':!![],'data':{'total':_0x37a6e2[_0x48328e(0x12f)],'items':_0x2b8e7c['bool'](_0x48328e(0x157))?_0x37a6e2:_0x37a6e2[_0x48328e(0x15f)](summarizeArtifact)}};}},artifactDetail={'service':'artifact','command':a10_0xc0e850(0x159),'description':a10_0xc0e850(0x13f),'risk':a10_0xc0e850(0x114),'flags':[{...ID_FLAG,'description':a10_0xc0e850(0x11b)}],async 'execute'(_0x3791ef){const _0x274e66=a10_0xc0e850,_0x74404f=await getRuntimeArtifact(_0x3791ef['num']('id'),_0x3791ef[_0x274e66(0x121)]);return{'ok':!![],'data':detailArtifact(_0x74404f)};}},artifactCreate={'service':a10_0xc0e850(0x13b),'command':'create','description':a10_0xc0e850(0x125),'risk':a10_0xc0e850(0x145),'confirmationDescription':a10_0xc0e850(0x149),'flags':[FILE_FLAG,ARTIFACT_NAME_FLAG,METADATA_FLAG],async 'execute'(_0x56a3f6){const _0x526994=a10_0xc0e850,_0x4ab82f=buildArtifactInput(_0x56a3f6),_0x15bf80=await createRuntimeArtifact(_0x56a3f6[_0x526994(0x121)],_0x4ab82f);return{'ok':!![],'data':detailArtifact(_0x15bf80),'message':_0x526994(0x12d)+_0x15bf80['id']+(_0x15bf80['name']?'\x20('+_0x15bf80[_0x526994(0x138)]+')':'')};},async 'dryRun'(_0x1ed59b){const _0x5061c6=a10_0xc0e850,_0x3c384c=buildArtifactInput(_0x1ed59b);return dryRun(_0x5061c6(0x13c),_0x5061c6(0x144))[_0x5061c6(0x14b)]({'appCode':_0x1ed59b[_0x5061c6(0x121)],..._0x3c384c})[_0x5061c6(0x12b)]('Preview:\x20create\x20react_module\x20Artifact')[_0x5061c6(0x113)]();},'writeEventSubject'(_0x23f0a6){const _0x4406e8=a10_0xc0e850,_0x3aecbb=_0x23f0a6[_0x4406e8(0x117)]?.['id'];if(typeof _0x3aecbb!=='string'&&typeof _0x3aecbb!=='number')return undefined;return{'kind':_0x4406e8(0x13b),'id':String(_0x3aecbb),'action':'create'};}},artifactUpdate={'service':a10_0xc0e850(0x13b),'command':a10_0xc0e850(0x14f),'description':a10_0xc0e850(0x130),'risk':a10_0xc0e850(0x145),'confirmationDescription':a10_0xc0e850(0x133),'flags':[{...ID_FLAG,'description':a10_0xc0e850(0x11b)},FILE_FLAG,ARTIFACT_NAME_FLAG,METADATA_FLAG],async 'execute'(_0x3660aa){const _0x26b5e1=a10_0xc0e850,_0x385660=_0x3660aa[_0x26b5e1(0x161)]('id'),_0x14d14d=buildArtifactInput(_0x3660aa),_0x24a747=await updateRuntimeArtifact(_0x385660,_0x3660aa[_0x26b5e1(0x121)],_0x14d14d);return{'ok':!![],'data':detailArtifact(_0x24a747),'message':_0x26b5e1(0x11a)+_0x24a747['id']+(_0x24a747[_0x26b5e1(0x138)]?'\x20('+_0x24a747[_0x26b5e1(0x138)]+')':'')};},async 'dryRun'(_0x53c331){const _0x56fa7e=a10_0xc0e850,_0x2d36b4=_0x53c331['num']('id'),_0x5aa778=buildArtifactInput(_0x53c331);return dryRun(_0x56fa7e(0x13c),'/client/artifact/'+_0x2d36b4+_0x56fa7e(0x137))[_0x56fa7e(0x14b)]({'appCode':_0x53c331[_0x56fa7e(0x121)],..._0x5aa778})[_0x56fa7e(0x12b)](_0x56fa7e(0x14c)+_0x2d36b4)[_0x56fa7e(0x113)]();},'writeEventSubject'(_0x289fad){const _0x3a2046=a10_0xc0e850,_0x5b8cf9=_0x289fad[_0x3a2046(0x117)]?.['id'];if(typeof _0x5b8cf9!==_0x3a2046(0x155)&&typeof _0x5b8cf9!=='number')return undefined;return{'kind':_0x3a2046(0x13b),'id':String(_0x5b8cf9),'action':_0x3a2046(0x14f)};}};export const artifactDefinitions=[artifactList,artifactDetail,artifactCreate,artifactUpdate];function a10_0x34f9(){const _0x129488=['react_module\x20must\x20be\x20an\x20embeddable\x20React\x20module,\x20not\x20full\x20HTML\x20or\x20a\x20ReactDOM/createRoot\x20mount\x20entry.','Artifact\x20metadata\x20as\x20JSON\x20object;\x20compiledContent\x20is\x20stripped','/client/artifact/create','write','Artifact\x20display\x20name','402162eWjdxQ','1027304AAlMMR','Saves\x20and\x20compiles\x20new\x20Artifact\x20source.\x20On\x20success,\x20a\x20displayable\x20embedded\x20module\x20is\x20added\x20to\x20the\x20current\x20app.','react_module','body','Preview:\x20update\x20react_module\x20Artifact\x20','File\x20is\x20not\x20a\x20regular\x20file:\x20','startsWith','update','bool','join','14143VhoBqr','7uxTDzV','metadata','string','artifactType','verbose','List\x20current-app\x20react_module\x20Artifacts','detail','add','boolean','split','2227446ljGfLZ','favorite','map','dayjs','num','exec','build','read','test','react','data','.\x20Unsupported:\x20','validation','Updated\x20Artifact\x20','Artifact\x20ID','compiledContent','lodash','react_module\x20imports\x20are\x20limited\x20to:\x20','antd','isArray','appCode','160176UcEWpb','AGENT','@ant-design/icons','Create\x20a\x20react_module\x20Artifact\x20from\x20a\x20local\x20source\x20file','createTime','source','file','trim','object','description','2116734SPSuOJ','Created\x20Artifact\x20','File\x20path\x20is\x20required.','length','Update\x20a\x20react_module\x20Artifact\x20from\x20a\x20local\x20source\x20file','5IskTFe','str','Saves\x20and\x20recompiles\x20Artifact\x20source.\x20Embedded\x20module\x20display\x20and\x20interaction\x20in\x20the\x20app\x20may\x20change\x20immediately.','utf8','Artifact\x20source\x20file\x20is\x20blank.','562830ZieHWl','/update','name','parse','deleted','artifact','POST','content','File\x20not\x20found:\x20','Show\x20one\x20Artifact\x20by\x20id','Invalid\x20JSON\x20for\x20--metadata:\x20','updateTime'];a10_0x34f9=function(){return _0x129488;};return a10_0x34f9();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a11_0x8f0372=a11_0x4ea6;(function(_0x310237,_0x3f4b2c){const _0x5a2432=a11_0x4ea6,_0x562425=_0x310237();while(!![]){try{const _0x4eafe3=-parseInt(_0x5a2432(0x100))/0x1+-parseInt(_0x5a2432(0xbe))/0x2+parseInt(_0x5a2432(0xd9))/0x3*(-parseInt(_0x5a2432(0xc1))/0x4)+parseInt(_0x5a2432(0xd1))/0x5+parseInt(_0x5a2432(0xbd))/0x6*(-parseInt(_0x5a2432(0xfa))/0x7)+parseInt(_0x5a2432(0xe7))/0x8*(-parseInt(_0x5a2432(0xe0))/0x9)+parseInt(_0x5a2432(0x107))/0xa;if(_0x4eafe3===_0x3f4b2c)break;else _0x562425['push'](_0x562425['shift']());}catch(_0x45a8d1){_0x562425['push'](_0x562425['shift']());}}}(a11_0x5087,0x7e7ec));import{existsSync,mkdirSync,readFileSync,unlinkSync,writeFileSync}from'node:fs';import{dirname}from'node:path';import{homedir}from'node:os';import{readScopedConfig,writeScopedConfig}from'../../context.js';import{CLI_BIN_NAME}from'../../constant/cli.js';import{PRODUCT_CONFIG}from'../../constant/product.js';import{getUserDomain}from'../../constant/domain.js';import{CliErrors}from'../../errors.js';import{resolveConfigScope,toScopeFlags}from'../../commands/common/config-policy.js';function a11_0x4ea6(_0x15661d,_0x395a0f){_0x15661d=_0x15661d-0xb2;const _0x5087e4=a11_0x5087();let _0x4ea661=_0x5087e4[_0x15661d];return _0x4ea661;}import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';function resolveAuthScopeFlags(_0xfe4437){const _0x41add8=a11_0x4ea6;return toScopeFlags(resolveConfigScope({'explicitGlobal':_0xfe4437[_0x41add8(0xce)](_0x41add8(0xf5)),'explicitProject':_0xfe4437[_0x41add8(0xce)](_0x41add8(0xe4)),'policy':_0x41add8(0xbc)}));}const ACCESS_KEY_PATTERN=/^ak_[A-Za-z0-9]{16,}$/,DEVICE_CODE_TTL_MS=0x927c0,POLL_INTERVAL_MS=0xbb8,MAX_POLLS=0xc8,MAX_CONSECUTIVE_NETWORK_ERRORS=0x5;export function generateDeviceCode(){const _0x3c3a90=a11_0x4ea6;return crypto[_0x3c3a90(0xfb)]();}export function buildDeviceAuthUrl(_0x153c5f,_0x38b421,_0x2f508c=a11_0x8f0372(0xea)){const _0x541c47=a11_0x8f0372;return _0x153c5f+_0x541c47(0xf0)+encodeURIComponent(_0x38b421)+_0x541c47(0x102)+encodeURIComponent(_0x2f508c);}export function getDeviceCodePath(){const _0x22293d=a11_0x8f0372;return homedir()+'/'+PRODUCT_CONFIG[_0x22293d(0xf4)]+_0x22293d(0xb2);}function a11_0x5087(){const _0x415733=['accessKey','bool','Invalid\x20access_key\x20returned\x20by\x20server.','string','2854240wsjxCN','cancelled','data','\x0dWaiting\x20for\x20authorization...\x20','trim','AccessKey\x20saved\x20to\x20','Device\x20authorization\x20URL\x20printed.\x20Complete\x20authorization\x20in\x20browser,\x20then\x20re-run.','once','3CdFMbX','device','code','floor','str','signal','auth','334782hiHlYT','createdAt','name','Print\x20URL\x20to\x20stdout\x20and\x20exit\x20(for\x20WorkBuddy\x20integration)','project','\x20config.','validation','168srpWZi','Open\x20this\x20URL\x20in\x20your\x20browser\x20to\x20authorize:','write','lovrabet-cli','),\x20retrying...','Authorize\x20with\x20the\x20device-code\x20flow\x20(complete\x20in\x20the\x20browser;\x20no\x20copy-paste\x20required)','Already\x20authorized.\x20Use\x20`lovrabet\x20auth\x20status`\x20to\x20verify.','Waiting\x20for\x20authorization\x20(timeout:\x2010\x20minutes,\x20Ctrl+C\x20to\x20cancel)...','apiError','/device-auth?code=','App\x20name\x20shown\x20on\x20authorization\x20page\x20(default:\x20lovrabet)','POST','After\x20authorizing,\x20re-run:\x20','homeDirName','global','\x20auth\x20status','Device\x20authorization\x20cancelled.','scope','parse','1127QZKuIG','randomUUID','json','Device\x20auth\x20API\x20returned\x20HTTP\x20','AbortError','access_key','562860jZnADf','networkError','&source=','Write\x20to\x20global\x20config\x20(default)','test','nonInteractive','Starts\x20the\x20device-code\x20login\x20flow.\x20On\x20success,\x20the\x20AccessKey\x20is\x20saved\x20to\x20the\x20selected\x20Lovrabet\x20config.\x20The\x20confirmation\x20UI\x20does\x20not\x20show\x20the\x20device\x20code\x20or\x20secret.','22210860ctxgWA','/.device-auth','source','The\x20device\x20code\x20is\x20valid\x20for\x2010\x20minutes.','SIGINT','padStart','Device\x20authorization\x20successful.','stringify','now','Write\x20to\x20project\x20config','Device\x20auth\x20API\x20error\x20(','global-default','7914rbPufQ','55412eghHCU','Device\x20auth\x20API\x20unreachable\x20after\x20multiple\x20retries.','expired','2758908rLqWgn','\x20remaining','utf8','stderr','removeListener','\x20auth\x20device','getTime','/api/device-auth/token','log','object','application/json','status'];a11_0x5087=function(){return _0x415733;};return a11_0x5087();}export function readStoredDeviceCode(){const _0x167703=a11_0x8f0372,_0x384c54=getDeviceCodePath();if(!existsSync(_0x384c54))return null;try{const _0x3287cf=readFileSync(_0x384c54,{'encoding':_0x167703(0xc3)}),_0x414c3e=JSON[_0x167703(0xf9)](_0x3287cf);if(_0x414c3e&&typeof _0x414c3e[_0x167703(0xdb)]===_0x167703(0xd0)&&typeof _0x414c3e[_0x167703(0xe1)]==='string'&&(_0x414c3e[_0x167703(0xf8)]===_0x167703(0xf5)||_0x414c3e[_0x167703(0xf8)]===_0x167703(0xe4)))return _0x414c3e;}catch{}return null;}export function writeStoredDeviceCode(_0xf42a14,_0x5f062b){const _0x28109e=getDeviceCodePath(),_0x48078a=dirname(_0x28109e);!existsSync(_0x48078a)&&mkdirSync(_0x48078a,{'recursive':!![]});const _0xa3c703={'code':_0xf42a14,'createdAt':new Date()['toISOString'](),'scope':_0x5f062b};writeFileSync(_0x28109e,JSON['stringify'](_0xa3c703),{'encoding':'utf8','mode':0x180});}export function deleteStoredDeviceCode(){const _0x1f3aba=getDeviceCodePath();try{unlinkSync(_0x1f3aba);}catch{}}export function isStoredDeviceCodeExpired(_0x5cd399){const _0x37ec75=a11_0x8f0372;return Date[_0x37ec75(0xb9)]()-new Date(_0x5cd399[_0x37ec75(0xe1)])[_0x37ec75(0xc7)]()>DEVICE_CODE_TTL_MS;}export async function fetchDeviceToken(_0x11fc3a,_0x1c1630){const _0x1a5518=a11_0x8f0372,_0xc84b6a=_0x11fc3a+_0x1a5518(0xc8),_0x2a1823=new AbortController(),_0x1d8b0b=setTimeout(()=>_0x2a1823['abort'](),0x2710),_0x367c74=await fetch(_0xc84b6a,{'method':_0x1a5518(0xf2),'headers':{'Content-Type':_0x1a5518(0xcb)},'body':JSON[_0x1a5518(0xb8)]({'code':_0x1c1630}),'signal':_0x2a1823[_0x1a5518(0xde)]});clearTimeout(_0x1d8b0b);if(!_0x367c74['ok'])throw CliErrors[_0x1a5518(0x101)](_0x1a5518(0xfd)+_0x367c74[_0x1a5518(0xcc)]);const _0x3c6a0d=await _0x367c74[_0x1a5518(0xfc)](),_0x5bd803=_0x3c6a0d[_0x1a5518(0xd3)]&&typeof _0x3c6a0d[_0x1a5518(0xd3)]===_0x1a5518(0xca)?_0x3c6a0d[_0x1a5518(0xd3)]:_0x3c6a0d;if(!_0x5bd803||typeof _0x5bd803[_0x1a5518(0xcc)]!==_0x1a5518(0xd0))throw CliErrors[_0x1a5518(0xef)]('Invalid\x20device\x20auth\x20response');return{'status':_0x5bd803['status'],'access_key':typeof _0x5bd803[_0x1a5518(0xff)]===_0x1a5518(0xd0)?_0x5bd803[_0x1a5518(0xff)]:undefined};}export async function pollDeviceToken(_0x519f71,_0x131323,_0x4c526a){const _0x4d74dc=a11_0x8f0372;let _0x40e636=0x0;for(let _0x290001=0x0;_0x290001<MAX_POLLS;_0x290001++){if(_0x4c526a['aborted'])throw CliErrors[_0x4d74dc(0xd2)](_0x4d74dc(0xf7));let _0x367c70;try{_0x367c70=await fetchDeviceToken(_0x519f71,_0x131323);}catch(_0x38dc42){if(_0x38dc42 instanceof Error&&_0x38dc42[_0x4d74dc(0xe2)]===_0x4d74dc(0xfe))throw CliErrors[_0x4d74dc(0xd2)](_0x4d74dc(0xf7));_0x40e636++;if(_0x40e636>=MAX_CONSECUTIVE_NETWORK_ERRORS)throw CliErrors[_0x4d74dc(0x101)](_0x4d74dc(0xbf));writeCliSideChannelLine(_0x4d74dc(0xbb)+_0x40e636+'/'+MAX_CONSECUTIVE_NETWORK_ERRORS+_0x4d74dc(0xeb)),await sleep(POLL_INTERVAL_MS);continue;}_0x40e636=0x0;if(_0x367c70[_0x4d74dc(0xcc)]==='success'){if(!_0x367c70[_0x4d74dc(0xff)])throw CliErrors[_0x4d74dc(0xef)]('Invalid\x20access_key\x20returned\x20by\x20server.');return _0x367c70[_0x4d74dc(0xff)];}if(_0x367c70[_0x4d74dc(0xcc)]===_0x4d74dc(0xc0)){deleteStoredDeviceCode();throw CliErrors[_0x4d74dc(0xe6)]('Device\x20code\x20expired.\x20Run\x20`lovrabet\x20auth\x20device`\x20to\x20get\x20a\x20new\x20code.');}const _0x7ef960=(_0x290001+0x1)*POLL_INTERVAL_MS,_0x4893a8=DEVICE_CODE_TTL_MS-_0x7ef960,_0x62b975=Math[_0x4d74dc(0xdc)](_0x4893a8/0xea60),_0x59bb0d=Math[_0x4d74dc(0xdc)](_0x4893a8%0xea60/0x3e8);process[_0x4d74dc(0xc4)]['write'](_0x4d74dc(0xd4)+_0x62b975+':'+String(_0x59bb0d)[_0x4d74dc(0xb6)](0x2,'0')+_0x4d74dc(0xc2)),await sleep(POLL_INTERVAL_MS);}deleteStoredDeviceCode();throw CliErrors['validation']('Device\x20authorization\x20timed\x20out\x20after\x2010\x20minutes.\x20Run\x20`lovrabet\x20auth\x20device`\x20to\x20get\x20a\x20new\x20code.');}function sleep(_0x240e86){return new Promise(_0x401670=>setTimeout(_0x401670,_0x240e86));}export const authDeviceDefinition={'service':a11_0x8f0372(0xdf),'command':a11_0x8f0372(0xda),'description':a11_0x8f0372(0xec),'risk':'write','confirmationDescription':a11_0x8f0372(0x106),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a11_0x8f0372(0xf5),'type':'boolean','description':a11_0x8f0372(0x103),'default':!![]},{'name':a11_0x8f0372(0xe4),'type':'boolean','description':a11_0x8f0372(0xba),'default':![]},{'name':a11_0x8f0372(0xb3),'type':'string','description':a11_0x8f0372(0xf1),'default':a11_0x8f0372(0xea)},{'name':'url-only','type':'boolean','description':a11_0x8f0372(0xe3),'default':![]}],async 'execute'(_0x14313e){const _0x4eb179=a11_0x8f0372,_0x455df3=resolveAuthScopeFlags(_0x14313e),_0x27fbbd=_0x455df3[_0x4eb179(0xf5)]?_0x4eb179(0xf5):'project',_0x8824ff=readScopedConfig(_0x455df3);if(_0x8824ff[_0x4eb179(0xcd)])return{'ok':!![],'message':_0x4eb179(0xed)};const _0x4962f2=(_0x14313e[_0x4eb179(0xdd)]('source')||_0x4eb179(0xea))[_0x4eb179(0xd5)](),_0x7c4c5a=getUserDomain(),_0x18be66=readStoredDeviceCode(),_0x669fb2=_0x18be66&&!isStoredDeviceCodeExpired(_0x18be66)?_0x18be66[_0x4eb179(0xdb)]:((()=>{const _0x41e1ef=generateDeviceCode();return writeStoredDeviceCode(_0x41e1ef,_0x27fbbd),_0x41e1ef;})()),_0x140154=buildDeviceAuthUrl(_0x7c4c5a,_0x669fb2,_0x4962f2);if(_0x14313e[_0x4eb179(0xce)]('url-only'))return console[_0x4eb179(0xc9)](_0x140154),{'ok':!![]};writeCliSideChannelLine(_0x4eb179(0xe8)),writeCliSideChannelLine(''),writeCliSideChannelLine(_0x140154),writeCliSideChannelLine(''),writeCliSideChannelLine(_0x4eb179(0xb4));if(_0x14313e[_0x4eb179(0x105)])return writeCliSideChannelLine(_0x4eb179(0xf3)+CLI_BIN_NAME+_0x4eb179(0xc6)),{'ok':!![],'message':_0x4eb179(0xd7)};writeCliSideChannelLine(_0x4eb179(0xee));const _0x3f1f19=new AbortController(),_0x219fbe=()=>{const _0xbd04ec=_0x4eb179;_0x3f1f19['abort'](),process[_0xbd04ec(0xc5)](_0xbd04ec(0xb5),_0x219fbe);};process[_0x4eb179(0xd8)](_0x4eb179(0xb5),_0x219fbe);let _0x469c9c;try{_0x469c9c=await pollDeviceToken(_0x7c4c5a,_0x669fb2,_0x3f1f19[_0x4eb179(0xde)]);}finally{process[_0x4eb179(0xc5)](_0x4eb179(0xb5),_0x219fbe);}if(!ACCESS_KEY_PATTERN[_0x4eb179(0x104)](_0x469c9c))throw CliErrors[_0x4eb179(0xef)](_0x4eb179(0xcf));const _0x2b65ff=readScopedConfig(_0x455df3);return _0x2b65ff['accessKey']=_0x469c9c,writeScopedConfig(_0x2b65ff,_0x455df3),deleteStoredDeviceCode(),process[_0x4eb179(0xc4)][_0x4eb179(0xe9)]('\x0a'),writeCliSideChannelLine(_0x4eb179(0xd6)+_0x27fbbd+_0x4eb179(0xe5)),writeCliSideChannelLine('Verify:\x20'+CLI_BIN_NAME+_0x4eb179(0xf6)),{'ok':!![],'message':_0x4eb179(0xb7)};}};
|
|
1
|
+
const a11_0x57f353=a11_0x2b59;(function(_0x139c2b,_0x54cb9f){const _0x31f1ae=a11_0x2b59,_0x5dba77=_0x139c2b();while(!![]){try{const _0x570afd=-parseInt(_0x31f1ae(0x16e))/0x1*(-parseInt(_0x31f1ae(0x175))/0x2)+-parseInt(_0x31f1ae(0x18b))/0x3*(-parseInt(_0x31f1ae(0x17a))/0x4)+-parseInt(_0x31f1ae(0x180))/0x5*(parseInt(_0x31f1ae(0x1b1))/0x6)+-parseInt(_0x31f1ae(0x1a7))/0x7*(parseInt(_0x31f1ae(0x194))/0x8)+-parseInt(_0x31f1ae(0x192))/0x9*(-parseInt(_0x31f1ae(0x16c))/0xa)+parseInt(_0x31f1ae(0x17d))/0xb+-parseInt(_0x31f1ae(0x195))/0xc*(parseInt(_0x31f1ae(0x1aa))/0xd);if(_0x570afd===_0x54cb9f)break;else _0x5dba77['push'](_0x5dba77['shift']());}catch(_0x5e941b){_0x5dba77['push'](_0x5dba77['shift']());}}}(a11_0x29a5,0xd544a));import{existsSync,mkdirSync,readFileSync,unlinkSync,writeFileSync}from'node:fs';import{dirname}from'node:path';import{homedir}from'node:os';import{readScopedConfig,writeScopedConfig}from'../../context.js';function a11_0x2b59(_0x55d2a3,_0x264f4c){_0x55d2a3=_0x55d2a3-0x162;const _0x29a5f2=a11_0x29a5();let _0x2b59f2=_0x29a5f2[_0x55d2a3];return _0x2b59f2;}import{CLI_BIN_NAME}from'../../constant/cli.js';import{PRODUCT_CONFIG}from'../../constant/product.js';function a11_0x29a5(){const _0x5019b6=['Write\x20to\x20global\x20config\x20(default)','7gbodKM','App\x20name\x20shown\x20on\x20authorization\x20page\x20(default:\x20lovrabet)','url-only','once','SIGINT','accessKey','cancelled','483886qFSpeN','Device\x20authorization\x20URL\x20printed.\x20Complete\x20authorization\x20in\x20browser,\x20then\x20re-run.','validation','POST','json','25556bLduqH','toISOString','str','9136611tYOCpI','apiError','createdAt','5bxUYVX','parse','Device\x20authorization\x20timed\x20out\x20after\x2010\x20minutes.\x20Run\x20`lovrabet\x20auth\x20device`\x20to\x20get\x20a\x20new\x20code.','string','Waiting\x20for\x20authorization\x20(timeout:\x2010\x20minutes,\x20Ctrl+C\x20to\x20cancel)...','global-default','source','data','boolean','access_key','Device\x20authorization\x20cancelled.','519AeiZBI','AbortError','stringify','code','stderr','scope','\x20auth\x20status','7585479SCgHtI','Invalid\x20device\x20auth\x20response','9400kjtBtt','72sWtIZm','signal','Print\x20URL\x20to\x20stdout\x20and\x20exit\x20(for\x20WorkBuddy\x20integration)','nonInteractive','Starts\x20the\x20device-code\x20login\x20flow.\x20On\x20success,\x20the\x20AccessKey\x20is\x20saved\x20to\x20the\x20selected\x20Lovrabet\x20config.\x20The\x20confirmation\x20UI\x20does\x20not\x20show\x20the\x20device\x20code\x20or\x20secret.','Device\x20authorization\x20successful.','randomUUID','expired','global','lovrabet-cli','bool','Device\x20code\x20expired.\x20Run\x20`lovrabet\x20auth\x20device`\x20to\x20get\x20a\x20new\x20code.','aborted','floor','Authorize\x20with\x20the\x20device-code\x20flow\x20(complete\x20in\x20the\x20browser;\x20no\x20copy-paste\x20required)','AccessKey\x20saved\x20to\x20','homeDirName','project','2135GqBvGE','application/json','test','4334876IRtIbt','Open\x20this\x20URL\x20in\x20your\x20browser\x20to\x20authorize:','Verify:\x20','networkError','status','write','\x0dWaiting\x20for\x20authorization...\x20','7438182ynbLwX','object','Already\x20authorized.\x20Use\x20`lovrabet\x20auth\x20status`\x20to\x20verify.','utf8','success','Device\x20auth\x20API\x20unreachable\x20after\x20multiple\x20retries.','removeListener','auth','now','\x20auth\x20device','Device\x20auth\x20API\x20error\x20(','&source=','The\x20device\x20code\x20is\x20valid\x20for\x2010\x20minutes.','getTime','),\x20retrying...','abort','Invalid\x20access_key\x20returned\x20by\x20server.','10HRWKPd'];a11_0x29a5=function(){return _0x5019b6;};return a11_0x29a5();}import{getUserDomain}from'../../constant/domain.js';import{CliErrors}from'../../errors.js';import{resolveConfigScope,toScopeFlags}from'../../commands/common/config-policy.js';import{writeCliSideChannelLine}from'../../utils/write-cli-side-channel.js';function resolveAuthScopeFlags(_0x3a432c){const _0x5b306c=a11_0x2b59;return toScopeFlags(resolveConfigScope({'explicitGlobal':_0x3a432c[_0x5b306c(0x19f)](_0x5b306c(0x19d)),'explicitProject':_0x3a432c['bool'](_0x5b306c(0x1a6)),'policy':_0x5b306c(0x185)}));}const ACCESS_KEY_PATTERN=/^ak_[A-Za-z0-9]{16,}$/,DEVICE_CODE_TTL_MS=0x927c0,POLL_INTERVAL_MS=0xbb8,MAX_POLLS=0xc8,MAX_CONSECUTIVE_NETWORK_ERRORS=0x5;export function generateDeviceCode(){const _0x3719d7=a11_0x2b59;return crypto[_0x3719d7(0x19b)]();}export function buildDeviceAuthUrl(_0x22bc2e,_0x486ab6,_0x38919d=a11_0x57f353(0x19e)){const _0x54ee50=a11_0x57f353;return _0x22bc2e+'/device-auth?code='+encodeURIComponent(_0x486ab6)+_0x54ee50(0x166)+encodeURIComponent(_0x38919d);}export function getDeviceCodePath(){const _0x454272=a11_0x57f353;return homedir()+'/'+PRODUCT_CONFIG[_0x454272(0x1a5)]+'/.device-auth';}export function readStoredDeviceCode(){const _0x665413=a11_0x57f353,_0xe397e3=getDeviceCodePath();if(!existsSync(_0xe397e3))return null;try{const _0x3a52df=readFileSync(_0xe397e3,{'encoding':_0x665413(0x1b4)}),_0x70bf6f=JSON[_0x665413(0x181)](_0x3a52df);if(_0x70bf6f&&typeof _0x70bf6f[_0x665413(0x18e)]===_0x665413(0x183)&&typeof _0x70bf6f[_0x665413(0x17f)]===_0x665413(0x183)&&(_0x70bf6f[_0x665413(0x190)]==='global'||_0x70bf6f[_0x665413(0x190)]==='project'))return _0x70bf6f;}catch{}return null;}export function writeStoredDeviceCode(_0x2032f1,_0x160015){const _0xa3e5bb=a11_0x57f353,_0x1a4d40=getDeviceCodePath(),_0x248703=dirname(_0x1a4d40);!existsSync(_0x248703)&&mkdirSync(_0x248703,{'recursive':!![]});const _0xa37216={'code':_0x2032f1,'createdAt':new Date()[_0xa3e5bb(0x17b)](),'scope':_0x160015};writeFileSync(_0x1a4d40,JSON[_0xa3e5bb(0x18d)](_0xa37216),{'encoding':_0xa3e5bb(0x1b4),'mode':0x180});}export function deleteStoredDeviceCode(){const _0x417e62=getDeviceCodePath();try{unlinkSync(_0x417e62);}catch{}}export function isStoredDeviceCodeExpired(_0x47b96b){const _0x5c5e8=a11_0x57f353;return Date[_0x5c5e8(0x163)]()-new Date(_0x47b96b['createdAt'])[_0x5c5e8(0x168)]()>DEVICE_CODE_TTL_MS;}export async function fetchDeviceToken(_0x32b7f4,_0x547242){const _0x48cbd2=a11_0x57f353,_0x123fb4=_0x32b7f4+'/api/device-auth/token',_0x4b33b0=new AbortController(),_0x1204f3=setTimeout(()=>_0x4b33b0[_0x48cbd2(0x16a)](),0x2710),_0x4eef27=await fetch(_0x123fb4,{'method':_0x48cbd2(0x178),'headers':{'Content-Type':_0x48cbd2(0x1a8)},'body':JSON['stringify']({'code':_0x547242}),'signal':_0x4b33b0[_0x48cbd2(0x196)]});clearTimeout(_0x1204f3);if(!_0x4eef27['ok'])throw CliErrors['networkError']('Device\x20auth\x20API\x20returned\x20HTTP\x20'+_0x4eef27[_0x48cbd2(0x1ae)]);const _0x54db15=await _0x4eef27[_0x48cbd2(0x179)](),_0x761a7e=_0x54db15[_0x48cbd2(0x187)]&&typeof _0x54db15[_0x48cbd2(0x187)]===_0x48cbd2(0x1b2)?_0x54db15[_0x48cbd2(0x187)]:_0x54db15;if(!_0x761a7e||typeof _0x761a7e['status']!=='string')throw CliErrors[_0x48cbd2(0x17e)](_0x48cbd2(0x193));return{'status':_0x761a7e[_0x48cbd2(0x1ae)],'access_key':typeof _0x761a7e[_0x48cbd2(0x189)]===_0x48cbd2(0x183)?_0x761a7e['access_key']:undefined};}export async function pollDeviceToken(_0x50333b,_0x1d521c,_0x1e59f8){const _0x8c1f84=a11_0x57f353;let _0x2586e7=0x0;for(let _0x485617=0x0;_0x485617<MAX_POLLS;_0x485617++){if(_0x1e59f8[_0x8c1f84(0x1a1)])throw CliErrors[_0x8c1f84(0x174)](_0x8c1f84(0x18a));let _0x55af74;try{_0x55af74=await fetchDeviceToken(_0x50333b,_0x1d521c);}catch(_0x5ee659){if(_0x5ee659 instanceof Error&&_0x5ee659['name']===_0x8c1f84(0x18c))throw CliErrors[_0x8c1f84(0x174)]('Device\x20authorization\x20cancelled.');_0x2586e7++;if(_0x2586e7>=MAX_CONSECUTIVE_NETWORK_ERRORS)throw CliErrors[_0x8c1f84(0x1ad)](_0x8c1f84(0x1b6));writeCliSideChannelLine(_0x8c1f84(0x165)+_0x2586e7+'/'+MAX_CONSECUTIVE_NETWORK_ERRORS+_0x8c1f84(0x169)),await sleep(POLL_INTERVAL_MS);continue;}_0x2586e7=0x0;if(_0x55af74[_0x8c1f84(0x1ae)]===_0x8c1f84(0x1b5)){if(!_0x55af74[_0x8c1f84(0x189)])throw CliErrors[_0x8c1f84(0x17e)](_0x8c1f84(0x16b));return _0x55af74[_0x8c1f84(0x189)];}if(_0x55af74['status']===_0x8c1f84(0x19c)){deleteStoredDeviceCode();throw CliErrors[_0x8c1f84(0x177)](_0x8c1f84(0x1a0));}const _0x3faa87=(_0x485617+0x1)*POLL_INTERVAL_MS,_0x41681b=DEVICE_CODE_TTL_MS-_0x3faa87,_0x54e939=Math[_0x8c1f84(0x1a2)](_0x41681b/0xea60),_0x45cd84=Math[_0x8c1f84(0x1a2)](_0x41681b%0xea60/0x3e8);process[_0x8c1f84(0x18f)][_0x8c1f84(0x1af)](_0x8c1f84(0x1b0)+_0x54e939+':'+String(_0x45cd84)['padStart'](0x2,'0')+'\x20remaining'),await sleep(POLL_INTERVAL_MS);}deleteStoredDeviceCode();throw CliErrors[_0x8c1f84(0x177)](_0x8c1f84(0x182));}function sleep(_0x565f71){return new Promise(_0x159849=>setTimeout(_0x159849,_0x565f71));}export const authDeviceDefinition={'service':a11_0x57f353(0x162),'command':'device','description':a11_0x57f353(0x1a3),'risk':a11_0x57f353(0x1af),'confirmationDescription':a11_0x57f353(0x199),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[{'name':a11_0x57f353(0x19d),'type':a11_0x57f353(0x188),'description':a11_0x57f353(0x16d),'default':!![]},{'name':'project','type':a11_0x57f353(0x188),'description':'Write\x20to\x20project\x20config','default':![]},{'name':a11_0x57f353(0x186),'type':'string','description':a11_0x57f353(0x16f),'default':a11_0x57f353(0x19e)},{'name':a11_0x57f353(0x170),'type':a11_0x57f353(0x188),'description':a11_0x57f353(0x197),'default':![]}],async 'execute'(_0x503fb8){const _0x44fae3=a11_0x57f353,_0x11a546=resolveAuthScopeFlags(_0x503fb8),_0x1e1183=_0x11a546['global']?_0x44fae3(0x19d):_0x44fae3(0x1a6),_0x23ccad=readScopedConfig(_0x11a546);if(_0x23ccad[_0x44fae3(0x173)])return{'ok':!![],'message':_0x44fae3(0x1b3)};const _0x47fa33=(_0x503fb8[_0x44fae3(0x17c)](_0x44fae3(0x186))||_0x44fae3(0x19e))['trim'](),_0x2c0410=getUserDomain(),_0x42b273=readStoredDeviceCode(),_0x341060=_0x42b273&&!isStoredDeviceCodeExpired(_0x42b273)?_0x42b273[_0x44fae3(0x18e)]:((()=>{const _0x4a522e=generateDeviceCode();return writeStoredDeviceCode(_0x4a522e,_0x1e1183),_0x4a522e;})()),_0x1103c0=buildDeviceAuthUrl(_0x2c0410,_0x341060,_0x47fa33);if(_0x503fb8['bool']('url-only'))return console['log'](_0x1103c0),{'ok':!![]};writeCliSideChannelLine(_0x44fae3(0x1ab)),writeCliSideChannelLine(''),writeCliSideChannelLine(_0x1103c0),writeCliSideChannelLine(''),writeCliSideChannelLine(_0x44fae3(0x167));if(_0x503fb8[_0x44fae3(0x198)])return writeCliSideChannelLine('After\x20authorizing,\x20re-run:\x20'+CLI_BIN_NAME+_0x44fae3(0x164)),{'ok':!![],'message':_0x44fae3(0x176)};writeCliSideChannelLine(_0x44fae3(0x184));const _0x42d142=new AbortController(),_0x3d068f=()=>{const _0x3e5eed=_0x44fae3;_0x42d142[_0x3e5eed(0x16a)](),process[_0x3e5eed(0x1b7)](_0x3e5eed(0x172),_0x3d068f);};process[_0x44fae3(0x171)](_0x44fae3(0x172),_0x3d068f);let _0xfe29b7;try{_0xfe29b7=await pollDeviceToken(_0x2c0410,_0x341060,_0x42d142['signal']);}finally{process[_0x44fae3(0x1b7)](_0x44fae3(0x172),_0x3d068f);}if(!ACCESS_KEY_PATTERN[_0x44fae3(0x1a9)](_0xfe29b7))throw CliErrors[_0x44fae3(0x17e)](_0x44fae3(0x16b));const _0x129457=readScopedConfig(_0x11a546);return _0x129457[_0x44fae3(0x173)]=_0xfe29b7,writeScopedConfig(_0x129457,_0x11a546),deleteStoredDeviceCode(),process[_0x44fae3(0x18f)][_0x44fae3(0x1af)]('\x0a'),writeCliSideChannelLine(_0x44fae3(0x1a4)+_0x1e1183+'\x20config.'),writeCliSideChannelLine(_0x44fae3(0x1ac)+CLI_BIN_NAME+_0x44fae3(0x191)),{'ok':!![],'message':_0x44fae3(0x19a)};}};
|