@datarailsshared/datarailsshared 1.4.94-dragons → 1.4.95

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 (34) hide show
  1. package/bundles/datarailsshared-datarailsshared.umd.js +19 -541
  2. package/bundles/datarailsshared-datarailsshared.umd.js.map +1 -1
  3. package/datarailsshared-datarailsshared-1.4.95.tgz +0 -0
  4. package/datarailsshared-datarailsshared.d.ts +0 -8
  5. package/datarailsshared-datarailsshared.metadata.json +1 -1
  6. package/esm2015/datarailsshared-datarailsshared.js +1 -9
  7. package/esm2015/lib/dr-dialog/components/dialog-modal-wrapper/dialog-modal-wrapper.component.js +2 -2
  8. package/esm2015/lib/dr-inputs/dr-select/dr-select.component.js +2 -2
  9. package/esm2015/public-api.js +1 -3
  10. package/fesm2015/datarailsshared-datarailsshared.js +16 -466
  11. package/fesm2015/datarailsshared-datarailsshared.js.map +1 -1
  12. package/package.json +1 -1
  13. package/public-api.d.ts +0 -2
  14. package/datarailsshared-datarailsshared-1.4.94-dragons.tgz +0 -0
  15. package/esm2015/lib/dr-chat/chat.component.js +0 -58
  16. package/esm2015/lib/dr-chat/chat.module.js +0 -37
  17. package/esm2015/lib/dr-chat/dr-chat-form/chat-form.component.js +0 -128
  18. package/esm2015/lib/dr-chat/dr-chat-message/chat-message.component.js +0 -70
  19. package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.directive.js +0 -49
  20. package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.service.js +0 -23
  21. package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-file/chat-message-file.component.js +0 -46
  22. package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-rich-text/chat-message-rich-text.component.js +0 -18
  23. package/esm2015/lib/dr-chat/dr-chat-message/dr-chat-message-text/chat-message-text.component.js +0 -18
  24. package/esm2015/lib/models/chat.js +0 -32
  25. package/lib/dr-chat/chat.component.d.ts +0 -21
  26. package/lib/dr-chat/chat.module.d.ts +0 -2
  27. package/lib/dr-chat/dr-chat-form/chat-form.component.d.ts +0 -56
  28. package/lib/dr-chat/dr-chat-message/chat-message.component.d.ts +0 -38
  29. package/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.directive.d.ts +0 -18
  30. package/lib/dr-chat/dr-chat-message/dr-chat-message-custom/chat-custom-message.service.d.ts +0 -11
  31. package/lib/dr-chat/dr-chat-message/dr-chat-message-file/chat-message-file.component.d.ts +0 -25
  32. package/lib/dr-chat/dr-chat-message/dr-chat-message-rich-text/chat-message-rich-text.component.d.ts +0 -12
  33. package/lib/dr-chat/dr-chat-message/dr-chat-message-text/chat-message-text.component.d.ts +0 -12
  34. package/lib/models/chat.d.ts +0 -105
@@ -22,7 +22,6 @@ import { MatButtonToggleModule } from '@angular/material/button-toggle';
22
22
  import { NgSelectModule } from '@ng-select/ng-select';
23
23
  import { MatTooltipModule } from '@angular/material/tooltip';
24
24
  import { MatTabsModule } from '@angular/material/tabs';
25
- import { DomSanitizer } from '@angular/platform-browser';
26
25
 
27
26
  // import {*} from ""
28
27
  class DateTagComponent {
@@ -251,7 +250,7 @@ const MONTH_FORMATS = {
251
250
  monthYearA11yLabel: 'MMMM YYYY'
252
251
  },
253
252
  };
254
- const ɵ0$7 = MONTH_FORMATS;
253
+ const ɵ0$6 = MONTH_FORMATS;
255
254
  class MonthTagComponent extends AnyTagComponent {
256
255
  constructor() {
257
256
  super();
@@ -310,7 +309,7 @@ MonthTagComponent.decorators = [
310
309
  useClass: MomentDateAdapter,
311
310
  deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS],
312
311
  },
313
- { provide: MAT_DATE_FORMATS, useValue: ɵ0$7 },
312
+ { provide: MAT_DATE_FORMATS, useValue: ɵ0$6 },
314
313
  ]
315
314
  },] }
316
315
  ];
@@ -432,7 +431,7 @@ const WEEK_FORMATS = {
432
431
  monthYearA11yLabel: 'MMMM YYYY'
433
432
  },
434
433
  };
435
- const ɵ0$6 = WEEK_FORMATS;
434
+ const ɵ0$5 = WEEK_FORMATS;
436
435
  class WeekTagComponent extends AnyTagComponent {
437
436
  constructor() {
438
437
  super();
@@ -528,7 +527,7 @@ WeekTagComponent.decorators = [
528
527
  useClass: MomentDateAdapter,
529
528
  deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS],
530
529
  },
531
- { provide: MAT_DATE_FORMATS, useValue: ɵ0$6 },
530
+ { provide: MAT_DATE_FORMATS, useValue: ɵ0$5 },
532
531
  ]
533
532
  },] }
534
533
  ];
@@ -550,7 +549,7 @@ const YEAR_FORMATS = {
550
549
  monthYearA11yLabel: 'MMMM YYYY'
551
550
  },
552
551
  };
553
- const ɵ0$5 = YEAR_FORMATS;
552
+ const ɵ0$4 = YEAR_FORMATS;
554
553
  class YearTagComponent extends AnyTagComponent {
555
554
  constructor() {
556
555
  super();
@@ -615,7 +614,7 @@ YearTagComponent.decorators = [
615
614
  useClass: MomentDateAdapter,
616
615
  deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS],
617
616
  },
618
- { provide: MAT_DATE_FORMATS, useValue: ɵ0$5 },
617
+ { provide: MAT_DATE_FORMATS, useValue: ɵ0$4 },
619
618
  ]
620
619
  },] }
621
620
  ];
@@ -729,7 +728,7 @@ const DAY_FORMATS = {
729
728
  monthYearA11yLabel: 'MMMM YYYY'
730
729
  },
731
730
  };
732
- const ɵ0$4 = DAY_FORMATS;
731
+ const ɵ0$3 = DAY_FORMATS;
733
732
  class DayTagComponent extends AnyTagComponent {
734
733
  constructor() {
735
734
  super();
@@ -780,7 +779,7 @@ DayTagComponent.decorators = [
780
779
  useClass: MomentDateAdapter,
781
780
  deps: [MAT_DATE_LOCALE, MAT_MOMENT_DATE_ADAPTER_OPTIONS],
782
781
  },
783
- { provide: MAT_DATE_FORMATS, useValue: ɵ0$4 },
782
+ { provide: MAT_DATE_FORMATS, useValue: ɵ0$3 },
784
783
  ]
785
784
  },] }
786
785
  ];
