@cleavelandprice/ngx-lib 3.14.2 → 3.14.3

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.
Files changed (74) hide show
  1. package/README.md +5 -5
  2. package/active-directory/gui/components/user-form-field/user-form-field.component.d.ts +3 -3
  3. package/authentication/token/gui/components/login/login.component.d.ts +2 -2
  4. package/dialog/components/base/base.component.d.ts +2 -2
  5. package/esm2022/active-directory/active-directory.module.mjs +4 -4
  6. package/esm2022/active-directory/gui/components/user-chooser/user-chooser.component.mjs +5 -5
  7. package/esm2022/active-directory/gui/components/user-form-field/user-form-field.component.mjs +5 -5
  8. package/esm2022/active-directory/gui/gui.module.mjs +5 -5
  9. package/esm2022/active-directory/services/active-directory.service.mjs +3 -3
  10. package/esm2022/authentication/authentication.base.module.mjs +4 -4
  11. package/esm2022/authentication/object/object.module.mjs +4 -4
  12. package/esm2022/authentication/object/services/authentication.service.mjs +3 -3
  13. package/esm2022/authentication/token/gui/components/login/login.component.mjs +5 -5
  14. package/esm2022/authentication/token/gui/components/login-form/login-form.component.mjs +5 -5
  15. package/esm2022/authentication/token/gui/services/authentication.service.mjs +3 -3
  16. package/esm2022/authentication/token/gui/token-gui.module.mjs +4 -4
  17. package/esm2022/authentication/token/services/authentication.service.mjs +3 -3
  18. package/esm2022/authentication/token/token.module.mjs +4 -4
  19. package/esm2022/dialog/components/base/base.component.mjs +5 -5
  20. package/esm2022/dialog/components/choice/choice.component.mjs +5 -5
  21. package/esm2022/dialog/components/confirmation/confirmation.component.mjs +5 -5
  22. package/esm2022/dialog/components/input/input.component.mjs +5 -5
  23. package/esm2022/dialog/components/message/message.component.mjs +5 -5
  24. package/esm2022/dialog/dialog.module.mjs +5 -5
  25. package/esm2022/lib/ngx-lib.module.mjs +4 -4
  26. package/esm2022/lib/services/app-path-config.service.mjs +3 -3
  27. package/esm2022/msgraph/msgraph.module.mjs +5 -5
  28. package/esm2022/quill/components/editor/editor.component.mjs +6 -6
  29. package/esm2022/quill/components/raw/raw.component.mjs +5 -5
  30. package/esm2022/quill/mention/components/editor/editor.component.mjs +6 -6
  31. package/esm2022/quill/mention/quill-mention.module.mjs +4 -4
  32. package/esm2022/quill/quill.module.mjs +4 -4
  33. package/esm2022/sharepoint/components/user-photo/user-photo.component.mjs +5 -5
  34. package/esm2022/sharepoint/pipes/user-photo-url.pipe.mjs +4 -4
  35. package/esm2022/sharepoint/services/sharepoint.service.mjs +3 -3
  36. package/esm2022/sharepoint/sharepoint.module.mjs +4 -4
  37. package/esm2022/table/components/table/table.component.mjs +3 -3
  38. package/esm2022/table/table.module.mjs +4 -4
  39. package/esm2022/upload/components/upload/upload.component.mjs +3 -3
  40. package/esm2022/upload/components/upload-dialog/upload-dialog.component.mjs +5 -5
  41. package/esm2022/upload/services/upload.service.mjs +3 -3
  42. package/esm2022/upload/upload.module.mjs +4 -4
  43. package/esm2022/url-utilities/pipes/safe-resource-url.pipe.mjs +4 -4
  44. package/esm2022/url-utilities/pipes/safe-url.pipe.mjs +4 -4
  45. package/esm2022/url-utilities/pipes/uri-scheme.pipe.mjs +4 -4
  46. package/esm2022/url-utilities/url-utilities.module.mjs +5 -5
  47. package/fesm2022/cleavelandprice-ngx-lib-active-directory-gui.mjs +12 -12
  48. package/fesm2022/cleavelandprice-ngx-lib-active-directory-gui.mjs.map +1 -1
  49. package/fesm2022/cleavelandprice-ngx-lib-active-directory.mjs +7 -7
  50. package/fesm2022/cleavelandprice-ngx-lib-authentication-object.mjs +7 -7
  51. package/fesm2022/cleavelandprice-ngx-lib-authentication-token-gui.mjs +15 -15
  52. package/fesm2022/cleavelandprice-ngx-lib-authentication-token-gui.mjs.map +1 -1
  53. package/fesm2022/cleavelandprice-ngx-lib-authentication-token.mjs +7 -7
  54. package/fesm2022/cleavelandprice-ngx-lib-authentication.mjs +4 -4
  55. package/fesm2022/cleavelandprice-ngx-lib-dialog.mjs +24 -24
  56. package/fesm2022/cleavelandprice-ngx-lib-dialog.mjs.map +1 -1
  57. package/fesm2022/cleavelandprice-ngx-lib-msgraph.mjs +4 -4
  58. package/fesm2022/cleavelandprice-ngx-lib-msgraph.mjs.map +1 -1
  59. package/fesm2022/cleavelandprice-ngx-lib-quill-mention.mjs +9 -9
  60. package/fesm2022/cleavelandprice-ngx-lib-quill-mention.mjs.map +1 -1
  61. package/fesm2022/cleavelandprice-ngx-lib-quill.mjs +13 -13
  62. package/fesm2022/cleavelandprice-ngx-lib-quill.mjs.map +1 -1
  63. package/fesm2022/cleavelandprice-ngx-lib-sharepoint.mjs +14 -14
  64. package/fesm2022/cleavelandprice-ngx-lib-sharepoint.mjs.map +1 -1
  65. package/fesm2022/cleavelandprice-ngx-lib-table.mjs +7 -7
  66. package/fesm2022/cleavelandprice-ngx-lib-table.mjs.map +1 -1
  67. package/fesm2022/cleavelandprice-ngx-lib-upload.mjs +14 -14
  68. package/fesm2022/cleavelandprice-ngx-lib-upload.mjs.map +1 -1
  69. package/fesm2022/cleavelandprice-ngx-lib-url-utilities.mjs +13 -13
  70. package/fesm2022/cleavelandprice-ngx-lib-url-utilities.mjs.map +1 -1
  71. package/fesm2022/cleavelandprice-ngx-lib.mjs +7 -7
  72. package/package.json +22 -22
  73. package/quill/mention/components/editor/editor.component.d.ts +4 -4
  74. package/sharepoint/components/user-photo/user-photo.component.d.ts +4 -4
