@wavemaker/angular-codegen 11.0.1-next.138730 → 11.0.1-next.138731
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.
|
@@ -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.
|
|
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",
|
angular-codegen/package.json
CHANGED
|
@@ -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
|
|
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};
|
angular-codegen/src/codegen.js
CHANGED
|
@@ -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(
|
|
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
|
|
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),
|
|
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};
|