@wavemaker/angular-codegen 11.0.1-next.138730 → 11.0.1-next.138731

Sign up to get free protection for your applications and to get access to all the features.
@@ -68,7 +68,7 @@
68
68
  "tslib": "^2.0.0",
69
69
  "x2js": "3.2.6",
70
70
  "zone.js": "~0.10.3",
71
- "@wavemaker/app-ng-runtime": "11.0.1-next.138730"
71
+ "@wavemaker/app-ng-runtime": "11.0.1-next.138731"
72
72
  },
73
73
  "devDependencies": {
74
74
  "@ampproject/rollup-plugin-closure-compiler": "0.8.5",
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@wavemaker/angular-codegen",
3
- "version": "11.0.1-next.138730",
3
+ "version": "11.0.1-next.138731",
4
4
  "description": "",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -1 +1 @@
1
- const codegen=require("./codegen"),{setCodegenPath:setCodegenPath,deleteResource:deleteResource,isMobileProject:isMobileProject}=require("./wm-utils"),{initTemplates:initTemplates}=require("./handlebar-helpers"),{getWmProjectProperties:getWmProjectProperties}=require("./project-meta"),create=async(e,t,a,r)=>{await codegen.createAppSkeleton(e,t,a,r)},generate=async(e,t,a,r)=>{await codegen.generateSources(e,t,a,r)},generateCodegenAngularApp=async(e,t,a,r,n)=>{setCodegenPath(n),initTemplates();const o=await getWmProjectProperties(e),g=isMobileProject(o);g||(await codegen.generateIntermediateApp(e,t),e=`${t}/intermediate_app`),await create(e,t,n,g),await generate(e,t,a,r),g||await deleteResource(e)},generatePage=async(e,t,a,r)=>{setCodegenPath(r),initTemplates(),await codegen.generatePage(e,t,a)};module.exports={create:create,generateCodegenAngularApp:generateCodegenAngularApp,generatePage:generatePage};
1
+ const codegen=require("./codegen"),{setCodegenPath:setCodegenPath,deleteResource:deleteResource,isMobileProject:isMobileProject}=require("./wm-utils"),{initTemplates:initTemplates}=require("./handlebar-helpers"),{getWmProjectProperties:getWmProjectProperties}=require("./project-meta"),create=async(e,t,a)=>{await codegen.createAppSkeleton(e,t,a)},generate=async(e,t,a,r)=>{await codegen.generateSources(e,t,a,r)},generateCodegenAngularApp=async(e,t,a,r,n)=>{setCodegenPath(n),initTemplates();const g=await getWmProjectProperties(e);if(!isMobileProject(g)){let t=e;e&&"/"!=e.charAt(e.length-1)&&(t+="/"),t+="target/ui-build/intermediate-app",await codegen.generateIntermediateApp(e,t),e=t}await create(e,t,n),await generate(e,t,a,r)},generatePage=async(e,t,a,r)=>{setCodegenPath(r),initTemplates(),await codegen.generatePage(e,t,a)};module.exports={create:create,generateCodegenAngularApp:generateCodegenAngularApp,generatePage:generatePage};
@@ -1 +1 @@
1
- global._WM_APP_PROPERTIES={},global._WM_PACKAGE_PATH="./libraries",global.$=require("jquery"),global._=require("lodash");const cheerio=require("cheerio"),{deleteResource:deleteResource,getIndexHtmlPath:getIndexHtmlPath,getPagesDirPath:getPagesDirPath,readFile:readFile,searchFileByName:searchFileByName,writeFile:writeFile,readFileSync:readFileSync}=require("./wm-utils"),{createAppSkeleton:createApp}=require("./gen-app-skeleton"),{generateAppModule:generateAppModule,generateCodeGenModule:generateCodeGenModule}=require("./gen-app-codegen-module"),{generatePrefabConfigFile:generatePrefabConfigFile}=require("./gen-prefabs"),{generateAppRoutes:generateAppRoutes}=require("./gen-app-routes"),{generateAppJS:generateAppJS}=require("./gen-app-js"),{generateAppVariables:generateAppVariables}=require("./gen-app-variables"),{getWmProjectProperties:getWmProjectProperties,getSecurityConfig:getSecurityConfig,getLayoutsConfig:getLayoutsConfig,getPagesConfig:getPagesConfig,getPrefabConfigsUsedInApp:getPrefabConfigsUsedInApp,getPrefabPartialsConfig:getPrefabPartialsConfig}=require("./project-meta"),{generateTSConfig:generateTSConfig}=require("./gen-tsconfig"),{generateComponents:generateComponents,generatePagePartialComponent:generatePagePartialComponent}=require("./gen-components"),{generateWmProjectProperties:generateWmProjectProperties}=require("./gen-wm-project-properties"),{generateIndexHtml:generateIndexHtml}=require("./gen-index-html"),{updateAngularJSON:updateAngularJSON}=require("./update-angular-json"),{generatePwaFiles:generatePwaFiles}=require("./gen-pwa-files"),{generateLazyModuleRoutes:generateLazyModuleRoutes}=require("./gen-lazy-module-routes"),{createIntermediateAppSkeleton:createIntermediateAppSkeleton,generateLayoutsAndPages:generateLayoutsAndPages}=require("./gen-layouts"),getMarkupFiles=async e=>{const a=[];return searchFileByName(e+"/src/app",/\.html$/,e=>{a.push(e)}),a},isDynamicComponentUsedInMarkup=async e=>{const a=await readFile(e,"utf8");return cheerio.load(a)("form[wmForm][metadata],form[wmForm][metadata\\.bind],div[wmTable]:not(:has(*))").length>0},isDynamicComponentUsedInApp=async e=>{const a=await getMarkupFiles(e);return(await Promise.all(a.map(e=>isDynamicComponentUsedInMarkup(e)))).find(e=>e)},cleanPackageJSON=async(e,a)=>{const t=`${e}/package.json`;let r=readFileSync(t,!0);["@ampproject/rollup-plugin-closure-compiler","rollup","rollup-plugin-alias","rollup-plugin-commonjs","rollup-plugin-includepaths","rollup-plugin-multi-entry","rollup-plugin-node-resolve"].forEach(e=>{delete r.devDependencies[e]}),a||delete r.dependencies["@angular/service-worker"],await writeFile(t,JSON.stringify(r,null,4))},generateIntermediateApp=async(e,a)=>{console.time("create-intermediate-app"),await createIntermediateAppSkeleton(e,a),await generateLayoutsAndPages(`${a}/intermediate_app`),console.timeEnd("create-intermediate-app")},generateSources=async(e,a,t,r)=>{console.time("generate app-sources"),await Promise.all([deleteResource(`${a}/src/app/layouts`),deleteResource(`${a}/src/app/pages`),deleteResource(`${a}/src/app/partials`),deleteResource(`${a}/src/app/prefabs`)]);const n=readFileSync(`${a}/angular.json`);global._WM_PACKAGE_PATH=n.includes("./node_modules/@wavemaker/app-ng-runtime/")?"./node_modules/@wavemaker/app-ng-runtime":"./libraries";const o=await getWmProjectProperties(e),i=await getSecurityConfig(e),g=await getLayoutsConfig(e),p=await getPagesConfig(e),s=await getPrefabConfigsUsedInApp(o,e);let l={};for(const a of s.keys())l[a]=await getPrefabPartialsConfig(e,a);t&&!t.endsWith("/")&&(t+="/"),await Promise.all([generateIndexHtml(e,a,o,t,r),generateWmProjectProperties(o,a),generateAppRoutes(e,o,g,p,i,a),generateLazyModuleRoutes(p,s,l,a),generatePrefabConfigFile(s,a),generateCodeGenModule(o,p,s,i,a),generateTSConfig(o,a),generateAppJS(e,a),generateAppVariables(e,a),generateComponents(e,o,g,p,i,s,a,l)]);const u=await isDynamicComponentUsedInApp(a),c={aot:!u,buildOptimizer:!u};await generateAppModule(o,a,u,r),await updateAngularJSON(e,a,o,p,s,t,c,l,r),await cleanPackageJSON(a,r),r&&await generatePwaFiles(e,a,o),console.timeEnd("generate app-sources")},createAppSkeleton=async(e,a,t,r)=>{console.time("create-angular-app"),await createApp(e,a,t,r),console.timeEnd("create-angular-app")},generatePage=async(e,a,t)=>{console.time("generate page",t);const r=getPagesDirPath(e),n=await getWmProjectProperties(e),o=await getPagesConfig(e),i=_.find(o,{name:t}),g="PAGE"===i.type?"pages":"partials";await deleteResource(`${a}/src/app/${g}/${t}`),await generatePagePartialComponent(r,n,i.name,i.type,a),console.timeEnd("generate page",t)};module.exports={generateIntermediateApp:generateIntermediateApp,generateSources:generateSources,createAppSkeleton:createAppSkeleton,generatePage:generatePage};
1
+ global._WM_APP_PROPERTIES={},global._WM_PACKAGE_PATH="./libraries",global.$=require("jquery"),global._=require("lodash");const cheerio=require("cheerio"),{deleteResource:deleteResource,getIndexHtmlPath:getIndexHtmlPath,getPagesDirPath:getPagesDirPath,readFile:readFile,searchFileByName:searchFileByName,writeFile:writeFile,readFileSync:readFileSync}=require("./wm-utils"),{createAppSkeleton:createApp}=require("./gen-app-skeleton"),{generateAppModule:generateAppModule,generateCodeGenModule:generateCodeGenModule}=require("./gen-app-codegen-module"),{generatePrefabConfigFile:generatePrefabConfigFile}=require("./gen-prefabs"),{generateAppRoutes:generateAppRoutes}=require("./gen-app-routes"),{generateAppJS:generateAppJS}=require("./gen-app-js"),{generateAppVariables:generateAppVariables}=require("./gen-app-variables"),{getWmProjectProperties:getWmProjectProperties,getSecurityConfig:getSecurityConfig,getLayoutsConfig:getLayoutsConfig,getPagesConfig:getPagesConfig,getPrefabConfigsUsedInApp:getPrefabConfigsUsedInApp,getPrefabPartialsConfig:getPrefabPartialsConfig}=require("./project-meta"),{generateTSConfig:generateTSConfig}=require("./gen-tsconfig"),{generateComponents:generateComponents,generatePagePartialComponent:generatePagePartialComponent}=require("./gen-components"),{generateWmProjectProperties:generateWmProjectProperties}=require("./gen-wm-project-properties"),{generateIndexHtml:generateIndexHtml}=require("./gen-index-html"),{updateAngularJSON:updateAngularJSON}=require("./update-angular-json"),{generatePwaFiles:generatePwaFiles}=require("./gen-pwa-files"),{generateLazyModuleRoutes:generateLazyModuleRoutes}=require("./gen-lazy-module-routes"),{createIntermediateAppSkeleton:createIntermediateAppSkeleton,generateLayoutsAndPages:generateLayoutsAndPages}=require("./gen-layouts"),getMarkupFiles=async e=>{const a=[];return searchFileByName(e+"/src/app",/\.html$/,e=>{a.push(e)}),a},isDynamicComponentUsedInMarkup=async e=>{const a=await readFile(e,"utf8");return cheerio.load(a)("form[wmForm][metadata],form[wmForm][metadata\\.bind],div[wmTable]:not(:has(*))").length>0},isDynamicComponentUsedInApp=async e=>{const a=await getMarkupFiles(e);return(await Promise.all(a.map(e=>isDynamicComponentUsedInMarkup(e)))).find(e=>e)},cleanPackageJSON=async(e,a)=>{const t=`${e}/package.json`;let r=readFileSync(t,!0);["@ampproject/rollup-plugin-closure-compiler","rollup","rollup-plugin-alias","rollup-plugin-commonjs","rollup-plugin-includepaths","rollup-plugin-multi-entry","rollup-plugin-node-resolve"].forEach(e=>{delete r.devDependencies[e]}),a||delete r.dependencies["@angular/service-worker"],await writeFile(t,JSON.stringify(r,null,4))},generateIntermediateApp=async(e,a)=>{console.time("create-intermediate-app"),await createIntermediateAppSkeleton(e,a),await generateLayoutsAndPages(a),console.timeEnd("create-intermediate-app")},generateSources=async(e,a,t,r)=>{console.time("generate app-sources"),await Promise.all([deleteResource(`${a}/src/app/layouts`),deleteResource(`${a}/src/app/pages`),deleteResource(`${a}/src/app/partials`),deleteResource(`${a}/src/app/prefabs`)]);const n=readFileSync(`${a}/angular.json`);global._WM_PACKAGE_PATH=n.includes("./node_modules/@wavemaker/app-ng-runtime/")?"./node_modules/@wavemaker/app-ng-runtime":"./libraries";const o=await getWmProjectProperties(e),i=await getSecurityConfig(e),g=await getLayoutsConfig(e),p=await getPagesConfig(e),s=await getPrefabConfigsUsedInApp(o,e);let l={};for(const a of s.keys())l[a]=await getPrefabPartialsConfig(e,a);t&&!t.endsWith("/")&&(t+="/"),await Promise.all([generateIndexHtml(e,a,o,t,r),generateWmProjectProperties(o,a),generateAppRoutes(e,o,g,p,i,a),generateLazyModuleRoutes(p,s,l,a),generatePrefabConfigFile(s,a),generateCodeGenModule(o,p,s,i,a),generateTSConfig(o,a),generateAppJS(e,a),generateAppVariables(e,a),generateComponents(e,o,g,p,i,s,a,l)]);const u=await isDynamicComponentUsedInApp(a),c={aot:!u,buildOptimizer:!u};await generateAppModule(o,a,u,r),await updateAngularJSON(e,a,o,p,s,t,c,l,r),await cleanPackageJSON(a,r),r&&await generatePwaFiles(e,a,o),console.timeEnd("generate app-sources")},createAppSkeleton=async(e,a,t)=>{console.time("create-angular-app"),await createApp(e,a,t),console.timeEnd("create-angular-app")},generatePage=async(e,a,t)=>{console.time("generate page",t);const r=getPagesDirPath(e),n=await getWmProjectProperties(e),o=await getPagesConfig(e),i=_.find(o,{name:t}),g="PAGE"===i.type?"pages":"partials";await deleteResource(`${a}/src/app/${g}/${t}`),await generatePagePartialComponent(r,n,i.name,i.type,a),console.timeEnd("generate page",t)};module.exports={generateIntermediateApp:generateIntermediateApp,generateSources:generateSources,createAppSkeleton:createAppSkeleton,generatePage:generatePage};
@@ -1 +1 @@
1
- const{deleteResource:deleteResource,createDir:createDir,readDir:readDir,getWebAppPath:getWebAppPath,isMobileProject:isMobileProject}=require("./wm-utils"),{getWmProjectProperties:getWmProjectProperties}=require("./project-meta"),util=require("util"),ncp=util.promisify(require("ncp").ncp),createAppSkeleton=async(e,t,r,a)=>{a&&(await deleteResource(t),await createDir(t,{recursive:!0})),await ncp(r+"/angular-app",t);const s=getWebAppPath(e);if((await readDir(`${s}/themes`)).length){const e=`${s}/themes/`;await ncp(e,`${t}/src/assets/themes`)}(await readDir(`${s}/extensions`)).length&&await ncp(`${s}/extensions`,`${t}/src/app/extensions`),await ncp(`${s}/app.css`,`${t}/src/assets/app.css`),await ncp(`${s}/resources`,`${t}/resources`)};module.exports={createAppSkeleton:createAppSkeleton};
1
+ const{deleteResource:deleteResource,createDir:createDir,readDir:readDir,getWebAppPath:getWebAppPath}=require("./wm-utils"),util=require("util"),ncp=util.promisify(require("ncp").ncp),createAppSkeleton=async(e,t,a)=>{await deleteResource(t),await createDir(t,{recursive:!0}),await ncp(a+"/angular-app",t);const r=getWebAppPath(e);if((await readDir(`${r}/themes`)).length){const e=`${r}/themes/`;await ncp(e,`${t}/src/assets/themes`)}(await readDir(`${r}/extensions`)).length&&await ncp(`${r}/extensions`,`${t}/src/app/extensions`),await ncp(`${r}/app.css`,`${t}/src/assets/app.css`),await ncp(`${r}/resources`,`${t}/resources`)};module.exports={createAppSkeleton:createAppSkeleton};
@@ -1 +1 @@
1
- const{deleteResource:deleteResource,createDir:createDir,writeFile:writeFile,readFile:readFile,getPagesDirPath:getPagesDirPath,getLayoutsDirPath:getLayoutsDirPath}=require("./wm-utils"),{getPagesConfig:getPagesConfig}=require("./project-meta"),util=require("util"),cheerio=require("cheerio"),{safeString:safeString}=require("./handlebar-helpers"),{formatMarkup:formatMarkup}=require("./wm-utils"),ncp=util.promisify(require("ncp").ncp),createIntermediateAppSkeleton=async(e,t)=>{await deleteResource(t),t=`${t}/intermediate_app`,await createDir(t,{recursive:!0}),await ncp(e,t)},generateLayoutsAndPages=async e=>{const t=getLayoutsDirPath(e);await createDir(t,{recursive:!0});const a=await getPagesConfig(e),r=getPagesDirPath(e),n=[],i=[];for(let e of a)if("PAGE"===e.type){const a=await readFile(`${r}/${e.name}/${e.name}.html`,"utf8"),o=cheerio.load(a),u=o("wm-page"),s=o("wm-page-content"),l=await getLayoutMarkup(o,u,s,n);l.markup&&(n.push({name:l.name,layoutInfo:l.layoutInfo}),i.push({name:l.name,type:"LAYOUT"}),await createDir(`${t}/${l.name}`,{recursive:!0}),await writeFile(`${t}/${l.name}/${l.name}.html`,l.markup)),e.layout=l.name,s.attr("spa","true"),s.attr("columnwidth","12"),s.attr(u.attr()),s.attr("layout",l.name);const g=formatMarkup(safeString(s.toString()).string);await writeFile(`${r}/${e.name}/${e.name}.html`,g)}await writeFile(`${r}/pages-config.json`,JSON.stringify(a)),await writeFile(`${t}/layouts-config.json`,JSON.stringify(i))},getLayoutMarkup=async(e,t,a,r)=>{const n=getLayoutInfo(e);let i=getLayoutName(n,r);if(i)return{name:i};{const o=r.length+1;i=`layout_${o}`,n.leftNav&&e("wm-left-panel").attr("spa","true");const u=e("<wm-router-outlet>");u.attr("columnwidth",a.attr().columnwidth),e("wm-page-content").replaceWith(u);const s=e("<wm-layout>");return s.attr("name",`layout${o}`),s.append(t.children()),{name:i,markup:formatMarkup(safeString(s.toString()).string),layoutInfo:n}}},getLayoutInfo=e=>{const t={header:e("wm-header"),topNav:e("wm-top-nav"),leftNav:e("wm-left-panel"),rightNav:e("wm-right-panel"),footer:e("wm-footer")},a={};for(const e in t)t.hasOwnProperty(e)&&t[e].length&&(a[e]=t[e].attr().content);return a},getLayoutName=(e,t)=>{for(const a of t)if(JSON.stringify(a.layoutInfo)===JSON.stringify(e))return a.name};module.exports={createIntermediateAppSkeleton:createIntermediateAppSkeleton,generateLayoutsAndPages:generateLayoutsAndPages};
1
+ const{deleteResource:deleteResource,createDir:createDir,writeFile:writeFile,readFile:readFile,getPagesDirPath:getPagesDirPath,getLayoutsDirPath:getLayoutsDirPath}=require("./wm-utils"),{getPagesConfig:getPagesConfig}=require("./project-meta"),util=require("util"),cheerio=require("cheerio"),{safeString:safeString}=require("./handlebar-helpers"),{formatMarkup:formatMarkup}=require("./wm-utils"),path=require("path"),ncp=util.promisify(require("ncp").ncp),createIntermediateAppSkeleton=async(e,t)=>{await deleteResource(t),await createDir(t,{recursive:!0}),await ncp(e,t,{filter:t=>!path.relative(e,t).startsWith("target")})},generateLayoutsAndPages=async e=>{const t=getLayoutsDirPath(e);await createDir(t,{recursive:!0});const a=await getPagesConfig(e),r=getPagesDirPath(e),i=[],n=[];for(let e of a)if("PAGE"===e.type){const a=await readFile(`${r}/${e.name}/${e.name}.html`,"utf8"),o=cheerio.load(a),u=o("wm-page"),s=o("wm-page-content"),l=await getLayoutMarkup(o,u,s,i);l.markup&&(i.push({name:l.name,layoutInfo:l.layoutInfo}),n.push({name:l.name,type:"LAYOUT"}),await createDir(`${t}/${l.name}`,{recursive:!0}),await writeFile(`${t}/${l.name}/${l.name}.html`,l.markup)),e.layout=l.name,s.attr("spa","true"),s.attr("columnwidth","12"),s.attr(u.attr()),s.attr("layout",l.name);const g=formatMarkup(safeString(s.toString()).string);await writeFile(`${r}/${e.name}/${e.name}.html`,g)}await writeFile(`${r}/pages-config.json`,JSON.stringify(a)),await writeFile(`${t}/layouts-config.json`,JSON.stringify(n))},getLayoutMarkup=async(e,t,a,r)=>{const i=getLayoutInfo(e);let n=getLayoutName(i,r);if(n)return{name:n};{const o=r.length+1;n=`layout_${o}`,i.leftNav&&e("wm-left-panel").attr("spa","true");const u=e("<wm-router-outlet>");u.attr("columnwidth",a.attr().columnwidth),e("wm-page-content").replaceWith(u);const s=e("<wm-layout>");return s.attr("name",`layout${o}`),s.append(t.children()),{name:n,markup:formatMarkup(safeString(s.toString()).string),layoutInfo:i}}},getLayoutInfo=e=>{const t={header:e("wm-header"),topNav:e("wm-top-nav"),leftNav:e("wm-left-panel"),rightNav:e("wm-right-panel"),footer:e("wm-footer")},a={};for(const e in t)t.hasOwnProperty(e)&&t[e].length&&(a[e]=t[e].attr().content);return a},getLayoutName=(e,t)=>{for(const a of t)if(JSON.stringify(a.layoutInfo)===JSON.stringify(e))return a.name};module.exports={createIntermediateAppSkeleton:createIntermediateAppSkeleton,generateLayoutsAndPages:generateLayoutsAndPages};