@sap-ux/fiori-mcp-server 1.11.3 → 1.11.4
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +1 -1
- package/package.json +6 -6
package/dist/index.js
CHANGED
|
@@ -4307,7 +4307,7 @@ PGHZoN9jcvvvWDLUGtJkEotMgdFpEA2XWR83H4fVFVc=
|
|
|
4307
4307
|
This is the **final step** of the workflow and performs the actual modification.
|
|
4308
4308
|
You MUST provide the exact parameter information obtained from get_functionality_details (Step 2).`,annotations:{title:"Execute Fiori Functionality",readOnlyHint:!1,destructiveHint:!0,idempotentHint:!1,openWorldHint:!0},inputSchema:Jy($6r),outputSchema:Jy(G6r)}];var gut=class{applicationKey="";extensionName="";extensionVersion="";getApplicationKey(){return this.applicationKey}getExtensionVersion(){return this.extensionVersion}getExtensionName(){return this.extensionName}};var cno=br(j3r(),1);var Iht=class{extensionName;eventName;constructor(e,r){this.extensionName=e,this.eventName=r}getExtensionName(){return this.extensionName}getEventName(){return this.eventName}toString(){return`${this.extensionName}/${this.eventName}`}};var _M;(function(t){t[t.OnePercent=0]="OnePercent",t[t.TenPercent=1]="TenPercent",t[t.NoSampling=2]="NoSampling"})(_M||(_M={}));function T8t(t){if(t.setUseDiskRetryCaching)try{t.setUseDiskRetryCaching(!0)}catch{}t.addTelemetryProcessor(e=>(e.tags??={},e.tags["ai.location.ip"]="0.0.0.0",e.tags["ai.cloud.roleInstance"]="masked",e.tags["ai.cloud.role"]="masked",e.tags["ai.device.type"]="masked",!0))}var U3r={name:"@sap-ux/telemetry",version:"1.0.23",description:"Library for sending usage telemetry data",type:"module",repository:{type:"git",url:"https://github.com/SAP/open-ux-tools.git",directory:"packages/telemetry"},bugs:{url:"https://github.com/SAP/open-ux-tools/issues?q=is%3Aopen+is%3Aissue+label%3Abug+label%3Atelemetry"},license:"Apache-2.0",private:!1,main:"dist/index.js",scripts:{build:"tsc --build",watch:"tsc --watch",clean:"rimraf --glob dist coverage *.tsbuildinfo",format:"prettier --write '**/*.{js,json,ts,yaml,yml}' --ignore-path ../../.prettierignore",lint:"eslint","lint:fix":"eslint --fix",test:"cross-env NODE_OPTIONS='--experimental-vm-modules' jest --ci --forceExit --detectOpenHandles --colors","test-u":"cross-env NODE_OPTIONS='--experimental-vm-modules' jest --ci --forceExit --detectOpenHandles --colors -u",link:"pnpm link --global",unlink:"pnpm unlink --global",example:"ts-node example/index.ts"},dependencies:{"@sap-ux/store":"workspace:*","@sap-ux/project-access":"workspace:*","@sap-ux/btp-utils":"workspace:*","@sap-ux/ui5-config":"workspace:*","@sap-ux/logger":"workspace:*","@sap-ux/nodejs-utils":"workspace:*",applicationinsights:"3.15.1",axios:"1.18.1","performance-now":"2.1.0",yaml:"2.9.0"},devDependencies:{"@jest/globals":"30.4.1","jest-extended":"7.0.0",memfs:"3.4.13",unionfs:"4.6.0",dotenv:"17.4.2"},files:["dist","LICENSE","!dist/*.map","!dist/**/*.map"],engines:{node:">=22.x"}};var TM={azureInstrumentationKey:"",telemetryEnabled:!0,telemetryLibName:U3r.name,telemetryLibVersion:U3r.version,consumerModuleName:"",consumerModuleVersion:""};process.env.APPLICATION_INSIGHTS_NO_DIAGNOSTIC_CHANNEL??="true";var Rht=class extends gut{clients;constructor(e,r,n){super(),this.clients=new Map,this.applicationKey=e,this.extensionVersion=n,this.extensionName=r;let i=this.createTelemetryClient(_M.OnePercent),a=this.createTelemetryClient(_M.TenPercent),s=this.createTelemetryClient(_M.NoSampling);this.clients.set(_M.OnePercent,i),this.clients.set(_M.TenPercent,a),this.clients.set(_M.NoSampling,s)}reportBlocking(e,r,n,i,a=!1){if(!a||TM.telemetryEnabled){let{client:s,event:c}=this.prepareClientAndEvent(e,r,n,i);return this.trackEventBlocking(s,c)}return Promise.resolve()}async report(e,r,n,i,a,s){if(s!==void 0&&!s||!TM.telemetryEnabled)return;let{client:c,event:l}=this.prepareClientAndEvent(e,r,n,i);this.trackEvent(c,l)}prepareClientAndEvent(e,r,n,i=_M.NoSampling){let a=this.clients.get(i),c={name:new Iht(this.extensionName,e).toString(),properties:r,measurements:n};return{client:a,event:c}}async trackEventBlocking(e,r){process.env.SAP_UX_FIORI_TOOLS_DISABLE_TELEMETRY!=="true"&&(e.trackEvent(r),await e.flush())}trackEvent(e,r){return process.env.SAP_UX_FIORI_TOOLS_DISABLE_TELEMETRY!=="true"?(e.trackEvent(r),!0):!1}createTelemetryClient(e){let r;switch(e){case _M.OnePercent:r=1;break;case _M.TenPercent:r=10;break;case _M.NoSampling:default:r=100;break}let n=new cno.TelemetryClient(this.applicationKey);return n.config.samplingPercentage=r,T8t(n),n}};var B3r=()=>{let t=new Date().getTime();return new Date(t).toISOString()};var Lht=class extends Rht{constructor(e,r,n){super(e,r,n)}async report(e,r,n,i,a,s){let c=await b8t(a),l={v:this.extensionVersion,datetime:B3r()},u={...r,...c,...l};await super.report(e,u,n,i,a,s)}async reportEvent(e,r,n,i){let{finalProperties:a,finalMeasurements:s}=await this.collectToolsSuiteTelemetry(e,n);return super.report(e.eventName,a,s,r,n,i)}async reportEventBlocking(e,r,n,i){let{finalProperties:a,finalMeasurements:s}=await this.collectToolsSuiteTelemetry(e,n);return super.reportBlocking(e.eventName,a,s,r,i)}async collectToolsSuiteTelemetry(e,r){let n=await b8t(r),i={v:this.extensionVersion,datetime:B3r()},a={...e.properties,...n,...i},s={...e.measurements};return{finalProperties:a,finalMeasurements:s}}};aSe();var lno=br(KD(),1),uno=br(Btr(),1);UT();import fX from"node:fs";import aoe from"node:path";var S8t={internalFeature:!1};var Mht;(function(t){t.UNKNOWN="UNKNOWN",t.NO_TOOLS_ID="NO_TOOLS_ID"})(Mht||(Mht={}));var VZ;(function(t){t.CAPJava="CAPJava",t.CAPNode="CAPNode",t.ABAP="ABAP",t.UNKNOWN="UNKNOWN"})(VZ||(VZ={}));var qwe;(function(t){t.CF="CF",t.ABAP="ABAP",t.UNKNOWN_DEPLOY_CONFIG="UNKNOWN_DEPLOY_CONFIG",t.NO_DEPLOY_CONFIG="NO_DEPLOY_CONFIG"})(qwe||(qwe={}));var T0;(function(t){t.DevSpace="cmn.devspace",t.AppStudio="cmn.appstudio",t.AppStudioBackwardCompatible="appstudio",t.InternlVsExternal="cmn.internalFeatures",t.InternlVsExternalBackwardCompatible="internalVsExternal",t.TemplateType="cmn.template",t.DeployTargetType="cmn.deployTarget",t.ODataSourceType="cmn.odataSource",t.AppToolsId="cmn.toolsId",t.NodeVersion="cmn.nodeVersion",t.AppProgrammingLanguage="cmn.appLanguage",t.TemplateId="cmn.templateId",t.TemplateVersion="cmn.templateVersion",t.ApplicationType="cmn.applicationType",t.IdeType="cmn.ideType"})(T0||(T0={}));async function b8t(t){let e=await G3r(),r={};return t&&(r=await Qnc(t.appPath)),{...e,...r}}async function G3r(){let t={};return t[T0.DevSpace]=await Jnc(),t[T0.AppStudio]=H0(),t[T0.AppStudioBackwardCompatible]=t[T0.AppStudio],t[T0.InternlVsExternal]=nic(),t[T0.InternlVsExternalBackwardCompatible]=t[T0.InternlVsExternal],t[T0.NodeVersion]=await oic(),t[T0.IdeType]=H3r(),t}async function Jnc(){if(H0())try{if(!process.env.H2O_URL||!process.env.WORKSPACE_ID)return"";let t=process.env.H2O_URL,e=process.env.WORKSPACE_ID.replace("workspaces-",""),r=`${t}/ws-manager/api/v1/workspace/${e}`,n=await lno.default.get(r);if(n.data)return n.data?.config?.annotations?.pack}catch{}return""}async function Qnc(t){if(!t)return{};let e=await Znc(t),r=await ric(t),n=await vLe(t),i=await eic(t);n==="Fiori Reuse"&&(i=VZ.UNKNOWN);let a=await iic(t),s=await aYe(t),c={};return c[T0.TemplateType]=e,c[T0.DeployTargetType]=r,c[T0.ODataSourceType]=i,c[T0.AppToolsId]=a.toolsId??"",c[T0.AppProgrammingLanguage]=s,c[T0.TemplateId]=a.id??"",c[T0.TemplateVersion]=a.version??"",c[T0.ApplicationType]=n??"",c}async function Znc(t){let e=aoe.join(t,"README.md"),r=aoe.join(t,".appGenInfo.json");if(fX.existsSync(r)){let n=await fX.promises.readFile(r,"utf-8"),i=JSON.parse(n);if(i?.generationParameters?.template)return i.generationParameters.template.trim()}if(fX.existsSync(e)){let n=await fX.promises.readFile(e,"utf-8");if(n){let i="",a=n.split(/\r?\n/);for(let s of a){let l=/\|\*\*Template Used\*\*<br>(.*?)\|/.exec(s);if(l&&l.length>=2){i=l[1].trim();break}}return i}}return""}async function eic(t){try{let e;try{e=await r7(t)}catch{}if(!e)try{let i=aoe.dirname(t);e=await r7(i,!1)}catch{}let r=!1;if(!e){let i=aoe.dirname(t),a=aoe.dirname(i);r=await eLe(a),e=r?a:t}if(r)return VZ.CAPJava;let n=await XSe(e);return tic(n)}catch{return VZ.UNKNOWN}}function tic(t){return t==="EDMXBackend"?VZ.ABAP:t==="CAPNodejs"?VZ.CAPNode:t==="CAPJava"?VZ.CAPJava:VZ.UNKNOWN}async function ric(t){let e=qwe.NO_DEPLOY_CONFIG,r=aoe.join(t,"ui5-deploy.yaml");try{await fX.promises.access(r);let n=await fX.promises.readFile(r,"utf-8"),a=uno.default.parse(n)?.builder?.customTasks;a?e=a.some(c=>c.name==="deploy-to-abap")?qwe.ABAP:qwe.CF:e=qwe.UNKNOWN_DEPLOY_CONFIG}catch{}return e}function nic(){return S8t.internalFeature?"internal":"external"}async function iic(t){let e=await QE(t),r={manifest:aoe.join(e,"manifest.json"),appdescr:aoe.join(e,"manifest.appdescr_variant"),ui5Yaml:aoe.join(t,"ui5.yaml")};try{if(fX.existsSync(r.manifest)){let n=await fX.promises.readFile(r.manifest,"utf-8"),i=JSON.parse(n);return q3r(i["sap.app"]?.sourceTemplate??{})}if(fX.existsSync(r.appdescr)&&fX.existsSync(r.ui5Yaml)){let n=await fX.promises.readFile(r.ui5Yaml,"utf-8"),a=(await VY.newInstance(n)).getCustomConfiguration("adp");return q3r(a?.support??{})}}catch{}return q3r({})}function q3r(t){return{id:t.id??"",version:t.version??"",toolsId:t.toolsId??Mht.NO_TOOLS_ID}}async function oic(){try{return(await new DLe().run("node",["-v"])??"unknown").replaceAll(/(?:^v)|([\r\n]{1,100})/g,"")}catch{return"unknown"}}function H3r(){if(H0())return"appstudio";let t=process.env.VSCODE_CWD?.toLowerCase()??"",e=process.env.VSCODE_PID,r=process.env.TERM_PROGRAM??"",n=process.env.VSCODE_APPNAME?.toLowerCase()??"";return!e&&!t&&r!=="vscode"&&r!=="vscode-insiders"?"unknown":process.env.CURSOR_TRACE_ID||n.includes("cursor")||t.includes("cursor")?"cursor":n.includes("windsurf")||t.includes("windsurf")||t.includes("codeium")?"windsurf":n.includes("antigravity")||t.includes("antigravity")?"antigravity":n.includes("trae")||t.includes("trae")?"trae":n.includes("kiro")||t.includes("kiro")?"kiro":n.includes("vscodium")||n.includes("codium")||t.includes("vscodium")||t.includes("codium")?"vscodium":n.includes("code-server")||t.includes("code-server")||process.env.CODE_SERVER_SESSION?"code-server":n.includes("insiders")||t.includes("code - insiders")||t.includes("code insiders")||t.includes("vscode-insiders")||r==="vscode-insiders"?"vscode-insiders":e||r==="vscode"?"vscode":"unknown"}var pno=br(j3r(),1);var KHe;(function(t){t.Test="test",t.TELEMETRY_SETTINGS_INIT_FAILED="TELEMETRY_SETTINGS_INIT_FAILED",t.DISABLE_TELEMETRY="DISABLE_TELEMETRY"})(KHe||(KHe={}));var aic=t=>{let e=[/sap-ux.+/gi,/[-a-zA-Z]+\/ide-extension\/.+/gi,/(\/telemetry\/.+)/gi],r=[],n=t.split(`
|
|
4309
4309
|
`).filter(i=>!!/^\s*at .*(\S+:\d+|\(native\))/m.exec(i));return n.length&&n.forEach(i=>{let a=i.replace(/^\s+/,""),c=/ (\((.+):(\d+):(\d+)\)$)/.exec(i);if(!c)return;let l=null,u=c[2].replace(/\\/g,"/");for(let m of e){let g=m.exec(u);if(g){l=g[0];break}}if(!l)return;a=a.replace(c[0],"");let p=a.split(/\s+/).slice(1).join(""),d=c[3],f=c[4],h=`${p} at (${l}:${d}:${f});`;r.push(h)}),r},O8t,dno=t=>{process.env.SAP_UX_FIORI_TOOLS_DISABLE_TELEMETRY?.trim()!=="true"&&(O8t=new pno.TelemetryClient(TM.azureInstrumentationKey),T8t(O8t));let e={message:t.message};if(t.stack){let n=aic(t.stack);n.length&&(e.stack=n.join(`
|
|
4310
|
-
`))}let r={name:KHe.TELEMETRY_SETTINGS_INIT_FAILED,properties:e,measurements:{}};process.env.SAP_UX_FIORI_TOOLS_DISABLE_TELEMETRY!=="true"&&O8t.trackEvent(r)},fno=(t,e)=>{let r={name:KHe.DISABLE_TELEMETRY,properties:{disableTelemetry:`${!t}`,...e},measurements:{}};process.env.SAP_UX_FIORI_TOOLS_DISABLE_TELEMETRY!=="true"&&O8t.trackEvent(r)};import sic from"node:os";import cic from"node:path";import lic from"node:fs";var uic={win32:"\\AppData\\Roaming\\Code\\User\\settings.json",darwin:"/Library/Application Support/Code/User/settings.json",linux:"/.config/Code/User/settings.json",theia:"/.theia/settings.json"},pic=["sap.ux.annotation.lsp.enableTelemetry","sap.ux.applicationModeler.enableTelemetry","sap.ux.help.enableTelemetry","sap.ux.serviceModeler.enableTelemetry"],dic=t=>{let e=process.platform,r=t[e];if(H0()&&(r=t.theia),!r)return null;let n=sic.homedir();return cic.join(n,r)};async function fic(t){let e;try{e=await t.read(new lye)}catch{}if(e)TM.telemetryEnabled=e.enableTelemetry;else{let r=dic(uic);if(!r)await A8t(!0);else{let n;try{n=await lic.promises.readFile(r,"utf-8");let i=JSON.parse(n),s=pic.map(c=>i[c]??!0).reduce((c,l)=>c&&l,!0);await A8t(s)}catch{await A8t(!0)}}}}function hic(t){ajt(ePe.TelemetrySetting,()=>{t.read(new lye).then(e=>{e&&(TM.telemetryEnabled=e.enableTelemetry)}).catch(()=>{})})}var z3r=async t=>{try{TM.consumerModuleName=t.consumerModule.name,TM.consumerModuleVersion=t.consumerModule.version,S8t.internalFeature=t.internalFeature??!1,t.resourceId&&(TM.azureInstrumentationKey=t.resourceId);let e=await b2e({entityName:"telemetrySetting"});await fic(e),t.watchTelemetrySettingStore&&hic(e)}catch(e){dno(e)}};async function A8t(t){try{let r=await b2e({entityName:"telemetrySetting"}),n=new uut({enableTelemetry:t});await r.write(n),TM.telemetryEnabled=t}catch{}let e=await G3r();fno(t,e)}var mic="ApplicationInsightsInstrumentationKeyPLACEH0LDER",D8=class t{static clientMap=new Map;static getTelemetryClient(){return t.getTelemetryClientByClass(Lht)}static getTelemetryClientByClass(e){let r=t.clientMap.get(e.name);if(r)return r;let n=t.buildConnectionString(TM.azureInstrumentationKey);return r=new e(n,TM.consumerModuleName,TM.consumerModuleVersion),t.clientMap.set(e.name,r),r}static buildConnectionString(e){return e?`InstrumentationKey=${e===mic?"00000000-0000-0000-0000-000000000000":e}`:""}};var I8;(function(t){t.START_MARK="START_MARK",t.END_MARK="END_MARK",t.MEASUREMENT="MEASUREMENT"})(I8||(I8={}));var C8t=class{static initTiming;static enteries;static initialize;static startMark;static endMark;static measure;static getEntries;static getEntriesByName;static getEntriesByType;static getEntriesByNameType;static getMeasurementDuration;static clearEntries};var kht=class{startTime;name;type;getStartTime(){return this.startTime}constructor(e,r,n){this.startTime=n,this.name=e,this.startTime=n,this.type=r}},P8t=class extends kht{startTime;duration;constructor(e,r,n){super(e,I8.MEASUREMENT,r),this.startTime=r,this.duration=n,this.duration=n}getDurationTime(){return this.duration}};import{performance as gic}from"node:perf_hooks";var yic=()=>gic.now(),LC=class t extends C8t{static initTiming;static now=yic;static entries=[];static initialize(){t.initTiming=t.now()}static mark(e,r,n){let i=new kht(e,r,n);t.entries.push(i)}static startMark(e){let r=t.now(),n=e+r;return t.mark(n,I8.START_MARK,r),n}static endMark(e){let r=t.now();t.mark(e,I8.END_MARK,r)}static measure(e){let r=t.getEntriesByNameType(e,I8.START_MARK).slice(-1)[0],n=t.getEntriesByNameType(e,I8.END_MARK).slice(-1)[0];if(!r&&!n)throw new Error(`Failed to execute 'measure': mark '${e}' doesn't exist.`);if(!r||!n){let l=r?I8.END_MARK:I8.START_MARK;throw new Error(`Failed to execute 'measure': mark '${e}'of type '${l}' doesn't exist.`)}let i=r.getStartTime(),s=n.getStartTime()-i,c=new P8t(`${e}`,t.now(),s);t.entries.push(c)}static getEntries(){return t.entries}static getEntriesByName(e){return t.entries.filter(r=>r.name===e)}static getEntriesByNameType(e,r){return t.entries.filter(n=>n.name===e&&n.type===r)}static getEntriesByType(e){return t.entries.filter(r=>r.type===e)}static getMeasurementDuration(e){return t.getEntriesByNameType(e,I8.MEASUREMENT).slice(-1)[0].getDurationTime()}static clearEntries(){t.entries=[]}};LC.initialize();var vic=(t,e)=>new Error(`Wrong path for '${t}' field is specified in instructions with index - ${e}`),_ic=(t,e,r,n)=>{let i=e.split("/"),a=t,s=0;for(;s<i.length;){if(a=a[i[s]],a===void 0)throw vic(r,n);s++}return a},hno=(t,e)=>{let r={},n={},i=null;e.paramIndex!==void 0&&(i=t[e.paramIndex]);let a=e.key?e.key:"data",s="";return typeof e.value=="string"?s=e.value:e.value!==void 0&&e.paramIndex!==void 0?s=_ic(i,e.value.path,"val",e.paramIndex):s=i,typeof s=="number"&&!Number.isNaN(s)?n[a]=s:r[a]=s,[r,n]},K3r=(t,e)=>{let r,n,i={},a={};if(Array.isArray(e))for(let s of e)[r,n]=hno(t,s),i={...i,...r},a={...a,...n};else[i,a]=hno(t,e);return[i,a]};var mno=(t,e,r,n)=>(...i)=>{let a=e.apply(t,i);return D8.getTelemetryClient().report(r,{},{},n),a},gno=(t,e,r,n)=>async(...i)=>{let a=await e.apply(t,i);return D8.getTelemetryClient().report(r,{},{},n),a},yno=(t,e,r,n)=>(...i)=>{let a=LC.startMark("mark"),s=e.apply(t,i);LC.endMark(a),LC.measure(a);let c=LC.getMeasurementDuration(a);return D8.getTelemetryClient().report(r,{},{ms:c},n),s},vno=(t,e,r,n)=>async(...i)=>{let a=LC.startMark("mark"),s=await e.apply(t,i);LC.endMark(a),LC.measure(a);let c=LC.getMeasurementDuration(a);return D8.getTelemetryClient().report(r,{},{ms:c},n),s},_no=(t,e,r,n,i)=>(...a)=>{let s=e.apply(t,a),[c,l]=K3r(a,i);return D8.getTelemetryClient().report(r,c,l,n),s},Eno=(t,e,r,n,i)=>async(...a)=>{let s=await e.apply(t,a),[c,l]=K3r(a,i);return D8.getTelemetryClient().report(r,c,l,n),s};var soe;(function(t){t.NOTIFICATION="notify",t.DURATION="duration",t.CAPTURE_PARAM="captureParam"})(soe||(soe={}));var x8t=new Map;x8t.set(soe.NOTIFICATION,mno);x8t.set(soe.DURATION,yno);x8t.set(soe.CAPTURE_PARAM,_no);var w8t=new Map;w8t.set(soe.NOTIFICATION,gno);w8t.set(soe.DURATION,vno);w8t.set(soe.CAPTURE_PARAM,Eno);var Y3r={AnnotationModeler:"sap.ux.annotationModeler",AppGenerator:"sap.ux.appGenerator",ApplicationModeler:"sap.ux.applicationModeler",Help:"sap.ux.help",ServiceModeler:"sap.ux.serviceModeler",Internal:"sap.ux.internal"},W3r={"sap.ux.help.testBetaFeatures.enableAppStudioGDContribution":"c8c52f0b-0d7d-4697-997a-d6f29814f42e","sap.ux.help.testBetaFeatures.showTestGuides":"fbb03f42-0a86-4fd5-9fc4-8c9b38a4d1a3","sap.ux.help.testBetaFeatures.enableFioriAI":"165a0e31-35ea-4bee-8d47-b8593435a82d","sap.ux.help.testBetaFeatures.enableFioriAIJoule":"165a0e31-35ea-4bee-8d47-b8593435a82e","sap.ux.help.testBetaFeatures.enableFioriAIVsCode":"165a0e31-35ea-4bee-8d47-b8593435a82f","sap.ux.help.testBetaFeatures.enableFioriAIAppModeler":"165a0e31-35ea-4bee-8d47-b8593435a82g","sap.ux.help.testBetaFeatures.enableFioriAIRapGeneration":"165a0e31-35ea-4bee-8d47-b8593435a82h","sap.ux.applicationModeler.testBetaFeatures.manifestEditor":!0,"sap.ux.appGenerator.testBetaFeatures.newAnnotationAPI":!0},N8t="testBetaFeatures",X3r="sap.ux.applicationModeler.enableExperimentalFeatures";import{createRequire as Tic}from"node:module";var bic=Tic(import.meta.url);function Tno(){try{return bic("vscode")}catch{return}}var Sic=Tno(),D8t=class t{static get vscode(){return Sic}static getFeatureToggle(e){let r,n=t.vscode;if((e.includes(N8t)||e===X3r)&&n){let a=e.slice(0,e.lastIndexOf(".")),s=e.slice(e.lastIndexOf(".")+1,e.length);r=n.workspace.getConfiguration(a)?.get(s)}else r=!1;return process.env.TOOLSUITE_FEATURES&&(r=process.env.TOOLSUITE_FEATURES.split(",").includes(e)?!0:r),W3r[e]&&(W3r[e]===r?r=!0:r=!1),{feature:e,isEnabled:r===!0?r:!1}}static getAllFeatureToggles(){let e=[],r=t.vscode;if(r)Object.keys(Y3r).forEach(n=>{let i=`${Y3r[n]}.${N8t}`,a,s=[];try{a=r.workspace.getConfiguration(i),s=Object.keys(a).filter(c=>typeof a?.[c]!="function")}catch{}a&&s.forEach(c=>{let l=a.get(c),u={feature:`${i}.${c}`,isEnabled:l||!1};e.push(u)})});else if(process.env.TOOLSUITE_FEATURES){let n=process.env.TOOLSUITE_FEATURES.split(",");for(let i of n){let a={feature:i,isEnabled:!0};e.push(a)}}return e}};function J3r(){let t="sap.ux.internal.enableInternalFeatures",e=!1,r=D8t.vscode;return r&&(e=(r.workspace?r.workspace.getConfiguration().get(t):!1)??!1),process.env.TOOLSUITE_INTERNAL&&process.env.TOOLSUITE_INTERNAL==="true"&&(e=!0),e}var Vio=br(Rio(),1);import{randomUUID as aac}from"node:crypto";var rac=["@sap-ux","fiori-mcp-server"].join("/");var nac="1.11.3",Lio={name:rac,version:nac};var Mio={telemetry:{unknownOs:"Unknown"}};var lzr="fiori-mcp-server",kio=Mg.createInstance();async function oac(){await kio.init({resources:{en:{[lzr]:Mio}},lng:"en",fallbackLng:"en",defaultNS:lzr,ns:[lzr]})}function $io(t,e){return kio.t(t,e)}oac().catch(()=>{});var{version:sac}=Lio,Fio="@sap-ux/fiori-mcp-server",jio="unknown-tool",cac="0a65e45d-6bf4-421d-b845-61e888c50e9e",jZ=class{static _telemetryData;static _previousEventTimestamp;static _sessionId;static get telemetryData(){return this._telemetryData}static get sessionId(){return this._sessionId}static initSessionId(){this._sessionId=aac(),ki.info(`Telemetry session initialized with ID: ${this._sessionId}`)}static async initTelemetrySettings(e){this._sessionId||this.initSessionId();let r={consumerModule:{name:Fio,version:sac},watchTelemetrySettingStore:!1,internalFeature:J3r(),resourceId:cac,...e};try{await z3r(r)}catch(n){ki.error(`Error initializing telemetry settings: ${n}`)}}static createTelemetryData(e,r=!1){let n=new Date().getTime();if(this._previousEventTimestamp||(r=!1,this._previousEventTimestamp=n),!this._telemetryData){let i=$io("telemetry.unknownOs");try{i=(0,Vio.default)()}catch{}this._telemetryData={Platform:H0()?"SBAS":"VSCode",OperatingSystem:i,SessionId:this.sessionId}}if(r){let i={...this._telemetryData,...e};if(Math.abs(this._previousEventTimestamp-n)<1e3&&JSON.stringify(i)===JSON.stringify(this._telemetryData))return}return this._previousEventTimestamp=n,this._telemetryData=Object.assign(this._telemetryData,e),this._telemetryData}static prepareTelemetryEvent(e,r){this.markToolsEndTime();let n=r.markName?LC.getMeasurementDuration(r.markName):void 0;return{eventName:e,properties:r,measurements:n?{RequestTime:n}:{}}}static markToolStartTime(){this.createTelemetryData({markName:LC.startMark("MCP_LOADING_TIME")})}static markToolsEndTime(){this._telemetryData?.markName&&(LC.endMark(this._telemetryData.markName),LC.measure(this._telemetryData.markName))}static async sendTelemetry(e,r,n){let i=this.createTelemetryData(r)??r,a=this.prepareTelemetryEvent(e,i);await D8.getTelemetryClient().reportEvent(a,_M.NoSampling,n?{appPath:n}:void 0)}static getTelemetryName(){return Fio}};var Uio="2024-11-05";function lac(t){return _Te.includes(t)?t:_Te.includes(Uio)?Uio:_Te[_Te.length-1]}var Y8t=class{server;mcpClientName="unknown-client";mcpClientVersion="unknown-version";constructor(){this.server=new kTt({name:"fiori-mcp",version:pIe,icons:[{src:"https://raw.githubusercontent.com/SAP/open-ux-tools/main/packages/fiori-mcp-server/assets/icon.svg",mimeType:"image/svg+xml"},{src:"https://raw.githubusercontent.com/SAP/open-ux-tools/main/packages/fiori-mcp-server/assets/icon.png",mimeType:"image/png"}],title:"MCP Server for SAP Fiori"},{capabilities:{tools:{}}}),this.setupToolHandlers(),this.setupErrorHandling()}setupErrorHandling(){this.server.onerror=e=>ki.error(`[MCP Error] ${e}`),process.on("SIGINT",async()=>{await this.server.close(),process.exit(0)})}async setupTelemetry(){await jZ.initTelemetrySettings()}setupToolHandlers(){this.server.setRequestHandler(Nze,async e=>{this.mcpClientName=e.params.clientInfo?.name||"unknown-client",this.mcpClientVersion=e.params.clientInfo?.version||"unknown-version",ki.info(`MCP Client connected: ${this.mcpClientName} v${this.mcpClientVersion}`);let r={mcpClientName:this.mcpClientName,mcpClientVersion:this.mcpClientVersion};return await jZ.sendTelemetry(NNn,r),{protocolVersion:lac(e.params.protocolVersion),capabilities:{tools:{}},serverInfo:{name:"fiori-mcp",version:pIe},instructions:`
|
|
4310
|
+
`))}let r={name:KHe.TELEMETRY_SETTINGS_INIT_FAILED,properties:e,measurements:{}};process.env.SAP_UX_FIORI_TOOLS_DISABLE_TELEMETRY!=="true"&&O8t.trackEvent(r)},fno=(t,e)=>{let r={name:KHe.DISABLE_TELEMETRY,properties:{disableTelemetry:`${!t}`,...e},measurements:{}};process.env.SAP_UX_FIORI_TOOLS_DISABLE_TELEMETRY!=="true"&&O8t.trackEvent(r)};import sic from"node:os";import cic from"node:path";import lic from"node:fs";var uic={win32:"\\AppData\\Roaming\\Code\\User\\settings.json",darwin:"/Library/Application Support/Code/User/settings.json",linux:"/.config/Code/User/settings.json",theia:"/.theia/settings.json"},pic=["sap.ux.annotation.lsp.enableTelemetry","sap.ux.applicationModeler.enableTelemetry","sap.ux.help.enableTelemetry","sap.ux.serviceModeler.enableTelemetry"],dic=t=>{let e=process.platform,r=t[e];if(H0()&&(r=t.theia),!r)return null;let n=sic.homedir();return cic.join(n,r)};async function fic(t){let e;try{e=await t.read(new lye)}catch{}if(e)TM.telemetryEnabled=e.enableTelemetry;else{let r=dic(uic);if(!r)await A8t(!0);else{let n;try{n=await lic.promises.readFile(r,"utf-8");let i=JSON.parse(n),s=pic.map(c=>i[c]??!0).reduce((c,l)=>c&&l,!0);await A8t(s)}catch{await A8t(!0)}}}}function hic(t){ajt(ePe.TelemetrySetting,()=>{t.read(new lye).then(e=>{e&&(TM.telemetryEnabled=e.enableTelemetry)}).catch(()=>{})})}var z3r=async t=>{try{TM.consumerModuleName=t.consumerModule.name,TM.consumerModuleVersion=t.consumerModule.version,S8t.internalFeature=t.internalFeature??!1,t.resourceId&&(TM.azureInstrumentationKey=t.resourceId);let e=await b2e({entityName:"telemetrySetting"});await fic(e),t.watchTelemetrySettingStore&&hic(e)}catch(e){dno(e)}};async function A8t(t){try{let r=await b2e({entityName:"telemetrySetting"}),n=new uut({enableTelemetry:t});await r.write(n),TM.telemetryEnabled=t}catch{}let e=await G3r();fno(t,e)}var mic="ApplicationInsightsInstrumentationKeyPLACEH0LDER",D8=class t{static clientMap=new Map;static getTelemetryClient(){return t.getTelemetryClientByClass(Lht)}static getTelemetryClientByClass(e){let r=t.clientMap.get(e.name);if(r)return r;let n=t.buildConnectionString(TM.azureInstrumentationKey);return r=new e(n,TM.consumerModuleName,TM.consumerModuleVersion),t.clientMap.set(e.name,r),r}static buildConnectionString(e){return e?`InstrumentationKey=${e===mic?"00000000-0000-0000-0000-000000000000":e}`:""}};var I8;(function(t){t.START_MARK="START_MARK",t.END_MARK="END_MARK",t.MEASUREMENT="MEASUREMENT"})(I8||(I8={}));var C8t=class{static initTiming;static enteries;static initialize;static startMark;static endMark;static measure;static getEntries;static getEntriesByName;static getEntriesByType;static getEntriesByNameType;static getMeasurementDuration;static clearEntries};var kht=class{startTime;name;type;getStartTime(){return this.startTime}constructor(e,r,n){this.startTime=n,this.name=e,this.startTime=n,this.type=r}},P8t=class extends kht{startTime;duration;constructor(e,r,n){super(e,I8.MEASUREMENT,r),this.startTime=r,this.duration=n,this.duration=n}getDurationTime(){return this.duration}};import{performance as gic}from"node:perf_hooks";var yic=()=>gic.now(),LC=class t extends C8t{static initTiming;static now=yic;static entries=[];static initialize(){t.initTiming=t.now()}static mark(e,r,n){let i=new kht(e,r,n);t.entries.push(i)}static startMark(e){let r=t.now(),n=e+r;return t.mark(n,I8.START_MARK,r),n}static endMark(e){let r=t.now();t.mark(e,I8.END_MARK,r)}static measure(e){let r=t.getEntriesByNameType(e,I8.START_MARK).slice(-1)[0],n=t.getEntriesByNameType(e,I8.END_MARK).slice(-1)[0];if(!r&&!n)throw new Error(`Failed to execute 'measure': mark '${e}' doesn't exist.`);if(!r||!n){let l=r?I8.END_MARK:I8.START_MARK;throw new Error(`Failed to execute 'measure': mark '${e}'of type '${l}' doesn't exist.`)}let i=r.getStartTime(),s=n.getStartTime()-i,c=new P8t(`${e}`,t.now(),s);t.entries.push(c)}static getEntries(){return t.entries}static getEntriesByName(e){return t.entries.filter(r=>r.name===e)}static getEntriesByNameType(e,r){return t.entries.filter(n=>n.name===e&&n.type===r)}static getEntriesByType(e){return t.entries.filter(r=>r.type===e)}static getMeasurementDuration(e){return t.getEntriesByNameType(e,I8.MEASUREMENT).slice(-1)[0].getDurationTime()}static clearEntries(){t.entries=[]}};LC.initialize();var vic=(t,e)=>new Error(`Wrong path for '${t}' field is specified in instructions with index - ${e}`),_ic=(t,e,r,n)=>{let i=e.split("/"),a=t,s=0;for(;s<i.length;){if(a=a[i[s]],a===void 0)throw vic(r,n);s++}return a},hno=(t,e)=>{let r={},n={},i=null;e.paramIndex!==void 0&&(i=t[e.paramIndex]);let a=e.key?e.key:"data",s="";return typeof e.value=="string"?s=e.value:e.value!==void 0&&e.paramIndex!==void 0?s=_ic(i,e.value.path,"val",e.paramIndex):s=i,typeof s=="number"&&!Number.isNaN(s)?n[a]=s:r[a]=s,[r,n]},K3r=(t,e)=>{let r,n,i={},a={};if(Array.isArray(e))for(let s of e)[r,n]=hno(t,s),i={...i,...r},a={...a,...n};else[i,a]=hno(t,e);return[i,a]};var mno=(t,e,r,n)=>(...i)=>{let a=e.apply(t,i);return D8.getTelemetryClient().report(r,{},{},n),a},gno=(t,e,r,n)=>async(...i)=>{let a=await e.apply(t,i);return D8.getTelemetryClient().report(r,{},{},n),a},yno=(t,e,r,n)=>(...i)=>{let a=LC.startMark("mark"),s=e.apply(t,i);LC.endMark(a),LC.measure(a);let c=LC.getMeasurementDuration(a);return D8.getTelemetryClient().report(r,{},{ms:c},n),s},vno=(t,e,r,n)=>async(...i)=>{let a=LC.startMark("mark"),s=await e.apply(t,i);LC.endMark(a),LC.measure(a);let c=LC.getMeasurementDuration(a);return D8.getTelemetryClient().report(r,{},{ms:c},n),s},_no=(t,e,r,n,i)=>(...a)=>{let s=e.apply(t,a),[c,l]=K3r(a,i);return D8.getTelemetryClient().report(r,c,l,n),s},Eno=(t,e,r,n,i)=>async(...a)=>{let s=await e.apply(t,a),[c,l]=K3r(a,i);return D8.getTelemetryClient().report(r,c,l,n),s};var soe;(function(t){t.NOTIFICATION="notify",t.DURATION="duration",t.CAPTURE_PARAM="captureParam"})(soe||(soe={}));var x8t=new Map;x8t.set(soe.NOTIFICATION,mno);x8t.set(soe.DURATION,yno);x8t.set(soe.CAPTURE_PARAM,_no);var w8t=new Map;w8t.set(soe.NOTIFICATION,gno);w8t.set(soe.DURATION,vno);w8t.set(soe.CAPTURE_PARAM,Eno);var Y3r={AnnotationModeler:"sap.ux.annotationModeler",AppGenerator:"sap.ux.appGenerator",ApplicationModeler:"sap.ux.applicationModeler",Help:"sap.ux.help",ServiceModeler:"sap.ux.serviceModeler",Internal:"sap.ux.internal"},W3r={"sap.ux.help.testBetaFeatures.enableAppStudioGDContribution":"c8c52f0b-0d7d-4697-997a-d6f29814f42e","sap.ux.help.testBetaFeatures.showTestGuides":"fbb03f42-0a86-4fd5-9fc4-8c9b38a4d1a3","sap.ux.help.testBetaFeatures.enableFioriAI":"165a0e31-35ea-4bee-8d47-b8593435a82d","sap.ux.help.testBetaFeatures.enableFioriAIJoule":"165a0e31-35ea-4bee-8d47-b8593435a82e","sap.ux.help.testBetaFeatures.enableFioriAIVsCode":"165a0e31-35ea-4bee-8d47-b8593435a82f","sap.ux.help.testBetaFeatures.enableFioriAIAppModeler":"165a0e31-35ea-4bee-8d47-b8593435a82g","sap.ux.help.testBetaFeatures.enableFioriAIRapGeneration":"165a0e31-35ea-4bee-8d47-b8593435a82h","sap.ux.applicationModeler.testBetaFeatures.manifestEditor":!0,"sap.ux.appGenerator.testBetaFeatures.newAnnotationAPI":!0},N8t="testBetaFeatures",X3r="sap.ux.applicationModeler.enableExperimentalFeatures";import{createRequire as Tic}from"node:module";var bic=Tic(import.meta.url);function Tno(){try{return bic("vscode")}catch{return}}var Sic=Tno(),D8t=class t{static get vscode(){return Sic}static getFeatureToggle(e){let r,n=t.vscode;if((e.includes(N8t)||e===X3r)&&n){let a=e.slice(0,e.lastIndexOf(".")),s=e.slice(e.lastIndexOf(".")+1,e.length);r=n.workspace.getConfiguration(a)?.get(s)}else r=!1;return process.env.TOOLSUITE_FEATURES&&(r=process.env.TOOLSUITE_FEATURES.split(",").includes(e)?!0:r),W3r[e]&&(W3r[e]===r?r=!0:r=!1),{feature:e,isEnabled:r===!0?r:!1}}static getAllFeatureToggles(){let e=[],r=t.vscode;if(r)Object.keys(Y3r).forEach(n=>{let i=`${Y3r[n]}.${N8t}`,a,s=[];try{a=r.workspace.getConfiguration(i),s=Object.keys(a).filter(c=>typeof a?.[c]!="function")}catch{}a&&s.forEach(c=>{let l=a.get(c),u={feature:`${i}.${c}`,isEnabled:l||!1};e.push(u)})});else if(process.env.TOOLSUITE_FEATURES){let n=process.env.TOOLSUITE_FEATURES.split(",");for(let i of n){let a={feature:i,isEnabled:!0};e.push(a)}}return e}};function J3r(){let t="sap.ux.internal.enableInternalFeatures",e=!1,r=D8t.vscode;return r&&(e=(r.workspace?r.workspace.getConfiguration().get(t):!1)??!1),process.env.TOOLSUITE_INTERNAL&&process.env.TOOLSUITE_INTERNAL==="true"&&(e=!0),e}var Vio=br(Rio(),1);import{randomUUID as aac}from"node:crypto";var rac=["@sap-ux","fiori-mcp-server"].join("/");var nac="1.11.4",Lio={name:rac,version:nac};var Mio={telemetry:{unknownOs:"Unknown"}};var lzr="fiori-mcp-server",kio=Mg.createInstance();async function oac(){await kio.init({resources:{en:{[lzr]:Mio}},lng:"en",fallbackLng:"en",defaultNS:lzr,ns:[lzr]})}function $io(t,e){return kio.t(t,e)}oac().catch(()=>{});var{version:sac}=Lio,Fio="@sap-ux/fiori-mcp-server",jio="unknown-tool",cac="0a65e45d-6bf4-421d-b845-61e888c50e9e",jZ=class{static _telemetryData;static _previousEventTimestamp;static _sessionId;static get telemetryData(){return this._telemetryData}static get sessionId(){return this._sessionId}static initSessionId(){this._sessionId=aac(),ki.info(`Telemetry session initialized with ID: ${this._sessionId}`)}static async initTelemetrySettings(e){this._sessionId||this.initSessionId();let r={consumerModule:{name:Fio,version:sac},watchTelemetrySettingStore:!1,internalFeature:J3r(),resourceId:cac,...e};try{await z3r(r)}catch(n){ki.error(`Error initializing telemetry settings: ${n}`)}}static createTelemetryData(e,r=!1){let n=new Date().getTime();if(this._previousEventTimestamp||(r=!1,this._previousEventTimestamp=n),!this._telemetryData){let i=$io("telemetry.unknownOs");try{i=(0,Vio.default)()}catch{}this._telemetryData={Platform:H0()?"SBAS":"VSCode",OperatingSystem:i,SessionId:this.sessionId}}if(r){let i={...this._telemetryData,...e};if(Math.abs(this._previousEventTimestamp-n)<1e3&&JSON.stringify(i)===JSON.stringify(this._telemetryData))return}return this._previousEventTimestamp=n,this._telemetryData=Object.assign(this._telemetryData,e),this._telemetryData}static prepareTelemetryEvent(e,r){this.markToolsEndTime();let n=r.markName?LC.getMeasurementDuration(r.markName):void 0;return{eventName:e,properties:r,measurements:n?{RequestTime:n}:{}}}static markToolStartTime(){this.createTelemetryData({markName:LC.startMark("MCP_LOADING_TIME")})}static markToolsEndTime(){this._telemetryData?.markName&&(LC.endMark(this._telemetryData.markName),LC.measure(this._telemetryData.markName))}static async sendTelemetry(e,r,n){let i=this.createTelemetryData(r)??r,a=this.prepareTelemetryEvent(e,i);await D8.getTelemetryClient().reportEvent(a,_M.NoSampling,n?{appPath:n}:void 0)}static getTelemetryName(){return Fio}};var Uio="2024-11-05";function lac(t){return _Te.includes(t)?t:_Te.includes(Uio)?Uio:_Te[_Te.length-1]}var Y8t=class{server;mcpClientName="unknown-client";mcpClientVersion="unknown-version";constructor(){this.server=new kTt({name:"fiori-mcp",version:pIe,icons:[{src:"https://raw.githubusercontent.com/SAP/open-ux-tools/main/packages/fiori-mcp-server/assets/icon.svg",mimeType:"image/svg+xml"},{src:"https://raw.githubusercontent.com/SAP/open-ux-tools/main/packages/fiori-mcp-server/assets/icon.png",mimeType:"image/png"}],title:"MCP Server for SAP Fiori"},{capabilities:{tools:{}}}),this.setupToolHandlers(),this.setupErrorHandling()}setupErrorHandling(){this.server.onerror=e=>ki.error(`[MCP Error] ${e}`),process.on("SIGINT",async()=>{await this.server.close(),process.exit(0)})}async setupTelemetry(){await jZ.initTelemetrySettings()}setupToolHandlers(){this.server.setRequestHandler(Nze,async e=>{this.mcpClientName=e.params.clientInfo?.name||"unknown-client",this.mcpClientVersion=e.params.clientInfo?.version||"unknown-version",ki.info(`MCP Client connected: ${this.mcpClientName} v${this.mcpClientVersion}`);let r={mcpClientName:this.mcpClientName,mcpClientVersion:this.mcpClientVersion};return await jZ.sendTelemetry(NNn,r),{protocolVersion:lac(e.params.protocolVersion),capabilities:{tools:{}},serverInfo:{name:"fiori-mcp",version:pIe},instructions:`
|
|
4311
4311
|
\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501
|
|
4312
4312
|
\u{1F6A8}\u{1F6A8}\u{1F6A8} STOP - READ THIS BEFORE CALLING ANY TOOLS \u{1F6A8}\u{1F6A8}\u{1F6A8}
|
|
4313
4313
|
\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501\u2501
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@sap-ux/fiori-mcp-server",
|
|
3
3
|
"description": "SAP Fiori - Model Context Protocol (MCP) server",
|
|
4
|
-
"version": "1.11.
|
|
4
|
+
"version": "1.11.4",
|
|
5
5
|
"mcpName": "io.github.SAP/fiori-mcp-server",
|
|
6
6
|
"keywords": [
|
|
7
7
|
"SAP Fiori tools",
|
|
@@ -58,21 +58,21 @@
|
|
|
58
58
|
"ts-node": "10.9.2",
|
|
59
59
|
"zod": "4.3.6",
|
|
60
60
|
"@sap-ux/axios-extension": "2.0.8",
|
|
61
|
-
"@sap-ux/btp-utils": "2.0.6",
|
|
62
61
|
"@sap-ux/feature-toggle": "1.0.5",
|
|
63
|
-
"@sap-ux/fiori-annotation-api": "1.0.20",
|
|
64
62
|
"@sap-ux/fiori-docs-embeddings": "1.2.6",
|
|
63
|
+
"@sap-ux/btp-utils": "2.0.6",
|
|
64
|
+
"@sap-ux/fiori-annotation-api": "1.0.20",
|
|
65
65
|
"@sap-ux/i18n": "1.0.2",
|
|
66
66
|
"@sap-ux/logger": "1.0.3",
|
|
67
67
|
"@sap-ux/nodejs-utils": "1.0.9",
|
|
68
68
|
"@sap-ux/odata-annotation-core": "1.0.1",
|
|
69
69
|
"@sap-ux/odata-annotation-core-types": "1.0.1",
|
|
70
70
|
"@sap-ux/odata-service-writer": "1.0.16",
|
|
71
|
-
"@sap-ux/odata-entity-model": "1.0.1",
|
|
72
|
-
"@sap-ux/project-access": "2.1.9",
|
|
73
71
|
"@sap-ux/store": "2.0.6",
|
|
72
|
+
"@sap-ux/odata-entity-model": "1.0.1",
|
|
73
|
+
"@sap-ux/text-document-utils": "1.0.1",
|
|
74
74
|
"@sap-ux/telemetry": "1.0.23",
|
|
75
|
-
"@sap-ux/
|
|
75
|
+
"@sap-ux/project-access": "2.1.9"
|
|
76
76
|
},
|
|
77
77
|
"engines": {
|
|
78
78
|
"node": ">=22.x"
|