@lovrabet/rabetbase-cli 2.0.2-beta.9 → 2.0.4-beta.4
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/README.md +4 -0
- package/lib/api/api-doc.js +1 -1
- package/lib/api/fetch-model-list.js +1 -1
- package/lib/api/generate-api-file.js +1 -1
- package/lib/auth/auth-server-ui.js +1 -1
- package/lib/auth/auth-server.js +1 -1
- package/lib/auth/constant.js +1 -1
- package/lib/auth/get-cookie.js +1 -1
- package/lib/auth/get-session-user.js +1 -1
- package/lib/auth/is-session-valid.js +1 -1
- package/lib/auth/logout.js +1 -1
- package/lib/cli-flags.js +1 -1
- package/lib/cli.js +1 -1
- package/lib/commands/api/doc.js +1 -1
- package/lib/commands/api/index.js +1 -1
- package/lib/commands/api/list.js +1 -1
- package/lib/commands/api/pull.js +1 -1
- package/lib/commands/app/add.js +1 -0
- package/lib/commands/app/index.js +1 -0
- package/lib/commands/app/list.js +1 -0
- package/lib/commands/app/remote.js +1 -0
- package/lib/commands/app/remove.js +1 -0
- package/lib/commands/app/shared.js +1 -0
- package/lib/commands/app/use.js +1 -0
- package/lib/commands/auth.js +1 -1
- package/lib/commands/bff/delete.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/bff/list.js +1 -1
- package/lib/commands/bff/new.js +1 -1
- package/lib/commands/bff/pull.js +1 -1
- package/lib/commands/bff/push.js +1 -1
- package/lib/commands/bff/status.js +1 -1
- package/lib/commands/build.js +1 -1
- package/lib/commands/cli-update.js +1 -1
- package/lib/commands/codegen/index.js +1 -1
- package/lib/commands/codegen/sdk.js +1 -1
- package/lib/commands/codegen/sql.js +1 -1
- package/lib/commands/common/app-selector.js +1 -0
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/validate.js +1 -0
- package/lib/commands/config/get.js +1 -0
- package/lib/commands/config/index.js +1 -0
- package/lib/commands/config/list.js +1 -0
- package/lib/commands/config/set.js +1 -0
- package/lib/commands/config/shared.js +1 -0
- package/lib/commands/create.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/links.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/operations.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/init.js +1 -1
- package/lib/commands/logout.js +1 -1
- package/lib/commands/logs.js +1 -1
- package/lib/commands/menu/index.js +1 -1
- package/lib/commands/menu/shared/compare-table.js +1 -1
- package/lib/commands/menu/shared/index.js +1 -1
- package/lib/commands/menu/shared/inquirer.js +1 -1
- package/lib/commands/menu/shared/local-pages.js +1 -1
- package/lib/commands/menu/shared/logic.js +1 -1
- package/lib/commands/menu/shared/service.js +1 -1
- package/lib/commands/menu/shared/sync-core.js +1 -1
- package/lib/commands/menu/shared/update-core.js +1 -1
- package/lib/commands/menu/shared/valid-url.js +1 -1
- package/lib/commands/menu/sync.js +1 -1
- package/lib/commands/menu/update.js +1 -1
- package/lib/commands/preview.js +1 -1
- package/lib/commands/project-upgrade.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/run.js +1 -1
- package/lib/commands/skill.js +1 -1
- package/lib/commands/smart-init.js +1 -0
- 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/sql/list.js +1 -1
- package/lib/commands/sql/save.js +1 -1
- package/lib/commands/sql/validate.js +1 -1
- package/lib/commands/start.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/alias-resolver.js +1 -1
- package/lib/core/api-client.js +1 -1
- package/lib/core/bff/config.js +1 -1
- package/lib/core/bff/file-system.js +1 -1
- package/lib/core/bff/hash.js +1 -1
- package/lib/core/bff/lock.js +1 -1
- package/lib/core/bff/utils.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/sql-validator.js +1 -1
- package/lib/create-app/enhanced-guided-create.js +1 -1
- package/lib/create-app/format-elapsed.js +1 -1
- package/lib/create-app/main.js +1 -1
- package/lib/create-app/non-interactive.js +1 -1
- package/lib/create-app/use-copy-project-template.js +1 -1
- package/lib/create-app/use-format-code.js +1 -1
- package/lib/create-app/use-install-dependencies.js +1 -1
- package/lib/errors.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/response.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/init/main.js +1 -1
- package/lib/skills/main.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/telemetry/cli-help-trace.js +1 -1
- package/lib/telemetry/ensure-cli-otel-config.js +1 -0
- package/lib/telemetry/register-otel-exit-shutdown.js +1 -1
- package/lib/telemetry/send-cli-trace-log.js +1 -0
- package/lib/utils/ai_config.js +1 -1
- package/lib/utils/cdn-config.js +1 -1
- package/lib/utils/check-sdk-version.js +1 -1
- package/lib/utils/cli-version-check.js +1 -1
- package/lib/utils/config.js +1 -1
- package/lib/utils/copy-directory.js +1 -1
- package/lib/utils/file-utils.js +1 -1
- package/lib/utils/guides-cdn.js +1 -1
- package/lib/utils/http-client.js +1 -1
- package/lib/utils/is-non-interactive.js +1 -0
- package/lib/utils/logger.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/rules-cdn.js +1 -1
- package/lib/utils/sleep.js +1 -1
- package/lib/utils/template-replacer.js +1 -1
- package/lib/utils/version.js +1 -0
- package/lib/utils/with-active-cookie.js +1 -0
- package/package.json +7 -11
- package/lib/commands/app.js +0 -1
- package/lib/commands/config.js +0 -1
- package/lib/config/config-help.js +0 -1
- package/lib/config/main.js +0 -1
- package/lib/create-app/task-finished.js +0 -1
- package/lib/create-app/task-loading.js +0 -1
- package/lib/create-app/task-running.js +0 -1
- package/lib/create-app/task-time.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function a19_0x12a5(_0x24ef4b,_0x527f49){_0x24ef4b=_0x24ef4b-0x7f;const _0x2ac702=a19_0x2ac7();let _0x12a5e8=_0x2ac702[_0x24ef4b];return _0x12a5e8;}const a19_0x575d3a=a19_0x12a5;(function(_0x171106,_0x2b7733){const _0xca9a=a19_0x12a5,_0x45e862=_0x171106();while(!![]){try{const _0x37dc45=parseInt(_0xca9a(0x8a))/0x1+parseInt(_0xca9a(0x84))/0x2+parseInt(_0xca9a(0x87))/0x3+parseInt(_0xca9a(0x80))/0x4*(parseInt(_0xca9a(0x85))/0x5)+-parseInt(_0xca9a(0x86))/0x6+-parseInt(_0xca9a(0x8b))/0x7*(-parseInt(_0xca9a(0x88))/0x8)+-parseInt(_0xca9a(0x81))/0x9;if(_0x37dc45===_0x2b7733)break;else _0x45e862['push'](_0x45e862['shift']());}catch(_0x3e277a){_0x45e862['push'](_0x45e862['shift']());}}}(a19_0x2ac7,0xd3e87));import{listRemoteApps}from'../../core/api-client.js';async function execute(_0x1aaccf){const _0x24a2bd=a19_0x12a5,{setActiveCookie:_0x21ea34}=await import(_0x24a2bd(0x89));_0x21ea34(_0x1aaccf['cookie']);const _0x3e45b4=await listRemoteApps();return{'ok':!![],'data':_0x3e45b4};}export const appRemoteDefinition={'service':a19_0x575d3a(0x82),'command':'remote','description':a19_0x575d3a(0x7f),'risk':a19_0x575d3a(0x83),'requiresAuth':!![],'requiresAppCode':![],'flags':[],'execute':execute};function a19_0x2ac7(){const _0x957492=['app','read','2376842EdIoOS','122065AMarcH','1708818GWqSZw','4666116YGrtsi','215608hOxzZq','../../core/api-client.js','1459602bshtsS','77iThnHU','List\x20apps\x20available\x20on\x20the\x20platform','184weUkdi','40230684OACDDk'];a19_0x2ac7=function(){return _0x957492;};return a19_0x2ac7();}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
const a20_0x3c33ee=a20_0xf64f;function a20_0xf64f(_0x2d41a2,_0x2b6c56){_0x2d41a2=_0x2d41a2-0x131;const _0x40866e=a20_0x4086();let _0xf64fd1=_0x40866e[_0x2d41a2];return _0xf64fd1;}(function(_0xc64a75,_0x29cbb9){const _0x42b588=a20_0xf64f,_0x4172db=_0xc64a75();while(!![]){try{const _0x118815=parseInt(_0x42b588(0x138))/0x1+-parseInt(_0x42b588(0x13c))/0x2+-parseInt(_0x42b588(0x131))/0x3*(-parseInt(_0x42b588(0x13f))/0x4)+parseInt(_0x42b588(0x14a))/0x5+parseInt(_0x42b588(0x137))/0x6*(parseInt(_0x42b588(0x146))/0x7)+parseInt(_0x42b588(0x144))/0x8*(parseInt(_0x42b588(0x145))/0x9)+-parseInt(_0x42b588(0x13d))/0xa*(parseInt(_0x42b588(0x13a))/0xb);if(_0x118815===_0x29cbb9)break;else _0x4172db['push'](_0x4172db['shift']());}catch(_0x3e70a1){_0x4172db['push'](_0x4172db['shift']());}}}(a20_0x4086,0x5adff));import{CliErrors}from'../../errors.js';import{readConfig,writeConfig}from'./shared.js';function a20_0x4086(){const _0xa1f3d5=['write','4PnbmQF','defaultApp','length','app','apps','1928MQQFgV','22761oeRIBi','3175851PHXaMN','remove','string','Removed\x20app\x20\x22','1980600zsoydU','Missing\x20app\x20name.','App\x20name\x20to\x20remove','keys','1154757jhydIW','App\x20\x22','Use\x20global\x20config\x20scope','global','\x22\x20not\x20found.','Remove\x20an\x20app\x20from\x20config','6nlZpif','118877jBTkoL','name','11wlkqzX','Usage:\x20rabetbase\x20app\x20remove\x20--name\x20<name>','43464ryMRzl','15691430cmkevc'];a20_0x4086=function(){return _0xa1f3d5;};return a20_0x4086();}async function execute(_0xacc727){const _0x142583=a20_0xf64f,_0x3ce46a=_0xacc727['str'](_0x142583(0x139));if(!_0x3ce46a)throw CliErrors['validation'](_0x142583(0x14b),_0x142583(0x13b));const _0x26d6ff={'global':_0xacc727['bool']('global')},_0x2ab3fc=readConfig(_0x26d6ff),_0x2e9b67=_0x2ab3fc[_0x142583(0x143)];if(!_0x2e9b67||!_0x2e9b67[_0x3ce46a])throw CliErrors['validation'](_0x142583(0x132)+_0x3ce46a+_0x142583(0x135));delete _0x2e9b67[_0x3ce46a];let _0x423e7d='';if(_0x2ab3fc[_0x142583(0x140)]===_0x3ce46a){const _0x2dcdcb=Object[_0x142583(0x14d)](_0x2e9b67);_0x2ab3fc[_0x142583(0x140)]=_0x2dcdcb[_0x142583(0x141)]>0x0?_0x2dcdcb[0x0]:undefined,_0x2ab3fc[_0x142583(0x140)]?_0x423e7d='\x20Default\x20app\x20changed\x20to\x20\x22'+_0x2ab3fc[_0x142583(0x140)]+'\x22.':delete _0x2ab3fc[_0x142583(0x140)];}return Object[_0x142583(0x14d)](_0x2e9b67)[_0x142583(0x141)]===0x0&&(delete _0x2ab3fc[_0x142583(0x143)],delete _0x2ab3fc[_0x142583(0x140)]),writeConfig(_0x2ab3fc,_0x26d6ff),{'ok':!![],'message':_0x142583(0x149)+_0x3ce46a+'\x22.'+_0x423e7d};}export const appRemoveDefinition={'service':a20_0x3c33ee(0x142),'command':a20_0x3c33ee(0x147),'description':a20_0x3c33ee(0x136),'risk':a20_0x3c33ee(0x13e),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a20_0x3c33ee(0x139),'type':a20_0x3c33ee(0x148),'description':a20_0x3c33ee(0x14c),'required':!![]},{'name':a20_0x3c33ee(0x134),'type':'boolean','description':a20_0x3c33ee(0x133),'default':![]}],'execute':execute};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(_0x80a713,_0x1555fa){const _0x2cd1de=a21_0x58ac,_0x5a526e=_0x80a713();while(!![]){try{const _0x43c2b3=parseInt(_0x2cd1de(0xf7))/0x1*(parseInt(_0x2cd1de(0xe9))/0x2)+-parseInt(_0x2cd1de(0xf3))/0x3*(parseInt(_0x2cd1de(0xf6))/0x4)+-parseInt(_0x2cd1de(0xe8))/0x5*(parseInt(_0x2cd1de(0xf9))/0x6)+parseInt(_0x2cd1de(0xe5))/0x7*(-parseInt(_0x2cd1de(0xef))/0x8)+-parseInt(_0x2cd1de(0xfe))/0x9+parseInt(_0x2cd1de(0xf4))/0xa*(-parseInt(_0x2cd1de(0xf5))/0xb)+parseInt(_0x2cd1de(0xec))/0xc;if(_0x43c2b3===_0x1555fa)break;else _0x5a526e['push'](_0x5a526e['shift']());}catch(_0x23a76b){_0x5a526e['push'](_0x5a526e['shift']());}}}(a21_0x4309,0xdc9a6));import{resolveWriteConfigPath,readConfigFile,writeConfigFile}from'../../context.js';function a21_0x58ac(_0x24c732,_0x27a9c9){_0x24c732=_0x24c732-0xe5;const _0x4309cf=a21_0x4309();let _0x58ac63=_0x4309cf[_0x24c732];return _0x58ac63;}export function getConfigPath(_0x3c9440={}){const _0x3f42b6=a21_0x58ac,_0x308bae=_0x3c9440[_0x3f42b6(0xee)]?_0x3f42b6(0xee):'project';return resolveWriteConfigPath(_0x308bae);}export function readConfig(_0x2b06a8={}){return readConfigFile(getConfigPath(_0x2b06a8));}export function writeConfig(_0x1a391f,_0xfb318c={}){writeConfigFile(getConfigPath(_0xfb318c),_0x1a391f);}export function scopeLabel(_0x5cdbf4){const _0x387635=a21_0x58ac;return _0x5cdbf4[_0x387635(0xee)]?'\x20(global)':'';}function a21_0x4309(){const _0x105197=['204968XXlkjQ','\x22\x20to\x20multi-app\x20config\x20(set\x20as\x20default).','apps','appcode','3zkqtKH','150nzHJuh','169411KQFPBP','2158576ypwCez','4142PADIfe','app','6ZYacnM','apiDir','defaultApp','accessKey','format','15424893BRslCH','cookie','119LBkJIb','env','locale','8551010UAcntK','338dyvzBp','riskLevel','Migrated\x20existing\x20app\x20\x22','58006644FHDUoM','log','global'];a21_0x4309=function(){return _0x105197;};return a21_0x4309();}export function migrateLegacySingleApp(_0x512f4a,_0x258e71){const _0x38047e=a21_0x58ac,_0x130926=_0x512f4a[_0x38047e(0xf2)]||_0x512f4a[_0x38047e(0xf8)];if(!_0x130926)return;const _0x5e2e4e=String(_0x130926);if(_0x5e2e4e===_0x258e71)return;const _0x4245bf=[_0x38047e(0xe6),_0x38047e(0xfa),_0x38047e(0xff),_0x38047e(0xfc),_0x38047e(0xfd),'pageSize',_0x38047e(0xea),_0x38047e(0xe7)],_0x298872={'appcode':_0x130926};for(const _0x1198c4 of _0x4245bf){if(_0x512f4a[_0x1198c4]!=null)_0x298872[_0x1198c4]=_0x512f4a[_0x1198c4];}_0x512f4a[_0x38047e(0xf1)][_0x5e2e4e]=_0x298872,_0x512f4a[_0x38047e(0xfb)]=_0x5e2e4e,delete _0x512f4a[_0x38047e(0xf2)],delete _0x512f4a[_0x38047e(0xf8)],console[_0x38047e(0xed)](_0x38047e(0xeb)+_0x5e2e4e+_0x38047e(0xf0));}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
function a22_0x1993(_0x77576,_0x2e1050){_0x77576=_0x77576-0x126;const _0x5478d4=a22_0x5478();let _0x1993e9=_0x5478d4[_0x77576];return _0x1993e9;}const a22_0x4a9ec3=a22_0x1993;(function(_0x5a9b17,_0x48eec0){const _0x4cb97a=a22_0x1993,_0x5adc16=_0x5a9b17();while(!![]){try{const _0xae4bc1=-parseInt(_0x4cb97a(0x13c))/0x1*(parseInt(_0x4cb97a(0x132))/0x2)+-parseInt(_0x4cb97a(0x12d))/0x3+-parseInt(_0x4cb97a(0x12b))/0x4+parseInt(_0x4cb97a(0x12f))/0x5*(-parseInt(_0x4cb97a(0x131))/0x6)+-parseInt(_0x4cb97a(0x136))/0x7+parseInt(_0x4cb97a(0x12c))/0x8+parseInt(_0x4cb97a(0x128))/0x9;if(_0xae4bc1===_0x48eec0)break;else _0x5adc16['push'](_0x5adc16['shift']());}catch(_0x558db0){_0x5adc16['push'](_0x5adc16['shift']());}}}(a22_0x5478,0xae1f5));function a22_0x5478(){const _0x5d71d0=['15972615eeOmhx','Use\x20global\x20config\x20scope','Default\x20app\x20set\x20to\x20\x22','10952psJoYy','8387584MDOGnQ','2804817oIgdHf','apps','5HbDbDE','string','5297514FxfVvx','2qXvJuQ','appcode','Usage:\x20rabetbase\x20app\x20use\x20--name\x20<name>','app','67725ukzyct','App\x20name\x20to\x20activate','global','keys','write','\x20--appcode\x20<code>`\x20first.','279707LBckOD','defaultApp','name','validation','App\x20\x22','bool'];a22_0x5478=function(){return _0x5d71d0;};return a22_0x5478();}import{CliErrors}from'../../errors.js';import{readConfig,writeConfig,scopeLabel}from'./shared.js';async function execute(_0x54c07c){const _0x42a294=a22_0x1993,_0x173475=_0x54c07c['str']('name');if(!_0x173475)throw CliErrors[_0x42a294(0x13f)]('Missing\x20app\x20name.',_0x42a294(0x134));const _0x27cbac={'global':_0x54c07c[_0x42a294(0x127)](_0x42a294(0x138))},_0x307e72=readConfig(_0x27cbac),_0x2bdb7c=_0x307e72[_0x42a294(0x12e)]??{};if(!_0x2bdb7c[_0x173475]){const _0x237377=Object[_0x42a294(0x139)](_0x2bdb7c),_0x517a35=_0x237377['length']===0x0?'Use\x20`rabetbase\x20app\x20add\x20--name\x20'+_0x173475+_0x42a294(0x13b):'Available:\x20'+_0x237377['join'](',\x20');throw CliErrors[_0x42a294(0x13f)](_0x42a294(0x126)+_0x173475+'\x22\x20not\x20found.',_0x517a35);}return _0x307e72[_0x42a294(0x13d)]=_0x173475,writeConfig(_0x307e72,_0x27cbac),{'ok':!![],'message':_0x42a294(0x12a)+_0x173475+'\x22\x20(appcode:\x20'+_0x2bdb7c[_0x173475][_0x42a294(0x133)]+')'+scopeLabel(_0x27cbac)};}export const appUseDefinition={'service':a22_0x4a9ec3(0x135),'command':'use','description':'Switch\x20the\x20default\x20app','risk':a22_0x4a9ec3(0x13a),'requiresAuth':![],'requiresAppCode':![],'flags':[{'name':a22_0x4a9ec3(0x13e),'type':a22_0x4a9ec3(0x130),'description':a22_0x4a9ec3(0x137),'required':!![]},{'name':a22_0x4a9ec3(0x138),'type':'boolean','description':a22_0x4a9ec3(0x129),'default':![]}],'execute':execute};
|
package/lib/commands/auth.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a23_0x578b7b=a23_0x5d7e;function a23_0x4e36(){const _0x458401=['4zMlpJT','5242728etcWZr','83fcEDZy','2407800tbAFZN','439191ZGJgjt','13494OKnmyn','3036042rKNiPy','Authenticate\x20with\x20rabetbase','1000068DEnUVw','2731075lmCBbk','7YhswVZ'];a23_0x4e36=function(){return _0x458401;};return a23_0x4e36();}function a23_0x5d7e(_0xa30ef2,_0x14149e){_0xa30ef2=_0xa30ef2-0xc6;const _0x4e36d9=a23_0x4e36();let _0x5d7eb3=_0x4e36d9[_0xa30ef2];return _0x5d7eb3;}(function(_0x14a182,_0x58e119){const _0x329f6c=a23_0x5d7e,_0x344459=_0x14a182();while(!![]){try{const _0x2c38e3=parseInt(_0x329f6c(0xc8))/0x1*(parseInt(_0x329f6c(0xcb))/0x2)+parseInt(_0x329f6c(0xce))/0x3*(-parseInt(_0x329f6c(0xc6))/0x4)+parseInt(_0x329f6c(0xcf))/0x5+-parseInt(_0x329f6c(0xcc))/0x6+-parseInt(_0x329f6c(0xd0))/0x7*(-parseInt(_0x329f6c(0xc7))/0x8)+-parseInt(_0x329f6c(0xca))/0x9+-parseInt(_0x329f6c(0xc9))/0xa;if(_0x2c38e3===_0x58e119)break;else _0x344459['push'](_0x344459['shift']());}catch(_0x4f06a5){_0x344459['push'](_0x344459['shift']());}}}(a23_0x4e36,0x9a727));import{runAuthServer}from'../auth/auth-server-ui.js';export const authCommand={'name':'auth','description':a23_0x578b7b(0xcd),async 'run'(_0x18c286,_0x3920d4,_0xf03e95){await runAuthServer();}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a24_0x322b(_0x2da71f,_0x1c1ceb){_0x2da71f=_0x2da71f-0x1bd;const _0x334004=a24_0x3340();let _0x322b13=_0x334004[_0x2da71f];return _0x322b13;}const a24_0x1211b9=a24_0x322b;(function(_0x529716,_0x2d76b5){const _0x2997ea=a24_0x322b,_0x29fe11=_0x529716();while(!![]){try{const _0x4b8114=parseInt(_0x2997ea(0x1e0))/0x1+-parseInt(_0x2997ea(0x1d4))/0x2+-parseInt(_0x2997ea(0x1bd))/0x3+parseInt(_0x2997ea(0x1d1))/0x4+-parseInt(_0x2997ea(0x1de))/0x5*(parseInt(_0x2997ea(0x1d3))/0x6)+parseInt(_0x2997ea(0x1cc))/0x7+parseInt(_0x2997ea(0x1df))/0x8;if(_0x4b8114===_0x2d76b5)break;else _0x29fe11['push'](_0x29fe11['shift']());}catch(_0x30f507){_0x29fe11['push'](_0x29fe11['shift']());}}}(a24_0x3340,0x63032));import{mkdir,readdir,rename,rmdir}from'node:fs/promises';import{dirname,join,relative,resolve,sep}from'node:path';import{deleteBffScript}from'../../core/api-client.js';function a24_0x3340(){const _0x1af1d8=['target','trashedTo','Delete\x20a\x20BFF\x20script\x20from\x20remote\x20and\x20local','POST','lockFilePath','2025663tEgWJK','lastSync','Deleted\x20','No\x20lock\x20entry\x20found\x20for\x20\x22','Multiple\x20functions\x20match\x20\x22','Would\x20delete\x20','validation','toISOString','keys','str','BFF\x20lock\x20file\x20not\x20found.','<timestamp>','trashDir','high-risk-write','appCode','4826213YnZVPi','join','\x20\x20-\x20','includes','projectRoot','1867116zDTunh','functions','24iYksza','854450aQzgGJ','length','delete','remoteId','/api/management/library/scripts/delete','string','\x22.\x20Use\x20the\x20full\x20lock\x20key:\x0a','\x20(local\x20file\x20moved\x20to\x20trash)','scriptsRoot','\x20from\x20remote\x20and\x20move\x20local\x20file\x20to\x20trash','941145agkeQP','8613608pUllpJ','27977RrZwqE','scriptsRootDir'];a24_0x3340=function(){return _0x1af1d8;};return a24_0x3340();}import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists,resolveLocalFilePathFromLockKey}from'../../core/bff/file-system.js';import{ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{CliErrors}from'../../errors.js';export const bffDelete={'service':'bff','command':a24_0x1211b9(0x1d6),'description':a24_0x1211b9(0x1e4),'risk':a24_0x1211b9(0x1ca),'flags':[{'name':a24_0x1211b9(0x1e2),'type':a24_0x1211b9(0x1d9),'required':!![],'description':'Lock\x20key\x20(e.g.\x20ENDPOINT/createOrder)\x20or\x20short\x20function\x20name'}],async 'validate'(_0x35a5d4){const _0x254448=a24_0x1211b9,_0x1dca2f=loadBffProjectConfig(_0x35a5d4[_0x254448(0x1cb)]),_0x2ee12d=await readBffLockFile(_0x1dca2f[_0x254448(0x1e6)]);if(!_0x2ee12d)throw CliErrors['validation']('BFF\x20lock\x20file\x20not\x20found.\x20Run\x20`push`\x20or\x20`pull`\x20first\x20to\x20initialize\x20sync\x20state.');},async 'dryRun'(_0x425cc8){const _0xca0621=a24_0x1211b9,_0x494cfc=loadBffProjectConfig(_0x425cc8[_0xca0621(0x1cb)]),_0x5103a2=await readBffLockFile(_0x494cfc[_0xca0621(0x1e6)]);if(!_0x5103a2)throw CliErrors[_0xca0621(0x1c3)](_0xca0621(0x1c7));const {appLock:_0x26d149}=ensureLockScope(_0x5103a2,_0x425cc8[_0xca0621(0x1cb)],_0x494cfc['scriptsRoot'],'delete'),_0x40b41f=_0x425cc8['str'](_0xca0621(0x1e2)),_0x59cd59=Object[_0xca0621(0x1c5)](_0x26d149[_0xca0621(0x1d2)]),_0x5b81a1=resolveDeleteTarget(_0x40b41f,_0x59cd59),_0x38ad88=_0x26d149['functions'][_0x5b81a1];if(!_0x38ad88)throw CliErrors[_0xca0621(0x1c3)](_0xca0621(0x1c0)+_0x5b81a1+'\x22.');const _0x1f6a06=resolveLocalFilePathFromLockKey(_0x494cfc,_0x5b81a1),_0x226e43=relative(_0x494cfc[_0xca0621(0x1d0)],_0x1f6a06),_0x161beb=join(_0x494cfc[_0xca0621(0x1c9)],_0xca0621(0x1c8),_0x226e43);return{'method':_0xca0621(0x1e5),'url':_0xca0621(0x1d8),'body':{'appCode':_0x425cc8['appCode'],'target':_0x5b81a1,'remoteId':_0x38ad88[_0xca0621(0x1d7)],'localFilePath':_0x1f6a06,'trashedPath':_0x161beb},'description':_0xca0621(0x1c2)+_0x5b81a1+_0xca0621(0x1dd)};},async 'execute'(_0x1d7939){const _0x32a656=a24_0x1211b9,_0x1ca485=loadBffProjectConfig(_0x1d7939[_0x32a656(0x1cb)]),_0x301b87=await readBffLockFile(_0x1ca485[_0x32a656(0x1e6)]);if(!_0x301b87)throw CliErrors['validation']('BFF\x20lock\x20file\x20not\x20found.');const {lockData:_0x26b40a,appLock:_0x3d4481}=ensureLockScope(_0x301b87,_0x1d7939[_0x32a656(0x1cb)],_0x1ca485[_0x32a656(0x1dc)],_0x32a656(0x1d6)),_0x36b38b=_0x1d7939[_0x32a656(0x1c6)](_0x32a656(0x1e2)),_0x336813=Object[_0x32a656(0x1c5)](_0x3d4481['functions']),_0x486e0c=resolveDeleteTarget(_0x36b38b,_0x336813),_0x24161b=_0x3d4481[_0x32a656(0x1d2)][_0x486e0c];if(!_0x24161b)throw CliErrors[_0x32a656(0x1c3)](_0x32a656(0x1c0)+_0x486e0c+'\x22.');await deleteBffScript(_0x24161b[_0x32a656(0x1d7)]),delete _0x3d4481[_0x32a656(0x1d2)][_0x486e0c],_0x3d4481[_0x32a656(0x1be)]=new Date()['toISOString'](),await writeBffLockFile(_0x1ca485[_0x32a656(0x1e6)],_0x26b40a);const _0xf57bc3=resolveLocalFilePathFromLockKey(_0x1ca485,_0x486e0c);let _0x3818df;await fileExists(_0xf57bc3)&&(_0x3818df=await moveToTrash(_0x1ca485[_0x32a656(0x1d0)],_0x1ca485['trashDir'],_0xf57bc3),await cleanupEmptyDirectories(dirname(_0xf57bc3),_0x1ca485[_0x32a656(0x1e1)]));const _0x35dfe6={'deleted':_0x486e0c,'remoteId':_0x24161b[_0x32a656(0x1d7)]};if(_0x3818df)_0x35dfe6[_0x32a656(0x1e3)]=_0x3818df;return{'ok':!![],'data':_0x35dfe6,'message':_0x32a656(0x1bf)+_0x486e0c+(_0x3818df?_0x32a656(0x1db):'')};}};function resolveDeleteTarget(_0x44bb25,_0x331da){const _0x40175d=a24_0x1211b9;if(_0x44bb25[_0x40175d(0x1cf)]('/')){const _0x31a0d3=_0x331da['find'](_0x2ad247=>_0x2ad247===_0x44bb25);if(!_0x31a0d3)throw CliErrors['validation']('Function\x20not\x20found:\x20'+_0x44bb25);return _0x31a0d3;}const _0x65599f=_0x331da['filter'](_0x2cdd1a=>_0x2cdd1a['split']('/')['at'](-0x1)===_0x44bb25);if(_0x65599f[_0x40175d(0x1d5)]===0x0)throw CliErrors['validation']('Function\x20not\x20found:\x20'+_0x44bb25);if(_0x65599f[_0x40175d(0x1d5)]>0x1)throw CliErrors[_0x40175d(0x1c3)](_0x40175d(0x1c1)+_0x44bb25+_0x40175d(0x1da)+_0x65599f['map'](_0x2c5669=>_0x40175d(0x1ce)+_0x2c5669)[_0x40175d(0x1cd)]('\x0a'));return _0x65599f[0x0];}async function moveToTrash(_0x50d135,_0x154245,_0x5ae8c3){const _0x1137e8=a24_0x1211b9,_0x36cf02=new Date()[_0x1137e8(0x1c4)]()['replace'](/[:.]/g,'-'),_0x4ed418=relative(_0x50d135,_0x5ae8c3),_0x5501d5=join(_0x154245,_0x36cf02,_0x4ed418);return await mkdir(dirname(_0x5501d5),{'recursive':!![]}),await rename(_0x5ae8c3,_0x5501d5),_0x5501d5;}async function cleanupEmptyDirectories(_0x3a9dd8,_0x356d21){const _0x404e1d=a24_0x1211b9;let _0x2c75da=resolve(_0x3a9dd8);const _0x1261e0=resolve(_0x356d21);while(_0x2c75da['startsWith'](''+_0x1261e0+sep)||_0x2c75da===_0x1261e0){if(_0x2c75da===_0x1261e0)return;try{const _0x462e83=await readdir(_0x2c75da);if(_0x462e83[_0x404e1d(0x1d5)]>0x0)return;await rmdir(_0x2c75da);}catch{return;}_0x2c75da=dirname(_0x2c75da);}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a25_0x2993(_0x5db510,_0x5e7652){_0x5db510=_0x5db510-0x11d;const _0x39d6e5=a25_0x39d6();let _0x2993be=_0x39d6e5[_0x5db510];return _0x2993be;}const a25_0x32017b=a25_0x2993;(function(_0x397322,_0x4e1140){const _0x1e4fe1=a25_0x2993,_0x4ec348=_0x397322();while(!![]){try{const _0x3ea302=parseInt(_0x1e4fe1(0x12e))/0x1+parseInt(_0x1e4fe1(0x125))/0x2+parseInt(_0x1e4fe1(0x11f))/0x3+-parseInt(_0x1e4fe1(0x130))/0x4+parseInt(_0x1e4fe1(0x121))/0x5*(-parseInt(_0x1e4fe1(0x11e))/0x6)+-parseInt(_0x1e4fe1(0x127))/0x7+parseInt(_0x1e4fe1(0x12d))/0x8;if(_0x3ea302===_0x4e1140)break;else _0x4ec348['push'](_0x4ec348['shift']());}catch(_0x262197){_0x4ec348['push'](_0x4ec348['shift']());}}}(a25_0x39d6,0xc8143));import{getBffScriptInfo}from'../../core/api-client.js';export const bffDetail={'service':'bff','command':a25_0x32017b(0x12f),'description':a25_0x32017b(0x12c),'risk':a25_0x32017b(0x128),'flags':[{'name':'id','type':a25_0x32017b(0x12b),'required':!![],'description':a25_0x32017b(0x124)},{'name':a25_0x32017b(0x11d),'type':a25_0x32017b(0x126),'description':a25_0x32017b(0x131)}],async 'execute'(_0x470718){const _0x47530e=a25_0x32017b,_0x5908f1=await getBffScriptInfo(_0x470718['num']('id')),_0x3e1804=_0x470718[_0x47530e(0x129)](_0x47530e(0x11d));if(_0x3e1804)return{'ok':!![],'data':_0x5908f1};return{'ok':!![],'data':{'id':_0x5908f1['id'],'appCode':_0x5908f1[_0x47530e(0x123)],'scriptType':_0x5908f1[_0x47530e(0x12a)],'description':_0x5908f1['description']||'(none)','createdTime':_0x5908f1[_0x47530e(0x120)]??'','updatedTime':_0x5908f1['updatedTime']??'','scriptContent':_0x5908f1[_0x47530e(0x122)]??''}};}};function a25_0x39d6(){const _0x24b9a9=['appCode','Script\x20ID','1242198hYRVjB','boolean','1251243bFDTya','read','bool','scriptType','number','Get\x20BFF\x20script\x20details\x20by\x20ID','5950608oZxJYB','642905dugWNd','detail','5179864CkkqQr','Return\x20full\x20raw\x20script\x20object','verbose','89142OBXTWq','4466475lvTPyq','createdTime','405aGwiCD','scriptContent'];a25_0x39d6=function(){return _0x24b9a9;};return a25_0x39d6();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x13da38,_0x585b00){const _0x5e29a1=a26_0x53f4,_0x23d64e=_0x13da38();while(!![]){try{const _0x16bb00=-parseInt(_0x5e29a1(0x1db))/0x1*(-parseInt(_0x5e29a1(0x1da))/0x2)+-parseInt(_0x5e29a1(0x1d7))/0x3*(-parseInt(_0x5e29a1(0x1de))/0x4)+parseInt(_0x5e29a1(0x1d5))/0x5*(-parseInt(_0x5e29a1(0x1d6))/0x6)+-parseInt(_0x5e29a1(0x1d9))/0x7+parseInt(_0x5e29a1(0x1df))/0x8*(parseInt(_0x5e29a1(0x1dd))/0x9)+parseInt(_0x5e29a1(0x1dc))/0xa+-parseInt(_0x5e29a1(0x1d8))/0xb;if(_0x16bb00===_0x585b00)break;else _0x23d64e['push'](_0x23d64e['shift']());}catch(_0xf08581){_0x23d64e['push'](_0x23d64e['shift']());}}}(a26_0x4be2,0x6020f));import{bffList}from'./list.js';import{bffDetail}from'./detail.js';import{bffStatus}from'./status.js';import{bffNew}from'./new.js';function a26_0x4be2(){const _0x452416=['3ARqaxd','1297560RpOtDn','5466643SSINgX','2WtgzdY','295378hqzUQM','2228190dVeLbw','1061514CtRlka','2932836PYWJcM','8XjzgSg','5gvQfnh','460200BhNaky'];a26_0x4be2=function(){return _0x452416;};return a26_0x4be2();}import{bffPush}from'./push.js';import{bffPull}from'./pull.js';function a26_0x53f4(_0x572eb6,_0x19c198){_0x572eb6=_0x572eb6-0x1d5;const _0x4be2e8=a26_0x4be2();let _0x53f4c8=_0x4be2e8[_0x572eb6];return _0x53f4c8;}import{bffDelete}from'./delete.js';export const bffDefinitions=[bffList,bffDetail,bffStatus,bffNew,bffPush,bffPull,bffDelete];
|
package/lib/commands/bff/list.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a27_0xbaffdc=a27_0x52cd;(function(_0x1883f7,_0x2390a9){const _0x54da2b=a27_0x52cd,_0x2b1a9e=_0x1883f7();while(!![]){try{const _0x59ea90=-parseInt(_0x54da2b(0x189))/0x1+-parseInt(_0x54da2b(0x18d))/0x2+parseInt(_0x54da2b(0x17f))/0x3*(-parseInt(_0x54da2b(0x172))/0x4)+-parseInt(_0x54da2b(0x181))/0x5*(parseInt(_0x54da2b(0x180))/0x6)+-parseInt(_0x54da2b(0x18e))/0x7*(parseInt(_0x54da2b(0x187))/0x8)+parseInt(_0x54da2b(0x178))/0x9*(-parseInt(_0x54da2b(0x173))/0xa)+parseInt(_0x54da2b(0x184))/0xb*(parseInt(_0x54da2b(0x17e))/0xc);if(_0x59ea90===_0x2390a9)break;else _0x2b1a9e['push'](_0x2b1a9e['shift']());}catch(_0x2ea94c){_0x2b1a9e['push'](_0x2b1a9e['shift']());}}}(a27_0x1328,0x66d29));function a27_0x52cd(_0x433a7d,_0x1ab10d){_0x433a7d=_0x433a7d-0x172;const _0x1328d3=a27_0x1328();let _0x52cde8=_0x1328d3[_0x433a7d];return _0x52cde8;}import{listBffScripts}from'../../core/api-client.js';export const bffList={'service':a27_0xbaffdc(0x18f),'command':a27_0xbaffdc(0x183),'description':a27_0xbaffdc(0x18c),'risk':a27_0xbaffdc(0x186),'flags':[{'name':a27_0xbaffdc(0x182),'type':a27_0xbaffdc(0x176),'description':a27_0xbaffdc(0x18a),'default':a27_0xbaffdc(0x17a),'enum':['ENDPOINT',a27_0xbaffdc(0x174)]},{'name':a27_0xbaffdc(0x177),'type':a27_0xbaffdc(0x176),'description':a27_0xbaffdc(0x18b)},{'name':'verbose','type':'boolean','description':a27_0xbaffdc(0x17c)}],async 'execute'(_0x3bc191){const _0x56fdcb=a27_0xbaffdc,_0x1e3cc4=await listBffScripts(_0x3bc191['appCode'],_0x3bc191[_0x56fdcb(0x17d)]('type'),{'scriptName':_0x3bc191[_0x56fdcb(0x17d)]('name')||undefined}),_0x543704=_0x3bc191[_0x56fdcb(0x188)](_0x56fdcb(0x179));return{'ok':!![],'data':_0x543704?_0x1e3cc4:_0x1e3cc4[_0x56fdcb(0x185)](_0x2f3bd4=>({'id':_0x2f3bd4['id'],'functionName':_0x2f3bd4['functionName']??'','description':_0x2f3bd4['description']||_0x56fdcb(0x17b),'scriptType':_0x2f3bd4['scriptType']})),'message':_0x1e3cc4[_0x56fdcb(0x175)]===0x0?_0x56fdcb(0x190):undefined};}};function a27_0x1328(){const _0x5f3c12=['read','284432nZWjrb','bool','302387sNWWtf','Script\x20type\x20filter','Filter\x20by\x20script\x20name','List\x20BFF\x20scripts','398714FLTPPF','56jcVvSV','bff','No\x20BFF\x20scripts\x20found.','372MrqPpo','10BGjgDj','COMMON','length','string','name','4580262kAbltf','verbose','ENDPOINT','(unnamed)','Return\x20full\x20script\x20objects','str','6225108kAbozF','10113OGZcwn','6UCHJLl','226390OTXQGQ','type','list','44yTSGgv','map'];a27_0x1328=function(){return _0x5f3c12;};return a27_0x1328();}
|
package/lib/commands/bff/new.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a22_0x4615d1=a22_0x5ea9;(function(_0x4e899d,_0x586ce2){const _0x22046b=a22_0x5ea9,_0x5bea0c=_0x4e899d();while(!![]){try{const _0x4189ec=parseInt(_0x22046b(0x208))/0x1*(parseInt(_0x22046b(0x22a))/0x2)+parseInt(_0x22046b(0x1f0))/0x3+-parseInt(_0x22046b(0x232))/0x4+-parseInt(_0x22046b(0x20c))/0x5+-parseInt(_0x22046b(0x1e8))/0x6+parseInt(_0x22046b(0x1f6))/0x7*(-parseInt(_0x22046b(0x1f7))/0x8)+parseInt(_0x22046b(0x1f5))/0x9*(parseInt(_0x22046b(0x207))/0xa);if(_0x4189ec===_0x586ce2)break;else _0x5bea0c['push'](_0x5bea0c['shift']());}catch(_0x2584a6){_0x5bea0c['push'](_0x5bea0c['shift']());}}}(a22_0x564d,0x2a239));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';function a22_0x564d(){const _0x2988dc=['after','validation','TODO:\x20add\x20script\x20description','functionNode','function-node','type','10XCkBlf','7103ItVyrT','datasetCode','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','includes','202570shxBNt','HOOK','apiDir','datasetcode','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','Select\x20operation\x20type:','Alias\x20\x22','before','alias','map','tableName','\x20api\x20pull`\x20to\x20refresh.','bff','(params,\x20context)\x20{\x0a\x20\x20void\x20context;\x0a\x20\x20return\x20params;\x0a}\x0a','.js','.js\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Input\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Processing\x20result.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','Operation\x20type\x20\x22','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','write','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','\x0a\x20*\x20[触发节点]\x20','Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)','find','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','trim','\x20function:\x20','str','scriptsRootDir','parseInt','58HjdSXF','ENDPOINT','name','Script\x20description','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','Script\x20type','close','Select\x20trigger\x20node:','826248WnmxCf','question','appCode','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','stderr','Available\x20aliases:\x20','HOOK\x20requires\x20alias/operation/node\x20options.','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.','operationType','join','isInteger','nonInteractive','572988bVyABL','\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).','Invalid\x20function\x20name\x20\x22','description','File\x20already\x20exists:\x20','Select\x20dataset:','Dataset\x20not\x20found\x20for\x20code\x20\x22','code','65847LLOUwj','Invalid\x20dataset\x20selection.','--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','entries','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','4810653RcJqLR','576982QsbQdI','24iIFqZF','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','No\x20datasets\x20found\x20for\x20this\x20app.','operation-type','string','Trigger\x20node\x20(HOOK\x20only)','Created\x20','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Request\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Business\x20result\x20(wrapped\x20in\x20response.data).\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','Available:\x20','length'];a22_0x564d=function(){return _0x2988dc;};return a22_0x564d();}import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';function a22_0x5ea9(_0x53a8e1,_0x3d4dde){_0x53a8e1=_0x53a8e1-0x1e2;const _0x564d5e=a22_0x564d();let _0x5ea97e=_0x564d5e[_0x53a8e1];return _0x5ea97e;}import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffNew={'service':a22_0x4615d1(0x218),'command':'new','description':a22_0x4615d1(0x22e),'risk':a22_0x4615d1(0x21e),'flags':[{'name':a22_0x4615d1(0x206),'type':a22_0x4615d1(0x1fb),'required':!![],'enum':['COMMON',a22_0x4615d1(0x22b),a22_0x4615d1(0x20d)],'description':a22_0x4615d1(0x22f)},{'name':a22_0x4615d1(0x22c),'type':a22_0x4615d1(0x1fb),'required':!![],'description':'Function\x20name\x20(valid\x20JS\x20identifier)'},{'name':a22_0x4615d1(0x1eb),'type':a22_0x4615d1(0x1fb),'description':a22_0x4615d1(0x22d)},{'name':'alias','type':a22_0x4615d1(0x1fb),'description':a22_0x4615d1(0x222)},{'name':'datasetcode','type':a22_0x4615d1(0x1fb),'description':a22_0x4615d1(0x220)},{'name':a22_0x4615d1(0x1fa),'type':a22_0x4615d1(0x1fb),'description':'Operation\x20type\x20(HOOK\x20only)'},{'name':a22_0x4615d1(0x205),'type':a22_0x4615d1(0x1fb),'description':a22_0x4615d1(0x1fc),'enum':[a22_0x4615d1(0x213),a22_0x4615d1(0x201)]}],async 'validate'(_0x1d5046){const _0x174385=a22_0x4615d1,_0x2f9b44=_0x1d5046[_0x174385(0x227)](_0x174385(0x22c));if(!isValidBffFunctionName(_0x2f9b44))throw CliErrors[_0x174385(0x202)](_0x174385(0x1ea)+_0x2f9b44+_0x174385(0x1e9));},async 'execute'(_0x9f09dc){const _0x401398=a22_0x4615d1,_0x85b4d0=loadBffProjectConfig(_0x9f09dc[_0x401398(0x234)]),_0x4cd57e=_0x9f09dc[_0x401398(0x227)]('type'),_0x4df151=_0x9f09dc[_0x401398(0x227)]('name'),_0x2a007f=_0x9f09dc[_0x401398(0x227)](_0x401398(0x1eb))||undefined,_0xcfeeaa=_0x4cd57e==='HOOK'?await resolveHookOptions(_0x85b4d0,_0x9f09dc):undefined,_0x385f55=buildFilePath(_0x85b4d0,_0x4cd57e,_0x4df151,_0xcfeeaa);if(await fileExists(_0x385f55))throw CliErrors[_0x401398(0x202)](_0x401398(0x1ec)+_0x385f55);await mkdir(dirname(_0x385f55),{'recursive':!![]});const _0x170871=generateTemplate(_0x4cd57e,_0x4df151,_0x85b4d0,_0x2a007f,_0xcfeeaa);await writeFile(_0x385f55,_0x170871,'utf8');const _0x13bc56={'type':_0x4cd57e,'name':_0x4df151,'path':_0x385f55};if(_0x2a007f)_0x13bc56[_0x401398(0x1eb)]=_0x2a007f;if(_0xcfeeaa){if(_0xcfeeaa[_0x401398(0x214)])_0x13bc56[_0x401398(0x214)]=_0xcfeeaa[_0x401398(0x214)];_0x13bc56['datasetCode']=_0xcfeeaa[_0x401398(0x209)],_0x13bc56[_0x401398(0x1e4)]=_0xcfeeaa[_0x401398(0x1e4)],_0x13bc56[_0x401398(0x204)]=_0xcfeeaa[_0x401398(0x204)];}return{'ok':!![],'data':_0x13bc56,'message':_0x401398(0x1fd)+_0x4cd57e+_0x401398(0x226)+_0x4df151};}};async function resolveHookOptions(_0x524f22,_0xe831e){const _0x48c942=a22_0x4615d1,_0x5398b3=loadAliasMap(_0xe831e[_0x48c942(0x20e)]),_0x408bf7=_0x5398b3[_0x48c942(0x200)]>0x0;let _0x11d53b,_0x24880e,_0x438f78;const _0x3c302c=_0xe831e[_0x48c942(0x227)](_0x48c942(0x214)),_0x5d8b6b=_0xe831e[_0x48c942(0x227)](_0x48c942(0x20f));if(_0x3c302c){const _0x597b1d=resolveAlias(_0xe831e['apiDir'],_0x3c302c);if(!_0x597b1d){const _0x4fe115=_0x408bf7?_0x48c942(0x237)+_0x5398b3['map'](_0x18d583=>_0x18d583[_0x48c942(0x214)])[_0x48c942(0x1e5)](',\x20'):'No\x20api.ts\x20found.\x20Run\x20`'+CLI_BIN_NAME+_0x48c942(0x21d);throw CliErrors[_0x48c942(0x202)](_0x48c942(0x212)+_0x3c302c+'\x22\x20not\x20found.\x20'+_0x4fe115);}_0x11d53b=_0x3c302c,_0x24880e=_0x597b1d;}else{if(_0x5d8b6b){_0x24880e=_0x5d8b6b;const _0x1d9bbe=_0x5398b3[_0x48c942(0x223)](_0x16f1fd=>_0x16f1fd[_0x48c942(0x209)]===_0x5d8b6b);_0x11d53b=_0x1d9bbe?.[_0x48c942(0x214)];}else{if(_0xe831e[_0x48c942(0x1e7)])throw CliErrors['validation']('--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');else{if(_0x408bf7){const _0xd58ebe=_0x5398b3[_0x48c942(0x215)](_0x426229=>_0x426229[_0x48c942(0x214)]+'\x20('+_0x426229[_0x48c942(0x216)]+')'),_0x3f6b07=await promptSelect(_0x48c942(0x1ed),_0xd58ebe),_0x51201e=_0x5398b3[_0x3f6b07];if(!_0x51201e)throw CliErrors[_0x48c942(0x202)]('Invalid\x20dataset\x20selection.');_0x11d53b=_0x51201e[_0x48c942(0x214)],_0x24880e=_0x51201e[_0x48c942(0x209)];}else{const _0x4a4e94=await listDatasets(_0x524f22[_0x48c942(0x234)]);if(_0x4a4e94['length']===0x0)throw CliErrors[_0x48c942(0x202)](_0x48c942(0x1f9));const _0x48df63=_0x4a4e94['map'](_0x2ff9a4=>_0x2ff9a4[_0x48c942(0x22c)]+'\x20('+_0x2ff9a4[_0x48c942(0x1ef)]+')'),_0x21b01d=await promptSelect(_0x48c942(0x1ed),_0x48df63),_0x269105=_0x4a4e94[_0x21b01d];if(!_0x269105)throw CliErrors[_0x48c942(0x202)](_0x48c942(0x1f1));_0x24880e=_0x269105['code'],_0x11d53b=undefined;}}}}const _0x5b6f39=await listDatasets(_0x524f22[_0x48c942(0x234)]),_0x3a1176=_0x5b6f39[_0x48c942(0x223)](_0x4a614a=>_0x4a614a[_0x48c942(0x1ef)]===_0x24880e);if(!_0x3a1176)throw CliErrors[_0x48c942(0x202)](_0x48c942(0x1ee)+_0x24880e+'\x22.\x20'+(_0x11d53b?_0x48c942(0x21f)+CLI_BIN_NAME+_0x48c942(0x217):''));_0x438f78=_0x3a1176['id'];const _0x34328f=_0x11d53b??_0x24880e,_0x4865de=await listBffDatasetOperations(_0x524f22[_0x48c942(0x234)],_0x438f78),_0x2caa9f=_0x4865de?Object['keys'](_0x4865de):[];if(_0x2caa9f[_0x48c942(0x200)]===0x0)throw CliErrors[_0x48c942(0x202)]('No\x20operation\x20types\x20found\x20for\x20dataset\x20'+_0x34328f+'.');let _0x428877;const _0x3ddb80=_0xe831e[_0x48c942(0x227)]('operation-type');if(_0x3ddb80){if(!_0x2caa9f[_0x48c942(0x20b)](_0x3ddb80))throw CliErrors[_0x48c942(0x202)](_0x48c942(0x21c)+_0x3ddb80+'\x22\x20not\x20found\x20for\x20dataset\x20'+_0x34328f+'.\x20'+(_0x48c942(0x1ff)+_0x2caa9f['join'](',\x20')));_0x428877=_0x3ddb80;}else{if(_0xe831e[_0x48c942(0x1e7)])throw CliErrors[_0x48c942(0x202)](_0x48c942(0x1f2));const _0x5bf765=await promptSelect(_0x48c942(0x211),_0x2caa9f);_0x428877=_0x2caa9f[_0x5bf765]??_0x2caa9f[0x0];}let _0x1363cf=normalizeHookFunctionNode(_0xe831e['str'](_0x48c942(0x205)));if(!_0x1363cf){if(_0xe831e[_0x48c942(0x227)](_0x48c942(0x205)))throw CliErrors[_0x48c942(0x202)](_0x48c942(0x1f8));if(_0xe831e[_0x48c942(0x1e7)])throw CliErrors['validation'](_0x48c942(0x224));const _0x137a35=await promptSelect(_0x48c942(0x231),[_0x48c942(0x213),_0x48c942(0x201)]);_0x1363cf=['before',_0x48c942(0x201)][_0x137a35]??'before';}return{'alias':_0x11d53b,'datasetCode':_0x24880e,'datasetId':_0x438f78,'operationType':_0x428877,'functionNode':_0x1363cf};}async function promptSelect(_0x23f8ee,_0x1acdb3){const _0x49defc=a22_0x4615d1;if(_0x1acdb3[_0x49defc(0x200)]===0x1)return 0x0;for(const [_0xf09872,_0x546516]of _0x1acdb3[_0x49defc(0x1f3)]()){process[_0x49defc(0x236)][_0x49defc(0x21e)]('\x20\x20'+(_0xf09872+0x1)+'.\x20'+_0x546516+'\x0a');}const _0xe6fe06=createInterface({'input':process['stdin'],'output':process[_0x49defc(0x236)]});while(!![]){const _0x22636d=await new Promise(_0x47daa2=>{const _0x1694a2=_0x49defc;_0xe6fe06[_0x1694a2(0x233)](_0x23f8ee+'\x20',_0x47daa2);}),_0x1a72dc=Number[_0x49defc(0x229)](_0x22636d['trim'](),0xa);if(Number[_0x49defc(0x1e6)](_0x1a72dc)&&_0x1a72dc>=0x1&&_0x1a72dc<=_0x1acdb3[_0x49defc(0x200)])return _0xe6fe06[_0x49defc(0x230)](),_0x1a72dc-0x1;process['stderr'][_0x49defc(0x21e)](_0x49defc(0x1e2)+_0x1acdb3[_0x49defc(0x200)]+'.\x0a');}}function buildFilePath(_0x75bdc3,_0x5dd687,_0x13e6b2,_0x41db16){const _0xec1347=a22_0x4615d1;if(_0x5dd687===_0xec1347(0x20d)){if(!_0x41db16)throw CliErrors[_0xec1347(0x202)](_0xec1347(0x238));const _0x108ce9=_0x41db16[_0xec1347(0x214)]??_0x41db16[_0xec1347(0x209)];return join(_0x75bdc3[_0xec1347(0x228)],_0xec1347(0x20d),_0x108ce9,_0x41db16[_0xec1347(0x1e4)],_0x41db16[_0xec1347(0x204)],_0x13e6b2+'.js');}return join(_0x75bdc3['scriptsRootDir'],_0x5dd687,_0x13e6b2+_0xec1347(0x21a));}function generateTemplate(_0xc6e93e,_0x543ec3,_0xf8194a,_0x2d4343,_0x40f5bf){const _0xef5e41=a22_0x4615d1,_0x4418cc=_0x2d4343?.[_0xef5e41(0x225)]()||_0xef5e41(0x203);if(_0xc6e93e==='COMMON')return'/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x4418cc+'\x0a\x20*\x20[脚本名称]\x20'+_0x543ec3+_0xef5e41(0x235)+_0x543ec3+_0xef5e41(0x21b)+_0x543ec3+_0xef5e41(0x219);if(_0xc6e93e==='ENDPOINT')return _0xef5e41(0x1f4)+_0x4418cc+_0xef5e41(0x210)+_0xf8194a[_0xef5e41(0x234)]+'/endpoint/'+_0x543ec3+_0xef5e41(0x1fe)+_0x543ec3+_0xef5e41(0x219);if(!_0x40f5bf)throw CliErrors[_0xef5e41(0x202)](_0xef5e41(0x1e3));return _0xef5e41(0x20a)+_0x4418cc+'\x0a\x20*\x20[接口路径]\x20POST\x20/api/'+_0xf8194a['appCode']+'/'+_0x40f5bf[_0xef5e41(0x209)]+'/'+_0x40f5bf['operationType']+_0xef5e41(0x221)+_0x40f5bf[_0xef5e41(0x204)]+'\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20'+_0x543ec3+_0xef5e41(0x219);}
|
|
1
|
+
const a28_0x127b35=a28_0x43ab;(function(_0x1ba5fc,_0x4b1f98){const _0xf02912=a28_0x43ab,_0x485421=_0x1ba5fc();while(!![]){try{const _0x35c06f=parseInt(_0xf02912(0xa4))/0x1+parseInt(_0xf02912(0xad))/0x2+-parseInt(_0xf02912(0x9e))/0x3+parseInt(_0xf02912(0x99))/0x4+-parseInt(_0xf02912(0x6f))/0x5*(parseInt(_0xf02912(0x97))/0x6)+parseInt(_0xf02912(0xa3))/0x7*(-parseInt(_0xf02912(0xb9))/0x8)+parseInt(_0xf02912(0xb3))/0x9*(parseInt(_0xf02912(0xb2))/0xa);if(_0x35c06f===_0x4b1f98)break;else _0x485421['push'](_0x485421['shift']());}catch(_0x4589e2){_0x485421['push'](_0x485421['shift']());}}}(a28_0x100c,0xc7876));import{createInterface}from'node:readline';import{mkdir,writeFile}from'node:fs/promises';import{dirname,join}from'node:path';import{listDatasets,listBffDatasetOperations}from'../../core/api-client.js';import{loadAliasMap,resolveAlias}from'../../core/alias-resolver.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{fileExists}from'../../core/bff/file-system.js';import{isValidBffFunctionName,normalizeHookFunctionNode}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffNew={'service':a28_0x127b35(0xb0),'command':'new','description':a28_0x127b35(0x77),'risk':'write','flags':[{'name':a28_0x127b35(0x92),'type':a28_0x127b35(0xa0),'required':!![],'enum':['COMMON',a28_0x127b35(0x80),a28_0x127b35(0x7d)],'description':a28_0x127b35(0x84)},{'name':a28_0x127b35(0x68),'type':a28_0x127b35(0xa0),'required':!![],'description':a28_0x127b35(0x85)},{'name':'description','type':'string','description':a28_0x127b35(0x8b)},{'name':a28_0x127b35(0x74),'type':a28_0x127b35(0xa0),'description':'Dataset\x20alias\x20from\x20api.ts\x20(HOOK\x20only,\x20preferred)'},{'name':a28_0x127b35(0xa7),'type':a28_0x127b35(0xa0),'description':a28_0x127b35(0x8a)},{'name':'operation-type','type':a28_0x127b35(0xa0),'description':a28_0x127b35(0xa1)},{'name':a28_0x127b35(0xbc),'type':a28_0x127b35(0xa0),'description':a28_0x127b35(0x8c),'enum':[a28_0x127b35(0xb6),a28_0x127b35(0x9d)]}],async 'validate'(_0x1661a2){const _0x2be73c=a28_0x127b35,_0x5e8255=_0x1661a2[_0x2be73c(0x89)](_0x2be73c(0x68));if(!isValidBffFunctionName(_0x5e8255))throw CliErrors[_0x2be73c(0xa5)](_0x2be73c(0x86)+_0x5e8255+'\x22.\x20Must\x20be\x20a\x20valid\x20JS\x20identifier\x20(e.g.\x20createOrder,\x20beforeFilter).');},async 'execute'(_0x4bb73b){const _0x3e6db4=a28_0x127b35,_0x10d30f=loadBffProjectConfig(_0x4bb73b[_0x3e6db4(0xae)]),_0x191ec8=_0x4bb73b[_0x3e6db4(0x89)](_0x3e6db4(0x92)),_0x8c3175=_0x4bb73b[_0x3e6db4(0x89)]('name'),_0x3b1ab7=_0x4bb73b[_0x3e6db4(0x89)](_0x3e6db4(0xb4))||undefined,_0x30206e=_0x191ec8===_0x3e6db4(0x7d)?await resolveHookOptions(_0x10d30f,_0x4bb73b):undefined,_0x303939=buildFilePath(_0x10d30f,_0x191ec8,_0x8c3175,_0x30206e);if(await fileExists(_0x303939))throw CliErrors['validation']('File\x20already\x20exists:\x20'+_0x303939);await mkdir(dirname(_0x303939),{'recursive':!![]});const _0x3923ea=generateTemplate(_0x191ec8,_0x8c3175,_0x4bb73b[_0x3e6db4(0xae)],_0x3b1ab7,_0x30206e);await writeFile(_0x303939,_0x3923ea,_0x3e6db4(0xac));const _0x191d52={'type':_0x191ec8,'name':_0x8c3175,'path':_0x303939};if(_0x3b1ab7)_0x191d52[_0x3e6db4(0xb4)]=_0x3b1ab7;if(_0x30206e){if(_0x30206e[_0x3e6db4(0x74)])_0x191d52['alias']=_0x30206e[_0x3e6db4(0x74)];_0x191d52[_0x3e6db4(0xa2)]=_0x30206e[_0x3e6db4(0xa2)],_0x191d52[_0x3e6db4(0x9f)]=_0x30206e[_0x3e6db4(0x9f)],_0x191d52[_0x3e6db4(0xa6)]=_0x30206e[_0x3e6db4(0xa6)];}return{'ok':!![],'data':_0x191d52,'message':_0x3e6db4(0x73)+_0x191ec8+_0x3e6db4(0xa9)+_0x8c3175};}};async function resolveHookOptions(_0x2ee1ce,_0x5c051b){const _0x23d13e=a28_0x127b35,_0x3ff6f9=loadAliasMap(_0x5c051b[_0x23d13e(0xbb)],_0x5c051b['appCode']),_0x59bdbf=_0x3ff6f9[_0x23d13e(0x91)]>0x0;let _0x1b3d00,_0x389fae,_0x4bf55f;const _0x3b1f12=_0x5c051b[_0x23d13e(0x89)](_0x23d13e(0x74)),_0x2f93ad=_0x5c051b[_0x23d13e(0x89)]('datasetcode');if(_0x3b1f12){const _0x2ee29a=resolveAlias(_0x5c051b[_0x23d13e(0xbb)],_0x3b1f12,_0x5c051b[_0x23d13e(0xae)]);if(!_0x2ee29a){const _0x1f462a=_0x59bdbf?'Available\x20aliases:\x20'+_0x3ff6f9['map'](_0x36f6ef=>_0x36f6ef[_0x23d13e(0x74)])[_0x23d13e(0x8e)](',\x20'):'No\x20api.ts\x20found.\x20Run\x20`'+CLI_BIN_NAME+_0x23d13e(0xab);throw CliErrors[_0x23d13e(0xa5)](_0x23d13e(0xb5)+_0x3b1f12+_0x23d13e(0x6e)+_0x1f462a);}_0x1b3d00=_0x3b1f12,_0x389fae=_0x2ee29a;}else{if(_0x2f93ad){_0x389fae=_0x2f93ad;const _0x571f1d=_0x3ff6f9[_0x23d13e(0x93)](_0x26ac52=>_0x26ac52[_0x23d13e(0xa2)]===_0x2f93ad);_0x1b3d00=_0x571f1d?.[_0x23d13e(0x74)];}else{if(_0x5c051b[_0x23d13e(0x8f)])throw CliErrors[_0x23d13e(0xa5)](_0x23d13e(0x7c));else{if(_0x59bdbf){const _0x1f744a=_0x3ff6f9[_0x23d13e(0x7e)](_0x44c7a6=>_0x44c7a6[_0x23d13e(0x74)]+'\x20('+_0x44c7a6[_0x23d13e(0x81)]+')'),_0x252e7f=await promptSelect(_0x23d13e(0x67),_0x1f744a),_0x2d4d52=_0x3ff6f9[_0x252e7f];if(!_0x2d4d52)throw CliErrors['validation'](_0x23d13e(0x9c));_0x1b3d00=_0x2d4d52['alias'],_0x389fae=_0x2d4d52[_0x23d13e(0xa2)];}else{const _0xd581d9=await listDatasets(_0x5c051b[_0x23d13e(0xae)]);if(_0xd581d9[_0x23d13e(0x91)]===0x0)throw CliErrors['validation'](_0x23d13e(0x79));const _0x532004=_0xd581d9[_0x23d13e(0x7e)](_0x3bf5c7=>_0x3bf5c7[_0x23d13e(0x68)]+'\x20('+_0x3bf5c7[_0x23d13e(0xb7)]+')'),_0x11bea2=await promptSelect('Select\x20dataset:',_0x532004),_0xa6ea46=_0xd581d9[_0x11bea2];if(!_0xa6ea46)throw CliErrors[_0x23d13e(0xa5)]('Invalid\x20dataset\x20selection.');_0x389fae=_0xa6ea46['code'],_0x1b3d00=undefined;}}}}const _0x597ecb=await listDatasets(_0x5c051b[_0x23d13e(0xae)]),_0x9030bb=_0x597ecb[_0x23d13e(0x93)](_0x133339=>_0x133339[_0x23d13e(0xb7)]===_0x389fae);if(!_0x9030bb)throw CliErrors[_0x23d13e(0xa5)]('Dataset\x20not\x20found\x20for\x20code\x20\x22'+_0x389fae+_0x23d13e(0x69)+(_0x1b3d00?_0x23d13e(0x98)+CLI_BIN_NAME+'\x20api\x20pull`\x20to\x20refresh.':''));_0x4bf55f=_0x9030bb['id'];const _0x5c54b1=_0x1b3d00??_0x389fae,_0x30f70f=await listBffDatasetOperations(_0x5c051b[_0x23d13e(0xae)],_0x4bf55f),_0x48be3f=_0x30f70f?Object[_0x23d13e(0x7a)](_0x30f70f):[];if(_0x48be3f[_0x23d13e(0x91)]===0x0)throw CliErrors[_0x23d13e(0xa5)]('No\x20operation\x20types\x20found\x20for\x20dataset\x20'+_0x5c54b1+'.');let _0x2be882;const _0x159537=_0x5c051b[_0x23d13e(0x89)](_0x23d13e(0x6a));if(_0x159537){if(!_0x48be3f['includes'](_0x159537))throw CliErrors[_0x23d13e(0xa5)](_0x23d13e(0xbd)+_0x159537+_0x23d13e(0x6d)+_0x5c54b1+'.\x20'+(_0x23d13e(0x90)+_0x48be3f[_0x23d13e(0x8e)](',\x20')));_0x2be882=_0x159537;}else{if(_0x5c051b[_0x23d13e(0x8f)])throw CliErrors[_0x23d13e(0xa5)]('--operation-type\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.');const _0x1c7eb6=await promptSelect(_0x23d13e(0xba),_0x48be3f);_0x2be882=_0x48be3f[_0x1c7eb6]??_0x48be3f[0x0];}let _0x306b59=normalizeHookFunctionNode(_0x5c051b[_0x23d13e(0x89)](_0x23d13e(0xbc)));if(!_0x306b59){if(_0x5c051b[_0x23d13e(0x89)](_0x23d13e(0xbc)))throw CliErrors['validation'](_0x23d13e(0x96));if(_0x5c051b['nonInteractive'])throw CliErrors['validation'](_0x23d13e(0x6b));const _0x5e8ea9=await promptSelect('Select\x20trigger\x20node:',['before',_0x23d13e(0x9d)]);_0x306b59=[_0x23d13e(0xb6),_0x23d13e(0x9d)][_0x5e8ea9]??_0x23d13e(0xb6);}return{'alias':_0x1b3d00,'datasetCode':_0x389fae,'datasetId':_0x4bf55f,'operationType':_0x2be882,'functionNode':_0x306b59};}async function promptSelect(_0x32cd73,_0x12df24){const _0xbcba79=a28_0x127b35;if(_0x12df24[_0xbcba79(0x91)]===0x1)return 0x0;for(const [_0x2e5ebb,_0x239214]of _0x12df24[_0xbcba79(0x71)]()){process[_0xbcba79(0xaa)][_0xbcba79(0x75)]('\x20\x20'+(_0x2e5ebb+0x1)+'.\x20'+_0x239214+'\x0a');}const _0x418093=createInterface({'input':process[_0xbcba79(0x72)],'output':process[_0xbcba79(0xaa)]});while(!![]){const _0x4ef969=await new Promise(_0xc2012b=>{const _0x2629e1=_0xbcba79;_0x418093[_0x2629e1(0x82)](_0x32cd73+'\x20',_0xc2012b);}),_0x5437a4=Number[_0xbcba79(0x87)](_0x4ef969[_0xbcba79(0xb1)](),0xa);if(Number[_0xbcba79(0x88)](_0x5437a4)&&_0x5437a4>=0x1&&_0x5437a4<=_0x12df24['length'])return _0x418093[_0xbcba79(0x78)](),_0x5437a4-0x1;process[_0xbcba79(0xaa)][_0xbcba79(0x75)](_0xbcba79(0x7f)+_0x12df24['length']+'.\x0a');}}function buildFilePath(_0x27e703,_0x211367,_0x54a4c6,_0x2eeb9b){const _0x10b5a0=a28_0x127b35;if(_0x211367===_0x10b5a0(0x7d)){if(!_0x2eeb9b)throw CliErrors[_0x10b5a0(0xa5)]('HOOK\x20requires\x20alias/operation/node\x20options.');const _0x4ba1e3=_0x2eeb9b[_0x10b5a0(0x74)]??_0x2eeb9b[_0x10b5a0(0xa2)];return join(_0x27e703['scriptsRootDir'],'HOOK',_0x4ba1e3,_0x2eeb9b['operationType'],_0x2eeb9b[_0x10b5a0(0xa6)],_0x54a4c6+_0x10b5a0(0x76));}return join(_0x27e703['scriptsRootDir'],_0x211367,_0x54a4c6+_0x10b5a0(0x76));}function a28_0x43ab(_0x5eeb27,_0x36fd0e){_0x5eeb27=_0x5eeb27-0x67;const _0x100c4c=a28_0x100c();let _0x43ab3b=_0x100c4c[_0x5eeb27];return _0x43ab3b;}function a28_0x100c(){const _0x49a62d=['isInteger','str','Dataset\x20code\x20(HOOK\x20only,\x20fallback\x20when\x20alias\x20unavailable)','Script\x20description','Trigger\x20node\x20(HOOK\x20only)','\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Request\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Business\x20result\x20(wrapped\x20in\x20response.data).\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','join','nonInteractive','Available:\x20','length','type','find','\x0a\x20*\x20[触发节点]\x20','(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a','--function-node\x20must\x20be\x20\x27before\x27\x20or\x20\x27after\x27.','78IeVjRQ','The\x20api.ts\x20may\x20be\x20stale\x20—\x20run\x20`','2342504iYPYwn','/**\x0a\x20*\x20HOOK\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','/endpoint/','Invalid\x20dataset\x20selection.','after','597885TeIcyg','operationType','string','Operation\x20type\x20(HOOK\x20only)','datasetCode','777CuXipX','682899nnaszu','validation','functionNode','datasetcode','COMMON','\x20function:\x20','stderr','\x20api\x20pull`\x20first,\x20or\x20use\x20--datasetcode\x20instead.','utf8','1441732RJNxji','appCode','\x0a\x20*\x20[接口路径]\x20POST\x20/api/','bff','trim','50jpqdot','2298987yFjXkn','description','Alias\x20\x22','before','code','\x0a\x20*\x20[脚本类型]\x20COMMON\x0a\x20*\x20[本地路径]\x20.rabetbase/bff/COMMON/','71360WSSmpR','Select\x20operation\x20type:','apiDir','function-node','Operation\x20type\x20\x22','Select\x20dataset:','name','\x22.\x20','operation-type','--function-node\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','/**\x0a\x20*\x20ENDPOINT\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20','\x22\x20not\x20found\x20for\x20dataset\x20','\x22\x20not\x20found.\x20','484585BcIeXF','.js\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Input\x20parameters.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Processing\x20result.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20','entries','stdin','Created\x20','alias','write','.js','Scaffold\x20a\x20new\x20BFF\x20function\x20from\x20template','close','No\x20datasets\x20found\x20for\x20this\x20app.','keys','TODO:\x20add\x20script\x20description','--alias\x20or\x20--datasetcode\x20is\x20required\x20for\x20HOOK\x20in\x20non-interactive\x20mode.','HOOK','map','\x20\x20Enter\x20a\x20number\x20between\x201\x20and\x20','ENDPOINT','tableName','question','\x0a\x20*\x20[脚本名称]\x20','Script\x20type','Function\x20name\x20(valid\x20JS\x20identifier)','Invalid\x20function\x20name\x20\x22','parseInt'];a28_0x100c=function(){return _0x49a62d;};return a28_0x100c();}export function generateTemplate(_0x3956c9,_0x233f83,_0x255dee,_0x2797d4,_0x38b7ec){const _0x36e3ef=a28_0x127b35,_0x37de4f=_0x2797d4?.[_0x36e3ef(0xb1)]()||_0x36e3ef(0x7b);if(_0x3956c9===_0x36e3ef(0xa8))return'/**\x0a\x20*\x20COMMON\x20function\x20template.\x0a\x20*\x0a\x20*\x20[脚本描述]\x20'+_0x37de4f+_0x36e3ef(0x83)+_0x233f83+_0x36e3ef(0xb8)+_0x233f83+_0x36e3ef(0x70)+_0x233f83+_0x36e3ef(0x95);if(_0x3956c9===_0x36e3ef(0x80))return _0x36e3ef(0x6c)+_0x37de4f+_0x36e3ef(0xaf)+_0x255dee+_0x36e3ef(0x9b)+_0x233f83+_0x36e3ef(0x8d)+_0x233f83+_0x36e3ef(0x95);if(!_0x38b7ec)throw CliErrors[_0x36e3ef(0xa5)]('HOOK\x20requires\x20hookOptions\x20for\x20template\x20generation.');return _0x36e3ef(0x9a)+_0x37de4f+_0x36e3ef(0xaf)+_0x255dee+'/'+_0x38b7ec['datasetCode']+'/'+_0x38b7ec[_0x36e3ef(0x9f)]+_0x36e3ef(0x94)+_0x38b7ec[_0x36e3ef(0xa6)]+'\x0a\x20*\x0a\x20*\x20@param\x20{Object}\x20params\x20-\x20Current\x20request\x20params\x20or\x20response\x20result.\x0a\x20*\x20@param\x20{Object}\x20context\x20-\x20Execution\x20context\x20(injected\x20by\x20platform).\x0a\x20*\x20@returns\x20{Promise<Object>}\x20Modified\x20params\x20object.\x0a\x20*/\x0aexport\x20default\x20async\x20function\x20'+_0x233f83+'(params,\x20context)\x20{\x0a\x20\x20return\x20params;\x0a}\x0a';}
|
package/lib/commands/bff/pull.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a29_0x2a5b1d=a29_0x56c6;(function(_0x2dfa22,_0x121e59){const _0x3faeed=a29_0x56c6,_0x1347e8=_0x2dfa22();while(!![]){try{const _0x28aa6b=parseInt(_0x3faeed(0x16a))/0x1*(parseInt(_0x3faeed(0x147))/0x2)+parseInt(_0x3faeed(0x153))/0x3*(-parseInt(_0x3faeed(0x173))/0x4)+-parseInt(_0x3faeed(0x146))/0x5*(-parseInt(_0x3faeed(0x187))/0x6)+-parseInt(_0x3faeed(0x155))/0x7+-parseInt(_0x3faeed(0x16d))/0x8+-parseInt(_0x3faeed(0x168))/0x9*(parseInt(_0x3faeed(0x167))/0xa)+parseInt(_0x3faeed(0x185))/0xb;if(_0x28aa6b===_0x121e59)break;else _0x1347e8['push'](_0x1347e8['shift']());}catch(_0xcb6e06){_0x1347e8['push'](_0x1347e8['shift']());}}}(a29_0x6eab,0x6429e));import{createInterface}from'node:readline';import{writeFile}from'node:fs/promises';import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{createHookLocationMap,ensureParentDirectory,fileExists,normalizeBffType,resolveRemoteScriptTarget}from'../../core/bff/file-system.js';import{computeContentHash,computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';function a29_0x56c6(_0x57afa0,_0x172805){_0x57afa0=_0x57afa0-0x145;const _0x6eab6c=a29_0x6eab();let _0x56c65d=_0x6eab6c[_0x57afa0];return _0x56c65d;}import{CliErrors}from'../../errors.js';export const bffPull={'service':a29_0x2a5b1d(0x178),'command':a29_0x2a5b1d(0x150),'description':a29_0x2a5b1d(0x15a),'risk':a29_0x2a5b1d(0x14f),'flags':[{'name':'type','type':a29_0x2a5b1d(0x157),'description':a29_0x2a5b1d(0x15c),'enum':[a29_0x2a5b1d(0x145),'ENDPOINT',a29_0x2a5b1d(0x17e)]},{'name':a29_0x2a5b1d(0x15d),'type':a29_0x2a5b1d(0x148),'description':a29_0x2a5b1d(0x174)}],async 'dryRun'(_0x2eba30){const _0x1df477=a29_0x2a5b1d,_0x199d96=loadBffProjectConfig(_0x2eba30['appCode']),_0x135285=await readBffLockFile(_0x199d96[_0x1df477(0x159)]),{appLock:_0x3459e3}=ensureLockScope(_0x135285??createEmptyBffLock(),_0x2eba30[_0x1df477(0x170)],_0x199d96['scriptsRoot'],'pull'),_0x329c51=normalizeBffType(_0x2eba30[_0x1df477(0x184)]('type'))??undefined,_0x1e623a=buildDatasetCodeToAliasMap(_0x2eba30[_0x1df477(0x17b)],_0x2eba30[_0x1df477(0x170)]),[_0x5a616a,_0x13c485]=await Promise[_0x1df477(0x18a)]([listBffScripts(_0x2eba30[_0x1df477(0x170)],_0x329c51),getBffScriptStatistics(_0x2eba30[_0x1df477(0x170)])]),_0x2c7e9e=createHookLocationMap(_0x13c485),_0x222f14=[];for(const _0x37a969 of _0x5a616a){const _0x42d8e2=resolveRemoteScriptTarget(_0x199d96,_0x37a969,_0x2c7e9e,_0x3459e3[_0x1df477(0x163)],_0x1e623a);if(!_0x42d8e2){_0x222f14[_0x1df477(0x179)]({'scriptType':_0x37a969[_0x1df477(0x186)],'functionName':_0x37a969[_0x1df477(0x14e)]??'','status':_0x1df477(0x158),'reason':_0x1df477(0x18b)});continue;}const _0x41bdce=_0x3459e3[_0x1df477(0x163)][_0x42d8e2[_0x1df477(0x15f)]],_0x2b6e49=_0x37a969[_0x1df477(0x166)]!=null?computeContentHash(_0x37a969['scriptContent']):undefined,_0x96a446=await hasUnsyncedLocalChanges(_0x42d8e2[_0x1df477(0x182)],_0x41bdce,_0x2b6e49);_0x222f14[_0x1df477(0x179)]({'lockKey':_0x42d8e2[_0x1df477(0x15f)],'filePath':_0x42d8e2[_0x1df477(0x182)],'remoteId':_0x37a969['id']??null,'status':_0x96a446?_0x1df477(0x154):_0x1df477(0x161)});}return{'method':_0x1df477(0x149),'url':_0x1df477(0x15e)+_0x2eba30[_0x1df477(0x170)]+(_0x329c51?'&type='+_0x329c51:''),'body':{'appCode':_0x2eba30[_0x1df477(0x170)],'filterType':_0x329c51??null,'files':_0x222f14},'description':_0x1df477(0x177)+_0x222f14['length']+_0x1df477(0x16c)};},async 'execute'(_0x1c2451){const _0x54b853=a29_0x2a5b1d,_0xc0e4e5=loadBffProjectConfig(_0x1c2451['appCode']),_0xd3eefd=await readBffLockFile(_0xc0e4e5['lockFilePath']),{lockData:_0x2615c4,appLock:_0x2a2793}=ensureLockScope(_0xd3eefd??createEmptyBffLock(),_0x1c2451[_0x54b853(0x170)],_0xc0e4e5[_0x54b853(0x183)],'pull'),_0x4b41fd=normalizeBffType(_0x1c2451[_0x54b853(0x184)]('type'))??undefined;if(_0x1c2451[_0x54b853(0x184)](_0x54b853(0x14d))&&!_0x4b41fd)throw CliErrors['validation'](_0x54b853(0x17f));const [_0x32c11c,_0x26cf69]=await Promise[_0x54b853(0x18a)]([listBffScripts(_0x1c2451[_0x54b853(0x170)],_0x4b41fd),getBffScriptStatistics(_0x1c2451[_0x54b853(0x170)])]);if(_0x32c11c[_0x54b853(0x162)]===0x0)return{'ok':!![],'data':{'pulled':[],'skipped':[],'failed':[]},'message':_0x54b853(0x18c)};const _0xf1b6fa=_0x1c2451[_0x54b853(0x151)]('force');if(_0xf1b6fa&&!_0x1c2451[_0x54b853(0x156)]){const _0x280176=await confirmForce();if(!_0x280176)throw CliErrors['cancelled']('Force\x20pull\x20cancelled.');}if(_0xf1b6fa&&_0x1c2451[_0x54b853(0x156)]){}const _0xb88fcb=buildDatasetCodeToAliasMap(_0x1c2451[_0x54b853(0x17b)],_0x1c2451[_0x54b853(0x170)]),_0x5cad69=createHookLocationMap(_0x26cf69),_0x487085=JSON[_0x54b853(0x14b)](JSON['stringify'](_0x2615c4)),_0x28191b=_0x1c2451[_0x54b853(0x170)],_0x100833=_0x487085['apps'][_0x28191b];if(!_0x100833)throw new Error(_0x54b853(0x188)+_0x28191b+_0x54b853(0x17d));const _0x50cb82=[],_0x101e4f=[],_0x27fbb4=[];for(const _0x255e2f of _0x32c11c){const _0x19fa3a=resolveRemoteScriptTarget(_0xc0e4e5,_0x255e2f,_0x5cad69,_0x2a2793[_0x54b853(0x163)],_0xb88fcb);if(!_0x19fa3a){_0x101e4f[_0x54b853(0x179)]({'lockKey':_0x255e2f[_0x54b853(0x186)]+'/'+_0x255e2f['functionName'],'reason':_0x54b853(0x18b)});continue;}const _0x3f2208=_0x2a2793['functions'][_0x19fa3a[_0x54b853(0x15f)]];try{if(!_0x255e2f['id'])throw new Error(_0x54b853(0x189));if(_0x255e2f[_0x54b853(0x166)]==null)throw new Error(_0x54b853(0x176));const _0x40d44f=_0x255e2f['scriptContent'],_0x4d08eb=computeContentHash(_0x40d44f);if(!_0xf1b6fa){const _0x24a2a6=await hasUnsyncedLocalChanges(_0x19fa3a[_0x54b853(0x182)],_0x3f2208,_0x4d08eb);if(_0x24a2a6){_0x101e4f['push']({'lockKey':_0x19fa3a['lockKey'],'reason':_0x54b853(0x17a)});continue;}}await ensureParentDirectory(_0x19fa3a[_0x54b853(0x182)]),await writeFile(_0x19fa3a['filePath'],_0x40d44f,_0x54b853(0x171));const _0x5a7598={'hash':_0x4d08eb,'remoteId':_0x255e2f['id'],'version':_0x255e2f['version']};_0x19fa3a[_0x54b853(0x14d)]===_0x54b853(0x17e)&&_0x19fa3a[_0x54b853(0x14c)]&&(_0x5a7598['alias']=_0x19fa3a[_0x54b853(0x14c)]['alias'],_0x5a7598[_0x54b853(0x152)]=_0x19fa3a[_0x54b853(0x14c)][_0x54b853(0x152)],_0x5a7598[_0x54b853(0x160)]=_0x19fa3a[_0x54b853(0x14c)][_0x54b853(0x160)],_0x5a7598[_0x54b853(0x16f)]=_0x19fa3a[_0x54b853(0x14c)][_0x54b853(0x16f)]),_0x100833[_0x54b853(0x163)][_0x19fa3a[_0x54b853(0x15f)]]=_0x5a7598,_0x50cb82[_0x54b853(0x179)]({'lockKey':_0x19fa3a[_0x54b853(0x15f)],'remoteId':_0x255e2f['id']});}catch(_0x21b0fe){_0x27fbb4['push']({'lockKey':_0x19fa3a[_0x54b853(0x15f)],'error':_0x21b0fe instanceof Error?_0x21b0fe[_0x54b853(0x181)]:String(_0x21b0fe)});}}return _0x100833[_0x54b853(0x14a)]=new Date()[_0x54b853(0x172)](),await writeBffLockFile(_0xc0e4e5[_0x54b853(0x159)],_0x487085),{'ok':_0x27fbb4[_0x54b853(0x162)]===0x0,'data':{'pulled':_0x50cb82,'skipped':_0x101e4f,'failed':_0x27fbb4},'message':_0x54b853(0x180)+_0x50cb82['length']+_0x54b853(0x18d)+_0x101e4f[_0x54b853(0x162)]+_0x54b853(0x164)+_0x27fbb4[_0x54b853(0x162)]+'\x20failed'};}};async function hasUnsyncedLocalChanges(_0x5e0a21,_0x44d99f,_0x439e52){const _0x11170e=a29_0x2a5b1d;if(!await fileExists(_0x5e0a21))return![];const _0xf5a4f0=await computeFileHash(_0x5e0a21);if(!_0x44d99f)return _0x439e52?_0xf5a4f0!==_0x439e52:!![];return _0xf5a4f0!==_0x44d99f[_0x11170e(0x16e)];}function a29_0x6eab(){const _0x4973bc=['bff','push','local\x20unsynced\x20changes','apiDir','alias','\x22\x20not\x20found\x20after\x20ensureLockScope.','HOOK','--type\x20must\x20be\x20COMMON,\x20ENDPOINT,\x20or\x20HOOK.','Pull\x20complete:\x20','message','filePath','scriptsRoot','str','10077111vOUZKj','scriptType','6qDcurq','Lock\x20scope\x20for\x20app\x20\x22','Remote\x20script\x20missing\x20id.','all','unresolvable\x20target\x20path','No\x20remote\x20BFF\x20scripts\x20found.','\x20pulled,\x20','COMMON','2216495HuBfvc','261628TbvcVE','boolean','GET','lastSync','parse','hookLocation','type','functionName','write','pull','bool','datasetCode','1650yxqZGg','conflict','4159379ABtvOm','nonInteractive','string','skipped','lockFilePath','Pull\x20remote\x20BFF\x20scripts\x20to\x20local','map','Pull\x20only\x20this\x20script\x20type','force','/api/management/library/scripts/list?appCode=','lockKey','operationType','would_pull','length','functions','\x20skipped,\x20','stderr','scriptContent','1640RExDEj','8244JtkeTH','question','5gzXLbR','trim','\x20remote\x20BFF\x20script(s)\x20for\x20pull','4745032GvBRBh','hash','functionNode','appCode','utf8','toISOString','1932oDNkBA','Force\x20overwrite\x20local\x20unsynced\x20changes','toLowerCase','Remote\x20script\x20missing\x20content.','Would\x20inspect\x20'];a29_0x6eab=function(){return _0x4973bc;};return a29_0x6eab();}function buildDatasetCodeToAliasMap(_0x591bf8,_0x2a8c48){const _0x931fb6=a29_0x2a5b1d,_0x21c8dd=loadAliasMap(_0x591bf8,_0x2a8c48);return new Map(_0x21c8dd[_0x931fb6(0x15b)](_0x46545=>[_0x46545[_0x931fb6(0x152)],_0x46545[_0x931fb6(0x17c)]]));}async function confirmForce(){const _0xe90950=a29_0x2a5b1d,_0xdc8d6e=createInterface({'input':process['stdin'],'output':process[_0xe90950(0x165)]}),_0x2c90ab=await new Promise(_0x50b7e7=>{const _0x152ab4=_0xe90950;_0xdc8d6e[_0x152ab4(0x169)]('Force\x20pull\x20will\x20overwrite\x20local\x20unsynced\x20changes.\x20Continue?\x20[y/N]\x20',_0x50b7e7);});return _0xdc8d6e['close'](),['y','yes']['includes'](_0x2c90ab[_0xe90950(0x16b)]()[_0xe90950(0x175)]());}
|
package/lib/commands/bff/push.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const a24_0x20e35d=a24_0x1e59;(function(_0x3c07f2,_0x2b16b9){const _0x3bb523=a24_0x1e59,_0x350304=_0x3c07f2();while(!![]){try{const _0x209111=parseInt(_0x3bb523(0x1cb))/0x1*(-parseInt(_0x3bb523(0x1c0))/0x2)+parseInt(_0x3bb523(0x1c6))/0x3*(-parseInt(_0x3bb523(0x1b3))/0x4)+parseInt(_0x3bb523(0x1c2))/0x5+parseInt(_0x3bb523(0x1c9))/0x6*(parseInt(_0x3bb523(0x1ca))/0x7)+parseInt(_0x3bb523(0x1de))/0x8*(-parseInt(_0x3bb523(0x1a2))/0x9)+-parseInt(_0x3bb523(0x1e1))/0xa*(parseInt(_0x3bb523(0x1bc))/0xb)+parseInt(_0x3bb523(0x1c7))/0xc;if(_0x209111===_0x2b16b9)break;else _0x350304['push'](_0x350304['shift']());}catch(_0x43e870){_0x350304['push'](_0x350304['shift']());}}}(a24_0x5a94,0x5e79e));import{readFile}from'node:fs/promises';import{saveBffScript,getBffScriptInfo,listDatasets}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{normalizeBffType,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';import{extractScriptDescription}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffPush={'service':a24_0x20e35d(0x1cc),'command':a24_0x20e35d(0x1b5),'description':a24_0x20e35d(0x1b7),'risk':a24_0x20e35d(0x1a7),'flags':[{'name':'type','type':a24_0x20e35d(0x1b2),'description':a24_0x20e35d(0x1e2),'enum':[a24_0x20e35d(0x1b6),a24_0x20e35d(0x1d6),'HOOK']},{'name':a24_0x20e35d(0x1df),'type':'string','description':a24_0x20e35d(0x1d0)},{'name':a24_0x20e35d(0x1dc),'type':a24_0x20e35d(0x1a3),'description':a24_0x20e35d(0x19f)}],async 'dryRun'(_0x5efde6){const _0x171bef=a24_0x20e35d,_0x3d7a9c=loadBffProjectConfig(_0x5efde6[_0x171bef(0x1a8)]),_0x3698a7=await readBffLockFile(_0x3d7a9c[_0x171bef(0x1ae)]),{appLock:_0x14ddb1}=ensureLockScope(_0x3698a7??createEmptyBffLock(),_0x3d7a9c[_0x171bef(0x1a8)],_0x3d7a9c['scriptsRoot'],_0x171bef(0x1b5),_0x3d7a9c[_0x171bef(0x1a8)],_0x3d7a9c[_0x171bef(0x1c1)]+'/'+_0x3d7a9c[_0x171bef(0x1a8)]),_0x509342=await getTargetFunctions(_0x3d7a9c,_0x5efde6),_0x329118=_0x5efde6[_0x171bef(0x1d2)]('force'),_0x46d220=[];for(const _0x2203a2 of _0x509342){const _0x133edd=await computeFileHash(_0x2203a2[_0x171bef(0x1a6)]),_0x235759=_0x14ddb1[_0x171bef(0x1be)][_0x2203a2[_0x171bef(0x1ab)]];if(!_0x329118&&_0x235759&&_0x235759[_0x171bef(0x1c5)]===_0x133edd)continue;_0x46d220[_0x171bef(0x1b5)](_0x2203a2[_0x171bef(0x1ab)]);}return{'method':_0x171bef(0x1d9),'url':_0x171bef(0x1aa),'body':{'files':_0x46d220,'appCode':_0x5efde6[_0x171bef(0x1a8)]},'description':_0x171bef(0x1a0)+_0x46d220['length']+_0x171bef(0x1af)};},async 'execute'(_0x5b854f){const _0x1ed315=a24_0x20e35d,_0x207a4e=loadBffProjectConfig(_0x5b854f['appCode']),_0x4399ac=await readBffLockFile(_0x207a4e[_0x1ed315(0x1ae)]),{lockData:_0x4b5005,appLock:_0x244ac3}=ensureLockScope(_0x4399ac??createEmptyBffLock(),_0x207a4e['appCode'],_0x207a4e['scriptsRoot'],_0x1ed315(0x1b5),_0x207a4e[_0x1ed315(0x1a8)],_0x207a4e['scriptsWorkspaceRoot']+'/'+_0x207a4e[_0x1ed315(0x1a8)]),_0x7bd6cd=await getTargetFunctions(_0x207a4e,_0x5b854f);if(_0x7bd6cd['length']===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':'No\x20local\x20BFF\x20functions\x20found.'};const _0xbe196b=_0x5b854f[_0x1ed315(0x1d2)](_0x1ed315(0x1dc)),_0x3e04b1=await buildHookMaps(_0x207a4e[_0x1ed315(0x1a8)],_0x5b854f[_0x1ed315(0x1e4)],_0x7bd6cd,_0x244ac3),_0xd79434=[],_0x3968b5=[],_0x777f1=[];for(const _0x28f6fa of _0x7bd6cd){const _0x27bd76=await computeFileHash(_0x28f6fa[_0x1ed315(0x1a6)]),_0x571ef4=_0x244ac3[_0x1ed315(0x1be)][_0x28f6fa[_0x1ed315(0x1ab)]];if(!_0xbe196b&&_0x571ef4&&_0x571ef4['hash']===_0x27bd76){_0x3968b5['push']({'lockKey':_0x28f6fa[_0x1ed315(0x1ab)],'reason':_0x1ed315(0x1d3)});continue;}try{await uploadSingleFunction(_0x207a4e[_0x1ed315(0x1a8)],_0x28f6fa,_0x244ac3,_0x3e04b1);const _0x26a515=_0x244ac3[_0x1ed315(0x1be)][_0x28f6fa['lockKey']];_0xd79434[_0x1ed315(0x1b5)]({'lockKey':_0x28f6fa[_0x1ed315(0x1ab)],'remoteId':_0x26a515?.[_0x1ed315(0x1b4)]??0x0});}catch(_0x30f539){_0x777f1[_0x1ed315(0x1b5)]({'lockKey':_0x28f6fa[_0x1ed315(0x1ab)],'error':_0x30f539 instanceof Error?_0x30f539[_0x1ed315(0x1c4)]:String(_0x30f539)});}}return _0x244ac3['lastSync']=new Date()[_0x1ed315(0x1b8)](),await writeBffLockFile(_0x207a4e[_0x1ed315(0x1ae)],_0x4b5005),{'ok':_0x777f1[_0x1ed315(0x1b1)]===0x0,'data':{'uploaded':_0xd79434,'skipped':_0x3968b5,'failed':_0x777f1},'message':_0x1ed315(0x1d4)+_0xd79434[_0x1ed315(0x1b1)]+_0x1ed315(0x1db)+_0x3968b5['length']+_0x1ed315(0x1c8)+_0x777f1['length']+_0x1ed315(0x1d5)};}};async function getTargetFunctions(_0x3102c2,_0x354aaf){const _0x21ec09=a24_0x20e35d,_0x538dd9=_0x354aaf['str']('type'),_0x4d84b8=_0x354aaf[_0x21ec09(0x1ac)]('name'),_0x3a2229=normalizeBffType(_0x538dd9)??undefined;if(_0x4d84b8&&!_0x3a2229)throw CliErrors['validation']('--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.');const _0x3a8747=await scanLocalBffFunctions(_0x3102c2,_0x3a2229);if(_0x4d84b8){const _0x5bd98f=_0x3a8747[_0x21ec09(0x1a5)](_0x35b740=>_0x35b740[_0x21ec09(0x1df)]===_0x4d84b8);if(_0x5bd98f[_0x21ec09(0x1b1)]===0x0)throw CliErrors[_0x21ec09(0x1cf)](_0x21ec09(0x1d1)+_0x3a2229+'/'+_0x4d84b8);return _0x5bd98f;}return _0x3a8747;}async function buildHookMaps(_0x313f86,_0x5570d7,_0xe5d9c6,_0x3b8ee3){const _0x3da270=a24_0x20e35d,_0x5b79b5=_0xe5d9c6['some'](_0x5058c5=>_0x5058c5[_0x3da270(0x1ba)]===_0x3da270(0x1ad));if(!_0x5b79b5)return{'aliasToDatasetCode':new Map(),'datasetCodeToId':new Map()};const _0x2cd474=loadAliasMap(_0x5570d7),_0x383b3b=new Map(_0x2cd474['map'](_0x1803cc=>[_0x1803cc[_0x3da270(0x1bb)],_0x1803cc['datasetCode']]));for(const _0x307979 of Object[_0x3da270(0x1b9)](_0x3b8ee3['functions'])){_0x307979[_0x3da270(0x1bb)]&&_0x307979[_0x3da270(0x1a1)]&&!_0x383b3b[_0x3da270(0x1e0)](_0x307979[_0x3da270(0x1bb)])&&_0x383b3b['set'](_0x307979[_0x3da270(0x1bb)],_0x307979[_0x3da270(0x1a1)]);}const _0x1cd7b3=await listDatasets(_0x313f86),_0x402de2=new Map(_0x1cd7b3[_0x3da270(0x1c3)](_0x451c03=>[_0x451c03['code'],_0x451c03['id']]));return{'aliasToDatasetCode':_0x383b3b,'datasetCodeToId':_0x402de2};}function a24_0x1e59(_0x3758e0,_0x2b1670){_0x3758e0=_0x3758e0-0x19f;const _0x5a942f=a24_0x5a94();let _0x1e59ef=_0x5a942f[_0x3758e0];return _0x1e59ef;}async function uploadSingleFunction(_0x524472,_0x412db5,_0x39758a,_0x3561a2){const _0x345e9f=a24_0x20e35d,_0x56f927=await readFile(_0x412db5['filePath'],_0x345e9f(0x1b0)),_0x2d2964=await computeFileHash(_0x412db5['filePath']),_0x3b54ae=_0x39758a[_0x345e9f(0x1be)][_0x412db5['lockKey']];if(_0x3b54ae?.[_0x345e9f(0x1b4)]&&_0x3b54ae[_0x345e9f(0x1a4)]==null)throw CliErrors[_0x345e9f(0x1cf)](_0x412db5[_0x345e9f(0x1ab)]+':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.');let _0x3d691d=extractScriptDescription(_0x56f927);if(!_0x3d691d&&_0x3b54ae?.['remoteId']){const _0xbb968c=await getBffScriptInfo(_0x3b54ae[_0x345e9f(0x1b4)]);_0x3d691d=_0xbb968c[_0x345e9f(0x1d8)]||undefined;}const _0x5b50e8={'appCode':_0x524472,'functionName':_0x412db5[_0x345e9f(0x1df)],'scriptType':_0x412db5[_0x345e9f(0x1ba)],'scriptContent':_0x56f927};if(_0x3b54ae?.[_0x345e9f(0x1b4)])_0x5b50e8['id']=_0x3b54ae[_0x345e9f(0x1b4)];if(_0x3b54ae?.['version']!=null)_0x5b50e8[_0x345e9f(0x1a4)]=_0x3b54ae['version'];if(_0x3d691d)_0x5b50e8['description']=_0x3d691d;if(_0x412db5['type']===_0x345e9f(0x1ad)){const _0x30903f=_0x412db5[_0x345e9f(0x1bb)];if(!_0x30903f||!_0x412db5[_0x345e9f(0x1cd)]||!_0x412db5['functionNode'])throw CliErrors[_0x345e9f(0x1cf)](_0x345e9f(0x1dd)+_0x412db5[_0x345e9f(0x1ab)]);const _0x53d6ae=_0x3561a2['aliasToDatasetCode']['get'](_0x30903f)??_0x3b54ae?.[_0x345e9f(0x1a1)]??_0x30903f,_0x28358a=_0x3561a2[_0x345e9f(0x1d7)]['get'](_0x53d6ae);if(!_0x28358a)throw CliErrors[_0x345e9f(0x1cf)](_0x345e9f(0x1ce)+_0x30903f+'\x22.\x20'+('Run\x20`'+CLI_BIN_NAME+_0x345e9f(0x1bd)));_0x5b50e8[_0x345e9f(0x1e3)]=_0x28358a,_0x5b50e8[_0x345e9f(0x1cd)]=_0x412db5['operationType'],_0x5b50e8[_0x345e9f(0x1bf)]=_0x412db5[_0x345e9f(0x1bf)];}const _0x545d20=await saveBffScript(_0x5b50e8),_0xbc9b84=await getBffScriptInfo(_0x545d20),_0xda3092={'hash':_0x2d2964,'remoteId':_0x545d20,'version':_0xbc9b84[_0x345e9f(0x1a4)]};if(_0x412db5['type']===_0x345e9f(0x1ad)){const _0x37da2a=_0x412db5[_0x345e9f(0x1bb)],_0x269a78=_0x3561a2[_0x345e9f(0x1da)][_0x345e9f(0x1a9)](_0x37da2a)??_0x3b54ae?.[_0x345e9f(0x1a1)]??_0x37da2a;_0x3561a2['aliasToDatasetCode'][_0x345e9f(0x1e0)](_0x37da2a)?_0xda3092[_0x345e9f(0x1bb)]=_0x37da2a:_0xda3092[_0x345e9f(0x1bb)]=_0x3b54ae?.['alias'],_0xda3092['datasetCode']=_0x269a78,_0xda3092[_0x345e9f(0x1cd)]=_0x412db5[_0x345e9f(0x1cd)],_0xda3092['functionNode']=_0x412db5[_0x345e9f(0x1bf)];}_0x39758a[_0x345e9f(0x1be)][_0x412db5[_0x345e9f(0x1ab)]]=_0xda3092;}function a24_0x5a94(){const _0x4f2207=['\x20uploaded,\x20','force','Incomplete\x20HOOK\x20path:\x20','320IguGfK','name','has','10NONLPq','Push\x20only\x20this\x20script\x20type','datasetId','apiDir','Force\x20push\x20ignoring\x20hash\x20protection','Would\x20push\x20','datasetCode','146682XSWOyJ','boolean','version','filter','filePath','high-risk-write','appCode','get','/api/management/library/scripts/save','lockKey','str','HOOK','lockFilePath','\x20file(s)','utf8','length','string','4ZMwXCo','remoteId','push','COMMON','Push\x20local\x20BFF\x20scripts\x20to\x20remote','toISOString','values','type','alias','7719503MgByIB','\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.','functions','functionNode','320PxpcQh','scriptsWorkspaceRoot','176340USwoqK','map','message','hash','329007WOOvqq','27691068LiDVFT','\x20skipped,\x20','7122EOKUUT','1099xeHJLd','4243EqwMhb','bff','operationType','Cannot\x20resolve\x20dataset\x20for\x20\x22','validation','Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)','Local\x20function\x20not\x20found:\x20','bool','unchanged','Push\x20complete:\x20','\x20failed','ENDPOINT','datasetCodeToId','description','POST','aliasToDatasetCode'];a24_0x5a94=function(){return _0x4f2207;};return a24_0x5a94();}
|
|
1
|
+
const a30_0x2e997e=a30_0x7fae;(function(_0x10d301,_0x33e45b){const _0x3c763c=a30_0x7fae,_0x32031f=_0x10d301();while(!![]){try{const _0x4cc3ce=parseInt(_0x3c763c(0x15c))/0x1*(-parseInt(_0x3c763c(0x15a))/0x2)+parseInt(_0x3c763c(0x158))/0x3+-parseInt(_0x3c763c(0x13c))/0x4+-parseInt(_0x3c763c(0x138))/0x5+parseInt(_0x3c763c(0x12f))/0x6+-parseInt(_0x3c763c(0x13b))/0x7+parseInt(_0x3c763c(0x142))/0x8;if(_0x4cc3ce===_0x33e45b)break;else _0x32031f['push'](_0x32031f['shift']());}catch(_0x30a524){_0x32031f['push'](_0x32031f['shift']());}}}(a30_0x4002,0xa15e2));import{readFile}from'node:fs/promises';import{saveBffScript,getBffScriptInfo,listDatasets}from'../../core/api-client.js';function a30_0x7fae(_0x38200e,_0x5f1987){_0x38200e=_0x38200e-0x12d;const _0x400209=a30_0x4002();let _0x7fae4=_0x400209[_0x38200e];return _0x7fae4;}import{loadAliasMap}from'../../core/alias-resolver.js';import{loadBffProjectConfig}from'../../core/bff/config.js';import{normalizeBffType,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile,writeBffLockFile}from'../../core/bff/lock.js';function a30_0x4002(){const _0x3940bd=['boolean','appCode','3451770VOGbrE','get','filter','hash','Run\x20`','message','datasetCode','version','Push\x20local\x20BFF\x20scripts\x20to\x20remote','5974705WcjSek','type','map','7725718XAMoUT','2428544rNleEK','\x20failed','Local\x20function\x20not\x20found:\x20','functions','\x20local\x20BFF\x20script(s)\x20for\x20push','\x20api\x20pull`\x20to\x20refresh\x20api.ts,\x20or\x20verify\x20the\x20dataset\x20exists.','19273784VluEFn','would_push','\x20skipped,\x20','lockKey',':\x20missing\x20remote\x20version.\x20Run\x20`push`\x20after\x20`pull`\x20to\x20sync\x20version\x20info.','code','datasetCodeToId','push','lockFilePath','POST','description','unchanged','apiDir','filePath','operationType','\x20uploaded,\x20','str','functionNode','aliasToDatasetCode','No\x20local\x20BFF\x20functions\x20found.','force','remoteId','2329548LaApwX','HOOK','388642xSGQqa','name','1YDmgeZ','toISOString','Cannot\x20resolve\x20dataset\x20for\x20\x22','Would\x20inspect\x20','/api/management/library/scripts/save','COMMON','string','Push\x20complete:\x20','has','length','alias','bool','high-risk-write','validation','scriptsRoot','lastSync'];a30_0x4002=function(){return _0x3940bd;};return a30_0x4002();}import{extractScriptDescription}from'../../core/bff/utils.js';import{CliErrors}from'../../errors.js';import{CLI_BIN_NAME}from'../../constant/cli.js';export const bffPush={'service':'bff','command':'push','description':a30_0x2e997e(0x137),'risk':a30_0x2e997e(0x168),'flags':[{'name':'type','type':a30_0x2e997e(0x162),'description':'Push\x20only\x20this\x20script\x20type','enum':[a30_0x2e997e(0x161),'ENDPOINT',a30_0x2e997e(0x159)]},{'name':'name','type':'string','description':'Push\x20only\x20the\x20named\x20function\x20(requires\x20--type)'},{'name':a30_0x2e997e(0x156),'type':a30_0x2e997e(0x12d),'description':'Force\x20push\x20ignoring\x20hash\x20protection'}],async 'dryRun'(_0x4126c6){const _0x17729a=a30_0x2e997e,_0x17c73a=loadBffProjectConfig(_0x4126c6[_0x17729a(0x12e)]),_0x130fd0=await readBffLockFile(_0x17c73a[_0x17729a(0x14a)]),{appLock:_0x44a2b0}=ensureLockScope(_0x130fd0??createEmptyBffLock(),_0x4126c6[_0x17729a(0x12e)],_0x17c73a['scriptsRoot'],_0x17729a(0x149)),_0x51c1da=await getTargetFunctions(_0x17c73a,_0x4126c6),_0x2a40a5=_0x4126c6[_0x17729a(0x167)](_0x17729a(0x156)),_0x47328f=[];for(const _0x16cb7f of _0x51c1da){const _0x396687=await computeFileHash(_0x16cb7f[_0x17729a(0x14f)]),_0x11d468=_0x44a2b0[_0x17729a(0x13f)][_0x16cb7f[_0x17729a(0x145)]],_0x52786f=!!_0x11d468&&_0x11d468[_0x17729a(0x132)]===_0x396687;_0x47328f[_0x17729a(0x149)]({'lockKey':_0x16cb7f[_0x17729a(0x145)],'filePath':_0x16cb7f[_0x17729a(0x14f)],'remoteId':_0x11d468?.['remoteId']??null,'mode':_0x11d468?.[_0x17729a(0x157)]?'update':'create','status':!_0x2a40a5&&_0x52786f?'unchanged':_0x17729a(0x143)});}return{'method':_0x17729a(0x14b),'url':_0x17729a(0x160),'body':{'appCode':_0x4126c6[_0x17729a(0x12e)],'force':_0x2a40a5,'files':_0x47328f},'description':_0x17729a(0x15f)+_0x47328f['length']+_0x17729a(0x140)};},async 'execute'(_0x39bd0c){const _0x4b5d4b=a30_0x2e997e,_0xa23527=loadBffProjectConfig(_0x39bd0c[_0x4b5d4b(0x12e)]),_0x544201=await readBffLockFile(_0xa23527[_0x4b5d4b(0x14a)]),{lockData:_0x4dba40,appLock:_0x528e78}=ensureLockScope(_0x544201??createEmptyBffLock(),_0x39bd0c[_0x4b5d4b(0x12e)],_0xa23527[_0x4b5d4b(0x16a)],_0x4b5d4b(0x149)),_0xcf4d86=await getTargetFunctions(_0xa23527,_0x39bd0c);if(_0xcf4d86['length']===0x0)return{'ok':!![],'data':{'uploaded':[],'skipped':[],'failed':[]},'message':_0x4b5d4b(0x155)};const _0x3be652=_0x39bd0c[_0x4b5d4b(0x167)]('force'),_0x15765a=await buildHookMaps(_0x39bd0c[_0x4b5d4b(0x12e)],_0x39bd0c[_0x4b5d4b(0x14e)],_0xcf4d86,_0x528e78),_0x4dd4db=[],_0xaabe11=[],_0x211030=[];for(const _0x2c75b9 of _0xcf4d86){const _0x47585b=await computeFileHash(_0x2c75b9[_0x4b5d4b(0x14f)]),_0x1ff9d3=_0x528e78[_0x4b5d4b(0x13f)][_0x2c75b9['lockKey']];if(!_0x3be652&&_0x1ff9d3&&_0x1ff9d3[_0x4b5d4b(0x132)]===_0x47585b){_0xaabe11[_0x4b5d4b(0x149)]({'lockKey':_0x2c75b9[_0x4b5d4b(0x145)],'reason':_0x4b5d4b(0x14d)});continue;}try{await uploadSingleFunction(_0x39bd0c[_0x4b5d4b(0x12e)],_0x2c75b9,_0x528e78,_0x15765a);const _0x35eed6=_0x528e78[_0x4b5d4b(0x13f)][_0x2c75b9['lockKey']];_0x4dd4db[_0x4b5d4b(0x149)]({'lockKey':_0x2c75b9[_0x4b5d4b(0x145)],'remoteId':_0x35eed6?.[_0x4b5d4b(0x157)]??0x0});}catch(_0x462f59){_0x211030['push']({'lockKey':_0x2c75b9['lockKey'],'error':_0x462f59 instanceof Error?_0x462f59[_0x4b5d4b(0x134)]:String(_0x462f59)});}}return _0x528e78[_0x4b5d4b(0x16b)]=new Date()[_0x4b5d4b(0x15d)](),await writeBffLockFile(_0xa23527[_0x4b5d4b(0x14a)],_0x4dba40),{'ok':_0x211030[_0x4b5d4b(0x165)]===0x0,'data':{'uploaded':_0x4dd4db,'skipped':_0xaabe11,'failed':_0x211030},'message':_0x4b5d4b(0x163)+_0x4dd4db[_0x4b5d4b(0x165)]+_0x4b5d4b(0x151)+_0xaabe11[_0x4b5d4b(0x165)]+_0x4b5d4b(0x144)+_0x211030['length']+_0x4b5d4b(0x13d)};}};async function getTargetFunctions(_0x13c8f6,_0x327371){const _0x2c500f=a30_0x2e997e,_0x30cb8f=_0x327371[_0x2c500f(0x152)](_0x2c500f(0x139)),_0x393038=_0x327371[_0x2c500f(0x152)](_0x2c500f(0x15b)),_0x2df2ba=normalizeBffType(_0x30cb8f)??undefined;if(_0x393038&&!_0x2df2ba)throw CliErrors['validation']('--name\x20requires\x20--type\x20to\x20identify\x20the\x20function.');const _0x59509b=await scanLocalBffFunctions(_0x13c8f6,_0x2df2ba);if(_0x393038){const _0x21e5ee=_0x59509b[_0x2c500f(0x131)](_0x35ec99=>_0x35ec99[_0x2c500f(0x15b)]===_0x393038);if(_0x21e5ee[_0x2c500f(0x165)]===0x0)throw CliErrors[_0x2c500f(0x169)](_0x2c500f(0x13e)+_0x2df2ba+'/'+_0x393038);return _0x21e5ee;}return _0x59509b;}async function buildHookMaps(_0x33149a,_0x3e2754,_0x542812,_0x3f6b9d){const _0x4e35e9=a30_0x2e997e,_0x308cc7=_0x542812['some'](_0x291c45=>_0x291c45[_0x4e35e9(0x139)]===_0x4e35e9(0x159));if(!_0x308cc7)return{'aliasToDatasetCode':new Map(),'datasetCodeToId':new Map()};const _0x3ee748=loadAliasMap(_0x3e2754,_0x33149a),_0x3abe96=new Map(_0x3ee748[_0x4e35e9(0x13a)](_0x249e20=>[_0x249e20['alias'],_0x249e20['datasetCode']]));for(const _0x42cce0 of Object['values'](_0x3f6b9d[_0x4e35e9(0x13f)])){_0x42cce0['alias']&&_0x42cce0[_0x4e35e9(0x135)]&&!_0x3abe96[_0x4e35e9(0x164)](_0x42cce0[_0x4e35e9(0x166)])&&_0x3abe96['set'](_0x42cce0[_0x4e35e9(0x166)],_0x42cce0[_0x4e35e9(0x135)]);}const _0x4279d1=await listDatasets(_0x33149a),_0xd7c4d9=new Map(_0x4279d1[_0x4e35e9(0x13a)](_0x13e27c=>[_0x13e27c[_0x4e35e9(0x147)],_0x13e27c['id']]));return{'aliasToDatasetCode':_0x3abe96,'datasetCodeToId':_0xd7c4d9};}async function uploadSingleFunction(_0xd255fe,_0x8008e4,_0x8b5beb,_0x3edbc7){const _0x28e8eb=a30_0x2e997e,_0x472481=await readFile(_0x8008e4['filePath'],'utf8'),_0x217cac=await computeFileHash(_0x8008e4[_0x28e8eb(0x14f)]),_0x5ccbdb=_0x8b5beb[_0x28e8eb(0x13f)][_0x8008e4[_0x28e8eb(0x145)]];if(_0x5ccbdb?.[_0x28e8eb(0x157)]&&_0x5ccbdb[_0x28e8eb(0x136)]==null)throw CliErrors['validation'](_0x8008e4[_0x28e8eb(0x145)]+_0x28e8eb(0x146));let _0x2cebf5=extractScriptDescription(_0x472481);if(!_0x2cebf5&&_0x5ccbdb?.[_0x28e8eb(0x157)]){const _0x38fdcf=await getBffScriptInfo(_0x5ccbdb[_0x28e8eb(0x157)]);_0x2cebf5=_0x38fdcf[_0x28e8eb(0x14c)]||undefined;}const _0x85e41c={'appCode':_0xd255fe,'functionName':_0x8008e4['name'],'scriptType':_0x8008e4['type'],'scriptContent':_0x472481};if(_0x5ccbdb?.[_0x28e8eb(0x157)])_0x85e41c['id']=_0x5ccbdb[_0x28e8eb(0x157)];if(_0x5ccbdb?.[_0x28e8eb(0x136)]!=null)_0x85e41c[_0x28e8eb(0x136)]=_0x5ccbdb['version'];if(_0x2cebf5)_0x85e41c[_0x28e8eb(0x14c)]=_0x2cebf5;if(_0x8008e4[_0x28e8eb(0x139)]===_0x28e8eb(0x159)){const _0x23e547=_0x8008e4[_0x28e8eb(0x166)];if(!_0x23e547||!_0x8008e4['operationType']||!_0x8008e4[_0x28e8eb(0x153)])throw CliErrors[_0x28e8eb(0x169)]('Incomplete\x20HOOK\x20path:\x20'+_0x8008e4[_0x28e8eb(0x145)]);const _0x4fd4bb=_0x3edbc7[_0x28e8eb(0x154)][_0x28e8eb(0x130)](_0x23e547)??_0x5ccbdb?.[_0x28e8eb(0x135)]??_0x23e547,_0x1c176e=_0x3edbc7[_0x28e8eb(0x148)][_0x28e8eb(0x130)](_0x4fd4bb);if(!_0x1c176e)throw CliErrors[_0x28e8eb(0x169)](_0x28e8eb(0x15e)+_0x23e547+'\x22.\x20'+(_0x28e8eb(0x133)+CLI_BIN_NAME+_0x28e8eb(0x141)));_0x85e41c['datasetId']=_0x1c176e,_0x85e41c[_0x28e8eb(0x150)]=_0x8008e4[_0x28e8eb(0x150)],_0x85e41c[_0x28e8eb(0x153)]=_0x8008e4[_0x28e8eb(0x153)];}const _0x4e7254=await saveBffScript(_0x85e41c),_0x1353d7=await getBffScriptInfo(_0x4e7254),_0x4512ba={'hash':_0x217cac,'remoteId':_0x4e7254,'version':_0x1353d7[_0x28e8eb(0x136)]};if(_0x8008e4[_0x28e8eb(0x139)]==='HOOK'){const _0x3e67a8=_0x8008e4['alias'],_0x4727ea=_0x3edbc7[_0x28e8eb(0x154)][_0x28e8eb(0x130)](_0x3e67a8)??_0x5ccbdb?.[_0x28e8eb(0x135)]??_0x3e67a8;_0x3edbc7[_0x28e8eb(0x154)][_0x28e8eb(0x164)](_0x3e67a8)?_0x4512ba[_0x28e8eb(0x166)]=_0x3e67a8:_0x4512ba[_0x28e8eb(0x166)]=_0x5ccbdb?.[_0x28e8eb(0x166)],_0x4512ba[_0x28e8eb(0x135)]=_0x4727ea,_0x4512ba[_0x28e8eb(0x150)]=_0x8008e4['operationType'],_0x4512ba[_0x28e8eb(0x153)]=_0x8008e4['functionNode'];}_0x8b5beb['functions'][_0x8008e4['lockKey']]=_0x4512ba;}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a31_0x3ab361=a31_0x387a;(function(_0x2a931e,_0x236684){const _0x5b3056=a31_0x387a,_0x5a1f44=_0x2a931e();while(!![]){try{const _0xcbb0d7=parseInt(_0x5b3056(0x126))/0x1*(parseInt(_0x5b3056(0x115))/0x2)+-parseInt(_0x5b3056(0x116))/0x3*(-parseInt(_0x5b3056(0x11d))/0x4)+parseInt(_0x5b3056(0x110))/0x5+-parseInt(_0x5b3056(0x111))/0x6*(parseInt(_0x5b3056(0x120))/0x7)+parseInt(_0x5b3056(0x124))/0x8*(-parseInt(_0x5b3056(0x123))/0x9)+-parseInt(_0x5b3056(0x125))/0xa+-parseInt(_0x5b3056(0x127))/0xb;if(_0xcbb0d7===_0x236684)break;else _0x5a1f44['push'](_0x5a1f44['shift']());}catch(_0x25820e){_0x5a1f44['push'](_0x5a1f44['shift']());}}}(a31_0x17ad,0xe4524));import{listBffScripts,getBffScriptStatistics}from'../../core/api-client.js';import{loadAliasMap}from'../../core/alias-resolver.js';import{loadBffProjectConfig}from'../../core/bff/config.js';function a31_0x387a(_0x5048bf,_0x5a47f0){_0x5048bf=_0x5048bf-0x10a;const _0x17ada1=a31_0x17ad();let _0x387aac=_0x17ada1[_0x5048bf];return _0x387aac;}import{createHookLocationMap,resolveRemoteScriptTarget,scanLocalBffFunctions}from'../../core/bff/file-system.js';import{computeFileHash}from'../../core/bff/hash.js';import{createEmptyBffLock,ensureLockScope,readBffLockFile}from'../../core/bff/lock.js';function a31_0x17ad(){const _0x5c2c0f=['\x20added,\x20','bool','18REjTMi','1588184SkwOAF','3373200wqQlXa','281ptfZsz','18026690WArlQC','map','push','\x20remote-only','remote','length','lockFilePath','filePath','datasetCode','bff','appCode','261780yYxuMc','1734ZwsOFL','\x20modified,\x20','apiDir','functions','11254MRgPxL','83595IpuGIB','lockKey','alias','Check\x20local\x20BFF\x20sync\x20status\x20against\x20lock\x20file','all','boolean','has','260KoJsFv','scriptsRoot','status','3304ItQSoB'];a31_0x17ad=function(){return _0x5c2c0f;};return a31_0x17ad();}export const bffStatus={'service':a31_0x3ab361(0x10e),'command':a31_0x3ab361(0x11f),'description':a31_0x3ab361(0x119),'risk':'read','flags':[{'name':a31_0x3ab361(0x12b),'type':a31_0x3ab361(0x11b),'description':'Also\x20check\x20for\x20remote-only\x20scripts\x20not\x20present\x20locally'}],async 'execute'(_0x3a83fb){const _0x1018d5=a31_0x3ab361,_0x2ab561=loadBffProjectConfig(_0x3a83fb[_0x1018d5(0x10f)]),_0xf565a=await readBffLockFile(_0x2ab561[_0x1018d5(0x10b)]),{appLock:_0x13a720}=ensureLockScope(_0xf565a??createEmptyBffLock(),_0x3a83fb['appCode'],_0x2ab561[_0x1018d5(0x11e)],'status'),_0x1cbf36=await scanLocalBffFunctions(_0x2ab561),_0x29e2e4=[],_0x4e2607=[],_0x58245f=[];for(const _0x4d112d of _0x1cbf36){const _0x4d5ea8=await computeFileHash(_0x4d112d[_0x1018d5(0x10c)]),_0x19417c=_0x13a720['functions'][_0x4d112d[_0x1018d5(0x117)]];if(!_0x19417c)_0x29e2e4[_0x1018d5(0x129)](_0x4d112d[_0x1018d5(0x117)]);else _0x19417c['hash']!==_0x4d5ea8?_0x4e2607['push'](_0x4d112d[_0x1018d5(0x117)]):_0x58245f['push'](_0x4d112d[_0x1018d5(0x117)]);}const _0x1de5d1=[];if(_0x3a83fb[_0x1018d5(0x122)](_0x1018d5(0x12b))){const _0x41353f=loadAliasMap(_0x3a83fb[_0x1018d5(0x113)],_0x3a83fb['appCode']),_0x234501=new Map(_0x41353f['map'](_0x55f35c=>[_0x55f35c[_0x1018d5(0x10d)],_0x55f35c[_0x1018d5(0x118)]])),[_0xcc7d03,_0x53f7be]=await Promise[_0x1018d5(0x11a)]([listBffScripts(_0x3a83fb['appCode']),getBffScriptStatistics(_0x3a83fb[_0x1018d5(0x10f)])]),_0x560988=createHookLocationMap(_0x53f7be),_0x301580=new Set(_0x1cbf36[_0x1018d5(0x128)](_0x370074=>_0x370074[_0x1018d5(0x117)]));for(const _0x320172 of _0xcc7d03){const _0xd9bb1b=resolveRemoteScriptTarget(_0x2ab561,_0x320172,_0x560988,_0x13a720[_0x1018d5(0x114)],_0x234501);_0xd9bb1b&&!_0x301580[_0x1018d5(0x11c)](_0xd9bb1b['lockKey'])&&_0x1de5d1[_0x1018d5(0x129)](_0xd9bb1b['lockKey']);}}const _0x379497=_0x29e2e4[_0x1018d5(0x10a)]===0x0&&_0x4e2607['length']===0x0&&_0x1de5d1[_0x1018d5(0x10a)]===0x0;return{'ok':!![],'data':{'added':_0x29e2e4,'modified':_0x4e2607,'unchanged':_0x58245f,'remoteOnly':_0x1de5d1},'message':_0x379497?'All\x20BFF\x20scripts\x20are\x20in\x20sync.':_0x29e2e4[_0x1018d5(0x10a)]+_0x1018d5(0x121)+_0x4e2607['length']+_0x1018d5(0x112)+_0x58245f[_0x1018d5(0x10a)]+'\x20unchanged'+(_0x1de5d1['length']>0x0?',\x20'+_0x1de5d1[_0x1018d5(0x10a)]+_0x1018d5(0x12a):'')};}};
|
package/lib/commands/build.js
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
function a32_0x57df(_0x2703dd,_0x239603){_0x2703dd=_0x2703dd-0xed;const _0x3a70da=a32_0x3a70();let _0x57df9a=_0x3a70da[_0x2703dd];return _0x57df9a;}const a32_0x571403=a32_0x57df;(function(_0x17ef3f,_0x45b661){const _0x2f3f1d=a32_0x57df,_0x326ad2=_0x17ef3f();while(!![]){try{const _0x5e4593=parseInt(_0x2f3f1d(0xf4))/0x1+-parseInt(_0x2f3f1d(0x101))/0x2*(parseInt(_0x2f3f1d(0x10b))/0x3)+-parseInt(_0x2f3f1d(0xff))/0x4+parseInt(_0x2f3f1d(0xee))/0x5+-parseInt(_0x2f3f1d(0xf5))/0x6*(parseInt(_0x2f3f1d(0x102))/0x7)+parseInt(_0x2f3f1d(0xf2))/0x8*(parseInt(_0x2f3f1d(0xf3))/0x9)+parseInt(_0x2f3f1d(0xfc))/0xa;if(_0x5e4593===_0x45b661)break;else _0x326ad2['push'](_0x326ad2['shift']());}catch(_0x5b566b){_0x326ad2['push'](_0x326ad2['shift']());}}}(a32_0x3a70,0xb218e));import{delimiter,join}from'node:path';function a32_0x3a70(){const _0x3510b0=['1800970jMGjqy','message','项目构建成功','toString','48wskQBC','852273efNDLn','413379HBrDbT','5081082LYtzyO','项目构建失败','.bin','close','logger','inherit','npm','17026200GHRacV','cwd','项目构建出错','649856NyQJVm','data','1244UQHejB','7dvWoxq','npm\x20run\x20build\x20exited\x20with\x20code\x20','info','npm\x20run\x20build','now','开始构建项目','trim','success','error','6297auOdeE','build','stderr','run'];a32_0x3a70=function(){return _0x3510b0;};return a32_0x3a70();}import{spawn}from'node:child_process';function runBuild(_0x869533){return new Promise((_0x4c0673,_0x383974)=>{const _0x510143=a32_0x57df,_0x2cfb60=Date[_0x510143(0x106)]();_0x869533[_0x510143(0xf9)][_0x510143(0x104)](_0x510143(0x10c),_0x510143(0x107),{'command':'npm\x20run\x20build'});let _0x68cdaf='';const _0x150e1c=spawn(_0x510143(0xfb),[_0x510143(0xed),_0x510143(0x10c)],{'stdio':['inherit',_0x510143(0xfa),'pipe'],'shell':!![],'env':{...process.env,'PATH':''+join(process[_0x510143(0xfd)](),'node_modules',_0x510143(0xf7))+delimiter+process.env.PATH}});_0x150e1c['stderr']?.['on'](_0x510143(0x100),_0x1743ca=>{const _0x1d525d=_0x510143;_0x68cdaf+=_0x1743ca[_0x1d525d(0xf1)]();}),_0x150e1c['on'](_0x510143(0xf8),_0xcdce77=>{const _0x3db657=_0x510143,_0x5c648e=Date['now']()-_0x2cfb60;if(_0xcdce77===0x0||_0xcdce77===null)_0x869533[_0x3db657(0xf9)][_0x3db657(0x109)](_0x3db657(0x10c),_0x3db657(0xf0),_0x5c648e),_0x4c0673();else{const _0x39a515={'exitCode':_0xcdce77,'duration':_0x5c648e,'command':_0x3db657(0x105),'cwd':process['cwd']()};_0x68cdaf[_0x3db657(0x108)]()&&(_0x39a515[_0x3db657(0x10d)]=_0x68cdaf['trim']()),_0x869533[_0x3db657(0xf9)][_0x3db657(0x10a)](_0x3db657(0x10c),_0x3db657(0xf6),_0x39a515),_0x383974(new Error(_0x3db657(0x103)+_0xcdce77));}}),_0x150e1c['on'](_0x510143(0x10a),_0x281d87=>{const _0x4eb8c3=_0x510143,_0x4b4571=Date[_0x4eb8c3(0x106)]()-_0x2cfb60;_0x869533[_0x4eb8c3(0xf9)][_0x4eb8c3(0x10a)](_0x4eb8c3(0x10c),_0x4eb8c3(0xfe),{'error':_0x281d87[_0x4eb8c3(0xef)],'duration':_0x4b4571,'stderr':_0x68cdaf['trim']()||undefined}),_0x383974(_0x281d87);});});}export const buildCommand={'name':a32_0x571403(0x10c),'description':'Build\x20project',async 'run'(_0x1ed986,_0x56b1e0,_0x538879){await runBuild(_0x1ed986);}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
const a33_0x2a94e9=a33_0x31eb;(function(_0xe8fcab,_0x15763d){const _0x478e7c=a33_0x31eb,_0x3e39ad=_0xe8fcab();while(!![]){try{const _0x510b49=parseInt(_0x478e7c(0x1db))/0x1+-parseInt(_0x478e7c(0x1d6))/0x2*(parseInt(_0x478e7c(0x1da))/0x3)+-parseInt(_0x478e7c(0x1bb))/0x4*(-parseInt(_0x478e7c(0x1ca))/0x5)+-parseInt(_0x478e7c(0x1c1))/0x6+parseInt(_0x478e7c(0x1d3))/0x7+parseInt(_0x478e7c(0x1d2))/0x8+parseInt(_0x478e7c(0x1d1))/0x9;if(_0x510b49===_0x15763d)break;else _0x3e39ad['push'](_0x3e39ad['shift']());}catch(_0x16b091){_0x3e39ad['push'](_0x3e39ad['shift']());}}}(a33_0xb34b,0xab8b4));import a33_0x5cb1bd from'chalk';import a33_0xb9f084 from'ora';import a33_0x33d5d0 from'semver';import{execa}from'execa';import{NPM_PACKAGE_NAME}from'../constant/cli.js';function a33_0xb34b(){const _0x322351=['pipe','succeed','Unable\x20to\x20check\x20for\x20updates\x20(network\x20error)','Version\x20comparison\x20failed','json','https://registry.npmjs.org/','5284386lLGSHS','9315600PCcgpL','1256367hBoykJ','cli','\x20install\x20-g\x20','2doZdsJ','version','@latest','/latest','2825727LQIUCT','375114eEFrsz','bun','toLowerCase','timeout','red','Current\x20version:\x20','Updated\x20to\x20v','log','includes','...','start','unknown','error','Checking\x20for\x20updates...','Already\x20up\x20to\x20date\x20(v','write','fail','coerce','info','2812NJuici','Unable\x20to\x20check\x20for\x20updates','\x20→\x20','execPath','Update\x20failed','gray','5264802UubRFZ','stableVersion','npm','\x20\x20Try\x20manually:\x20','install','Updating\x20via\x20','message','update','run','1535picHhI'];a33_0xb34b=function(){return _0x322351;};return a33_0xb34b();}import{VERSION,GIT_COMMIT,BUILD_TIME}from'../generated/build-info.js';import{getCdnConfig}from'../utils/cdn-config.js';function a33_0x31eb(_0x49563a,_0x5e03f7){_0x49563a=_0x49563a-0x1af;const _0xb34bd0=a33_0xb34b();let _0x31eb59=_0xb34bd0[_0x49563a];return _0x31eb59;}import{resolveNpmBin}from'../utils/platform.js';function getCurrentVersion(){const _0x3d9752=a33_0x31eb;return GIT_COMMIT!==_0x3d9752(0x1b3)?VERSION+'\x20('+GIT_COMMIT+',\x20'+BUILD_TIME['slice'](0x0,0xa)+')':VERSION;}function detectPackageManager(){const _0x7a9541=a33_0x31eb,_0x12edf6=process[_0x7a9541(0x1be)][_0x7a9541(0x1dd)]();if(_0x12edf6[_0x7a9541(0x1b0)](_0x7a9541(0x1dc)))return _0x7a9541(0x1dc);return _0x7a9541(0x1c3);}async function fetchLatestNpmVersion(){const _0x3f39bf=a33_0x31eb;try{const _0x4113e6=await fetch(_0x3f39bf(0x1d0)+NPM_PACKAGE_NAME+_0x3f39bf(0x1d9),{'signal':AbortSignal[_0x3f39bf(0x1de)](0x2710)});if(!_0x4113e6['ok'])return null;const _0x3e9c11=await _0x4113e6[_0x3f39bf(0x1cf)]();return _0x3e9c11[_0x3f39bf(0x1d7)]??null;}catch{return null;}}async function fetchLatestVersion(){const _0x5bf8e2=a33_0x31eb,_0x324509=await fetchLatestNpmVersion();if(_0x324509)return _0x324509;const _0x48976b=await getCdnConfig();return _0x48976b?.[_0x5bf8e2(0x1d4)]?.[_0x5bf8e2(0x1c2)]??null;}async function execute(_0x2896c8){const _0x2ab1aa=a33_0x31eb,_0x29efac=getCurrentVersion();console['log'](_0x2ab1aa(0x1e0)+_0x29efac);const _0x351373=a33_0xb9f084(_0x2ab1aa(0x1b5))[_0x2ab1aa(0x1b2)](),_0xd4af5=await fetchLatestVersion();if(!_0xd4af5)return _0x351373[_0x2ab1aa(0x1b8)](_0x2ab1aa(0x1cd)),console[_0x2ab1aa(0x1af)](a33_0x5cb1bd['gray']('\x20\x20Run\x20manually:\x20npm\x20install\x20-g\x20'+NPM_PACKAGE_NAME+_0x2ab1aa(0x1d8))),{'ok':![],'message':_0x2ab1aa(0x1bc)};const _0x499d3d=a33_0x33d5d0[_0x2ab1aa(0x1b9)](_0x29efac),_0x5eac7a=a33_0x33d5d0[_0x2ab1aa(0x1b9)](_0xd4af5);if(!_0x499d3d||!_0x5eac7a)return _0x351373['fail'](_0x2ab1aa(0x1ce)),{'ok':![],'message':'Version\x20comparison\x20failed'};if(!a33_0x33d5d0['lt'](_0x499d3d,_0x5eac7a))return _0x351373['succeed'](_0x2ab1aa(0x1b6)+_0xd4af5+')'),{'ok':!![]};_0x351373[_0x2ab1aa(0x1ba)]('Update\x20available:\x20'+a33_0x5cb1bd['yellow'](_0x29efac)+_0x2ab1aa(0x1bd)+a33_0x5cb1bd['green'](_0xd4af5));const _0x4fee30=detectPackageManager(),_0x213568=_0x4fee30===_0x2ab1aa(0x1c3)?resolveNpmBin(_0x2ab1aa(0x1c3)):_0x4fee30,_0x3c438a=a33_0xb9f084(_0x2ab1aa(0x1c6)+_0x4fee30+_0x2ab1aa(0x1b1))[_0x2ab1aa(0x1b2)]();try{return await execa(_0x213568,[_0x2ab1aa(0x1c5),'-g',NPM_PACKAGE_NAME+'@latest'],{'stdio':_0x2ab1aa(0x1cb)}),_0x3c438a[_0x2ab1aa(0x1cc)](_0x2ab1aa(0x1e1)+_0xd4af5),console['log'](a33_0x5cb1bd[_0x2ab1aa(0x1c0)]('\x20\x20Restart\x20your\x20terminal\x20to\x20use\x20the\x20new\x20version.')),{'ok':!![]};}catch(_0xdb65e0){return _0x3c438a[_0x2ab1aa(0x1b8)](_0x2ab1aa(0x1bf)),console[_0x2ab1aa(0x1b4)](a33_0x5cb1bd[_0x2ab1aa(0x1df)]('\x20\x20'+_0xdb65e0[_0x2ab1aa(0x1c7)])),console[_0x2ab1aa(0x1af)](a33_0x5cb1bd[_0x2ab1aa(0x1c0)](_0x2ab1aa(0x1c4)+_0x4fee30+_0x2ab1aa(0x1d5)+NPM_PACKAGE_NAME+_0x2ab1aa(0x1d8))),{'ok':![],'message':_0xdb65e0[_0x2ab1aa(0x1c7)]};}}export const updateDefinition={'service':a33_0x2a94e9(0x1c8),'command':a33_0x2a94e9(0x1c9),'description':'Update\x20rabetbase\x20CLI\x20to\x20the\x20latest\x20version','risk':a33_0x2a94e9(0x1b7),'requiresAuth':![],'requiresAppCode':![],'hasFormat':![],'flags':[],'execute':execute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x471a46,_0x25c733){const _0x269c2d=a34_0x1e05,_0x586933=_0x471a46();while(!![]){try{const _0x57c1f9=-parseInt(_0x269c2d(0x18e))/0x1*(parseInt(_0x269c2d(0x18d))/0x2)+parseInt(_0x269c2d(0x193))/0x3+parseInt(_0x269c2d(0x18f))/0x4*(-parseInt(_0x269c2d(0x18c))/0x5)+parseInt(_0x269c2d(0x190))/0x6+-parseInt(_0x269c2d(0x196))/0x7*(-parseInt(_0x269c2d(0x192))/0x8)+parseInt(_0x269c2d(0x195))/0x9+parseInt(_0x269c2d(0x194))/0xa*(parseInt(_0x269c2d(0x191))/0xb);if(_0x57c1f9===_0x25c733)break;else _0x586933['push'](_0x586933['shift']());}catch(_0x1b8a46){_0x586933['push'](_0x586933['shift']());}}}(a34_0x36d2,0x906a7));function a34_0x1e05(_0x178367,_0xac512b){_0x178367=_0x178367-0x18c;const _0x36d2bd=a34_0x36d2();let _0x1e0590=_0x36d2bd[_0x178367];return _0x1e0590;}import{codegenSdk}from'./sdk.js';import{codegenSql}from'./sql.js';export const codegenDefinitions=[codegenSdk,codegenSql];function a34_0x36d2(){const _0x259e5d=['1644201dwGaED','28bRqefm','2882605qOVbdY','113504EPvKzT','19EirgID','4sBJFjl','2335302ctzfhM','14074313sKtNQs','183008escmRt','910329XhzrLy','10XKWFDd'];a34_0x36d2=function(){return _0x259e5d;};return a34_0x36d2();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a35_0x477f76=a35_0x6bd9;(function(_0x197893,_0x16ccec){const _0x4230be=a35_0x6bd9,_0x516ca9=_0x197893();while(!![]){try{const _0xf8b7d8=-parseInt(_0x4230be(0x7c))/0x1+parseInt(_0x4230be(0x70))/0x2+-parseInt(_0x4230be(0x7f))/0x3*(parseInt(_0x4230be(0x74))/0x4)+-parseInt(_0x4230be(0x78))/0x5*(-parseInt(_0x4230be(0x6e))/0x6)+parseInt(_0x4230be(0x75))/0x7+parseInt(_0x4230be(0x81))/0x8*(-parseInt(_0x4230be(0x72))/0x9)+parseInt(_0x4230be(0x7a))/0xa*(-parseInt(_0x4230be(0x7d))/0xb);if(_0xf8b7d8===_0x16ccec)break;else _0x516ca9['push'](_0x516ca9['shift']());}catch(_0x4c254e){_0x516ca9['push'](_0x516ca9['shift']());}}}(a35_0x4ca1,0x68da3));function a35_0x6bd9(_0x3c6e95,_0x1be4e1){_0x3c6e95=_0x3c6e95-0x6b;const _0x4ca172=a35_0x4ca1();let _0x6bd9ef=_0x4ca172[_0x3c6e95];return _0x6bd9ef;}import{getOperationDetail,generateSdkCode}from'../../core/api-client.js';function a35_0x4ca1(){const _0x1fa77c=['2677048hbjtyh','name','4167UdHQCb','tableName','8jSKhDS','codegen','code','operation','892578sXXfvS','Generate\x20TypeScript\x20SDK\x20code\x20for\x20a\x20dataset\x20operation','1418006mtKcpt','sdk','6429177OYswuP','str','612AsjjsO','1245482WKkLMK','Dataset\x20alias\x20defined\x20in\x20api.ts\x20(e.g.\x20order,\x20coupon)','skip-imports','25UMqjHK','Operation\x20name\x20(e.g.\x20filter,\x20getOne,\x20create,\x20update)','10qYCBdn','string','31031EHHpVE'];a35_0x4ca1=function(){return _0x1fa77c;};return a35_0x4ca1();}import{CODE_FLAG_OPTIONAL}from'../common/flags.js';export const codegenSdk={'service':a35_0x477f76(0x6b),'command':a35_0x477f76(0x71),'description':a35_0x477f76(0x6f),'risk':'read','flags':[CODE_FLAG_OPTIONAL,{'name':'alias','type':a35_0x477f76(0x7b),'description':a35_0x477f76(0x76)},{'name':a35_0x477f76(0x6d),'type':a35_0x477f76(0x7b),'required':!![],'description':a35_0x477f76(0x79)},{'name':a35_0x477f76(0x77),'type':'boolean','description':'Omit\x20import\x20statements\x20from\x20generated\x20code'}],async 'execute'(_0x2fd78c){const _0x17c35f=a35_0x477f76,{dataset:_0x3023a8,operation:_0x26b2f8}=await getOperationDetail(_0x2fd78c['appCode'],_0x2fd78c[_0x17c35f(0x73)](_0x17c35f(0x6c)),_0x2fd78c[_0x17c35f(0x73)](_0x17c35f(0x6d))),_0xd1d4a0=generateSdkCode(_0x3023a8,_0x26b2f8,{'includeImports':!_0x2fd78c['bool'](_0x17c35f(0x77))});return{'ok':!![],'data':{'dataset':{'name':_0x3023a8[_0x17c35f(0x7e)],'code':_0x3023a8[_0x17c35f(0x6c)],'tableName':_0x3023a8[_0x17c35f(0x80)]},'operation':_0x2fd78c['str'](_0x17c35f(0x6d)),'code':_0xd1d4a0}};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a36_0x4e2271=a36_0x1605;(function(_0x3e5031,_0x2e4794){const _0x2638ba=a36_0x1605,_0x78e40d=_0x3e5031();while(!![]){try{const _0x310340=parseInt(_0x2638ba(0x17d))/0x1*(parseInt(_0x2638ba(0x16d))/0x2)+parseInt(_0x2638ba(0x178))/0x3+-parseInt(_0x2638ba(0x169))/0x4*(parseInt(_0x2638ba(0x16c))/0x5)+-parseInt(_0x2638ba(0x171))/0x6*(parseInt(_0x2638ba(0x17c))/0x7)+-parseInt(_0x2638ba(0x17f))/0x8*(parseInt(_0x2638ba(0x174))/0x9)+parseInt(_0x2638ba(0x173))/0xa+-parseInt(_0x2638ba(0x17b))/0xb*(-parseInt(_0x2638ba(0x16b))/0xc);if(_0x310340===_0x2e4794)break;else _0x78e40d['push'](_0x78e40d['shift']());}catch(_0x5a9242){_0x78e40d['push'](_0x78e40d['shift']());}}}(a36_0x5d8f,0xf027c));function a36_0x1605(_0x119b9f,_0x4f56de){_0x119b9f=_0x119b9f-0x169;const _0x5d8f3d=a36_0x5d8f();let _0x160539=_0x5d8f3d[_0x119b9f];return _0x160539;}function a36_0x5d8f(){const _0x942e98=['codegen','boolean','352OKIjZq','154gjtmre','1iradRz','Code\x20target:\x20sdk\x20(default)\x20or\x20bff','736184PeGQsL','appCode','sdk','no-imports','18604PViESK','sqlcode','1501692vPQkTL','1430oSnQqD','2677778jwsiAL','read','bff','target','395628FFFaRE','Omit\x20import\x20statements\x20from\x20generated\x20code','1080660ZdSfkR','180Hkekbu','str','sqlName','sql','460473BSCxDL'];a36_0x5d8f=function(){return _0x942e98;};return a36_0x5d8f();}import{getSqlQueryInfo,generateSqlCodeTemplate}from'../../core/api-client.js';import{SQLCODE_FLAG}from'../common/flags.js';export const codegenSql={'service':a36_0x4e2271(0x179),'command':a36_0x4e2271(0x177),'description':'Generate\x20TypeScript\x20code\x20for\x20a\x20custom\x20SQL\x20query','risk':a36_0x4e2271(0x16e),'flags':[SQLCODE_FLAG,{'name':a36_0x4e2271(0x170),'type':'string','description':a36_0x4e2271(0x17e),'default':a36_0x4e2271(0x181),'enum':[a36_0x4e2271(0x181),a36_0x4e2271(0x16f)]},{'name':'no-imports','type':a36_0x4e2271(0x17a),'description':a36_0x4e2271(0x172)}],async 'execute'(_0x328d1d){const _0x2ddd27=a36_0x4e2271,_0x3cd01e=await getSqlQueryInfo(_0x328d1d[_0x2ddd27(0x180)],_0x328d1d['str'](_0x2ddd27(0x16a))),_0x444b63=_0x328d1d[_0x2ddd27(0x175)](_0x2ddd27(0x170))||_0x2ddd27(0x181),_0x462f55=generateSqlCodeTemplate(_0x3cd01e,{'target':_0x444b63,'includeImports':!_0x328d1d['bool'](_0x2ddd27(0x182))});return{'ok':!![],'data':{'sqlCode':_0x3cd01e['sqlCode'],'sqlName':_0x3cd01e[_0x2ddd27(0x176)],'target':_0x444b63,'code':_0x462f55}};}};
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
(function(_0x44e6ef,_0x2a7fe5){const _0x2b4921=a37_0x1825,_0x1cdbd8=_0x44e6ef();while(!![]){try{const _0x40b7fb=-parseInt(_0x2b4921(0xbd))/0x1+parseInt(_0x2b4921(0xbf))/0x2*(-parseInt(_0x2b4921(0xb9))/0x3)+parseInt(_0x2b4921(0xc6))/0x4+-parseInt(_0x2b4921(0xda))/0x5*(parseInt(_0x2b4921(0xcd))/0x6)+-parseInt(_0x2b4921(0xd0))/0x7+-parseInt(_0x2b4921(0xba))/0x8+parseInt(_0x2b4921(0xd3))/0x9;if(_0x40b7fb===_0x2a7fe5)break;else _0x1cdbd8['push'](_0x1cdbd8['shift']());}catch(_0x279586){_0x1cdbd8['push'](_0x1cdbd8['shift']());}}}(a37_0x201c,0x679d0));import{input,checkbox,select}from'@inquirer/prompts';function a37_0x201c(){const _0x20da10=['无法获取远程应用列表,请手动输入。','1879972kCSmLD','获取到\x20','gray','\x0a未找到可用应用。','log','custom','\x20个应用,请选择\x20(空格勾选,\x20a=全选,\x20i=反选):','5520MgYJdi','App\x20Code:','yellow','1920800clwEoS','请选择要绑定的应用:','skip','13607622LySoRA','length','message','manual','\x0a无法获取远程应用列表,请手动输入。','appName','✎\x20自定义输入\x20appcode','2335EENvrt','\x20\x20(','(跳过,稍后通过\x20config\x20set\x20appcode\x20配置)','(跳过,稍后配置)','899733NsPifG','171192qNCpSo','map','正在获取可用应用列表...','532201qVSQBI','find','2zUuBrY','trim','(未检测到登录态,请手动输入\x20App\x20Code\x20或直接跳过)','appCode','valid','Invalid\x20App\x20Code'];a37_0x201c=function(){return _0x20da10;};return a37_0x201c();}import a37_0x4fd491 from'chalk';import{validateAppcode}from'./validate.js';import{listRemoteApps}from'../../core/api-client.js';import{withActiveCookie}from'../../utils/with-active-cookie.js';export async function promptCustomAppcode(){const _0x79fe1a=a37_0x1825,_0xe985c=await input({'message':'请输入\x20App\x20Code:','validate':_0x398b2b=>{const _0x1dbf53=a37_0x1825,_0x3654b0=validateAppcode(_0x398b2b[_0x1dbf53(0xc0)]());return _0x3654b0[_0x1dbf53(0xc3)]||_0x3654b0[_0x1dbf53(0xd5)]||_0x1dbf53(0xc4);}});return _0xe985c[_0x79fe1a(0xc0)]();}export async function promptAppSelection(_0x4102fd){const _0x220918=a37_0x1825,_0x121ed0=[{'name':a37_0x4fd491[_0x220918(0xcf)](_0x220918(0xd9)),'value':-0x1},..._0x4102fd['map']((_0x14546b,_0xf68faf)=>({'name':_0x14546b[_0x220918(0xd8)]+'\x20\x20'+a37_0x4fd491[_0x220918(0xc8)]('('+_0x14546b[_0x220918(0xc2)]+')'),'value':_0xf68faf}))],_0x173e1a=await checkbox({'message':_0x220918(0xc7)+a37_0x4fd491['cyan'](_0x4102fd['length'])+_0x220918(0xcc),'choices':_0x121ed0,'loop':![]});if(_0x173e1a['includes'](-0x1))return _0x220918(0xcb);if(_0x173e1a[_0x220918(0xd4)]===0x0)return _0x220918(0xcb);return _0x173e1a[_0x220918(0xbb)](_0x245447=>_0x4102fd[_0x245447]);}function a37_0x1825(_0x2df1ca,_0x218f00){_0x2df1ca=_0x2df1ca-0xb8;const _0x201cd7=a37_0x201c();let _0x182577=_0x201cd7[_0x2df1ca];return _0x182577;}export async function promptSingleAppSelection(_0x10a7c4){const _0x45dd73=a37_0x1825,_0x42631a=[{'name':a37_0x4fd491['gray'](_0x45dd73(0xdc)),'value':_0x45dd73(0xd2)},{'name':a37_0x4fd491[_0x45dd73(0xcf)]('✎\x20自定义输入\x20appcode'),'value':_0x45dd73(0xcb)},..._0x10a7c4[_0x45dd73(0xbb)](_0x178406=>({'name':_0x178406[_0x45dd73(0xd8)]+'\x20\x20'+a37_0x4fd491[_0x45dd73(0xc8)]('('+_0x178406[_0x45dd73(0xc2)]+')'),'value':_0x178406[_0x45dd73(0xc2)]}))],_0x5ee117=await select({'message':_0x45dd73(0xd1),'choices':_0x42631a});if(_0x5ee117===_0x45dd73(0xd2))return _0x45dd73(0xd2);if(_0x5ee117===_0x45dd73(0xcb))return _0x45dd73(0xcb);return _0x10a7c4[_0x45dd73(0xbe)](_0x49003e=>_0x49003e[_0x45dd73(0xc2)]===_0x5ee117);}export async function selectSingleAppcode(_0x20bfbf){const _0x3d6d97=a37_0x1825;if(!_0x20bfbf)return console[_0x3d6d97(0xca)](a37_0x4fd491['gray'](_0x3d6d97(0xc1))),_fallbackOrSkip();console[_0x3d6d97(0xca)](_0x3d6d97(0xbc));let _0x4d5a84;try{_0x4d5a84=await withActiveCookie(_0x20bfbf,()=>listRemoteApps());}catch(_0x59c144){console[_0x3d6d97(0xca)](a37_0x4fd491[_0x3d6d97(0xcf)](_0x3d6d97(0xc5)));if(_0x59c144 instanceof Error)console[_0x3d6d97(0xca)](a37_0x4fd491['gray'](_0x3d6d97(0xdb)+_0x59c144['message']+')'));return _fallbackOrSkip();}if(_0x4d5a84['length']===0x0)return console[_0x3d6d97(0xca)](a37_0x4fd491[_0x3d6d97(0xcf)]('未找到可用应用。')),_fallbackOrSkip();const _0x53f52c=await promptSingleAppSelection(_0x4d5a84);if(_0x53f52c===_0x3d6d97(0xd2))return'';if(_0x53f52c===_0x3d6d97(0xcb))return promptCustomAppcode();return _0x53f52c[_0x3d6d97(0xc2)];}export async function selectMultipleApps(_0x382a50){const _0x15ded3=a37_0x1825;console[_0x15ded3(0xca)]('正在获取可用应用列表...');let _0x2effff;try{_0x2effff=await withActiveCookie(_0x382a50,()=>listRemoteApps());}catch(_0x16c6d4){console['log'](_0x15ded3(0xd7));if(_0x16c6d4 instanceof Error)console[_0x15ded3(0xca)](_0x15ded3(0xdb)+_0x16c6d4[_0x15ded3(0xd5)]+')');return _0x15ded3(0xcb);}if(_0x2effff[_0x15ded3(0xd4)]===0x0)return console[_0x15ded3(0xca)](_0x15ded3(0xc9)),_0x15ded3(0xcb);return promptAppSelection(_0x2effff);}async function _fallbackOrSkip(){const _0x286d28=a37_0x1825,_0x7abb22=await select({'message':_0x286d28(0xce),'choices':[{'name':a37_0x4fd491[_0x286d28(0xc8)](_0x286d28(0xb8)),'value':_0x286d28(0xd2)},{'name':a37_0x4fd491[_0x286d28(0xcf)]('✎\x20手动输入'),'value':_0x286d28(0xd6)}]});if(_0x7abb22===_0x286d28(0xd2))return'';return promptCustomAppcode();}
|