UNPKG

@sap/generator-fiori

Version:

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

3 lines (2 loc) 12.1 kB
const __esmImportMetaUrl = require('node:url').pathToFileURL(__filename).href; var z=Object.create;var h=Object.defineProperty;var X=Object.getOwnPropertyDescriptor;var Z=Object.getOwnPropertyNames;var tt=Object.getPrototypeOf,et=Object.prototype.hasOwnProperty;var i=(t,e)=>h(t,"name",{value:e,configurable:!0});var it=(t,e)=>()=>{try{return e||t((e={exports:{}}).exports,e),e.exports}catch(n){throw e=0,n}},nt=(t,e)=>{for(var n in e)h(t,n,{get:e[n],enumerable:!0})},j=(t,e,n,o)=>{if(e&&typeof e=="object"||typeof e=="function")for(let r of Z(e))!et.call(t,r)&&r!==n&&h(t,r,{get:()=>e[r],enumerable:!(o=X(e,r))||o.enumerable});return t};var A=(t,e,n)=>(n=t!=null?z(tt(t)):{},j(e||!t||!t.__esModule?h(n,"default",{value:t,enumerable:!0}):n,t)),ot=t=>j(h({},"__esModule",{value:!0}),t);var w=it((gt,C)=>{function rt(t){return t==null}i(rt,"isNil");C.exports=rt});var ft={};nt(ft,{addi18nResourceBundle:()=>O,default:()=>mt,getAdpFlpConfigPromptOptions:()=>Q,getAdpFlpInboundsWriterConfig:()=>W,getExistingFlpConfigInfoPrompt:()=>x,getPrompts:()=>Y,getTileSettingsQuestions:()=>q,prompt:()=>st,promptNames:()=>a,tileActions:()=>l,tilePromptNames:()=>f});module.exports=ot(ft);var G=A(w(),1);var F=A(require("../../commonlibs/i18next/index.js"),1),S=require("../../open-ux-shared/project-input-validator/index.js");var E={prompts:{inboundIds:"Inbound ID",semanticObject:"Semantic Object",action:"Action",title:"Title",subTitle:"Subtitle",additionalParameters:"Parameters",createAnotherInbound:"Do you want to add or edit another inbound?",icon:"Icon",existingFLPConfig:"This project already has a SAP Fiori launchpad configuration. If you create a new configuration, it will overwrite the existing one.",tileHandlingAction:"Tile Handling Action:",copyFromExisting:"Copy Configurations from an Existing Inbound?",confirmReplace:"Do you want to proceed?"},tooltips:{inboundId:"Choose the inbound ID to be used to set the SAP Fiori launchpad tile configuration.",additionalParameters:"Enter the value for the parameters in JSON format.",semObjectActionDuplication:"When generating a new tile, you must modify the 'Semantic Object' value, the 'Action' value, or both. You can use the default suggestions, which include a '_New' suffix for each value or use your own designations."},validators:{inboundConfigKeyExists:"An inbound configuration with the key: {{inboundKey}} is already defined. Choose another key.",flpConfigOverwrite:"Overwrite existing configuration?",noInboundKeysAreFound:"The original application target mapping and the default parameters are found in the SAP Fiori reference library under Implementation Information -> Configuration -> Target Mappings.",invalidParameterString:"The parameter string is not valid JSON.",duplicateInbound:"The base application has an existing inbound that matches the values for Semantic Object and Action. To create a new tile you must modify the Semantic Object value, the Action value, or both."},choices:{replaceOriginalTile:"Replace Tiles",addNewTile:"Add Tile"},additionalMessages:{confirmReplaceAdditionalMessage:'Confirming creates a copy of the existing tiles. To replace original tiles, create a new IAM app with the "UI Adaptation" type and add it to a custom business catalog. In the business role, add your custom catalog and deactivate the original IAM app.',confirmReplaceAdditionalMessageCF:"Confirming creates a copy of the existing tiles."}};var R="flp-config-inquirer",I=F.default.createInstance();function O(){I.addResourceBundle("en",R,E)}i(O,"addi18nResourceBundle");async function P(){await I.init({lng:"en",fallbackLng:"en",showSupportNotice:!1}),O(),(0,S.addi18nResourceBundle)()}i(P,"initI18n");function c(t,e){return e?.ns||(e=Object.assign(e??{},{ns:R})),I.t(t,e)}i(c,"t");P().catch(()=>{});var a;(function(t){t.existingFlpConfigInfo="existingFlpConfigInfo",t.inboundId="inboundId",t.semanticObject="semanticObject",t.action="action",t.overwrite="overwrite",t.title="title",t.subTitle="subTitle",t.icon="icon",t.additionalParameters="additionalParameters",t.confirmReplace="confirmReplace"})(a||(a={}));var f;(function(t){t.tileHandlingAction="tileHandlingAction",t.copyFromExisting="copyFromExisting"})(f||(f={}));var l={REPLACE:"replace",ADD:"add"};var D=require("../../commonlibs/yeoman-ui-types/index.js"),y=require("../../open-ux-shared/project-input-validator/index.js");function M(t,e){let n={mandatory:!0,breadcrumb:!0};return e?.showTooltip&&(n.hint=c("tooltips.semObjectActionDuplication")),{name:a.semanticObject,type:"input",guiOptions:n,message:c("prompts.semanticObject"),default:i(o=>e?.default?e.default:o?.inboundId?.semanticObject?`${o?.inboundId?.semanticObject}_New`:"","default"),filter:i(o=>o?.trim(),"filter"),validate:i(o=>(0,y.validateText)(o,t,30,["_"]),"validate")}}i(M,"getSemanticObjectPrompt");function $(t,e,n){let o={mandatory:!0,breadcrumb:!0};return e?.showTooltip&&(o.hint=c("tooltips.semObjectActionDuplication")),{name:a.action,type:"input",guiOptions:o,message:c("prompts.action"),default:i(r=>e?.default?e.default:r?.inboundId?.action?`${r?.inboundId?.action}_New`:"","default"),filter:i(r=>r?.trim(),"filter"),validate:i((r,u)=>{let s=(0,y.validateText)(r,t,60,["_"]);return s!==!0?s:!n||!u.semanticObject||!e?.executeDuplicateValidation?!0:Object.values(n).some(g=>g.semanticObject===u.semanticObject&&g.action===r)?c("validators.duplicateInbound"):!0},"validate")}}i($,"getActionPrompt");function N(t,e,n,o){return{type:"confirm",name:a.overwrite,message:i(r=>`${e?c("validators.inboundConfigKeyExists",{inboundKey:`${r.semanticObject}-${r.action}`}):""} ${c("validators.flpConfigOverwrite")}`,"message"),guiOptions:{applyDefaultWhenDirty:!0},default:o?.default??(()=>!n.value),when:i(r=>(n.value=t.indexOf(`${r.semanticObject}-${r.action}`)>-1,n.value),"when"),additionalMessages:i((r,u)=>({message:c("validators.inboundConfigKeyExists",{inboundKey:`${u.semanticObject}-${u.action}`}),severity:D.Severity.warning}),"additionalMessages")}}i(N,"getOverwritePrompt");function _(t,e,n,o){return{when:i(({overwrite:r})=>r!==!1||!t.value||e,"when"),name:a.title,type:"input",guiOptions:{mandatory:!0,breadcrumb:!0},message:c("prompts.title"),default:i(r=>o?.default?o.default:r?.inboundId?.title??"","default"),filter:i(r=>r?.trim(),"filter"),validate:i(r=>(0,y.validateText)(r,n,0),"validate")}}i(_,"getTitlePrompt");function L(t,e,n){return{when:i(({overwrite:o})=>o!==!1||!t.value||e,"when"),name:a.subTitle,type:"input",guiOptions:{breadcrumb:c("prompts.subTitle")},message:c("prompts.subTitle"),default:i(o=>n?.default?n.default:o?.inboundId?.subTitle??"","default"),filter:i(o=>o?.trim(),"filter")}}i(L,"getSubTitlePrompt");var v=require("../../open-ux-shared/project-input-validator/index.js"),H=require("../../commonlibs/yeoman-ui-types/index.js");function K(t){let e=Object.entries(t).map(([n,o])=>({name:n,value:o}));return{type:"list",name:a.inboundId,message:c("prompts.inboundIds"),choices:e,default:i(()=>e[0]?.value,"default"),validate:i(n=>(0,v.validateEmptyString)(n.semanticObject)&&(0,v.validateEmptyString)(n.action),"validate"),when:e?.length>0,guiOptions:{hint:c("tooltips.inboundId"),breadcrumb:c("prompts.inboundIds"),mandatory:!0}}}i(K,"getInboundIdsPrompt");function B(){return{type:"editor",name:a.additionalParameters,message:c("prompts.additionalParameters"),default:i(t=>{let e=t?.inboundId?.signature?.parameters;return e?JSON.stringify(e,null,2):""},"default"),validate:i(t=>{if(!t)return!0;try{return JSON.parse(t),!0}catch{return c("validators.invalidParameterString")}},"validate"),guiOptions:{hint:c("tooltips.additionalParameters"),mandatory:!1}}}i(B,"getParameterStringPrompt");function x(t){return{type:"input",name:a.existingFlpConfigInfo,message:c("prompts.existingFLPConfig"),when:i(()=>!t,"when"),guiOptions:{type:"label",mandatory:!1}}}i(x,"getExistingFlpConfigInfoPrompt");function V(t){return{name:a.icon,type:"input",guiOptions:{breadcrumb:!0},message:c("prompts.icon"),default:i(e=>t?.default?t.default:e?.inboundId?.icon??"","default"),filter:i(e=>e?.trim(),"filter")}}i(V,"getIconPrompt");function k(t){return{type:"confirm",name:a.confirmReplace,message:c("prompts.confirmReplace"),default:!1,validate:i(e=>e?!0:" ","validate"),additionalMessages:i(()=>({severity:H.Severity.information,message:t?.isCF?c("additionalMessages.confirmReplaceAdditionalMessageCF"):c("additionalMessages.confirmReplaceAdditionalMessage")}),"additionalMessages")}}i(k,"getConfirmReplacePrompt");function J(){return[{type:"list",name:f.tileHandlingAction,message:c("prompts.tileHandlingAction"),choices:[{name:c("choices.addNewTile"),value:l.ADD},{name:c("choices.replaceOriginalTile"),value:l.REPLACE}],store:!1,guiOptions:{mandatory:!0,breadcrumb:!0}},{type:"confirm",name:f.copyFromExisting,message:c("prompts.copyFromExisting"),default:!1,guiOptions:{mandatory:!0,breadcrumb:!0},when:i(t=>t.tileHandlingAction===l.ADD,"when")}]}i(J,"getTileSettingsPrompts");var p=require("../../fiori-generator-shared/dist/index.js");function U(t,e){let n=Object.keys(t??{}),o=(0,p.getHostEnvironment)()===p.hostEnvironment.cli,r={value:!1},u=e?.silentOverwrite??!1,s={[a.existingFlpConfigInfo]:x(o),[a.inboundId]:K(t??{}),[a.semanticObject]:M(o,e?.[a.semanticObject]),[a.action]:$(o,e?.[a.action],t),[a.overwrite]:N(n,o,r,e?.[a.overwrite]),[a.title]:_(r,u,o,e?.[a.title]),[a.subTitle]:L(r,u,e?.[a.subTitle]),[a.icon]:V(e?.[a.icon]),[a.additionalParameters]:B(),[a.confirmReplace]:k(e?.[a.confirmReplace])};return Object.entries(s).filter(([g])=>{let b=e?.[g];return b&&"hide"in b?!b.hide:!0}).map(([g,b])=>b)}i(U,"getQuestions");function q(t){let e=(0,p.getHostEnvironment)()===p.hostEnvironment.cli,n=J();return t?.existingFlpConfigInfo?.hide||n.unshift(x(e)),n}i(q,"getTileSettingsQuestions");var m=require("../../open-ux-shared/adp-tooling/index.js");function Q(t,e,n,o){let{tileHandlingAction:r,copyFromExisting:u}=t??{};return!e||r===l.ADD&&u===!1?{existingFlpConfigInfo:{hide:n?!(!e&&(0,m.flpConfigurationExists)(n)):!0},action:{executeDuplicateValidation:!0},inboundId:{hide:!0},overwrite:{hide:!0},confirmReplace:{hide:!0}}:r===l.REPLACE?{existingFlpConfigInfo:{hide:!0},overwrite:{hide:!0},semanticObject:{hide:!0},action:{hide:!0,showTooltip:!0},additionalParameters:{hide:!0},inboundId:{hide:!0},title:{hide:!0},subTitle:{hide:!0},icon:{hide:!0},confirmReplace:{isCF:o}}:{existingFlpConfigInfo:{hide:!0},semanticObject:{showTooltip:!0},action:{executeDuplicateValidation:!0,showTooltip:!0},overwrite:{hide:!0},confirmReplace:{hide:!0}}}i(Q,"getAdpFlpConfigPromptOptions");function ct(t,e){return e?Object.entries(e).map(([n,o])=>{let{semanticObject:r,action:u}=o,s=o.signature?.parameters,d=n;return d&&t===m.FlexLayer.CUSTOMER_BASE&&(d=`${m.NamespacePrefix.CUSTOMER}${d}`),{inboundId:d,semanticObject:r??"",action:u??"",title:o.title??"",subTitle:o.subTitle??"",icon:o.icon??"",additionalParameters:s?JSON.stringify(s):""}}):[]}i(ct,"buildReplaceInboundConfig");function ut(t,e){let n=!t.semanticObject||!t.action?"":`${t.semanticObject}-${t.action}`;return n&&(n=e===m.FlexLayer.CUSTOMER_BASE?`${m.NamespacePrefix.CUSTOMER}${n}`:n),[{inboundId:n,semanticObject:t.semanticObject??"",action:t.action??"",title:t.title??"",subTitle:t.subTitle??"",icon:t.icon??"",additionalParameters:t.additionalParameters??""}]}i(ut,"buildAddInboundConfig");function W(t,e,n,o){let{tileHandlingAction:r}=n??{};return r===l.REPLACE?ct(e,o):ut(t,e)}i(W,"getAdpFlpInboundsWriterConfig");async function Y(t,e){return await P(),U(t,e)}i(Y,"getPrompts");async function st(t,e,n){let o=await Y(e,n),r=await t.prompt(o);if(n){let u=lt(r,n);Object.assign(r,u)}return r}i(st,"prompt");function lt(t,e){let n={};return Object.entries(e).forEach(([o,r])=>{let u=o,s=r.default;if((0,G.default)(t[u])&&s!==void 0){let d=dt(t,s);Object.assign(n,{[u]:d})}}),n}i(lt,"applyPromptOptionDefaults");function dt(t,e){return typeof e=="function"?e(t):e}i(dt,"getDefaultValue");var mt=void 0;0&&(module.exports={addi18nResourceBundle,getAdpFlpConfigPromptOptions,getAdpFlpInboundsWriterConfig,getExistingFlpConfigInfoPrompt,getPrompts,getTileSettingsQuestions,prompt,promptNames,tileActions,tilePromptNames});