@keycloakify/angular-email 0.0.5 → 0.0.8
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.
- package/README.md +17 -1
- package/bin/build.mjs +1 -154
- package/fesm2022/keycloakify-angular-email.mjs +54 -54
- package/package.json +15 -14
package/README.md
CHANGED
|
@@ -57,6 +57,22 @@ NB: use `keycloakify-angular-email build` when you don't need to pass dynamic in
|
|
|
57
57
|
|
|
58
58
|
### With Keycloakify Emails
|
|
59
59
|
|
|
60
|
+
```json
|
|
61
|
+
// emails/tsconfig.json
|
|
62
|
+
|
|
63
|
+
{
|
|
64
|
+
"extends": "../tsconfig.json",
|
|
65
|
+
"compileOnSave": false,
|
|
66
|
+
"compilerOptions": {
|
|
67
|
+
"outDir": "../out-tsc/emails",
|
|
68
|
+
"types": []
|
|
69
|
+
},
|
|
70
|
+
"files": [],
|
|
71
|
+
"include": ["*.ts", "**/*.ts"]
|
|
72
|
+
}
|
|
73
|
+
|
|
74
|
+
```
|
|
75
|
+
|
|
60
76
|
```ts
|
|
61
77
|
// email.component.ts
|
|
62
78
|
...
|
|
@@ -112,7 +128,7 @@ export default defineConfig(({ mode }) => ({
|
|
|
112
128
|
external: ['juice', 'postcss', 'tailwindcss-v3'],
|
|
113
129
|
format: 'esm',
|
|
114
130
|
outExtension: { '.js': '.mjs' },
|
|
115
|
-
plugins: [angularEsbuildPlugin(import.meta.dirname)],
|
|
131
|
+
plugins: [angularEsbuildPlugin(join(import.meta.dirname, '/emails'))],
|
|
116
132
|
},
|
|
117
133
|
});
|
|
118
134
|
},
|
package/bin/build.mjs
CHANGED
|
@@ -1,155 +1,2 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
import {
|
|
3
|
-
import esbuild from 'esbuild';
|
|
4
|
-
import { readdir, rm, writeFile } from 'node:fs/promises';
|
|
5
|
-
import { basename, join, resolve } from 'node:path';
|
|
6
|
-
import { cwd, exit } from 'node:process';
|
|
7
|
-
import { pathToFileURL } from 'node:url';
|
|
8
|
-
import { termost } from 'termost';
|
|
9
|
-
import pkg from '../package.json' with { type: 'json' };
|
|
10
|
-
async function bundle(entryPoints, cwd, outdir) {
|
|
11
|
-
// we have to use a bundler to preprocess templates code
|
|
12
|
-
// It's better to not use the same bundling configuration used for the
|
|
13
|
-
// frontend theme, because for email templates there might be a different
|
|
14
|
-
// transpiling settings, such as other jsx-pragma or additional transpilation plugins,
|
|
15
|
-
const result = await esbuild.build({
|
|
16
|
-
entryPoints: entryPoints,
|
|
17
|
-
bundle: true,
|
|
18
|
-
splitting: true,
|
|
19
|
-
outdir,
|
|
20
|
-
absWorkingDir: cwd,
|
|
21
|
-
platform: 'node',
|
|
22
|
-
sourcemap: true,
|
|
23
|
-
packages: 'bundle',
|
|
24
|
-
external: ['juice', 'postcss', 'tailwindcss-v3'],
|
|
25
|
-
format: 'esm',
|
|
26
|
-
outExtension: { '.js': '.mjs' },
|
|
27
|
-
target: 'node20',
|
|
28
|
-
plugins: [angularEsbuildPlugin(cwd)],
|
|
29
|
-
metafile: true,
|
|
30
|
-
});
|
|
31
|
-
// collect map of entrypoints -> output files
|
|
32
|
-
// esbuild return paths relative to the CWD
|
|
33
|
-
// https://github.com/evanw/esbuild/issues/338
|
|
34
|
-
return Object.entries(result.metafile.outputs).reduce((acc, [filePath, meta]) => {
|
|
35
|
-
if (meta.entryPoint) {
|
|
36
|
-
// Absolute pathes doesn't work on windows.
|
|
37
|
-
// Have to use `pathToFileURL` to convert it to url
|
|
38
|
-
acc[resolve(cwd, meta.entryPoint)] = pathToFileURL(resolve(cwd, filePath)).toString();
|
|
39
|
-
}
|
|
40
|
-
return acc;
|
|
41
|
-
}, {});
|
|
42
|
-
}
|
|
43
|
-
async function getTemplates(dirPath, filterTemplate) {
|
|
44
|
-
try {
|
|
45
|
-
const recursiveGetFiles = async (path) => {
|
|
46
|
-
const items = await readdir(path, { withFileTypes: true });
|
|
47
|
-
const dirents = [];
|
|
48
|
-
for (const item of items) {
|
|
49
|
-
if (item.isFile())
|
|
50
|
-
dirents.push(item);
|
|
51
|
-
else if (item.isDirectory()) {
|
|
52
|
-
dirents.push(...(await recursiveGetFiles(join(item.parentPath, item.name))));
|
|
53
|
-
}
|
|
54
|
-
}
|
|
55
|
-
return dirents;
|
|
56
|
-
};
|
|
57
|
-
// Read all items in the directory
|
|
58
|
-
const items = (await recursiveGetFiles(dirPath))
|
|
59
|
-
.map((file) => join(file.parentPath, file.name))
|
|
60
|
-
.filter((filePath) => {
|
|
61
|
-
if (!filterTemplate)
|
|
62
|
-
return true;
|
|
63
|
-
return filterTemplate(filePath);
|
|
64
|
-
});
|
|
65
|
-
return items;
|
|
66
|
-
}
|
|
67
|
-
catch (err) {
|
|
68
|
-
console.error(`Error scanning directory: ${err.message}`);
|
|
69
|
-
throw err;
|
|
70
|
-
}
|
|
71
|
-
}
|
|
72
|
-
const build = async (emailFilesPath, outdir = 'dist/emails') => {
|
|
73
|
-
if (!emailFilesPath) {
|
|
74
|
-
console.error('emailFilesPath is required!');
|
|
75
|
-
exit(1);
|
|
76
|
-
}
|
|
77
|
-
try {
|
|
78
|
-
console.log(`building emails to ${outdir}...`);
|
|
79
|
-
const tmp = join(cwd(), outdir, '.tmp');
|
|
80
|
-
await rm(outdir, { recursive: true, force: true });
|
|
81
|
-
const tpls = await getTemplates(resolve(cwd(), emailFilesPath), (path) => path.endsWith('.ts'));
|
|
82
|
-
if (!tpls.length) {
|
|
83
|
-
console.error('no templates found!');
|
|
84
|
-
exit(1);
|
|
85
|
-
}
|
|
86
|
-
const entryPoints = [...tpls];
|
|
87
|
-
const bundled = await bundle(entryPoints, cwd(), tmp);
|
|
88
|
-
const promises = tpls.map(async (file) => {
|
|
89
|
-
const module = await import(bundled[file]);
|
|
90
|
-
console.log(`- ${file}`);
|
|
91
|
-
return Object.assign(Object.assign({}, module), { file });
|
|
92
|
-
});
|
|
93
|
-
const modules = await Promise.all(promises);
|
|
94
|
-
for (const module of modules) {
|
|
95
|
-
const html = await module.renderToHtml();
|
|
96
|
-
await writeFile(`${outdir}/${basename(module.file).split('.')[0]}.html`, html);
|
|
97
|
-
}
|
|
98
|
-
await rm(tmp, { recursive: true, force: true });
|
|
99
|
-
console.log('\x1b[36m%s\x1b[0m', `build complete!`);
|
|
100
|
-
exit(0);
|
|
101
|
-
}
|
|
102
|
-
catch (error) {
|
|
103
|
-
console.error(error);
|
|
104
|
-
exit(1);
|
|
105
|
-
}
|
|
106
|
-
};
|
|
107
|
-
const program = termost({
|
|
108
|
-
name: 'keycloakify-angular-email',
|
|
109
|
-
description: 'Keycloakify CLI',
|
|
110
|
-
version: pkg.version,
|
|
111
|
-
onException: (error) => {
|
|
112
|
-
console.error(error);
|
|
113
|
-
exit(1);
|
|
114
|
-
},
|
|
115
|
-
});
|
|
116
|
-
program.option({
|
|
117
|
-
key: 'emailFilesPath',
|
|
118
|
-
name: { long: 'emailFilesPath', short: 'p' },
|
|
119
|
-
description: '',
|
|
120
|
-
defaultValue: '',
|
|
121
|
-
});
|
|
122
|
-
program.option({
|
|
123
|
-
key: 'outDir',
|
|
124
|
-
name: { long: 'outDir', short: 'o' },
|
|
125
|
-
description: '',
|
|
126
|
-
defaultValue: 'dist/emails',
|
|
127
|
-
});
|
|
128
|
-
program
|
|
129
|
-
.command({
|
|
130
|
-
name: 'build',
|
|
131
|
-
description: 'build angular components to html',
|
|
132
|
-
})
|
|
133
|
-
.input({
|
|
134
|
-
key: 'emailFilesPath',
|
|
135
|
-
type: 'text',
|
|
136
|
-
defaultValue: undefined,
|
|
137
|
-
label: "what's the path of your email components files?",
|
|
138
|
-
skip(context) {
|
|
139
|
-
return Boolean(context.emailFilesPath);
|
|
140
|
-
},
|
|
141
|
-
})
|
|
142
|
-
.input({
|
|
143
|
-
key: 'outDir',
|
|
144
|
-
type: 'text',
|
|
145
|
-
defaultValue: 'dist/emails',
|
|
146
|
-
label: 'where do you want to output html files?',
|
|
147
|
-
skip(context) {
|
|
148
|
-
return Boolean(context.outDir);
|
|
149
|
-
},
|
|
150
|
-
})
|
|
151
|
-
.task({
|
|
152
|
-
handler: async (context) => {
|
|
153
|
-
await build(context.emailFilesPath, context.outDir);
|
|
154
|
-
},
|
|
155
|
-
});
|
|
2
|
+
import{angularEsbuildPlugin as h}from"@keycloakify/angular-email/esbuild";import y from"esbuild";import{readdir as b,rm as g,writeFile as w}from"node:fs/promises";import{basename as P,join as c,resolve as p}from"node:path";import{cwd as d,exit as m}from"node:process";import{pathToFileURL as k}from"node:url";import{termost as D}from"termost";import F from"../package.json"with{type:"json"};async function v(t,e,r){const a=await y.build({entryPoints:t,bundle:!0,splitting:!0,outdir:r,absWorkingDir:e,platform:"node",sourcemap:!0,packages:"bundle",external:["juice","postcss","tailwindcss-v3"],format:"esm",outExtension:{".js":".mjs"},target:"node20",plugins:[h(e)],metafile:!0});return Object.entries(a.metafile.outputs).reduce((i,[l,o])=>(o.entryPoint&&(i[p(e,o.entryPoint)]=k(p(e,l)).toString()),i),{})}async function x(t,e){try{const r=async i=>{const l=await b(i,{withFileTypes:!0}),o=[];for(const s of l)s.isFile()?o.push(s):s.isDirectory()&&o.push(...await r(c(s.parentPath,s.name)));return o};return(await r(t)).map(i=>c(i.parentPath,i.name)).filter(i=>e?e(i):!0)}catch(r){throw console.error(`Error scanning directory: ${r.message}`),r}}const j=async(t,e="dist/emails")=>{t||(console.error("emailFilesPath is required!"),m(1));try{console.log(`building emails to ${e}...`);const r=c(d(),e,".tmp");await g(e,{recursive:!0,force:!0});const a=await x(p(d(),t),n=>n.endsWith(".ts"));a.length||(console.error("no templates found!"),m(1));const i=[...a],l=await v(i,d(),r),o=a.map(async n=>{const u=await import(l[n]);return console.log(`- ${n}`),{...u,file:n}}),s=await Promise.all(o);for(const n of s){const u=await n.renderToHtml();await w(`${e}/${P(n.file).split(".")[0]}.html`,u)}await g(r,{recursive:!0,force:!0}),console.log("\x1B[36m%s\x1B[0m","build complete!"),m(0)}catch(r){console.error(r),m(1)}},f=D({name:"keycloakify-angular-email",description:"Keycloakify CLI",version:F.version,onException:t=>{console.error(t),m(1)}});f.option({key:"emailFilesPath",name:{long:"emailFilesPath",short:"p"},description:"",defaultValue:""}),f.option({key:"outDir",name:{long:"outDir",short:"o"},description:"",defaultValue:"dist/emails"}),f.command({name:"build",description:"build angular components to html"}).input({key:"emailFilesPath",type:"text",defaultValue:void 0,label:"what's the path of your email components files?",skip(t){return!!t.emailFilesPath}}).input({key:"outDir",type:"text",defaultValue:"dist/emails",label:"where do you want to output html files?",skip(t){return!!t.outDir}}).task({handler:async t=>{await j(t.emailFilesPath,t.outDir)}});
|
|
@@ -19,10 +19,10 @@ class BackgroundComponent {
|
|
|
19
19
|
$bgRepeat = input('no-repeat', ...(ngDevMode ? [{ debugName: "$bgRepeat", alias: 'bgRepeat' }] : [{ alias: 'bgRepeat' }]));
|
|
20
20
|
$bgColor = input(undefined, ...(ngDevMode ? [{ debugName: "$bgColor", alias: 'bgColor' }] : [{ alias: 'bgColor' }]));
|
|
21
21
|
$bgStyle = computed(() => ({ backgroundRepeat: this.$bgRepeat(), ...(this.$style() ?? {}) }), ...(ngDevMode ? [{ debugName: "$bgStyle" }] : []));
|
|
22
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
23
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1
|
|
22
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: BackgroundComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
23
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.1", type: BackgroundComponent, isStandalone: true, selector: "ng-email-background", inputs: { $style: { classPropertyName: "$style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, $styleClass: { classPropertyName: "$styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, $width: { classPropertyName: "$width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, $height: { classPropertyName: "$height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, $src: { classPropertyName: "$src", publicName: "src", isSignal: true, isRequired: false, transformFunction: null }, $bgRepeat: { classPropertyName: "$bgRepeat", publicName: "bgRepeat", isSignal: true, isRequired: false, transformFunction: null }, $bgColor: { classPropertyName: "$bgColor", publicName: "bgColor", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@let width = $width();\n@let height = $height();\n\n<table\n [cellPadding]=\"0\"\n [cellSpacing]=\"0\"\n [border]=\"0\"\n width=\"100%\"\n [attr.height]=\"height\"\n role=\"presentation\"\n>\n <tr>\n <td\n [align]=\"'top'\"\n [width]=\"width\"\n [height]=\"height && width ? height : undefined\"\n [attr.bgcolor]=\"$bgColor()\"\n [attr.background]=\"$src()\"\n [style]=\"$bgStyle()\"\n [class]=\"$styleClass()\"\n >\n <ng-content />\n </td>\n </tr>\n</table>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
24
24
|
}
|
|
25
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
25
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: BackgroundComponent, decorators: [{
|
|
26
26
|
type: Component,
|
|
27
27
|
args: [{ selector: 'ng-email-background', changeDetection: ChangeDetectionStrategy.OnPush, imports: [], template: "@let width = $width();\n@let height = $height();\n\n<table\n [cellPadding]=\"0\"\n [cellSpacing]=\"0\"\n [border]=\"0\"\n width=\"100%\"\n [attr.height]=\"height\"\n role=\"presentation\"\n>\n <tr>\n <td\n [align]=\"'top'\"\n [width]=\"width\"\n [height]=\"height && width ? height : undefined\"\n [attr.bgcolor]=\"$bgColor()\"\n [attr.background]=\"$src()\"\n [style]=\"$bgStyle()\"\n [class]=\"$styleClass()\"\n >\n <ng-content />\n </td>\n </tr>\n</table>\n" }]
|
|
28
28
|
}] });
|
|
@@ -31,10 +31,10 @@ class BodyComponent {
|
|
|
31
31
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
32
32
|
$style = input(null, ...(ngDevMode ? [{ debugName: "$style", alias: 'style' }] : [{ alias: 'style' }]));
|
|
33
33
|
$styleClass = input(undefined, ...(ngDevMode ? [{ debugName: "$styleClass", alias: 'styleClass' }] : [{ alias: 'styleClass' }]));
|
|
34
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
35
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1
|
|
34
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: BodyComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
35
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.1", type: BodyComponent, isStandalone: true, selector: "ng-email-body", inputs: { $style: { classPropertyName: "$style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, $styleClass: { classPropertyName: "$styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<body\n [style]=\"$style()\"\n [class]=\"$styleClass()\"\n>\n <ng-content />\n</body>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
36
36
|
}
|
|
37
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
37
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: BodyComponent, decorators: [{
|
|
38
38
|
type: Component,
|
|
39
39
|
args: [{ selector: 'ng-email-body', changeDetection: ChangeDetectionStrategy.OnPush, template: "<body\n [style]=\"$style()\"\n [class]=\"$styleClass()\"\n>\n <ng-content />\n</body>\n" }]
|
|
40
40
|
}] });
|
|
@@ -115,10 +115,10 @@ class ButtonComponent {
|
|
|
115
115
|
</center></v:roundrect>
|
|
116
116
|
<![endif]-->`;
|
|
117
117
|
}, ...(ngDevMode ? [{ debugName: "$noBgInnerHtml" }] : []));
|
|
118
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
119
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1
|
|
118
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: ButtonComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
119
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.1", type: ButtonComponent, isStandalone: true, selector: "ng-email-button", inputs: { $style: { classPropertyName: "$style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, $styleClass: { classPropertyName: "$styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, $href: { classPropertyName: "$href", publicName: "href", isSignal: true, isRequired: false, transformFunction: null }, $textContent: { classPropertyName: "$textContent", publicName: "textContent", isSignal: true, isRequired: true, transformFunction: null }, $width: { classPropertyName: "$width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, $height: { classPropertyName: "$height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null }, $borderRadius: { classPropertyName: "$borderRadius", publicName: "borderRadius", isSignal: true, isRequired: false, transformFunction: null }, $textColor: { classPropertyName: "$textColor", publicName: "textColor", isSignal: true, isRequired: false, transformFunction: null }, $backgroundColor: { classPropertyName: "$backgroundColor", publicName: "backgroundColor", isSignal: true, isRequired: false, transformFunction: null }, $borderColor: { classPropertyName: "$borderColor", publicName: "borderColor", isSignal: true, isRequired: false, transformFunction: null }, $borderSize: { classPropertyName: "$borderSize", publicName: "borderSize", isSignal: true, isRequired: false, transformFunction: null }, $fontSize: { classPropertyName: "$fontSize", publicName: "fontSize", isSignal: true, isRequired: false, transformFunction: null }, $align: { classPropertyName: "$align", publicName: "align", isSignal: true, isRequired: false, transformFunction: null }, $withBackground: { classPropertyName: "$withBackground", publicName: "withBackground", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@let withBackground = $withBackground();\n@let align = $align();\n@let href = $href();\n@let height = $height();\n@let width = $width();\n@let borderRadius = $borderRadius();\n\n<ng-template #child><ng-content></ng-content></ng-template>\n\n<table\n [width]=\"'100%'\"\n [border]=\"0\"\n [cellPadding]=\"0\"\n [cellSpacing]=\"0\"\n style=\"border-collapse: collapse\"\n role=\"presentation\"\n>\n <tr>\n <td [align]=\"align\">\n @if (withBackground) {\n <table\n [align]=\"align\"\n [width]=\"width\"\n [border]=\"0\"\n [cellPadding]=\"0\"\n [cellSpacing]=\"0\"\n role=\"presentation\"\n [style]=\"{\n border: $borderSize() + 'px solid ' + ($borderColor() ?? 'inherit'),\n borderRadius: borderRadius ? borderRadius + 'px' : undefined,\n }\"\n >\n <tr>\n <td\n [attr.bgcolor]=\"$backgroundColor()\"\n [width]=\"width\"\n [height]=\"height\"\n [style]=\"{\n borderRadius: borderRadius ? borderRadius + 'px' : undefined,\n height: height ? height + 'px' : undefined,\n width: width ? width + 'px' : undefined,\n maxWidth: width ? width + 'px' : undefined,\n textAlign: 'center',\n }\"\n >\n <a\n [href]=\"href\"\n [class]=\"$styleClass()\"\n [style]=\"$withBackgroundStyle()\"\n >\n <ng-container [ngTemplateOutlet]=\"child\"></ng-container>\n </a>\n </td>\n </tr>\n </table>\n } @else {\n <noscript [attr.data-html]=\"$noBgInnerHtml()\"></noscript>\n <a\n [href]=\"href\"\n [class]=\"$styleClass()\"\n [style]=\"$withoutBackgroundStyle()\"\n >\n <ng-container [ngTemplateOutlet]=\"child\"></ng-container>\n </a>\n }\n </td>\n </tr>\n</table>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
120
120
|
}
|
|
121
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
121
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: ButtonComponent, decorators: [{
|
|
122
122
|
type: Component,
|
|
123
123
|
args: [{ selector: 'ng-email-button', imports: [NgTemplateOutlet], changeDetection: ChangeDetectionStrategy.OnPush, template: "@let withBackground = $withBackground();\n@let align = $align();\n@let href = $href();\n@let height = $height();\n@let width = $width();\n@let borderRadius = $borderRadius();\n\n<ng-template #child><ng-content></ng-content></ng-template>\n\n<table\n [width]=\"'100%'\"\n [border]=\"0\"\n [cellPadding]=\"0\"\n [cellSpacing]=\"0\"\n style=\"border-collapse: collapse\"\n role=\"presentation\"\n>\n <tr>\n <td [align]=\"align\">\n @if (withBackground) {\n <table\n [align]=\"align\"\n [width]=\"width\"\n [border]=\"0\"\n [cellPadding]=\"0\"\n [cellSpacing]=\"0\"\n role=\"presentation\"\n [style]=\"{\n border: $borderSize() + 'px solid ' + ($borderColor() ?? 'inherit'),\n borderRadius: borderRadius ? borderRadius + 'px' : undefined,\n }\"\n >\n <tr>\n <td\n [attr.bgcolor]=\"$backgroundColor()\"\n [width]=\"width\"\n [height]=\"height\"\n [style]=\"{\n borderRadius: borderRadius ? borderRadius + 'px' : undefined,\n height: height ? height + 'px' : undefined,\n width: width ? width + 'px' : undefined,\n maxWidth: width ? width + 'px' : undefined,\n textAlign: 'center',\n }\"\n >\n <a\n [href]=\"href\"\n [class]=\"$styleClass()\"\n [style]=\"$withBackgroundStyle()\"\n >\n <ng-container [ngTemplateOutlet]=\"child\"></ng-container>\n </a>\n </td>\n </tr>\n </table>\n } @else {\n <noscript [attr.data-html]=\"$noBgInnerHtml()\"></noscript>\n <a\n [href]=\"href\"\n [class]=\"$styleClass()\"\n [style]=\"$withoutBackgroundStyle()\"\n >\n <ng-container [ngTemplateOutlet]=\"child\"></ng-container>\n </a>\n }\n </td>\n </tr>\n</table>\n" }]
|
|
124
124
|
}] });
|
|
@@ -126,10 +126,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.0", ngImpor
|
|
|
126
126
|
class ColorSchemeComponent {
|
|
127
127
|
$mode = input('normal', ...(ngDevMode ? [{ debugName: "$mode", alias: 'mode' }] : [{ alias: 'mode' }]));
|
|
128
128
|
$style = computed(() => `<style>:root { color-scheme: ${this.$mode()}; supported-color-schemes: ${this.$mode()}; }</style>`, ...(ngDevMode ? [{ debugName: "$style" }] : []));
|
|
129
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
130
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1
|
|
129
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: ColorSchemeComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
130
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.1", type: ColorSchemeComponent, isStandalone: true, selector: "ng-email-color-scheme", inputs: { $mode: { classPropertyName: "$mode", publicName: "mode", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@let mode = $mode();\n\n<meta\n name=\"color-scheme\"\n [content]=\"mode\"\n/>\n<meta\n name=\"supported-color-schemes\"\n [content]=\"mode\"\n/>\n\n<noscript [attr.data-html]=\"$style()\"></noscript>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
131
131
|
}
|
|
132
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
132
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: ColorSchemeComponent, decorators: [{
|
|
133
133
|
type: Component,
|
|
134
134
|
args: [{ selector: 'ng-email-color-scheme', changeDetection: ChangeDetectionStrategy.OnPush, template: "@let mode = $mode();\n\n<meta\n name=\"color-scheme\"\n [content]=\"mode\"\n/>\n<meta\n name=\"supported-color-schemes\"\n [content]=\"mode\"\n/>\n\n<noscript [attr.data-html]=\"$style()\"></noscript>\n" }]
|
|
135
135
|
}] });
|
|
@@ -140,10 +140,10 @@ class ColumnComponent {
|
|
|
140
140
|
$styleClass = input(undefined, ...(ngDevMode ? [{ debugName: "$styleClass", alias: 'styleClass' }] : [{ alias: 'styleClass' }]));
|
|
141
141
|
$bgImage = input(undefined, ...(ngDevMode ? [{ debugName: "$bgImage", alias: 'bgImage' }] : [{ alias: 'bgImage' }]));
|
|
142
142
|
$bgColor = input(undefined, ...(ngDevMode ? [{ debugName: "$bgColor", alias: 'bgColor' }] : [{ alias: 'bgColor' }]));
|
|
143
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
144
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1
|
|
143
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: ColumnComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
144
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.1", type: ColumnComponent, isStandalone: true, selector: "ng-email-column", inputs: { $style: { classPropertyName: "$style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, $styleClass: { classPropertyName: "$styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, $bgImage: { classPropertyName: "$bgImage", publicName: "bgImage", isSignal: true, isRequired: false, transformFunction: null }, $bgColor: { classPropertyName: "$bgColor", publicName: "bgColor", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<td\n [attr.background]=\"$bgImage()\"\n [attr.bgcolor]=\"$bgColor()\"\n [style]=\"$style()\"\n [class]=\"$styleClass()\"\n role=\"presentation\"\n>\n <ng-content />\n</td>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
145
145
|
}
|
|
146
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
146
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: ColumnComponent, decorators: [{
|
|
147
147
|
type: Component,
|
|
148
148
|
args: [{ selector: 'ng-email-column', changeDetection: ChangeDetectionStrategy.OnPush, imports: [], template: "<td\n [attr.background]=\"$bgImage()\"\n [attr.bgcolor]=\"$bgColor()\"\n [style]=\"$style()\"\n [class]=\"$styleClass()\"\n role=\"presentation\"\n>\n <ng-content />\n</td>\n" }]
|
|
149
149
|
}] });
|
|
@@ -163,10 +163,10 @@ class ConditionalComponent {
|
|
|
163
163
|
throw new RangeError('angular-email: Conditional expects the `expression` or `mso` prop to be defined, not both');
|
|
164
164
|
});
|
|
165
165
|
}
|
|
166
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
167
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1
|
|
166
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: ConditionalComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
167
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.1", type: ConditionalComponent, isStandalone: true, selector: "ng-email-conditional", inputs: { $expression: { classPropertyName: "$expression", publicName: "expression", isSignal: true, isRequired: false, transformFunction: null }, $mso: { classPropertyName: "$mso", publicName: "mso", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@let mso = $mso();\n\n@if (!mso) {\n <noscript [attr.data-html]=\"noMsoInnerHtmlPre\"></noscript>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n <noscript [attr.data-html]=\"noMsoInnerHtmlPost\"></noscript>\n} @else {\n <noscript [attr.data-html]=\"$msoInnerHtmlPre()\"></noscript>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n <noscript [attr.data-html]=\"msoInnerHtmlPost\"></noscript>\n}\n<ng-template #content><ng-content></ng-content></ng-template>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
168
168
|
}
|
|
169
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
169
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: ConditionalComponent, decorators: [{
|
|
170
170
|
type: Component,
|
|
171
171
|
args: [{ selector: 'ng-email-conditional', changeDetection: ChangeDetectionStrategy.OnPush, imports: [NgTemplateOutlet], schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "@let mso = $mso();\n\n@if (!mso) {\n <noscript [attr.data-html]=\"noMsoInnerHtmlPre\"></noscript>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n <noscript [attr.data-html]=\"noMsoInnerHtmlPost\"></noscript>\n} @else {\n <noscript [attr.data-html]=\"$msoInnerHtmlPre()\"></noscript>\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n <noscript [attr.data-html]=\"msoInnerHtmlPost\"></noscript>\n}\n<ng-template #content><ng-content></ng-content></ng-template>\n" }]
|
|
172
172
|
}], ctorParameters: () => [] });
|
|
@@ -189,10 +189,10 @@ class ContainerComponent {
|
|
|
189
189
|
}), ...(ngDevMode ? [{ debugName: "$trStyle" }] : []));
|
|
190
190
|
$innerHtmlPre = computed(() => `<!--[if mso]><table align="${this.$alignment()}" width="${this.$containerWidth()}" style="border-spacing: 0; width:${this.$containerWidth()}px;" role="presentation"><tr><td><![endif]-->`, ...(ngDevMode ? [{ debugName: "$innerHtmlPre" }] : []));
|
|
191
191
|
$innerHtmlPost = computed(() => `<!--[if mso]></td></tr></table><![endif]-->`, ...(ngDevMode ? [{ debugName: "$innerHtmlPost" }] : []));
|
|
192
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
193
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1
|
|
192
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: ContainerComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
193
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.1", type: ContainerComponent, isStandalone: true, selector: "ng-email-container", inputs: { $style: { classPropertyName: "$style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, $styleClass: { classPropertyName: "$styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, $alignment: { classPropertyName: "$alignment", publicName: "alignment", isSignal: true, isRequired: false, transformFunction: null }, $disableDefaultStyle: { classPropertyName: "$disableDefaultStyle", publicName: "disableDefaultStyle", isSignal: true, isRequired: false, transformFunction: null }, $containerWidth: { classPropertyName: "$containerWidth", publicName: "containerWidth", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@let containerWidth = $containerWidth();\n@let alignment = $alignment();\n\n<div [style]=\"{ tableLayout: 'fixed', width: '100%' }\">\n <div [style]=\"{ margin: '0 auto', maxWidth: containerWidth }\">\n <noscript [attr.data-html]=\"$innerHtmlPre()\"></noscript>\n <table\n [align]=\"alignment\"\n [width]=\"'100%'\"\n role=\"presentation\"\n [cellSpacing]=\"0\"\n [cellPadding]=\"0\"\n [border]=\"0\"\n [style]=\"$containerStyle()\"\n [class]=\"$styleClass()\"\n >\n <tbody>\n <tr [style]=\"$trStyle()\">\n <td [align]=\"alignment\">\n <ng-content></ng-content>\n </td>\n </tr>\n </tbody>\n </table>\n <noscript [attr.data-html]=\"$innerHtmlPost()\"></noscript>\n </div>\n</div>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
194
194
|
}
|
|
195
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
195
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: ContainerComponent, decorators: [{
|
|
196
196
|
type: Component,
|
|
197
197
|
args: [{ selector: 'ng-email-container', changeDetection: ChangeDetectionStrategy.OnPush, imports: [], template: "@let containerWidth = $containerWidth();\n@let alignment = $alignment();\n\n<div [style]=\"{ tableLayout: 'fixed', width: '100%' }\">\n <div [style]=\"{ margin: '0 auto', maxWidth: containerWidth }\">\n <noscript [attr.data-html]=\"$innerHtmlPre()\"></noscript>\n <table\n [align]=\"alignment\"\n [width]=\"'100%'\"\n role=\"presentation\"\n [cellSpacing]=\"0\"\n [cellPadding]=\"0\"\n [border]=\"0\"\n [style]=\"$containerStyle()\"\n [class]=\"$styleClass()\"\n >\n <tbody>\n <tr [style]=\"$trStyle()\">\n <td [align]=\"alignment\">\n <ng-content></ng-content>\n </td>\n </tr>\n </tbody>\n </table>\n <noscript [attr.data-html]=\"$innerHtmlPost()\"></noscript>\n </div>\n</div>\n" }]
|
|
198
198
|
}] });
|
|
@@ -200,10 +200,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.0", ngImpor
|
|
|
200
200
|
class HeadComponent {
|
|
201
201
|
$enableFormatDetection = input(false, ...(ngDevMode ? [{ debugName: "$enableFormatDetection", alias: 'enableFormatDetection' }] : [{ alias: 'enableFormatDetection' }]));
|
|
202
202
|
xml = `\n<xml><o:OfficeDocumentSettings><o:AllowPNG /><o:PixelsPerInch>96</o:PixelsPerInch></o:OfficeDocumentSettings></xml>\n`;
|
|
203
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
204
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1
|
|
203
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: HeadComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
204
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.1", type: HeadComponent, isStandalone: true, selector: "ng-email-head", inputs: { $enableFormatDetection: { classPropertyName: "$enableFormatDetection", publicName: "enableFormatDetection", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@let enableFormatDetection = $enableFormatDetection();\n\n<head>\n <meta\n http-equiv=\"content-type\"\n content=\"text/html; charset=UTF-8\"\n />\n <meta\n name=\"viewport\"\n content=\"width=device-width, initial-scale=1, user-scalable=yes\"\n />\n <meta name=\"x-apple-disable-message-reformatting\" />\n @if (!enableFormatDetection) {\n <meta\n name=\"format-detection\"\n content=\"telephone=no, date=no, address=no, email=no, url=no\"\n />\n }\n <ng-content></ng-content>\n <ng-email-conditional [mso]=\"true\">\n <noscript [attr.data-html]=\"xml\"></noscript>\n </ng-email-conditional>\n</head>\n", dependencies: [{ kind: "component", type: ConditionalComponent, selector: "ng-email-conditional", inputs: ["expression", "mso"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
205
205
|
}
|
|
206
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
206
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: HeadComponent, decorators: [{
|
|
207
207
|
type: Component,
|
|
208
208
|
args: [{ selector: 'ng-email-head', changeDetection: ChangeDetectionStrategy.OnPush, imports: [ConditionalComponent], schemas: [NO_ERRORS_SCHEMA], template: "@let enableFormatDetection = $enableFormatDetection();\n\n<head>\n <meta\n http-equiv=\"content-type\"\n content=\"text/html; charset=UTF-8\"\n />\n <meta\n name=\"viewport\"\n content=\"width=device-width, initial-scale=1, user-scalable=yes\"\n />\n <meta name=\"x-apple-disable-message-reformatting\" />\n @if (!enableFormatDetection) {\n <meta\n name=\"format-detection\"\n content=\"telephone=no, date=no, address=no, email=no, url=no\"\n />\n }\n <ng-content></ng-content>\n <ng-email-conditional [mso]=\"true\">\n <noscript [attr.data-html]=\"xml\"></noscript>\n </ng-email-conditional>\n</head>\n" }]
|
|
209
209
|
}] });
|
|
@@ -435,10 +435,10 @@ class HeadingComponent {
|
|
|
435
435
|
...(this.$style() ?? {}),
|
|
436
436
|
});
|
|
437
437
|
}, ...(ngDevMode ? [{ debugName: "$headingStyle" }] : []));
|
|
438
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
439
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1
|
|
438
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: HeadingComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
439
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.1", type: HeadingComponent, isStandalone: true, selector: "ng-email-heading", inputs: { $style: { classPropertyName: "$style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, $styleClass: { classPropertyName: "$styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, $as: { classPropertyName: "$as", publicName: "as", isSignal: true, isRequired: false, transformFunction: null }, $m: { classPropertyName: "$m", publicName: "m", isSignal: true, isRequired: false, transformFunction: null }, $mx: { classPropertyName: "$mx", publicName: "mx", isSignal: true, isRequired: false, transformFunction: null }, $my: { classPropertyName: "$my", publicName: "my", isSignal: true, isRequired: false, transformFunction: null }, $mt: { classPropertyName: "$mt", publicName: "mt", isSignal: true, isRequired: false, transformFunction: null }, $mr: { classPropertyName: "$mr", publicName: "mr", isSignal: true, isRequired: false, transformFunction: null }, $mb: { classPropertyName: "$mb", publicName: "mb", isSignal: true, isRequired: false, transformFunction: null }, $ml: { classPropertyName: "$ml", publicName: "ml", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@let heading = $as();\n@let style = $headingStyle();\n@let styleClass = $styleClass();\n@if (heading === 'h1') {\n <h1\n [style]=\"style\"\n [class]=\"styleClass\"\n >\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </h1>\n} @else if (heading === 'h2') {\n <h2\n [style]=\"style\"\n [class]=\"styleClass\"\n >\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </h2>\n} @else if (heading === 'h3') {\n <h3\n [style]=\"style\"\n [class]=\"styleClass\"\n >\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </h3>\n} @else if (heading === 'h4') {\n <h4\n [style]=\"style\"\n [class]=\"styleClass\"\n >\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </h4>\n} @else if (heading === 'h5') {\n <h5\n [style]=\"style\"\n [class]=\"styleClass\"\n >\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </h5>\n} @else if (heading === 'h6') {\n <h6\n [style]=\"style\"\n [class]=\"styleClass\"\n >\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </h6>\n} @else {\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n}\n<ng-template #content><ng-content></ng-content></ng-template>\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
440
440
|
}
|
|
441
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
441
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: HeadingComponent, decorators: [{
|
|
442
442
|
type: Component,
|
|
443
443
|
args: [{ selector: 'ng-email-heading', imports: [NgTemplateOutlet], changeDetection: ChangeDetectionStrategy.OnPush, template: "@let heading = $as();\n@let style = $headingStyle();\n@let styleClass = $styleClass();\n@if (heading === 'h1') {\n <h1\n [style]=\"style\"\n [class]=\"styleClass\"\n >\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </h1>\n} @else if (heading === 'h2') {\n <h2\n [style]=\"style\"\n [class]=\"styleClass\"\n >\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </h2>\n} @else if (heading === 'h3') {\n <h3\n [style]=\"style\"\n [class]=\"styleClass\"\n >\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </h3>\n} @else if (heading === 'h4') {\n <h4\n [style]=\"style\"\n [class]=\"styleClass\"\n >\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </h4>\n} @else if (heading === 'h5') {\n <h5\n [style]=\"style\"\n [class]=\"styleClass\"\n >\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </h5>\n} @else if (heading === 'h6') {\n <h6\n [style]=\"style\"\n [class]=\"styleClass\"\n >\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n </h6>\n} @else {\n <ng-container [ngTemplateOutlet]=\"content\"></ng-container>\n}\n<ng-template #content><ng-content></ng-content></ng-template>\n" }]
|
|
444
444
|
}] });
|
|
@@ -460,10 +460,10 @@ class HrComponent {
|
|
|
460
460
|
...(this.$style() ?? {}),
|
|
461
461
|
};
|
|
462
462
|
}, ...(ngDevMode ? [{ debugName: "$hrStyle" }] : []));
|
|
463
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
464
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1
|
|
463
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: HrComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
464
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.1", type: HrComponent, isStandalone: true, selector: "ng-email-hr", inputs: { $style: { classPropertyName: "$style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, $styleClass: { classPropertyName: "$styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, $disableDefaultStyle: { classPropertyName: "$disableDefaultStyle", publicName: "disableDefaultStyle", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<hr\n [style]=\"$hrStyle()\"\n [class]=\"$styleClass()\"\n/>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
465
465
|
}
|
|
466
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
466
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: HrComponent, decorators: [{
|
|
467
467
|
type: Component,
|
|
468
468
|
args: [{ selector: 'ng-email-hr', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<hr\n [style]=\"$hrStyle()\"\n [class]=\"$styleClass()\"\n/>\n" }]
|
|
469
469
|
}] });
|
|
@@ -475,10 +475,10 @@ class HtmlComponent {
|
|
|
475
475
|
// eslint-disable-next-line @typescript-eslint/no-explicit-any
|
|
476
476
|
$style = input(null, ...(ngDevMode ? [{ debugName: "$style", alias: 'style' }] : [{ alias: 'style' }]));
|
|
477
477
|
$styleClass = input(undefined, ...(ngDevMode ? [{ debugName: "$styleClass", alias: 'styleClass' }] : [{ alias: 'styleClass' }]));
|
|
478
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
479
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1
|
|
478
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: HtmlComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
479
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.1", type: HtmlComponent, isStandalone: true, selector: "ng-email-html", inputs: { $lang: { classPropertyName: "$lang", publicName: "lang", isSignal: true, isRequired: false, transformFunction: null }, $dir: { classPropertyName: "$dir", publicName: "dir", isSignal: true, isRequired: false, transformFunction: null }, $enableVML: { classPropertyName: "$enableVML", publicName: "enableVML", isSignal: true, isRequired: false, transformFunction: null }, $style: { classPropertyName: "$style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, $styleClass: { classPropertyName: "$styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@let enableVML = $enableVML();\n@let lang = $lang();\n@let dir = $dir();\n\n<html\n id=\"__angular-email\"\n [lang]=\"lang\"\n [dir]=\"dir\"\n [attr.xmlns:o]=\"enableVML ? 'urn:schemas-microsoft-com:office:office' : undefined\"\n [attr.xmlns:v]=\"enableVML ? 'urn:schemas-microsoft-com:vml' : undefined\"\n [style]=\"$style()\"\n [class]=\"$styleClass()\"\n>\n <ng-content />\n</html>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
480
480
|
}
|
|
481
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
481
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: HtmlComponent, decorators: [{
|
|
482
482
|
type: Component,
|
|
483
483
|
args: [{ selector: 'ng-email-html', changeDetection: ChangeDetectionStrategy.OnPush, template: "@let enableVML = $enableVML();\n@let lang = $lang();\n@let dir = $dir();\n\n<html\n id=\"__angular-email\"\n [lang]=\"lang\"\n [dir]=\"dir\"\n [attr.xmlns:o]=\"enableVML ? 'urn:schemas-microsoft-com:office:office' : undefined\"\n [attr.xmlns:v]=\"enableVML ? 'urn:schemas-microsoft-com:vml' : undefined\"\n [style]=\"$style()\"\n [class]=\"$styleClass()\"\n>\n <ng-content />\n</html>\n" }]
|
|
484
484
|
}] });
|
|
@@ -505,10 +505,10 @@ class ImgComponent {
|
|
|
505
505
|
...(this.$style() ?? {}),
|
|
506
506
|
};
|
|
507
507
|
}, ...(ngDevMode ? [{ debugName: "$imageStyle" }] : []));
|
|
508
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
509
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1
|
|
508
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: ImgComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
509
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.1", type: ImgComponent, isStandalone: true, selector: "ng-email-img", inputs: { $style: { classPropertyName: "$style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, $styleClass: { classPropertyName: "$styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, $disableDefaultStyle: { classPropertyName: "$disableDefaultStyle", publicName: "disableDefaultStyle", isSignal: true, isRequired: false, transformFunction: null }, $alt: { classPropertyName: "$alt", publicName: "alt", isSignal: true, isRequired: false, transformFunction: null }, $src: { classPropertyName: "$src", publicName: "src", isSignal: true, isRequired: false, transformFunction: null }, $width: { classPropertyName: "$width", publicName: "width", isSignal: true, isRequired: false, transformFunction: null }, $height: { classPropertyName: "$height", publicName: "height", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<img\n [style]=\"$imageStyle()\"\n [class]=\"$styleClass()\"\n [alt]=\"$alt()\"\n [src]=\"$src()\"\n [width]=\"$width()\"\n [height]=\"$height()\"\n/>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
510
510
|
}
|
|
511
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
511
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: ImgComponent, decorators: [{
|
|
512
512
|
type: Component,
|
|
513
513
|
args: [{ selector: 'ng-email-img', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<img\n [style]=\"$imageStyle()\"\n [class]=\"$styleClass()\"\n [alt]=\"$alt()\"\n [src]=\"$src()\"\n [width]=\"$width()\"\n [height]=\"$height()\"\n/>\n" }]
|
|
514
514
|
}] });
|
|
@@ -531,10 +531,10 @@ class LinkComponent {
|
|
|
531
531
|
...(this.$style() ?? {}),
|
|
532
532
|
};
|
|
533
533
|
}, ...(ngDevMode ? [{ debugName: "$linkStyle" }] : []));
|
|
534
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
535
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1
|
|
534
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: LinkComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
535
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.1", type: LinkComponent, isStandalone: true, selector: "ng-email-link", inputs: { $style: { classPropertyName: "$style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, $styleClass: { classPropertyName: "$styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, $disableDefaultStyle: { classPropertyName: "$disableDefaultStyle", publicName: "disableDefaultStyle", isSignal: true, isRequired: false, transformFunction: null }, $href: { classPropertyName: "$href", publicName: "href", isSignal: true, isRequired: false, transformFunction: null }, $target: { classPropertyName: "$target", publicName: "target", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<a\n [style]=\"$linkStyle()\"\n [class]=\"$styleClass()\"\n [href]=\"$href()\"\n [target]=\"$target()\"\n ><ng-content></ng-content\n></a>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
536
536
|
}
|
|
537
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
537
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: LinkComponent, decorators: [{
|
|
538
538
|
type: Component,
|
|
539
539
|
args: [{ selector: 'ng-email-link', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<a\n [style]=\"$linkStyle()\"\n [class]=\"$styleClass()\"\n [href]=\"$href()\"\n [target]=\"$target()\"\n ><ng-content></ng-content\n></a>\n" }]
|
|
540
540
|
}] });
|
|
@@ -543,10 +543,10 @@ class RawComponent {
|
|
|
543
543
|
$disablePlainTextOutput = input(false, ...(ngDevMode ? [{ debugName: "$disablePlainTextOutput", alias: 'disablePlainTextOutput' }] : [{ alias: 'disablePlainTextOutput' }]));
|
|
544
544
|
$content = input('', ...(ngDevMode ? [{ debugName: "$content", alias: 'content' }] : [{ alias: 'content' }]));
|
|
545
545
|
$escapingContent = computed(() => `<!--${escapeForRawComponent(this.$content())}-->`, ...(ngDevMode ? [{ debugName: "$escapingContent" }] : []));
|
|
546
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
547
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1
|
|
546
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: RawComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
547
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.1", type: RawComponent, isStandalone: true, selector: "ng-email-raw", inputs: { $disablePlainTextOutput: { classPropertyName: "$disablePlainTextOutput", publicName: "disablePlainTextOutput", isSignal: true, isRequired: false, transformFunction: null }, $content: { classPropertyName: "$content", publicName: "content", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<angular-email-raw [attr.data-skip]=\"$disablePlainTextOutput()\">\n <noscript [attr.data-html]=\"$escapingContent()\"></noscript>\n</angular-email-raw>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
548
548
|
}
|
|
549
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
549
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: RawComponent, decorators: [{
|
|
550
550
|
type: Component,
|
|
551
551
|
args: [{ selector: 'ng-email-raw', changeDetection: ChangeDetectionStrategy.OnPush, schemas: [CUSTOM_ELEMENTS_SCHEMA], template: "<angular-email-raw [attr.data-skip]=\"$disablePlainTextOutput()\">\n <noscript [attr.data-html]=\"$escapingContent()\"></noscript>\n</angular-email-raw>\n" }]
|
|
552
552
|
}] });
|
|
@@ -561,10 +561,10 @@ class PreviewComponent {
|
|
|
561
561
|
const whiteSpaceCodes = ' ‌​‍‎‏';
|
|
562
562
|
return whiteSpaceCodes.repeat(this.maxLength - preview.length);
|
|
563
563
|
}, ...(ngDevMode ? [{ debugName: "$text" }] : []));
|
|
564
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
565
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1
|
|
564
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: PreviewComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
565
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.2.1", type: PreviewComponent, isStandalone: true, selector: "ng-email-preview", inputs: { $preview: { classPropertyName: "$preview", publicName: "preview", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "@let text = $text();\n\n<div\n id=\"__angular-email-preview\"\n style=\"display: none; overflow: hidden; line-height: 1px; opacity: 0; max-height: 0; max-width: 0\"\n>\n {{ $preview() }}\n @if (text) {\n <ng-email-raw\n [content]=\"text\"\n [disablePlainTextOutput]=\"false\"\n ></ng-email-raw>\n }\n</div>\n", dependencies: [{ kind: "component", type: RawComponent, selector: "ng-email-raw", inputs: ["disablePlainTextOutput", "content"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
566
566
|
}
|
|
567
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
567
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: PreviewComponent, decorators: [{
|
|
568
568
|
type: Component,
|
|
569
569
|
args: [{ selector: 'ng-email-preview', changeDetection: ChangeDetectionStrategy.OnPush, imports: [RawComponent], template: "@let text = $text();\n\n<div\n id=\"__angular-email-preview\"\n style=\"display: none; overflow: hidden; line-height: 1px; opacity: 0; max-height: 0; max-width: 0\"\n>\n {{ $preview() }}\n @if (text) {\n <ng-email-raw\n [content]=\"text\"\n [disablePlainTextOutput]=\"false\"\n ></ng-email-raw>\n }\n</div>\n" }]
|
|
570
570
|
}] });
|
|
@@ -574,10 +574,10 @@ class RowComponent {
|
|
|
574
574
|
$style = input(null, ...(ngDevMode ? [{ debugName: "$style", alias: 'style' }] : [{ alias: 'style' }]));
|
|
575
575
|
$styleClass = input(undefined, ...(ngDevMode ? [{ debugName: "$styleClass", alias: 'styleClass' }] : [{ alias: 'styleClass' }]));
|
|
576
576
|
$disableDefaultStyle = input(false, ...(ngDevMode ? [{ debugName: "$disableDefaultStyle", alias: 'disableDefaultStyle' }] : [{ alias: 'disableDefaultStyle' }]));
|
|
577
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
578
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1
|
|
577
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: RowComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
578
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.1", type: RowComponent, isStandalone: true, selector: "ng-email-row", inputs: { $style: { classPropertyName: "$style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, $styleClass: { classPropertyName: "$styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, $disableDefaultStyle: { classPropertyName: "$disableDefaultStyle", publicName: "disableDefaultStyle", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<table\n align=\"center\"\n width=\"100%\"\n [class]=\"$styleClass()\"\n [style]=\"$style()\"\n role=\"presentation\"\n cellSpacing=\"0\"\n cellPadding=\"0\"\n border=\"0\"\n>\n <tbody [style]=\"$disableDefaultStyle() ? {} : { width: '100%' }\">\n <tr [style]=\"$disableDefaultStyle() ? {} : { width: '100%' }\">\n <ng-content />\n </tr>\n </tbody>\n</table>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
579
579
|
}
|
|
580
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
580
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: RowComponent, decorators: [{
|
|
581
581
|
type: Component,
|
|
582
582
|
args: [{ selector: 'ng-email-row', changeDetection: ChangeDetectionStrategy.OnPush, imports: [], template: "<table\n align=\"center\"\n width=\"100%\"\n [class]=\"$styleClass()\"\n [style]=\"$style()\"\n role=\"presentation\"\n cellSpacing=\"0\"\n cellPadding=\"0\"\n border=\"0\"\n>\n <tbody [style]=\"$disableDefaultStyle() ? {} : { width: '100%' }\">\n <tr [style]=\"$disableDefaultStyle() ? {} : { width: '100%' }\">\n <ng-content />\n </tr>\n </tbody>\n</table>\n" }]
|
|
583
583
|
}] });
|
|
@@ -592,10 +592,10 @@ class SectionComponent {
|
|
|
592
592
|
...(this.$style() ?? {}),
|
|
593
593
|
});
|
|
594
594
|
}, ...(ngDevMode ? [{ debugName: "$sectionStyle" }] : []));
|
|
595
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
596
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1
|
|
595
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: SectionComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
596
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.1", type: SectionComponent, isStandalone: true, selector: "ng-email-section", inputs: { $style: { classPropertyName: "$style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, $styleClass: { classPropertyName: "$styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<table\n [align]=\"'center'\"\n [border]=\"0\"\n [cellPadding]=\"0\"\n [cellSpacing]=\"0\"\n width=\"100%\"\n role=\"presentation\"\n [style]=\"$sectionStyle()\"\n [class]=\"$styleClass()\"\n>\n <tbody>\n <tr>\n <td>\n <ng-content />\n </td>\n </tr>\n </tbody>\n</table>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
597
597
|
}
|
|
598
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
598
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: SectionComponent, decorators: [{
|
|
599
599
|
type: Component,
|
|
600
600
|
args: [{ selector: 'ng-email-section', changeDetection: ChangeDetectionStrategy.OnPush, imports: [], template: "<table\n [align]=\"'center'\"\n [border]=\"0\"\n [cellPadding]=\"0\"\n [cellSpacing]=\"0\"\n width=\"100%\"\n role=\"presentation\"\n [style]=\"$sectionStyle()\"\n [class]=\"$styleClass()\"\n>\n <tbody>\n <tr>\n <td>\n <ng-content />\n </td>\n </tr>\n </tbody>\n</table>\n" }]
|
|
601
601
|
}] });
|
|
@@ -617,10 +617,10 @@ class TextComponent {
|
|
|
617
617
|
...(this.$style() ?? {}),
|
|
618
618
|
};
|
|
619
619
|
}, ...(ngDevMode ? [{ debugName: "$textStyle" }] : []));
|
|
620
|
-
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1
|
|
621
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.1
|
|
620
|
+
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: TextComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
621
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.1.0", version: "20.2.1", type: TextComponent, isStandalone: true, selector: "ng-email-text", inputs: { $style: { classPropertyName: "$style", publicName: "style", isSignal: true, isRequired: false, transformFunction: null }, $styleClass: { classPropertyName: "$styleClass", publicName: "styleClass", isSignal: true, isRequired: false, transformFunction: null }, $disableDefaultStyle: { classPropertyName: "$disableDefaultStyle", publicName: "disableDefaultStyle", isSignal: true, isRequired: false, transformFunction: null } }, ngImport: i0, template: "<p\n [style]=\"$textStyle()\"\n [class]=\"$styleClass()\"\n>\n <ng-content></ng-content>\n</p>\n", changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
622
622
|
}
|
|
623
|
-
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1
|
|
623
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.2.1", ngImport: i0, type: TextComponent, decorators: [{
|
|
624
624
|
type: Component,
|
|
625
625
|
args: [{ selector: 'ng-email-text', imports: [], changeDetection: ChangeDetectionStrategy.OnPush, template: "<p\n [style]=\"$textStyle()\"\n [class]=\"$styleClass()\"\n>\n <ng-content></ng-content>\n</p>\n" }]
|
|
626
626
|
}] });
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@keycloakify/angular-email",
|
|
3
|
-
"version": "0.0.
|
|
3
|
+
"version": "0.0.8",
|
|
4
4
|
"license": "MIT",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"description": "Angular Email Builder",
|
|
@@ -30,6 +30,7 @@
|
|
|
30
30
|
"@angular/build": "^20.1.0",
|
|
31
31
|
"@angular/platform-server": "^20.1.0",
|
|
32
32
|
"@angular/ssr": "^20.1.0",
|
|
33
|
+
"@angular/router": "^20.1.0",
|
|
33
34
|
"juice": "^11.0.1",
|
|
34
35
|
"postcss": "^8.5.3",
|
|
35
36
|
"tailwindcss-v3": "npm:tailwindcss@^3.4.17",
|
|
@@ -40,12 +41,13 @@
|
|
|
40
41
|
"publishConfig": {
|
|
41
42
|
"access": "public"
|
|
42
43
|
},
|
|
43
|
-
"bin": {
|
|
44
|
-
"keycloakify-angular-email": "bin/build.mjs"
|
|
45
|
-
},
|
|
46
|
-
"module": "fesm2022/keycloakify-angular-email.mjs",
|
|
47
|
-
"typings": "index.d.ts",
|
|
48
44
|
"exports": {
|
|
45
|
+
"./node": {
|
|
46
|
+
"types": "./node/index.d.ts",
|
|
47
|
+
"import": "./node/index.js",
|
|
48
|
+
"require": "./node/index.cjs",
|
|
49
|
+
"default": "./node/index.cjs"
|
|
50
|
+
},
|
|
49
51
|
"./package.json": {
|
|
50
52
|
"default": "./package.json"
|
|
51
53
|
},
|
|
@@ -60,12 +62,11 @@
|
|
|
60
62
|
"./tailwindcss-preset-email": {
|
|
61
63
|
"types": "./tailwindcss-preset-email/index.d.ts",
|
|
62
64
|
"default": "./fesm2022/keycloakify-angular-email-tailwindcss-preset-email.mjs"
|
|
63
|
-
},
|
|
64
|
-
"./node": {
|
|
65
|
-
"types": "./node/index.d.ts",
|
|
66
|
-
"import": "./node/index.js",
|
|
67
|
-
"require": "./node/index.cjs",
|
|
68
|
-
"default": "./node/index.cjs"
|
|
69
65
|
}
|
|
70
|
-
}
|
|
71
|
-
|
|
66
|
+
},
|
|
67
|
+
"bin": {
|
|
68
|
+
"keycloakify-angular-email": "bin/build.mjs"
|
|
69
|
+
},
|
|
70
|
+
"module": "fesm2022/keycloakify-angular-email.mjs",
|
|
71
|
+
"typings": "index.d.ts"
|
|
72
|
+
}
|