@lovrabet/lovrabet-cli 2.2.3 → 2.2.4-beta.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/lib/cli.js +1 -1
- package/lib/commands/api-doc/index.js +1 -1
- package/lib/commands/app/cache.js +1 -1
- package/lib/commands/app/definitions.js +1 -1
- package/lib/commands/app/eligibility.js +1 -1
- package/lib/commands/app/mock-loader.js +1 -1
- package/lib/commands/app/remote-source.js +1 -1
- package/lib/commands/app/shared.js +1 -1
- package/lib/commands/app-config/get.js +1 -1
- package/lib/commands/app-config/index.js +1 -1
- package/lib/commands/artifact/index.js +1 -1
- package/lib/commands/auth/device.js +1 -1
- package/lib/commands/auth/index.js +1 -1
- package/lib/commands/auth/prompt.js +1 -1
- package/lib/commands/bff/detail.js +1 -1
- package/lib/commands/bff/exec.js +1 -1
- package/lib/commands/bff/index.js +1 -1
- package/lib/commands/cli-skill/index.js +1 -1
- package/lib/commands/common/config-policy.js +1 -1
- package/lib/commands/common/constraints.js +1 -1
- package/lib/commands/common/flags.js +1 -1
- package/lib/commands/common/local-file.js +1 -1
- package/lib/commands/config/definitions.js +1 -1
- package/lib/commands/config/shared.js +1 -1
- package/lib/commands/data/index.js +1 -1
- package/lib/commands/dataset/detail.js +1 -1
- package/lib/commands/dataset/index.js +1 -1
- package/lib/commands/dataset/list.js +1 -1
- package/lib/commands/dataset/sdk-doc.js +1 -1
- package/lib/commands/doctor.js +1 -1
- package/lib/commands/file/index.js +1 -1
- package/lib/commands/init.js +1 -1
- package/lib/commands/kb/index.js +1 -1
- package/lib/commands/logs/index.js +1 -1
- package/lib/commands/notification/config-list.d.ts +2 -0
- package/lib/commands/notification/config-list.js +1 -0
- package/lib/commands/notification/index.d.ts +2 -0
- package/lib/commands/notification/index.js +1 -0
- package/lib/commands/notification/shared.d.ts +13 -0
- package/lib/commands/notification/shared.js +1 -0
- package/lib/commands/ocr/index.js +1 -1
- package/lib/commands/permit/dataset-get.d.ts +2 -0
- package/lib/commands/permit/dataset-get.js +1 -0
- package/lib/commands/permit/dataset-set.d.ts +2 -0
- package/lib/commands/permit/dataset-set.js +1 -0
- package/lib/commands/permit/index.d.ts +2 -0
- package/lib/commands/permit/index.js +1 -0
- package/lib/commands/permit/page-get.d.ts +2 -0
- package/lib/commands/permit/page-get.js +1 -0
- package/lib/commands/permit/page-set.d.ts +2 -0
- package/lib/commands/permit/page-set.js +1 -0
- package/lib/commands/permit/role-menus-set.d.ts +2 -0
- package/lib/commands/permit/role-menus-set.js +1 -0
- package/lib/commands/permit/role-menus.d.ts +2 -0
- package/lib/commands/permit/role-menus.js +1 -0
- package/lib/commands/permit/shared.d.ts +52 -0
- package/lib/commands/permit/shared.js +1 -0
- package/lib/commands/personal-bff/index.js +1 -1
- package/lib/commands/registry.js +1 -1
- package/lib/commands/role/create.d.ts +2 -0
- package/lib/commands/role/create.js +1 -0
- package/lib/commands/role/delete.d.ts +2 -0
- package/lib/commands/role/delete.js +1 -0
- package/lib/commands/role/detail.d.ts +2 -0
- package/lib/commands/role/detail.js +1 -0
- package/lib/commands/role/index.d.ts +2 -0
- package/lib/commands/role/index.js +1 -0
- package/lib/commands/role/list.d.ts +2 -0
- package/lib/commands/role/list.js +1 -0
- package/lib/commands/role/shared.d.ts +33 -0
- package/lib/commands/role/shared.js +1 -0
- package/lib/commands/role/update.d.ts +2 -0
- package/lib/commands/role/update.js +1 -0
- package/lib/commands/role/user-add.d.ts +2 -0
- package/lib/commands/role/user-add.js +1 -0
- package/lib/commands/role/user-remove.d.ts +2 -0
- package/lib/commands/role/user-remove.js +1 -0
- package/lib/commands/schedule/index.js +1 -1
- package/lib/commands/schema.js +1 -1
- package/lib/commands/service/dynamic.js +1 -1
- package/lib/commands/service/function-name-adapter.js +1 -1
- package/lib/commands/service/index.js +1 -1
- package/lib/commands/service/registry.js +1 -1
- package/lib/commands/skill/commands/create.js +1 -1
- package/lib/commands/skill/commands/diagram.js +1 -1
- package/lib/commands/skill/commands/install.js +1 -1
- package/lib/commands/skill/commands/list.js +1 -1
- package/lib/commands/skill/commands/push.js +1 -1
- package/lib/commands/skill/commands/validate.js +1 -1
- package/lib/commands/skill/diagram.js +1 -1
- package/lib/commands/skill/flags.js +1 -1
- package/lib/commands/skill/index.js +1 -1
- package/lib/commands/skill/manifest-helpers.js +1 -1
- package/lib/commands/skill/push-execute.js +1 -1
- package/lib/commands/skill/push-flow-helpers.js +1 -1
- package/lib/commands/skill/push-retarget.js +1 -1
- package/lib/commands/skill/scopes.js +1 -1
- package/lib/commands/skill/summary.js +1 -1
- package/lib/commands/skill/templates.js +1 -1
- package/lib/commands/skill/validate.js +1 -1
- package/lib/commands/sql/detail.js +1 -1
- package/lib/commands/sql/exec.js +1 -1
- package/lib/commands/sql/index.js +1 -1
- package/lib/commands/update.js +1 -1
- package/lib/commands/user-account/bind.js +1 -1
- package/lib/commands/user-account/index.js +1 -1
- package/lib/commands/workspace/index.js +1 -1
- package/lib/config/schema.js +1 -1
- package/lib/constant/app.js +1 -1
- package/lib/constant/auth-mode.js +1 -1
- package/lib/constant/cli.js +1 -1
- package/lib/constant/defaults.js +1 -1
- package/lib/constant/distribution.js +1 -1
- package/lib/constant/domain.js +1 -1
- package/lib/constant/env.js +1 -1
- package/lib/constant/output.js +1 -1
- package/lib/constant/product.js +1 -1
- package/lib/constant/risk.js +1 -1
- package/lib/constant/url.js +1 -1
- package/lib/context.js +1 -1
- package/lib/core/api-client.d.ts +161 -0
- package/lib/core/api-client.js +1 -1
- package/lib/core/db-resolver.js +1 -1
- package/lib/core/sdk-client.js +1 -1
- package/lib/errors.js +1 -1
- package/lib/framework/build-all-flags.js +1 -1
- package/lib/framework/dryrun.js +1 -1
- package/lib/framework/flags.js +1 -1
- package/lib/framework/help.js +1 -1
- package/lib/framework/index.js +1 -1
- package/lib/framework/output.js +1 -1
- package/lib/framework/preparse.js +1 -1
- package/lib/framework/rate-limit.js +1 -1
- package/lib/framework/raw-flags.js +1 -1
- package/lib/framework/response.js +1 -1
- package/lib/framework/runner-confirmation.js +1 -1
- package/lib/framework/runner-error.js +1 -1
- package/lib/framework/runner.js +1 -1
- package/lib/framework/schema-export.js +1 -1
- package/lib/framework/service-order.js +1 -1
- package/lib/framework/types.js +1 -1
- package/lib/generated/build-info.d.ts +4 -4
- package/lib/generated/build-info.js +1 -1
- package/lib/help.js +1 -1
- package/lib/postinstall.js +1 -1
- package/lib/runtime/confirmation.js +1 -1
- package/lib/runtime/event.js +1 -1
- package/lib/runtime/index.js +1 -1
- package/lib/runtime/queue.js +1 -1
- package/lib/runtime/resolve.js +1 -1
- package/lib/skills/builtin-skill.js +1 -1
- package/lib/skills/npx-skills-add.js +1 -1
- package/lib/skills/runtime-skill-sync/constants.js +1 -1
- package/lib/skills/runtime-skill-sync/fs-utils.js +1 -1
- package/lib/skills/runtime-skill-sync/hashing.js +1 -1
- package/lib/skills/runtime-skill-sync/install-target.js +1 -1
- package/lib/skills/runtime-skill-sync/links.js +1 -1
- package/lib/skills/runtime-skill-sync/list-local.js +1 -1
- package/lib/skills/runtime-skill-sync/local-files.js +1 -1
- package/lib/skills/runtime-skill-sync/materialize.js +1 -1
- package/lib/skills/runtime-skill-sync/metadata.js +1 -1
- package/lib/skills/runtime-skill-sync/paths.js +1 -1
- package/lib/skills/runtime-skill-sync/push.js +1 -1
- package/lib/skills/runtime-skill-sync/scopes.js +1 -1
- package/lib/skills/runtime-skill-sync/zip-codec.js +1 -1
- package/lib/skills/runtime-skill-sync/zip-package.js +1 -1
- package/lib/skills/runtime-skill-sync.js +1 -1
- package/lib/skills/skill-presence.js +1 -1
- package/lib/utils/apply-jq-filter.js +1 -1
- package/lib/utils/logger.js +1 -1
- package/lib/utils/lossless-json.js +1 -1
- package/lib/utils/params.js +1 -1
- package/lib/utils/platform.js +1 -1
- package/lib/utils/update-notice.js +1 -1
- package/lib/utils/version.js +1 -1
- package/lib/utils/write-cli-side-channel.js +1 -1
- package/package.json +1 -1
- package/skills/lovrabet/SKILL.md +19 -6
- package/skills/lovrabet/guides/role-and-permission-workflow.md +139 -0
- package/skills/lovrabet/references/lovrabet-auth.md +1 -5
- package/skills/lovrabet/references/lovrabet-notification-config-list.md +81 -0
- package/skills/lovrabet.manifest.json +5 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
const a41_0x37c540=a41_0x2f3e;(function(_0x2939bc,_0x8eb1bc){const _0x55e5e7=a41_0x2f3e,_0x4a9be2=_0x2939bc();while(!![]){try{const _0x180915=-parseInt(_0x55e5e7(0x160))/0x1*(-parseInt(_0x55e5e7(0x17d))/0x2)+-parseInt(_0x55e5e7(0x177))/0x3+parseInt(_0x55e5e7(0x19b))/0x4*(-parseInt(_0x55e5e7(0x157))/0x5)+-parseInt(_0x55e5e7(0x15c))/0x6*(parseInt(_0x55e5e7(0x167))/0x7)+parseInt(_0x55e5e7(0x165))/0x8*(parseInt(_0x55e5e7(0x15d))/0x9)+parseInt(_0x55e5e7(0x183))/0xa*(-parseInt(_0x55e5e7(0x15f))/0xb)+parseInt(_0x55e5e7(0x16c))/0xc;if(_0x180915===_0x8eb1bc)break;else _0x4a9be2['push'](_0x4a9be2['shift']());}catch(_0x293a70){_0x4a9be2['push'](_0x4a9be2['shift']());}}}(a41_0x5410,0x21a4e));import{exportServiceManifest,formatValidationFailure,getLocalServiceEntry,getServiceRegistryPath,importServiceManifest,listLocalServices,loadServiceManifestFromFile,removeServiceManifest}from'../../commands/service/registry.js';import{toPublicNormalizedServiceTree,toPublicServiceTreeTarget}from'../../commands/service/function-name-adapter.js';const FILE_FLAG={'name':a41_0x37c540(0x194),'type':'string','required':!![],'description':'Service\x20Tree\x20manifest\x20file\x20path'},SERVICE_FLAG={'name':a41_0x37c540(0x155),'type':a41_0x37c540(0x18f),'required':!![],'description':a41_0x37c540(0x19a),'pattern':{'regex':/^[a-z][a-z0-9-]*$/,'description':'lower\x20kebab-case\x20service\x20code'}};function a41_0x2f3e(_0x48f758,_0x57a320){_0x48f758=_0x48f758-0x14f;const _0x5410ae=a41_0x5410();let _0x2f3e09=_0x5410ae[_0x48f758];return _0x2f3e09;}function summarizeService(_0x198554){const _0x2aa2b4=a41_0x37c540;return{'serviceCode':_0x198554[_0x2aa2b4(0x18a)],'name':_0x198554[_0x2aa2b4(0x173)][_0x2aa2b4(0x155)][_0x2aa2b4(0x16f)],'version':_0x198554[_0x2aa2b4(0x156)],'importedAt':_0x198554[_0x2aa2b4(0x189)],'source':_0x198554[_0x2aa2b4(0x158)],'commandCount':_0x198554[_0x2aa2b4(0x173)]['commands'][_0x2aa2b4(0x15b)],'commands':_0x198554[_0x2aa2b4(0x173)][_0x2aa2b4(0x191)][_0x2aa2b4(0x180)](_0x26bac1=>({'path':_0x26bac1[_0x2aa2b4(0x17a)],'description':_0x26bac1[_0x2aa2b4(0x16d)],'risk':_0x26bac1['risk'],'target':toPublicServiceTreeTarget(_0x26bac1[_0x2aa2b4(0x16b)]),'flags':_0x26bac1['flags'][_0x2aa2b4(0x180)](_0x5b6988=>({'name':_0x5b6988[_0x2aa2b4(0x16f)],'cliName':_0x5b6988[_0x2aa2b4(0x151)],'type':_0x5b6988['type'],'required':_0x5b6988[_0x2aa2b4(0x196)]===!![]}))}))};}function a41_0x5410(){const _0x534206=['Preview\x20Service\x20Tree\x20export\x20from\x20~/.lovrabet/service.json','Local\x20service\x20code,\x20for\x20example\x20crm','219988FpumMA','manifest','将把指定服务的本地\x20Service\x20Tree\x20清单写入\x20JSON\x20文件;目标位置已有文件时可能被覆盖。确认界面不会展示本地文件路径。','Preview\x20Service\x20Tree\x20removal\x20from\x20~/.lovrabet/service.json','cliName','import','entries','read','service','version','25uQntBw','source','将从本地\x20Service\x20Tree\x20注册表中移除指定服务清单;之后该清单提供的动态命令将不可用。','\x20service\x20','length','6nWTDtF','63QeuFuh','Exported\x20service\x20','11YAMOmT','8689NBSIoQ','errors','report','export','str','233552ySkwVR','detail','1303757plksHM','updated','replaced','entry','target','4013568mwqolZ','description','将\x20Service\x20Tree\x20清单导入本地运行态注册表','name','Show\x20a\x20locally\x20imported\x20Service\x20Tree\x20manifest','Service\x20manifest\x20validation\x20passed.','将读取指定清单并写入本地\x20Service\x20Tree\x20注册表;相同服务编码的现有清单会被更新。确认界面不会展示本地文件路径。','normalizedManifest','write','Validate\x20a\x20Service\x20Tree\x20JSON\x20manifest','从本地运行态注册表移除\x20Service\x20Tree\x20清单','176535rdJMjf','Imported\x20','\x20service(s).','cliPath','WRITE','serviceCount','38WWUztx','warnings','registry','map','manifests','imported','460260lEeWct','Preview\x20Service\x20Tree\x20import\x20into\x20~/.lovrabet/service.json','validate','List\x20locally\x20imported\x20Service\x20Tree\x20manifests','Service\x20registry\x20validation\x20passed.','registryPath','importedAt','serviceCode','reduce','\x20service(s),\x20updated\x20','将本地\x20Service\x20Tree\x20清单导出为\x20JSON\x20文件','hash','string','filePath','commands','kind','risk','file','remove','required','Updated','registryIndex'];a41_0x5410=function(){return _0x534206;};return a41_0x5410();}function summarizeLoadedManifest(_0x308bb4){const _0x47d14f=a41_0x37c540;return{'service':_0x308bb4['normalizedManifest']?.[_0x47d14f(0x155)],'version':_0x308bb4[_0x47d14f(0x173)]?.[_0x47d14f(0x156)],'commandCount':_0x308bb4[_0x47d14f(0x173)]?.['commands'][_0x47d14f(0x15b)]??0x0,'commands':_0x308bb4['normalizedManifest']?.['commands'][_0x47d14f(0x180)](_0x370424=>({'path':_0x370424[_0x47d14f(0x17a)],'risk':_0x370424[_0x47d14f(0x193)],'target':toPublicServiceTreeTarget(_0x370424['target'])}))??[],'registryIndex':_0x308bb4[_0x47d14f(0x198)],'registryServiceCode':_0x308bb4['registryServiceCode'],'errors':_0x308bb4['report'][_0x47d14f(0x161)],'warnings':_0x308bb4[_0x47d14f(0x162)]['warnings']};}export const serviceDefinitions=[{'service':a41_0x37c540(0x155),'command':a41_0x37c540(0x185),'description':a41_0x37c540(0x175),'risk':a41_0x37c540(0x154),'requiresAuth':![],'requiresAppCode':![],'flags':[FILE_FLAG],async 'execute'(_0x569ebd){const _0x226053=a41_0x37c540,_0x399826=loadServiceManifestFromFile(_0x569ebd[_0x226053(0x164)](_0x226053(0x194)));if(!_0x399826['report']['ok'])return{'ok':![],'data':{'file':_0x399826[_0x226053(0x190)],'hash':_0x399826[_0x226053(0x18e)],'kind':_0x399826[_0x226053(0x192)],'serviceCount':_0x399826['manifests'][_0x226053(0x15b)],'services':_0x399826['manifests']['map'](summarizeLoadedManifest),'errors':_0x399826[_0x226053(0x162)]['errors'],'warnings':_0x399826[_0x226053(0x162)][_0x226053(0x17e)]},'message':formatValidationFailure(_0x399826[_0x226053(0x162)])};if(_0x399826[_0x226053(0x192)]===_0x226053(0x17f)||_0x399826[_0x226053(0x181)][_0x226053(0x15b)]!==0x1)return{'ok':!![],'data':{'file':_0x399826[_0x226053(0x190)],'hash':_0x399826[_0x226053(0x18e)],'kind':_0x399826[_0x226053(0x192)],'serviceCount':_0x399826[_0x226053(0x181)][_0x226053(0x15b)],'commandCount':_0x399826[_0x226053(0x181)][_0x226053(0x18b)]((_0x7192b8,_0x12e049)=>_0x7192b8+(_0x12e049[_0x226053(0x173)]?.[_0x226053(0x191)]['length']??0x0),0x0),'services':_0x399826['manifests'][_0x226053(0x180)](summarizeLoadedManifest),'warnings':_0x399826[_0x226053(0x162)][_0x226053(0x17e)]},'message':_0x226053(0x187)};return{'ok':!![],'data':{'file':_0x399826[_0x226053(0x190)],'hash':_0x399826[_0x226053(0x18e)],'kind':_0x399826['kind'],'service':_0x399826['normalizedManifest']?.[_0x226053(0x155)],'version':_0x399826[_0x226053(0x173)]?.[_0x226053(0x156)],'commandCount':_0x399826['normalizedManifest']?.['commands'][_0x226053(0x15b)]??0x0,'commands':_0x399826[_0x226053(0x173)]?.[_0x226053(0x191)][_0x226053(0x180)](_0xd52596=>({'path':_0xd52596[_0x226053(0x17a)],'risk':_0xd52596['risk'],'target':toPublicServiceTreeTarget(_0xd52596['target'])})),'warnings':_0x399826[_0x226053(0x162)][_0x226053(0x17e)]},'message':_0x226053(0x171)};}},{'service':'service','command':a41_0x37c540(0x152),'description':a41_0x37c540(0x16e),'risk':a41_0x37c540(0x174),'confirmationDescription':a41_0x37c540(0x172),'requiresAuth':![],'requiresAppCode':![],'flags':[FILE_FLAG],async 'dryRun'(_0x8f1991){const _0x1c496e=a41_0x37c540,_0x1fd18d=loadServiceManifestFromFile(_0x8f1991[_0x1c496e(0x164)](_0x1c496e(0x194)));return{'method':_0x1c496e(0x17b),'url':getServiceRegistryPath(),'body':{'file':_0x1fd18d[_0x1c496e(0x190)],'hash':_0x1fd18d['hash'],'kind':_0x1fd18d[_0x1c496e(0x192)],'ok':_0x1fd18d[_0x1c496e(0x162)]['ok'],'service':_0x1fd18d[_0x1c496e(0x173)]?.['service'],'version':_0x1fd18d[_0x1c496e(0x173)]?.['version'],'serviceCount':_0x1fd18d[_0x1c496e(0x181)]['length'],'services':_0x1fd18d['manifests'][_0x1c496e(0x180)](_0x424417=>({'service':_0x424417['normalizedManifest']?.[_0x1c496e(0x155)],'version':_0x424417[_0x1c496e(0x173)]?.[_0x1c496e(0x156)],'commandCount':_0x424417[_0x1c496e(0x173)]?.[_0x1c496e(0x191)][_0x1c496e(0x15b)]??0x0,'errors':_0x424417[_0x1c496e(0x162)][_0x1c496e(0x161)]})),'errors':_0x1fd18d[_0x1c496e(0x162)][_0x1c496e(0x161)],'commandCount':_0x1fd18d[_0x1c496e(0x173)]?.['commands'][_0x1c496e(0x15b)]??0x0},'description':_0x1c496e(0x184)};},async 'execute'(_0x23dedf){const _0x3960ce=a41_0x37c540,_0x45f860=importServiceManifest(_0x23dedf[_0x3960ce(0x164)](_0x3960ce(0x194)));if(_0x45f860[_0x3960ce(0x153)][_0x3960ce(0x15b)]!==0x1)return{'ok':!![],'data':{'registryPath':_0x45f860['registryPath'],'imported':_0x45f860['imported'],'updated':_0x45f860['updated'],'serviceCount':_0x45f860['serviceCount'],'services':_0x45f860['entries']['map'](summarizeService)},'message':_0x3960ce(0x178)+_0x45f860['imported']+_0x3960ce(0x18c)+_0x45f860['updated']+_0x3960ce(0x179)};return{'ok':!![],'data':{'registryPath':_0x45f860[_0x3960ce(0x188)],'replaced':_0x45f860[_0x3960ce(0x169)],'imported':_0x45f860[_0x3960ce(0x182)],'updated':_0x45f860[_0x3960ce(0x168)],'serviceCount':_0x45f860['serviceCount'],'service':summarizeService(_0x45f860['entry'])},'message':(_0x45f860['replaced']?_0x3960ce(0x197):'Imported')+_0x3960ce(0x15a)+_0x45f860['entry'][_0x3960ce(0x18a)]+'.'};}},{'service':a41_0x37c540(0x155),'command':a41_0x37c540(0x163),'description':a41_0x37c540(0x18d),'risk':'write','confirmationDescription':a41_0x37c540(0x14f),'requiresAuth':![],'requiresAppCode':![],'flags':[SERVICE_FLAG,FILE_FLAG],async 'dryRun'(_0x332825){const _0x3b9487=a41_0x37c540,_0x3d6334=getLocalServiceEntry(_0x332825['str'](_0x3b9487(0x155)));return{'method':_0x3b9487(0x17b),'url':_0x332825[_0x3b9487(0x164)](_0x3b9487(0x194)),'body':{'service':_0x332825[_0x3b9487(0x164)](_0x3b9487(0x155)),'found':Boolean(_0x3d6334),'version':_0x3d6334?.[_0x3b9487(0x156)],'source':_0x3d6334?.[_0x3b9487(0x158)]},'description':_0x3b9487(0x199)};},async 'execute'(_0xad12b3){const _0x2e39e4=a41_0x37c540,_0x52e5c6=exportServiceManifest(_0xad12b3['str'](_0x2e39e4(0x155)),_0xad12b3['str']('file'));return{'ok':!![],'data':{'registryPath':_0x52e5c6[_0x2e39e4(0x188)],'file':_0x52e5c6[_0x2e39e4(0x190)],'service':summarizeService(_0x52e5c6[_0x2e39e4(0x16a)])},'message':_0x2e39e4(0x15e)+_0x52e5c6[_0x2e39e4(0x16a)][_0x2e39e4(0x18a)]+'.'};}},{'service':a41_0x37c540(0x155),'command':'list','description':a41_0x37c540(0x186),'risk':a41_0x37c540(0x154),'requiresAuth':![],'requiresAppCode':![],'flags':[],async 'execute'(){const _0x3e72f5=a41_0x37c540,_0x370be2=listLocalServices();return{'ok':!![],'data':{'registryPath':getServiceRegistryPath(),'total':_0x370be2[_0x3e72f5(0x15b)],'services':_0x370be2[_0x3e72f5(0x180)](summarizeService)}};}},{'service':'service','command':a41_0x37c540(0x195),'description':a41_0x37c540(0x176),'risk':a41_0x37c540(0x174),'confirmationDescription':a41_0x37c540(0x159),'requiresAuth':![],'requiresAppCode':![],'flags':[SERVICE_FLAG],async 'dryRun'(_0x2015fc){const _0x56cb30=a41_0x37c540,_0x455b2b=getLocalServiceEntry(_0x2015fc[_0x56cb30(0x164)](_0x56cb30(0x155)));return{'method':_0x56cb30(0x17b),'url':getServiceRegistryPath(),'body':{'service':_0x2015fc[_0x56cb30(0x164)](_0x56cb30(0x155)),'found':Boolean(_0x455b2b),'version':_0x455b2b?.[_0x56cb30(0x156)],'source':_0x455b2b?.[_0x56cb30(0x158)]},'description':_0x56cb30(0x150)};},async 'execute'(_0x20beae){const _0x582169=a41_0x37c540,_0x35679f=removeServiceManifest(_0x20beae[_0x582169(0x164)]('service'));return{'ok':!![],'data':{'registryPath':_0x35679f[_0x582169(0x188)],'serviceCount':_0x35679f[_0x582169(0x17c)],'service':summarizeService(_0x35679f[_0x582169(0x16a)])},'message':'Removed\x20service\x20'+_0x35679f['entry'][_0x582169(0x18a)]+'.'};}},{'service':a41_0x37c540(0x155),'command':a41_0x37c540(0x166),'description':a41_0x37c540(0x170),'risk':a41_0x37c540(0x154),'requiresAuth':![],'requiresAppCode':![],'flags':[SERVICE_FLAG],async 'execute'(_0x14ba64){const _0x318325=a41_0x37c540,_0x457c3e=getLocalServiceEntry(_0x14ba64[_0x318325(0x164)](_0x318325(0x155)));if(!_0x457c3e)return{'ok':![],'data':{'registryPath':getServiceRegistryPath(),'service':_0x14ba64['str'](_0x318325(0x155))},'message':'Local\x20service\x20not\x20found:\x20'+_0x14ba64[_0x318325(0x164)](_0x318325(0x155))};return{'ok':!![],'data':{'registryPath':getServiceRegistryPath(),'service':summarizeService(_0x457c3e),'manifest':_0x457c3e[_0x318325(0x19c)],'normalizedManifest':toPublicNormalizedServiceTree(_0x457c3e[_0x318325(0x173)])}};}}];
|
|
1
|
+
const a61_0x32084e=a61_0x3add;function a61_0x11d7(){const _0x3d1288=['7rxXguY','WRITE','List\x20locally\x20imported\x20Service\x20Tree\x20manifests','detail','cliPath','commands','将从本地\x20Service\x20Tree\x20注册表中移除指定服务清单;之后该清单提供的动态命令将不可用。','Show\x20a\x20locally\x20imported\x20Service\x20Tree\x20manifest','2aLtmor','warnings','Imported\x20','将把指定服务的本地\x20Service\x20Tree\x20清单写入\x20JSON\x20文件;目标位置已有文件时可能被覆盖。确认界面不会展示本地文件路径。','Removed\x20service\x20','Service\x20Tree\x20manifest\x20file\x20path','serviceCount','registryServiceCode','5MzACjw','required','Imported','validate','errors','export','从本地运行态注册表移除\x20Service\x20Tree\x20清单','8dkzqjC','serviceCode','length','Service\x20registry\x20validation\x20passed.','list','Service\x20manifest\x20validation\x20passed.','13205070bCSJgv','write','kind','read','14713722GTOhJG','\x20service(s).','manifests','\x20service\x20','将读取指定清单并写入本地\x20Service\x20Tree\x20注册表;相同服务编码的现有清单会被更新。确认界面不会展示本地文件路径。','risk','imported','9938247otTEnk','version','entry','updated','7213566nNvLHg','remove','entries','122068vcnJJj','description','\x20service(s),\x20updated\x20','replaced','2905236QQrfDm','3634182YJwRbH','target','Preview\x20Service\x20Tree\x20import\x20into\x20~/.lovrabet/service.json','file','filePath','registryPath','normalizedManifest','name','Validate\x20a\x20Service\x20Tree\x20JSON\x20manifest','Preview\x20Service\x20Tree\x20export\x20from\x20~/.lovrabet/service.json','source','manifest','Local\x20service\x20code,\x20for\x20example\x20crm','Local\x20service\x20not\x20found:\x20','cliName','将\x20Service\x20Tree\x20清单导入本地运行态注册表','hash','map','report','Exported\x20service\x20','str','service'];a61_0x11d7=function(){return _0x3d1288;};return a61_0x11d7();}(function(_0x15d629,_0x22acfb){const _0x4005cf=a61_0x3add,_0x923838=_0x15d629();while(!![]){try{const _0x480b42=parseInt(_0x4005cf(0x1e0))/0x1*(parseInt(_0x4005cf(0x1b9))/0x2)+-parseInt(_0x4005cf(0x1e5))/0x3+-parseInt(_0x4005cf(0x1e4))/0x4*(parseInt(_0x4005cf(0x1c1))/0x5)+parseInt(_0x4005cf(0x1dd))/0x6*(-parseInt(_0x4005cf(0x1b1))/0x7)+parseInt(_0x4005cf(0x1c8))/0x8*(parseInt(_0x4005cf(0x1d2))/0x9)+parseInt(_0x4005cf(0x1ce))/0xa+parseInt(_0x4005cf(0x1d9))/0xb;if(_0x480b42===_0x22acfb)break;else _0x923838['push'](_0x923838['shift']());}catch(_0x15e832){_0x923838['push'](_0x923838['shift']());}}}(a61_0x11d7,0xcd4f2));import{exportServiceManifest,formatValidationFailure,getLocalServiceEntry,getServiceRegistryPath,importServiceManifest,listLocalServices,loadServiceManifestFromFile,removeServiceManifest}from'../../commands/service/registry.js';function a61_0x3add(_0x1d612f,_0x222fb0){_0x1d612f=_0x1d612f-0x1ad;const _0x11d73a=a61_0x11d7();let _0x3addc4=_0x11d73a[_0x1d612f];return _0x3addc4;}import{toPublicNormalizedServiceTree,toPublicServiceTreeTarget}from'../../commands/service/function-name-adapter.js';const FILE_FLAG={'name':a61_0x32084e(0x1e8),'type':'string','required':!![],'description':a61_0x32084e(0x1be)},SERVICE_FLAG={'name':'service','type':'string','required':!![],'description':a61_0x32084e(0x1f1),'pattern':{'regex':/^[a-z][a-z0-9-]*$/,'description':'lower\x20kebab-case\x20service\x20code'}};function summarizeService(_0x17688e){const _0x463997=a61_0x32084e;return{'serviceCode':_0x17688e[_0x463997(0x1c9)],'name':_0x17688e[_0x463997(0x1eb)][_0x463997(0x1b0)][_0x463997(0x1ec)],'version':_0x17688e[_0x463997(0x1da)],'importedAt':_0x17688e['importedAt'],'source':_0x17688e[_0x463997(0x1ef)],'commandCount':_0x17688e['normalizedManifest']['commands'][_0x463997(0x1ca)],'commands':_0x17688e['normalizedManifest'][_0x463997(0x1b6)][_0x463997(0x1f6)](_0x5b9cdf=>({'path':_0x5b9cdf[_0x463997(0x1b5)],'description':_0x5b9cdf[_0x463997(0x1e1)],'risk':_0x5b9cdf['risk'],'target':toPublicServiceTreeTarget(_0x5b9cdf[_0x463997(0x1e6)]),'flags':_0x5b9cdf['flags'][_0x463997(0x1f6)](_0x72f659=>({'name':_0x72f659[_0x463997(0x1ec)],'cliName':_0x72f659[_0x463997(0x1f3)],'type':_0x72f659['type'],'required':_0x72f659[_0x463997(0x1c2)]===!![]}))}))};}function summarizeLoadedManifest(_0x31aba3){const _0x3883e9=a61_0x32084e;return{'service':_0x31aba3[_0x3883e9(0x1eb)]?.[_0x3883e9(0x1b0)],'version':_0x31aba3['normalizedManifest']?.[_0x3883e9(0x1da)],'commandCount':_0x31aba3[_0x3883e9(0x1eb)]?.['commands'][_0x3883e9(0x1ca)]??0x0,'commands':_0x31aba3['normalizedManifest']?.[_0x3883e9(0x1b6)]['map'](_0x1908d4=>({'path':_0x1908d4['cliPath'],'risk':_0x1908d4['risk'],'target':toPublicServiceTreeTarget(_0x1908d4[_0x3883e9(0x1e6)])}))??[],'registryIndex':_0x31aba3['registryIndex'],'registryServiceCode':_0x31aba3[_0x3883e9(0x1c0)],'errors':_0x31aba3[_0x3883e9(0x1ad)]['errors'],'warnings':_0x31aba3[_0x3883e9(0x1ad)]['warnings']};}export const serviceDefinitions=[{'service':a61_0x32084e(0x1b0),'command':a61_0x32084e(0x1c4),'description':a61_0x32084e(0x1ed),'risk':a61_0x32084e(0x1d1),'requiresAuth':![],'requiresAppCode':![],'flags':[FILE_FLAG],async 'execute'(_0x3d9d4c){const _0x37a302=a61_0x32084e,_0x194e17=loadServiceManifestFromFile(_0x3d9d4c[_0x37a302(0x1af)]('file'));if(!_0x194e17['report']['ok'])return{'ok':![],'data':{'file':_0x194e17['filePath'],'hash':_0x194e17[_0x37a302(0x1f5)],'kind':_0x194e17[_0x37a302(0x1d0)],'serviceCount':_0x194e17['manifests'][_0x37a302(0x1ca)],'services':_0x194e17['manifests']['map'](summarizeLoadedManifest),'errors':_0x194e17[_0x37a302(0x1ad)][_0x37a302(0x1c5)],'warnings':_0x194e17[_0x37a302(0x1ad)][_0x37a302(0x1ba)]},'message':formatValidationFailure(_0x194e17[_0x37a302(0x1ad)])};if(_0x194e17[_0x37a302(0x1d0)]==='registry'||_0x194e17[_0x37a302(0x1d4)][_0x37a302(0x1ca)]!==0x1)return{'ok':!![],'data':{'file':_0x194e17['filePath'],'hash':_0x194e17[_0x37a302(0x1f5)],'kind':_0x194e17['kind'],'serviceCount':_0x194e17[_0x37a302(0x1d4)][_0x37a302(0x1ca)],'commandCount':_0x194e17[_0x37a302(0x1d4)]['reduce']((_0x39a34e,_0x4d2a10)=>_0x39a34e+(_0x4d2a10[_0x37a302(0x1eb)]?.[_0x37a302(0x1b6)][_0x37a302(0x1ca)]??0x0),0x0),'services':_0x194e17[_0x37a302(0x1d4)][_0x37a302(0x1f6)](summarizeLoadedManifest),'warnings':_0x194e17[_0x37a302(0x1ad)]['warnings']},'message':_0x37a302(0x1cb)};return{'ok':!![],'data':{'file':_0x194e17['filePath'],'hash':_0x194e17['hash'],'kind':_0x194e17[_0x37a302(0x1d0)],'service':_0x194e17[_0x37a302(0x1eb)]?.[_0x37a302(0x1b0)],'version':_0x194e17[_0x37a302(0x1eb)]?.[_0x37a302(0x1da)],'commandCount':_0x194e17[_0x37a302(0x1eb)]?.[_0x37a302(0x1b6)]['length']??0x0,'commands':_0x194e17[_0x37a302(0x1eb)]?.[_0x37a302(0x1b6)]['map'](_0x55c491=>({'path':_0x55c491[_0x37a302(0x1b5)],'risk':_0x55c491[_0x37a302(0x1d7)],'target':toPublicServiceTreeTarget(_0x55c491[_0x37a302(0x1e6)])})),'warnings':_0x194e17[_0x37a302(0x1ad)][_0x37a302(0x1ba)]},'message':_0x37a302(0x1cd)};}},{'service':'service','command':'import','description':a61_0x32084e(0x1f4),'risk':'write','confirmationDescription':a61_0x32084e(0x1d6),'requiresAuth':![],'requiresAppCode':![],'flags':[FILE_FLAG],async 'dryRun'(_0x2bbd16){const _0x56ec16=a61_0x32084e,_0x5f47de=loadServiceManifestFromFile(_0x2bbd16['str'](_0x56ec16(0x1e8)));return{'method':_0x56ec16(0x1b2),'url':getServiceRegistryPath(),'body':{'file':_0x5f47de[_0x56ec16(0x1e9)],'hash':_0x5f47de['hash'],'kind':_0x5f47de['kind'],'ok':_0x5f47de[_0x56ec16(0x1ad)]['ok'],'service':_0x5f47de[_0x56ec16(0x1eb)]?.[_0x56ec16(0x1b0)],'version':_0x5f47de[_0x56ec16(0x1eb)]?.[_0x56ec16(0x1da)],'serviceCount':_0x5f47de[_0x56ec16(0x1d4)][_0x56ec16(0x1ca)],'services':_0x5f47de[_0x56ec16(0x1d4)][_0x56ec16(0x1f6)](_0x4072e4=>({'service':_0x4072e4['normalizedManifest']?.[_0x56ec16(0x1b0)],'version':_0x4072e4[_0x56ec16(0x1eb)]?.[_0x56ec16(0x1da)],'commandCount':_0x4072e4[_0x56ec16(0x1eb)]?.[_0x56ec16(0x1b6)][_0x56ec16(0x1ca)]??0x0,'errors':_0x4072e4[_0x56ec16(0x1ad)][_0x56ec16(0x1c5)]})),'errors':_0x5f47de[_0x56ec16(0x1ad)][_0x56ec16(0x1c5)],'commandCount':_0x5f47de[_0x56ec16(0x1eb)]?.[_0x56ec16(0x1b6)]['length']??0x0},'description':_0x56ec16(0x1e7)};},async 'execute'(_0x5ac284){const _0x132f11=a61_0x32084e,_0xac3064=importServiceManifest(_0x5ac284[_0x132f11(0x1af)](_0x132f11(0x1e8)));if(_0xac3064['entries'][_0x132f11(0x1ca)]!==0x1)return{'ok':!![],'data':{'registryPath':_0xac3064[_0x132f11(0x1ea)],'imported':_0xac3064[_0x132f11(0x1d8)],'updated':_0xac3064[_0x132f11(0x1dc)],'serviceCount':_0xac3064[_0x132f11(0x1bf)],'services':_0xac3064[_0x132f11(0x1df)][_0x132f11(0x1f6)](summarizeService)},'message':_0x132f11(0x1bb)+_0xac3064[_0x132f11(0x1d8)]+_0x132f11(0x1e2)+_0xac3064[_0x132f11(0x1dc)]+_0x132f11(0x1d3)};return{'ok':!![],'data':{'registryPath':_0xac3064[_0x132f11(0x1ea)],'replaced':_0xac3064['replaced'],'imported':_0xac3064[_0x132f11(0x1d8)],'updated':_0xac3064[_0x132f11(0x1dc)],'serviceCount':_0xac3064[_0x132f11(0x1bf)],'service':summarizeService(_0xac3064[_0x132f11(0x1db)])},'message':(_0xac3064[_0x132f11(0x1e3)]?'Updated':_0x132f11(0x1c3))+_0x132f11(0x1d5)+_0xac3064['entry'][_0x132f11(0x1c9)]+'.'};}},{'service':a61_0x32084e(0x1b0),'command':a61_0x32084e(0x1c6),'description':'将本地\x20Service\x20Tree\x20清单导出为\x20JSON\x20文件','risk':a61_0x32084e(0x1cf),'confirmationDescription':a61_0x32084e(0x1bc),'requiresAuth':![],'requiresAppCode':![],'flags':[SERVICE_FLAG,FILE_FLAG],async 'dryRun'(_0x42197a){const _0x1f5d52=a61_0x32084e,_0x27b1bb=getLocalServiceEntry(_0x42197a[_0x1f5d52(0x1af)](_0x1f5d52(0x1b0)));return{'method':_0x1f5d52(0x1b2),'url':_0x42197a[_0x1f5d52(0x1af)]('file'),'body':{'service':_0x42197a[_0x1f5d52(0x1af)](_0x1f5d52(0x1b0)),'found':Boolean(_0x27b1bb),'version':_0x27b1bb?.[_0x1f5d52(0x1da)],'source':_0x27b1bb?.['source']},'description':_0x1f5d52(0x1ee)};},async 'execute'(_0x30accd){const _0x533f56=a61_0x32084e,_0x281fc0=exportServiceManifest(_0x30accd[_0x533f56(0x1af)](_0x533f56(0x1b0)),_0x30accd['str'](_0x533f56(0x1e8)));return{'ok':!![],'data':{'registryPath':_0x281fc0[_0x533f56(0x1ea)],'file':_0x281fc0['filePath'],'service':summarizeService(_0x281fc0[_0x533f56(0x1db)])},'message':_0x533f56(0x1ae)+_0x281fc0['entry'][_0x533f56(0x1c9)]+'.'};}},{'service':a61_0x32084e(0x1b0),'command':a61_0x32084e(0x1cc),'description':a61_0x32084e(0x1b3),'risk':'read','requiresAuth':![],'requiresAppCode':![],'flags':[],async 'execute'(){const _0x29a257=a61_0x32084e,_0x5d6f13=listLocalServices();return{'ok':!![],'data':{'registryPath':getServiceRegistryPath(),'total':_0x5d6f13[_0x29a257(0x1ca)],'services':_0x5d6f13['map'](summarizeService)}};}},{'service':a61_0x32084e(0x1b0),'command':a61_0x32084e(0x1de),'description':a61_0x32084e(0x1c7),'risk':a61_0x32084e(0x1cf),'confirmationDescription':a61_0x32084e(0x1b7),'requiresAuth':![],'requiresAppCode':![],'flags':[SERVICE_FLAG],async 'dryRun'(_0x51f872){const _0x3454a5=a61_0x32084e,_0x82c9c0=getLocalServiceEntry(_0x51f872[_0x3454a5(0x1af)](_0x3454a5(0x1b0)));return{'method':'WRITE','url':getServiceRegistryPath(),'body':{'service':_0x51f872[_0x3454a5(0x1af)](_0x3454a5(0x1b0)),'found':Boolean(_0x82c9c0),'version':_0x82c9c0?.[_0x3454a5(0x1da)],'source':_0x82c9c0?.[_0x3454a5(0x1ef)]},'description':'Preview\x20Service\x20Tree\x20removal\x20from\x20~/.lovrabet/service.json'};},async 'execute'(_0x1eb630){const _0x59c160=a61_0x32084e,_0x3f3d20=removeServiceManifest(_0x1eb630[_0x59c160(0x1af)](_0x59c160(0x1b0)));return{'ok':!![],'data':{'registryPath':_0x3f3d20[_0x59c160(0x1ea)],'serviceCount':_0x3f3d20[_0x59c160(0x1bf)],'service':summarizeService(_0x3f3d20[_0x59c160(0x1db)])},'message':_0x59c160(0x1bd)+_0x3f3d20[_0x59c160(0x1db)]['serviceCode']+'.'};}},{'service':'service','command':a61_0x32084e(0x1b4),'description':a61_0x32084e(0x1b8),'risk':a61_0x32084e(0x1d1),'requiresAuth':![],'requiresAppCode':![],'flags':[SERVICE_FLAG],async 'execute'(_0x413fa1){const _0x55b1ec=a61_0x32084e,_0x594c79=getLocalServiceEntry(_0x413fa1[_0x55b1ec(0x1af)]('service'));if(!_0x594c79)return{'ok':![],'data':{'registryPath':getServiceRegistryPath(),'service':_0x413fa1[_0x55b1ec(0x1af)](_0x55b1ec(0x1b0))},'message':_0x55b1ec(0x1f2)+_0x413fa1[_0x55b1ec(0x1af)](_0x55b1ec(0x1b0))};return{'ok':!![],'data':{'registryPath':getServiceRegistryPath(),'service':summarizeService(_0x594c79),'manifest':_0x594c79[_0x55b1ec(0x1f0)],'normalizedManifest':toPublicNormalizedServiceTree(_0x594c79[_0x55b1ec(0x1eb)])}};}}];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const a42_0x466574=a42_0x38dc;(function(_0x561963,_0x2e9016){const _0x5b781a=a42_0x38dc,_0x38b85f=_0x561963();while(!![]){try{const _0x56e7a0=parseInt(_0x5b781a(0x121))/0x1+parseInt(_0x5b781a(0x122))/0x2+parseInt(_0x5b781a(0xf7))/0x3*(parseInt(_0x5b781a(0xf9))/0x4)+parseInt(_0x5b781a(0x10e))/0x5*(-parseInt(_0x5b781a(0x11a))/0x6)+parseInt(_0x5b781a(0xd5))/0x7+parseInt(_0x5b781a(0x104))/0x8+-parseInt(_0x5b781a(0xf8))/0x9;if(_0x56e7a0===_0x2e9016)break;else _0x38b85f['push'](_0x38b85f['shift']());}catch(_0x502580){_0x38b85f['push'](_0x38b85f['shift']());}}}(a42_0x43bb,0xe4867));import{createHash}from'node:crypto';import{existsSync,mkdirSync,readFileSync,renameSync,unlinkSync,writeFileSync}from'node:fs';import{homedir}from'node:os';import{dirname,resolve}from'node:path';import{normalizeServiceTreeManifest,validateServiceTreeManifest}from'@lovrabet/cli-framework';function a42_0x38dc(_0x4dcfe2,_0x192f7c){_0x4dcfe2=_0x4dcfe2-0xd5;const _0x43bb33=a42_0x43bb();let _0x38dc52=_0x43bb33[_0x4dcfe2];return _0x38dc52;}import{PRODUCT_CONFIG}from'../../constant/product.js';import{CliErrors}from'../../errors.js';import{adaptServiceTreeManifestForLegacyFramework}from'../../commands/service/function-name-adapter.js';export const SERVICE_REGISTRY_SCHEMA_VERSION=0x1;export const SERVICE_REGISTRY_FILE_NAME=a42_0x466574(0xed);export function getServiceRegistryPath(_0x35c5a7={}){const _0x1fc1a4=a42_0x466574;return resolve(_0x35c5a7[_0x1fc1a4(0x105)]??homedir(),PRODUCT_CONFIG[_0x1fc1a4(0xff)],SERVICE_REGISTRY_FILE_NAME);}function a42_0x43bb(){const _0x44716f=['19989eCwlYL','42147306keLfHE','820wlLbJw','invalid','localeCompare','].manifest.','target','report','homeDirName','validation','map','errors','description','9388040sGdWxN','homeDir','warnings','version','digest','flatMap','now','startsWith','commands','string','414590OjwiOb','length','Remove\x20or\x20migrate\x20','stringify','hex','filePath','update','trim','join','service','registryIndex','Unsupported\x20schemaVersion:\x20','30tVFQmx','object','parse','findIndex','empty','Fix\x20the\x20JSON\x20file\x20or\x20move\x20it\x20aside\x20and\x20import\x20services\x20again.','isArray','1305435IFVcjv','3402072UdkfQW','Run\x20lovrabet\x20service\x20list\x20to\x20see\x20imported\x20services.','sha256','utf8','Fix\x20the\x20JSON\x20syntax\x20and\x20run\x20service\x20validate\x20again.','Service\x20manifest\x20validation\x20failed:\x0a','manifest','manifests','schemaVersion','3414404qdBytL','sourceHash','updatedAt','Cannot\x20write\x20service\x20registry:\x20','find','services','push','code','risk','Local\x20service\x20not\x20found:\x20','CliError','missing','sort','serviceCode','Invalid\x20service\x20manifest\x20JSON:\x20','bff\x20target\x20requires\x20functionName.','toISOString','Service\x20registry\x20has\x20no\x20services\x20to\x20import.','command','message','slice','normalizedManifest','cliPath','].manifest','service.json','path','Add\x20at\x20least\x20one\x20service\x20manifest,\x20then\x20run\x20service\x20import\x20again.','name','$.services[','source','kind','.tmp','services\x20must\x20be\x20an\x20array','file'];a42_0x43bb=function(){return _0x44716f;};return a42_0x43bb();}export function emptyServiceRegistry(){return{'schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'services':[]};}export function readServiceRegistry(_0x1da0e2={}){const _0x36540a=a42_0x466574,_0x291464=getServiceRegistryPath(_0x1da0e2);if(!existsSync(_0x291464))return emptyServiceRegistry();try{const _0x183746=readFileSync(_0x291464,_0x36540a(0x125));if(!_0x183746['trim']())return emptyServiceRegistry();const _0x2a5f53=JSON[_0x36540a(0x11c)](_0x183746);if(_0x2a5f53[_0x36540a(0x12a)]!==SERVICE_REGISTRY_SCHEMA_VERSION)throw CliErrors[_0x36540a(0x100)]('Unsupported\x20service\x20registry\x20schemaVersion:\x20'+String(_0x2a5f53[_0x36540a(0x12a)]),_0x36540a(0x110)+_0x291464+'.');if(!Array[_0x36540a(0x120)](_0x2a5f53['services']))return emptyServiceRegistry();return{'schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'updatedAt':_0x2a5f53[_0x36540a(0xd7)],'services':_0x2a5f53[_0x36540a(0xda)]};}catch(_0x5180f9){if(_0x5180f9 instanceof Error&&_0x5180f9[_0x36540a(0xf0)]===_0x36540a(0xdf))throw _0x5180f9;throw CliErrors[_0x36540a(0x100)]('Invalid\x20service\x20registry\x20JSON:\x20'+_0x291464,_0x36540a(0x11f));}}export function writeServiceRegistry(_0x58a7b1,_0x50b676={}){const _0x4c065e=a42_0x466574,_0x666fdd=getServiceRegistryPath(_0x50b676),_0x17b183=dirname(_0x666fdd);!existsSync(_0x17b183)&&mkdirSync(_0x17b183,{'recursive':!![]});const _0x44f467=_0x666fdd+_0x4c065e(0xf4);try{writeFileSync(_0x44f467,JSON[_0x4c065e(0x111)](_0x58a7b1,null,0x2)+'\x0a',{'encoding':_0x4c065e(0x125),'mode':0x180}),renameSync(_0x44f467,_0x666fdd);}catch(_0x5cdfa8){try{unlinkSync(_0x44f467);}catch{}if(_0x5cdfa8?.[_0x4c065e(0xdc)]==='ENOENT')throw CliErrors[_0x4c065e(0x100)](_0x4c065e(0xd8)+_0x666fdd);throw _0x5cdfa8;}return _0x666fdd;}export function loadServiceManifestFromFile(_0x1aa277){const _0x8b1590=a42_0x466574,_0x42e2a9=resolve(_0x1aa277);if(!existsSync(_0x42e2a9))throw CliErrors['validation']('Service\x20manifest\x20file\x20not\x20found:\x20'+_0x1aa277);let _0x1be86c;const _0x43aba3=readFileSync(_0x42e2a9,'utf8');try{_0x1be86c=JSON[_0x8b1590(0x11c)](_0x43aba3);}catch{throw CliErrors[_0x8b1590(0x100)](_0x8b1590(0xe3)+_0x1aa277,_0x8b1590(0x126));}const _0x3a564e=sha256(_0x43aba3),_0x5dc159=extractLoadedServiceManifests(_0x1be86c,_0x3a564e),_0x393589=aggregateValidationReports(_0x5dc159),_0x45ae99=_0x5dc159[0x0];return{'filePath':_0x42e2a9,'hash':_0x3a564e,'kind':isServiceRegistryLike(_0x1be86c)?'registry':'manifest','manifest':_0x45ae99?.['manifest']??_0x1be86c,'report':_0x393589,'normalizedManifest':_0x5dc159['length']===0x1?_0x45ae99?.[_0x8b1590(0xea)]:undefined,'manifests':_0x5dc159};}export function importServiceManifest(_0x3ee132,_0x4d9ca6={}){const _0x12af5e=a42_0x466574,_0x39b0d6=loadServiceManifestFromFile(_0x3ee132);if(!_0x39b0d6[_0x12af5e(0xfe)]['ok'])throw CliErrors['validation'](formatValidationFailure(_0x39b0d6['report']),'Fix\x20the\x20service\x20manifest\x20and\x20run\x20service\x20validate\x20again.');if(_0x39b0d6[_0x12af5e(0x129)][_0x12af5e(0x10f)]===0x0)throw CliErrors[_0x12af5e(0x100)](_0x12af5e(0xe6),_0x12af5e(0xef));const _0x4d7393=readServiceRegistry(_0x4d9ca6),_0x2d2f4d=(_0x4d9ca6['now']??(()=>new Date()))()[_0x12af5e(0xe5)](),_0x3b9d3c=[];let _0x4e5c6d=0x0,_0x525c6e=0x0;for(const _0x2740bf of _0x39b0d6['manifests']){if(!_0x2740bf['normalizedManifest'])continue;const _0x4892d9=_0x2740bf[_0x12af5e(0xea)]['service'][_0x12af5e(0xdc)],_0x136e07={'serviceCode':_0x4892d9,'version':_0x2740bf[_0x12af5e(0xea)][_0x12af5e(0x107)],'importedAt':_0x2d2f4d,'source':{'type':_0x12af5e(0xf6),'path':_0x39b0d6[_0x12af5e(0x113)],'hash':_0x2740bf[_0x12af5e(0xd6)]},'manifest':_0x2740bf[_0x12af5e(0x128)],'normalizedManifest':_0x2740bf[_0x12af5e(0xea)]},_0x576043=_0x4d7393['services'][_0x12af5e(0x11d)](_0x2b9978=>_0x2b9978[_0x12af5e(0xe2)]===_0x4892d9);_0x576043>=0x0?(_0x4d7393['services'][_0x576043]=_0x136e07,_0x525c6e++):(_0x4d7393[_0x12af5e(0xda)][_0x12af5e(0xdb)](_0x136e07),_0x4e5c6d++),_0x3b9d3c[_0x12af5e(0xdb)](_0x136e07);}_0x4d7393[_0x12af5e(0xda)][_0x12af5e(0xe1)]((_0x40ce6d,_0x3f4d41)=>_0x40ce6d[_0x12af5e(0xe2)][_0x12af5e(0xfb)](_0x3f4d41[_0x12af5e(0xe2)])),_0x4d7393['updatedAt']=_0x2d2f4d;const _0x351fce=writeServiceRegistry(_0x4d7393,_0x4d9ca6);return{'registryPath':_0x351fce,'entry':_0x3b9d3c[0x0],'replaced':_0x3b9d3c['length']===0x1?_0x525c6e===0x1:_0x525c6e>0x0,'entries':_0x3b9d3c,'imported':_0x4e5c6d,'updated':_0x525c6e,'serviceCount':_0x4d7393['services'][_0x12af5e(0x10f)]};}export function exportServiceManifest(_0x3e195d,_0x10ab75,_0x1837f5={}){const _0x540cfc=a42_0x466574,_0x1a63dd=getServiceRegistryPath(_0x1837f5),_0x5a5995=getLocalServiceEntry(_0x3e195d,_0x1837f5);if(!_0x5a5995)throw CliErrors[_0x540cfc(0x100)](_0x540cfc(0xde)+_0x3e195d,_0x540cfc(0x123));const _0x55d530=resolve(_0x10ab75),_0x62b057=dirname(_0x55d530);return!existsSync(_0x62b057)&&mkdirSync(_0x62b057,{'recursive':!![]}),writeFileSync(_0x55d530,JSON[_0x540cfc(0x111)](_0x5a5995['manifest'],null,0x2)+'\x0a',{'encoding':_0x540cfc(0x125),'mode':0x180}),{'registryPath':_0x1a63dd,'filePath':_0x55d530,'entry':_0x5a5995};}export function removeServiceManifest(_0x5cb4ae,_0x3ea6c8={}){const _0x2c61a6=a42_0x466574,_0x6c6191=readServiceRegistry(_0x3ea6c8),_0x6b8fa1=_0x5cb4ae[_0x2c61a6(0x115)](),_0x1966b8=_0x6c6191[_0x2c61a6(0xda)][_0x2c61a6(0x11d)](_0x4e5cc5=>_0x4e5cc5['serviceCode']===_0x6b8fa1);if(_0x1966b8<0x0)throw CliErrors[_0x2c61a6(0x100)](_0x2c61a6(0xde)+_0x6b8fa1,_0x2c61a6(0x123));const [_0x3a0d40]=_0x6c6191[_0x2c61a6(0xda)]['splice'](_0x1966b8,0x1),_0x569d36=(_0x3ea6c8[_0x2c61a6(0x10a)]??(()=>new Date()))()['toISOString']();_0x6c6191[_0x2c61a6(0xd7)]=_0x569d36;const _0x5764c0=writeServiceRegistry(_0x6c6191,_0x3ea6c8);return{'registryPath':_0x5764c0,'entry':_0x3a0d40,'serviceCount':_0x6c6191[_0x2c61a6(0xda)][_0x2c61a6(0x10f)]};}export function listLocalServices(_0x23d9ab={}){const _0x48632e=a42_0x466574;return readServiceRegistry(_0x23d9ab)[_0x48632e(0xda)];}export function getLocalServiceEntry(_0xe6c076,_0x59f49b={}){const _0x361778=a42_0x466574;return readServiceRegistry(_0x59f49b)[_0x361778(0xda)][_0x361778(0xd9)](_0x5c4891=>_0x5c4891[_0x361778(0xe2)]===_0xe6c076['trim']());}export function listLocalServiceTrees(_0x1402e4={}){const _0x5b3adf=a42_0x466574;return readServiceRegistry(_0x1402e4)[_0x5b3adf(0xda)][_0x5b3adf(0x101)](_0x1e5b02=>_0x1e5b02['normalizedManifest']);}export function inspectServiceRegistry(_0x245f02={}){const _0x3fc4ee=a42_0x466574,_0x8c402f=getServiceRegistryPath(_0x245f02);if(!existsSync(_0x8c402f))return emptyServiceRegistryInspection(_0x8c402f,_0x3fc4ee(0xe0),![]);try{const _0x336bd1=readFileSync(_0x8c402f,_0x3fc4ee(0x125));if(!_0x336bd1['trim']())return emptyServiceRegistryInspection(_0x8c402f,_0x3fc4ee(0x11e),!![]);const _0x4767d9=JSON['parse'](_0x336bd1);if(_0x4767d9[_0x3fc4ee(0x12a)]!==SERVICE_REGISTRY_SCHEMA_VERSION)return{...emptyServiceRegistryInspection(_0x8c402f,_0x3fc4ee(0xfa),!![]),'schemaVersion':_0x4767d9[_0x3fc4ee(0x12a)],'message':_0x3fc4ee(0x119)+String(_0x4767d9[_0x3fc4ee(0x12a)])};if(!Array[_0x3fc4ee(0x120)](_0x4767d9[_0x3fc4ee(0xda)]))return{...emptyServiceRegistryInspection(_0x8c402f,_0x3fc4ee(0xfa),!![]),'schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'updatedAt':_0x4767d9[_0x3fc4ee(0xd7)],'message':_0x3fc4ee(0xf5)};const _0x418027=_0x4767d9[_0x3fc4ee(0xda)][_0x3fc4ee(0x101)](summarizeLocalServiceEntry);return{'registryPath':_0x8c402f,'exists':!![],'status':'ok','schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'updatedAt':_0x4767d9['updatedAt'],'serviceCount':_0x418027[_0x3fc4ee(0x10f)],'commandCount':_0x418027['reduce']((_0x525998,_0x4d5952)=>_0x525998+_0x4d5952['commandCount'],0x0),'services':_0x418027};}catch(_0x5bbe7a){return{...emptyServiceRegistryInspection(_0x8c402f,_0x3fc4ee(0xfa),!![]),'message':_0x5bbe7a instanceof Error?_0x5bbe7a['message']:String(_0x5bbe7a)};}}export function formatValidationFailure(_0x3b8bcd){const _0x5c42f6=a42_0x466574,_0x29bfdf=_0x3b8bcd[_0x5c42f6(0x102)][_0x5c42f6(0x101)](_0x4c6d28=>_0x4c6d28[_0x5c42f6(0xee)]+':\x20'+_0x4c6d28[_0x5c42f6(0xe8)]);return _0x5c42f6(0x127)+_0x29bfdf[_0x5c42f6(0x116)]('\x0a');}function extractLoadedServiceManifests(_0x410a19,_0x5a6454){const _0x25387b=a42_0x466574;if(!isServiceRegistryLike(_0x410a19)){const _0x128279=_0x410a19,{manifest:_0x2ecdf9,errors:_0x18c4a2}=adaptServiceTreeManifestForLegacyFramework(_0x128279),_0x61415f=validateServiceTreeManifest(_0x2ecdf9),_0x3195a0=mergeValidationErrors(_0x61415f,_0x18c4a2);return[{'manifest':_0x128279,'report':_0x3195a0,'normalizedManifest':_0x3195a0['ok']?normalizeServiceTreeManifest(_0x2ecdf9):undefined,'sourceHash':_0x5a6454}];}return _0x410a19[_0x25387b(0xda)]['map']((_0x76b96b,_0x1c841c)=>{const _0x602a5d=_0x25387b,_0x55a4ce=isObjectRecord(_0x76b96b)?_0x76b96b[_0x602a5d(0x128)]:undefined,{manifest:_0x5c8636,errors:_0x137183}=adaptServiceTreeManifestForLegacyFramework(_0x55a4ce),_0x22fd91=validateServiceTreeManifest(_0x5c8636),_0x6e207f=mergeValidationErrors(_0x22fd91,_0x137183),_0x260098=isObjectRecord(_0x76b96b)&&typeof _0x76b96b['serviceCode']===_0x602a5d(0x10d)?_0x76b96b[_0x602a5d(0xe2)]:undefined;return{'manifest':_0x55a4ce,'report':_0x6e207f,'normalizedManifest':_0x6e207f['ok']?normalizeServiceTreeManifest(_0x5c8636):undefined,'sourceHash':sha256(JSON[_0x602a5d(0x111)](_0x55a4ce,null,0x2)+'\x0a'),'registryIndex':_0x1c841c,'registryServiceCode':_0x260098};});}function mergeValidationErrors(_0x1d4f63,_0xb099d5){const _0x161f0e=a42_0x466574,_0x21bba8=_0x1d4f63[_0x161f0e(0x102)][_0x161f0e(0x101)](_0xae16b2=>_0xae16b2[_0x161f0e(0xe8)]==='bff\x20target\x20requires\x20bffCode,\x20bffId,\x20or\x20scriptName.'?{..._0xae16b2,'message':_0x161f0e(0xe4)}:_0xae16b2),_0x46eab7=[..._0xb099d5,..._0x21bba8];return{'ok':_0x46eab7['length']===0x0,'errors':_0x46eab7,'warnings':_0x1d4f63[_0x161f0e(0x106)]};}function aggregateValidationReports(_0x292747){const _0x51de11=a42_0x466574,_0x13ca42=_0x292747['flatMap'](_0x4ef3a3=>_0x4ef3a3[_0x51de11(0x118)]===undefined?_0x4ef3a3['report'][_0x51de11(0x102)]:_0x4ef3a3[_0x51de11(0xfe)][_0x51de11(0x102)][_0x51de11(0x101)](_0x3e3aba=>({..._0x3e3aba,'path':prefixRegistryIssuePath(_0x4ef3a3['registryIndex'],_0x3e3aba[_0x51de11(0xee)])}))),_0x70544=_0x292747[_0x51de11(0x109)](_0x5dd91f=>_0x5dd91f[_0x51de11(0x118)]===undefined?_0x5dd91f['report'][_0x51de11(0x106)]:_0x5dd91f['report']['warnings'][_0x51de11(0x101)](_0x4016ae=>({..._0x4016ae,'path':prefixRegistryIssuePath(_0x5dd91f[_0x51de11(0x118)],_0x4016ae['path'])})));return{'ok':_0x13ca42[_0x51de11(0x10f)]===0x0,'errors':_0x13ca42,'warnings':_0x70544};}function prefixRegistryIssuePath(_0x540ba8,_0x22a284){const _0x51bab3=a42_0x466574;if(_0x22a284==='$')return _0x51bab3(0xf1)+_0x540ba8+_0x51bab3(0xec);if(_0x22a284[_0x51bab3(0x10b)]('$.'))return _0x51bab3(0xf1)+_0x540ba8+_0x51bab3(0xec)+_0x22a284[_0x51bab3(0xe9)](0x1);if(_0x22a284[_0x51bab3(0x10b)]('$['))return'$.services['+_0x540ba8+_0x51bab3(0xec)+_0x22a284[_0x51bab3(0xe9)](0x1);return _0x51bab3(0xf1)+_0x540ba8+_0x51bab3(0xfc)+_0x22a284;}function isServiceRegistryLike(_0x2d4d15){const _0x13b2e8=a42_0x466574;return isObjectRecord(_0x2d4d15)&&_0x2d4d15[_0x13b2e8(0x12a)]===SERVICE_REGISTRY_SCHEMA_VERSION&&Array[_0x13b2e8(0x120)](_0x2d4d15[_0x13b2e8(0xda)]);}function isObjectRecord(_0x2992d5){const _0x243700=a42_0x466574;return Boolean(_0x2992d5)&&typeof _0x2992d5===_0x243700(0x11b)&&!Array[_0x243700(0x120)](_0x2992d5);}function emptyServiceRegistryInspection(_0x2202eb,_0x67a2ee,_0x3f2bd0){return{'registryPath':_0x2202eb,'exists':_0x3f2bd0,'status':_0x67a2ee,'serviceCount':0x0,'commandCount':0x0,'services':[]};}function summarizeLocalServiceEntry(_0x1269ee){const _0x3f246f=a42_0x466574,_0x342f81=_0x1269ee[_0x3f246f(0xea)],_0x321479=_0x342f81[_0x3f246f(0x10c)]['map'](_0x2b74c2=>({'path':_0x2b74c2[_0x3f246f(0xeb)],'description':_0x2b74c2[_0x3f246f(0x103)],'risk':_0x2b74c2[_0x3f246f(0xdd)],'targetKind':_0x2b74c2[_0x3f246f(0xfd)][_0x3f246f(0xf3)],'targetCommand':_0x2b74c2[_0x3f246f(0xfd)][_0x3f246f(0xe7)]}));return{'serviceCode':_0x1269ee[_0x3f246f(0xe2)],'name':_0x342f81[_0x3f246f(0x117)]['name'],'description':_0x342f81[_0x3f246f(0x117)][_0x3f246f(0x103)],'version':_0x1269ee[_0x3f246f(0x107)],'importedAt':_0x1269ee['importedAt'],'source':_0x1269ee[_0x3f246f(0xf2)],'commandCount':_0x321479[_0x3f246f(0x10f)],'commands':_0x321479};}function sha256(_0xc86d80){const _0x520232=a42_0x466574;return createHash(_0x520232(0x124))[_0x520232(0x114)](_0xc86d80)[_0x520232(0x108)](_0x520232(0x112));}
|
|
1
|
+
const a62_0x4371ec=a62_0xb9ba;(function(_0x3b954e,_0x429ee3){const _0x413261=a62_0xb9ba,_0x47a972=_0x3b954e();while(!![]){try{const _0x18a8f0=parseInt(_0x413261(0x1b9))/0x1+-parseInt(_0x413261(0x1be))/0x2+parseInt(_0x413261(0x1ea))/0x3*(-parseInt(_0x413261(0x1b5))/0x4)+parseInt(_0x413261(0x1e7))/0x5+-parseInt(_0x413261(0x1c2))/0x6*(parseInt(_0x413261(0x1c1))/0x7)+-parseInt(_0x413261(0x1b4))/0x8+-parseInt(_0x413261(0x1f2))/0x9*(-parseInt(_0x413261(0x1eb))/0xa);if(_0x18a8f0===_0x429ee3)break;else _0x47a972['push'](_0x47a972['shift']());}catch(_0xf2e932){_0x47a972['push'](_0x47a972['shift']());}}}(a62_0x2f75,0xe1d2d));function a62_0x2f75(){const _0x57fc25=['validation','report','version','length','flatMap','toISOString','117sDyOgs','$.services[','Invalid\x20service\x20registry\x20JSON:\x20','].manifest','message','Service\x20manifest\x20file\x20not\x20found:\x20','splice','services','parse','Service\x20registry\x20has\x20no\x20services\x20to\x20import.','manifests','map','service','command','find','Unsupported\x20service\x20registry\x20schemaVersion:\x20','Cannot\x20write\x20service\x20registry:\x20','homeDirName','11507368HhivSL','28232LelMoL','slice','description','updatedAt','459974lLiDzf','commandCount','ENOENT','name','warnings','1052304LQEJkk','push','trim','7pPKGAT','1435578GItySL','Fix\x20the\x20service\x20manifest\x20and\x20run\x20service\x20validate\x20again.','startsWith','Service\x20manifest\x20validation\x20failed:\x0a','sha256','.tmp','utf8','manifest','invalid','errors','now','serviceCode','Local\x20service\x20not\x20found:\x20','code','schemaVersion','path','].manifest.','Remove\x20or\x20migrate\x20','sort','hex','digest','registryIndex','missing','importedAt','bff\x20target\x20requires\x20functionName.','Add\x20at\x20least\x20one\x20service\x20manifest,\x20then\x20run\x20service\x20import\x20again.','service.json','localeCompare','Fix\x20the\x20JSON\x20file\x20or\x20move\x20it\x20aside\x20and\x20import\x20services\x20again.','object','string','empty','stringify','Run\x20lovrabet\x20service\x20list\x20to\x20see\x20imported\x20services.','normalizedManifest','reduce','isArray','2423480qGXnku','filePath','homeDir','222bBKzkm','2081870CybMBD'];a62_0x2f75=function(){return _0x57fc25;};return a62_0x2f75();}import{createHash}from'node:crypto';import{existsSync,mkdirSync,readFileSync,renameSync,unlinkSync,writeFileSync}from'node:fs';import{homedir}from'node:os';import{dirname,resolve}from'node:path';import{normalizeServiceTreeManifest,validateServiceTreeManifest}from'@lovrabet/cli-framework';import{PRODUCT_CONFIG}from'../../constant/product.js';import{CliErrors}from'../../errors.js';import{adaptServiceTreeManifestForLegacyFramework}from'../../commands/service/function-name-adapter.js';export const SERVICE_REGISTRY_SCHEMA_VERSION=0x1;export const SERVICE_REGISTRY_FILE_NAME=a62_0x4371ec(0x1dc);export function getServiceRegistryPath(_0x193461={}){const _0x214265=a62_0x4371ec;return resolve(_0x193461[_0x214265(0x1e9)]??homedir(),PRODUCT_CONFIG[_0x214265(0x1b3)],SERVICE_REGISTRY_FILE_NAME);}export function emptyServiceRegistry(){return{'schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'services':[]};}export function readServiceRegistry(_0x5c184a={}){const _0x32c37f=a62_0x4371ec,_0x5654ef=getServiceRegistryPath(_0x5c184a);if(!existsSync(_0x5654ef))return emptyServiceRegistry();try{const _0x2fbf10=readFileSync(_0x5654ef,_0x32c37f(0x1c8));if(!_0x2fbf10[_0x32c37f(0x1c0)]())return emptyServiceRegistry();const _0x14b177=JSON[_0x32c37f(0x1aa)](_0x2fbf10);if(_0x14b177[_0x32c37f(0x1d0)]!==SERVICE_REGISTRY_SCHEMA_VERSION)throw CliErrors[_0x32c37f(0x1ec)](_0x32c37f(0x1b1)+String(_0x14b177[_0x32c37f(0x1d0)]),_0x32c37f(0x1d3)+_0x5654ef+'.');if(!Array[_0x32c37f(0x1e6)](_0x14b177[_0x32c37f(0x1a9)]))return emptyServiceRegistry();return{'schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'updatedAt':_0x14b177[_0x32c37f(0x1b8)],'services':_0x14b177['services']};}catch(_0x77542){if(_0x77542 instanceof Error&&_0x77542[_0x32c37f(0x1bc)]==='CliError')throw _0x77542;throw CliErrors['validation'](_0x32c37f(0x1a4)+_0x5654ef,_0x32c37f(0x1de));}}export function writeServiceRegistry(_0x48709d,_0x421ff4={}){const _0x2ac495=a62_0x4371ec,_0x47ca80=getServiceRegistryPath(_0x421ff4),_0xf6c20=dirname(_0x47ca80);!existsSync(_0xf6c20)&&mkdirSync(_0xf6c20,{'recursive':!![]});const _0x15c9f4=_0x47ca80+_0x2ac495(0x1c7);try{writeFileSync(_0x15c9f4,JSON[_0x2ac495(0x1e2)](_0x48709d,null,0x2)+'\x0a',{'encoding':'utf8','mode':0x180}),renameSync(_0x15c9f4,_0x47ca80);}catch(_0x3b4719){try{unlinkSync(_0x15c9f4);}catch{}if(_0x3b4719?.[_0x2ac495(0x1cf)]===_0x2ac495(0x1bb))throw CliErrors['validation'](_0x2ac495(0x1b2)+_0x47ca80);throw _0x3b4719;}return _0x47ca80;}export function loadServiceManifestFromFile(_0x1f64cd){const _0x267a2f=a62_0x4371ec,_0x41d248=resolve(_0x1f64cd);if(!existsSync(_0x41d248))throw CliErrors[_0x267a2f(0x1ec)](_0x267a2f(0x1a7)+_0x1f64cd);let _0x19c208;const _0x4fcb7d=readFileSync(_0x41d248,_0x267a2f(0x1c8));try{_0x19c208=JSON[_0x267a2f(0x1aa)](_0x4fcb7d);}catch{throw CliErrors[_0x267a2f(0x1ec)]('Invalid\x20service\x20manifest\x20JSON:\x20'+_0x1f64cd,'Fix\x20the\x20JSON\x20syntax\x20and\x20run\x20service\x20validate\x20again.');}const _0x133c74=sha256(_0x4fcb7d),_0x3d828f=extractLoadedServiceManifests(_0x19c208,_0x133c74),_0x3591a0=aggregateValidationReports(_0x3d828f),_0x2d95b5=_0x3d828f[0x0];return{'filePath':_0x41d248,'hash':_0x133c74,'kind':isServiceRegistryLike(_0x19c208)?'registry':_0x267a2f(0x1c9),'manifest':_0x2d95b5?.[_0x267a2f(0x1c9)]??_0x19c208,'report':_0x3591a0,'normalizedManifest':_0x3d828f[_0x267a2f(0x1ef)]===0x1?_0x2d95b5?.['normalizedManifest']:undefined,'manifests':_0x3d828f};}export function importServiceManifest(_0x1e94a8,_0x51c6a7={}){const _0x7c4cc9=a62_0x4371ec,_0x10b352=loadServiceManifestFromFile(_0x1e94a8);if(!_0x10b352[_0x7c4cc9(0x1ed)]['ok'])throw CliErrors[_0x7c4cc9(0x1ec)](formatValidationFailure(_0x10b352[_0x7c4cc9(0x1ed)]),_0x7c4cc9(0x1c3));if(_0x10b352[_0x7c4cc9(0x1ac)][_0x7c4cc9(0x1ef)]===0x0)throw CliErrors[_0x7c4cc9(0x1ec)](_0x7c4cc9(0x1ab),_0x7c4cc9(0x1db));const _0x34e126=readServiceRegistry(_0x51c6a7),_0x333a0c=(_0x51c6a7[_0x7c4cc9(0x1cc)]??(()=>new Date()))()[_0x7c4cc9(0x1f1)](),_0x4e3fb1=[];let _0x4d559d=0x0,_0x18d59b=0x0;for(const _0x39239e of _0x10b352[_0x7c4cc9(0x1ac)]){if(!_0x39239e[_0x7c4cc9(0x1e4)])continue;const _0x395c42=_0x39239e[_0x7c4cc9(0x1e4)][_0x7c4cc9(0x1ae)][_0x7c4cc9(0x1cf)],_0x3e043d={'serviceCode':_0x395c42,'version':_0x39239e[_0x7c4cc9(0x1e4)][_0x7c4cc9(0x1ee)],'importedAt':_0x333a0c,'source':{'type':'file','path':_0x10b352[_0x7c4cc9(0x1e8)],'hash':_0x39239e['sourceHash']},'manifest':_0x39239e['manifest'],'normalizedManifest':_0x39239e[_0x7c4cc9(0x1e4)]},_0x47a2ee=_0x34e126[_0x7c4cc9(0x1a9)]['findIndex'](_0x3169f8=>_0x3169f8['serviceCode']===_0x395c42);_0x47a2ee>=0x0?(_0x34e126[_0x7c4cc9(0x1a9)][_0x47a2ee]=_0x3e043d,_0x18d59b++):(_0x34e126['services'][_0x7c4cc9(0x1bf)](_0x3e043d),_0x4d559d++),_0x4e3fb1[_0x7c4cc9(0x1bf)](_0x3e043d);}_0x34e126[_0x7c4cc9(0x1a9)][_0x7c4cc9(0x1d4)]((_0x1cba94,_0x5013ca)=>_0x1cba94[_0x7c4cc9(0x1cd)][_0x7c4cc9(0x1dd)](_0x5013ca[_0x7c4cc9(0x1cd)])),_0x34e126[_0x7c4cc9(0x1b8)]=_0x333a0c;const _0x385766=writeServiceRegistry(_0x34e126,_0x51c6a7);return{'registryPath':_0x385766,'entry':_0x4e3fb1[0x0],'replaced':_0x4e3fb1[_0x7c4cc9(0x1ef)]===0x1?_0x18d59b===0x1:_0x18d59b>0x0,'entries':_0x4e3fb1,'imported':_0x4d559d,'updated':_0x18d59b,'serviceCount':_0x34e126['services'][_0x7c4cc9(0x1ef)]};}export function exportServiceManifest(_0x1a7df0,_0x4bf072,_0x3f5621={}){const _0x27c614=a62_0x4371ec,_0x533ae0=getServiceRegistryPath(_0x3f5621),_0x4c81d8=getLocalServiceEntry(_0x1a7df0,_0x3f5621);if(!_0x4c81d8)throw CliErrors[_0x27c614(0x1ec)]('Local\x20service\x20not\x20found:\x20'+_0x1a7df0,_0x27c614(0x1e3));const _0x14df6d=resolve(_0x4bf072),_0x167fde=dirname(_0x14df6d);return!existsSync(_0x167fde)&&mkdirSync(_0x167fde,{'recursive':!![]}),writeFileSync(_0x14df6d,JSON[_0x27c614(0x1e2)](_0x4c81d8[_0x27c614(0x1c9)],null,0x2)+'\x0a',{'encoding':_0x27c614(0x1c8),'mode':0x180}),{'registryPath':_0x533ae0,'filePath':_0x14df6d,'entry':_0x4c81d8};}export function removeServiceManifest(_0x21c274,_0x1e5bf8={}){const _0x5c5191=a62_0x4371ec,_0x37dda6=readServiceRegistry(_0x1e5bf8),_0x59d86d=_0x21c274['trim'](),_0x29d8a4=_0x37dda6[_0x5c5191(0x1a9)]['findIndex'](_0x5c8902=>_0x5c8902['serviceCode']===_0x59d86d);if(_0x29d8a4<0x0)throw CliErrors[_0x5c5191(0x1ec)](_0x5c5191(0x1ce)+_0x59d86d,_0x5c5191(0x1e3));const [_0x7d93b4]=_0x37dda6[_0x5c5191(0x1a9)][_0x5c5191(0x1a8)](_0x29d8a4,0x1),_0x3e7577=(_0x1e5bf8[_0x5c5191(0x1cc)]??(()=>new Date()))()[_0x5c5191(0x1f1)]();_0x37dda6['updatedAt']=_0x3e7577;const _0x5ac822=writeServiceRegistry(_0x37dda6,_0x1e5bf8);return{'registryPath':_0x5ac822,'entry':_0x7d93b4,'serviceCount':_0x37dda6[_0x5c5191(0x1a9)][_0x5c5191(0x1ef)]};}export function listLocalServices(_0x209b58={}){const _0x5517cb=a62_0x4371ec;return readServiceRegistry(_0x209b58)[_0x5517cb(0x1a9)];}export function getLocalServiceEntry(_0x56f2ad,_0x2df5f2={}){const _0x44b726=a62_0x4371ec;return readServiceRegistry(_0x2df5f2)[_0x44b726(0x1a9)][_0x44b726(0x1b0)](_0x457d52=>_0x457d52[_0x44b726(0x1cd)]===_0x56f2ad[_0x44b726(0x1c0)]());}export function listLocalServiceTrees(_0x17e0c8={}){const _0xa3edc9=a62_0x4371ec;return readServiceRegistry(_0x17e0c8)[_0xa3edc9(0x1a9)][_0xa3edc9(0x1ad)](_0x25625f=>_0x25625f[_0xa3edc9(0x1e4)]);}export function inspectServiceRegistry(_0x3310b5={}){const _0x1981c5=a62_0x4371ec,_0x157f9f=getServiceRegistryPath(_0x3310b5);if(!existsSync(_0x157f9f))return emptyServiceRegistryInspection(_0x157f9f,_0x1981c5(0x1d8),![]);try{const _0x138a84=readFileSync(_0x157f9f,'utf8');if(!_0x138a84[_0x1981c5(0x1c0)]())return emptyServiceRegistryInspection(_0x157f9f,_0x1981c5(0x1e1),!![]);const _0x109870=JSON[_0x1981c5(0x1aa)](_0x138a84);if(_0x109870['schemaVersion']!==SERVICE_REGISTRY_SCHEMA_VERSION)return{...emptyServiceRegistryInspection(_0x157f9f,_0x1981c5(0x1ca),!![]),'schemaVersion':_0x109870[_0x1981c5(0x1d0)],'message':'Unsupported\x20schemaVersion:\x20'+String(_0x109870[_0x1981c5(0x1d0)])};if(!Array['isArray'](_0x109870[_0x1981c5(0x1a9)]))return{...emptyServiceRegistryInspection(_0x157f9f,_0x1981c5(0x1ca),!![]),'schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'updatedAt':_0x109870[_0x1981c5(0x1b8)],'message':'services\x20must\x20be\x20an\x20array'};const _0x58dd45=_0x109870['services'][_0x1981c5(0x1ad)](summarizeLocalServiceEntry);return{'registryPath':_0x157f9f,'exists':!![],'status':'ok','schemaVersion':SERVICE_REGISTRY_SCHEMA_VERSION,'updatedAt':_0x109870[_0x1981c5(0x1b8)],'serviceCount':_0x58dd45['length'],'commandCount':_0x58dd45[_0x1981c5(0x1e5)]((_0x338f9a,_0x465af4)=>_0x338f9a+_0x465af4[_0x1981c5(0x1ba)],0x0),'services':_0x58dd45};}catch(_0x3be9cb){return{...emptyServiceRegistryInspection(_0x157f9f,_0x1981c5(0x1ca),!![]),'message':_0x3be9cb instanceof Error?_0x3be9cb[_0x1981c5(0x1a6)]:String(_0x3be9cb)};}}export function formatValidationFailure(_0x1fa23b){const _0xb87149=a62_0x4371ec,_0x1988cf=_0x1fa23b[_0xb87149(0x1cb)][_0xb87149(0x1ad)](_0x24374a=>_0x24374a[_0xb87149(0x1d1)]+':\x20'+_0x24374a[_0xb87149(0x1a6)]);return _0xb87149(0x1c5)+_0x1988cf['join']('\x0a');}function a62_0xb9ba(_0x2dcea3,_0x5d9d37){_0x2dcea3=_0x2dcea3-0x1a4;const _0x2f751c=a62_0x2f75();let _0xb9bab2=_0x2f751c[_0x2dcea3];return _0xb9bab2;}function extractLoadedServiceManifests(_0x32de52,_0x231e2b){const _0x242b0b=a62_0x4371ec;if(!isServiceRegistryLike(_0x32de52)){const _0x32a6d6=_0x32de52,{manifest:_0x1e3c02,errors:_0x46e5c8}=adaptServiceTreeManifestForLegacyFramework(_0x32a6d6),_0x5e7e31=validateServiceTreeManifest(_0x1e3c02),_0x2259c6=mergeValidationErrors(_0x5e7e31,_0x46e5c8);return[{'manifest':_0x32a6d6,'report':_0x2259c6,'normalizedManifest':_0x2259c6['ok']?normalizeServiceTreeManifest(_0x1e3c02):undefined,'sourceHash':_0x231e2b}];}return _0x32de52['services'][_0x242b0b(0x1ad)]((_0x3ccb4e,_0x4d2745)=>{const _0x1e08f9=_0x242b0b,_0x36386d=isObjectRecord(_0x3ccb4e)?_0x3ccb4e[_0x1e08f9(0x1c9)]:undefined,{manifest:_0x558ed5,errors:_0x16b539}=adaptServiceTreeManifestForLegacyFramework(_0x36386d),_0x312b52=validateServiceTreeManifest(_0x558ed5),_0x2c669f=mergeValidationErrors(_0x312b52,_0x16b539),_0x3b1445=isObjectRecord(_0x3ccb4e)&&typeof _0x3ccb4e['serviceCode']===_0x1e08f9(0x1e0)?_0x3ccb4e[_0x1e08f9(0x1cd)]:undefined;return{'manifest':_0x36386d,'report':_0x2c669f,'normalizedManifest':_0x2c669f['ok']?normalizeServiceTreeManifest(_0x558ed5):undefined,'sourceHash':sha256(JSON[_0x1e08f9(0x1e2)](_0x36386d,null,0x2)+'\x0a'),'registryIndex':_0x4d2745,'registryServiceCode':_0x3b1445};});}function mergeValidationErrors(_0x22d42e,_0x5b765c){const _0xd8bc3b=a62_0x4371ec,_0x1cf8c2=_0x22d42e[_0xd8bc3b(0x1cb)][_0xd8bc3b(0x1ad)](_0xc8d8a6=>_0xc8d8a6[_0xd8bc3b(0x1a6)]==='bff\x20target\x20requires\x20bffCode,\x20bffId,\x20or\x20scriptName.'?{..._0xc8d8a6,'message':_0xd8bc3b(0x1da)}:_0xc8d8a6),_0x45cedf=[..._0x5b765c,..._0x1cf8c2];return{'ok':_0x45cedf[_0xd8bc3b(0x1ef)]===0x0,'errors':_0x45cedf,'warnings':_0x22d42e['warnings']};}function aggregateValidationReports(_0x10ab4a){const _0x4dcdcc=a62_0x4371ec,_0xb42a0f=_0x10ab4a[_0x4dcdcc(0x1f0)](_0x70c4f2=>_0x70c4f2['registryIndex']===undefined?_0x70c4f2['report'][_0x4dcdcc(0x1cb)]:_0x70c4f2[_0x4dcdcc(0x1ed)][_0x4dcdcc(0x1cb)][_0x4dcdcc(0x1ad)](_0x5909e8=>({..._0x5909e8,'path':prefixRegistryIssuePath(_0x70c4f2[_0x4dcdcc(0x1d7)],_0x5909e8[_0x4dcdcc(0x1d1)])}))),_0x8168ba=_0x10ab4a['flatMap'](_0xb5664=>_0xb5664[_0x4dcdcc(0x1d7)]===undefined?_0xb5664[_0x4dcdcc(0x1ed)][_0x4dcdcc(0x1bd)]:_0xb5664[_0x4dcdcc(0x1ed)][_0x4dcdcc(0x1bd)]['map'](_0x1752d5=>({..._0x1752d5,'path':prefixRegistryIssuePath(_0xb5664[_0x4dcdcc(0x1d7)],_0x1752d5[_0x4dcdcc(0x1d1)])})));return{'ok':_0xb42a0f[_0x4dcdcc(0x1ef)]===0x0,'errors':_0xb42a0f,'warnings':_0x8168ba};}function prefixRegistryIssuePath(_0x54a458,_0x4f7873){const _0x47d5d2=a62_0x4371ec;if(_0x4f7873==='$')return _0x47d5d2(0x1f3)+_0x54a458+_0x47d5d2(0x1a5);if(_0x4f7873[_0x47d5d2(0x1c4)]('$.'))return _0x47d5d2(0x1f3)+_0x54a458+_0x47d5d2(0x1a5)+_0x4f7873[_0x47d5d2(0x1b6)](0x1);if(_0x4f7873['startsWith']('$['))return _0x47d5d2(0x1f3)+_0x54a458+_0x47d5d2(0x1a5)+_0x4f7873[_0x47d5d2(0x1b6)](0x1);return _0x47d5d2(0x1f3)+_0x54a458+_0x47d5d2(0x1d2)+_0x4f7873;}function isServiceRegistryLike(_0x1fce58){const _0xe36dfd=a62_0x4371ec;return isObjectRecord(_0x1fce58)&&_0x1fce58['schemaVersion']===SERVICE_REGISTRY_SCHEMA_VERSION&&Array[_0xe36dfd(0x1e6)](_0x1fce58['services']);}function isObjectRecord(_0x26bf18){const _0x57567a=a62_0x4371ec;return Boolean(_0x26bf18)&&typeof _0x26bf18===_0x57567a(0x1df)&&!Array['isArray'](_0x26bf18);}function emptyServiceRegistryInspection(_0x46020b,_0x2fd962,_0xdb8521){return{'registryPath':_0x46020b,'exists':_0xdb8521,'status':_0x2fd962,'serviceCount':0x0,'commandCount':0x0,'services':[]};}function summarizeLocalServiceEntry(_0x4b1b59){const _0x45460c=a62_0x4371ec,_0x402c5e=_0x4b1b59[_0x45460c(0x1e4)],_0x315e0c=_0x402c5e['commands'][_0x45460c(0x1ad)](_0x1699a9=>({'path':_0x1699a9['cliPath'],'description':_0x1699a9[_0x45460c(0x1b7)],'risk':_0x1699a9['risk'],'targetKind':_0x1699a9['target']['kind'],'targetCommand':_0x1699a9['target'][_0x45460c(0x1af)]}));return{'serviceCode':_0x4b1b59['serviceCode'],'name':_0x402c5e[_0x45460c(0x1ae)][_0x45460c(0x1bc)],'description':_0x402c5e[_0x45460c(0x1ae)][_0x45460c(0x1b7)],'version':_0x4b1b59[_0x45460c(0x1ee)],'importedAt':_0x4b1b59[_0x45460c(0x1d9)],'source':_0x4b1b59['source'],'commandCount':_0x315e0c[_0x45460c(0x1ef)],'commands':_0x315e0c};}function sha256(_0x2a8a88){const _0x4fe1dc=a62_0x4371ec;return createHash(_0x4fe1dc(0x1c6))['update'](_0x2a8a88)[_0x4fe1dc(0x1d6)](_0x4fe1dc(0x1d5));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a63_0x2f394c=a63_0x18fd;(function(_0x4ee350,_0x3e23db){const _0x42f225=a63_0x18fd,_0x28a4a2=_0x4ee350();while(!![]){try{const _0x322550=-parseInt(_0x42f225(0x1fd))/0x1+-parseInt(_0x42f225(0x1f9))/0x2*(-parseInt(_0x42f225(0x211))/0x3)+-parseInt(_0x42f225(0x215))/0x4*(-parseInt(_0x42f225(0x1fa))/0x5)+parseInt(_0x42f225(0x217))/0x6*(-parseInt(_0x42f225(0x1fb))/0x7)+-parseInt(_0x42f225(0x20d))/0x8+parseInt(_0x42f225(0x216))/0x9*(-parseInt(_0x42f225(0x213))/0xa)+-parseInt(_0x42f225(0x1fe))/0xb*(-parseInt(_0x42f225(0x203))/0xc);if(_0x322550===_0x3e23db)break;else _0x28a4a2['push'](_0x28a4a2['shift']());}catch(_0x11021a){_0x28a4a2['push'](_0x28a4a2['shift']());}}}(a63_0xa9f8,0x62804));import{existsSync,lstatSync,mkdirSync,writeFileSync}from'node:fs';import{dirname,resolve}from'node:path';import{CliErrors}from'../../../errors.js';function a63_0xa9f8(){const _0x1433fb=['WRITE','trim','map','1302054OExGSt','type','1913360hEIBeZ','isDirectory','2223204crPpKw','27nzhAzy','48MjyGaD','create','Refusing\x20to\x20overwrite\x20symlink:\x20','skillDir','force','Pass\x20--force\x20to\x20overwrite\x20generated\x20template\x20files.','Create\x20a\x20local\x20runtime\x20Skill\x20draft\x20without\x20uploading\x20or\x20publishing\x20it.','bool','name','2prXuMI','5xoHDFD','221032axbGsT','validation','611160IYSorj','33979EXlORO','skill','read','target','files','4896SoKQyE','skillName','Omitting\x20--type\x20is\x20deprecated;\x20defaulting\x20to\x20write\x20for\x20compatibility.\x20Pass\x20--type\x20read\x20or\x20--type\x20write\x20explicitly.','content','Skill\x20directory\x20already\x20exists:\x20','isSymbolicLink','utf8','rendered','str','path','3271160iwgLcT'];a63_0xa9f8=function(){return _0x1433fb;};return a63_0xa9f8();}import{writeCliSideChannelLine}from'../../../utils/write-cli-side-channel.js';import{CREATE_NAME_FLAG,FORCE_FLAG,TARGET_FLAG,TYPE_FLAG}from'../flags.js';import{DEFAULT_SKILL_TARGET,renderSkillTemplate}from'../templates.js';export const createCommand={'service':a63_0x2f394c(0x1ff),'command':a63_0x2f394c(0x1f1),'description':'创建本地自包含的运行态\x20Skill\x20草稿','risk':a63_0x2f394c(0x200),'requiresAuth':![],'requiresAppCode':![],'flags':[CREATE_NAME_FLAG,TYPE_FLAG,TARGET_FLAG,FORCE_FLAG],async 'dryRun'(_0x486185){const _0x15aac3=a63_0x2f394c,_0x6d708e=buildSkillCreatePlan(_0x486185['str'](_0x15aac3(0x1f8)),_0x486185[_0x15aac3(0x20b)](_0x15aac3(0x212)),_0x486185['str'](_0x15aac3(0x201)));return{'method':_0x15aac3(0x20e),'url':_0x6d708e['skillDir'],'body':{'skillName':_0x6d708e[_0x15aac3(0x20a)][_0x15aac3(0x204)],'type':_0x6d708e['rendered'][_0x15aac3(0x212)],'selfContained':!![],'files':_0x6d708e[_0x15aac3(0x20a)]['files'][_0x15aac3(0x210)](_0x4b4ab1=>_0x4b4ab1[_0x15aac3(0x20c)])},'description':_0x15aac3(0x1f6)};},async 'execute'(_0x3417cc){const _0x167d5f=a63_0x2f394c,_0x136927=buildSkillCreatePlan(_0x3417cc[_0x167d5f(0x20b)]('name'),_0x3417cc[_0x167d5f(0x20b)]('type'),_0x3417cc[_0x167d5f(0x20b)]('target'));return writeSkillDraft(_0x136927,_0x3417cc[_0x167d5f(0x1f7)](_0x167d5f(0x1f4))),{'ok':!![],'data':{'skillName':_0x136927['rendered'][_0x167d5f(0x204)],'type':_0x136927[_0x167d5f(0x20a)][_0x167d5f(0x212)],'dir':_0x136927[_0x167d5f(0x1f3)],'files':_0x136927[_0x167d5f(0x20a)]['files'][_0x167d5f(0x210)](_0x7420fe=>_0x7420fe[_0x167d5f(0x20c)])},'message':'Created\x20local\x20Skill\x20draft\x20'+_0x136927[_0x167d5f(0x20a)]['skillName']};}};function a63_0x18fd(_0x33d192,_0x4718ed){_0x33d192=_0x33d192-0x1f1;const _0xa9f83=a63_0xa9f8();let _0x18fd1b=_0xa9f83[_0x33d192];return _0x18fd1b;}function buildSkillCreatePlan(_0x9f9251,_0x54a951,_0x437bb2){const _0xdfac56=a63_0x2f394c,_0x4d34c7=_0x54a951[_0xdfac56(0x20f)](),_0x2c590a=renderSkillTemplate({'skillName':_0x9f9251,'type':_0x4d34c7});!_0x4d34c7&&writeCliSideChannelLine(_0xdfac56(0x205));const _0x1bc08a=resolve(normalizeSkillTarget(_0x437bb2));return{'rendered':_0x2c590a,'targetRoot':_0x1bc08a,'skillDir':resolve(_0x1bc08a,_0x2c590a[_0xdfac56(0x204)])};}function normalizeSkillTarget(_0x3eb28e){return(_0x3eb28e||DEFAULT_SKILL_TARGET)['trim']()||DEFAULT_SKILL_TARGET;}function writeSkillDraft(_0x3d2253,_0x13596d){const _0x3233c3=a63_0x2f394c;if(existsSync(_0x3d2253['skillDir'])){const _0x2a4088=lstatSync(_0x3d2253[_0x3233c3(0x1f3)]);if(!_0x2a4088[_0x3233c3(0x214)]()||_0x2a4088[_0x3233c3(0x208)]())throw CliErrors[_0x3233c3(0x1fc)]('Skill\x20path\x20already\x20exists\x20and\x20is\x20not\x20a\x20writable\x20directory:\x20'+_0x3d2253[_0x3233c3(0x1f3)]);if(!_0x13596d)throw CliErrors[_0x3233c3(0x1fc)](_0x3233c3(0x207)+_0x3d2253[_0x3233c3(0x1f3)],_0x3233c3(0x1f5));}for(const _0x543fdd of _0x3d2253[_0x3233c3(0x20a)][_0x3233c3(0x202)]){const _0x467e7e=resolve(_0x3d2253['skillDir'],_0x543fdd[_0x3233c3(0x20c)]),_0x463959=dirname(_0x467e7e);mkdirSync(_0x463959,{'recursive':!![]});if(existsSync(_0x467e7e)&&lstatSync(_0x467e7e)[_0x3233c3(0x208)]())throw CliErrors['validation'](_0x3233c3(0x1f2)+_0x467e7e);writeFileSync(_0x467e7e,_0x543fdd[_0x3233c3(0x206)],_0x3233c3(0x209));}}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a64_0xa4673f=a64_0x4465;(function(_0x35617b,_0x5d6d06){const _0x27a971=a64_0x4465,_0x28361c=_0x35617b();while(!![]){try{const _0x16c020=parseInt(_0x27a971(0xbd))/0x1*(-parseInt(_0x27a971(0xc9))/0x2)+parseInt(_0x27a971(0xb6))/0x3*(parseInt(_0x27a971(0xcb))/0x4)+parseInt(_0x27a971(0xd4))/0x5*(parseInt(_0x27a971(0xad))/0x6)+parseInt(_0x27a971(0xcf))/0x7+-parseInt(_0x27a971(0xc8))/0x8+parseInt(_0x27a971(0xd5))/0x9+-parseInt(_0x27a971(0xaf))/0xa;if(_0x16c020===_0x5d6d06)break;else _0x28361c['push'](_0x28361c['shift']());}catch(_0x261c91){_0x28361c['push'](_0x28361c['shift']());}}}(a64_0x3881,0xca756));import{getRuntimeSkillVersionDiagram,putRuntimeSkillVersionDiagram,validateRuntimeSkillVersionDiagram}from'../../../core/api-client.js';import{CliErrors}from'../../../errors.js';import{readRequiredSkillDiagram}from'../diagram.js';import{DIAGRAM_FILE_FLAG,DIAGRAM_SCOPE_FLAG,DIAGRAM_SKILL_CODE_FLAG,DIAGRAM_VERSION_FLAG,EXPECTED_DIAGRAM_REVISION_FLAG,SOURCE_FINGERPRINT_FLAG}from'../flags.js';const TARGET_FLAGS=[DIAGRAM_SKILL_CODE_FLAG,DIAGRAM_VERSION_FLAG,DIAGRAM_SCOPE_FLAG],WRITE_FLAGS=[...TARGET_FLAGS,SOURCE_FINGERPRINT_FLAG,EXPECTED_DIAGRAM_REVISION_FLAG,DIAGRAM_FILE_FLAG];function readDiagramTarget(_0x51ed37){const _0x303dcb=a64_0x4465,_0x14521e=_0x51ed37[_0x303dcb(0xd6)](_0x303dcb(0xb5))[_0x303dcb(0xc5)](),_0x4c592d=_0x51ed37[_0x303dcb(0xd6)](_0x303dcb(0xc3))[_0x303dcb(0xc5)](),_0x180a51=_0x51ed37[_0x303dcb(0xd6)](_0x303dcb(0xae));if(!_0x14521e||!_0x4c592d||_0x180a51!==_0x303dcb(0xb4)&&_0x180a51!==_0x303dcb(0xb2))throw CliErrors[_0x303dcb(0xbc)](_0x303dcb(0xb8));return{'skillCode':_0x14521e,'version':_0x4c592d,'scope':_0x180a51};}async function readDiagramWriteInput(_0x371b68){const _0x1ca115=a64_0x4465,_0x2336f5=_0x371b68[_0x1ca115(0xbf)]('expected-diagram-revision'),_0x5b44dd=_0x371b68['str'](_0x1ca115(0xd2))[_0x1ca115(0xc5)]();if(!Number[_0x1ca115(0xbe)](_0x2336f5)||_0x2336f5<0x0)throw CliErrors[_0x1ca115(0xbc)]('--expected-diagram-revision\x20must\x20be\x20a\x20non-negative\x20integer.');if(!/^sha256:[0-9a-f]{64}$/[_0x1ca115(0xca)](_0x5b44dd))throw CliErrors[_0x1ca115(0xbc)](_0x1ca115(0xbb));return{'expectedDiagramRevision':_0x2336f5,'sourceFingerprint':_0x5b44dd,'diagram':await readRequiredSkillDiagram(_0x371b68['str']('diagram-file'))};}export const diagramValidateCommand={'service':a64_0xa4673f(0xc2),'command':'diagram-validate','description':'Validate\x20a\x20Mermaid\x20diagram\x20replacement\x20for\x20one\x20exact\x20Skill\x20version','risk':a64_0xa4673f(0xc7),'flags':WRITE_FLAGS,async 'execute'(_0x3d2982){const _0x543689=a64_0xa4673f,_0x3180ea=readDiagramTarget(_0x3d2982),_0x44fd38=await validateRuntimeSkillVersionDiagram(_0x3d2982[_0x543689(0xcc)],_0x3180ea['skillCode'],_0x3180ea[_0x543689(0xc3)],_0x3180ea['scope'],await readDiagramWriteInput(_0x3d2982));return{'ok':!![],'data':_0x44fd38,'message':_0x543689(0xba)+_0x3180ea[_0x543689(0xd3)]+'@'+_0x3180ea[_0x543689(0xc3)]+'.'};}};function a64_0x4465(_0x12044b,_0x4ac1b0){_0x12044b=_0x12044b-0xad;const _0x3881b8=a64_0x3881();let _0x446563=_0x3881b8[_0x12044b];return _0x446563;}export const diagramPushCommand={'service':a64_0xa4673f(0xc2),'command':'diagram-push','description':'为指定版本的\x20Skill\x20创建或替换\x20Mermaid\x20图','risk':a64_0xa4673f(0xb3),'confirmationDescription':a64_0xa4673f(0xd0),'flags':WRITE_FLAGS,async 'execute'(_0x42f0e0){const _0x29703c=a64_0xa4673f,_0x45b14e=readDiagramTarget(_0x42f0e0),_0x45ad9c=await putRuntimeSkillVersionDiagram(_0x42f0e0['appCode'],_0x45b14e[_0x29703c(0xd3)],_0x45b14e['version'],_0x45b14e[_0x29703c(0xae)],await readDiagramWriteInput(_0x42f0e0));return{'ok':!![],'data':_0x45ad9c,'message':_0x45ad9c[_0x29703c(0xce)]===_0x29703c(0xc1)?_0x29703c(0xc0)+_0x45b14e[_0x29703c(0xd3)]+'@'+_0x45b14e[_0x29703c(0xc3)]+'\x20is\x20unchanged.':(_0x45ad9c['action']===_0x29703c(0xd7)?_0x29703c(0xcd):'Updated')+_0x29703c(0xc6)+_0x45b14e[_0x29703c(0xd3)]+'@'+_0x45b14e['version']+'.'};}};export const diagramShowCommand={'service':a64_0xa4673f(0xc2),'command':a64_0xa4673f(0xb1),'description':'Show\x20the\x20current\x20Mermaid\x20diagram\x20for\x20one\x20exact\x20Skill\x20version','risk':'read','flags':TARGET_FLAGS,async 'execute'(_0x5c7d43){const _0x35b525=a64_0xa4673f,_0x3ffe0e=readDiagramTarget(_0x5c7d43),_0x11be2c=await getRuntimeSkillVersionDiagram(_0x5c7d43[_0x35b525(0xcc)],_0x3ffe0e['skillCode'],_0x3ffe0e[_0x35b525(0xc3)],_0x3ffe0e[_0x35b525(0xae)]);return{'ok':!![],'data':_0x11be2c,'message':_0x11be2c[_0x35b525(0xc4)]?_0x35b525(0xb7)+_0x3ffe0e[_0x35b525(0xd3)]+'@'+_0x3ffe0e[_0x35b525(0xc3)]+_0x35b525(0xd1)+_0x11be2c[_0x35b525(0xb9)]+'.':'No\x20Skill\x20diagram\x20is\x20stored\x20for\x20'+_0x3ffe0e[_0x35b525(0xd3)]+'@'+_0x3ffe0e[_0x35b525(0xc3)]+_0x35b525(0xb0)+_0x11be2c[_0x35b525(0xb9)]+'.'};}};function a64_0x3881(){const _0x378d79=['appCode','Created','action','9182292INEXAu','将为指定\x20Skill\x20的精确版本创建或替换\x20Mermaid\x20流程图;服务端版本已变化时会拒绝覆盖。确认界面不会展示图表正文。',';\x20next\x20write\x20expects\x20revision\x20','source-fingerprint','skillCode','1720DgSCLx','6123141HnevaL','str','created','3642ApvJMU','scope','8241560DFjUda',';\x20first\x20write\x20expects\x20revision\x20','diagram-show','company','write','personal','skill-code','1437syqQXL','Found\x20Skill\x20diagram\x20for\x20','--skill-code,\x20--version,\x20and\x20--scope\x20personal|company\x20are\x20required.','expectedDiagramRevision','Skill\x20diagram\x20validation\x20passed\x20for\x20','--source-fingerprint\x20must\x20be\x20lowercase\x20sha256:<64\x20hex\x20characters>.','validation','2lURBLb','isInteger','num','Skill\x20diagram\x20for\x20','unchanged','skill','version','found','trim','\x20Skill\x20diagram\x20for\x20','read','11533072CnglwK','718646XAEEFU','test','13468BEMpqx'];a64_0x3881=function(){return _0x378d79;};return a64_0x3881();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a65_0x4f4335=a65_0x3c04;(function(_0x44197f,_0x48908f){const _0x311d56=a65_0x3c04,_0x118176=_0x44197f();while(!![]){try{const _0x55a00c=-parseInt(_0x311d56(0x158))/0x1*(parseInt(_0x311d56(0x15e))/0x2)+-parseInt(_0x311d56(0x15a))/0x3*(-parseInt(_0x311d56(0x14c))/0x4)+parseInt(_0x311d56(0x156))/0x5+-parseInt(_0x311d56(0x148))/0x6+-parseInt(_0x311d56(0x152))/0x7+-parseInt(_0x311d56(0x14e))/0x8+parseInt(_0x311d56(0x153))/0x9;if(_0x55a00c===_0x48908f)break;else _0x118176['push'](_0x118176['shift']());}catch(_0x4d2999){_0x118176['push'](_0x118176['shift']());}}}(a65_0x1218,0x380d0));import{CliErrors}from'../../../errors.js';import{CODE_FLAG,FORCE_FLAG,PROJECT_TARGET_FLAG,SCOPE_FLAG}from'../flags.js';import{normalizeSyncScopes}from'../scopes.js';import{summarizeRuntimeSkill}from'../summary.js';export const installCommand={'service':'skill','command':a65_0x4f4335(0x167),'description':'Install\x20current-app\x20business\x20Skills\x20into\x20user-level\x20Agent\x20skill\x20directories','risk':'read','requiresAuth':!![],'requiresAppCode':!![],'hasFormat':![],'flags':[CODE_FLAG,SCOPE_FLAG,FORCE_FLAG,PROJECT_TARGET_FLAG],async 'execute'(_0x1ba4dc){return syncRuntimeSkills(_0x1ba4dc);}};function a65_0x3c04(_0x315771,_0x412f4e){_0x315771=_0x315771-0x145;const _0x12185c=a65_0x1218();let _0x3c0409=_0x12185c[_0x315771];return _0x3c0409;}async function syncRuntimeSkills(_0x28fb5a){const _0x426f61=a65_0x4f4335,{downloadRuntimeSkillPackage:_0x4207c6,listRuntimeSkills:_0x2aa43e}=await import(_0x426f61(0x157)),{linkEffectiveRuntimeSkills:_0x4d953f,materializeRuntimeSkill:_0x51dffa,pruneStaleRuntimeSkillCache:_0x461139,pruneStaleRuntimeSkillLinks:_0x1156fa,resolveRuntimeSkillInstallTarget:_0x13e730}=await import(_0x426f61(0x169)),_0x125258=_0x28fb5a[_0x426f61(0x155)](_0x426f61(0x164)),_0x2fe815=normalizeSyncScopes(_0x28fb5a[_0x426f61(0x155)](_0x426f61(0x16a))),_0x5a2dd0=_0x28fb5a[_0x426f61(0x165)]??'production',_0x1ecbb6=_0x28fb5a['accessKey'],_0xd07912=_0x28fb5a[_0x426f61(0x14f)](_0x426f61(0x14b));if(!_0x1ecbb6)throw CliErrors[_0x426f61(0x162)](_0x426f61(0x14d));const _0x2217b8=_0x13e730(_0x28fb5a['appCode'],_0x28fb5a['bool'](_0x426f61(0x150))?_0x426f61(0x150):'global'),_0x3135e3=_0x13e730(_0x28fb5a[_0x426f61(0x16b)],_0x2217b8[_0x426f61(0x16a)]===_0x426f61(0x150)?'global':_0x426f61(0x150)),_0x3e35b0=await Promise[_0x426f61(0x15f)](_0x2fe815[_0x426f61(0x15d)](_0x1a3e76=>_0x2aa43e({'appCode':_0x28fb5a[_0x426f61(0x16b)],'scope':_0x1a3e76,'code':_0x125258[_0x426f61(0x166)]()||undefined}))),_0xb913fd=_0x2fe815[_0x426f61(0x159)]('personal')?_0x3e35b0[_0x426f61(0x147)]((_0x23c61b,_0x45323c)=>_0x2fe815[_0x45323c]===_0x426f61(0x151)?_0x23c61b[_0x426f61(0x151)]:[]):[],_0x4a3089=_0x2fe815['includes'](_0x426f61(0x16d))?_0x3e35b0[_0x426f61(0x147)]((_0x4f3e99,_0x165d7d)=>_0x2fe815[_0x165d7d]===_0x426f61(0x16d)?_0x4f3e99[_0x426f61(0x16d)]:[]):[],_0x26b21c=new Set([..._0xb913fd[_0x426f61(0x15d)](_0x499e66=>_0x499e66['skillCode']?.[_0x426f61(0x166)]())[_0x426f61(0x154)](_0x248e8a=>Boolean(_0x248e8a)),..._0x4a3089[_0x426f61(0x15d)](_0x18faf2=>_0x18faf2[_0x426f61(0x145)]?.[_0x426f61(0x166)]())[_0x426f61(0x154)](_0x32d507=>Boolean(_0x32d507))]),_0x19c429=_0x125258[_0x426f61(0x166)]()?[_0x125258[_0x426f61(0x166)]()]:undefined,_0x17554c=_0x2fe815[_0x426f61(0x160)]===0x2&&_0x2fe815[_0x426f61(0x159)]('personal')&&_0x2fe815['includes'](_0x426f61(0x16d)),_0x166a8b=_0x17554c?_0x1156fa(_0x2217b8,_0x26b21c,_0x19c429):[],_0xe92b65=_0x461139({'env':_0x5a2dd0,'accessKey':_0x1ecbb6,'appCode':_0x28fb5a['appCode'],'activeSkillCodes':_0x26b21c,'pruneSkillCodes':_0x19c429,'scopes':_0x2fe815,'protectedLinkRoots':_0x3135e3['skillRoots']}),_0x177349=[];for(const _0x3eb2a7 of _0xb913fd){_0x177349[_0x426f61(0x168)](_0x51dffa(_0x3eb2a7,_0x426f61(0x151),{'env':_0x5a2dd0,'accessKey':_0x1ecbb6,'appCode':_0x28fb5a[_0x426f61(0x16b)],'force':_0xd07912,'packageBytes':await downloadSkillPackage(_0x3eb2a7,_0x426f61(0x151),_0x28fb5a[_0x426f61(0x16b)],_0x4207c6)}));}for(const _0x2e72d9 of _0x4a3089){_0x177349[_0x426f61(0x168)](_0x51dffa(_0x2e72d9,_0x426f61(0x16d),{'env':_0x5a2dd0,'accessKey':_0x1ecbb6,'appCode':_0x28fb5a[_0x426f61(0x16b)],'force':_0xd07912,'packageBytes':await downloadSkillPackage(_0x2e72d9,_0x426f61(0x16d),_0x28fb5a[_0x426f61(0x16b)],_0x4207c6)}));}const _0x4b89e6=_0x4d953f(_0x177349,_0x2217b8),_0x2f029c=countLinkActions(_0x4b89e6);return{'ok':!![],'data':{'appCode':_0x28fb5a[_0x426f61(0x16b)],..._0x2217b8[_0x426f61(0x16a)]===_0x426f61(0x150)?{'installTarget':{'scope':_0x2217b8[_0x426f61(0x16a)],'skillRoots':[..._0x2217b8[_0x426f61(0x14a)]]}}:{},'personal':_0xb913fd[_0x426f61(0x160)],'company':_0x4a3089['length'],'materialized':_0x177349[_0x426f61(0x160)],'links':{'total':_0x4b89e6[_0x426f61(0x160)],'created':_0x2f029c[_0x426f61(0x161)]??0x0,'updated':_0x2f029c[_0x426f61(0x15c)]??0x0,'unchanged':_0x2f029c['unchanged']??0x0,'skipped':0x0,'conflicted':0x0},'pruned':{'links':_0x166a8b[_0x426f61(0x154)](_0x5e7d35=>_0x5e7d35['action']===_0x426f61(0x163))['length'],'cacheDirs':_0xe92b65[_0x426f61(0x154)](_0x4377a0=>_0x4377a0[_0x426f61(0x149)]===_0x426f61(0x163))[_0x426f61(0x160)],'skipped':[..._0x166a8b,..._0xe92b65]['filter'](_0x238890=>_0x238890[_0x426f61(0x149)]==='skipped')['length']},'skills':{'personal':_0xb913fd[_0x426f61(0x15d)](summarizeRuntimeSkill),'company':_0x4a3089['map'](summarizeRuntimeSkill)}},'message':_0x426f61(0x146)+_0xb913fd['length']+'\x20personal\x20and\x20'+_0x4a3089['length']+'\x20company\x20Skill(s).'};}async function downloadSkillPackage(_0x2c0959,_0x235730,_0x5da9dd,_0x185f98){const _0x1151df=a65_0x4f4335,_0x3044e0=_0x2c0959[_0x1151df(0x15b)]?.[_0x1151df(0x166)]();return _0x3044e0?_0x185f98(_0x235730,_0x2c0959[_0x1151df(0x145)],_0x5da9dd,_0x3044e0):_0x185f98(_0x235730,_0x2c0959['skillCode'],_0x5da9dd);}function a65_0x1218(){const _0x418d0e=['company','skillCode','Installed\x20','flatMap','463698uIeDiF','action','skillRoots','force','1164404ENlsNC','Business\x20Skill\x20installation\x20requires\x20authentication.\x20Run\x20`lovrabet\x20auth\x20login`,\x20or\x20use\x20`lovrabet\x20cli-skill\x20install`\x20for\x20CLI\x20Built-in\x20Skill\x20setup.','2304768cqRgTQ','bool','project','personal','2616201FIvEFM','3977271rslBwj','filter','str','1687570mzPhyt','../../../core/api-client.js','101828eLDcTQ','includes','3QjaVVd','version','updated','map','2UAueNw','all','length','created','authRequired','removed','code','envName','trim','install','push','../../../skills/runtime-skill-sync.js','scope','appCode','reduce'];a65_0x1218=function(){return _0x418d0e;};return a65_0x1218();}function countLinkActions(_0x5496df){const _0x49e543=a65_0x4f4335;return _0x5496df[_0x49e543(0x16c)]((_0x190eee,_0x192f95)=>{const _0x2b4aa3=_0x49e543;return _0x190eee[_0x192f95[_0x2b4aa3(0x149)]]=(_0x190eee[_0x192f95[_0x2b4aa3(0x149)]]??0x0)+0x1,_0x190eee;},{});}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
const a66_0x42a1b0=a66_0x3904;(function(_0x4cf755,_0x1e2c2a){const _0x403fd6=a66_0x3904,_0x2e9736=_0x4cf755();while(!![]){try{const _0x12bba1=parseInt(_0x403fd6(0x160))/0x1*(-parseInt(_0x403fd6(0x16c))/0x2)+parseInt(_0x403fd6(0x154))/0x3*(parseInt(_0x403fd6(0x162))/0x4)+parseInt(_0x403fd6(0x163))/0x5+-parseInt(_0x403fd6(0x158))/0x6*(parseInt(_0x403fd6(0x164))/0x7)+-parseInt(_0x403fd6(0x166))/0x8*(parseInt(_0x403fd6(0x15e))/0x9)+-parseInt(_0x403fd6(0x165))/0xa*(parseInt(_0x403fd6(0x17a))/0xb)+parseInt(_0x403fd6(0x172))/0xc*(parseInt(_0x403fd6(0x15c))/0xd);if(_0x12bba1===_0x1e2c2a)break;else _0x2e9736['push'](_0x2e9736['shift']());}catch(_0x386c5d){_0x2e9736['push'](_0x2e9736['shift']());}}}(a66_0x32b8,0x327a1));import{CliErrors}from'../../../errors.js';import{CODE_FLAG,LIST_SCOPE_FLAG,LOCAL_FLAG,PROJECT_TARGET_FLAG}from'../flags.js';function a66_0x3904(_0xba3a36,_0x3f0c4c){_0xba3a36=_0xba3a36-0x154;const _0x32b851=a66_0x32b8();let _0x390416=_0x32b851[_0xba3a36];return _0x390416;}function a66_0x32b8(){const _0x191b83=['project','60dNJDVi','filter','code','\x20local\x20Skill(s).','bool','production','scope','List\x20runtime\x20Skills\x20from\x20remote\x20or\x20CLI-managed\x20local\x20cache','45727VGVQNm','Listed\x20','3PxTXrs','remote','accessKey','global','78kdUZIX','local','length','../../../core/api-client.js','775996sOIkwt','envName','19593QttOfJ','skill','39ZELKQl','map','861132MafNnR','316065Otumug','49798bDJRDi','130TkoQse','696IjnOrM','list','../../../skills/runtime-skill-sync.js','authRequired','personal','builtin','1758iXJRLX','appCode','trim','company','str'];a66_0x32b8=function(){return _0x191b83;};return a66_0x32b8();}import{listScopeToRemoteScope,listScopeToRuntimeScopes,normalizeListScope,shouldListScope}from'../scopes.js';import{summarizeLocalRuntimeSkill,summarizeRuntimeSkill}from'../summary.js';export const listCommand={'service':a66_0x42a1b0(0x15f),'command':a66_0x42a1b0(0x167),'description':a66_0x42a1b0(0x179),'risk':'read','flags':[CODE_FLAG,LIST_SCOPE_FLAG,LOCAL_FLAG,PROJECT_TARGET_FLAG],async 'execute'(_0x1fe802){const _0x2ab003=a66_0x42a1b0,_0x1c793d=_0x1fe802[_0x2ab003(0x170)](_0x2ab003(0x174)),_0x54fb01=normalizeListScope(_0x1fe802['str'](_0x2ab003(0x178)));if(_0x1fe802[_0x2ab003(0x176)](_0x2ab003(0x159))){const _0x1dd2f7=_0x1fe802[_0x2ab003(0x156)];if(!_0x1dd2f7)throw CliErrors[_0x2ab003(0x169)]();const {listLocalRuntimeSkills:_0x58846d,resolveRuntimeSkillInstallTarget:_0x4a86d9}=await import(_0x2ab003(0x168)),_0x5ad0c1=_0x4a86d9(_0x1fe802[_0x2ab003(0x16d)],_0x1fe802['bool'](_0x2ab003(0x171))?_0x2ab003(0x171):_0x2ab003(0x157)),_0x581983=_0x58846d({'env':_0x1fe802[_0x2ab003(0x15d)]??_0x2ab003(0x177),'accessKey':_0x1dd2f7,'appCode':_0x1fe802[_0x2ab003(0x16d)],'scopes':listScopeToRuntimeScopes(_0x54fb01),'code':_0x1c793d[_0x2ab003(0x16e)]()||undefined},_0x5ad0c1),_0xa49d8=groupLocalRuntimeSkills(_0x581983);return{'ok':!![],'data':{'appCode':_0x1fe802['appCode'],'source':_0x2ab003(0x159),..._0x5ad0c1[_0x2ab003(0x178)]===_0x2ab003(0x171)?{'installScope':_0x5ad0c1[_0x2ab003(0x178)]}:{},'scope':_0x54fb01,'total':_0x581983[_0x2ab003(0x15a)],'personal':_0xa49d8[_0x2ab003(0x16a)]['length'],'company':_0xa49d8[_0x2ab003(0x16f)]['length'],'items':_0x581983[_0x2ab003(0x161)](summarizeLocalRuntimeSkill),'skills':{'personal':_0xa49d8[_0x2ab003(0x16a)][_0x2ab003(0x161)](summarizeLocalRuntimeSkill),'company':_0xa49d8['company'][_0x2ab003(0x161)](summarizeLocalRuntimeSkill)}},'message':'Listed\x20'+_0x581983[_0x2ab003(0x15a)]+_0x2ab003(0x175)};}const {listRuntimeSkills:_0x29154a}=await import(_0x2ab003(0x15b)),_0x300eb5=await _0x29154a({'appCode':_0x1fe802[_0x2ab003(0x16d)],'scope':listScopeToRemoteScope(_0x54fb01),'code':_0x1c793d['trim']()||undefined}),_0x20d9dc=shouldListScope(_0x54fb01,'personal')?_0x300eb5[_0x2ab003(0x16a)]??[]:[],_0x10028d=shouldListScope(_0x54fb01,_0x2ab003(0x16f))?_0x300eb5[_0x2ab003(0x16f)]??[]:[],_0x5926c8=[..._0x20d9dc,..._0x10028d];return{'ok':!![],'data':{'appCode':_0x1fe802[_0x2ab003(0x16d)],'source':_0x2ab003(0x155),'scope':_0x54fb01,'total':_0x5926c8['length'],'personal':_0x20d9dc[_0x2ab003(0x15a)],'company':_0x10028d[_0x2ab003(0x15a)],'items':_0x5926c8[_0x2ab003(0x161)](summarizeRuntimeSkill),'skills':{'personal':_0x20d9dc['map'](summarizeRuntimeSkill),'company':_0x10028d[_0x2ab003(0x161)](summarizeRuntimeSkill)}},'message':_0x2ab003(0x17b)+_0x5926c8[_0x2ab003(0x15a)]+'\x20remote\x20Skill(s).'};}};function groupLocalRuntimeSkills(_0x3f316e){const _0x4f4f4b=a66_0x42a1b0;return{'personal':_0x3f316e['filter'](_0x2a8642=>_0x2a8642[_0x4f4f4b(0x178)]===_0x4f4f4b(0x16a)),'company':_0x3f316e[_0x4f4f4b(0x173)](_0x4fa923=>_0x4fa923['scope']===_0x4f4f4b(0x16f)),'builtin':_0x3f316e[_0x4f4f4b(0x173)](_0x28c2db=>_0x28c2db['scope']===_0x4f4f4b(0x16b))};}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a67_0x535d29=a67_0x3155;function a67_0x5574(){const _0x4afa37=['400203KOFKZS','900908IASjTV','将读取本地\x20Skill\x20内容:个人范围会立即保存并生效,公司范围会提交一个新版本进入审核。确认界面不会展示目录路径或\x20Skill\x20正文。','1243024fbrosc','864760YlvUic','push','skill','将本地\x20Skill\x20目录推送到个人范围,或提交公司范围版本审核','6vgUEQh','757712BMJNCL','1303995FFmqEM','505425ITDytz'];a67_0x5574=function(){return _0x4afa37;};return a67_0x5574();}function a67_0x3155(_0x4ae462,_0x501cc8){_0x4ae462=_0x4ae462-0x174;const _0x557455=a67_0x5574();let _0x3155e8=_0x557455[_0x4ae462];return _0x3155e8;}(function(_0x52b375,_0x557e06){const _0x3e9b27=a67_0x3155,_0x3252db=_0x52b375();while(!![]){try{const _0xeb8a69=-parseInt(_0x3e9b27(0x17b))/0x1+parseInt(_0x3e9b27(0x178))/0x2+parseInt(_0x3e9b27(0x17a))/0x3+parseInt(_0x3e9b27(0x17c))/0x4+parseInt(_0x3e9b27(0x17f))/0x5*(parseInt(_0x3e9b27(0x177))/0x6)+-parseInt(_0x3e9b27(0x179))/0x7+-parseInt(_0x3e9b27(0x17e))/0x8;if(_0xeb8a69===_0x557e06)break;else _0x3252db['push'](_0x3252db['shift']());}catch(_0x2d45bd){_0x3252db['push'](_0x3252db['shift']());}}}(a67_0x5574,0x31b7c));import{CONFIRM_WARNINGS_FLAG,DIAGRAM_FILE_FLAG,DIR_FLAG,PUSH_SCOPE_FLAG}from'../flags.js';import{skillPushDryRun,skillPushExecute}from'../push-execute.js';export const pushCommand={'service':a67_0x535d29(0x175),'command':a67_0x535d29(0x174),'description':a67_0x535d29(0x176),'risk':'write','confirmationDescription':a67_0x535d29(0x17d),'flags':[DIR_FLAG,DIAGRAM_FILE_FLAG,PUSH_SCOPE_FLAG,CONFIRM_WARNINGS_FLAG],'dryRun':skillPushDryRun,'execute':skillPushExecute};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a68_0x235aca=a68_0x3a2c;(function(_0x3bea02,_0x333142){const _0x234a9a=a68_0x3a2c,_0x3a7706=_0x3bea02();while(!![]){try{const _0x209d4d=parseInt(_0x234a9a(0x177))/0x1*(parseInt(_0x234a9a(0x16f))/0x2)+parseInt(_0x234a9a(0x17b))/0x3*(-parseInt(_0x234a9a(0x171))/0x4)+parseInt(_0x234a9a(0x172))/0x5+parseInt(_0x234a9a(0x17d))/0x6*(-parseInt(_0x234a9a(0x170))/0x7)+parseInt(_0x234a9a(0x16b))/0x8*(-parseInt(_0x234a9a(0x174))/0x9)+parseInt(_0x234a9a(0x173))/0xa+parseInt(_0x234a9a(0x179))/0xb;if(_0x209d4d===_0x333142)break;else _0x3a7706['push'](_0x3a7706['shift']());}catch(_0x4022b7){_0x3a7706['push'](_0x3a7706['shift']());}}}(a68_0xa830,0x47c14));import{DIR_FLAG,STRICT_FLAG}from'../flags.js';import{throwIfSkillValidationFailed,validateSkillDirectory}from'../validate.js';function a68_0x3a2c(_0x3495b5,_0x58b0bb){_0x3495b5=_0x3495b5-0x16b;const _0xa830df=a68_0xa830();let _0x3a2c8a=_0xa830df[_0x3495b5];return _0x3a2c8a;}function a68_0xa830(){const _0x424469=['bool','dir','warnings','10HnGzmx','1159879kjsAGD','102980kCcJGV','200340hDNGsI','3685520OPXafD','153FXNQTB','validate','strict','29763ORfSuR','skill','7212249TfTBlZ','read','21YHruxp','str','6zxvfAw','269776wJqKmj'];a68_0xa830=function(){return _0x424469;};return a68_0xa830();}export const validateCommand={'service':a68_0x235aca(0x178),'command':a68_0x235aca(0x175),'description':'Validate\x20a\x20local\x20Skill\x20directory\x20as\x20a\x20self-contained\x20delivery\x20package','risk':a68_0x235aca(0x17a),'requiresAuth':![],'requiresAppCode':![],'flags':[DIR_FLAG,STRICT_FLAG],async 'execute'(_0x2a257c){const _0x5373e6=a68_0x235aca,_0x4b69ca=_0x2a257c[_0x5373e6(0x16c)](_0x5373e6(0x176)),_0x2e8514=validateSkillDirectory(_0x2a257c[_0x5373e6(0x17c)](_0x5373e6(0x16d)),{'strict':_0x4b69ca});return throwIfSkillValidationFailed(_0x2e8514,_0x4b69ca),{'ok':!![],'data':{'dir':_0x2e8514[_0x5373e6(0x16d)],'type':_0x2e8514['type'],'errors':_0x2e8514['errors'],'warnings':_0x2e8514[_0x5373e6(0x16e)]},'message':'Skill\x20validation\x20passed.'};}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x256b96,_0x903227){const _0x415f02=a69_0x23f8,_0x3b5ed6=_0x256b96();while(!![]){try{const _0x342f56=-parseInt(_0x415f02(0x74))/0x1*(-parseInt(_0x415f02(0x71))/0x2)+-parseInt(_0x415f02(0x79))/0x3*(parseInt(_0x415f02(0x7b))/0x4)+-parseInt(_0x415f02(0x88))/0x5+parseInt(_0x415f02(0x7d))/0x6+-parseInt(_0x415f02(0x81))/0x7*(parseInt(_0x415f02(0x77))/0x8)+-parseInt(_0x415f02(0x83))/0x9*(-parseInt(_0x415f02(0x7c))/0xa)+parseInt(_0x415f02(0x84))/0xb;if(_0x342f56===_0x903227)break;else _0x3b5ed6['push'](_0x3b5ed6['shift']());}catch(_0xcb0312){_0x3b5ed6['push'](_0x3b5ed6['shift']());}}}(a69_0x5df6,0x62bfc));import{existsSync,readFileSync,realpathSync,statSync}from'node:fs';import{resolve}from'node:path';function a69_0x5df6(){const _0x218f49=['10KMrBFu','2324436emnXIe','validation','trim','Mermaid\x20flowchart\x20path\x20is\x20not\x20a\x20regular\x20file:\x20','14KJUwII','Fix\x20the\x20Mermaid\x20syntax\x20reported\x20by\x20your\x20editor\x20or\x20preview\x20tool,\x20then\x20retry\x20with\x20the\x20same\x20file.','4077261ImYINl','5650788sKDmpY','defineProperties','mermaid','window','3735965gEWtKL','Unable\x20to\x20read\x20Mermaid\x20flowchart\x20from\x20standard\x20input.','isFile','parse','10EccLXt','document','Mermaid\x20syntax\x20validation\x20failed.','56018uKQlCH','default','replace','1883656nZlDKO','diagram','34950NoPECW','Generate\x20a\x20Mermaid\x20flowchart\x20and\x20pass\x20--diagram-file\x20<path>,\x20or\x20use\x20--diagram-file\x20-\x20for\x20standard\x20input.','4WBNJSW'];a69_0x5df6=function(){return _0x218f49;};return a69_0x5df6();}import{JSDOM}from'jsdom';import{CliErrors}from'../../errors.js';let mermaidApiPromise;function a69_0x23f8(_0x456aec,_0x1b6275){_0x456aec=_0x456aec-0x71;const _0x5df626=a69_0x5df6();let _0x23f8ab=_0x5df626[_0x456aec];return _0x23f8ab;}export async function readRequiredSkillDiagram(_0x312672){const _0x15029a=a69_0x23f8;return(await readRequiredSkillDiagramInput(_0x312672))[_0x15029a(0x78)];}export async function readRequiredSkillDiagramInput(_0x37214f){const _0x196504=a69_0x23f8,_0x158665=_0x37214f[_0x196504(0x7f)]();if(!_0x158665)throw CliErrors['validation']('--diagram-file\x20is\x20required\x20when\x20publishing\x20a\x20Skill\x20version.',_0x196504(0x7a));let _0x2b0316,_0x3b2ffd;if(_0x158665==='-')try{_0x2b0316=readFileSync(0x0,'utf8');}catch{throw CliErrors['validation'](_0x196504(0x89));}else{const _0x369254=resolve(_0x158665);if(!existsSync(_0x369254))throw CliErrors[_0x196504(0x7e)]('Mermaid\x20flowchart\x20file\x20not\x20found:\x20'+_0x369254);if(!statSync(_0x369254)[_0x196504(0x8a)]())throw CliErrors[_0x196504(0x7e)](_0x196504(0x80)+_0x369254);_0x3b2ffd=realpathSync(_0x369254),_0x2b0316=readFileSync(_0x3b2ffd,'utf8');}return{'diagram':{'schemaVersion':0x1,'mermaid':await validateAndCanonicalizeMermaid(_0x2b0316)},'sourceFilePath':_0x3b2ffd};}export async function validateAndCanonicalizeMermaid(_0x2c0fb5){const _0x2414b7=a69_0x23f8,_0x2179f5=_0x2c0fb5[_0x2414b7(0x76)](/\r\n/g,'\x0a')[_0x2414b7(0x76)](/\r/g,'\x0a')['replace'](/\n+$/,'')+'\x0a';try{const _0x24e7bd=await loadMermaidApi();await _0x24e7bd[_0x2414b7(0x8b)](_0x2179f5);}catch{throw diagramValidationError();}return _0x2179f5;}function loadMermaidApi(){return mermaidApiPromise??=((async()=>{const _0x24e2a5=a69_0x23f8;if(!(_0x24e2a5(0x87)in globalThis)||!(_0x24e2a5(0x72)in globalThis)){const _0x268ffe=new JSDOM('');Object[_0x24e2a5(0x85)](globalThis,{'window':{'configurable':!![],'value':_0x268ffe['window']},'document':{'configurable':!![],'value':_0x268ffe[_0x24e2a5(0x87)][_0x24e2a5(0x72)]}});}return(await import(_0x24e2a5(0x86)))[_0x24e2a5(0x75)];})()),mermaidApiPromise;}function diagramValidationError(){const _0x327d18=a69_0x23f8;return CliErrors[_0x327d18(0x7e)](_0x327d18(0x73),_0x327d18(0x82));}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const
|
|
1
|
+
const a70_0x5cc18e=a70_0x2339;(function(_0x1d45f5,_0x514819){const _0x4736ad=a70_0x2339,_0x5b62e2=_0x1d45f5();while(!![]){try{const _0x1574b7=-parseInt(_0x4736ad(0x18f))/0x1*(parseInt(_0x4736ad(0x18d))/0x2)+parseInt(_0x4736ad(0x1aa))/0x3+-parseInt(_0x4736ad(0x199))/0x4+-parseInt(_0x4736ad(0x196))/0x5+parseInt(_0x4736ad(0x188))/0x6*(parseInt(_0x4736ad(0x19f))/0x7)+parseInt(_0x4736ad(0x195))/0x8+parseInt(_0x4736ad(0x1a7))/0x9*(parseInt(_0x4736ad(0x182))/0xa);if(_0x1574b7===_0x514819)break;else _0x5b62e2['push'](_0x5b62e2['shift']());}catch(_0xd1077c){_0x5b62e2['push'](_0x5b62e2['shift']());}}}(a70_0x2396,0x8d882));import{DEFAULT_SKILL_TARGET,SKILL_NAME_PATTERN,SKILL_TYPES}from'./templates.js';function a70_0x2339(_0x564067,_0xeb6642){_0x564067=_0x564067-0x182;const _0x23962f=a70_0x2396();let _0x2339d0=_0x23962f[_0x564067];return _0x2339d0;}export const CODE_FLAG={'name':a70_0x5cc18e(0x1a6),'type':a70_0x5cc18e(0x186),'description':a70_0x5cc18e(0x19a)};export const SCOPE_FLAG={'name':a70_0x5cc18e(0x1ac),'type':'string','description':a70_0x5cc18e(0x187),'enum':[a70_0x5cc18e(0x197),a70_0x5cc18e(0x1a2),a70_0x5cc18e(0x1a1)]};export const PUSH_SCOPE_FLAG={'name':a70_0x5cc18e(0x1ac),'type':a70_0x5cc18e(0x186),'description':a70_0x5cc18e(0x1a0),'default':a70_0x5cc18e(0x1a2),'enum':['personal','company']};export const LIST_SCOPE_FLAG={'name':a70_0x5cc18e(0x1ac),'type':a70_0x5cc18e(0x186),'description':a70_0x5cc18e(0x19e),'enum':['all','personal',a70_0x5cc18e(0x1a1)]};export const LOCAL_FLAG={'name':a70_0x5cc18e(0x193),'type':a70_0x5cc18e(0x19d),'description':'Read\x20CLI-managed\x20local\x20Skill\x20cache\x20and\x20links\x20instead\x20of\x20remote\x20lists'};export const DIR_FLAG={'name':'dir','type':a70_0x5cc18e(0x186),'required':!![],'description':a70_0x5cc18e(0x192)};export const DIAGRAM_FILE_FLAG={'name':'diagram-file','type':'string','required':!![],'description':a70_0x5cc18e(0x185)};export const DIAGRAM_SKILL_CODE_FLAG={'name':a70_0x5cc18e(0x1a4),'type':'string','required':!![],'description':'Exact\x20Skill\x20code\x20whose\x20version\x20diagram\x20is\x20being\x20managed'};export const DIAGRAM_VERSION_FLAG={'name':a70_0x5cc18e(0x1a5),'type':'string','required':!![],'description':a70_0x5cc18e(0x18e)};export const DIAGRAM_SCOPE_FLAG={'name':'scope','type':a70_0x5cc18e(0x186),'required':!![],'enum':[a70_0x5cc18e(0x1a2),'company'],'description':a70_0x5cc18e(0x18b)};export const SOURCE_FINGERPRINT_FLAG={'name':a70_0x5cc18e(0x1a9),'type':a70_0x5cc18e(0x186),'required':!![],'description':a70_0x5cc18e(0x19c),'pattern':{'regex':/^sha256:[0-9a-f]{64}$/,'description':a70_0x5cc18e(0x1b0)}};export const EXPECTED_DIAGRAM_REVISION_FLAG={'name':a70_0x5cc18e(0x189),'type':a70_0x5cc18e(0x194),'required':!![],'description':a70_0x5cc18e(0x19b)};export const CREATE_NAME_FLAG={'name':a70_0x5cc18e(0x18a),'type':a70_0x5cc18e(0x186),'required':!![],'description':a70_0x5cc18e(0x198),'pattern':{'regex':SKILL_NAME_PATTERN,'description':a70_0x5cc18e(0x18c)}};export const TYPE_FLAG={'name':a70_0x5cc18e(0x1ae),'type':a70_0x5cc18e(0x186),'description':a70_0x5cc18e(0x1ad),'enum':[...SKILL_TYPES]};export const TARGET_FLAG={'name':a70_0x5cc18e(0x190),'type':a70_0x5cc18e(0x186),'description':a70_0x5cc18e(0x191),'default':DEFAULT_SKILL_TARGET};export const FORCE_FLAG={'name':a70_0x5cc18e(0x1a8),'type':a70_0x5cc18e(0x19d),'description':a70_0x5cc18e(0x184)};export const PROJECT_TARGET_FLAG={'name':a70_0x5cc18e(0x1af),'type':a70_0x5cc18e(0x19d),'description':a70_0x5cc18e(0x1ab)};export const CONFIRM_WARNINGS_FLAG={'name':a70_0x5cc18e(0x1a3),'type':a70_0x5cc18e(0x19d),'description':a70_0x5cc18e(0x183)};export const STRICT_FLAG={'name':'strict','type':a70_0x5cc18e(0x19d),'description':'Compatibility\x20flag;\x20no\x20extra\x20checks\x20are\x20enabled'};function a70_0x2396(){const _0x185144=['2206566vJWlWx','Use\x20the\x20current\x20project\x27s\x20.agents/skills\x20instead\x20of\x20user-level\x20Agent\x20Skill\x20directories','scope','Skill\x20template\x20type:\x20pass\x20read\x20or\x20write\x20explicitly\x20(omission\x20is\x20deprecated)','type','project','a\x20lowercase\x20sha256:<64\x20hex\x20characters>\x20fingerprint','70lrCNPn','Confirm\x20reviewed\x20personal\x20or\x20company\x20Skill\x20publish\x20warnings','Overwrite\x20generated\x20or\x20CLI-managed\x20Skill\x20files\x20when\x20the\x20target\x20already\x20exists','UTF-8\x20Mermaid\x20flowchart\x20file;\x20the\x20selected\x20file\x20is\x20excluded\x20from\x20the\x20Skill\x20package;\x20use\x20-\x20for\x20stdin','string','Skill\x20sync\x20scope:\x20all\x20(personal/company),\x20personal,\x20or\x20company','28848vhGkDu','expected-diagram-revision','name','Exact\x20Skill\x20scope:\x20personal\x20or\x20company','lowercase\x20letters,\x20numbers,\x20and\x20single\x20hyphens','14DAqofM','Exact\x20Skill\x20version\x20whose\x20diagram\x20is\x20being\x20managed','158287hsEChV','target','Directory\x20that\x20will\x20contain\x20the\x20generated\x20Skill\x20directory','Local\x20Skill\x20directory\x20containing\x20SKILL.md','local','number','8676216TZsiKo','5601175sfSwGd','all','Skill\x20name\x20using\x20lowercase\x20letters,\x20numbers,\x20and\x20hyphens','4401476XGYIIj','Only\x20target\x20a\x20specific\x20runtime\x20Skill\x20code','Expected\x20current\x20diagram\x20revision;\x20use\x200\x20for\x20the\x20first\x20diagram','Server-reported\x20SkillVersion\x20source\x20fingerprint','boolean','Skill\x20list\x20scope:\x20all,\x20personal,\x20or\x20company','126zgCSLZ','Skill\x20push\x20target\x20scope:\x20personal\x20saves\x20immediately,\x20company\x20submits\x20a\x20new\x20version\x20for\x20review','company','personal','confirm-warnings','skill-code','version','code','2573658TYTxIF','force','source-fingerprint'];a70_0x2396=function(){return _0x185144;};return a70_0x2396();}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(
|
|
1
|
+
(function(_0x3d1427,_0x5027e9){const _0x329b7d=a71_0x29a9,_0x3eec5a=_0x3d1427();while(!![]){try{const _0x326f5c=parseInt(_0x329b7d(0x79))/0x1*(parseInt(_0x329b7d(0x74))/0x2)+-parseInt(_0x329b7d(0x77))/0x3+-parseInt(_0x329b7d(0x7a))/0x4+-parseInt(_0x329b7d(0x78))/0x5*(parseInt(_0x329b7d(0x72))/0x6)+parseInt(_0x329b7d(0x73))/0x7+parseInt(_0x329b7d(0x75))/0x8+-parseInt(_0x329b7d(0x76))/0x9;if(_0x326f5c===_0x5027e9)break;else _0x3eec5a['push'](_0x3eec5a['shift']());}catch(_0xbf4b2a){_0x3eec5a['push'](_0x3eec5a['shift']());}}}(a71_0x5335,0x3f9bd));import{createCommand}from'./commands/create.js';import{diagramPushCommand,diagramShowCommand,diagramValidateCommand}from'./commands/diagram.js';import{installCommand}from'./commands/install.js';import{listCommand}from'./commands/list.js';function a71_0x29a9(_0x5d03e7,_0x523eca){_0x5d03e7=_0x5d03e7-0x72;const _0x533529=a71_0x5335();let _0x29a9de=_0x533529[_0x5d03e7];return _0x29a9de;}import{pushCommand}from'./commands/push.js';import{validateCommand}from'./commands/validate.js';function a71_0x5335(){const _0x3de615=['1772172ZpOAhy','1108587GtaOpz','50bSIQUI','16705AAxmBi','184108LwboLj','60294CpSAXW','1122485aHvFMQ','38ypxQAK','3965960CxUhuB'];a71_0x5335=function(){return _0x3de615;};return a71_0x5335();}export const skillDefinitions=[installCommand,createCommand,validateCommand,listCommand,pushCommand,diagramValidateCommand,diagramPushCommand,diagramShowCommand];
|
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
(function(_0x32d0aa,_0x22b046){var _0x2706e2=a72_0x314e,_0x4114a9=_0x32d0aa();while(!![]){try{var _0x41d711=parseInt(_0x2706e2(0xf0))/0x1+-parseInt(_0x2706e2(0xe7))/0x2*(-parseInt(_0x2706e2(0xef))/0x3)+parseInt(_0x2706e2(0xee))/0x4+parseInt(_0x2706e2(0xe6))/0x5+-parseInt(_0x2706e2(0xeb))/0x6*(parseInt(_0x2706e2(0xea))/0x7)+-parseInt(_0x2706e2(0xf2))/0x8*(parseInt(_0x2706e2(0xf5))/0x9)+-parseInt(_0x2706e2(0xf1))/0xa;if(_0x41d711===_0x22b046)break;else _0x4114a9['push'](_0x4114a9['shift']());}catch(_0x55b7e9){_0x4114a9['push'](_0x4114a9['shift']());}}}(a72_0x2020,0x6f75d));function a72_0x2020(){var _0x2bdee0=['6905020RalJNn','24UxatxD','ossPath','isArray','1648377ihAjkY','3032365agvePZ','2332kzVxdy','some','string','875BmpXAZ','3018dvxJZt','object','path','1290676eIMXkS','1929hkukMN','80497ahUQYq'];a72_0x2020=function(){return _0x2bdee0;};return a72_0x2020();}function a72_0x314e(_0x1ad9c3,_0x5cf4f9){_0x1ad9c3=_0x1ad9c3-0xe6;var _0x202053=a72_0x2020();var _0x314ecd=_0x202053[_0x1ad9c3];return _0x314ecd;}export function isPackageBackedManifest(_0x515450){var _0x11f10c=a72_0x314e;return!!_0x515450&&typeof _0x515450===_0x11f10c(0xec)&&!Array[_0x11f10c(0xf4)](_0x515450)&&typeof _0x515450[_0x11f10c(0xf3)]===_0x11f10c(0xe9)&&_0x515450[_0x11f10c(0xf3)]['length']>0x0&&Array[_0x11f10c(0xf4)](_0x515450['files']);}export function isMultiFileManifest(_0x3898af){var _0x410f8a=a72_0x314e;return!!_0x3898af&&typeof _0x3898af===_0x410f8a(0xec)&&!Array[_0x410f8a(0xf4)](_0x3898af)&&Array['isArray'](_0x3898af['files'])&&_0x3898af['files'][_0x410f8a(0xe8)](_0x20b5fd=>_0x20b5fd[_0x410f8a(0xed)]!=='SKILL.md');}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
(function(_0xc55d91,_0x175ff5){const _0x5a9c1f=a53_0x1fe6,_0x2cebce=_0xc55d91();while(!![]){try{const _0x1a13bf=-parseInt(_0x5a9c1f(0x8a))/0x1*(-parseInt(_0x5a9c1f(0x83))/0x2)+-parseInt(_0x5a9c1f(0x9e))/0x3+parseInt(_0x5a9c1f(0x99))/0x4*(parseInt(_0x5a9c1f(0xa6))/0x5)+-parseInt(_0x5a9c1f(0x90))/0x6+-parseInt(_0x5a9c1f(0x87))/0x7+parseInt(_0x5a9c1f(0x81))/0x8*(-parseInt(_0x5a9c1f(0x72))/0x9)+parseInt(_0x5a9c1f(0x98))/0xa*(parseInt(_0x5a9c1f(0x97))/0xb);if(_0x1a13bf===_0x175ff5)break;else _0x2cebce['push'](_0x2cebce['shift']());}catch(_0x51d333){_0x2cebce['push'](_0x2cebce['shift']());}}}(a53_0x5037,0x7c7f9));import{CliErrors}from'../../errors.js';import{isMultiFileManifest,isPackageBackedManifest}from'./manifest-helpers.js';import{remotePersonalReadOptions,remoteMissingCompanyReadOptions,remoteMissingPersonalReadOptions}from'./push-flow-helpers.js';import{allowRetargetArgs,buildRetargetWarning,remoteFirstMetadataOptions,resolvePushScope,runRemoteContentPreflight,throwIfBuiltinPushTarget,throwIfUnconfirmedPublishWarnings,throwIfPublishValidationFailed}from'./push-flow-helpers.js';import{withRetargetExistingMetadata}from'./push-retarget.js';function a53_0x1fe6(_0x5ac65d,_0x2b6ac1){_0x5ac65d=_0x5ac65d-0x6c;const _0x503727=a53_0x5037();let _0x1fe67d=_0x503727[_0x5ac65d];return _0x1fe67d;}import{summarizeRuntimeSkill}from'./summary.js';import{readRequiredSkillDiagramInput}from'./diagram.js';function a53_0x5037(){const _0x517e09=['Updated\x20personal\x20Skill\x20','/api/cli/v1/skills/','status','\x20is\x20already\x20published\x20and\x20content\x20is\x20identical','personal','input','8WrULNY','appCode','155094aYYCLw','version','dir','identical','2181879Zbpirv','PRIVATE','trim','7QOfiPr','NAMESPACE_ONLY','Submitted\x20company\x20Skill\x20','authRequired','validation','Created\x20personal\x20Skill\x20','5540208WOnkIj','warnings','\x20Skill\x20','diagramValidated','remoteForPreflight','company','appcode','44iIknKR','6023360MxaTnT','4nfnrDd','../../core/api-client.js','POST','errors','unknown','1546881PBAQvo','(unknown)','publishInput','savedSkill','resolvedVersion','Only\x20personal\x20Skills\x20can\x20be\x20pushed;\x20remote\x20Skill\x20','../../skills/runtime-skill-sync.js','resolvedSlug','691705qeacGh','Validate\x20a\x20company\x20Skill\x20push\x20package\x20without\x20creating\x20a\x20version\x20or\x20review\x20task.','submitted','str','valid','payload','Company','scope','7468893nbDFRm','bool','/publish/validate','metadata','files','Validate\x20a\x20personal\x20Skill\x20push\x20package\x20without\x20creating\x20or\x20updating\x20a\x20remote\x20Skill.','skillCode','existing','\x20has\x20scope=\x22'];a53_0x5037=function(){return _0x517e09;};return a53_0x5037();}import{throwIfSkillValidationFailed,validateSkillDirectory}from'./validate.js';export async function skillPushDryRun(_0x259631){const _0xc3ba9d=a53_0x1fe6,{getRuntimeSkillByCode:_0x1c777c,validateRuntimeSkillPublish:_0x1bf33f}=await import(_0xc3ba9d(0x9a)),{readPushDirectory:_0x353b6e,resolvePushDirectoryIdentity:_0x4f9628}=await import('../../skills/runtime-skill-sync.js');if(!_0x259631['accessKey'])throw CliErrors['authRequired']();const _0x2e5dbd=resolvePushScope(_0x259631),_0x2d8377=validateSkillDirectory(_0x259631[_0xc3ba9d(0x6d)](_0xc3ba9d(0x85)));throwIfSkillValidationFailed(_0x2d8377);const {diagram:_0x199250,sourceFilePath:_0x109568}=await readRequiredSkillDiagramInput(_0x259631[_0xc3ba9d(0x6d)]('diagram-file')),_0x175bed=diagramPackageExclusion(_0x109568),_0x47c0d2=_0x4f9628(_0x2d8377[_0xc3ba9d(0x85)],_0x259631['appCode'],remoteFirstMetadataOptions()),_0x4fa3b5=await _0x1c777c(_0x259631[_0xc3ba9d(0x82)],_0x47c0d2[_0xc3ba9d(0x78)]);throwIfBuiltinPushTarget(_0x4fa3b5);if(_0x2e5dbd===_0xc3ba9d(0x95)){const _0x7f3f40=_0x353b6e(_0x2d8377['dir'],_0x259631[_0xc3ba9d(0x82)],{...remoteMissingCompanyReadOptions(),..._0x175bed}),_0x58f58e=await _0x1bf33f(_0x259631[_0xc3ba9d(0x82)],withDiagram(_0x7f3f40[_0xc3ba9d(0x80)],_0x199250),{'visibility':_0xc3ba9d(0x8b)});return{'method':_0xc3ba9d(0x9b),'url':_0xc3ba9d(0x7c)+_0x259631[_0xc3ba9d(0x82)]+'/publish/validate','body':{'skillCode':_0x7f3f40[_0xc3ba9d(0x78)],'visibility':_0xc3ba9d(0x8b),'valid':_0x58f58e[_0xc3ba9d(0x6e)],'errors':_0x58f58e[_0xc3ba9d(0x9c)],'warnings':_0x58f58e[_0xc3ba9d(0x91)],'resolvedSlug':_0x58f58e[_0xc3ba9d(0xa5)],'resolvedVersion':_0x58f58e[_0xc3ba9d(0xa2)],'diagramValidated':_0x58f58e[_0xc3ba9d(0x93)]},'description':_0xc3ba9d(0xa7)};}if(_0x4fa3b5&&_0x4fa3b5['scope']!==_0xc3ba9d(0x7f))throw CliErrors['validation'](_0xc3ba9d(0xa3)+_0x47c0d2[_0xc3ba9d(0x78)]+_0xc3ba9d(0x7a)+(_0x4fa3b5['scope']??_0xc3ba9d(0x9d))+'\x22.');const _0x53237b=_0x353b6e(_0x2d8377[_0xc3ba9d(0x85)],_0x259631[_0xc3ba9d(0x82)],{..._0x4fa3b5?remotePersonalReadOptions(!![]):remoteMissingPersonalReadOptions(),..._0x175bed}),_0x4e3c84=await _0x1bf33f(_0x259631['appCode'],withDiagram(_0x53237b[_0xc3ba9d(0x80)],_0x199250),{'visibility':'PRIVATE'});return{'method':_0xc3ba9d(0x9b),'url':_0xc3ba9d(0x7c)+_0x259631[_0xc3ba9d(0x82)]+_0xc3ba9d(0x74),'body':{'skillCode':_0x53237b[_0xc3ba9d(0x78)],'visibility':_0xc3ba9d(0x88),'valid':_0x4e3c84[_0xc3ba9d(0x6e)],'errors':_0x4e3c84['errors'],'warnings':_0x4e3c84[_0xc3ba9d(0x91)],'resolvedSlug':_0x4e3c84[_0xc3ba9d(0xa5)],'resolvedVersion':_0x4e3c84[_0xc3ba9d(0xa2)],'diagramValidated':_0x4e3c84['diagramValidated']},'description':_0xc3ba9d(0x77)};}export async function skillPushExecute(_0x279ff1){const _0x3854f1=a53_0x1fe6,{createPersonalRuntimeSkill:_0x2c5a01,downloadRuntimeSkillPackage:_0xee93,getRuntimeSkillByCode:_0x18ce52,publishCompanyRuntimeSkill:_0x8c4b86,updatePersonalRuntimeSkill:_0x33ddb5,validateRuntimeSkillPublish:_0x29bcae}=await import('../../core/api-client.js'),{verifyRuntimeSkillPackage:_0xdf8b40,verifyRuntimeSkillBundle:_0x272414,readPushDirectory:_0x5ee985,refreshPushDirectoryMetadataFromRemote:_0x7d8705,recordPushedRuntimeSkill:_0x2a892d,resolvePushDirectoryIdentity:_0x3ec157}=await import(_0x3854f1(0xa4));if(!_0x279ff1['accessKey'])throw CliErrors[_0x3854f1(0x8d)]();const _0x2d5b58=resolvePushScope(_0x279ff1),_0x434486=_0x279ff1['bool']('confirm-warnings')||_0x279ff1[_0x3854f1(0x73)]('confirmWarnings'),_0x2ced81=validateSkillDirectory(_0x279ff1['str']('dir'));throwIfSkillValidationFailed(_0x2ced81);const {diagram:_0x2846c3,sourceFilePath:_0x41e6ba}=await readRequiredSkillDiagramInput(_0x279ff1[_0x3854f1(0x6d)]('diagram-file')),_0x3a4b28=diagramPackageExclusion(_0x41e6ba),_0x3bf99a=_0x2ced81[_0x3854f1(0x85)];let _0x2884bb;if(_0x2d5b58==='company'){const _0x32886a=_0x3ec157(_0x3bf99a,_0x279ff1[_0x3854f1(0x82)],remoteFirstMetadataOptions()),_0x2e0e72=await _0x18ce52(_0x279ff1[_0x3854f1(0x82)],_0x32886a['skillCode']);throwIfBuiltinPushTarget(_0x2e0e72);if(_0x2e0e72)_0x7d8705(_0x3bf99a,_0x2e0e72,_0x279ff1[_0x3854f1(0x82)]);const _0x36119f=_0x5ee985(_0x3bf99a,_0x279ff1[_0x3854f1(0x82)],{..._0x2e0e72?{'targetScope':_0x3854f1(0x95),'ignoreInvalidMetadata':!![]}:remoteMissingCompanyReadOptions(),..._0x3a4b28});_0x2884bb={'scope':_0x3854f1(0x95),'payload':_0x36119f,'publishInput':withDiagram(_0x36119f[_0x3854f1(0x80)],_0x2846c3),'remoteForPreflight':_0x2e0e72,'warnings':[]};}else{const _0x544836=_0x279ff1[_0x3854f1(0x6d)](_0x3854f1(0x96))[_0x3854f1(0x89)](),_0x1ad71f=Boolean(_0x544836),_0x237e6a=allowRetargetArgs(_0x1ad71f),_0x357b8f=_0x3ec157(_0x3bf99a,_0x279ff1[_0x3854f1(0x82)],{...remoteFirstMetadataOptions(),..._0x237e6a[0x0]}),_0x519541=await _0x18ce52(_0x279ff1[_0x3854f1(0x82)],_0x357b8f[_0x3854f1(0x78)]);throwIfBuiltinPushTarget(_0x519541);if(_0x519541){if(_0x519541['scope']!==_0x3854f1(0x7f)){if(_0x1ad71f)throw CliErrors[_0x3854f1(0x8e)](_0x3854f1(0xa3)+_0x357b8f[_0x3854f1(0x78)]+_0x3854f1(0x7a)+(_0x519541[_0x3854f1(0x71)]??_0x3854f1(0x9d))+'\x22.');_0x7d8705(_0x3bf99a,_0x519541,_0x279ff1[_0x3854f1(0x82)]);}else!_0x1ad71f&&_0x7d8705(_0x3bf99a,_0x519541,_0x279ff1['appCode']);}const _0x394fba=_0x5ee985(_0x3bf99a,_0x279ff1[_0x3854f1(0x82)],{..._0x519541?remotePersonalReadOptions(_0x1ad71f,_0x237e6a[0x0]):remoteMissingPersonalReadOptions(_0x237e6a[0x0]),..._0x3a4b28}),_0x2bbb19=_0x519541?.[_0x3854f1(0x71)]===_0x3854f1(0x7f)&&_0x519541[_0x3854f1(0x78)]===_0x394fba[_0x3854f1(0x78)]?_0x519541:undefined,_0x220696=_0x1ad71f&&_0x2bbb19?withRetargetExistingMetadata(_0x394fba[_0x3854f1(0x80)],_0x2bbb19,{'preferInputSkillName':Boolean(_0x394fba['frontmatterDisplayName'])}):_0x394fba[_0x3854f1(0x80)],_0x3e32f3=_0x1ad71f?buildRetargetWarning(_0x357b8f[_0x3854f1(0x75)],_0x279ff1[_0x3854f1(0x82)]):[];_0x2884bb={'scope':_0x3854f1(0x7f),'payload':_0x394fba,'publishInput':withDiagram(_0x220696,_0x2846c3),'remoteForPreflight':_0x2bbb19,'existing':_0x2bbb19,'warnings':[..._0x2ced81[_0x3854f1(0x91)],..._0x3e32f3]};}const _0x3eabd1=await runRemoteContentPreflight({'scope':_0x2884bb[_0x3854f1(0x71)],'remote':_0x2884bb[_0x3854f1(0x94)],'publishInput':_0x2884bb[_0x3854f1(0xa0)],'skillCode':_0x2884bb['payload'][_0x3854f1(0x78)],'appCode':_0x279ff1['appCode'],'downloadRuntimeSkillPackage':_0xee93,'verifyRuntimeSkillBundle':_0x272414});if(_0x3eabd1[_0x3854f1(0x7d)]===_0x3854f1(0x86))return _0x2884bb['scope']===_0x3854f1(0x95)?_0x2a892d(_0x3bf99a,_0x3eabd1[_0x3854f1(0xa1)],_0x279ff1[_0x3854f1(0x82)],{'scope':_0x3854f1(0x95)}):_0x2a892d(_0x3bf99a,_0x3eabd1[_0x3854f1(0xa1)],_0x279ff1['appCode']),{'ok':!![],'data':{...summarizeRuntimeSkill(_0x3eabd1['savedSkill']),'scope':_0x2884bb[_0x3854f1(0x71)],..._0x2884bb[_0x3854f1(0x71)]===_0x3854f1(0x7f)?{'warnings':_0x2884bb[_0x3854f1(0x91)]}:{},'alreadyPublished':!![],'contentIdentical':!![],'diagramSubmitted':![]},'message':scopeLabel(_0x2884bb[_0x3854f1(0x71)])+_0x3854f1(0x92)+_0x2884bb[_0x3854f1(0x6f)][_0x3854f1(0x78)]+_0x3854f1(0x7e)};if(_0x2884bb[_0x3854f1(0x71)]==='company'){const _0x2c7cb1=await _0x29bcae(_0x279ff1[_0x3854f1(0x82)],_0x2884bb['publishInput'],{'visibility':_0x3854f1(0x8b)});throwIfPublishValidationFailed('company',_0x2884bb['payload'][_0x3854f1(0x78)],_0x2c7cb1),throwIfUnconfirmedPublishWarnings(_0x3854f1(0x95),_0x2884bb['payload'][_0x3854f1(0x78)],_0x2c7cb1[_0x3854f1(0x91)],_0x434486);const _0x51e544=await _0x8c4b86(_0x279ff1[_0x3854f1(0x82)],_0x2884bb[_0x3854f1(0xa0)],{'confirmWarnings':_0x434486});return _0x2a892d(_0x3bf99a,{..._0x51e544,'files':_0x2884bb[_0x3854f1(0xa0)][_0x3854f1(0x76)]},_0x279ff1['appCode'],{'scope':_0x3854f1(0x95)}),{'ok':!![],'data':{...summarizeRuntimeSkill(_0x51e544),'scope':'company','reviewState':_0x3854f1(0x6c),'submittedForReview':!![],'diagramBound':!![],'validation':{'warnings':_0x2c7cb1[_0x3854f1(0x91)]}},'message':_0x3854f1(0x8c)+_0x2884bb[_0x3854f1(0x6f)][_0x3854f1(0x78)]+'\x20version\x20'+(_0x51e544[_0x3854f1(0x84)]??_0x3854f1(0x9f))+'\x20for\x20review'};}const _0x4022e4=await _0x29bcae(_0x279ff1['appCode'],_0x2884bb[_0x3854f1(0xa0)],{'visibility':_0x3854f1(0x88)});throwIfPublishValidationFailed(_0x3854f1(0x7f),_0x2884bb[_0x3854f1(0x6f)][_0x3854f1(0x78)],_0x4022e4),throwIfUnconfirmedPublishWarnings(_0x3854f1(0x7f),_0x2884bb['payload']['skillCode'],_0x4022e4[_0x3854f1(0x91)],_0x434486);const _0x188ba3={'confirmWarnings':_0x434486},_0x23296a=_0x2884bb[_0x3854f1(0x79)]?await _0x33ddb5(_0x2884bb[_0x3854f1(0x6f)][_0x3854f1(0x78)],_0x279ff1[_0x3854f1(0x82)],_0x2884bb[_0x3854f1(0xa0)],_0x188ba3):await _0x2c5a01(_0x279ff1['appCode'],_0x2884bb[_0x3854f1(0xa0)],_0x188ba3);let _0xd8446d=_0x23296a;if(isMultiFileManifest(_0x2884bb[_0x3854f1(0xa0)][_0x3854f1(0x76)])){const _0x47db14=await _0xee93(_0x3854f1(0x7f),_0x23296a[_0x3854f1(0x78)]||_0x2884bb[_0x3854f1(0x6f)][_0x3854f1(0x78)],_0x279ff1[_0x3854f1(0x82)]);_0x272414(_0x2884bb[_0x3854f1(0xa0)][_0x3854f1(0x76)],_0x47db14),_0xd8446d={..._0x23296a,'files':_0x2884bb['publishInput'][_0x3854f1(0x76)]};}else{if(isPackageBackedManifest(_0x23296a['files'])){const _0x3a0ebe=await _0xee93(_0x3854f1(0x7f),_0x23296a['skillCode']||_0x2884bb[_0x3854f1(0x6f)][_0x3854f1(0x78)],_0x279ff1[_0x3854f1(0x82)]);_0xdf8b40(_0x23296a['files'],_0x3a0ebe);}}return _0x2a892d(_0x3bf99a,_0xd8446d,_0x279ff1[_0x3854f1(0x82)]),{'ok':!![],'data':{...summarizeRuntimeSkill(_0x23296a),'warnings':_0x2884bb[_0x3854f1(0x91)],'validation':{'warnings':_0x4022e4[_0x3854f1(0x91)]},'diagramBound':!![]},'message':_0x2884bb[_0x3854f1(0x79)]?_0x3854f1(0x7b)+_0x2884bb['payload']['skillCode']:_0x3854f1(0x8f)+_0x2884bb['payload'][_0x3854f1(0x78)]};}function scopeLabel(_0xddef55){const _0x108f8f=a53_0x1fe6;return _0xddef55===_0x108f8f(0x95)?_0x108f8f(0x70):'Personal';}function withDiagram(_0x228c06,_0x311da3){return{..._0x228c06,'diagram':_0x311da3};}function diagramPackageExclusion(_0x58830a){return _0x58830a?{'excludedFilePaths':[_0x58830a]}:{};}
|
|
1
|
+
(function(_0xf462f3,_0x11dacc){const _0x43ba9b=a73_0x2178,_0x12faaf=_0xf462f3();while(!![]){try{const _0x5c4c7c=-parseInt(_0x43ba9b(0x13f))/0x1*(-parseInt(_0x43ba9b(0x138))/0x2)+parseInt(_0x43ba9b(0x14c))/0x3+parseInt(_0x43ba9b(0x129))/0x4+parseInt(_0x43ba9b(0x14f))/0x5*(-parseInt(_0x43ba9b(0x123))/0x6)+parseInt(_0x43ba9b(0x11a))/0x7*(parseInt(_0x43ba9b(0x13d))/0x8)+parseInt(_0x43ba9b(0x11f))/0x9+-parseInt(_0x43ba9b(0x148))/0xa*(parseInt(_0x43ba9b(0x12c))/0xb);if(_0x5c4c7c===_0x11dacc)break;else _0x12faaf['push'](_0x12faaf['shift']());}catch(_0x28ac65){_0x12faaf['push'](_0x12faaf['shift']());}}}(a73_0x345a,0xd1197));import{CliErrors}from'../../errors.js';import{isMultiFileManifest,isPackageBackedManifest}from'./manifest-helpers.js';import{remotePersonalReadOptions,remoteMissingCompanyReadOptions,remoteMissingPersonalReadOptions}from'./push-flow-helpers.js';import{allowRetargetArgs,buildRetargetWarning,remoteFirstMetadataOptions,resolvePushScope,runRemoteContentPreflight,throwIfBuiltinPushTarget,throwIfUnconfirmedPublishWarnings,throwIfPublishValidationFailed}from'./push-flow-helpers.js';import{withRetargetExistingMetadata}from'./push-retarget.js';import{summarizeRuntimeSkill}from'./summary.js';import{readRequiredSkillDiagramInput}from'./diagram.js';function a73_0x345a(){const _0x5b6040=['diagram-file','5708313qIUNor','confirm-warnings','../../core/api-client.js','existing','6dLWURH','payload','personal','authRequired','\x20is\x20already\x20published\x20and\x20content\x20is\x20identical','unknown','230232tUafQN','/api/cli/v1/skills/','Personal','187oOYfxj','Submitted\x20company\x20Skill\x20','metadata','skillCode','warnings','input','\x20version\x20','trim','Created\x20personal\x20Skill\x20','version','company','resolvedVersion','776962PlstVm','submitted','errors','bool','dir','8Dnkzsn','validation','1uuMDPE','/publish/validate','valid','NAMESPACE_ONLY','\x20Skill\x20','Updated\x20personal\x20Skill\x20','diagramValidated','str','Only\x20personal\x20Skills\x20can\x20be\x20pushed;\x20remote\x20Skill\x20','639550YMwBFQ','savedSkill','identical','\x20for\x20review','3762462CrVxNk','scope','(unknown)','2199065xtGkRr','files','PRIVATE','appcode','frontmatterDisplayName','POST','publishInput','appCode','343483VMZwHX','\x20has\x20scope=\x22','../../skills/runtime-skill-sync.js','Company'];a73_0x345a=function(){return _0x5b6040;};return a73_0x345a();}function a73_0x2178(_0xe9c8d1,_0x4b32e7){_0xe9c8d1=_0xe9c8d1-0x114;const _0x345aec=a73_0x345a();let _0x217810=_0x345aec[_0xe9c8d1];return _0x217810;}import{throwIfSkillValidationFailed,validateSkillDirectory}from'./validate.js';export async function skillPushDryRun(_0x423474){const _0x598a9a=a73_0x2178,{getRuntimeSkillByCode:_0x36cd6f,validateRuntimeSkillPublish:_0x3ef213}=await import(_0x598a9a(0x121)),{readPushDirectory:_0x50d584,resolvePushDirectoryIdentity:_0xedc195}=await import(_0x598a9a(0x11c));if(!_0x423474['accessKey'])throw CliErrors[_0x598a9a(0x126)]();const _0x494206=resolvePushScope(_0x423474),_0x4ab897=validateSkillDirectory(_0x423474[_0x598a9a(0x146)](_0x598a9a(0x13c)));throwIfSkillValidationFailed(_0x4ab897);const {diagram:_0xf13cd8,sourceFilePath:_0x1b9b7b}=await readRequiredSkillDiagramInput(_0x423474['str'](_0x598a9a(0x11e))),_0xe2d26a=diagramPackageExclusion(_0x1b9b7b),_0x398343=_0xedc195(_0x4ab897['dir'],_0x423474[_0x598a9a(0x119)],remoteFirstMetadataOptions()),_0x2f284e=await _0x36cd6f(_0x423474[_0x598a9a(0x119)],_0x398343['skillCode']);throwIfBuiltinPushTarget(_0x2f284e);if(_0x494206==='company'){const _0x5d18b2=_0x50d584(_0x4ab897[_0x598a9a(0x13c)],_0x423474[_0x598a9a(0x119)],{...remoteMissingCompanyReadOptions(),..._0xe2d26a}),_0x4e2cea=await _0x3ef213(_0x423474[_0x598a9a(0x119)],withDiagram(_0x5d18b2[_0x598a9a(0x131)],_0xf13cd8),{'visibility':_0x598a9a(0x142)});return{'method':_0x598a9a(0x117),'url':_0x598a9a(0x12a)+_0x423474[_0x598a9a(0x119)]+_0x598a9a(0x140),'body':{'skillCode':_0x5d18b2[_0x598a9a(0x12f)],'visibility':'NAMESPACE_ONLY','valid':_0x4e2cea[_0x598a9a(0x141)],'errors':_0x4e2cea['errors'],'warnings':_0x4e2cea[_0x598a9a(0x130)],'resolvedSlug':_0x4e2cea['resolvedSlug'],'resolvedVersion':_0x4e2cea[_0x598a9a(0x137)],'diagramValidated':_0x4e2cea[_0x598a9a(0x145)]},'description':'Validate\x20a\x20company\x20Skill\x20push\x20package\x20without\x20creating\x20a\x20version\x20or\x20review\x20task.'};}if(_0x2f284e&&_0x2f284e[_0x598a9a(0x14d)]!==_0x598a9a(0x125))throw CliErrors[_0x598a9a(0x13e)]('Only\x20personal\x20Skills\x20can\x20be\x20pushed;\x20remote\x20Skill\x20'+_0x398343[_0x598a9a(0x12f)]+_0x598a9a(0x11b)+(_0x2f284e[_0x598a9a(0x14d)]??_0x598a9a(0x128))+'\x22.');const _0x2720b5=_0x50d584(_0x4ab897[_0x598a9a(0x13c)],_0x423474[_0x598a9a(0x119)],{..._0x2f284e?remotePersonalReadOptions(!![]):remoteMissingPersonalReadOptions(),..._0xe2d26a}),_0x41ccc6=await _0x3ef213(_0x423474[_0x598a9a(0x119)],withDiagram(_0x2720b5[_0x598a9a(0x131)],_0xf13cd8),{'visibility':_0x598a9a(0x114)});return{'method':_0x598a9a(0x117),'url':_0x598a9a(0x12a)+_0x423474[_0x598a9a(0x119)]+'/publish/validate','body':{'skillCode':_0x2720b5['skillCode'],'visibility':'PRIVATE','valid':_0x41ccc6['valid'],'errors':_0x41ccc6[_0x598a9a(0x13a)],'warnings':_0x41ccc6[_0x598a9a(0x130)],'resolvedSlug':_0x41ccc6['resolvedSlug'],'resolvedVersion':_0x41ccc6['resolvedVersion'],'diagramValidated':_0x41ccc6[_0x598a9a(0x145)]},'description':'Validate\x20a\x20personal\x20Skill\x20push\x20package\x20without\x20creating\x20or\x20updating\x20a\x20remote\x20Skill.'};}export async function skillPushExecute(_0x507f9e){const _0x581a40=a73_0x2178,{createPersonalRuntimeSkill:_0x2b8323,downloadRuntimeSkillPackage:_0x442b99,getRuntimeSkillByCode:_0x20fa27,publishCompanyRuntimeSkill:_0x3d6e99,updatePersonalRuntimeSkill:_0x1ff611,validateRuntimeSkillPublish:_0x423bc5}=await import('../../core/api-client.js'),{verifyRuntimeSkillPackage:_0xa9a3f9,verifyRuntimeSkillBundle:_0x1b788c,readPushDirectory:_0xdec5a2,refreshPushDirectoryMetadataFromRemote:_0x5d5172,recordPushedRuntimeSkill:_0x520faf,resolvePushDirectoryIdentity:_0x5728d4}=await import(_0x581a40(0x11c));if(!_0x507f9e['accessKey'])throw CliErrors[_0x581a40(0x126)]();const _0x43a417=resolvePushScope(_0x507f9e),_0x36fa78=_0x507f9e['bool'](_0x581a40(0x120))||_0x507f9e[_0x581a40(0x13b)]('confirmWarnings'),_0x32ce2c=validateSkillDirectory(_0x507f9e[_0x581a40(0x146)](_0x581a40(0x13c)));throwIfSkillValidationFailed(_0x32ce2c);const {diagram:_0x246e0a,sourceFilePath:_0x482597}=await readRequiredSkillDiagramInput(_0x507f9e['str'](_0x581a40(0x11e))),_0x3aec27=diagramPackageExclusion(_0x482597),_0x11bdbd=_0x32ce2c['dir'];let _0x3d990e;if(_0x43a417==='company'){const _0x17a6b0=_0x5728d4(_0x11bdbd,_0x507f9e[_0x581a40(0x119)],remoteFirstMetadataOptions()),_0x558974=await _0x20fa27(_0x507f9e['appCode'],_0x17a6b0[_0x581a40(0x12f)]);throwIfBuiltinPushTarget(_0x558974);if(_0x558974)_0x5d5172(_0x11bdbd,_0x558974,_0x507f9e[_0x581a40(0x119)]);const _0x351d75=_0xdec5a2(_0x11bdbd,_0x507f9e[_0x581a40(0x119)],{..._0x558974?{'targetScope':_0x581a40(0x136),'ignoreInvalidMetadata':!![]}:remoteMissingCompanyReadOptions(),..._0x3aec27});_0x3d990e={'scope':'company','payload':_0x351d75,'publishInput':withDiagram(_0x351d75[_0x581a40(0x131)],_0x246e0a),'remoteForPreflight':_0x558974,'warnings':[]};}else{const _0x422ddc=_0x507f9e[_0x581a40(0x146)](_0x581a40(0x115))[_0x581a40(0x133)](),_0x57a12b=Boolean(_0x422ddc),_0x2db134=allowRetargetArgs(_0x57a12b),_0x420f4a=_0x5728d4(_0x11bdbd,_0x507f9e['appCode'],{...remoteFirstMetadataOptions(),..._0x2db134[0x0]}),_0x969950=await _0x20fa27(_0x507f9e['appCode'],_0x420f4a['skillCode']);throwIfBuiltinPushTarget(_0x969950);if(_0x969950){if(_0x969950[_0x581a40(0x14d)]!=='personal'){if(_0x57a12b)throw CliErrors[_0x581a40(0x13e)](_0x581a40(0x147)+_0x420f4a[_0x581a40(0x12f)]+_0x581a40(0x11b)+(_0x969950[_0x581a40(0x14d)]??_0x581a40(0x128))+'\x22.');_0x5d5172(_0x11bdbd,_0x969950,_0x507f9e[_0x581a40(0x119)]);}else!_0x57a12b&&_0x5d5172(_0x11bdbd,_0x969950,_0x507f9e[_0x581a40(0x119)]);}const _0x1d11f3=_0xdec5a2(_0x11bdbd,_0x507f9e[_0x581a40(0x119)],{..._0x969950?remotePersonalReadOptions(_0x57a12b,_0x2db134[0x0]):remoteMissingPersonalReadOptions(_0x2db134[0x0]),..._0x3aec27}),_0x3aba93=_0x969950?.[_0x581a40(0x14d)]===_0x581a40(0x125)&&_0x969950[_0x581a40(0x12f)]===_0x1d11f3[_0x581a40(0x12f)]?_0x969950:undefined,_0x45582c=_0x57a12b&&_0x3aba93?withRetargetExistingMetadata(_0x1d11f3[_0x581a40(0x131)],_0x3aba93,{'preferInputSkillName':Boolean(_0x1d11f3[_0x581a40(0x116)])}):_0x1d11f3['input'],_0xb4e59e=_0x57a12b?buildRetargetWarning(_0x420f4a[_0x581a40(0x12e)],_0x507f9e['appCode']):[];_0x3d990e={'scope':_0x581a40(0x125),'payload':_0x1d11f3,'publishInput':withDiagram(_0x45582c,_0x246e0a),'remoteForPreflight':_0x3aba93,'existing':_0x3aba93,'warnings':[..._0x32ce2c[_0x581a40(0x130)],..._0xb4e59e]};}const _0x22d312=await runRemoteContentPreflight({'scope':_0x3d990e[_0x581a40(0x14d)],'remote':_0x3d990e['remoteForPreflight'],'publishInput':_0x3d990e[_0x581a40(0x118)],'skillCode':_0x3d990e['payload'][_0x581a40(0x12f)],'appCode':_0x507f9e[_0x581a40(0x119)],'downloadRuntimeSkillPackage':_0x442b99,'verifyRuntimeSkillBundle':_0x1b788c});if(_0x22d312['status']===_0x581a40(0x14a))return _0x3d990e[_0x581a40(0x14d)]===_0x581a40(0x136)?_0x520faf(_0x11bdbd,_0x22d312[_0x581a40(0x149)],_0x507f9e['appCode'],{'scope':'company'}):_0x520faf(_0x11bdbd,_0x22d312[_0x581a40(0x149)],_0x507f9e[_0x581a40(0x119)]),{'ok':!![],'data':{...summarizeRuntimeSkill(_0x22d312['savedSkill']),'scope':_0x3d990e['scope'],..._0x3d990e['scope']===_0x581a40(0x125)?{'warnings':_0x3d990e[_0x581a40(0x130)]}:{},'alreadyPublished':!![],'contentIdentical':!![],'diagramSubmitted':![]},'message':scopeLabel(_0x3d990e['scope'])+_0x581a40(0x143)+_0x3d990e[_0x581a40(0x124)][_0x581a40(0x12f)]+_0x581a40(0x127)};if(_0x3d990e['scope']===_0x581a40(0x136)){const _0x2bac46=await _0x423bc5(_0x507f9e[_0x581a40(0x119)],_0x3d990e['publishInput'],{'visibility':_0x581a40(0x142)});throwIfPublishValidationFailed(_0x581a40(0x136),_0x3d990e[_0x581a40(0x124)]['skillCode'],_0x2bac46),throwIfUnconfirmedPublishWarnings(_0x581a40(0x136),_0x3d990e['payload'][_0x581a40(0x12f)],_0x2bac46[_0x581a40(0x130)],_0x36fa78);const _0x28f23b=await _0x3d6e99(_0x507f9e[_0x581a40(0x119)],_0x3d990e[_0x581a40(0x118)],{'confirmWarnings':_0x36fa78});return _0x520faf(_0x11bdbd,{..._0x28f23b,'files':_0x3d990e[_0x581a40(0x118)][_0x581a40(0x150)]},_0x507f9e[_0x581a40(0x119)],{'scope':_0x581a40(0x136)}),{'ok':!![],'data':{...summarizeRuntimeSkill(_0x28f23b),'scope':_0x581a40(0x136),'reviewState':_0x581a40(0x139),'submittedForReview':!![],'diagramBound':!![],'validation':{'warnings':_0x2bac46[_0x581a40(0x130)]}},'message':_0x581a40(0x12d)+_0x3d990e[_0x581a40(0x124)][_0x581a40(0x12f)]+_0x581a40(0x132)+(_0x28f23b[_0x581a40(0x135)]??_0x581a40(0x14e))+_0x581a40(0x14b)};}const _0x33806b=await _0x423bc5(_0x507f9e[_0x581a40(0x119)],_0x3d990e['publishInput'],{'visibility':_0x581a40(0x114)});throwIfPublishValidationFailed('personal',_0x3d990e[_0x581a40(0x124)]['skillCode'],_0x33806b),throwIfUnconfirmedPublishWarnings(_0x581a40(0x125),_0x3d990e['payload'][_0x581a40(0x12f)],_0x33806b[_0x581a40(0x130)],_0x36fa78);const _0x45cead={'confirmWarnings':_0x36fa78},_0x130915=_0x3d990e[_0x581a40(0x122)]?await _0x1ff611(_0x3d990e[_0x581a40(0x124)][_0x581a40(0x12f)],_0x507f9e[_0x581a40(0x119)],_0x3d990e[_0x581a40(0x118)],_0x45cead):await _0x2b8323(_0x507f9e['appCode'],_0x3d990e[_0x581a40(0x118)],_0x45cead);let _0x485c8a=_0x130915;if(isMultiFileManifest(_0x3d990e['publishInput'][_0x581a40(0x150)])){const _0x3e4b7b=await _0x442b99(_0x581a40(0x125),_0x130915['skillCode']||_0x3d990e[_0x581a40(0x124)][_0x581a40(0x12f)],_0x507f9e[_0x581a40(0x119)]);_0x1b788c(_0x3d990e[_0x581a40(0x118)][_0x581a40(0x150)],_0x3e4b7b),_0x485c8a={..._0x130915,'files':_0x3d990e[_0x581a40(0x118)]['files']};}else{if(isPackageBackedManifest(_0x130915[_0x581a40(0x150)])){const _0x446a1f=await _0x442b99('personal',_0x130915[_0x581a40(0x12f)]||_0x3d990e[_0x581a40(0x124)]['skillCode'],_0x507f9e['appCode']);_0xa9a3f9(_0x130915[_0x581a40(0x150)],_0x446a1f);}}return _0x520faf(_0x11bdbd,_0x485c8a,_0x507f9e[_0x581a40(0x119)]),{'ok':!![],'data':{...summarizeRuntimeSkill(_0x130915),'warnings':_0x3d990e[_0x581a40(0x130)],'validation':{'warnings':_0x33806b['warnings']},'diagramBound':!![]},'message':_0x3d990e[_0x581a40(0x122)]?_0x581a40(0x144)+_0x3d990e[_0x581a40(0x124)]['skillCode']:_0x581a40(0x134)+_0x3d990e[_0x581a40(0x124)][_0x581a40(0x12f)]};}function scopeLabel(_0x2fbeee){const _0x3eeefa=a73_0x2178;return _0x2fbeee==='company'?_0x3eeefa(0x11d):_0x3eeefa(0x12b);}function withDiagram(_0x3e5558,_0x5ebce7){return{..._0x3e5558,'diagram':_0x5ebce7};}function diagramPackageExclusion(_0x3556b9){return _0x3556b9?{'excludedFilePaths':[_0x3556b9]}:{};}
|