coer-elements 0.0.98 → 0.0.99

Sign up to get free protection for your applications and to get access to all the features.
@@ -5,11 +5,13 @@ import * as i1$1 from '@angular/forms';
5
5
  import { FormsModule } from '@angular/forms';
6
6
  import * as i1 from '@angular/router';
7
7
  import { RouterModule } from '@angular/router';
8
- import * as i2$1 from 'coer-elements/tools';
9
- import { Page, Tools, Menu, CoerAlert } from 'coer-elements/tools';
8
+ import * as i4 from 'coer-elements/tools';
9
+ import { Page, Tools, Menu, User, CoerAlert } from 'coer-elements/tools';
10
10
  import { menuSelectedSIGNAL, isLoadingSIGNAL, navigationSIGNAL } from 'coer-elements/signals';
11
11
  import * as i2 from 'coer-elements/components';
12
12
  import { ComponentsModule } from 'coer-elements/components';
13
+ import * as i3 from 'coer-elements/directives';
14
+ import { DirectivesModule } from 'coer-elements/directives';
13
15
 
14
16
  class CoerMenuPage extends Page {
15
17
  constructor() {
@@ -82,10 +84,12 @@ class LoginPage {
82
84
  }
83
85
  /** */
84
86
  Login() {
85
- this.onLogin.emit({
86
- user: this.user,
87
- password: this.password
88
- });
87
+ if (this.enableButton) {
88
+ this.onLogin.emit({
89
+ user: this.user,
90
+ password: this.password
91
+ });
92
+ }
89
93
  }
90
94
  /** */
91
95
  FocusUser() {
@@ -108,8 +112,15 @@ class COERSystem {
108
112
  //Elements
109
113
  this.sidenav = viewChild.required('sidenav');
110
114
  this.loginPage = viewChild.required('loginPage');
115
+ this.modal = viewChild.required('modalPassword');
116
+ this.inputPassword = viewChild.required('inputPassword');
117
+ this.inputPasswordConfirm = viewChild.required('inputPasswordConfirm');
118
+ this.resetButton = viewChild.required('resetButton');
111
119
  //Variables
112
120
  this.title = 'COER System';
121
+ this._isLoading = isLoadingSIGNAL;
122
+ this.password = '';
123
+ this.passwordConfirm = '';
113
124
  //Inputs
114
125
  this.appName = input('');
115
126
  this.user = input(null);
@@ -119,6 +130,7 @@ class COERSystem {
119
130
  this.onLogin = output();
120
131
  this.onClickUser = output();
121
132
  this.onClickOption = output();
133
+ this.onResetPassword = output();
122
134
  //Generic Tools
123
135
  this.IsNotNull = Tools.IsNotNull;
124
136
  }
@@ -136,6 +148,31 @@ class COERSystem {
136
148
  Login(login) {
137
149
  this.onLogin.emit(login);
138
150
  }
151
+ //getter
152
+ get enableButton() {
153
+ return Tools.IsNotOnlyWhiteSpace(this.user)
154
+ && Tools.IsNotOnlyWhiteSpace(this.password)
155
+ && Tools.IsNotOnlyWhiteSpace(this.passwordConfirm)
156
+ && this.password.length >= 5
157
+ && this.passwordConfirm.length >= 5
158
+ && !this._isLoading()
159
+ && this.password === this.passwordConfirm;
160
+ }
161
+ /** */
162
+ async SelectedOption(menu) {
163
+ switch (menu.label) {
164
+ case 'Reset Password': {
165
+ this.modal().Open();
166
+ await Tools.Sleep(1000);
167
+ this.Focus();
168
+ break;
169
+ }
170
+ case 'Log Out': {
171
+ User.LogOut();
172
+ break;
173
+ }
174
+ }
175
+ }
139
176
  /** */
140
177
  FocusUser() {
141
178
  this.loginPage().FocusUser();
@@ -144,12 +181,33 @@ class COERSystem {
144
181
  FocusPassword() {
145
182
  this.loginPage().FocusPassword();
146
183
  }
184
+ /** */
185
+ Focus() {
186
+ if (Tools.IsOnlyWhiteSpace(this.password)) {
187
+ this.inputPassword().Focus();
188
+ return;
189
+ }
190
+ if (Tools.IsOnlyWhiteSpace(this.passwordConfirm)) {
191
+ this.inputPasswordConfirm().Focus();
192
+ return;
193
+ }
194
+ if (this.enableButton) {
195
+ this.resetButton().Focus();
196
+ }
197
+ }
198
+ /** */
199
+ ResetPassword() {
200
+ if (this.enableButton) {
201
+ const password = this.password;
202
+ this.onResetPassword.emit(password);
203
+ }
204
+ }
147
205
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: COERSystem, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
148
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.1", type: COERSystem, isStandalone: false, selector: "coer-system", inputs: { appName: { classPropertyName: "appName", publicName: "appName", isSignal: true, isRequired: false, transformFunction: null }, user: { classPropertyName: "user", publicName: "user", isSignal: true, isRequired: false, transformFunction: null }, image: { classPropertyName: "image", publicName: "image", isSignal: true, isRequired: false, transformFunction: null }, toolbarMenu: { classPropertyName: "toolbarMenu", publicName: "toolbarMenu", isSignal: true, isRequired: false, transformFunction: null }, navigation: { classPropertyName: "navigation", publicName: "navigation", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { onLogin: "onLogin", onClickUser: "onClickUser", onClickOption: "onClickOption" }, viewQueries: [{ propertyName: "sidenav", first: true, predicate: ["sidenav"], descendants: true, isSignal: true }, { propertyName: "loginPage", first: true, predicate: ["loginPage"], descendants: true, isSignal: true }], ngImport: i0, template: "@if(IsNotNull(user())) {\r\n <coer-toolbar \r\n [appName]=\"appName()\" \r\n [user]=\"user()\" \r\n [image]=\"image()\" \r\n [menu]=\"toolbarMenu()\"\r\n (onClickMenu)=\"sidenav.Toggle()\"\r\n (onClickUser)=\"onClickUser.emit()\"\r\n (onClickOption)=\"onClickOption.emit($event)\"\r\n ></coer-toolbar>\r\n \r\n <coer-sidenav #sidenav> \r\n <section> \r\n <ng-content></ng-content>\r\n </section> \r\n </coer-sidenav>\r\n}\r\n\r\n@else {\r\n <login-page \r\n #loginPage\r\n [title]=\"title\" \r\n (onLogin)=\"Login($event)\"\r\n ></login-page>\r\n}\r\n\r\n<coer-alert></coer-alert>", styles: [""], dependencies: [{ kind: "component", type: i2.CoerSidenav, selector: "coer-sidenav", outputs: ["onMenuSelected"] }, { kind: "component", type: i2.CoerToolbar, selector: "coer-toolbar", inputs: ["appName", "user", "image", "menu"], outputs: ["onClickMenu", "onClickUser", "onClickOption"] }, { kind: "component", type: i2$1.CoerAlert, selector: "coer-alert" }, { kind: "component", type: LoginPage, selector: "login-page", inputs: ["title"], outputs: ["onLogin"] }] }); }
206
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.0.1", type: COERSystem, isStandalone: false, selector: "coer-system", inputs: { appName: { classPropertyName: "appName", publicName: "appName", isSignal: true, isRequired: false, transformFunction: null }, user: { classPropertyName: "user", publicName: "user", isSignal: true, isRequired: false, transformFunction: null }, image: { classPropertyName: "image", publicName: "image", isSignal: true, isRequired: false, transformFunction: null }, toolbarMenu: { classPropertyName: "toolbarMenu", publicName: "toolbarMenu", isSignal: true, isRequired: false, transformFunction: null }, navigation: { classPropertyName: "navigation", publicName: "navigation", isSignal: false, isRequired: false, transformFunction: null } }, outputs: { onLogin: "onLogin", onClickUser: "onClickUser", onClickOption: "onClickOption", onResetPassword: "onResetPassword" }, viewQueries: [{ propertyName: "sidenav", first: true, predicate: ["sidenav"], descendants: true, isSignal: true }, { propertyName: "loginPage", first: true, predicate: ["loginPage"], descendants: true, isSignal: true }, { propertyName: "modal", first: true, predicate: ["modalPassword"], descendants: true, isSignal: true }, { propertyName: "inputPassword", first: true, predicate: ["inputPassword"], descendants: true, isSignal: true }, { propertyName: "inputPasswordConfirm", first: true, predicate: ["inputPasswordConfirm"], descendants: true, isSignal: true }, { propertyName: "resetButton", first: true, predicate: ["resetButton"], descendants: true, isSignal: true }], ngImport: i0, template: "@if(IsNotNull(user())) {\r\n <coer-toolbar \r\n [appName]=\"appName()\" \r\n [user]=\"user()\" \r\n [image]=\"image()\" \r\n [menu]=\"toolbarMenu()\"\r\n (onClickMenu)=\"sidenav.Toggle()\"\r\n (onClickUser)=\"onClickUser.emit()\"\r\n (onClickOption)=\"SelectedOption($event)\"\r\n ></coer-toolbar>\r\n \r\n <coer-sidenav #sidenav> \r\n <section> \r\n <ng-content></ng-content>\r\n </section> \r\n </coer-sidenav>\r\n}\r\n\r\n@else {\r\n <login-page \r\n #loginPage\r\n [title]=\"title\" \r\n (onLogin)=\"Login($event)\"\r\n ></login-page>\r\n} \r\n\r\n<!-- Modal Password -->\r\n<coer-modal #modalPassword title=\"Reset Password\" icon=\"fa-solid fa-lock\" (onClose)=\"password = ''; passwordConfirm = '';\">\r\n <coer-textbox\r\n #inputPassword\r\n label=\"New Password\"\r\n [(ngModel)]=\"password\"\r\n [isLoading]=\"_isLoading()\"\r\n [selectOnFocus]=\"true\"\r\n marginBottom=\"15px\"\r\n (onKeyupEnter)=\"Focus()\"\r\n ></coer-textbox>\r\n\r\n <coer-textbox\r\n #inputPasswordConfirm\r\n label=\"Confirm Password\"\r\n [(ngModel)]=\"passwordConfirm\"\r\n [isLoading]=\"_isLoading()\"\r\n [selectOnFocus]=\"true\" \r\n (onKeyupEnter)=\"Focus()\"\r\n ></coer-textbox>\r\n\r\n <ng-template coerRef=\"footer\">\r\n <!-- Reset Button -->\r\n <coer-button\r\n #resetButton\r\n color=\"dark\" \r\n [isDisabled]=\"!enableButton\"\r\n [isLoading]=\"_isLoading()\" \r\n (onClick)=\"ResetPassword()\"\r\n > Reset </coer-button>\r\n </ng-template>\r\n</coer-modal>\r\n\r\n\r\n<coer-alert></coer-alert>", styles: [""], dependencies: [{ kind: "directive", type: i1$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.CoerButton, selector: "coer-button", inputs: ["id", "color", "type", "icon", "iconPosition", "animation", "isLoading", "isDisabled", "isInvisible", "width", "minWidth", "maxWidth", "height", "minHeight", "marginTop", "marginRight", "marginBottom", "marginLeft", "path", "tooltipPosition", "tooltip"], outputs: ["onClick"] }, { kind: "component", type: i2.CoerModal, selector: "coer-modal", inputs: ["id", "title", "icon", "showCloseButton", "width", "height", "maxHeight"], outputs: ["onOpen", "onClose"] }, { kind: "component", type: i2.CoerSidenav, selector: "coer-sidenav", outputs: ["onMenuSelected"] }, { kind: "component", type: i2.CoerTextBox, selector: "coer-textbox", inputs: ["value", "id", "button", "label", "placeholder", "minLength", "maxLength", "showSearchIcon", "showClearIcon", "width", "minWidth", "maxWidth", "marginTop", "marginRight", "marginBottom", "marginLeft", "isInvalid", "isValid", "isDisabled", "isInvisible", "isReadonly", "isLoading", "selectOnFocus", "textPosition"], outputs: ["onKeyupEnter", "onInput", "onClickClear", "onClickButton"] }, { kind: "component", type: i2.CoerToolbar, selector: "coer-toolbar", inputs: ["appName", "user", "image", "menu"], outputs: ["onClickMenu", "onClickUser", "onClickOption"] }, { kind: "directive", type: i3.CoerRefDirective, selector: "[coerRef]", inputs: ["coerRef", "title", "icon", "isDisabled", "show", "tooltip"] }, { kind: "component", type: i4.CoerAlert, selector: "coer-alert" }, { kind: "component", type: LoginPage, selector: "login-page", inputs: ["title"], outputs: ["onLogin"] }] }); }
149
207
  }
150
208
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: COERSystem, decorators: [{
151
209
  type: Component,
152
- args: [{ selector: 'coer-system', standalone: false, template: "@if(IsNotNull(user())) {\r\n <coer-toolbar \r\n [appName]=\"appName()\" \r\n [user]=\"user()\" \r\n [image]=\"image()\" \r\n [menu]=\"toolbarMenu()\"\r\n (onClickMenu)=\"sidenav.Toggle()\"\r\n (onClickUser)=\"onClickUser.emit()\"\r\n (onClickOption)=\"onClickOption.emit($event)\"\r\n ></coer-toolbar>\r\n \r\n <coer-sidenav #sidenav> \r\n <section> \r\n <ng-content></ng-content>\r\n </section> \r\n </coer-sidenav>\r\n}\r\n\r\n@else {\r\n <login-page \r\n #loginPage\r\n [title]=\"title\" \r\n (onLogin)=\"Login($event)\"\r\n ></login-page>\r\n}\r\n\r\n<coer-alert></coer-alert>" }]
210
+ args: [{ selector: 'coer-system', standalone: false, template: "@if(IsNotNull(user())) {\r\n <coer-toolbar \r\n [appName]=\"appName()\" \r\n [user]=\"user()\" \r\n [image]=\"image()\" \r\n [menu]=\"toolbarMenu()\"\r\n (onClickMenu)=\"sidenav.Toggle()\"\r\n (onClickUser)=\"onClickUser.emit()\"\r\n (onClickOption)=\"SelectedOption($event)\"\r\n ></coer-toolbar>\r\n \r\n <coer-sidenav #sidenav> \r\n <section> \r\n <ng-content></ng-content>\r\n </section> \r\n </coer-sidenav>\r\n}\r\n\r\n@else {\r\n <login-page \r\n #loginPage\r\n [title]=\"title\" \r\n (onLogin)=\"Login($event)\"\r\n ></login-page>\r\n} \r\n\r\n<!-- Modal Password -->\r\n<coer-modal #modalPassword title=\"Reset Password\" icon=\"fa-solid fa-lock\" (onClose)=\"password = ''; passwordConfirm = '';\">\r\n <coer-textbox\r\n #inputPassword\r\n label=\"New Password\"\r\n [(ngModel)]=\"password\"\r\n [isLoading]=\"_isLoading()\"\r\n [selectOnFocus]=\"true\"\r\n marginBottom=\"15px\"\r\n (onKeyupEnter)=\"Focus()\"\r\n ></coer-textbox>\r\n\r\n <coer-textbox\r\n #inputPasswordConfirm\r\n label=\"Confirm Password\"\r\n [(ngModel)]=\"passwordConfirm\"\r\n [isLoading]=\"_isLoading()\"\r\n [selectOnFocus]=\"true\" \r\n (onKeyupEnter)=\"Focus()\"\r\n ></coer-textbox>\r\n\r\n <ng-template coerRef=\"footer\">\r\n <!-- Reset Button -->\r\n <coer-button\r\n #resetButton\r\n color=\"dark\" \r\n [isDisabled]=\"!enableButton\"\r\n [isLoading]=\"_isLoading()\" \r\n (onClick)=\"ResetPassword()\"\r\n > Reset </coer-button>\r\n </ng-template>\r\n</coer-modal>\r\n\r\n\r\n<coer-alert></coer-alert>" }]
153
211
  }], propDecorators: { navigation: [{
154
212
  type: Input
155
213
  }] } });