@@ -1 +1 @@
1
- {"version":3,"file":"cleavelandprice-ngx-lib-authentication-token-gui.mjs","sources":["../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/model/service-config.ts","../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/services/authentication.service.ts","../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/components/login-form/login-form.component.ts","../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/components/login-form/login-form.component.html","../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/components/login/login.component.ts","../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/components/login/login.component.html","../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/token-gui.module.ts","../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/cleavelandprice-ngx-lib-authentication-token-gui.ts"],"sourcesContent":["//import { ServiceConfig as NgxLibServiceConfig } from '@cleavelandprice/ngx-lib';\r\nimport { ServiceConfig as BaseServiceConfig } from '@cleavelandprice/ngx-lib/authentication/token';\r\n\r\nexport class ServiceConfig extends BaseServiceConfig {\r\n // See the comment in the library's main service-config.ts file for an explanation\r\n constructor(useSsl_or_customApiUrl: boolean | string = false,\r\n public showRememberMeOption = true,\r\n appName?: string,\r\n tokenName = 'token',\r\n authenticateEndpoint = '/authenticate/token'\r\n ) {\r\n super(useSsl_or_customApiUrl, appName, tokenName, authenticateEndpoint);\r\n }\r\n}","import { inject, Injectable, Optional } from '@angular/core';\r\nimport { JwtHelperService } from '@auth0/angular-jwt';\r\n\r\nimport { SharePointService } from '@cleavelandprice/ngx-lib/sharepoint';\r\n\r\nimport {\r\n AuthenticationToken,\r\n AuthenticationService as TokenAuthenticationService\r\n} from '@cleavelandprice/ngx-lib/authentication/token';\r\n\r\nimport { ServiceConfig } from '../model/service-config';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthenticationService extends TokenAuthenticationService {\r\n //#region Services\r\n private sharePointService = inject(SharePointService);\r\n //#endregion\r\n\r\n //#region Lifecycle\r\n constructor(@Optional() override config: ServiceConfig) {\r\n\r\n config = config ?? new ServiceConfig();\r\n /*config = {\r\n ...new ServiceConfig(),\r\n ...config,\r\n\r\n // Need to force deferTokenValidation here because if a custom config was passed in, deferTokenValidation would have defaulted to false since it's the default boolean value\r\n // If a custom config wasn't passed in, then deferTokenValidation would have been true from defaultConfig\r\n deferTokenValidation: true\r\n };*/\r\n\r\n // Need to force deferTokenValidation here because if a custom config was passed in, deferTokenValidation would have defaulted to false since it's the default boolean value\r\n // If a custom config wasn't passed in, then deferTokenValidation would have been true from defaultConfig\r\n config.deferTokenValidation = true\r\n\r\n super(config);\r\n\r\n this.checkForExistingToken();\r\n }\r\n //#endregion\r\n\r\n //#region Utilities\r\n override validateUser(token: string): void {\r\n const jwtHelper = new JwtHelperService();\r\n const decoded = jwtHelper.decodeToken(token) as AuthenticationToken;\r\n\r\n if (jwtHelper.isTokenExpired(token)) {\r\n this.logout();\r\n return;\r\n }\r\n\r\n this.authenticatedUser = {\r\n admin: decoded.role === 'Admin',\r\n displayName: decoded.displayName,\r\n accountName: decoded.winaccountname,\r\n distinguishedName: decoded.distinguishedName,\r\n employeeNumber: decoded.employeeNumber,\r\n memberOf: decoded.memberOf\r\n };\r\n\r\n this.storage.setItem(this.config.tokenName, token);\r\n\r\n this.getPhoto();\r\n \r\n this.authenticated = true;\r\n this.authenticatedChanged.emit(this.authenticated);\r\n\r\n this.authenticating = false;\r\n this.authenticatingChanged.emit(this.authenticating);\r\n }\r\n\r\n private getPhoto(): void {\r\n this.sharePointService.getPhotos()\r\n .subscribe(photos => {\r\n // The user may have been logged out by the time the photos came back\r\n if (!this.authenticatedUser?.employeeNumber) {\r\n return;\r\n }\r\n\r\n const photo = photos.find(pic => pic.employeeNumber === +this.authenticatedUser!.employeeNumber);\r\n\r\n if (photo) {\r\n this.authenticatedUser.photoUrl = photo.encodedAbsUrl;\r\n }\r\n });\r\n }\r\n //#endregion\r\n}","import { Component, inject, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { LoginFormData } from '../../model/login-form-data';\r\nimport { AuthenticationService } from '../../services/authentication.service';\r\n\r\n@Component({\r\n templateUrl: './login-form.component.html',\r\n styleUrls: [\r\n './login-form.component.css',\r\n '../../../../../../styles/mat-icon.css'\r\n ]\r\n})\r\nexport class LoginFormComponent implements OnInit, OnDestroy {\r\n #data = inject<LoginFormData>(MAT_DIALOG_DATA);\r\n\r\n //#region Services\r\n public dialogRef = inject(MatDialogRef<LoginFormComponent>);\r\n public authenticationService = inject(AuthenticationService);\r\n //#endregion\r\n errorMessage?: string;\r\n authenticatedChangedSubscription!: Subscription;\r\n authenticationErrorSubscription!: Subscription;\r\n\r\n form = new FormGroup({\r\n username: new FormControl(null, [ Validators.required ]),\r\n password: new FormControl(null, [ Validators.required ]),\r\n adminGroup: new FormControl(),\r\n additionalInfo: new FormControl()\r\n });\r\n \r\n ngOnInit(): void {\r\n this.form.get('adminGroup')?.setValue(this.#data.adminGroup);\r\n this.form.get('additionalInfo')?.setValue(this.#data.additionalInfo);\r\n\r\n this.authenticatedChangedSubscription = this.authenticationService.authenticatedChanged\r\n .subscribe(this.authChangedHandler.bind(this));\r\n\r\n this.authenticationErrorSubscription = this.authenticationService.authenticationError\r\n .subscribe(this.errorHandler.bind(this));\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.authenticationErrorSubscription.unsubscribe();\r\n this.authenticatedChangedSubscription.unsubscribe();\r\n }\r\n\r\n authenticate() {\r\n this.errorMessage = undefined;\r\n const { username, password, adminGroup, additionalInfo } = this.form.value;\r\n this.authenticationService.login(username!, password!, adminGroup, additionalInfo);\r\n }\r\n\r\n private authChangedHandler(authenticated: boolean): void {\r\n if (authenticated) {\r\n this.dialogRef.close();\r\n }\r\n }\r\n\r\n private errorHandler(err: any): void {\r\n console.log('Authentication error', err);\r\n this.errorMessage = `${err.name}: ${err.statusText}`;\r\n }\r\n\r\n changeTokenStorageMode(checked: boolean): void {\r\n const keyName = 'storeTokenInSession';\r\n\r\n if (checked) {\r\n if (localStorage.getItem(keyName)) {\r\n localStorage.removeItem(keyName);\r\n }\r\n } else {\r\n localStorage.setItem(keyName, 'true');\r\n }\r\n }\r\n}\r\n","<h2 mat-dialog-title>\r\n @if (authenticationService.authenticating) {\r\n <span>Authenticating...</span>\r\n } @else {\r\n <span>Login</span>\r\n }\r\n</h2>\r\n\r\n<mat-dialog-content>\r\n @if (authenticationService.authenticating) {\r\n <div id=\"spinner\">\r\n <mat-progress-spinner color=\"primary\" mode=\"indeterminate\"/>\r\n </div>\r\n } @else if (errorMessage) {\r\n <div id=\"error\">\r\n {{ errorMessage }}\r\n </div>\r\n } @else {\r\n <form [formGroup]=\"form\">\r\n <mat-form-field>\r\n <input matInput formControlName=\"username\" placeholder=\"Username\" (keyup.enter)=\"authenticate()\">\r\n </mat-form-field>\r\n <mat-form-field>\r\n <input matInput formControlName=\"password\" type=\"password\" placeholder=\"Password\" (keyup.enter)=\"authenticate()\">\r\n </mat-form-field>\r\n @if (authenticationService.config.showRememberMeOption) {\r\n <mat-slide-toggle [checked]=\"!authenticationService.useSessionStorage\" (change)=\"changeTokenStorageMode($event.checked)\">\r\n Remember me next time\r\n </mat-slide-toggle>\r\n }\r\n </form>\r\n }\r\n</mat-dialog-content>\r\n\r\n@if (!authenticationService.authenticating) {\r\n <mat-dialog-actions>\r\n <button mat-raised-button color=\"primary\" (click)=\"authenticate()\"\r\n [disabled]=\"form.invalid\">\r\n <mat-icon fontIcon=\"done\"/>\r\n <span>OK</span>\r\n </button>\r\n <button mat-raised-button (click)=\"dialogRef.close()\">\r\n <mat-icon fontIcon=\"close\"/>\r\n <span>Cancel</span>\r\n </button>\r\n </mat-dialog-actions>\r\n}","import { Component, inject, input } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ConfirmationComponent } from '@cleavelandprice/ngx-lib/dialog';\r\n\r\nimport { AuthenticationService } from '../../services/authentication.service';\r\nimport { LoginFormComponent } from '../login-form/login-form.component';\r\n\r\n@Component({\r\n selector: 'cp-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: [\r\n './login.component.css',\r\n '../../../../../../styles/mat-icon.css'\r\n ]\r\n})\r\nexport class LoginComponent {\r\n //#region Services\r\n private dialog = inject(MatDialog);\r\n public authenticationService = inject(AuthenticationService);\r\n //#endregion\r\n\r\n adminGroup = input<string>();\r\n additionalInfo = input.required<string>();\r\n\r\n login(): void {\r\n this.dialog.open(LoginFormComponent, {\r\n data: {\r\n adminGroup: this.adminGroup(),\r\n additionalInfo: this.additionalInfo()\r\n }\r\n });\r\n }\r\n\r\n confirmLogout(): void {\r\n this.dialog.open(ConfirmationComponent, {\r\n data: { message: `Are you sure you want to logout?` }\r\n })\r\n .afterClosed()\r\n .subscribe(result => {\r\n if (result) {\r\n this.authenticationService.logout();\r\n }\r\n });\r\n }\r\n}\r\n","<div id=\"user-id\">\r\n <!-- Logged out -->\r\n <!-- Logged in -->\r\n @if (authenticationService.authenticated) {\r\n <!-- With photo -->\r\n @if (authenticationService.authenticatedUser?.photoUrl) {\r\n <img\r\n id=\"authenticated-user-image\"\r\n [src]=\"authenticationService.authenticatedUser?.photoUrl\"\r\n matTooltip=\"Logout\"\r\n (click)=\"confirmLogout()\" />\r\n } @else {\r\n <!-- Without photo -->\r\n <mat-icon\r\n fontIcon=\"account_circle\"\r\n matTooltip=\"Logout\"\r\n (click)=\"confirmLogout()\">\r\n </mat-icon>\r\n }\r\n <!-- Name -->\r\n <div id=\"user-name\">\r\n {{ authenticationService.authenticatedUser?.displayName }}\r\n </div>\r\n } @else {\r\n <mat-icon\r\n fontIcon=\"account_circle\"\r\n matTooltip=\"Login\"\r\n (click)=\"login()\">\r\n </mat-icon>\r\n }\r\n</div>","import { ModuleWithProviders, NgModule, Optional, SkipSelf } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\n\r\nimport { ServiceConfig } from './model/service-config';\r\n\r\nimport { AuthenticationService } from './services/authentication.service';\r\n\r\nimport { LoginComponent } from './components/login/login.component';\r\nimport { LoginFormComponent } from './components/login-form/login-form.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n LoginComponent,\r\n LoginFormComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n \r\n MatButtonModule,\r\n MatDialogModule,\r\n MatFormFieldModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatProgressSpinnerModule,\r\n MatSlideToggleModule\r\n ],\r\n exports: [\r\n LoginComponent,\r\n LoginFormComponent\r\n ]\r\n})\r\nexport class GuiModule {\r\n static forRoot(config: ServiceConfig): ModuleWithProviders<GuiModule> {\r\n return {\r\n ngModule: GuiModule,\r\n providers: [\r\n AuthenticationService,\r\n { provide: ServiceConfig, useValue: config }\r\n ]\r\n };\r\n }\r\n\r\n constructor(@Optional() @SkipSelf() parentModule: GuiModule) {\r\n if (parentModule) {\r\n throw new Error(\r\n 'GuiModule is already loaded. Import it in the AppModule only');\r\n }\r\n }\r\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["BaseServiceConfig","TokenAuthenticationService","i1.ServiceConfig","i1"],"mappings":"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"}
1
+ {"version":3,"file":"cleavelandprice-ngx-lib-authentication-token-gui.mjs","sources":["../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/model/service-config.ts","../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/services/authentication.service.ts","../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/components/login-form/login-form.component.ts","../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/components/login-form/login-form.component.html","../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/components/login/login.component.ts","../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/components/login/login.component.html","../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/token-gui.module.ts","../../../../projects/cleavelandprice/ngx-lib/authentication/token/gui/src/cleavelandprice-ngx-lib-authentication-token-gui.ts"],"sourcesContent":["//import { ServiceConfig as NgxLibServiceConfig } from '@cleavelandprice/ngx-lib';\r\nimport { ServiceConfig as BaseServiceConfig } from '@cleavelandprice/ngx-lib/authentication/token';\r\n\r\nexport class ServiceConfig extends BaseServiceConfig {\r\n // See the comment in the library's main service-config.ts file for an explanation\r\n constructor(useSsl_or_customApiUrl: boolean | string = false,\r\n public showRememberMeOption = true,\r\n appName?: string,\r\n tokenName = 'token',\r\n authenticateEndpoint = '/authenticate/token'\r\n ) {\r\n super(useSsl_or_customApiUrl, appName, tokenName, authenticateEndpoint);\r\n }\r\n}","import { inject, Injectable, Optional } from '@angular/core';\r\nimport { JwtHelperService } from '@auth0/angular-jwt';\r\n\r\nimport { SharePointService } from '@cleavelandprice/ngx-lib/sharepoint';\r\n\r\nimport {\r\n AuthenticationToken,\r\n AuthenticationService as TokenAuthenticationService\r\n} from '@cleavelandprice/ngx-lib/authentication/token';\r\n\r\nimport { ServiceConfig } from '../model/service-config';\r\n\r\n@Injectable({\r\n providedIn: 'root'\r\n})\r\nexport class AuthenticationService extends TokenAuthenticationService {\r\n //#region Services\r\n private sharePointService = inject(SharePointService);\r\n //#endregion\r\n\r\n //#region Lifecycle\r\n constructor(@Optional() override config: ServiceConfig) {\r\n\r\n config = config ?? new ServiceConfig();\r\n /*config = {\r\n ...new ServiceConfig(),\r\n ...config,\r\n\r\n // Need to force deferTokenValidation here because if a custom config was passed in, deferTokenValidation would have defaulted to false since it's the default boolean value\r\n // If a custom config wasn't passed in, then deferTokenValidation would have been true from defaultConfig\r\n deferTokenValidation: true\r\n };*/\r\n\r\n // Need to force deferTokenValidation here because if a custom config was passed in, deferTokenValidation would have defaulted to false since it's the default boolean value\r\n // If a custom config wasn't passed in, then deferTokenValidation would have been true from defaultConfig\r\n config.deferTokenValidation = true\r\n\r\n super(config);\r\n\r\n this.checkForExistingToken();\r\n }\r\n //#endregion\r\n\r\n //#region Utilities\r\n override validateUser(token: string): void {\r\n const jwtHelper = new JwtHelperService();\r\n const decoded = jwtHelper.decodeToken(token) as AuthenticationToken;\r\n\r\n if (jwtHelper.isTokenExpired(token)) {\r\n this.logout();\r\n return;\r\n }\r\n\r\n this.authenticatedUser = {\r\n admin: decoded.role === 'Admin',\r\n displayName: decoded.displayName,\r\n accountName: decoded.winaccountname,\r\n distinguishedName: decoded.distinguishedName,\r\n employeeNumber: decoded.employeeNumber,\r\n memberOf: decoded.memberOf\r\n };\r\n\r\n this.storage.setItem(this.config.tokenName, token);\r\n\r\n this.getPhoto();\r\n \r\n this.authenticated = true;\r\n this.authenticatedChanged.emit(this.authenticated);\r\n\r\n this.authenticating = false;\r\n this.authenticatingChanged.emit(this.authenticating);\r\n }\r\n\r\n private getPhoto(): void {\r\n this.sharePointService.getPhotos()\r\n .subscribe(photos => {\r\n // The user may have been logged out by the time the photos came back\r\n if (!this.authenticatedUser?.employeeNumber) {\r\n return;\r\n }\r\n\r\n const photo = photos.find(pic => pic.employeeNumber === +this.authenticatedUser!.employeeNumber);\r\n\r\n if (photo) {\r\n this.authenticatedUser.photoUrl = photo.encodedAbsUrl;\r\n }\r\n });\r\n }\r\n //#endregion\r\n}","import { Component, inject, OnDestroy, OnInit } from '@angular/core';\r\nimport { FormControl, FormGroup, Validators } from '@angular/forms';\r\nimport { MAT_DIALOG_DATA, MatDialogRef } from '@angular/material/dialog';\r\nimport { Subscription } from 'rxjs';\r\n\r\nimport { LoginFormData } from '../../model/login-form-data';\r\nimport { AuthenticationService } from '../../services/authentication.service';\r\n\r\n@Component({\r\n templateUrl: './login-form.component.html',\r\n styleUrls: [\r\n './login-form.component.css',\r\n '../../../../../../styles/mat-icon.css'\r\n ]\r\n})\r\nexport class LoginFormComponent implements OnInit, OnDestroy {\r\n #data = inject<LoginFormData>(MAT_DIALOG_DATA);\r\n\r\n //#region Services\r\n public dialogRef = inject(MatDialogRef<LoginFormComponent>);\r\n public authenticationService = inject(AuthenticationService);\r\n //#endregion\r\n errorMessage?: string;\r\n authenticatedChangedSubscription!: Subscription;\r\n authenticationErrorSubscription!: Subscription;\r\n\r\n form = new FormGroup({\r\n username: new FormControl(null, [ Validators.required ]),\r\n password: new FormControl(null, [ Validators.required ]),\r\n adminGroup: new FormControl(),\r\n additionalInfo: new FormControl()\r\n });\r\n \r\n ngOnInit(): void {\r\n this.form.get('adminGroup')?.setValue(this.#data.adminGroup);\r\n this.form.get('additionalInfo')?.setValue(this.#data.additionalInfo);\r\n\r\n this.authenticatedChangedSubscription = this.authenticationService.authenticatedChanged\r\n .subscribe(this.authChangedHandler.bind(this));\r\n\r\n this.authenticationErrorSubscription = this.authenticationService.authenticationError\r\n .subscribe(this.errorHandler.bind(this));\r\n }\r\n\r\n ngOnDestroy(): void {\r\n this.authenticationErrorSubscription.unsubscribe();\r\n this.authenticatedChangedSubscription.unsubscribe();\r\n }\r\n\r\n authenticate() {\r\n this.errorMessage = undefined;\r\n const { username, password, adminGroup, additionalInfo } = this.form.value;\r\n this.authenticationService.login(username!, password!, adminGroup, additionalInfo);\r\n }\r\n\r\n private authChangedHandler(authenticated: boolean): void {\r\n if (authenticated) {\r\n this.dialogRef.close();\r\n }\r\n }\r\n\r\n private errorHandler(err: any): void {\r\n console.log('Authentication error', err);\r\n this.errorMessage = `${err.name}: ${err.statusText}`;\r\n }\r\n\r\n changeTokenStorageMode(checked: boolean): void {\r\n const keyName = 'storeTokenInSession';\r\n\r\n if (checked) {\r\n if (localStorage.getItem(keyName)) {\r\n localStorage.removeItem(keyName);\r\n }\r\n } else {\r\n localStorage.setItem(keyName, 'true');\r\n }\r\n }\r\n}\r\n","<h2 mat-dialog-title>\n @if (authenticationService.authenticating) {\n <span>Authenticating...</span>\n } @else {\n <span>Login</span>\n }\n</h2>\n\n<mat-dialog-content>\n @if (authenticationService.authenticating) {\n <div id=\"spinner\">\n <mat-progress-spinner color=\"primary\" mode=\"indeterminate\"/>\n </div>\n } @else if (errorMessage) {\n <div id=\"error\">\n {{ errorMessage }}\n </div>\n } @else {\n <form [formGroup]=\"form\">\n <mat-form-field>\n <input matInput formControlName=\"username\" placeholder=\"Username\" (keyup.enter)=\"authenticate()\">\n </mat-form-field>\n <mat-form-field>\n <input matInput formControlName=\"password\" type=\"password\" placeholder=\"Password\" (keyup.enter)=\"authenticate()\">\n </mat-form-field>\n @if (authenticationService.config.showRememberMeOption) {\n <mat-slide-toggle [checked]=\"!authenticationService.useSessionStorage\" (change)=\"changeTokenStorageMode($event.checked)\">\n Remember me next time\n </mat-slide-toggle>\n }\n </form>\n }\n</mat-dialog-content>\n\n@if (!authenticationService.authenticating) {\n <mat-dialog-actions>\n <button mat-raised-button color=\"primary\" (click)=\"authenticate()\"\n [disabled]=\"form.invalid\">\n <mat-icon fontIcon=\"done\"/>\n <span>OK</span>\n </button>\n <button mat-raised-button (click)=\"dialogRef.close()\">\n <mat-icon fontIcon=\"close\"/>\n <span>Cancel</span>\n </button>\n </mat-dialog-actions>\n}","import { Component, inject, input } from '@angular/core';\r\nimport { MatDialog } from '@angular/material/dialog';\r\nimport { ConfirmationComponent } from '@cleavelandprice/ngx-lib/dialog';\r\n\r\nimport { AuthenticationService } from '../../services/authentication.service';\r\nimport { LoginFormComponent } from '../login-form/login-form.component';\r\n\r\n@Component({\r\n selector: 'cp-login',\r\n templateUrl: './login.component.html',\r\n styleUrls: [\r\n './login.component.css',\r\n '../../../../../../styles/mat-icon.css'\r\n ]\r\n})\r\nexport class LoginComponent {\r\n //#region Services\r\n private dialog = inject(MatDialog);\r\n public authenticationService = inject(AuthenticationService);\r\n //#endregion\r\n\r\n adminGroup = input<string>();\r\n additionalInfo = input.required<string>();\r\n\r\n login(): void {\r\n this.dialog.open(LoginFormComponent, {\r\n data: {\r\n adminGroup: this.adminGroup(),\r\n additionalInfo: this.additionalInfo()\r\n }\r\n });\r\n }\r\n\r\n confirmLogout(): void {\r\n this.dialog.open(ConfirmationComponent, {\r\n data: { message: `Are you sure you want to logout?` }\r\n })\r\n .afterClosed()\r\n .subscribe(result => {\r\n if (result) {\r\n this.authenticationService.logout();\r\n }\r\n });\r\n }\r\n}\r\n","<div id=\"user-id\">\n <!-- Logged out -->\n <!-- Logged in -->\n @if (authenticationService.authenticated) {\n <!-- With photo -->\n @if (authenticationService.authenticatedUser?.photoUrl) {\n <img\n id=\"authenticated-user-image\"\n [src]=\"authenticationService.authenticatedUser?.photoUrl\"\n matTooltip=\"Logout\"\n (click)=\"confirmLogout()\" />\n } @else {\n <!-- Without photo -->\n <mat-icon\n fontIcon=\"account_circle\"\n matTooltip=\"Logout\"\n (click)=\"confirmLogout()\">\n </mat-icon>\n }\n <!-- Name -->\n <div id=\"user-name\">\n {{ authenticationService.authenticatedUser?.displayName }}\n </div>\n } @else {\n <mat-icon\n fontIcon=\"account_circle\"\n matTooltip=\"Login\"\n (click)=\"login()\">\n </mat-icon>\n }\n</div>","import { ModuleWithProviders, NgModule, Optional, SkipSelf } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { ReactiveFormsModule } from '@angular/forms';\r\n\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatIconModule } from '@angular/material/icon';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatProgressSpinnerModule } from '@angular/material/progress-spinner';\r\nimport { MatSlideToggleModule } from '@angular/material/slide-toggle';\r\n\r\nimport { ServiceConfig } from './model/service-config';\r\n\r\nimport { AuthenticationService } from './services/authentication.service';\r\n\r\nimport { LoginComponent } from './components/login/login.component';\r\nimport { LoginFormComponent } from './components/login-form/login-form.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n LoginComponent,\r\n LoginFormComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n ReactiveFormsModule,\r\n \r\n MatButtonModule,\r\n MatDialogModule,\r\n MatFormFieldModule,\r\n MatIconModule,\r\n MatInputModule,\r\n MatProgressSpinnerModule,\r\n MatSlideToggleModule\r\n ],\r\n exports: [\r\n LoginComponent,\r\n LoginFormComponent\r\n ]\r\n})\r\nexport class GuiModule {\r\n static forRoot(config: ServiceConfig): ModuleWithProviders<GuiModule> {\r\n return {\r\n ngModule: GuiModule,\r\n providers: [\r\n AuthenticationService,\r\n { provide: ServiceConfig, useValue: config }\r\n ]\r\n };\r\n }\r\n\r\n constructor(@Optional() @SkipSelf() parentModule: GuiModule) {\r\n if (parentModule) {\r\n throw new Error(\r\n 'GuiModule is already loaded. Import it in the AppModule only');\r\n }\r\n }\r\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["BaseServiceConfig","TokenAuthenticationService","i1.ServiceConfig","i1"],"mappings":"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"}
@@ -114,10 +114,10 @@ class AuthenticationService {
114
114
  }
115
115
  }
116
116
  }
117
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthenticationService, deps: [{ token: ServiceConfig, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
118
- static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthenticationService, providedIn: 'root' }); }
117
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: AuthenticationService, deps: [{ token: ServiceConfig, optional: true }], target: i0.ɵɵFactoryTarget.Injectable }); }
118
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: AuthenticationService, providedIn: 'root' }); }
119
119
  }
