UNPKG

@sap/generator-fiori

Version:

Create an SAPUI5 application using SAP Fiori elements or a freestyle approach

3 lines (2 loc) 13.4 kB
const __esmImportMetaUrl = require('node:url').pathToFileURL(__filename).href; var W=Object.create;var h=Object.defineProperty;var X=Object.getOwnPropertyDescriptor;var G=Object.getOwnPropertyNames;var J=Object.getPrototypeOf,Y=Object.prototype.hasOwnProperty;var u=(e,t)=>h(e,"name",{value:t,configurable:!0});var nn=(e,t)=>{for(var o in t)h(e,o,{get:t[o],enumerable:!0})},$=(e,t,o,r)=>{if(t&&typeof t=="object"||typeof t=="function")for(let s of G(t))!Y.call(e,s)&&s!==o&&h(e,s,{get:()=>t[s],enumerable:!(r=X(t,s))||r.enumerable});return e};var E=(e,t,o)=>(o=e!=null?W(J(e)):{},$(t||!e||!e.__esModule?h(o,"default",{value:e,enumerable:!0}):o,e)),en=e=>$(h({},"__esModule",{value:!0}),e);var dn={};nn(dn,{default:()=>Mn,defaultMinUi5Version:()=>d,defaultVersion:()=>V,getDefaultUI5Theme:()=>q,getLatestUI5Version:()=>x,getSapSystemUI5Version:()=>Q,getUI5Versions:()=>y,getUi5Themes:()=>z,latestVersionString:()=>O,minSupportedSpecVersion:()=>k,minUI5VersionForLocalDev:()=>D,minUi5VersionV4Template:()=>N,supportedUi5VersionFallbacks:()=>U,ui5ThemeIds:()=>c,ui5Themes:()=>R,ui5VersionRequestInfo:()=>l});module.exports=en(dn);var v;(function(e){e.official="officialVersions",e.snapshot="snapshotsVersions",e.support="support"})(v||(v={}));var I={officialVersions:[],snapshotsVersions:[],support:[]},l={OfficialUrl:"https://ui5.sap.com",NeoAppFile:"neo-app.json",VersionsFile:"version.json?sap-ui-config-patches=true&sap-ui-config-showall=true",VersionExternalFile:"version.json"},d="1.65.0",O="Latest",V=O,N="1.84.0",D="1.79.0",k="1.71.0";var f=require("../../commonlibs/semver/index.js");var C=require("node:child_process");function H(){return new Promise((e,t)=>{let o=process.platform==="win32",r=o?"npm.cmd":"npm",s=["show","@sapui5/distribution-metadata","versions","--no-color"],i=[],p=(0,C.spawn)(r,s,o?{shell:!0}:{});p.stdout.setEncoding("utf8");let L;p.stdout.on("data",m=>{L=m.toString()}),p.stderr.on("data",m=>{i.push(m.toString())}),p.on("error",m=>t(new Error(`Command failed with error: ${m.message}`))),p.on("close",m=>m!==0?t(new Error(`Command failed, \`${r} ${s.join(" ")}\`, ${i.join(", ")}`)):e(L.replace(/[\r?\n|[\] ']/g,"").trim().split(",")))})}u(H,"executeNpmUI5VersionsCmd");var Z=E(require("../../commonlibs/axios/index.js"),1),w=require("../../open-ux-shared/logger/index.js");var _=require("../../commonlibs/semver/index.js");var n={maintenance:"Maintenance",outOfMaintenance:"Out of maintenance",skipped:"Skipped"},tn=[{version:"1.147.*",support:n.maintenance},{version:"1.146.*",support:n.maintenance},{version:"1.145.*",support:n.maintenance},{version:"1.144.*",support:n.outOfMaintenance},{version:"1.143.*",support:n.outOfMaintenance},{version:"1.142.*",support:n.maintenance},{version:"1.141.*",support:n.outOfMaintenance},{version:"1.140.*",support:n.outOfMaintenance},{version:"1.139.*",support:n.outOfMaintenance},{version:"1.138.*",support:n.outOfMaintenance},{version:"1.136.*",support:n.maintenance},{version:"1.135.*",support:n.outOfMaintenance},{version:"1.134.*",support:n.outOfMaintenance},{version:"1.133.*",support:n.outOfMaintenance},{version:"1.132.*",support:n.outOfMaintenance},{version:"1.131.*",support:n.outOfMaintenance},{version:"1.130.*",support:n.outOfMaintenance},{version:"1.129.*",support:n.outOfMaintenance},{version:"1.128.*",support:n.outOfMaintenance},{version:"1.127.*",support:n.outOfMaintenance},{version:"1.126.*",support:n.outOfMaintenance},{version:"1.125.*",support:n.outOfMaintenance},{version:"1.124.*",support:n.outOfMaintenance},{version:"1.123.*",support:n.outOfMaintenance},{version:"1.122.*",support:n.outOfMaintenance},{version:"1.121.*",support:n.outOfMaintenance},{version:"1.120.*",support:n.maintenance},{version:"1.119.*",support:n.outOfMaintenance},{version:"1.118.*",support:n.outOfMaintenance},{version:"1.117.*",support:n.outOfMaintenance},{version:"1.116.*",support:n.outOfMaintenance},{version:"1.115.*",support:n.outOfMaintenance},{version:"1.114.*",support:n.outOfMaintenance},{version:"1.113.*",support:n.outOfMaintenance},{version:"1.112.*",support:n.outOfMaintenance},{version:"1.111.*",support:n.outOfMaintenance},{version:"1.110.*",support:n.outOfMaintenance},{version:"1.109.*",support:n.outOfMaintenance},{version:"1.108.*",support:n.maintenance},{version:"1.107.*",support:n.outOfMaintenance},{version:"1.106.*",support:n.outOfMaintenance},{version:"1.105.*",support:n.outOfMaintenance},{version:"1.104.*",support:n.outOfMaintenance},{version:"1.103.*",support:n.outOfMaintenance},{version:"1.102.*",support:n.outOfMaintenance},{version:"1.101.*",support:n.outOfMaintenance},{version:"1.100.*",support:n.outOfMaintenance},{version:"1.99.*",support:n.outOfMaintenance},{version:"1.98.*",support:n.outOfMaintenance},{version:"1.97.*",support:n.outOfMaintenance},{version:"1.96.*",support:n.maintenance},{version:"1.95.*",support:n.outOfMaintenance},{version:"1.94.*",support:n.outOfMaintenance},{version:"1.93.*",support:n.outOfMaintenance},{version:"1.92.*",support:n.outOfMaintenance},{version:"1.91.*",support:n.outOfMaintenance},{version:"1.90.*",support:n.outOfMaintenance},{version:"1.89.*",support:n.outOfMaintenance},{version:"1.88.*",support:n.outOfMaintenance},{version:"1.87.*",support:n.outOfMaintenance},{version:"1.86.*",support:n.outOfMaintenance},{version:"1.85.*",support:n.outOfMaintenance},{version:"1.84.*",support:n.outOfMaintenance},{version:"1.82.*",support:n.outOfMaintenance},{version:"1.81.*",support:n.outOfMaintenance},{version:"1.80.*",support:n.outOfMaintenance},{version:"1.79.*",support:n.outOfMaintenance},{version:"1.78.*",support:n.outOfMaintenance},{version:"1.77.*",support:n.outOfMaintenance},{version:"1.76.*",support:n.outOfMaintenance},{version:"1.75.*",support:n.outOfMaintenance},{version:"1.74.*",support:n.outOfMaintenance},{version:"1.73.*",support:n.outOfMaintenance},{version:"1.72.*",support:n.outOfMaintenance},{version:"1.71.*",support:n.maintenance},{version:"1.70.*",support:n.outOfMaintenance},{version:"1.69.*",support:n.outOfMaintenance},{version:"1.68.*",support:n.outOfMaintenance},{version:"1.67.*",support:n.outOfMaintenance},{version:"1.66.*",support:n.outOfMaintenance},{version:"1.65.*",support:n.outOfMaintenance},{version:"1.64.*",support:n.outOfMaintenance},{version:"1.63.*",support:n.outOfMaintenance},{version:"1.62.*",support:n.outOfMaintenance},{version:"1.61.*",support:n.outOfMaintenance},{version:"1.60.*",support:n.outOfMaintenance},{version:"1.58.*",support:n.outOfMaintenance},{version:"1.56.*",support:n.outOfMaintenance},{version:"1.54.*",support:n.outOfMaintenance},{version:"1.52.*",support:n.outOfMaintenance},{version:"1.50.*",support:n.outOfMaintenance},{version:"1.48.*",support:n.outOfMaintenance},{version:"1.46.*",support:n.outOfMaintenance},{version:"1.44.*",support:n.outOfMaintenance},{version:"1.42.*",support:n.outOfMaintenance},{version:"1.40.*",support:n.outOfMaintenance},{version:"1.38.*",support:n.maintenance},{version:"1.36.*",support:n.outOfMaintenance},{version:"1.34.*",support:n.outOfMaintenance},{version:"1.32.*",support:n.outOfMaintenance},{version:"1.30.*",support:n.outOfMaintenance},{version:"1.28.*",support:n.outOfMaintenance},{version:"1.26.*",support:n.outOfMaintenance},{version:"1.24.*",support:n.outOfMaintenance},{version:"1.22.*",support:n.outOfMaintenance},{version:"*",support:n.outOfMaintenance}],U=tn.filter(e=>e.support===n.maintenance&&(0,_.gte)((0,_.coerce)(e.version)??"0.0.0",d)).map(e=>({version:(0,_.coerce)(e.version)?.version??"0.0.0",support:n.maintenance})),g=[...U].map(e=>e.version);var A,on=new Set(["snapshot","snapshot-untested",O]),S=u((e,t)=>{let o=e.split("."),r=t.split("."),s=Math.max(o.length,r.length);for(let i=0;i<s;i++){let a=+o[i]||0,p=+r[i]||0;if(a!==p)return a>p?1:-1}return 0},"ui5VersionStrCmp");function sn(e){return e.filter(Boolean).sort(S).reverse()}u(sn,"sortUI5Versions");function rn(e,t){e=e.replace("snapshot-",""),t=t.replace("snapshot-","");let o=[V,"snapshot","untested"];return o.indexOf(e)>-1&&o.indexOf(t)>-1?e.localeCompare(t):o.indexOf(e)>-1||o.indexOf(t)>-1?S(e,t):S(t+".999",e+".999")}u(rn,"snapshotSort");function j(e,t){return e.filter(o=>on.has(o)?!0:(o.startsWith("snapshot-")&&(o=o.replace("snapshot-","")),S(o,t)>=0))}u(j,"filterNewerEqual");async function an(e=l.OfficialUrl,t=`/${e===l.OfficialUrl?l.VersionsFile:l.NeoAppFile}`){return(await Z.default.get(new URL(t,e).toString(),{responseType:"json"})).data}u(an,"requestUI5Versions");async function T(e=l.OfficialUrl.toString()){let t=await an(e),o=[],r=[];return Array.isArray(t.routes)?o=t.routes.map(s=>(s.path==="/"&&(A=s.target.version),s.path==="/"?V:s.target.version)):(A=t.latest.version,Object.values(t).forEach(({version:s,support:i,patches:a=[]})=>{o.push(...a),r.push({version:s,support:i})})),{versions:o,support:r}}u(T,"parseUI5VersionsAndSupport");var b=u(async(e,t=!0,o)=>{let r=[],s=[];if(I[e].length===0||!t)switch(e){case v.official:case v.support:({versions:r,support:s}=await T()),I.officialVersions=r,I.support=s;break;case v.snapshot:o&&({versions:r}=await T(o),I.snapshotsVersions=r);break;default:}return t?I[e]:e===v.support?s:r},"retrieveUI5VersionsCache");async function pn(e,t=new w.ToolsLogger){let o=[],r=[];try{let i=e?.minSupportedUI5Version??d;o=e?.onlyNpmVersion?await cn(e.ui5SelectedVersion,i):await b(v.official,e?.useCache)}catch(i){t.warn(`Request to '${l.OfficialUrl}' failed. Error was: '${i.message}'. Fallback to default UI5 versions`),o=g.slice()}if(e?.snapshotVersionsHost)try{r=await b(v.snapshot,e?.useCache,e?.snapshotVersionsHost)}catch(i){t.error(`Request to '${e.snapshotVersionsHost}' failed. Error was: '${i.message}'`)}let s=[...o,...r].sort(rn);return s=j(s,e?.minSupportedUI5Version??d),e?.onlyVersionNumbers&&(s[0].toLocaleLowerCase().includes(O.toLocaleLowerCase())&&(s[0]=A),s=s.filter(i=>i&&/^\d+(\.\d+)*$/.test(i))),e?.onlyLatestPatchVersion&&(s=un(s)),[...new Set(s)]}u(pn,"retrieveUI5Versions");function un(e){let t=[];return e.forEach(o=>{let r=`${(0,f.major)(o)}.${(0,f.minor)(o)}`,s=(0,f.maxSatisfying)(e,r);s&&!t.includes(s)&&t.push(s)}),t}u(un,"retrieveLatestPatchVersions");async function cn(e=void 0,t){let o=t??d,r=[];try{r=await H()}catch{r=g.slice()}let s=sn(r),i=j(s,o),a=i.length?i.filter(p=>p&&/^\d+(\.\d+)*$/.test(p)):[o];if(e?.length){let p=a.indexOf(e);p===-1?S(e,a.slice(-1)[0])>0||e===O||!(0,f.valid)(e)?a=a.slice(0):a=a.slice(-1):a=a.slice(p)}return a}u(cn,"retrieveNpmUI5Versions");async function y(e){let t;try{t=await pn(e)}catch(a){new w.ToolsLogger().warn(`Request to '${l.OfficialUrl}' failed. Error was: '${a.message}'. Fallback to default UI5 versions`),t=g.slice()}let o=t[0],r,s=o;if(e?.includeMaintained)try{r=await b(v.support,e.useCache)}catch(a){new w.ToolsLogger().warn(`Request to '${l.OfficialUrl}' for supported info on UI5 versions failed. Error was: '${a.message}'. Fallback to default supported UI5 versions`),r=U}let i=u(a=>r?.some(p=>p&&`${(0,f.major)(p.version)}.${(0,f.minor)(p.version)}`==`${(0,f.major)(a)}.${(0,f.minor)(a)}`&&p.support==="Maintenance")??!1,"isMaintained");return e?.includeDefault&&e.includeMaintained&&!i(o)&&(s=t.find(i)??o),e?.includeLegacyFree||(t=t.filter(a=>!a.includes("-legacy-free"))),t.map(a=>{let p={version:a};return e?.includeDefault&&(p.default=a===s),e?.includeMaintained&&(p.maintained=i(a)),p})}u(y,"getUI5Versions");async function x(e=!0){return(await y({useCache:e}))?.[0]?.version}u(x,"getLatestUI5Version");var M=require("../../commonlibs/semver/index.js");var fn="1.72.0",P="1.102.0",ln="1.136.0",vn="1.120.0",c;(function(e){e.SAP_BELIZE="sap_belize",e.SAP_FIORI_3="sap_fiori_3",e.SAP_FIORI_3_DARK="sap_fiori_3_dark",e.SAP_HORIZON="sap_horizon",e.SAP_HORIZON_DARK="sap_horizon_dark"})(c||(c={}));var R={[c.SAP_BELIZE]:{id:c.SAP_BELIZE,label:"Belize",supportUntil:ln,deprecateSince:vn},[c.SAP_FIORI_3]:{id:c.SAP_FIORI_3,label:"Quartz Light"},[c.SAP_FIORI_3_DARK]:{id:c.SAP_FIORI_3_DARK,label:"Quartz Dark",supportSince:fn},[c.SAP_HORIZON]:{id:c.SAP_HORIZON,label:"Morning Horizon",supportSince:P},[c.SAP_HORIZON_DARK]:{id:c.SAP_HORIZON_DARK,label:"Evening Horizon",supportSince:P}};function q(e){if(e){let t=(0,M.coerce)(e);if(t&&(0,M.lt)(t,P))return c.SAP_FIORI_3}return c.SAP_HORIZON}u(q,"getDefaultUI5Theme");function On(e,t){let o=e.supportSince?(0,M.gte)(t,e.supportSince):!0,r=e.supportUntil?(0,M.lt)(t,e.supportUntil):!0;return o&&r}u(On,"isSupported");async function z(e=V){let t=e===O?await x(!0):e.replace("snapshot-",""),o=(0,M.coerce)(t);if(!o)return Object.values(R);let r={};for(let[s,i]of Object.entries(R))if(On(i,o)){let a=i.deprecateSince&&(0,M.gte)(o,i.deprecateSince);r[s]={...i,label:a?`${i.label} (deprecated)`:i.label}}return Object.values(r)}u(z,"getUi5Themes");var K=E(require("../../commonlibs/axios/index.js"),1),B=E(require("node:https"),1);async function Q(e,t=!1){if(!e)return;let o=new URL("/sap/public/bc/ui5_ui5/bootstrap_info.json",e).toString(),r;try{let s=await K.default.get(o,{httpsAgent:new B.default.Agent({rejectUnauthorized:t})});s.status===200&&(r=s.data.Version)}catch{}return r}u(Q,"getSapSystemUI5Version");var Mn=void 0;0&&(module.exports={defaultMinUi5Version,defaultVersion,getDefaultUI5Theme,getLatestUI5Version,getSapSystemUI5Version,getUI5Versions,getUi5Themes,latestVersionString,minSupportedSpecVersion,minUI5VersionForLocalDev,minUi5VersionV4Template,supportedUi5VersionFallbacks,ui5ThemeIds,ui5Themes,ui5VersionRequestInfo});