@@ -170,6 +228,7 @@ class PagesModule {
170
228
  RouterModule,
171
229
  FormsModule,
172
230
  ComponentsModule,
231
+ DirectivesModule,
173
232
  CoerAlert], exports: [COERSystem,
174
233
  CoerMenuPage,
175
234
  HomePage,
@@ -178,6 +237,7 @@ class PagesModule {
178
237
  RouterModule,
179
238
  FormsModule,
180
239
  ComponentsModule,
240
+ DirectivesModule,
181
241
  CoerAlert] }); }
182
242
  }
183
243
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImport: i0, type: PagesModule, decorators: [{
@@ -188,6 +248,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.0.1", ngImpor
188
248
  RouterModule,
189
249
  FormsModule,
190
250
  ComponentsModule,
251
+ DirectivesModule,
191
252
  CoerAlert
192
253
  ],
193
254
  declarations: [
@@ -1 +1 @@
1
- {"version":3,"file":"coer-elements-pages.mjs","sources":["../../../projects/coer-elements/pages/lib/coer-menu/coer-menu.component.ts","../../../projects/coer-elements/pages/lib/coer-menu/coer-menu.component.html","../../../projects/coer-elements/pages/lib/home/home.component.ts","../../../projects/coer-elements/pages/lib/home/home.component.html","../../../projects/coer-elements/pages/lib/coer-loading/loading.component.ts","../../../projects/coer-elements/pages/lib/coer-loading/loading.component.html","../../../projects/coer-elements/pages/lib/coer-system/login/login.component.ts","../../../projects/coer-elements/pages/lib/coer-system/login/login.component.html","../../../projects/coer-elements/pages/lib/coer-system/coer-system.component.ts","../../../projects/coer-elements/pages/lib/coer-system/coer-system.component.html","../../../projects/coer-elements/pages/lib/pages.module.ts","../../../projects/coer-elements/pages/coer-elements-pages.ts"],"sourcesContent":["import { Component, effect, WritableSignal } from '@angular/core'; \r\nimport { Page, Tools } from 'coer-elements/tools'; \r\nimport { menuSelectedSIGNAL } from 'coer-elements/signals';\r\nimport { IMenuSelected } from 'coer-elements/interfaces';\r\n\r\n\r\n@Component({\r\n selector: 'coer-menu-page',\r\n templateUrl: './coer-menu.component.html', \r\n styleUrl: './coer-menu.component.scss',\r\n standalone: false\r\n})\r\nexport class CoerMenuPage extends Page { \r\n \r\n //signals\r\n protected menu: WritableSignal<IMenuSelected | null> = menuSelectedSIGNAL;\r\n\r\n constructor() { \r\n super('coer-menu'); \r\n \r\n effect(() => {\r\n const menu = menuSelectedSIGNAL();\r\n if(Tools.IsNotNull(menu)) this.SetPageFilters({ menu }); \r\n });\r\n } \r\n\r\n\r\n /** */\r\n protected override RunPage() {\r\n if (Tools.IsNotNull(this.pageFilters) && Tools.IsNotNull(this.pageFilters.menu)) { \r\n menuSelectedSIGNAL.set(this.pageFilters.menu); \r\n this.SetPageName(this.pageFilters.menu.label);\r\n } \r\n } \r\n}","<!-- Title -->\r\n<coer-page-title\r\n title=\"Menu\"\r\n [breadcrumbs]=\"breadcrumbs\"\r\n [goBack]=\"goBack\"\r\n></coer-page-title>\r\n\r\n@if(IsNotNull(menu())) {\r\n <div class=\"flex-wrap-left fade-in\">\r\n @for(page of menu()!.items; track page.id) { \r\n <a [routerLink]=\"(page.path!.length > 0) ? page.path : null\" class=\"flex-wrap-item\">\r\n @if(IsNotOnlyWhiteSpace(page?.icon)) {\r\n <i [class]=\"page!.icon\"></i>\r\n }\r\n <span> {{ page.label }} </span>\r\n </a>\r\n }\r\n </div>\r\n}","import { Component } from '@angular/core'; \r\nimport { Page } from 'coer-elements/tools'; \r\n\r\n\r\n@Component({\r\n selector: 'home-page',\r\n templateUrl: './home.component.html', \r\n styleUrl: './home.component.scss',\r\n standalone: false\r\n})\r\nexport class HomePage extends Page { \r\n \r\n constructor() { \r\n super('home'); \r\n }\r\n}","<!-- Title -->\r\n<coer-page-title\r\n title=\"Home\"\r\n [breadcrumbs]=\"breadcrumbs\"\r\n [goBack]=\"goBack\"\r\n></coer-page-title> \r\n\r\n<section class=\"coer-container\"> \r\n</section>","import { Component } from '@angular/core'; \r\n\r\n@Component({\r\n selector: 'loading-page',\r\n templateUrl: './loading.component.html', \r\n styleUrl: './loading.component.scss',\r\n standalone: false\r\n})\r\nexport class LoadingPage { \r\n \r\n}","Loading...","import { Component, input, output, viewChild, WritableSignal } from '@angular/core'; \r\nimport { CoerTextBox } from 'coer-elements/components';\r\nimport { ILogIn } from 'coer-elements/interfaces';\r\nimport { isLoadingSIGNAL } from 'coer-elements/signals';\r\nimport { Tools } from 'coer-elements/tools';\r\n\r\n\r\n@Component({\r\n selector: 'login-page',\r\n templateUrl: './login.component.html', \r\n styleUrl: './login.component.scss',\r\n standalone: false\r\n})\r\nexport class LoginPage { \r\n\r\n //Elements\r\n protected inputUser = viewChild.required<CoerTextBox>('inputUser');\r\n protected inputPassword = viewChild.required<CoerTextBox>('inputPassword');\r\n\r\n //Signals\r\n protected isLoading: WritableSignal<boolean> = isLoadingSIGNAL;\r\n\r\n //Inputs \r\n public title = input<string>(''); \r\n protected user: string = '';\r\n protected password: string = '';\r\n\r\n //Outputs \r\n public onLogin = output<ILogIn>();\r\n\r\n //Generic Tools\r\n protected IsNotOnlyWhiteSpace = Tools.IsNotOnlyWhiteSpace; \r\n\r\n //getter\r\n protected get enableButton() {\r\n return Tools.IsNotOnlyWhiteSpace(this.user)\r\n && Tools.IsNotOnlyWhiteSpace(this.password)\r\n && this.password.length >= 6\r\n }\r\n\r\n \r\n /** */\r\n protected Login() {\r\n this.onLogin.emit({ \r\n user: this.user, \r\n password: this.password \r\n });\r\n }\r\n\r\n\r\n /** */\r\n public FocusUser() {\r\n this.inputUser().Focus();\r\n }\r\n\r\n\r\n /** */\r\n public FocusPassword() {\r\n this.inputPassword().Select();\r\n }\r\n}","<div class=\"login-container\">\r\n\r\n <!-- Title -->\r\n <div class=\"title\">\r\n {{ title() }}\r\n </div>\r\n \r\n <!-- User -->\r\n <coer-textbox\r\n #inputUser\r\n label=\"User\"\r\n [(ngModel)]=\"user\"\r\n [isLoading]=\"isLoading()\" \r\n marginTop=\"35px\"\r\n marginBottom=\"35px\"\r\n [maxLength]=\"15\"\r\n (onKeyupEnter)=\"inputPassword.Select()\"\r\n ></coer-textbox>\r\n \r\n <!-- Password -->\r\n <coer-textbox\r\n #inputPassword\r\n label=\"Password\"\r\n [(ngModel)]=\"password\"\r\n [isLoading]=\"isLoading()\"\r\n [selectOnFocus]=\"true\"\r\n marginBottom=\"35px\"\r\n [maxLength]=\"20\"\r\n (onKeyupEnter)=\"Login()\"\r\n ></coer-textbox> \r\n \r\n <!-- Login -->\r\n <div class=\"text-center\">\r\n <coer-button\r\n color=\"dark\" \r\n [isDisabled]=\"!enableButton\"\r\n [isLoading]=\"isLoading()\"\r\n (onClick)=\"Login()\"\r\n > Login </coer-button>\r\n </div>\r\n</div>","import { Component, Input, input, output, viewChild } from '@angular/core'; \r\nimport { navigationSIGNAL } from 'coer-elements/signals';\r\nimport { ILogIn, IMenu, IToolbarMenu } from 'coer-elements/interfaces';\r\nimport { CoerSidenav } from 'coer-elements/components';\r\nimport { Menu, Tools } from 'coer-elements/tools';\r\nimport { LoginPage } from './login/login.component';\r\n\r\n@Component({\r\n selector: 'coer-system',\r\n templateUrl: './coer-system.component.html', \r\n styleUrl: './coer-system.component.scss', \r\n standalone: false\r\n})\r\nexport class COERSystem { \r\n\r\n //Elements\r\n protected sidenav = viewChild.required<CoerSidenav>('sidenav');\r\n protected loginPage = viewChild.required<LoginPage>('loginPage');\r\n\r\n //Variables\r\n protected title: string = 'COER System'; \r\n\r\n //Inputs\r\n public appName = input<string>(''); \r\n public user = input<any>(null); \r\n public image = input<string | null>(null); \r\n public toolbarMenu = input<IToolbarMenu[]>([]); \r\n\r\n @Input() set navigation(value: IMenu[]) {\r\n if(Tools.IsNotNull(value)) {\r\n navigationSIGNAL.set(value); \r\n \r\n Tools.Sleep(1000, 'getnavigation').then(() => { \r\n if (Tools.IsNotNull(this.user())) {\r\n this.sidenav().SetActiveLink(Menu.GetSelectedOption());\r\n }\r\n }); \r\n } \r\n } \r\n\r\n //Outputs \r\n public onLogin = output<ILogIn>(); \r\n public onClickUser = output<void>();\r\n public onClickOption = output<IToolbarMenu>();\r\n\r\n //Generic Tools\r\n protected IsNotNull = Tools.IsNotNull;\r\n\r\n /** */\r\n protected Login(login: ILogIn) {\r\n this.onLogin.emit(login); \r\n }\r\n\r\n\r\n /** */\r\n public FocusUser() {\r\n this.loginPage().FocusUser();\r\n }\r\n\r\n\r\n /** */\r\n public FocusPassword() {\r\n this.loginPage().FocusPassword();\r\n }\r\n}","@if(IsNotNull(user())) {\r\n <coer-toolbar \r\n [appName]=\"appName()\" \r\n [user]=\"user()\" \r\n [image]=\"image()\" \r\n [menu]=\"toolbarMenu()\"\r\n (onClickMenu)=\"sidenav.Toggle()\"\r\n (onClickUser)=\"onClickUser.emit()\"\r\n (onClickOption)=\"onClickOption.emit($event)\"\r\n ></coer-toolbar>\r\n \r\n <coer-sidenav #sidenav> \r\n <section> \r\n <ng-content></ng-content>\r\n </section> \r\n </coer-sidenav>\r\n}\r\n\r\n@else {\r\n <login-page \r\n #loginPage\r\n [title]=\"title\" \r\n (onLogin)=\"Login($event)\"\r\n ></login-page>\r\n}\r\n\r\n<coer-alert></coer-alert>","import { NgModule } from '@angular/core'; \r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n//Pages \r\nimport { CoerMenuPage } from './coer-menu/coer-menu.component';\r\nimport { ComponentsModule } from 'coer-elements/components';\r\nimport { HomePage } from './home/home.component';\r\nimport { LoadingPage } from './coer-loading/loading.component';\r\nimport { COERSystem } from './coer-system/coer-system.component';\r\nimport { LoginPage } from './coer-system/login/login.component';\r\nimport { CoerAlert } from 'coer-elements/tools';\r\n\r\nexport const ROUTES: any = [ \r\n { path: 'menu', component: CoerMenuPage },\r\n { path: 'loading', component: LoadingPage },\r\n { path: 'home', component: HomePage },\r\n { path: '**', redirectTo: 'home' } \r\n];\r\n\r\n@NgModule({ \r\n imports: [\r\n CommonModule, \r\n RouterModule, \r\n FormsModule, \r\n ComponentsModule, \r\n CoerAlert\r\n ],\r\n declarations: [\r\n COERSystem,\r\n LoginPage,\r\n CoerMenuPage,\r\n HomePage,\r\n LoadingPage,\r\n ],\r\n exports: [ \r\n COERSystem, \r\n CoerMenuPage,\r\n HomePage,\r\n LoadingPage,\r\n ]\r\n})\r\nexport class PagesModule { }","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i2","i3.LoginPage"],"mappings":"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"}
1
+ {"version":3,"file":"coer-elements-pages.mjs","sources":["../../../projects/coer-elements/pages/lib/coer-menu/coer-menu.component.ts","../../../projects/coer-elements/pages/lib/coer-menu/coer-menu.component.html","../../../projects/coer-elements/pages/lib/home/home.component.ts","../../../projects/coer-elements/pages/lib/home/home.component.html","../../../projects/coer-elements/pages/lib/coer-loading/loading.component.ts","../../../projects/coer-elements/pages/lib/coer-loading/loading.component.html","../../../projects/coer-elements/pages/lib/coer-system/login/login.component.ts","../../../projects/coer-elements/pages/lib/coer-system/login/login.component.html","../../../projects/coer-elements/pages/lib/coer-system/coer-system.component.ts","../../../projects/coer-elements/pages/lib/coer-system/coer-system.component.html","../../../projects/coer-elements/pages/lib/pages.module.ts","../../../projects/coer-elements/pages/coer-elements-pages.ts"],"sourcesContent":["import { Component, effect, WritableSignal } from '@angular/core'; \r\nimport { Page, Tools } from 'coer-elements/tools'; \r\nimport { menuSelectedSIGNAL } from 'coer-elements/signals';\r\nimport { IMenuSelected } from 'coer-elements/interfaces';\r\n\r\n\r\n@Component({\r\n selector: 'coer-menu-page',\r\n templateUrl: './coer-menu.component.html', \r\n styleUrl: './coer-menu.component.scss',\r\n standalone: false\r\n})\r\nexport class CoerMenuPage extends Page { \r\n \r\n //signals\r\n protected menu: WritableSignal<IMenuSelected | null> = menuSelectedSIGNAL;\r\n\r\n constructor() { \r\n super('coer-menu'); \r\n \r\n effect(() => {\r\n const menu = menuSelectedSIGNAL();\r\n if(Tools.IsNotNull(menu)) this.SetPageFilters({ menu }); \r\n });\r\n } \r\n\r\n\r\n /** */\r\n protected override RunPage() {\r\n if (Tools.IsNotNull(this.pageFilters) && Tools.IsNotNull(this.pageFilters.menu)) { \r\n menuSelectedSIGNAL.set(this.pageFilters.menu); \r\n this.SetPageName(this.pageFilters.menu.label);\r\n } \r\n } \r\n}","<!-- Title -->\r\n<coer-page-title\r\n title=\"Menu\"\r\n [breadcrumbs]=\"breadcrumbs\"\r\n [goBack]=\"goBack\"\r\n></coer-page-title>\r\n\r\n@if(IsNotNull(menu())) {\r\n <div class=\"flex-wrap-left fade-in\">\r\n @for(page of menu()!.items; track page.id) { \r\n <a [routerLink]=\"(page.path!.length > 0) ? page.path : null\" class=\"flex-wrap-item\">\r\n @if(IsNotOnlyWhiteSpace(page?.icon)) {\r\n <i [class]=\"page!.icon\"></i>\r\n }\r\n <span> {{ page.label }} </span>\r\n </a>\r\n }\r\n </div>\r\n}","import { Component } from '@angular/core'; \r\nimport { Page } from 'coer-elements/tools'; \r\n\r\n\r\n@Component({\r\n selector: 'home-page',\r\n templateUrl: './home.component.html', \r\n styleUrl: './home.component.scss',\r\n standalone: false\r\n})\r\nexport class HomePage extends Page { \r\n \r\n constructor() { \r\n super('home'); \r\n }\r\n}","<!-- Title -->\r\n<coer-page-title\r\n title=\"Home\"\r\n [breadcrumbs]=\"breadcrumbs\"\r\n [goBack]=\"goBack\"\r\n></coer-page-title> \r\n\r\n<section class=\"coer-container\"> \r\n</section>","import { Component } from '@angular/core'; \r\n\r\n@Component({\r\n selector: 'loading-page',\r\n templateUrl: './loading.component.html', \r\n styleUrl: './loading.component.scss',\r\n standalone: false\r\n})\r\nexport class LoadingPage { \r\n \r\n}","Loading...","import { Component, input, output, viewChild, WritableSignal } from '@angular/core'; \r\nimport { CoerTextBox } from 'coer-elements/components';\r\nimport { ILogIn } from 'coer-elements/interfaces';\r\nimport { isLoadingSIGNAL } from 'coer-elements/signals';\r\nimport { Tools } from 'coer-elements/tools';\r\n\r\n\r\n@Component({\r\n selector: 'login-page',\r\n templateUrl: './login.component.html', \r\n styleUrl: './login.component.scss',\r\n standalone: false\r\n})\r\nexport class LoginPage { \r\n\r\n //Elements\r\n protected inputUser = viewChild.required<CoerTextBox>('inputUser');\r\n protected inputPassword = viewChild.required<CoerTextBox>('inputPassword');\r\n\r\n //Signals\r\n protected isLoading: WritableSignal<boolean> = isLoadingSIGNAL;\r\n\r\n //Inputs \r\n public title = input<string>(''); \r\n protected user: string = '';\r\n protected password: string = '';\r\n\r\n //Outputs \r\n public onLogin = output<ILogIn>();\r\n\r\n //Generic Tools\r\n protected IsNotOnlyWhiteSpace = Tools.IsNotOnlyWhiteSpace; \r\n\r\n //getter\r\n protected get enableButton() {\r\n return Tools.IsNotOnlyWhiteSpace(this.user)\r\n && Tools.IsNotOnlyWhiteSpace(this.password)\r\n && this.password.length >= 6\r\n }\r\n\r\n \r\n /** */\r\n protected Login() {\r\n if (this.enableButton) {\r\n this.onLogin.emit({ \r\n user: this.user, \r\n password: this.password \r\n });\r\n } \r\n }\r\n\r\n\r\n /** */\r\n public FocusUser() {\r\n this.inputUser().Focus();\r\n }\r\n\r\n\r\n /** */\r\n public FocusPassword() {\r\n this.inputPassword().Select();\r\n }\r\n}","<div class=\"login-container\">\r\n\r\n <!-- Title -->\r\n <div class=\"title\">\r\n {{ title() }}\r\n </div>\r\n \r\n <!-- User -->\r\n <coer-textbox\r\n #inputUser\r\n label=\"User\"\r\n [(ngModel)]=\"user\"\r\n [isLoading]=\"isLoading()\" \r\n marginTop=\"35px\"\r\n marginBottom=\"35px\"\r\n [maxLength]=\"15\"\r\n (onKeyupEnter)=\"inputPassword.Select()\"\r\n ></coer-textbox>\r\n \r\n <!-- Password -->\r\n <coer-textbox\r\n #inputPassword\r\n label=\"Password\"\r\n [(ngModel)]=\"password\"\r\n [isLoading]=\"isLoading()\"\r\n [selectOnFocus]=\"true\"\r\n marginBottom=\"35px\"\r\n [maxLength]=\"20\"\r\n (onKeyupEnter)=\"Login()\"\r\n ></coer-textbox> \r\n \r\n <!-- Login -->\r\n <div class=\"text-center\">\r\n <coer-button\r\n color=\"dark\" \r\n [isDisabled]=\"!enableButton\"\r\n [isLoading]=\"isLoading()\"\r\n (onClick)=\"Login()\"\r\n > Login </coer-button>\r\n </div>\r\n</div>","import { Component, Input, input, output, viewChild, WritableSignal } from '@angular/core'; \r\nimport { isLoadingSIGNAL, navigationSIGNAL } from 'coer-elements/signals';\r\nimport { ILogIn, IMenu, IToolbarMenu } from 'coer-elements/interfaces';\r\nimport { CoerButton, CoerModal, CoerSidenav, CoerTextBox } from 'coer-elements/components';\r\nimport { Menu, Tools, User } from 'coer-elements/tools';\r\nimport { LoginPage } from './login/login.component';\r\n\r\n@Component({\r\n selector: 'coer-system',\r\n templateUrl: './coer-system.component.html', \r\n styleUrl: './coer-system.component.scss', \r\n standalone: false\r\n})\r\nexport class COERSystem { \r\n\r\n //Elements\r\n protected sidenav = viewChild.required<CoerSidenav>('sidenav');\r\n protected loginPage = viewChild.required<LoginPage>('loginPage'); \r\n protected modal = viewChild.required<CoerModal>('modalPassword');\r\n protected inputPassword = viewChild.required<CoerTextBox>('inputPassword');\r\n protected inputPasswordConfirm = viewChild.required<CoerTextBox>('inputPasswordConfirm');\r\n protected resetButton = viewChild.required<CoerButton>('resetButton');\r\n\r\n //Variables\r\n protected readonly title: string = 'COER System'; \r\n protected _isLoading: WritableSignal<boolean> = isLoadingSIGNAL; \r\n protected password: string = '';\r\n protected passwordConfirm: string = '';\r\n\r\n //Inputs\r\n public appName = input<string>(''); \r\n public user = input<any>(null); \r\n public image = input<string | null>(null); \r\n public toolbarMenu = input<IToolbarMenu[]>([]); \r\n\r\n @Input() set navigation(value: IMenu[]) {\r\n if(Tools.IsNotNull(value)) {\r\n navigationSIGNAL.set(value); \r\n \r\n Tools.Sleep(1000, 'getnavigation').then(() => { \r\n if (Tools.IsNotNull(this.user())) {\r\n this.sidenav().SetActiveLink(Menu.GetSelectedOption());\r\n }\r\n }); \r\n } \r\n } \r\n\r\n //Outputs \r\n public onLogin = output<ILogIn>(); \r\n public onClickUser = output<void>();\r\n public onClickOption = output<IToolbarMenu>();\r\n public onResetPassword = output<string>();\r\n\r\n //Generic Tools\r\n protected IsNotNull = Tools.IsNotNull;\r\n\r\n /** */\r\n protected Login(login: ILogIn) {\r\n this.onLogin.emit(login); \r\n }\r\n\r\n\r\n //getter\r\n protected get enableButton() {\r\n return Tools.IsNotOnlyWhiteSpace(this.user)\r\n && Tools.IsNotOnlyWhiteSpace(this.password)\r\n && Tools.IsNotOnlyWhiteSpace(this.passwordConfirm)\r\n && this.password.length >= 5\r\n && this.passwordConfirm.length >= 5\r\n && !this._isLoading()\r\n && this.password === this.passwordConfirm\r\n }\r\n\r\n\r\n /** */\r\n protected async SelectedOption(menu: IToolbarMenu) {\r\n switch(menu.label) {\r\n case 'Reset Password': {\r\n this.modal().Open();\r\n await Tools.Sleep(1000);\r\n this.Focus();\r\n break;\r\n }\r\n\r\n case 'Log Out': {\r\n User.LogOut();\r\n break;\r\n } \r\n }\r\n }\r\n\r\n\r\n /** */\r\n public FocusUser() {\r\n this.loginPage().FocusUser();\r\n }\r\n\r\n\r\n /** */\r\n public FocusPassword() {\r\n this.loginPage().FocusPassword();\r\n }\r\n\r\n\r\n /** */\r\n protected Focus() { \r\n if(Tools.IsOnlyWhiteSpace(this.password)) {\r\n this.inputPassword().Focus();\r\n return;\r\n }\r\n\r\n if(Tools.IsOnlyWhiteSpace(this.passwordConfirm)) { \r\n this.inputPasswordConfirm().Focus();\r\n return;\r\n } \r\n \r\n if(this.enableButton) {\r\n this.resetButton().Focus();\r\n } \r\n }\r\n\r\n\r\n /** */\r\n protected ResetPassword() { \r\n if(this.enableButton) {\r\n const password = this.password;\r\n this.onResetPassword.emit(password);\r\n } \r\n }\r\n}","@if(IsNotNull(user())) {\r\n <coer-toolbar \r\n [appName]=\"appName()\" \r\n [user]=\"user()\" \r\n [image]=\"image()\" \r\n [menu]=\"toolbarMenu()\"\r\n (onClickMenu)=\"sidenav.Toggle()\"\r\n (onClickUser)=\"onClickUser.emit()\"\r\n (onClickOption)=\"SelectedOption($event)\"\r\n ></coer-toolbar>\r\n \r\n <coer-sidenav #sidenav> \r\n <section> \r\n <ng-content></ng-content>\r\n </section> \r\n </coer-sidenav>\r\n}\r\n\r\n@else {\r\n <login-page \r\n #loginPage\r\n [title]=\"title\" \r\n (onLogin)=\"Login($event)\"\r\n ></login-page>\r\n} \r\n\r\n<!-- Modal Password -->\r\n<coer-modal #modalPassword title=\"Reset Password\" icon=\"fa-solid fa-lock\" (onClose)=\"password = ''; passwordConfirm = '';\">\r\n <coer-textbox\r\n #inputPassword\r\n label=\"New Password\"\r\n [(ngModel)]=\"password\"\r\n [isLoading]=\"_isLoading()\"\r\n [selectOnFocus]=\"true\"\r\n marginBottom=\"15px\"\r\n (onKeyupEnter)=\"Focus()\"\r\n ></coer-textbox>\r\n\r\n <coer-textbox\r\n #inputPasswordConfirm\r\n label=\"Confirm Password\"\r\n [(ngModel)]=\"passwordConfirm\"\r\n [isLoading]=\"_isLoading()\"\r\n [selectOnFocus]=\"true\" \r\n (onKeyupEnter)=\"Focus()\"\r\n ></coer-textbox>\r\n\r\n <ng-template coerRef=\"footer\">\r\n <!-- Reset Button -->\r\n <coer-button\r\n #resetButton\r\n color=\"dark\" \r\n [isDisabled]=\"!enableButton\"\r\n [isLoading]=\"_isLoading()\" \r\n (onClick)=\"ResetPassword()\"\r\n > Reset </coer-button>\r\n </ng-template>\r\n</coer-modal>\r\n\r\n\r\n<coer-alert></coer-alert>","import { NgModule } from '@angular/core'; \r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\nimport { RouterModule } from '@angular/router';\r\n\r\n//Pages \r\nimport { CoerMenuPage } from './coer-menu/coer-menu.component';\r\nimport { ComponentsModule } from 'coer-elements/components';\r\nimport { DirectivesModule } from 'coer-elements/directives';\r\nimport { HomePage } from './home/home.component';\r\nimport { LoadingPage } from './coer-loading/loading.component';\r\nimport { COERSystem } from './coer-system/coer-system.component';\r\nimport { LoginPage } from './coer-system/login/login.component';\r\nimport { CoerAlert } from 'coer-elements/tools';\r\n\r\nexport const ROUTES: any = [ \r\n { path: 'menu', component: CoerMenuPage },\r\n { path: 'loading', component: LoadingPage },\r\n { path: 'home', component: HomePage },\r\n { path: '**', redirectTo: 'home' } \r\n];\r\n\r\n@NgModule({ \r\n imports: [\r\n CommonModule, \r\n RouterModule, \r\n FormsModule, \r\n ComponentsModule, \r\n DirectivesModule,\r\n CoerAlert\r\n ],\r\n declarations: [\r\n COERSystem,\r\n LoginPage,\r\n CoerMenuPage,\r\n HomePage,\r\n LoadingPage,\r\n ],\r\n exports: [ \r\n COERSystem, \r\n CoerMenuPage,\r\n HomePage,\r\n LoadingPage,\r\n ]\r\n})\r\nexport class PagesModule { }","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":["i1","i5.LoginPage"],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "coer-elements",
3
- "version": "0.0.98",
3
+ "version": "0.0.99",
4
4
  "author": "Christian Omar Escamilla Rodríguez",
5
5
  "keywords": [
6
6
  "COER",
@@ -1,11 +1,19 @@
1
+ import { WritableSignal } from '@angular/core';
1
2
  import { ILogIn, IMenu, IToolbarMenu } from 'coer-elements/interfaces';
2
- import { CoerSidenav } from 'coer-elements/components';
3
+ import { CoerButton, CoerModal, CoerSidenav, CoerTextBox } from 'coer-elements/components';
3
4
  import { LoginPage } from './login/login.component';
4
5
  import * as i0 from "@angular/core";
5
6
  export declare class COERSystem {
6
7
  protected sidenav: import("@angular/core").Signal<CoerSidenav>;
7
8
  protected loginPage: import("@angular/core").Signal<LoginPage>;
8
- protected title: string;
9
+ protected modal: import("@angular/core").Signal<CoerModal>;
10
+ protected inputPassword: import("@angular/core").Signal<CoerTextBox>;
11
+ protected inputPasswordConfirm: import("@angular/core").Signal<CoerTextBox>;
12
+ protected resetButton: import("@angular/core").Signal<CoerButton>;
13
+ protected readonly title: string;
14
+ protected _isLoading: WritableSignal<boolean>;
15
+ protected password: string;
16
+ protected passwordConfirm: string;
9
17
  appName: import("@angular/core").InputSignal<string>;
10
18
  user: import("@angular/core").InputSignal<any>;
11
19
  image: import("@angular/core").InputSignal<string | null>;
@@ -14,13 +22,21 @@ export declare class COERSystem {
14
22
  onLogin: import("@angular/core").OutputEmitterRef<ILogIn>;
15
23
  onClickUser: import("@angular/core").OutputEmitterRef<void>;
16
24
  onClickOption: import("@angular/core").OutputEmitterRef<IToolbarMenu>;
25
+ onResetPassword: import("@angular/core").OutputEmitterRef<string>;
17
26
  protected IsNotNull: <T>(value: T | null | undefined) => boolean;
18
27
  /** */
19
28
  protected Login(login: ILogIn): void;
29
+ protected get enableButton(): boolean;
30
+ /** */
31
+ protected SelectedOption(menu: IToolbarMenu): Promise<void>;
20
32
  /** */
21
33
  FocusUser(): void;
22
34
  /** */
23
35
  FocusPassword(): void;
36
+ /** */
37
+ protected Focus(): void;
38
+ /** */
39
+ protected ResetPassword(): void;
24
40
  static ɵfac: i0.ɵɵFactoryDeclaration<COERSystem, never>;
25
- static ɵcmp: i0.ɵɵComponentDeclaration<COERSystem, "coer-system", never, { "appName": { "alias": "appName"; "required": false; "isSignal": true; }; "user": { "alias": "user"; "required": false; "isSignal": true; }; "image": { "alias": "image"; "required": false; "isSignal": true; }; "toolbarMenu": { "alias": "toolbarMenu"; "required": false; "isSignal": true; }; "navigation": { "alias": "navigation"; "required": false; }; }, { "onLogin": "onLogin"; "onClickUser": "onClickUser"; "onClickOption": "onClickOption"; }, never, ["*"], false, never>;
41
+ static ɵcmp: i0.ɵɵComponentDeclaration<COERSystem, "coer-system", never, { "appName": { "alias": "appName"; "required": false; "isSignal": true; }; "user": { "alias": "user"; "required": false; "isSignal": true; }; "image": { "alias": "image"; "required": false; "isSignal": true; }; "toolbarMenu": { "alias": "toolbarMenu"; "required": false; "isSignal": true; }; "navigation": { "alias": "navigation"; "required": false; }; }, { "onLogin": "onLogin"; "onClickUser": "onClickUser"; "onClickOption": "onClickOption"; "onResetPassword": "onResetPassword"; }, never, ["*"], false, never>;
26
42
  }
@@ -8,10 +8,11 @@ import * as i6 from "@angular/common";
8
8
  import * as i7 from "@angular/router";
9
9
  import * as i8 from "@angular/forms";
10
10
  import * as i9 from "coer-elements/components";
11
- import * as i10 from "coer-elements/tools";
11
+ import * as i10 from "coer-elements/directives";
12
+ import * as i11 from "coer-elements/tools";
12
13
  export declare const ROUTES: any;
13
14
  export declare class PagesModule {
14
15
  static ɵfac: i0.ɵɵFactoryDeclaration<PagesModule, never>;
15
- static ɵmod: i0.ɵɵNgModuleDeclaration<PagesModule, [typeof i1.COERSystem, typeof i2.LoginPage, typeof i3.CoerMenuPage, typeof i4.HomePage, typeof i5.LoadingPage], [typeof i6.CommonModule, typeof i7.RouterModule, typeof i8.FormsModule, typeof i9.ComponentsModule, typeof i10.CoerAlert], [typeof i1.COERSystem, typeof i3.CoerMenuPage, typeof i4.HomePage, typeof i5.LoadingPage]>;
16
+ static ɵmod: i0.ɵɵNgModuleDeclaration<PagesModule, [typeof i1.COERSystem, typeof i2.LoginPage, typeof i3.CoerMenuPage, typeof i4.HomePage, typeof i5.LoadingPage], [typeof i6.CommonModule, typeof i7.RouterModule, typeof i8.FormsModule, typeof i9.ComponentsModule, typeof i10.DirectivesModule, typeof i11.CoerAlert], [typeof i1.COERSystem, typeof i3.CoerMenuPage, typeof i4.HomePage, typeof i5.LoadingPage]>;
16
17
  static ɵinj: i0.ɵɵInjectorDeclaration<PagesModule>;
17
18
  }