120
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthenticationService, decorators: [{
120
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: AuthenticationService, decorators: [{
121
121
  type: Injectable,
122
122
  args: [{
123
123
  providedIn: 'root'
@@ -147,11 +147,11 @@ class TokenModule {
147
147
  throw new Error('TokenModule is already loaded. Import it in the AppModule only');
148
148
  }
149
149
  }
150
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TokenModule, deps: [{ token: TokenModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
151
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.2", ngImport: i0, type: TokenModule, imports: [CommonModule] }); }
152
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TokenModule, imports: [CommonModule] }); }
150
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TokenModule, deps: [{ token: TokenModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
151
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: TokenModule, imports: [CommonModule] }); }
152
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TokenModule, imports: [CommonModule] }); }
153
153
  }
154
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: TokenModule, decorators: [{
154
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: TokenModule, decorators: [{
155
155
  type: NgModule,
156
156
  args: [{
157
157
  declarations: [],
@@ -15,11 +15,11 @@ class ServiceConfig extends ServiceConfig$1 {
15
15
  }
16
16
 
17
17
  class AuthenticationBaseModule {
18
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthenticationBaseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
19
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.2", ngImport: i0, type: AuthenticationBaseModule, imports: [CommonModule] }); }
20
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthenticationBaseModule, imports: [CommonModule] }); }
18
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: AuthenticationBaseModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
19
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: AuthenticationBaseModule, imports: [CommonModule] }); }
20
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: AuthenticationBaseModule, imports: [CommonModule] }); }
21
21
  }
