UNPKG

@sap/generator-fiori

Version:

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

1 lines 8 kB
"use strict";exports.id=949,exports.ids=[949],exports.modules={8732:function(e,i,a){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(i,"__esModule",{value:!0}),i.escapeFLPText=void 0,i.setVirtualEndpointDefaults=function setVirtualEndpointDefaults(e){e.app.flpAppId="app-preview",e.app.localStartFile=r,e.app.startFile=r},i.setDefaults=function setDefaults(e){if(function setAppDefaults(e){e.baseComponent=e.baseComponent||"sap/ui/core/UIComponent",e.flpAppId=e.flpAppId||`${e.id.replace(/[-_.]/g,"")}-tile`}(e.app),!e.app.sourceTemplate?.version||!e.app.sourceTemplate?.id){const i=n.default.sync({cwd:__dirname});e.app.sourceTemplate={id:`${i?.packageJson.name}:${e.template.type}`,version:i?.packageJson.version,toolsId:e.app.sourceTemplate?.toolsId}}e.template.type===p.TemplateType.Basic&&function setBasicTemplateDefaults(e){e.viewName=e.viewName||"View1"}(e.template.settings);let i=!0;(0,o.compareUI5VersionGte)(e.ui5?.minUI5Version??e.ui5?.version??"",o.ui5LtsVersion_1_120)&&e.template.type===p.TemplateType.Basic&&(i=!1);if(e.appOptions=Object.assign({loadReuseLibs:i},e.appOptions),e.ui5){const i="sap.ushell";e.ui5.manifestLibs=e.ui5?.manifestLibs??e.ui5?.ui5Libs,Array.isArray(e.ui5?.ui5Libs)?e.ui5.ui5Libs=e.ui5?.ui5Libs?.concat(i):"string"==typeof e.ui5?.ui5Libs&&(e.ui5.ui5Libs=e.ui5?.ui5Libs.includes(i)?e.ui5?.ui5Libs:e.ui5?.ui5Libs.concat(i))}};const n=s(a(63422)),p=a(99389),o=a(72353),r="test/flp.html";i.escapeFLPText=e=>e.replace(/\\/g,"\\\\").replace(/(")/g,"\\$&")},20373:(e,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.generateOPATests=async function generateOPATests(e,i,a,o,r,l){if(i.template.type===n.TemplateType.Basic){!function addTestScripts(e,i){const a=i?"--config ./ui5-mock.yaml ":"";e.scripts={...e.scripts,"unit-test":`fiori run ${a}--open 'test/unit/unitTests.qunit.html'`,"int-test":`fiori run ${a}--open 'test/integration/opaTests.qunit.html'`}}(o,a);const n={appId:i.app.id,applicationDescription:i.app.description,applicationTitle:i.app.title,viewName:i.template.settings.viewName,ui5Theme:i.ui5?.ui5Theme,ui5Version:i.ui5?.version,enableTypeScript:i.appOptions?.typescript};await(0,s.generateFreestyleOPAFiles)(e,n,r,l)}else l?.info((0,p.t)("info.unsupportedTestTemplateMessage",{templateType:i.template.type}))};const s=a(53069),n=a(99389),p=a(53498)},53498:function(e,i,a){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(i,"__esModule",{value:!0}),i.initI18n=initI18n,i.t=function t(e,i){return n.default.t(e,i)};const n=s(a(61564)),p=s(a(23821)),o="fiori-freestyle-writer";async function initI18n(){await n.default.init({resources:{en:{[o]:p.default}},lng:"en",fallbackLng:"en",defaultNS:o,ns:[o]})}initI18n().catch((()=>{}))},20280:function(e,i,a){var s=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(i,"__esModule",{value:!0}),i.OdataVersion=i.TemplateType=void 0,i.generate=async function generate(e,i,a,s){await(0,m.initI18n)();const v=(0,l.default)(i);(0,u.setDefaults)(v);const _=v.appOptions?.typescript;a=await(0,o.generate)(e,v,a);const b=(0,n.join)(__dirname,"..","templates"),O=[_?"**/*.js":"**/*.ts",...v.appOptions?.useVirtualPreviewEndpoints?["**/webapp/test/flpSandbox.html"]:[]],P="EDMXBackend"===v.app.projectType,{uShellBootstrapResourceUrl:w,uiBootstrapResourceUrl:h}=(0,f.getBootstrapResourceUrls)(P,v.ui5?.frameworkUrl,v.ui5?.version),V={...v,uShellBootstrapResourceUrl:w,uiBootstrapResourceUrl:h},j=(0,y.getTemplateVersionPath)(v);if(a.copyTpl((0,n.join)(b,"common","add",j),e,{...V,escapeFLPText:u.escapeFLPText},void 0,{globOptions:{ignore:O,dot:!0},processDestinationPath:y.processDestinationPath}),a.copyTpl((0,n.join)(b,v.template.type,"add",v.template.type===c.TemplateType.Basic?j:""),e,v,void 0,{globOptions:{ignore:O,dot:!0},processDestinationPath:y.processDestinationPath}),v.template.type===c.TemplateType.Basic){const i=v.template.settings.viewName,s=(0,n.join)(e,"webapp","view",`${i}.view.xml`);a.copyTpl((0,n.join)(b,v.template.type,`custom/${j}/View.xml`),s,v,void 0,{processDestinationPath:y.processDestinationPath});const p=_?"ts":"js",o=(0,n.join)(e,`webapp/controller/${i}.controller.${p}`);a.copyTpl((0,n.join)(b,v.template.type,`custom/${j}/Controller.${p}`),o,v,void 0,{processDestinationPath:y.processDestinationPath})}const I=(0,n.join)(e,"webapp","manifest.json"),L=(0,n.join)(__dirname,"..","templates",v.template.type,"extend",v.template.type===c.TemplateType.Basic?j:"","webapp");a.extendJSON(I,JSON.parse((0,p.render)(a.read((0,n.join)(L,"manifest.json")),v,{}))),a.append((0,n.join)(e,"webapp","i18n","i18n.properties"),(0,p.render)(a.read((0,n.join)(L,"i18n","i18n.properties")),v,{}));const D=(0,n.join)(e,"package.json");a.extendJSON(D,JSON.parse((0,p.render)(a.read((0,n.join)(b,"common","extend","package.json")),v,{})));const x=v.appOptions?.addTests,S=JSON.parse(a.read(D));v.appOptions?.useVirtualPreviewEndpoints&&(0,u.setVirtualEndpointDefaults)(v);if(P){const i=!!v.service?.metadata;S.scripts={...S.scripts,...(0,f.getPackageScripts)({localOnly:!!v.service&&!v.service?.url,addMock:i,sapClient:v.service?.client,flpAppId:v.app.flpAppId,startFile:v.app?.startFile,localStartFile:v.app?.localStartFile,generateIndex:v.appOptions?.generateIndex,addTest:x&&v.template.type===c.TemplateType.Basic,supportVirtualEndpoints:v.appOptions?.useVirtualPreviewEndpoints})},x&&await(0,g.generateOPATests)(e,v,i,S,a,s)}else S.scripts={"deploy-config":"npx -p @sap/ux-ui5-tooling fiori add deploy-config cf"};if(a.writeJSON(D,S),v.service)await(0,r.generate)(e,v.service,a);else{const i=(0,n.join)(e,"ui5-local.yaml"),s=await d.UI5Config.newInstance(a.read(i));s.addFioriToolsProxydMiddleware({}),a.write(i,s.toString())}if(v.service?.capService){const i=!!v?.appOptions?.typescript||!!v?.service.capService?.cdsUi5PluginInfo?.isCdsUi5PluginEnabled,s={appRoot:e,packageName:v.package.name??"",appId:v.app.id,sapux:v.appOptions?.sapux,enableTypescript:v.appOptions?.typescript,enableCdsUi5Plugin:i,enableNPMWorkspaces:i};await(0,T.applyCAPUpdates)(a,v.service.capService,s)}return a};const n=a(16928),p=a(29473),o=a(57727),r=a(10894),l=s(a(27381)),c=a(99389),u=a(8732),d=a(8231),m=a(53498),f=a(58012),y=a(72353),T=a(64872),g=a(20373);var v=a(99389);Object.defineProperty(i,"TemplateType",{enumerable:!0,get:function(){return v.TemplateType}}),Object.defineProperty(i,"OdataVersion",{enumerable:!0,get:function(){return v.OdataVersion}})},99389:(e,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.OdataVersion=i.TemplateType=void 0,i.TemplateType={Basic:"basic",Worklist:"worklist",ListDetail:"listdetail"};var s=a(10894);Object.defineProperty(i,"OdataVersion",{enumerable:!0,get:function(){return s.OdataVersion}})},72353:(e,i,a)=>{Object.defineProperty(i,"__esModule",{value:!0}),i.ui5LtsVersion_1_120=i.ui5LtsVersion_1_71=void 0,i.compareUI5VersionGte=compareUI5VersionGte,i.getTemplateVersionPath=function getTemplateVersionPath(e){let a="";const s=e.ui5?.minUI5Version??e.ui5?.version??"";e.template.type===n.TemplateType.Basic&&(a=compareUI5VersionGte(s,i.ui5LtsVersion_1_120)?i.ui5LtsVersion_1_120:i.ui5LtsVersion_1_71);return a},i.processDestinationPath=function processDestinationPath(e){return e.replace(`${s.sep}1.120.0`,"").replace(`${s.sep}1.71.0`,"")};const s=a(16928),n=a(99389),p=a(85263);function compareUI5VersionGte(e,i){return""===e||(0,p.gte)(e,i,{loose:!0})}i.ui5LtsVersion_1_71="1.71.0",i.ui5LtsVersion_1_120="1.120.0"},23821:e=>{e.exports=JSON.parse('{"info":{"mockOnlyWarning":"This application was generated with a local metadata file and does not reference a live server. Please add the required server configuration or start this application with mock data using the target: npm run start-mock","unsupportedTestTemplateMessage":"The specified template \'{{ templateType }}\' is not supported for test generation. Generation will continue but the test files will not be generated."}}')}};