@@ -1315,7 +1314,7 @@ class DrSelectComponent {
1315
1314
  DrSelectComponent.decorators = [
1316
1315
  { type: Component, args: [{
1317
1316
  selector: 'dr-select',
1318
- template: "<ng-select [(ngModel)]=\"selectedItem\"\n [items]=\"items\"\n [bindLabel]=\"bindLabel\"\n [bindValue]=\"bindValue\"\n [multiple]=\"multiple\"\n [addTag]=\"addTag\"\n [appendTo]=\"appendTo\"\n [clearable]=\"clearable\"\n [searchable]=\"searchable\"\n [hideSelected]=\"hideSelected\"\n [placeholder]=\"placeholder\"\n [loading]=\"loading\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [keyDownFn]=\"keyDownFn\"\n [searchFn]=\"searchFn\"\n [isOpen]=\"isOpen\"\n [groupBy]=\"groupBy\"\n [attr.autofocus]=\"autofocus\"\n (change)=\"onChange(selectedItem); change.emit(selectedItem)\"\n (open)=\"open.emit($event)\"\n class=\"dr-select\"\n #selectComponent>\n <ng-template *ngIf=\"optionHeaderTemplate\" ng-header-tmp let-item=\"item\">\n <ng-container [ngTemplateOutlet]=\"optionHeaderTemplate\" [ngTemplateOutletContext]=\"{item: item}\"></ng-container>\n </ng-template>\n <ng-template *ngIf=\"labelTemplate\" ng-label-tmp let-item=\"item\">\n <ng-container [ngTemplateOutlet]=\"labelTemplate\" [ngTemplateOutletContext]=\"{item: item}\"></ng-container>\n </ng-template>\n <ng-template *ngIf=\"optionTemplate\" ng-option-tmp let-item=\"item\">\n <ng-container [ngTemplateOutlet]=\"optionTemplate\" [ngTemplateOutletContext]=\"{item: item}\"></ng-container>\n </ng-template>\n <ng-template *ngIf=\"optionWithDescription\" ng-option-tmp let-item=\"item\">\n <div class=\"dr-select__option-with-desc__wrapper\">\n <div>{{ item.name }}</div>\n <div class=\"dr-select__option-with-desc__description\"\n >{{ item?.description }}</div>\n </div>\n </ng-template>\n <ng-template *ngIf=\"optionFooterTemplate\" ng-footer-tmp let-item=\"item\">\n <ng-container [ngTemplateOutlet]=\"optionFooterTemplate\" [ngTemplateOutletContext]=\"{item: item, close: selectComponent.close.bind(selectComponent)}\"></ng-container>\n </ng-template>\n <ng-template *ngIf=\"groupBy\" ng-optgroup-tmp let-item=\"item\">\n {{ item[groupBy] }}\n </ng-template>\n</ng-select>\n",
1317
+ template: "<ng-select [(ngModel)]=\"selectedItem\"\n [items]=\"items\"\n [bindLabel]=\"bindLabel\"\n [bindValue]=\"bindValue\"\n [multiple]=\"multiple\"\n [addTag]=\"addTag\"\n [appendTo]=\"appendTo\"\n [clearable]=\"clearable\"\n [searchable]=\"searchable\"\n [hideSelected]=\"hideSelected\"\n [placeholder]=\"placeholder\"\n [loading]=\"loading\"\n [readonly]=\"readonly\"\n [disabled]=\"disabled\"\n [id]=\"id\"\n [keyDownFn]=\"keyDownFn\"\n [searchFn]=\"searchFn\"\n [isOpen]=\"isOpen\"\n [groupBy]=\"groupBy\"\n [attr.autofocus]=\"autofocus\"\n (change)=\"onChange(selectedItem); change.emit(selectedItem)\"\n (open)=\"open.emit($event)\"\n class=\"dr-select\">\n <ng-template *ngIf=\"optionHeaderTemplate\" ng-header-tmp let-item=\"item\">\n <ng-container [ngTemplateOutlet]=\"optionHeaderTemplate\" [ngTemplateOutletContext]=\"{item: item}\"></ng-container>\n </ng-template>\n <ng-template *ngIf=\"labelTemplate\" ng-label-tmp let-item=\"item\">\n <ng-container [ngTemplateOutlet]=\"labelTemplate\" [ngTemplateOutletContext]=\"{item: item}\"></ng-container>\n </ng-template>\n <ng-template *ngIf=\"optionTemplate\" ng-option-tmp let-item=\"item\">\n <ng-container [ngTemplateOutlet]=\"optionTemplate\" [ngTemplateOutletContext]=\"{item: item}\"></ng-container>\n </ng-template>\n <ng-template *ngIf=\"optionWithDescription\" ng-option-tmp let-item=\"item\">\n <div class=\"dr-select__option-with-desc__wrapper\">\n <div>{{ item.name }}</div>\n <div class=\"dr-select__option-with-desc__description\"\n >{{ item?.description }}</div>\n </div>\n </ng-template>\n <ng-template *ngIf=\"optionFooterTemplate\" ng-footer-tmp let-item=\"item\">\n <ng-container [ngTemplateOutlet]=\"optionFooterTemplate\" [ngTemplateOutletContext]=\"{item: item}\"></ng-container>\n </ng-template>\n <ng-template *ngIf=\"groupBy\" ng-optgroup-tmp let-item=\"item\">\n {{ item[groupBy] }}\n </ng-template>\n</ng-select>\n",
1319
1318
  providers: [{
1320
1319
  provide: NG_VALUE_ACCESSOR,
1321
1320
  useExisting: DrSelectComponent,
@@ -3138,7 +3137,7 @@ class DialogModalWrapperComponent {
3138
3137
  DialogModalWrapperComponent.decorators = [
3139
3138
  { type: Component, args: [{
3140
3139
  selector: 'dr-dialog-modal-wrapper',
3141
- template: "<div header class=\"header-dialog\">\n <h1 class=\"title-dialog\" data-test=\"modalTitle\">{{dialogData.title}}</h1>\n <i mat-icon-button *ngIf=\"!dialogData.hideCloseBtn\" (click)=\"closeDialog()\" class=\"dr-icon-exit icon-close\"\n data-test=\"xBtn\"></i>\n</div>\n<div *ngIf=\"dialogData.content\" class=\"content-dialog\">\n <ng-container>{{dialogData.content}}</ng-container>\n <span #content class=\"content-anchor\"></span>\n</div>\n<form *ngIf=\"dialogData.fields\" [formGroup]=\"form\" class=\"dr-smart-from\">\n <div class=\"dr-smart-form_wrapper\">\n <div *ngFor=\"let field of dialogData.fields\" class=\"dr-smart-form_group\"\n [ngStyle]=\"{'display': field.isLabelFullWidth ? 'block' : 'flex'}\">\n <label *ngIf=\"field.label\" [ngClass]=\"field.isLabelFullWidth ? 'col-md-12 mb-2' : 'col-md-2'\"\n class=\"label p-0 d-flex align-items-center\">{{field.label}}</label>\n <div class=\"input-group p-0\"\n [ngClass]=\"{'col-md-10': field.label && !field.isLabelFullWidth, 'col-md-12': !field.label || field.isLabelFullWidth}\">\n <dr-select *ngIf=\"field.type === 'select'\"\n [searchable]=\"dialogData.searchable\"\n [clearable]=\"dialogData.clearable\"\n [formControlName]=\"field.name\"\n [bindLabel]=\"field.bindLabel || null\"\n [bindValue]=\"field.bindValue || null\"\n [selectedItem]=\"field.default\"\n [items]=\"field.items || (field.items$ | async)\"\n [required]=\"true\"\n [placeholder]=\"field.placeholder\">\n <ng-template *ngIf=\"dialogData?.footerTemplateData\" #optionFooterTemplate let-item=\"item\" let-close=\"close\">\n <button (click)=\"footerAction(); close();\" class=\"dr-select-footer__btn\">\n <i *ngIf=\"dialogData.footerTemplateData.icon\"\n class=\"{{dialogData.footerTemplateData.icon}}\"></i>\n {{dialogData.footerTemplateData.label}}</button>\n </ng-template>\n </dr-select>\n <dr-input *ngIf=\"field.type === 'input'\" data-test=\"modalInput\" class=\"form-control\"\n [formControlName]=\"field.name\" [placeholder]=\"field.placeholder\"></dr-input>\n <label class=\"form-error-alert\" *ngIf=\"dialogData.errorMessage && !form.pristine && form.invalid\">\n {{dialogData.errorMessage}}\n </label>\n <label class=\"form-error-alert\"\n *ngIf=\"form.valid && showServerErrorMessage && dialogData.serverErrorMessage\">\n {{dialogData.serverErrorMessage}}\n </label>\n </div>\n </div>\n </div>\n</form>\n\n<div footer class=\"footer-dialog\">\n <div class=\"buttons-wrapper\" *ngIf=\"dialogData.cancelButton || dialogData.acceptButton\">\n <dr-button *ngIf=\"dialogData.cancelButton\" data-test=\"modalCloseBtn\" (click)=\"closeDialog()\"\n [theme]=\"'secondary'\"> {{dialogData.cancelButton.label}}</dr-button>\n <dr-button *ngIf=\"dialogData.acceptButton\" data-test=\"modalAddBtn\" (click)=\"onAccept()\" [theme]=\"'primary'\"\n [isLoading]=\"isLoading\" [disabled]=\"form.invalid\"> {{dialogData.acceptButton.label}}</dr-button>\n </div>\n</div>\n",
3140
+ template: "<div header class=\"header-dialog\">\n <h1 class=\"title-dialog\" data-test=\"modalTitle\">{{dialogData.title}}</h1>\n <i mat-icon-button *ngIf=\"!dialogData.hideCloseBtn\" (click)=\"closeDialog()\" class=\"dr-icon-exit icon-close\"\n data-test=\"xBtn\"></i>\n</div>\n<div *ngIf=\"dialogData.content\" class=\"content-dialog\">\n <ng-container>{{dialogData.content}}</ng-container>\n <span #content class=\"content-anchor\"></span>\n</div>\n<form *ngIf=\"dialogData.fields\" [formGroup]=\"form\" class=\"dr-smart-from\">\n <div class=\"dr-smart-form_wrapper\">\n <div *ngFor=\"let field of dialogData.fields\" class=\"dr-smart-form_group\"\n [ngStyle]=\"{'display': field.isLabelFullWidth ? 'block' : 'flex'}\">\n <label *ngIf=\"field.label\" [ngClass]=\"field.isLabelFullWidth ? 'col-md-12 mb-2' : 'col-md-2'\"\n class=\"label p-0 d-flex align-items-center\">{{field.label}}</label>\n <div class=\"input-group p-0\"\n [ngClass]=\"{'col-md-10': field.label && !field.isLabelFullWidth, 'col-md-12': !field.label || field.isLabelFullWidth}\">\n <dr-select *ngIf=\"field.type === 'select'\"\n [searchable]=\"dialogData.searchable\"\n [clearable]=\"dialogData.clearable\"\n [formControlName]=\"field.name\"\n [bindLabel]=\"field.bindLabel || null\"\n [bindValue]=\"field.bindValue || null\"\n [selectedItem]=\"field.default\"\n [items]=\"field.items || (field.items$ | async)\"\n [required]=\"true\"\n [placeholder]=\"field.placeholder\">\n <ng-template *ngIf=\"dialogData?.footerTemplateData\" #optionFooterTemplate>\n <button (click)=\"footerAction()\" class=\"dr-select-footer__btn\">\n <i *ngIf=\"dialogData.footerTemplateData.icon\"\n class=\"{{dialogData.footerTemplateData.icon}}\"></i>\n {{dialogData.footerTemplateData.label}}</button>\n </ng-template>\n </dr-select>\n <dr-input *ngIf=\"field.type === 'input'\" data-test=\"modalInput\" class=\"form-control\"\n [formControlName]=\"field.name\" [placeholder]=\"field.placeholder\"></dr-input>\n <label class=\"form-error-alert\" *ngIf=\"dialogData.errorMessage && !form.pristine && form.invalid\">\n {{dialogData.errorMessage}}\n </label>\n <label class=\"form-error-alert\"\n *ngIf=\"form.valid && showServerErrorMessage && dialogData.serverErrorMessage\">\n {{dialogData.serverErrorMessage}}\n </label>\n </div>\n </div>\n </div>\n</form>\n\n<div footer class=\"footer-dialog\">\n <div class=\"buttons-wrapper\" *ngIf=\"dialogData.cancelButton || dialogData.acceptButton\">\n <dr-button *ngIf=\"dialogData.cancelButton\" data-test=\"modalCloseBtn\" (click)=\"closeDialog()\"\n [theme]=\"'secondary'\"> {{dialogData.cancelButton.label}}</dr-button>\n <dr-button *ngIf=\"dialogData.acceptButton\" data-test=\"modalAddBtn\" (click)=\"onAccept()\" [theme]=\"'primary'\"\n [isLoading]=\"isLoading\" [disabled]=\"form.invalid\"> {{dialogData.acceptButton.label}}</dr-button>\n </div>\n</div>\n",
3142
3141
  styles: [":host{display:flex;justify-content:space-between;flex-direction:column}:host.small-modal{min-height:188px;max-height:467px;min-width:400px;max-width:400px}:host.medium-modal{min-height:188px;max-height:467px;min-width:632px;max-width:632px}.header-dialog{display:flex;flex-direction:row;justify-content:space-between;align-items:center;padding:8px 39px 8px 32px;border-bottom:1px solid #e5e6ea}.title-dialog{color:#151b3f;position:static;font-weight:bold;font-size:18px;line-height:24px}.content-dialog{font-weight:400;font-size:14px;padding:16px 32px 5px}.icon-close{color:#51566f;cursor:pointer}.dr-smart-from{font-size:14px;font-weight:500;line-height:22px;padding:16px 32px 22px}.content-dialog{padding:16px 32px 0;font-weight:400;font-size:14px;line-height:22px}.content-anchor{display:none}.footer-dialog{border-top:1px solid #e5e6ea}.buttons-wrapper{display:flex;justify-content:flex-end;padding-top:10px;padding-right:32px;padding-bottom:11px}.buttons-wrapper dr-button:nth-of-type(2){margin-left:12px}.form-error-alert{position:absolute;margin-top:5px;font-size:12px;color:red}.dr-select-footer__btn{background-color:transparent;display:flex;align-items:center;justify-content:flex-start;cursor:pointer;min-width:15rem;font-style:normal;font-weight:400;font-size:14px;line-height:24px;clear:both;width:100%;white-space:nowrap;padding:0 12px;height:36px;flex-shrink:0}\n"]
3143
3142
  },] }
3144
3143
  ];
@@ -3349,38 +3348,6 @@ var CalendarView;
3349
3348
  CalendarView["FOR_YEARS"] = "multi-year";
3350
3349
  })(CalendarView || (CalendarView = {}));
3351
3350
 
3352
- var CHAT_MESSAGE_TYPE;
3353
- (function (CHAT_MESSAGE_TYPE) {
3354
- CHAT_MESSAGE_TYPE["TEXT"] = "text";
3355
- CHAT_MESSAGE_TYPE["RICH_TEXT"] = "rich-text";
3356
- CHAT_MESSAGE_TYPE["IMAGE"] = "image";
3357
- CHAT_MESSAGE_TYPE["DOWNLOAD_FILE"] = "download-file";
3358
- CHAT_MESSAGE_TYPE["MAILTO"] = "mailto";
3359
- CHAT_MESSAGE_TYPE["EMBED"] = "embed";
3360
- CHAT_MESSAGE_TYPE["WIDGET"] = "widget";
3361
- CHAT_MESSAGE_TYPE["INPUT"] = "input";
3362
- CHAT_MESSAGE_TYPE["CODE"] = "code";
3363
- })(CHAT_MESSAGE_TYPE || (CHAT_MESSAGE_TYPE = {}));
3364
- class ChatMessage {
3365
- constructor(obj, user) {
3366
- this.id = obj === null || obj === void 0 ? void 0 : obj.id;
3367
- this.kind = obj === null || obj === void 0 ? void 0 : obj.kind;
3368
- this.seq = obj === null || obj === void 0 ? void 0 : obj.seq;
3369
- this.conversationId = obj === null || obj === void 0 ? void 0 : obj.conversationId;
3370
- this.reply = (obj === null || obj === void 0 ? void 0 : obj.senderId) !== user.id;
3371
- this.senderId = obj === null || obj === void 0 ? void 0 : obj.senderId;
3372
- this.parentId = obj === null || obj === void 0 ? void 0 : obj.parentId;
3373
- this.text = (obj === null || obj === void 0 ? void 0 : obj.text) || obj.body;
3374
- this.paragraphs = obj === null || obj === void 0 ? void 0 : obj.paragraphs;
3375
- this.url = obj === null || obj === void 0 ? void 0 : obj.url;
3376
- this.label = obj === null || obj === void 0 ? void 0 : obj.label;
3377
- this.subject = obj === null || obj === void 0 ? void 0 : obj.subject;
3378
- this.body = obj === null || obj === void 0 ? void 0 : obj.body;
3379
- this.form = obj === null || obj === void 0 ? void 0 : obj.form;
3380
- this.parameters = obj === null || obj === void 0 ? void 0 : obj.parameters;
3381
- }
3382
- }
3383
-
3384
3351
  const components$3 = [DateTagComponent,
3385
3352
  DayTagComponent,
3386
3353
  WeekTagComponent,
@@ -3389,7 +3356,7 @@ const components$3 = [DateTagComponent,
3389
3356
  AnyTagComponent,
3390
3357
  YearTagComponent,
3391
3358
  ForecastTagComponent];
3392
- const ɵ0$3 = { useUtc: true };
3359
+ const ɵ0$2 = { useUtc: true };
3393
3360
  class DateTagModule {
3394
3361
  }
3395
3362
  DateTagModule.decorators = [
@@ -3407,7 +3374,7 @@ DateTagModule.decorators = [
3407
3374
  ],
3408
3375
  exports: components$3,
3409
3376
  providers: [
3410
- { provide: MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: ɵ0$3 }
3377
+ { provide: MAT_MOMENT_DATE_ADAPTER_OPTIONS, useValue: ɵ0$2 }
3411
3378
  ],
3412
3379
  declarations: components$3,
3413
3380
  },] }
@@ -3669,7 +3636,7 @@ DrDatePickerCustomHeaderComponent.ctorParameters = () => [
3669
3636
  const moment = require('moment');
3670
3637
  const noop = () => {
3671
3638
  };
3672
- const ɵ0$2 = noop;
3639
+ const ɵ0$1 = noop;
3673
3640
  class DrDatePickerComponent {
3674
3641
  constructor(cdr, dateAdapter, datePickerService) {
3675
3642
  this.cdr = cdr;
@@ -4323,7 +4290,7 @@ DrStepperModule.decorators = [
4323
4290
  },] }
4324
4291
  ];
4325
4292
 
4326
- const ɵ0$1 = {}, ɵ1 = {};
4293
+ const ɵ0 = {}, ɵ1 = {};
4327
4294
  class DrDialogModule {
4328
4295
  }
4329
4296
  DrDialogModule.decorators = [
@@ -4338,435 +4305,18 @@ DrDialogModule.decorators = [
4338
4305
  ],
4339
4306
  exports: [DialogWrapperComponent, DialogModalWrapperComponent],
4340
4307
  providers: [
4341
- { provide: MatDialogRef, useValue: ɵ0$1 },
4308
+ { provide: MatDialogRef, useValue: ɵ0 },
4342
4309
  { provide: MAT_DIALOG_DATA, useValue: ɵ1 },
4343
4310
  DialogService
4344
4311
  ]
4345
4312
  },] }
4346
4313
  ];
4347
4314
 
4348
- class DrChatFormComponent {
4349
- constructor(cdr, domSanitizer) {
4350
- this.cdr = cdr;
4351
- this.domSanitizer = domSanitizer;
4352
- this.inputFocus = false;
4353
- this.inputHover = false;
4354
- this.droppedFiles = [];
4355
- this.imgDropTypes = ['image/png', 'image/jpeg', 'image/gif'];
4356
- /**
4357
- * Predefined message text
4358
- *
4359
- * @type {string}
4360
- */
4361
- this.message = '';
4362
- /**
4363
- * Message placeholder text
4364
- *
4365
- * @type {string}
4366
- */
4367
- this.messagePlaceholder = 'Type a message';
4368
- /**
4369
- * Show send button
4370
- *
4371
- * @type {boolean}
4372
- */
4373
- this.dropFiles = false;
4374
- /**
4375
- * File drop placeholder text
4376
- *
4377
- * @type {string}
4378
- */
4379
- this.dropFilePlaceholder = 'Drop file to send';
4380
- /**
4381
- *
4382
- * @type {EventEmitter<{ message: string, files: File[] }>}
4383
- */
4384
- this.send = new EventEmitter();
4385
- /**
4386
- * Emits when message input value has been changed
4387
- *
4388
- * @type {EventEmitter<string>}
4389
- */
4390
- // eslint-disable-next-line @angular-eslint/no-output-on-prefix
4391
- this.onInputChange = new EventEmitter();
4392
- this.fileOver = false;
4393
- }
4394
- onDrop(event) {
4395
- var _a;
4396
- if (this.dropFiles) {
4397
- event.preventDefault();
4398
- event.stopPropagation();
4399
- this.fileOver = false;
4400
- if ((_a = event.dataTransfer) === null || _a === void 0 ? void 0 : _a.files) {
4401
- for (const file of event.dataTransfer.files) {
4402
- const res = file;
4403
- if (this.imgDropTypes.includes(file.type)) {
4404
- const fr = new FileReader();
4405
- fr.onload = (e) => {
4406
- res.src = e.target.result;
4407
- res.urlStyle = this.domSanitizer.bypassSecurityTrustStyle(`url(${res.src})`);
4408
- this.cdr.detectChanges();
4409
- };
4410
- fr.readAsDataURL(file);
4411
- }
4412
- this.droppedFiles.push(res);
4413
- }
4414
- }
4415
- }
4416
- }
4417
- removeFile(file) {
4418
- const index = this.droppedFiles.indexOf(file);
4419
- if (index >= 0) {
4420
- this.droppedFiles.splice(index, 1);
4421
- }
4422
- }
4423
- onDragOver(event) {
4424
- event.preventDefault();
4425
- event.stopPropagation();
4426
- if (this.dropFiles) {
4427
- this.fileOver = true;
4428
- }
4429
- }
4430
- onDragLeave(event) {
4431
- event.preventDefault();
4432
- event.stopPropagation();
4433
- if (this.dropFiles) {
4434
- this.fileOver = false;
4435
- }
4436
- }
4437
- sendMessage() {
4438
- if (this.droppedFiles.length || String(this.message).trim().length) {
4439
- this.send.emit({ message: this.message, files: this.droppedFiles });
4440
- this.message = '';
4441
- this.droppedFiles = [];
4442
- this.cdr.markForCheck();
4443
- }
4444
- }
4445
- onModelChange(value) {
4446
- this.onInputChange.emit(value);
4447
- }
4448
- }
4449
- DrChatFormComponent.decorators = [
4450
- { type: Component, args: [{
4451
- selector: 'dr-chat-form',
4452
- template: "<div class=\"dropped-files\" *ngIf=\"droppedFiles?.length\">\n <div class=\"dropped-files__item\" *ngFor=\"let file of droppedFiles\">\n <div class=\"dropped-files__item__preview\" [style.background-image]=\"file.urlStyle || 'none'\">\n <i class=\"dr-icon-file\" *ngIf=\"!file.urlStyle\"></i>\n </div>\n <div class=\"dropped-files__item__name\">{{ file.name }}</div>\n <i class=\"dropped-files__item__remove dr-icon-exit\" (click)=\"removeFile(file)\"></i>\n </div>\n</div>\n<div class=\"message-row\">\n <dr-input (focus)=\"inputFocus = true\"\n (blur)=\"inputFocus = false\"\n (mouseenter)=\"inputHover = true\"\n (mouseleave)=\"inputHover = false\"\n [(ngModel)]=\"message\"\n (ngModelChange)=\"onModelChange($event)\"\n type=\"text\"\n placeholder=\"{{ fileOver ? dropFilePlaceholder : messagePlaceholder }}\"\n (keyup.enter)=\"sendMessage()\">\n </dr-input>\n <dr-button (click)=\"sendMessage()\"\n theme=\"icon\"\n icon=\"dr-icon-notify\"\n class=\"send-button\">\n </dr-button>\n</div>\n",
4453
- changeDetection: ChangeDetectionStrategy.OnPush,
4454
- styles: [":host{display:flex;flex-direction:column;padding:16px;border-top:1px solid #ccc}:host .message-row{flex-direction:row;display:flex;align-items:center}:host input{flex:1}:host input.with-button{border-bottom-right-radius:0;border-top-right-radius:0}:host .send-button{margin-left:10px}:host .dropped-files{display:flex;flex-direction:row;margin-bottom:.5rem;flex-wrap:wrap}:host .dropped-files__item{display:flex;flex-direction:column;justify-content:center;margin:0 10px 10px 0;position:relative}:host .dropped-files__item__preview{background-size:cover;background-position:center;width:64px;height:64px;border-radius:8px;border:1px solid #ccc}:host .dropped-files__item__preview i{font-size:62px}:host .dropped-files__item__name{white-space:nowrap;font-size:12px;color:#8f929e;margin-top:4px;max-width:64px;overflow:hidden;text-overflow:ellipsis}:host .dropped-files__item__remove{position:absolute;right:-4px;top:-4px;cursor:pointer;background:white;border-radius:12px;color:#8f929e;border:1px solid #8f929e;font-size:14px}\n"]
4455
- },] }
4456
- ];
4457
- DrChatFormComponent.ctorParameters = () => [
4458
- { type: ChangeDetectorRef },
4459
- { type: DomSanitizer }
4460
- ];
4461
- DrChatFormComponent.propDecorators = {
4462
- message: [{ type: Input }],
4463
- messagePlaceholder: [{ type: Input }],
4464
- dropFiles: [{ type: Input }],
4465
- dropFilePlaceholder: [{ type: Input }],
4466
- send: [{ type: Output }],
4467
- onInputChange: [{ type: Output }],
4468
- fileOver: [{ type: HostBinding, args: ['class.file-over',] }],
4469
- onDrop: [{ type: HostListener, args: ['drop', ['$event'],] }],
4470
- onDragOver: [{ type: HostListener, args: ['dragover', ['$event'],] }],
4471
- onDragLeave: [{ type: HostListener, args: ['dragleave', ['$event'],] }]
4472
- };
4473
-
4474
- /**
4475
- * `DrCustomMessageService` is used to store instances of `DrChatCustomMessageDirective`s which
4476
- * were provided in the chat component.
4477
- */
4478
- class DrChatCustomMessageService {
4479
- constructor() {
4480
- this.customMessages = new Map();
4481
- }
4482
- register(type, instance) {
4483
- this.customMessages.set(type, instance);
4484
- }
4485
- unregister(type) {
4486
- return this.customMessages.delete(type);
4487
- }
4488
- getInstance(type) {
4489
- return this.customMessages.get(type);
4490
- }
4491
- }
4492
- DrChatCustomMessageService.decorators = [
4493
- { type: Injectable }
4494
- ];
4495
-
4496
- class DrChatMessageComponent {
4497
- constructor(customMessageService) {
4498
- this.customMessageService = customMessageService;
4499
- this.MESSAGE_TYPE = CHAT_MESSAGE_TYPE;
4500
- this.MESSAGE_TYPE_CUSTOM = CHAT_MESSAGE_TYPE.EMBED;
4501
- this._reply = false;
4502
- }
4503
- get flyInOut() {
4504
- return true;
4505
- }
4506
- get notReply() {
4507
- return !this.reply;
4508
- }
4509
- /**
4510
- * Determines if a message is a reply
4511
- */
4512
- get reply() {
4513
- return this._reply;
4514
- }
4515
- set reply(value) {
4516
- this._reply = !!value;
4517
- }
4518
- _getTemplate() {
4519
- this.customMessage = true;
4520
- const customMessage = this.getCustomMessage(this.type);
4521
- return customMessage.templateRef;
4522
- }
4523
- _getTemplateContext() {
4524
- return { $implicit: this.customMessageData, isReply: this.reply };
4525
- }
4526
- getCustomMessage(type) {
4527
- const customMessageDirective = this.customMessageService.getInstance(type);
4528
- if (!customMessageDirective) {
4529
- throw new Error(`dr-chat: Can't find template for custom type '${type}'. ` +
4530
- `Make sure you provide it in the chat component with *drCustomMessage='${type}'.`);
4531
- }
4532
- return customMessageDirective;
4533
- }
4534
- }
4535
- DrChatMessageComponent.decorators = [
4536
- { type: Component, args: [{
4537
- selector: 'dr-chat-message',
4538
- template: "<div class=\"message\" [class.message--custom]=\"customMessage\">\n <ng-container [ngSwitch]=\"message.kind\">\n <dr-chat-message-text *ngSwitchCase=\"MESSAGE_TYPE.TEXT\" [message]=\"message\"></dr-chat-message-text>\n <dr-chat-message-rich-text *ngSwitchCase=\"MESSAGE_TYPE.RICH_TEXT\" [message]=\"message\"></dr-chat-message-rich-text>\n <dr-chat-message-file *ngSwitchCase=\"MESSAGE_TYPE.DOWNLOAD_FILE\" [message]=\"message\"></dr-chat-message-file>\n <ng-container *ngSwitchDefault>\n <ng-container [ngTemplateOutlet]=\"_getTemplate()\" [ngTemplateOutletContext]=\"_getTemplateContext()\"></ng-container>\n </ng-container>\n </ng-container>\n</div>\n",
4539
- animations: [
4540
- trigger('flyInOut', [
4541
- state('in', style({ transform: 'translateX(0)' })),
4542
- transition('void => *', [style({ transform: 'translateX(-100%)' }), animate(80)]),
4543
- transition('* => void', [animate(80, style({ transform: 'translateX(100%)' }))]),
4544
- ]),
4545
- ],
4546
- changeDetection: ChangeDetectionStrategy.OnPush,
4547
- styles: [":host{display:flex;flex-direction:row}:host:not(:first-child){margin-top:8px}.reply+:host.reply,.not-reply+:host.not-reply{margin-top:3px}:host.not-reply{justify-content:flex-end}:host.not-reply .message{color:#fff;background-color:#4646ce}:host .message{display:flex;background-color:#f3f7ff;border-radius:8px;padding:16px;max-width:60%;width:auto}:host .message--custom{max-width:unset;width:80%}\n"]
4548
- },] }
4549
- ];
4550
- DrChatMessageComponent.ctorParameters = () => [
4551
- { type: DrChatCustomMessageService }
4552
- ];
4553
- DrChatMessageComponent.propDecorators = {
4554
- flyInOut: [{ type: HostBinding, args: ['@flyInOut',] }],
4555
- notReply: [{ type: HostBinding, args: ['class.not-reply',] }],
4556
- reply: [{ type: Input }, { type: HostBinding, args: ['class.reply',] }],
4557
- type: [{ type: Input }],
4558
- message: [{ type: Input }],
4559
- customMessageData: [{ type: Input }]
4560
- };
4561
-
4562
- class DrChatComponent {
4563
- constructor(cdr) {
4564
- this.cdr = cdr;
4565
- this.noMessagesPlaceholder = 'No messages yet.';
4566
- this._scrollBottom = true;
4567
- }
4568
- /**
4569
- * Scroll chat to the bottom of the list when a new message arrives
4570
- */
4571
- get scrollBottom() {
4572
- return this._scrollBottom;
4573
- }
4574
- set scrollBottom(value) {
4575
- this._scrollBottom = !!value;
4576
- }
4577
- ngAfterViewInit() {
4578
- this.messages.changes.subscribe(messages => {
4579
- this.messages = messages;
4580
- this.updateView();
4581
- });
4582
- this.updateView();
4583
- }
4584
- updateView() {
4585
- if (this.scrollBottom) {
4586
- this.scrollListBottom();
4587
- }
4588
- }
4589
- scrollListBottom() {
4590
- setTimeout(() => {
4591
- this.messagesContainer.nativeElement.scrollTo({ top: this.messagesContainer.nativeElement.scrollHeight, behavior: 'smooth' });
4592
- this.cdr.markForCheck();
4593
- });
4594
- }
4595
- }
4596
- DrChatComponent.decorators = [
4597
- { type: Component, args: [{
4598
- selector: 'dr-chat',
4599
- template: "<div class=\"header\">\n {{ title }}\n</div>\n\n<div class=\"scrollable\">\n <div class=\"messages\" #messagesContainer>\n <ng-content select=\"dr-chat-message\"></ng-content>\n <p class=\"no-messages\" *ngIf=\"!messages?.length\">{{ noMessagesPlaceholder }}</p>\n </div>\n</div>\n\n<div class=\"form\">\n <ng-content select=\"dr-chat-form\"></ng-content>\n</div>\n",
4600
- providers: [DrChatCustomMessageService],
4601
- styles: [":host{display:flex;flex-grow:1;flex-direction:column;position:relative;height:100%;background-color:#fff;border:1px solid #e5e6ea;border-radius:8px;box-shadow:0 4px 8px 1px #00000040;color:#151b3f;font-family:\"Poppins\",sans-serif;font-size:14px;font-weight:400;line-height:22px}:host .header{border-bottom:1px solid #e5e6ea;padding:16px 32px;font-weight:bold}:host .scrollable{display:flex;flex-grow:1;overflow-x:hidden;overflow-y:auto;height:100%;width:100%}:host .scrollable .messages{padding:16px;overflow-y:auto;overflow-x:hidden;display:flex;flex-shrink:0;flex-direction:column;width:100%}:host .scrollable .no-messages{text-align:center}\n"]
4602
- },] }
4603
- ];
4604
- DrChatComponent.ctorParameters = () => [
4605
- { type: ChangeDetectorRef }
4606
- ];
4607
- DrChatComponent.propDecorators = {
4608
- title: [{ type: Input }],
4609
- noMessagesPlaceholder: [{ type: Input }],
4610
- scrollBottom: [{ type: Input }],
4611
- messagesContainer: [{ type: ViewChild, args: ['messagesContainer',] }],
4612
- messages: [{ type: ContentChildren, args: [DrChatMessageComponent,] }],
4613
- chatForm: [{ type: ContentChild, args: [DrChatFormComponent,] }]
4614
- };
4615
-
4616
- /**
4617
- * Chat text message component.
4618
- */
4619
- class DrChatMessageTextComponent {
4620
- }
4621
- DrChatMessageTextComponent.decorators = [
4622
- { type: Component, args: [{
4623
- selector: 'dr-chat-message-text',
4624
- template: "<div class=\"text\" *ngIf=\"message\">{{ message.text }}</div>\n",
4625
- changeDetection: ChangeDetectionStrategy.OnPush,
4626
- styles: [":host{display:flex}:host .text{display:flex;word-break:break-word}\n"]
4627
- },] }
4628
- ];
4629
- DrChatMessageTextComponent.propDecorators = {
4630
- message: [{ type: Input }]
4631
- };
4632
-
4633
- /**
4634
- * Chat rich-text message component.
4635
- */
4636
- class DrChatMessageRichTextComponent {
4637
- }
4638
- DrChatMessageRichTextComponent.decorators = [
4639
- { type: Component, args: [{
4640
- selector: 'dr-chat-message-rich-text',
4641
- template: "<div class=\"paragraphs\">\n <div *ngFor=\"let paragraph of message.paragraphs\"\n class=\"paragraphs__item\"\n [class]=\"paragraph.kind\"\n [innerText]=\"paragraph.value\">\n </div>\n</div>\n",
4642
- changeDetection: ChangeDetectionStrategy.OnPush,
4643
- styles: [".paragraphs{display:flex;flex-direction:column}.paragraphs__item:not(:first-child){margin-top:8px}.paragraphs__item.code{display:flex;padding:4px;border:1px solid #8f929e;background:#ccc}\n"]
4644
- },] }
4645
- ];
4646
- DrChatMessageRichTextComponent.propDecorators = {
4647
- message: [{ type: Input }]
4648
- };
4649
-
4650
- /**
4651
- * Chat message component.
4652
- */
4653
- class DrChatMessageFileComponent {
4654
- constructor(cd, domSanitizer) {
4655
- this.cd = cd;
4656
- this.domSanitizer = domSanitizer;
4657
- }
4658
- /**
4659
- * Message file path
4660
- *
4661
- * @type {Date}
4662
- */
4663
- set files(files) {
4664
- this.readyFiles = (files || []).map((file) => {
4665
- const isImage = this.isImage(file);
4666
- return Object.assign(Object.assign({}, file), { urlStyle: isImage && this.domSanitizer.bypassSecurityTrustStyle(`url(${file.url})`), isImage });
4667
- });
4668
- this.cd.detectChanges();
4669
- }
4670
- isImage(file) {
4671
- const type = file.type;
4672
- if (type) {
4673
- return ['image/png', 'image/jpeg', 'image/gif'].includes(type);
4674
- }
4675
- return false;
4676
- }
4677
- }
4678
- DrChatMessageFileComponent.decorators = [
4679
- { type: Component, args: [{
4680
- selector: 'dr-chat-message-file',
4681
- template: "<ng-container *ngIf=\"readyFiles?.length > 1\">\n <div class=\"message-content-group\">\n <a *ngFor=\"let file of readyFiles\" [href]=\"file.url\" target=\"_blank\">\n <i class=\"dr-icon-file\" *ngIf=\"!file.urlStyle && file.icon\"></i>\n <div *ngIf=\"file.urlStyle\" [style.background-image]=\"file.urlStyle\"></div>\n </a>\n </div>\n</ng-container>\n\n<ng-container *ngIf=\"readyFiles?.length === 1\">\n <a [href]=\"readyFiles[0].url\" target=\"_blank\">\n <i class=\"dr-icon-file\" *ngIf=\"!readyFiles[0].urlStyle && readyFiles[0].icon\"></i>\n <div *ngIf=\"readyFiles[0].urlStyle\" [style.background-image]=\"readyFiles[0].urlStyle\"></div>\n </a>\n</ng-container>\n",
4682
- changeDetection: ChangeDetectionStrategy.OnPush
4683
- },] }
4684
- ];
4685
- DrChatMessageFileComponent.ctorParameters = () => [
4686
- { type: ChangeDetectorRef },
4687
- { type: DomSanitizer }
4688
- ];
4689
- DrChatMessageFileComponent.propDecorators = {
4690
- message: [{ type: Input }],
4691
- files: [{ type: Input }]
4692
- };
4693
-
4694
- const throwCustomMessageTypeIsRequired = () => {
4695
- throw new Error('[drCustomMessage]: custom message type is required.');
4696
- };
4697
- const ɵ0 = throwCustomMessageTypeIsRequired;
4698
- class DrChatCustomMessageDirective {
4699
- constructor(templateRef, customMessageService) {
4700
- this.templateRef = templateRef;
4701
- this.customMessageService = customMessageService;
4702
- }
4703
- /**
4704
- * Defines a message type which should rendered with the custom message template.
4705
- *
4706
- * @type {string}
4707
- */
4708
- get drCustomMessage() {
4709
- return this._type;
4710
- }
4711
- set drCustomMessage(value) {
4712
- this._type = value;
4713
- }
4714
- get type() {
4715
- return this._type;
4716
- }
4717
- ngOnInit() {
4718
- if (!this._type) {
4719
- throwCustomMessageTypeIsRequired();
4720
- }
4721
- this.customMessageService.register(this.type, this);
4722
- }
4723
- ngOnDestroy() {
4724
- this.customMessageService.unregister(this.type);
4725
- }
4726
- }
4727
- DrChatCustomMessageDirective.decorators = [
4728
- { type: Directive, args: [{
4729
- selector: `[drCustomMessage]`,
4730
- },] }
4731
- ];
4732
- DrChatCustomMessageDirective.ctorParameters = () => [
4733
- { type: TemplateRef },
4734
- { type: DrChatCustomMessageService }
4735
- ];
4736
- DrChatCustomMessageDirective.propDecorators = {
4737
- drCustomMessage: [{ type: Input }]
4738
- };
4739
-
4740
- const DR_CHAT_COMPONENTS = [
4741
- DrChatComponent,
4742
- DrChatMessageComponent,
4743
- DrChatFormComponent,
4744
- DrChatMessageTextComponent,
4745
- DrChatMessageFileComponent,
4746
- DrChatMessageRichTextComponent,
4747
- ];
4748
- const DR_CHAT_DIRECTIVES = [DrChatCustomMessageDirective];
4749
- class DrChatModule {
4750
- }
4751
- DrChatModule.decorators = [
4752
- { type: NgModule, args: [{
4753
- imports: [
4754
- FormsModule,
4755
- ReactiveFormsModule,
4756
- CommonModule,
4757
- DrAvatarModule,
4758
- DrInputsModule
4759
- ],
4760
- declarations: [...DR_CHAT_COMPONENTS, ...DR_CHAT_DIRECTIVES],
4761
- exports: [...DR_CHAT_COMPONENTS, ...DR_CHAT_DIRECTIVES],
4762
- },] }
4763
- ];
4764
-
4765
4315
  /* components */
4766
4316
 
4767
4317
  /**
4768
4318
  * Generated bundle index. Do not edit.
4769
4319
  */
4770
4320
 
4771
- export { AnyTagComponent, CHAT_MESSAGE_TYPE, CalendarView, ChatMessage, CheckboxComponent, CustomDateFormat, DIALOG_BUTTON_LABEL, DIALOG_FIELD_TYPE, DIALOG_SIZE, DateFromats, DatePickerPeriodPosition, DateTagComponent, DateTagModule, DayTagComponent, DialogService, DrAccordionComponent, DrAccordionItemBodyComponent, DrAccordionItemComponent, DrAccordionItemHeaderComponent, DrAccordionModule, DrAvatarComponent, DrAvatarModule, DrAvatarPipe, DrButtonComponent, DrChatModule, DrDialogModule, DrDropdownComponent, DrDropdownDirective, DrDropdownItemShowPipe, DrDropdownModule, DrDropdownPositionDirective, DrDropdownService, DrErrorComponent, DrErrorModule, DrInputComponent, DrInputsModule, DrLayoutBodyComponent, DrLayoutComponent, DrLayoutHeaderComponent, DrLayoutModule, DrModelDebounceChangeDirective, DrPopoverAlignmentDimension, DrPopoverComponent, DrPopoverDirective, DrPopoverModule, DrPopoverRef, DrPopoverService, DrSelectComponent, DrSharedUtils, DrSpinnerComponent, DrSpinnerDirective, DrSpinnerModule, DrStepperModule, DrTabComponent, DrTabsComponent, DrTabsModule, DrTagComponent, DrTagModule, DrToggleButtonComponent, DrToggleComponent, DrTooltipDirective, DrTooltipModule, ForecastTagComponent, ListTagComponent, ListTagModule, MonthTagComponent, QuarterTagComponent, RadioButtonComponent, RadioGroupComponent, SpinnerSize, SpinnerType, TimeframeOption, TooltipComponent, TooltipPosition, WeekTagComponent, YearTagComponent, components$3 as ɵa, POPUP_ANIMATION as ɵb, DrDatePickerComponent as ɵc, DrDatePickerService as ɵd, DrDatePickerWithTimeframeComponent as ɵe, DrDatePickerFormatDirective as ɵf, DrDatePickerCustomHeaderComponent as ɵg, DrShowTimeframePipe as ɵh, TooltipInfoComponent as ɵi, TooltipInfoSimpleComponent as ɵj, TooltipNoBodyComponent as ɵk, TooltipProcessDefaultComponent as ɵl, StepperComponent as ɵm, DialogWrapperComponent as ɵn, DialogModalWrapperComponent as ɵo, DrChatComponent as ɵp, DrChatCustomMessageService as ɵq, DrChatMessageComponent as ɵr, DrChatFormComponent as ɵs, DrChatMessageTextComponent as ɵt, DrChatMessageFileComponent as ɵu, DrChatMessageRichTextComponent as ɵv, DrChatCustomMessageDirective as ɵw };
4321
+ export { AnyTagComponent, CalendarView, CheckboxComponent, CustomDateFormat, DIALOG_BUTTON_LABEL, DIALOG_FIELD_TYPE, DIALOG_SIZE, DateFromats, DatePickerPeriodPosition, DateTagComponent, DateTagModule, DayTagComponent, DialogService, DrAccordionComponent, DrAccordionItemBodyComponent, DrAccordionItemComponent, DrAccordionItemHeaderComponent, DrAccordionModule, DrAvatarComponent, DrAvatarModule, DrAvatarPipe, DrButtonComponent, DrDialogModule, DrDropdownComponent, DrDropdownDirective, DrDropdownItemShowPipe, DrDropdownModule, DrDropdownPositionDirective, DrDropdownService, DrErrorComponent, DrErrorModule, DrInputComponent, DrInputsModule, DrLayoutBodyComponent, DrLayoutComponent, DrLayoutHeaderComponent, DrLayoutModule, DrModelDebounceChangeDirective, DrPopoverAlignmentDimension, DrPopoverComponent, DrPopoverDirective, DrPopoverModule, DrPopoverRef, DrPopoverService, DrSelectComponent, DrSharedUtils, DrSpinnerComponent, DrSpinnerDirective, DrSpinnerModule, DrStepperModule, DrTabComponent, DrTabsComponent, DrTabsModule, DrTagComponent, DrTagModule, DrToggleButtonComponent, DrToggleComponent, DrTooltipDirective, DrTooltipModule, ForecastTagComponent, ListTagComponent, ListTagModule, MonthTagComponent, QuarterTagComponent, RadioButtonComponent, RadioGroupComponent, SpinnerSize, SpinnerType, TimeframeOption, TooltipComponent, TooltipPosition, WeekTagComponent, YearTagComponent, components$3 as ɵa, POPUP_ANIMATION as ɵb, DrDatePickerComponent as ɵc, DrDatePickerService as ɵd, DrDatePickerWithTimeframeComponent as ɵe, DrDatePickerFormatDirective as ɵf, DrDatePickerCustomHeaderComponent as ɵg, DrShowTimeframePipe as ɵh, TooltipInfoComponent as ɵi, TooltipInfoSimpleComponent as ɵj, TooltipNoBodyComponent as ɵk, TooltipProcessDefaultComponent as ɵl, StepperComponent as ɵm, DialogWrapperComponent as ɵn, DialogModalWrapperComponent as ɵo };
4772
4322
  //# sourceMappingURL=datarailsshared-datarailsshared.js.map