22
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AuthenticationBaseModule, decorators: [{
22
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: AuthenticationBaseModule, decorators: [{
23
23
  type: NgModule,
24
24
  args: [{
25
25
  declarations: [],
@@ -101,12 +101,12 @@ class BaseComponent {
101
101
  }
102
102
  this.closed.emit(data);
103
103
  }
104
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: BaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
105
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.1.2", type: BaseComponent, selector: "cp-dialog-base", inputs: { dialogType: { classPropertyName: "dialogType", publicName: "dialogType", isSignal: true, isRequired: false, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { closed: "closed" }, ngImport: i0, template: "@if (data().title) {\r\n <h2 mat-dialog-title [innerHTML]=\"data().title\"></h2>\r\n}\r\n\r\n<mat-dialog-content>\r\n @if (data().message) {\r\n <div [innerHTML]=\"data().message\"></div>\r\n }\r\n\r\n @if (dialogType() === DialogType.Input) {\r\n <mat-form-field>\r\n <textarea matInput [placeholder]=\"data().placeholder ?? ''\" [(ngModel)]=\"userInput\"></textarea>\r\n </mat-form-field>\r\n }\r\n\r\n @if (data().checkboxMessage) {\r\n <div id=\"checkbox\">\r\n <mat-checkbox [(ngModel)]=\"checkboxValue\">\r\n <span [innerHTML]=\"data().checkboxMessage\"></span>\r\n </mat-checkbox>\r\n </div>\r\n }\r\n</mat-dialog-content>\r\n\r\n<mat-dialog-actions>\r\n @if (dialogType() !== DialogType.Choice) {\r\n <button mat-raised-button (click)=\"close()\" [disabled]=\"dialogType() === DialogType.Input && !userInput\">\r\n <span>\r\n @switch (data().mode) {\r\n @case (ConfirmationDialogMode.YesNo) {\r\n <span>Yes</span>\r\n }\r\n @case (ConfirmationDialogMode.TrueFalse) {\r\n <span>True</span>\r\n }\r\n @case (ConfirmationDialogMode.Custom) {\r\n <span>{{ customTrueText }}</span>\r\n }\r\n @default {\r\n <span>OK</span>\r\n }\r\n }\r\n </span>\r\n </button>\r\n @if (dialogType() !== DialogType.Message) {\r\n <button mat-raised-button (click)=\"cancel()\">\r\n <span>\r\n @switch (data().mode) {\r\n @case (ConfirmationDialogMode.YesNo) {\r\n <span>No</span>\r\n }\r\n @case (ConfirmationDialogMode.TrueFalse) {\r\n <span>False</span>\r\n }\r\n @case (ConfirmationDialogMode.Custom) {\r\n <span>{{ customFalseText }}</span>\r\n }\r\n @default {\r\n <span>Cancel</span>\r\n }\r\n }\r\n </span>\r\n </button>\r\n }\r\n }\r\n\r\n @if (dialogType() === DialogType.Choice) {\r\n @for (choice of choices; track choice; let i = $index) {\r\n <button mat-raised-button [matDialogClose]=\"i\">\r\n <span>{{ choice }}</span>\r\n </button>\r\n }\r\n }\r\n</mat-dialog-actions>", styles: ["mat-form-field{margin-top:2em;width:100%}#checkbox{margin:2em 0}\n"], dependencies: [{ kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i4.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i4.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }] }); }
104
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: BaseComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
105
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "17.3.0", type: BaseComponent, selector: "cp-dialog-base", inputs: { dialogType: { classPropertyName: "dialogType", publicName: "dialogType", isSignal: true, isRequired: false, transformFunction: null }, data: { classPropertyName: "data", publicName: "data", isSignal: true, isRequired: true, transformFunction: null } }, outputs: { closed: "closed" }, ngImport: i0, template: "@if (data().title) {\n <h2 mat-dialog-title [innerHTML]=\"data().title\"></h2>\n}\n\n<mat-dialog-content>\n @if (data().message) {\n <div [innerHTML]=\"data().message\"></div>\n }\n\n @if (dialogType() === DialogType.Input) {\n <mat-form-field>\n <textarea matInput [placeholder]=\"data().placeholder ?? ''\" [(ngModel)]=\"userInput\"></textarea>\n </mat-form-field>\n }\n\n @if (data().checkboxMessage) {\n <div id=\"checkbox\">\n <mat-checkbox [(ngModel)]=\"checkboxValue\">\n <span [innerHTML]=\"data().checkboxMessage\"></span>\n </mat-checkbox>\n </div>\n }\n</mat-dialog-content>\n\n<mat-dialog-actions>\n @if (dialogType() !== DialogType.Choice) {\n <button mat-raised-button (click)=\"close()\" [disabled]=\"dialogType() === DialogType.Input && !userInput\">\n <span>\n @switch (data().mode) {\n @case (ConfirmationDialogMode.YesNo) {\n <span>Yes</span>\n }\n @case (ConfirmationDialogMode.TrueFalse) {\n <span>True</span>\n }\n @case (ConfirmationDialogMode.Custom) {\n <span>{{ customTrueText }}</span>\n }\n @default {\n <span>OK</span>\n }\n }\n </span>\n </button>\n @if (dialogType() !== DialogType.Message) {\n <button mat-raised-button (click)=\"cancel()\">\n <span>\n @switch (data().mode) {\n @case (ConfirmationDialogMode.YesNo) {\n <span>No</span>\n }\n @case (ConfirmationDialogMode.TrueFalse) {\n <span>False</span>\n }\n @case (ConfirmationDialogMode.Custom) {\n <span>{{ customFalseText }}</span>\n }\n @default {\n <span>Cancel</span>\n }\n }\n </span>\n </button>\n }\n }\n\n @if (dialogType() === DialogType.Choice) {\n @for (choice of choices; track choice; let i = $index) {\n <button mat-raised-button [matDialogClose]=\"i\">\n <span>{{ choice }}</span>\n </button>\n }\n }\n</mat-dialog-actions>", styles: ["mat-form-field{margin-top:2em;width:100%}#checkbox{margin:2em 0}\n"], dependencies: [{ kind: "directive", type: i1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "component", type: i2.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", exportAs: ["matButton"] }, { kind: "component", type: i3.MatCheckbox, selector: "mat-checkbox", inputs: ["aria-label", "aria-labelledby", "aria-describedby", "id", "required", "labelPosition", "name", "value", "disableRipple", "tabIndex", "color", "checked", "disabled", "indeterminate"], outputs: ["change", "indeterminateChange"], exportAs: ["matCheckbox"] }, { kind: "directive", type: i4.MatDialogClose, selector: "[mat-dialog-close], [matDialogClose]", inputs: ["aria-label", "type", "mat-dialog-close", "matDialogClose"], exportAs: ["matDialogClose"] }, { kind: "directive", type: i4.MatDialogTitle, selector: "[mat-dialog-title], [matDialogTitle]", inputs: ["id"], exportAs: ["matDialogTitle"] }, { kind: "directive", type: i4.MatDialogActions, selector: "[mat-dialog-actions], mat-dialog-actions, [matDialogActions]", inputs: ["align"] }, { kind: "directive", type: i4.MatDialogContent, selector: "[mat-dialog-content], mat-dialog-content, [matDialogContent]" }, { kind: "component", type: i5.MatFormField, selector: "mat-form-field", inputs: ["hideRequiredMarker", "color", "floatLabel", "appearance", "subscriptSizing", "hintLabel"], exportAs: ["matFormField"] }, { kind: "directive", type: i6.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly"], exportAs: ["matInput"] }] }); }
106
106
  }
107
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: BaseComponent, decorators: [{
107
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: BaseComponent, decorators: [{
108
108
  type: Component,
109
- args: [{ selector: 'cp-dialog-base', template: "@if (data().title) {\r\n <h2 mat-dialog-title [innerHTML]=\"data().title\"></h2>\r\n}\r\n\r\n<mat-dialog-content>\r\n @if (data().message) {\r\n <div [innerHTML]=\"data().message\"></div>\r\n }\r\n\r\n @if (dialogType() === DialogType.Input) {\r\n <mat-form-field>\r\n <textarea matInput [placeholder]=\"data().placeholder ?? ''\" [(ngModel)]=\"userInput\"></textarea>\r\n </mat-form-field>\r\n }\r\n\r\n @if (data().checkboxMessage) {\r\n <div id=\"checkbox\">\r\n <mat-checkbox [(ngModel)]=\"checkboxValue\">\r\n <span [innerHTML]=\"data().checkboxMessage\"></span>\r\n </mat-checkbox>\r\n </div>\r\n }\r\n</mat-dialog-content>\r\n\r\n<mat-dialog-actions>\r\n @if (dialogType() !== DialogType.Choice) {\r\n <button mat-raised-button (click)=\"close()\" [disabled]=\"dialogType() === DialogType.Input && !userInput\">\r\n <span>\r\n @switch (data().mode) {\r\n @case (ConfirmationDialogMode.YesNo) {\r\n <span>Yes</span>\r\n }\r\n @case (ConfirmationDialogMode.TrueFalse) {\r\n <span>True</span>\r\n }\r\n @case (ConfirmationDialogMode.Custom) {\r\n <span>{{ customTrueText }}</span>\r\n }\r\n @default {\r\n <span>OK</span>\r\n }\r\n }\r\n </span>\r\n </button>\r\n @if (dialogType() !== DialogType.Message) {\r\n <button mat-raised-button (click)=\"cancel()\">\r\n <span>\r\n @switch (data().mode) {\r\n @case (ConfirmationDialogMode.YesNo) {\r\n <span>No</span>\r\n }\r\n @case (ConfirmationDialogMode.TrueFalse) {\r\n <span>False</span>\r\n }\r\n @case (ConfirmationDialogMode.Custom) {\r\n <span>{{ customFalseText }}</span>\r\n }\r\n @default {\r\n <span>Cancel</span>\r\n }\r\n }\r\n </span>\r\n </button>\r\n }\r\n }\r\n\r\n @if (dialogType() === DialogType.Choice) {\r\n @for (choice of choices; track choice; let i = $index) {\r\n <button mat-raised-button [matDialogClose]=\"i\">\r\n <span>{{ choice }}</span>\r\n </button>\r\n }\r\n }\r\n</mat-dialog-actions>", styles: ["mat-form-field{margin-top:2em;width:100%}#checkbox{margin:2em 0}\n"] }]
109
+ args: [{ selector: 'cp-dialog-base', template: "@if (data().title) {\n <h2 mat-dialog-title [innerHTML]=\"data().title\"></h2>\n}\n\n<mat-dialog-content>\n @if (data().message) {\n <div [innerHTML]=\"data().message\"></div>\n }\n\n @if (dialogType() === DialogType.Input) {\n <mat-form-field>\n <textarea matInput [placeholder]=\"data().placeholder ?? ''\" [(ngModel)]=\"userInput\"></textarea>\n </mat-form-field>\n }\n\n @if (data().checkboxMessage) {\n <div id=\"checkbox\">\n <mat-checkbox [(ngModel)]=\"checkboxValue\">\n <span [innerHTML]=\"data().checkboxMessage\"></span>\n </mat-checkbox>\n </div>\n }\n</mat-dialog-content>\n\n<mat-dialog-actions>\n @if (dialogType() !== DialogType.Choice) {\n <button mat-raised-button (click)=\"close()\" [disabled]=\"dialogType() === DialogType.Input && !userInput\">\n <span>\n @switch (data().mode) {\n @case (ConfirmationDialogMode.YesNo) {\n <span>Yes</span>\n }\n @case (ConfirmationDialogMode.TrueFalse) {\n <span>True</span>\n }\n @case (ConfirmationDialogMode.Custom) {\n <span>{{ customTrueText }}</span>\n }\n @default {\n <span>OK</span>\n }\n }\n </span>\n </button>\n @if (dialogType() !== DialogType.Message) {\n <button mat-raised-button (click)=\"cancel()\">\n <span>\n @switch (data().mode) {\n @case (ConfirmationDialogMode.YesNo) {\n <span>No</span>\n }\n @case (ConfirmationDialogMode.TrueFalse) {\n <span>False</span>\n }\n @case (ConfirmationDialogMode.Custom) {\n <span>{{ customFalseText }}</span>\n }\n @default {\n <span>Cancel</span>\n }\n }\n </span>\n </button>\n }\n }\n\n @if (dialogType() === DialogType.Choice) {\n @for (choice of choices; track choice; let i = $index) {\n <button mat-raised-button [matDialogClose]=\"i\">\n <span>{{ choice }}</span>\n </button>\n }\n }\n</mat-dialog-actions>", styles: ["mat-form-field{margin-top:2em;width:100%}#checkbox{margin:2em 0}\n"] }]
110
110
  }], propDecorators: { closed: [{
111
111
  type: Output
112
112
  }] } });
@@ -119,12 +119,12 @@ class ChoiceComponent {
119
119
  //#endregion
120
120
  this.dialogType = DialogType.Choice;
121
121
  }
122
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ChoiceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
123
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: ChoiceComponent, selector: "cp-dialog-choice", ngImport: i0, template: "<cp-dialog-base\r\n [data]=\"data\"\r\n [dialogType]=\"dialogType\"\r\n (closed)=\"dialogRef.close($event)\">\r\n</cp-dialog-base>", styles: [""], dependencies: [{ kind: "component", type: BaseComponent, selector: "cp-dialog-base", inputs: ["dialogType", "data"], outputs: ["closed"] }] }); }
122
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ChoiceComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
123
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: ChoiceComponent, selector: "cp-dialog-choice", ngImport: i0, template: "<cp-dialog-base\n [data]=\"data\"\n [dialogType]=\"dialogType\"\n (closed)=\"dialogRef.close($event)\">\n</cp-dialog-base>", styles: [""], dependencies: [{ kind: "component", type: BaseComponent, selector: "cp-dialog-base", inputs: ["dialogType", "data"], outputs: ["closed"] }] }); }
124
124
  }
125
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ChoiceComponent, decorators: [{
125
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ChoiceComponent, decorators: [{
126
126
  type: Component,
127
- args: [{ selector: 'cp-dialog-choice', template: "<cp-dialog-base\r\n [data]=\"data\"\r\n [dialogType]=\"dialogType\"\r\n (closed)=\"dialogRef.close($event)\">\r\n</cp-dialog-base>" }]
127
+ args: [{ selector: 'cp-dialog-choice', template: "<cp-dialog-base\n [data]=\"data\"\n [dialogType]=\"dialogType\"\n (closed)=\"dialogRef.close($event)\">\n</cp-dialog-base>" }]
128
128
  }] });
129
129
 
130
130
  class ConfirmationComponent {
@@ -135,12 +135,12 @@ class ConfirmationComponent {
135
135
  //#endregion
136
136
  this.dialogType = DialogType.Confirmation;
137
137
  }
138
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ConfirmationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
139
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: ConfirmationComponent, selector: "cp-dialog-confirmation", ngImport: i0, template: "<cp-dialog-base\r\n [data]=\"data\"\r\n [dialogType]=\"dialogType\"\r\n (closed)=\"dialogRef.close($event)\">\r\n</cp-dialog-base>", styles: [""], dependencies: [{ kind: "component", type: BaseComponent, selector: "cp-dialog-base", inputs: ["dialogType", "data"], outputs: ["closed"] }] }); }
138
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ConfirmationComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
139
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: ConfirmationComponent, selector: "cp-dialog-confirmation", ngImport: i0, template: "<cp-dialog-base\n [data]=\"data\"\n [dialogType]=\"dialogType\"\n (closed)=\"dialogRef.close($event)\">\n</cp-dialog-base>", styles: [""], dependencies: [{ kind: "component", type: BaseComponent, selector: "cp-dialog-base", inputs: ["dialogType", "data"], outputs: ["closed"] }] }); }
140
140
  }
141
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: ConfirmationComponent, decorators: [{
141
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: ConfirmationComponent, decorators: [{
142
142
  type: Component,
143
- args: [{ selector: 'cp-dialog-confirmation', template: "<cp-dialog-base\r\n [data]=\"data\"\r\n [dialogType]=\"dialogType\"\r\n (closed)=\"dialogRef.close($event)\">\r\n</cp-dialog-base>" }]
143
+ args: [{ selector: 'cp-dialog-confirmation', template: "<cp-dialog-base\n [data]=\"data\"\n [dialogType]=\"dialogType\"\n (closed)=\"dialogRef.close($event)\">\n</cp-dialog-base>" }]
144
144
  }] });
145
145
 
146
146
  class InputComponent {
@@ -151,12 +151,12 @@ class InputComponent {
151
151
  //#endregion
152
152
  this.dialogType = DialogType.Input;
153
153
  }
154
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
155
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: InputComponent, selector: "cp-dialog-input", ngImport: i0, template: "<cp-dialog-base\r\n [data]=\"data\"\r\n [dialogType]=\"dialogType\"\r\n (closed)=\"dialogRef.close($event)\">\r\n</cp-dialog-base>", styles: [""], dependencies: [{ kind: "component", type: BaseComponent, selector: "cp-dialog-base", inputs: ["dialogType", "data"], outputs: ["closed"] }] }); }
154
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: InputComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
155
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: InputComponent, selector: "cp-dialog-input", ngImport: i0, template: "<cp-dialog-base\n [data]=\"data\"\n [dialogType]=\"dialogType\"\n (closed)=\"dialogRef.close($event)\">\n</cp-dialog-base>", styles: [""], dependencies: [{ kind: "component", type: BaseComponent, selector: "cp-dialog-base", inputs: ["dialogType", "data"], outputs: ["closed"] }] }); }
156
156
  }
157
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: InputComponent, decorators: [{
157
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: InputComponent, decorators: [{
158
158
  type: Component,
159
- args: [{ selector: 'cp-dialog-input', template: "<cp-dialog-base\r\n [data]=\"data\"\r\n [dialogType]=\"dialogType\"\r\n (closed)=\"dialogRef.close($event)\">\r\n</cp-dialog-base>" }]
159
+ args: [{ selector: 'cp-dialog-input', template: "<cp-dialog-base\n [data]=\"data\"\n [dialogType]=\"dialogType\"\n (closed)=\"dialogRef.close($event)\">\n</cp-dialog-base>" }]
160
160
  }] });
161
161
 
162
162
  class MessageComponent {
@@ -167,17 +167,17 @@ class MessageComponent {
167
167
  //#endregion
168
168
  this.dialogType = DialogType.Message;
169
169
  }
170
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
171
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: MessageComponent, selector: "cp-dialog-message", ngImport: i0, template: "<cp-dialog-base\r\n [data]=\"data\"\r\n [dialogType]=\"dialogType\"\r\n (closed)=\"dialogRef.close($event)\">\r\n</cp-dialog-base>", styles: [""], dependencies: [{ kind: "component", type: BaseComponent, selector: "cp-dialog-base", inputs: ["dialogType", "data"], outputs: ["closed"] }] }); }
170
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: MessageComponent, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
171
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.3.0", type: MessageComponent, selector: "cp-dialog-message", ngImport: i0, template: "<cp-dialog-base\n [data]=\"data\"\n [dialogType]=\"dialogType\"\n (closed)=\"dialogRef.close($event)\">\n</cp-dialog-base>", styles: [""], dependencies: [{ kind: "component", type: BaseComponent, selector: "cp-dialog-base", inputs: ["dialogType", "data"], outputs: ["closed"] }] }); }
172
172
  }
173
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MessageComponent, decorators: [{
173
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: MessageComponent, decorators: [{
174
174
  type: Component,
175
- args: [{ selector: 'cp-dialog-message', template: "<cp-dialog-base\r\n [data]=\"data\"\r\n [dialogType]=\"dialogType\"\r\n (closed)=\"dialogRef.close($event)\">\r\n</cp-dialog-base>" }]
175
+ args: [{ selector: 'cp-dialog-message', template: "<cp-dialog-base\n [data]=\"data\"\n [dialogType]=\"dialogType\"\n (closed)=\"dialogRef.close($event)\">\n</cp-dialog-base>" }]
176
176
  }] });
177
177
 
178
178
  class DialogModule {
179
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
180
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.2", ngImport: i0, type: DialogModule, declarations: [BaseComponent,
179
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DialogModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
180
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: DialogModule, declarations: [BaseComponent,
181
181
  ChoiceComponent,
182
182
  ConfirmationComponent,
183
183
  InputComponent,
@@ -192,7 +192,7 @@ class DialogModule {
192
192
  ConfirmationComponent,
193
193
  InputComponent,
194
194
  MessageComponent] }); }
195
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DialogModule, imports: [CommonModule,
195
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DialogModule, imports: [CommonModule,
196
196
  FormsModule,
197
197
  MatButtonModule,
198
198
  MatCheckboxModule,
@@ -200,7 +200,7 @@ class DialogModule {
200
200
  MatFormFieldModule,
201
201
  MatInputModule] }); }
202
202
  }
203
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: DialogModule, decorators: [{
203
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: DialogModule, decorators: [{
204
204
  type: NgModule,
205
205
  args: [{
206
206
  declarations: [
@@ -1 +1 @@
1
- {"version":3,"file":"cleavelandprice-ngx-lib-dialog.mjs","sources":["../../../../projects/cleavelandprice/ngx-lib/dialog/src/model/confirmation-dialog-mode.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/model/dialog-type.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/base/base.component.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/base/base.component.html","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/choice/choice.component.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/choice/choice.component.html","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/confirmation/confirmation.component.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/confirmation/confirmation.component.html","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/input/input.component.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/input/input.component.html","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/message/message.component.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/message/message.component.html","../../../../projects/cleavelandprice/ngx-lib/dialog/src/dialog.module.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/cleavelandprice-ngx-lib-dialog.ts"],"sourcesContent":["export enum ConfirmationDialogMode {\r\n OkCancel,\r\n YesNo,\r\n TrueFalse,\r\n Custom\r\n}","export enum DialogType {\r\n Choice,\r\n Confirmation,\r\n Input,\r\n Message\r\n}","import { Component, EventEmitter, OnInit, Output, input } from '@angular/core';\r\n\r\nimport { ConfirmationDialogMode } from '../../model/confirmation-dialog-mode';\r\nimport { DialogBaseData } from '../../model/dialog-base-data';\r\nimport { DialogChoiceData } from '../../model/dialog-choice-data';\r\nimport { DialogType } from '../../model/dialog-type';\r\n\r\n@Component({\r\n selector: 'cp-dialog-base',\r\n templateUrl: './base.component.html',\r\n styleUrls: ['./base.component.css']\r\n})\r\nexport class BaseComponent implements OnInit {\r\n // This is so that DialogType can be accessible from the HTML template\r\n DialogType = DialogType;\r\n dialogType = input(DialogType.Message);\r\n data = input.required<DialogBaseData>();\r\n @Output() closed = new EventEmitter<any>();\r\n\r\n ConfirmationDialogMode = ConfirmationDialogMode;\r\n\r\n // Form values\r\n userInput?: string;\r\n checkboxValue!: boolean;\r\n\r\n get #customTrueFalseTextValid(): boolean {\r\n return this.data().customTrueFalseText?.length === 2;\r\n }\r\n\r\n get customTrueText(): string | undefined {\r\n return this.#customTrueFalseTextValid ?\r\n this.data().customTrueFalseText![0] :\r\n undefined;\r\n }\r\n\r\n get customFalseText(): string | undefined {\r\n return this.#customTrueFalseTextValid ?\r\n this.data().customTrueFalseText![1] :\r\n undefined;\r\n }\r\n\r\n get choices(): string[] | null {\r\n return this.dialogType() === DialogType.Choice ?\r\n (this.data() as DialogChoiceData).choices :\r\n null;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.userInput = this.data().value;\r\n }\r\n\r\n close(): void {\r\n let data: any;\r\n\r\n switch (this.dialogType()) {\r\n case DialogType.Message:\r\n data = this.data().checkboxMessage ?\r\n {\r\n checkbox: this.checkboxValue || false\r\n } :\r\n null;\r\n break;\r\n case DialogType.Input:\r\n data = this.data().checkboxMessage ?\r\n {\r\n response: this.userInput,\r\n checkbox: this.checkboxValue || false\r\n } :\r\n this.userInput;\r\n break;\r\n case DialogType.Confirmation:\r\n data = this.data().checkboxMessage ?\r\n {\r\n response: true,\r\n checkbox: this.checkboxValue || false\r\n } :\r\n true;\r\n break;\r\n }\r\n\r\n this.closed.emit(data);\r\n }\r\n\r\n cancel(): void {\r\n let data: any;\r\n\r\n if (this.dialogType() === DialogType.Confirmation) {\r\n data = this.data().checkboxMessage ?\r\n {\r\n response: false,\r\n checkbox: this.checkboxValue || false\r\n } :\r\n false;\r\n }\r\n\r\n this.closed.emit(data);\r\n }\r\n}\r\n","@if (data().title) {\r\n <h2 mat-dialog-title [innerHTML]=\"data().title\"></h2>\r\n}\r\n\r\n<mat-dialog-content>\r\n @if (data().message) {\r\n <div [innerHTML]=\"data().message\"></div>\r\n }\r\n\r\n @if (dialogType() === DialogType.Input) {\r\n <mat-form-field>\r\n <textarea matInput [placeholder]=\"data().placeholder ?? ''\" [(ngModel)]=\"userInput\"></textarea>\r\n </mat-form-field>\r\n }\r\n\r\n @if (data().checkboxMessage) {\r\n <div id=\"checkbox\">\r\n <mat-checkbox [(ngModel)]=\"checkboxValue\">\r\n <span [innerHTML]=\"data().checkboxMessage\"></span>\r\n </mat-checkbox>\r\n </div>\r\n }\r\n</mat-dialog-content>\r\n\r\n<mat-dialog-actions>\r\n @if (dialogType() !== DialogType.Choice) {\r\n <button mat-raised-button (click)=\"close()\" [disabled]=\"dialogType() === DialogType.Input && !userInput\">\r\n <span>\r\n @switch (data().mode) {\r\n @case (ConfirmationDialogMode.YesNo) {\r\n <span>Yes</span>\r\n }\r\n @case (ConfirmationDialogMode.TrueFalse) {\r\n <span>True</span>\r\n }\r\n @case (ConfirmationDialogMode.Custom) {\r\n <span>{{ customTrueText }}</span>\r\n }\r\n @default {\r\n <span>OK</span>\r\n }\r\n }\r\n </span>\r\n </button>\r\n @if (dialogType() !== DialogType.Message) {\r\n <button mat-raised-button (click)=\"cancel()\">\r\n <span>\r\n @switch (data().mode) {\r\n @case (ConfirmationDialogMode.YesNo) {\r\n <span>No</span>\r\n }\r\n @case (ConfirmationDialogMode.TrueFalse) {\r\n <span>False</span>\r\n }\r\n @case (ConfirmationDialogMode.Custom) {\r\n <span>{{ customFalseText }}</span>\r\n }\r\n @default {\r\n <span>Cancel</span>\r\n }\r\n }\r\n </span>\r\n </button>\r\n }\r\n }\r\n\r\n @if (dialogType() === DialogType.Choice) {\r\n @for (choice of choices; track choice; let i = $index) {\r\n <button mat-raised-button [matDialogClose]=\"i\">\r\n <span>{{ choice }}</span>\r\n </button>\r\n }\r\n }\r\n</mat-dialog-actions>","import { Component, inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\nimport { DialogChoiceData } from '../../model/dialog-choice-data';\r\nimport { DialogType } from '../../model/dialog-type';\r\n\r\n@Component({\r\n selector: 'cp-dialog-choice',\r\n templateUrl: './choice.component.html',\r\n styleUrls: ['./choice.component.css']\r\n})\r\nexport class ChoiceComponent {\r\n //#region Services\r\n public data = inject<DialogChoiceData>(MAT_DIALOG_DATA);\r\n public dialogRef = inject(MatDialogRef<ChoiceComponent>);\r\n //#endregion\r\n\r\n dialogType = DialogType.Choice;\r\n}\r\n","<cp-dialog-base\r\n [data]=\"data\"\r\n [dialogType]=\"dialogType\"\r\n (closed)=\"dialogRef.close($event)\">\r\n</cp-dialog-base>","import { Component, inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\nimport { DialogBaseData } from '../../model/dialog-base-data';\r\nimport { DialogType } from '../../model/dialog-type';\r\n\r\n@Component({\r\n selector: 'cp-dialog-confirmation',\r\n templateUrl: './confirmation.component.html',\r\n styleUrls: ['./confirmation.component.css']\r\n})\r\nexport class ConfirmationComponent {\r\n //#region Services\r\n public data = inject<DialogBaseData>(MAT_DIALOG_DATA);\r\n public dialogRef = inject(MatDialogRef<ConfirmationComponent>);\r\n //#endregion\r\n\r\n dialogType = DialogType.Confirmation;\r\n}\r\n","<cp-dialog-base\r\n [data]=\"data\"\r\n [dialogType]=\"dialogType\"\r\n (closed)=\"dialogRef.close($event)\">\r\n</cp-dialog-base>","import { Component, inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\nimport { DialogBaseData } from '../../model/dialog-base-data';\r\nimport { DialogType } from '../../model/dialog-type';\r\n\r\n@Component({\r\n selector: 'cp-dialog-input',\r\n templateUrl: './input.component.html',\r\n styleUrls: ['./input.component.css']\r\n})\r\nexport class InputComponent {\r\n //#region Services\r\n public data = inject<DialogBaseData>(MAT_DIALOG_DATA);\r\n public dialogRef = inject(MatDialogRef<InputComponent>);\r\n //#endregion\r\n\r\n dialogType = DialogType.Input;\r\n}\r\n","<cp-dialog-base\r\n [data]=\"data\"\r\n [dialogType]=\"dialogType\"\r\n (closed)=\"dialogRef.close($event)\">\r\n</cp-dialog-base>","import { Component, inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\nimport { DialogBaseData } from '../../model/dialog-base-data';\r\nimport { DialogType } from '../../model/dialog-type';\r\n\r\n@Component({\r\n selector: 'cp-dialog-message',\r\n templateUrl: './message.component.html',\r\n styleUrls: ['./message.component.css']\r\n})\r\nexport class MessageComponent {\r\n //#region Services\r\n public data = inject<DialogBaseData>(MAT_DIALOG_DATA);\r\n public dialogRef = inject(MatDialogRef<MessageComponent>);\r\n //#endregion\r\n\r\n dialogType = DialogType.Message;\r\n}\r\n","<cp-dialog-base\r\n [data]=\"data\"\r\n [dialogType]=\"dialogType\"\r\n (closed)=\"dialogRef.close($event)\">\r\n</cp-dialog-base>","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\nimport { FormsModule } from '@angular/forms';\r\n\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatDialogModule } from '@angular/material/dialog';\r\nimport { MatFormFieldModule } from '@angular/material/form-field';\r\nimport { MatInputModule } from '@angular/material/input';\r\n\r\nimport { BaseComponent } from './components/base/base.component';\r\nimport { ChoiceComponent } from './components/choice/choice.component';\r\nimport { ConfirmationComponent } from './components/confirmation/confirmation.component';\r\nimport { InputComponent } from './components/input/input.component';\r\nimport { MessageComponent } from './components/message/message.component';\r\n\r\n@NgModule({\r\n declarations: [\r\n BaseComponent,\r\n ChoiceComponent,\r\n ConfirmationComponent,\r\n InputComponent,\r\n MessageComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n\r\n MatButtonModule,\r\n MatCheckboxModule,\r\n MatDialogModule,\r\n MatFormFieldModule,\r\n MatInputModule\r\n ],\r\n exports: [\r\n BaseComponent,\r\n ChoiceComponent,\r\n ConfirmationComponent,\r\n InputComponent,\r\n MessageComponent\r\n ]\r\n})\r\nexport class DialogModule { }\r\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.BaseComponent"],"mappings":"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"}
1
+ {"version":3,"file":"cleavelandprice-ngx-lib-dialog.mjs","sources":["../../../../projects/cleavelandprice/ngx-lib/dialog/src/model/confirmation-dialog-mode.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/model/dialog-type.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/base/base.component.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/base/base.component.html","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/choice/choice.component.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/choice/choice.component.html","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/confirmation/confirmation.component.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/confirmation/confirmation.component.html","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/input/input.component.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/input/input.component.html","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/message/message.component.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/components/message/message.component.html","../../../../projects/cleavelandprice/ngx-lib/dialog/src/dialog.module.ts","../../../../projects/cleavelandprice/ngx-lib/dialog/src/cleavelandprice-ngx-lib-dialog.ts"],"sourcesContent":["export enum ConfirmationDialogMode {\r\n OkCancel,\r\n YesNo,\r\n TrueFalse,\r\n Custom\r\n}","export enum DialogType {\r\n Choice,\r\n Confirmation,\r\n Input,\r\n Message\r\n}","import { Component, EventEmitter, OnInit, Output, input } from '@angular/core';\r\n\r\nimport { ConfirmationDialogMode } from '../../model/confirmation-dialog-mode';\r\nimport { DialogBaseData } from '../../model/dialog-base-data';\r\nimport { DialogChoiceData } from '../../model/dialog-choice-data';\r\nimport { DialogType } from '../../model/dialog-type';\r\n\r\n@Component({\r\n selector: 'cp-dialog-base',\r\n templateUrl: './base.component.html',\r\n styleUrls: ['./base.component.css']\r\n})\r\nexport class BaseComponent implements OnInit {\r\n // This is so that DialogType can be accessible from the HTML template\r\n DialogType = DialogType;\r\n dialogType = input(DialogType.Message);\r\n data = input.required<DialogBaseData>();\r\n @Output() closed = new EventEmitter<any>();\r\n\r\n ConfirmationDialogMode = ConfirmationDialogMode;\r\n\r\n // Form values\r\n userInput?: string;\r\n checkboxValue!: boolean;\r\n\r\n get #customTrueFalseTextValid(): boolean {\r\n return this.data().customTrueFalseText?.length === 2;\r\n }\r\n\r\n get customTrueText(): string | undefined {\r\n return this.#customTrueFalseTextValid ?\r\n this.data().customTrueFalseText![0] :\r\n undefined;\r\n }\r\n\r\n get customFalseText(): string | undefined {\r\n return this.#customTrueFalseTextValid ?\r\n this.data().customTrueFalseText![1] :\r\n undefined;\r\n }\r\n\r\n get choices(): string[] | null {\r\n return this.dialogType() === DialogType.Choice ?\r\n (this.data() as DialogChoiceData).choices :\r\n null;\r\n }\r\n\r\n ngOnInit(): void {\r\n this.userInput = this.data().value;\r\n }\r\n\r\n close(): void {\r\n let data: any;\r\n\r\n switch (this.dialogType()) {\r\n case DialogType.Message:\r\n data = this.data().checkboxMessage ?\r\n {\r\n checkbox: this.checkboxValue || false\r\n } :\r\n null;\r\n break;\r\n case DialogType.Input:\r\n data = this.data().checkboxMessage ?\r\n {\r\n response: this.userInput,\r\n checkbox: this.checkboxValue || false\r\n } :\r\n this.userInput;\r\n break;\r\n case DialogType.Confirmation:\r\n data = this.data().checkboxMessage ?\r\n {\r\n response: true,\r\n checkbox: this.checkboxValue || false\r\n } :\r\n true;\r\n break;\r\n }\r\n\r\n this.closed.emit(data);\r\n }\r\n\r\n cancel(): void {\r\n let data: any;\r\n\r\n if (this.dialogType() === DialogType.Confirmation) {\r\n data = this.data().checkboxMessage ?\r\n {\r\n response: false,\r\n checkbox: this.checkboxValue || false\r\n } :\r\n false;\r\n }\r\n\r\n this.closed.emit(data);\r\n }\r\n}\r\n","@if (data().title) {\n <h2 mat-dialog-title [innerHTML]=\"data().title\"></h2>\n}\n\n<mat-dialog-content>\n @if (data().message) {\n <div [innerHTML]=\"data().message\"></div>\n }\n\n @if (dialogType() === DialogType.Input) {\n <mat-form-field>\n <textarea matInput [placeholder]=\"data().placeholder ?? ''\" [(ngModel)]=\"userInput\"></textarea>\n </mat-form-field>\n }\n\n @if (data().checkboxMessage) {\n <div id=\"checkbox\">\n <mat-checkbox [(ngModel)]=\"checkboxValue\">\n <span [innerHTML]=\"data().checkboxMessage\"></span>\n </mat-checkbox>\n </div>\n }\n</mat-dialog-content>\n\n<mat-dialog-actions>\n @if (dialogType() !== DialogType.Choice) {\n <button mat-raised-button (click)=\"close()\" [disabled]=\"dialogType() === DialogType.Input && !userInput\">\n <span>\n @switch (data().mode) {\n @case (ConfirmationDialogMode.YesNo) {\n <span>Yes</span>\n }\n @case (ConfirmationDialogMode.TrueFalse) {\n <span>True</span>\n }\n @case (ConfirmationDialogMode.Custom) {\n <span>{{ customTrueText }}</span>\n }\n @default {\n <span>OK</span>\n }\n }\n </span>\n </button>\n @if (dialogType() !== DialogType.Message) {\n <button mat-raised-button (click)=\"cancel()\">\n <span>\n @switch (data().mode) {\n @case (ConfirmationDialogMode.YesNo) {\n <span>No</span>\n }\n @case (ConfirmationDialogMode.TrueFalse) {\n <span>False</span>\n }\n @case (ConfirmationDialogMode.Custom) {\n <span>{{ customFalseText }}</span>\n }\n @default {\n <span>Cancel</span>\n }\n }\n </span>\n </button>\n }\n }\n\n @if (dialogType() === DialogType.Choice) {\n @for (choice of choices; track choice; let i = $index) {\n <button mat-raised-button [matDialogClose]=\"i\">\n <span>{{ choice }}</span>\n </button>\n }\n }\n</mat-dialog-actions>","import { Component, inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\nimport { DialogChoiceData } from '../../model/dialog-choice-data';\r\nimport { DialogType } from '../../model/dialog-type';\r\n\r\n@Component({\r\n selector: 'cp-dialog-choice',\r\n templateUrl: './choice.component.html',\r\n styleUrls: ['./choice.component.css']\r\n})\r\nexport class ChoiceComponent {\r\n //#region Services\r\n public data = inject<DialogChoiceData>(MAT_DIALOG_DATA);\r\n public dialogRef = inject(MatDialogRef<ChoiceComponent>);\r\n //#endregion\r\n\r\n dialogType = DialogType.Choice;\r\n}\r\n","<cp-dialog-base\n [data]=\"data\"\n [dialogType]=\"dialogType\"\n (closed)=\"dialogRef.close($event)\">\n</cp-dialog-base>","import { Component, inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\nimport { DialogBaseData } from '../../model/dialog-base-data';\r\nimport { DialogType } from '../../model/dialog-type';\r\n\r\n@Component({\r\n selector: 'cp-dialog-confirmation',\r\n templateUrl: './confirmation.component.html',\r\n styleUrls: ['./confirmation.component.css']\r\n})\r\nexport class ConfirmationComponent {\r\n //#region Services\r\n public data = inject<DialogBaseData>(MAT_DIALOG_DATA);\r\n public dialogRef = inject(MatDialogRef<ConfirmationComponent>);\r\n //#endregion\r\n\r\n dialogType = DialogType.Confirmation;\r\n}\r\n","<cp-dialog-base\n [data]=\"data\"\n [dialogType]=\"dialogType\"\n (closed)=\"dialogRef.close($event)\">\n</cp-dialog-base>","import { Component, inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\nimport { DialogBaseData } from '../../model/dialog-base-data';\r\nimport { DialogType } from '../../model/dialog-type';\r\n\r\n@Component({\r\n selector: 'cp-dialog-input',\r\n templateUrl: './input.component.html',\r\n styleUrls: ['./input.component.css']\r\n})\r\nexport class InputComponent {\r\n //#region Services\r\n public data = inject<DialogBaseData>(MAT_DIALOG_DATA);\r\n public dialogRef = inject(MatDialogRef<InputComponent>);\r\n //#endregion\r\n\r\n dialogType = DialogType.Input;\r\n}\r\n","<cp-dialog-base\n [data]=\"data\"\n [dialogType]=\"dialogType\"\n (closed)=\"dialogRef.close($event)\">\n</cp-dialog-base>","import { Component, inject } from '@angular/core';\r\nimport { MatDialogRef, MAT_DIALOG_DATA } from '@angular/material/dialog';\r\n\r\nimport { DialogBaseData } from '../../model/dialog-base-data';\r\nimport { DialogType } from '../../model/dialog-type';\r\n\r\n@Component({\r\n selector: 'cp-dialog-message',\r\n templateUrl: './message.component.html',\r\n styleUrls: ['./message.component.css']\r\n})\r\nexport class MessageComponent {\r\n //#region Services\r\n public data = inject<DialogBaseData>(MAT_DIALOG_DATA);\r\n public dialogRef = inject(MatDialogRef<MessageComponent>);\r\n //#endregion\r\n\r\n dialogType = DialogType.Message;\r\n}\r\n","<cp-dialog-base\n [data]=\"data\"\n [dialogType]=\"dialogType\"\n (closed)=\"dialogRef.close($event)\">\n</cp-dialog-base>","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { FormsModule } from '@angular/forms';\n\nimport { MatButtonModule } from '@angular/material/button';\nimport { MatCheckboxModule } from '@angular/material/checkbox';\nimport { MatDialogModule } from '@angular/material/dialog';\nimport { MatFormFieldModule } from '@angular/material/form-field';\nimport { MatInputModule } from '@angular/material/input';\n\nimport { BaseComponent } from './components/base/base.component';\nimport { ChoiceComponent } from './components/choice/choice.component';\nimport { ConfirmationComponent } from './components/confirmation/confirmation.component';\nimport { InputComponent } from './components/input/input.component';\nimport { MessageComponent } from './components/message/message.component';\n\n@NgModule({\n declarations: [\n BaseComponent,\n ChoiceComponent,\n ConfirmationComponent,\n InputComponent,\n MessageComponent\n ],\n imports: [\n CommonModule,\n FormsModule,\n\n MatButtonModule,\n MatCheckboxModule,\n MatDialogModule,\n MatFormFieldModule,\n MatInputModule\n ],\n exports: [\n BaseComponent,\n ChoiceComponent,\n ConfirmationComponent,\n InputComponent,\n MessageComponent\n ]\n})\nexport class DialogModule { }\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":["i1.BaseComponent"],"mappings":"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"}
@@ -149,11 +149,11 @@ class MSGraphModule {
149
149
  throw new Error('MSGraphModule is already loaded. Import it in the AppModule only');
150
150
  }
151
151
  }
152
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MSGraphModule, deps: [{ token: MSGraphModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
153
- static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.2", ngImport: i0, type: MSGraphModule, imports: [CommonModule] }); }
154
- static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MSGraphModule, imports: [CommonModule] }); }
152
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: MSGraphModule, deps: [{ token: MSGraphModule, optional: true, skipSelf: true }], target: i0.ɵɵFactoryTarget.NgModule }); }
153
+ static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.3.0", ngImport: i0, type: MSGraphModule, imports: [CommonModule] }); }
154
+ static { this.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: MSGraphModule, imports: [CommonModule] }); }
155
155
  }
156
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: MSGraphModule, decorators: [{
156
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.3.0", ngImport: i0, type: MSGraphModule, decorators: [{
157
157
  type: NgModule,
158
158
  args: [{
159
159
  declarations: [],
@@ -1 +1 @@
1
- {"version":3,"file":"cleavelandprice-ngx-lib-msgraph.mjs","sources":["../../../../projects/cleavelandprice/ngx-lib/msgraph/src/model/room.ts","../../../../projects/cleavelandprice/ngx-lib/msgraph/src/model/user.ts","../../../../projects/cleavelandprice/ngx-lib/msgraph/src/msgraph.module.ts","../../../../projects/cleavelandprice/ngx-lib/msgraph/src/cleavelandprice-ngx-lib-msgraph.ts"],"sourcesContent":["import { Address } from \"./address\";\r\nimport { Coordinates } from \"./coordinates\";\r\n\r\nexport interface Room {\r\n address: Address;\r\n audioDeviceName: string;\r\n bookingType: number;\r\n building: string;\r\n capacity: number;\r\n displayDeviceName: string;\r\n emailAddress: string;\r\n floorLabel: string;\r\n floorNumber: number;\r\n geoCoordinates: Coordinates;\r\n isWheelChairAccessible: boolean;\r\n label: string;\r\n nickname: string;\r\n videoDeviceName: string;\r\n displayName: string;\r\n phone: string;\r\n id: string;\r\n oDataType: string;\r\n}\r\n\r\n/*\r\n additionalData :\r\n tags : {}\r\n*/","export interface User {\r\n city: string;\r\n createdDateTime: string; //Date;\r\n department: string;\r\n displayName: string;\r\n faxNumber: string;\r\n givenName: string;\r\n id: string;\r\n jobTitle: string;\r\n lastPasswordChangeDateTime: string; //Date;\r\n mail: string;\r\n mobilePhone: string;\r\n oDataType: string;\r\n onPremisesDistinguishedName: string;\r\n onPremisesDomainName: string;\r\n onPremisesImmutableId: string;\r\n onPremisesLastSyncDateTime: string; //Date;\r\n onPremisesSamAccountName: string;\r\n onPremisesSecurityIdentifier: string;\r\n onPremisesSyncEnabled: boolean;\r\n onPremisesUserPrincipalName: string;\r\n postalCode: string;\r\n securityIdentifier: string;\r\n state: string;\r\n streetAddress: string;\r\n surname: string;\r\n userPrincipalName: string;\r\n userType: string;\r\n}\r\n\r\n/*\r\naccountEnabled :\r\nageGroup :\r\nassignedLicenses :\r\nassignedPlans :\r\nauthorizationInfo :\r\nbusinessPhones :\r\ncompanyName :\r\nconsentProvidedForMinor :\r\ncountry :\r\ncreationType :\r\nemployeeHireDate :\r\nemployeeId :\r\nemployeeOrgData :\r\nemployeeType :\r\nexternalUserState :\r\nexternalUserStateChangeDateTime :\r\nidentities :\r\nimAddresses :\r\nisResourceAccount :\r\nlegalAgeGroupClassification :\r\nlicenseAssignmentStates :\r\nmailNickname :\r\nofficeLocation :\r\nonPremisesExtensionAttributes : @{extensionAttribute1=DBR; extensionAttribute10=; extensionAttribute11=; extensionAttribute12=; extensionAttribute13=; extensionAttribute14=; extensionAttribute15=; extensionAttribute2=; extensionAttribute3=; extensionAttribute4=;\r\n extensionAttribute5=; extensionAttribute6=; extensionAttribute7=; extensionAttribute8=; extensionAttribute9=; additionalData=; oDataType=}\r\nonPremisesProvisioningErrors :\r\notherMails :\r\npasswordPolicies : DisablePasswordExpiration\r\npasswordProfile :\r\npreferredDataLocation :\r\npreferredLanguage :\r\nprovisionedPlans :\r\nproxyAddresses :\r\nshowInAddressList :\r\nsignInSessionsValidFromDateTime :\r\nusageLocation :\r\nmailboxSettings :\r\ndeviceEnrollmentLimit :\r\naboutMe :\r\nbirthday :\r\nhireDate :\r\ninterests :\r\nmySite :\r\npastProjects :\r\npreferredName :\r\nresponsibilities :\r\nschools :\r\nskills :\r\nappRoleAssignments :\r\nappRoleAssignmentsNextLink :\r\ncreatedObjects :\r\ncreatedObjectsNextLink :\r\ndirectReports :\r\ndirectReportsNextLink :\r\nlicenseDetails :\r\nlicenseDetailsNextLink :\r\nmanager :\r\nmemberOf :\r\nmemberOfNextLink :\r\noauth2PermissionGrants :\r\noauth2PermissionGrantsNextLink :\r\nownedDevices :\r\nownedDevicesNextLink :\r\nownedObjects :\r\nownedObjectsNextLink :\r\nregisteredDevices :\r\nregisteredDevicesNextLink :\r\nscopedRoleMemberOf :\r\nscopedRoleMemberOfNextLink :\r\ntransitiveMemberOf :\r\ntransitiveMemberOfNextLink : \r\ncalendar :\r\ncalendarGroups :\r\ncalendarGroupsNextLink :\r\ncalendars :\r\ncalendarsNextLink :\r\ncalendarView :\r\ncalendarViewNextLink :\r\ncontactFolders :\r\ncontactFoldersNextLink :\r\ncontacts :\r\ncontactsNextLink :\r\nevents :\r\neventsNextLink :\r\ninferenceClassification :\r\nmailFolders :\r\nmailFoldersNextLink :\r\nmessages :\r\nmessagesNextLink :\r\noutlook :\r\npeople :\r\npeopleNextLink :\r\ndrive :\r\ndrives :\r\ndrivesNextLink :\r\nfollowedSites :\r\nfollowedSitesNextLink :\r\nextensions :\r\nextensionsNextLink :\r\nagreementAcceptances :\r\nagreementAcceptancesNextLink :\r\nmanagedDevices :\r\nmanagedDevicesNextLink :\r\nmanagedAppRegistrations :\r\nmanagedAppRegistrationsNextLink :\r\ndeviceManagementTroubleshootingEvents :\r\ndeviceManagementTroubleshootingEventsNextLink :\r\nplanner :\r\ninsights :\r\nsettings :\r\nonenote :\r\nphoto :\r\nphotos :\r\nphotosNextLink :\r\nactivities :\r\nactivitiesNextLink :\r\nonlineMeetings :\r\nonlineMeetingsNextLink :\r\npresence :\r\nauthentication :\r\nchats :\r\nchatsNextLink :\r\njoinedTeams :\r\njoinedTeamsNextLink :\r\nteamwork :\r\ntodo :\r\ndeletedDateTime :\r\nadditionalData :\r\n*/","import { ModuleWithProviders, NgModule, Optional, SkipSelf } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\n@NgModule({\r\n declarations: [],\r\n imports: [\r\n CommonModule\r\n ]\r\n})\r\nexport class MSGraphModule {\r\n static forRoot(): ModuleWithProviders<MSGraphModule> {\r\n return {\r\n ngModule: MSGraphModule\r\n };\r\n }\r\n\r\n constructor(@Optional() @SkipSelf() parentModule: MSGraphModule) {\r\n if (parentModule) {\r\n throw new Error(\r\n 'MSGraphModule is already loaded. Import it in the AppModule only');\r\n }\r\n }\r\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;AAwBA;;;AAGE;;ACGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiIE;;MCtJW,aAAa,CAAA;AACxB,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,aAAa;SACxB,CAAC;KACH;AAED,IAAA,WAAA,CAAoC,YAA2B,EAAA;QAC7D,IAAI,YAAY,EAAE;AAChB,YAAA,MAAM,IAAI,KAAK,CACb,kEAAkE,CAAC,CAAC;SACvE;KACF;8GAZU,aAAa,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAHtB,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;AAGH,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAHtB,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGH,aAAa,EAAA,UAAA,EAAA,CAAA;kBANzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,EAAE;AAChB,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;0BAQc,QAAQ;;0BAAI,QAAQ;;;AChBnC;;AAEG;;;;"}
1
+ {"version":3,"file":"cleavelandprice-ngx-lib-msgraph.mjs","sources":["../../../../projects/cleavelandprice/ngx-lib/msgraph/src/model/room.ts","../../../../projects/cleavelandprice/ngx-lib/msgraph/src/model/user.ts","../../../../projects/cleavelandprice/ngx-lib/msgraph/src/msgraph.module.ts","../../../../projects/cleavelandprice/ngx-lib/msgraph/src/cleavelandprice-ngx-lib-msgraph.ts"],"sourcesContent":["import { Address } from \"./address\";\r\nimport { Coordinates } from \"./coordinates\";\r\n\r\nexport interface Room {\r\n address: Address;\r\n audioDeviceName: string;\r\n bookingType: number;\r\n building: string;\r\n capacity: number;\r\n displayDeviceName: string;\r\n emailAddress: string;\r\n floorLabel: string;\r\n floorNumber: number;\r\n geoCoordinates: Coordinates;\r\n isWheelChairAccessible: boolean;\r\n label: string;\r\n nickname: string;\r\n videoDeviceName: string;\r\n displayName: string;\r\n phone: string;\r\n id: string;\r\n oDataType: string;\r\n}\r\n\r\n/*\r\n additionalData :\r\n tags : {}\r\n*/","export interface User {\r\n city: string;\r\n createdDateTime: string; //Date;\r\n department: string;\r\n displayName: string;\r\n faxNumber: string;\r\n givenName: string;\r\n id: string;\r\n jobTitle: string;\r\n lastPasswordChangeDateTime: string; //Date;\r\n mail: string;\r\n mobilePhone: string;\r\n oDataType: string;\r\n onPremisesDistinguishedName: string;\r\n onPremisesDomainName: string;\r\n onPremisesImmutableId: string;\r\n onPremisesLastSyncDateTime: string; //Date;\r\n onPremisesSamAccountName: string;\r\n onPremisesSecurityIdentifier: string;\r\n onPremisesSyncEnabled: boolean;\r\n onPremisesUserPrincipalName: string;\r\n postalCode: string;\r\n securityIdentifier: string;\r\n state: string;\r\n streetAddress: string;\r\n surname: string;\r\n userPrincipalName: string;\r\n userType: string;\r\n}\r\n\r\n/*\r\naccountEnabled :\r\nageGroup :\r\nassignedLicenses :\r\nassignedPlans :\r\nauthorizationInfo :\r\nbusinessPhones :\r\ncompanyName :\r\nconsentProvidedForMinor :\r\ncountry :\r\ncreationType :\r\nemployeeHireDate :\r\nemployeeId :\r\nemployeeOrgData :\r\nemployeeType :\r\nexternalUserState :\r\nexternalUserStateChangeDateTime :\r\nidentities :\r\nimAddresses :\r\nisResourceAccount :\r\nlegalAgeGroupClassification :\r\nlicenseAssignmentStates :\r\nmailNickname :\r\nofficeLocation :\r\nonPremisesExtensionAttributes : @{extensionAttribute1=DBR; extensionAttribute10=; extensionAttribute11=; extensionAttribute12=; extensionAttribute13=; extensionAttribute14=; extensionAttribute15=; extensionAttribute2=; extensionAttribute3=; extensionAttribute4=;\r\n extensionAttribute5=; extensionAttribute6=; extensionAttribute7=; extensionAttribute8=; extensionAttribute9=; additionalData=; oDataType=}\r\nonPremisesProvisioningErrors :\r\notherMails :\r\npasswordPolicies : DisablePasswordExpiration\r\npasswordProfile :\r\npreferredDataLocation :\r\npreferredLanguage :\r\nprovisionedPlans :\r\nproxyAddresses :\r\nshowInAddressList :\r\nsignInSessionsValidFromDateTime :\r\nusageLocation :\r\nmailboxSettings :\r\ndeviceEnrollmentLimit :\r\naboutMe :\r\nbirthday :\r\nhireDate :\r\ninterests :\r\nmySite :\r\npastProjects :\r\npreferredName :\r\nresponsibilities :\r\nschools :\r\nskills :\r\nappRoleAssignments :\r\nappRoleAssignmentsNextLink :\r\ncreatedObjects :\r\ncreatedObjectsNextLink :\r\ndirectReports :\r\ndirectReportsNextLink :\r\nlicenseDetails :\r\nlicenseDetailsNextLink :\r\nmanager :\r\nmemberOf :\r\nmemberOfNextLink :\r\noauth2PermissionGrants :\r\noauth2PermissionGrantsNextLink :\r\nownedDevices :\r\nownedDevicesNextLink :\r\nownedObjects :\r\nownedObjectsNextLink :\r\nregisteredDevices :\r\nregisteredDevicesNextLink :\r\nscopedRoleMemberOf :\r\nscopedRoleMemberOfNextLink :\r\ntransitiveMemberOf :\r\ntransitiveMemberOfNextLink : \r\ncalendar :\r\ncalendarGroups :\r\ncalendarGroupsNextLink :\r\ncalendars :\r\ncalendarsNextLink :\r\ncalendarView :\r\ncalendarViewNextLink :\r\ncontactFolders :\r\ncontactFoldersNextLink :\r\ncontacts :\r\ncontactsNextLink :\r\nevents :\r\neventsNextLink :\r\ninferenceClassification :\r\nmailFolders :\r\nmailFoldersNextLink :\r\nmessages :\r\nmessagesNextLink :\r\noutlook :\r\npeople :\r\npeopleNextLink :\r\ndrive :\r\ndrives :\r\ndrivesNextLink :\r\nfollowedSites :\r\nfollowedSitesNextLink :\r\nextensions :\r\nextensionsNextLink :\r\nagreementAcceptances :\r\nagreementAcceptancesNextLink :\r\nmanagedDevices :\r\nmanagedDevicesNextLink :\r\nmanagedAppRegistrations :\r\nmanagedAppRegistrationsNextLink :\r\ndeviceManagementTroubleshootingEvents :\r\ndeviceManagementTroubleshootingEventsNextLink :\r\nplanner :\r\ninsights :\r\nsettings :\r\nonenote :\r\nphoto :\r\nphotos :\r\nphotosNextLink :\r\nactivities :\r\nactivitiesNextLink :\r\nonlineMeetings :\r\nonlineMeetingsNextLink :\r\npresence :\r\nauthentication :\r\nchats :\r\nchatsNextLink :\r\njoinedTeams :\r\njoinedTeamsNextLink :\r\nteamwork :\r\ntodo :\r\ndeletedDateTime :\r\nadditionalData :\r\n*/","import { ModuleWithProviders, NgModule, Optional, SkipSelf } from '@angular/core';\nimport { CommonModule } from '@angular/common';\n\n@NgModule({\n declarations: [],\n imports: [\n CommonModule\n ]\n})\nexport class MSGraphModule {\n static forRoot(): ModuleWithProviders<MSGraphModule> {\n return {\n ngModule: MSGraphModule\n };\n }\n\n constructor(@Optional() @SkipSelf() parentModule: MSGraphModule) {\n if (parentModule) {\n throw new Error(\n 'MSGraphModule is already loaded. Import it in the AppModule only');\n }\n }\n}","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public_api';\n"],"names":[],"mappings":";;;;AAwBA;;;AAGE;;ACGF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiIE;;MCtJW,aAAa,CAAA;AACxB,IAAA,OAAO,OAAO,GAAA;QACZ,OAAO;AACL,YAAA,QAAQ,EAAE,aAAa;SACxB,CAAC;KACH;AAED,IAAA,WAAA,CAAoC,YAA2B,EAAA;QAC7D,IAAI,YAAY,EAAE;AAChB,YAAA,MAAM,IAAI,KAAK,CACb,kEAAkE,CAAC,CAAC;SACvE;KACF;8GAZU,aAAa,EAAA,IAAA,EAAA,CAAA,EAAA,KAAA,EAAA,aAAA,EAAA,QAAA,EAAA,IAAA,EAAA,QAAA,EAAA,IAAA,EAAA,CAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA,EAAA;AAAb,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAHtB,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;AAGH,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,aAAa,YAHtB,YAAY,CAAA,EAAA,CAAA,CAAA,EAAA;;2FAGH,aAAa,EAAA,UAAA,EAAA,CAAA;kBANzB,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACR,oBAAA,YAAY,EAAE,EAAE;AAChB,oBAAA,OAAO,EAAE;wBACP,YAAY;AACb,qBAAA;AACF,iBAAA,CAAA;;0BAQc,QAAQ;;0BAAI,QAAQ;;;AChBnC;;AAEG;;;;"}