@huntsman-cancer-institute/cod 17.0.0 → 17.0.1

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.
@@ -1,5 +1,5 @@
1
1
  import * as i0 from '@angular/core';
2
- import { InjectionToken, isDevMode, Injectable, Inject, EventEmitter, Directive, Input, Output, ViewChild, Component, ViewEncapsulation, Pipe, HostBinding, ViewChildren, ContentChildren, forwardRef, NgModule } from '@angular/core';
2
+ import { Pipe, InjectionToken, isDevMode, Injectable, Inject, EventEmitter, Directive, Input, Output, ViewChild, Component, ViewEncapsulation, forwardRef, HostBinding, NgModule } from '@angular/core';
3
3
  import * as i4 from '@angular/common';
4
4
  import { DatePipe, CommonModule } from '@angular/common';
5
5
  import * as i5 from '@angular/forms';
@@ -14,18 +14,48 @@ import { NgxMatDatetimePickerModule, NgxMatTimepickerModule, NgxMatNativeDateMod
14
14
  import * as i3$1 from 'ag-grid-angular';
15
15
  import { AgGridModule } from 'ag-grid-angular';
16
16
  import * as i2$1 from '@ng-bootstrap/ng-bootstrap';
17
- import { NgbPanel, NgbAccordion, NgbModule } from '@ng-bootstrap/ng-bootstrap';
17
+ import { NgbModule } from '@ng-bootstrap/ng-bootstrap';
18
18
  import * as i3$2 from '@huntsman-cancer-institute/input';
19
19
  import { DropdownModule, SelectModule } from '@huntsman-cancer-institute/input';
20
20
  import * as i4$1 from '@huntsman-cancer-institute/misc';
21
21
  import { MiscModule } from '@huntsman-cancer-institute/misc';
22
22
  import { BehaviorSubject, Subject, forkJoin, Subscription } from 'rxjs';
23
+ import { first } from 'rxjs/operators';
23
24
  import * as i2 from '@angular/common/http';
24
25
  import { HttpParams } from '@angular/common/http';
25
26
  import * as i1 from '@huntsman-cancer-institute/dictionary-service';
26
- import { first } from 'rxjs/operators';
27
27
  import { parse } from 'date-fns';
28
28
 
29
+ /**
30
+ * A filter for attributes in a container. All attributes have the id of the container even those that belong
31
+ * to a grid attribute. However, when we populate the container, we don't want to render those grid attributes.
32
+ * The grid will handle those itself.
33
+ */
34
+ class IsGroupAttributePipe {
35
+ transform(list, returnGroup) {
36
+ if (!list) {
37
+ return [];
38
+ }
39
+ return list.filter((attribute) => {
40
+ if (attribute.idGroupAttribute) {
41
+ return returnGroup;
42
+ }
43
+ else {
44
+ return !returnGroup;
45
+ }
46
+ });
47
+ }
48
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: IsGroupAttributePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
49
+ static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.1.2", ngImport: i0, type: IsGroupAttributePipe, name: "isGroupAttribute", pure: false }); }
50
+ }
51
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: IsGroupAttributePipe, decorators: [{
52
+ type: Pipe,
53
+ args: [{
54
+ name: "isGroupAttribute",
55
+ pure: false
56
+ }]
57
+ }] });
58
+
29
59
  class PreEvalDTO {
30
60
  }
31
61
 
@@ -4084,285 +4114,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
4084
4114
  `, styles: [".hci-cod button.mat-icon-button.mat-button-base{height:20px;width:20px;line-height:unset}.btn-ga{padding:0;height:18px;width:18px}.ga-icon{font-size:.9em;vertical-align:top}.hci-cod .mat-datepicker-toggle-default-icon{height:20px;width:20px}\n"] }]
4085
4115
  }], ctorParameters: () => [{ type: AttributeService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i2$1.NgbModal }] });
4086
4116
 
4087
- /**
4088
- * A filter for attributes in a container. All attributes have the id of the container even those that belong
4089
- * to a grid attribute. However, when we populate the container, we don't want to render those grid attributes.
4090
- * The grid will handle those itself.
4091
- */
4092
- class IsGroupAttributePipe {
4093
- transform(list, returnGroup) {
4094
- if (!list) {
4095
- return [];
4096
- }
4097
- return list.filter((attribute) => {
4098
- if (attribute.idGroupAttribute) {
4099
- return returnGroup;
4100
- }
4101
- else {
4102
- return !returnGroup;
4103
- }
4104
- });
4105
- }
4106
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: IsGroupAttributePipe, deps: [], target: i0.ɵɵFactoryTarget.Pipe }); }
4107
- static { this.ɵpipe = i0.ɵɵngDeclarePipe({ minVersion: "14.0.0", version: "17.1.2", ngImport: i0, type: IsGroupAttributePipe, name: "isGroupAttribute", pure: false }); }
4108
- }
4109
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: IsGroupAttributePipe, decorators: [{
4110
- type: Pipe,
4111
- args: [{
4112
- name: "isGroupAttribute",
4113
- pure: false
4114
- }]
4115
- }] });
4116
-
4117
- /**
4118
- * This component should be added on to any screen that displays an entity with an idAttributeValueSet. This configuration
4119
- * represents the parent of separate containers, which in turn contain attributes which display those values in the
4120
- * attributeValueSet.
4121
- */
4122
- class AttributeConfigurationComponent {
4123
- constructor(attributeService, elementRef, renderer, changeDetectorRef, modalService) {
4124
- this.attributeService = attributeService;
4125
- this.elementRef = elementRef;
4126
- this.renderer = renderer;
4127
- this.changeDetectorRef = changeDetectorRef;
4128
- this.modalService = modalService;
4129
- this.classList = "hci-attribute-configuration hci-cod d-flex flex-column flex-grow-1";
4130
- this.editInline = true;
4131
- this.editPopup = false;
4132
- this.editable = true;
4133
- this.loadingSubject = new Subject();
4134
- this.windowDimension = {};
4135
- this.subscriptions = new Subscription();
4136
- }
4137
- /**
4138
- * Upon init, subscribe to the configuration and value set.
4139
- */
4140
- ngOnInit() {
4141
- if (!this.editable) {
4142
- this.editInline = false;
4143
- this.editPopup = false;
4144
- }
4145
- this.loadingSubject = this.attributeService.getLoadingSubject();
4146
- this.subscriptions.add(this.attributeService.getAttributeConfigurationSubject().subscribe((attributeConfiguration) => {
4147
- this.attributeConfiguration = attributeConfiguration;
4148
- this.attributeService.setAttributeValueSet(this.idAttributeValueSet, this.idParentObject);
4149
- }));
4150
- this.subscriptions.add(this.attributeService.attributeConfigurationDimensionSubject.subscribe((windowDimension) => {
4151
- this.windowDimension = windowDimension;
4152
- }));
4153
- this.subscriptions.add(this.attributeService.getAttributeValueSet().subscribe((attributeValueSet) => {
4154
- this.attributeValueSet = attributeValueSet;
4155
- if (this.attributeValueSet) {
4156
- this.attributeService.notifyAttributes();
4157
- }
4158
- }));
4159
- }
4160
- set boundData(value) {
4161
- this.attributeService.setBoundData(value);
4162
- }
4163
- ngOnDestroy() {
4164
- this.subscriptions.unsubscribe();
4165
- }
4166
- set accordion(accordion) {
4167
- if (accordion) {
4168
- accordion.panels.reset([this.cPanels.toArray(), this.vPanels.toArray()]);
4169
- accordion.ngAfterContentChecked();
4170
- if (this.accordionNav && !this.accordionNav.accordion) {
4171
- this.accordionNav.setAccordion(accordion);
4172
- }
4173
- this.changeDetectorRef.detectChanges();
4174
- }
4175
- }
4176
- ngOnChanges(changes) {
4177
- if (!this.editable) {
4178
- this.editInline = false;
4179
- this.editPopup = false;
4180
- }
4181
- if (changes["accordionNav"] && this.accordionNav && this.accordion) {
4182
- this.accordionNav.accordion = this.accordion;
4183
- this.accordionNav.panels = this.accordion.panels;
4184
- }
4185
- }
4186
- getAttributeService() {
4187
- return this.attributeService;
4188
- }
4189
- edit(modal, editContainer) {
4190
- this.editContainer = editContainer;
4191
- this.modalService.open(modal, { windowClass: "modal-lg" }).result.then((result) => {
4192
- if (result === "Save") {
4193
- this.attributeService.updateAttributeValueSet();
4194
- }
4195
- else if (result === "Cancel") {
4196
- this.attributeService.clearUpdatedAttributeValues();
4197
- }
4198
- }, (reason) => { });
4199
- }
4200
- post() {
4201
- this.attributeService.updateAttributeValueSet();
4202
- }
4203
- static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AttributeConfigurationComponent, deps: [{ token: AttributeService }, { token: i0.ElementRef }, { token: i0.Renderer2 }, { token: i0.ChangeDetectorRef }, { token: i2$1.NgbModal }], target: i0.ɵɵFactoryTarget.Component }); }
4204
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "17.1.2", type: AttributeConfigurationComponent, selector: "hci-attribute-configuration", inputs: { idAttributeValueSet: "idAttributeValueSet", idParentObject: "idParentObject", accordionNav: "accordionNav", editInline: "editInline", editPopup: "editPopup", editable: "editable", boundData: "boundData" }, host: { properties: { "class": "this.classList" } }, queries: [{ propertyName: "cPanels", predicate: NgbPanel }], viewQueries: [{ propertyName: "accordion", first: true, predicate: NgbAccordion, descendants: true }, { propertyName: "vPanels", predicate: NgbPanel, descendants: true }], usesOnChanges: true, ngImport: i0, template: `
4205
- <hci-busy [busySubjects]="[loadingSubject]"></hci-busy>
4206
-
4207
- <ng-container *ngIf="attributeConfiguration && attributeValueSet">
4208
- <ngb-accordion #accordion="ngbAccordion" class="y-auto">
4209
- <ng-content></ng-content>
4210
- <ng-container *ngFor="let attributeContainer of attributeConfiguration.attributeContainers">
4211
- <ngb-panel [id]="'id-attribute-container-' + attributeContainer.idAttributeContainer" [title]="attributeContainer.containerName">
4212
- <ng-template ngbPanelTitle>
4213
- <div *ngIf="editPopup" [id]="'id-attribute-container-' + attributeContainer.idAttributeContainer + '-header'"
4214
- class="d-flex flex-grow-1 attribute-container-header {{'sort-order-' + attributeContainer.sortOrder}}">
4215
- <div class="ml-auto mr-0" (click)="edit(editModal, attributeContainer)">
4216
- <i class="fas fa-pencil"></i>
4217
- </div>
4218
- </div>
4219
- </ng-template>
4220
- <ng-template ngbPanelContent>
4221
- <div class="attribute-container"
4222
- [class.col-md-12]="attributeContainer.isAutoLayout && attributeContainer.isAutoLayout === 'Y'"
4223
- [class.flex]="attributeContainer.isAutoLayout && attributeContainer.isAutoLayout === 'Y'"
4224
- [class.flex-wrap]="attributeContainer.isAutoLayout && attributeContainer.isAutoLayout === 'Y'"
4225
- [class.absolute]="!attributeContainer.isAutoLayout || attributeContainer.isAutoLayout === 'N'"
4226
- [class.x-auto]="!attributeContainer.isAutoLayout || attributeContainer.isAutoLayout === 'N'"
4227
- [style.height.px]="(!attributeContainer.isAutoLayout || attributeContainer.isAutoLayout === 'N') ? windowDimension.height : 'auto'">
4228
- <ng-container *ngFor="let attribute of attributeContainer.graphicalAttributes | isGroupAttribute: false">
4229
- <ng-container *ngIf="attributeContainer.isAutoLayout && attributeContainer.isAutoLayout === 'Y' && attribute.codeAttributeDataType !== 'LINE'">
4230
- <hci-attribute-flex [id]="'id-attribute-' + attribute.idAttribute"
4231
- [attribute]="attribute"
4232
- [editInline]="editInline"
4233
- [class.attribute]="true"
4234
- [class.col-4]="attribute.codeAttributeDataType !== 'GA' && attribute.codeAttributeDataType !== 'LINE'"
4235
- [class.col-12]="attribute.codeAttributeDataType === 'GA' || attribute.codeAttributeDataType === 'LINE'"></hci-attribute-flex>
4236
- </ng-container>
4237
- <ng-container *ngIf="!attributeContainer.isAutoLayout || attributeContainer.isAutoLayout === 'N'">
4238
- <hci-attribute-absolute [id]="'id-attribute-' + attribute.idAttribute"
4239
- [attribute]="attribute"
4240
- [editInline]="editInline"
4241
- [class.attribute]="true"></hci-attribute-absolute>
4242
- </ng-container>
4243
- </ng-container>
4244
- </div>
4245
- </ng-template>
4246
- </ngb-panel>
4247
- </ng-container>
4248
- </ngb-accordion>
4249
- </ng-container>
4250
-
4251
- <ng-template #editModal let-close="close">
4252
- <div class="modal-header">
4253
- {{editContainer.containerName}}
4254
- </div>
4255
- <div class="modal-body d-flex flex-column hci-cod-edit">
4256
- <ng-container *ngFor="let attribute of editContainer.graphicalAttributes | isGroupAttribute: false">
4257
- <hci-attribute-edit [id]="'edit-id-attribute-' + attribute.idAttribute"
4258
- [attribute]="attribute"
4259
- class="attribute"></hci-attribute-edit>
4260
- </ng-container>
4261
- </div>
4262
- <div class="modal-footer">
4263
- <button class="btn btn-primary" (click)="close('Save')">Save</button>
4264
- <button class="btn btn-primary" (click)="close('Cancel')">Cancel</button>
4265
- </div>
4266
- </ng-template>
4267
- `, isInline: true, dependencies: [{ kind: "directive", type: i4.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i4.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "component", type: i2$1.NgbAccordion, selector: "ngb-accordion", inputs: ["animation", "activeIds", "closeOthers", "destroyOnHide", "type"], outputs: ["panelChange", "shown", "hidden"], exportAs: ["ngbAccordion"] }, { kind: "directive", type: i2$1.NgbPanel, selector: "ngb-panel", inputs: ["disabled", "id", "title", "type", "cardClass"], outputs: ["shown", "hidden"] }, { kind: "directive", type: i2$1.NgbPanelTitle, selector: "ng-template[ngbPanelTitle]" }, { kind: "directive", type: i2$1.NgbPanelContent, selector: "ng-template[ngbPanelContent]" }, { kind: "component", type: i4$1.BusyComponent, selector: "hci-busy", inputs: ["busy", "busySubjects", "getBusySubjects", "parentSelector", "rootClass", "icon", "iconSize", "showIcon", "mxAuto", "myAuto", "text", "template", "config"] }, { kind: "component", type: AttributeAbsoluteComponent, selector: "hci-attribute-absolute" }, { kind: "component", type: AttributeFlexComponent, selector: "hci-attribute-flex" }, { kind: "component", type: AttributeEditComponent, selector: "hci-attribute-edit" }, { kind: "pipe", type: IsGroupAttributePipe, name: "isGroupAttribute" }] }); }
4268
- }
4269
- i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: AttributeConfigurationComponent, decorators: [{
4270
- type: Component,
4271
- args: [{
4272
- selector: "hci-attribute-configuration",
4273
- template: `
4274
- <hci-busy [busySubjects]="[loadingSubject]"></hci-busy>
4275
-
4276
- <ng-container *ngIf="attributeConfiguration && attributeValueSet">
4277
- <ngb-accordion #accordion="ngbAccordion" class="y-auto">
4278
- <ng-content></ng-content>
4279
- <ng-container *ngFor="let attributeContainer of attributeConfiguration.attributeContainers">
4280
- <ngb-panel [id]="'id-attribute-container-' + attributeContainer.idAttributeContainer" [title]="attributeContainer.containerName">
4281
- <ng-template ngbPanelTitle>
4282
- <div *ngIf="editPopup" [id]="'id-attribute-container-' + attributeContainer.idAttributeContainer + '-header'"
4283
- class="d-flex flex-grow-1 attribute-container-header {{'sort-order-' + attributeContainer.sortOrder}}">
4284
- <div class="ml-auto mr-0" (click)="edit(editModal, attributeContainer)">
4285
- <i class="fas fa-pencil"></i>
4286
- </div>
4287
- </div>
4288
- </ng-template>
4289
- <ng-template ngbPanelContent>
4290
- <div class="attribute-container"
4291
- [class.col-md-12]="attributeContainer.isAutoLayout && attributeContainer.isAutoLayout === 'Y'"
4292
- [class.flex]="attributeContainer.isAutoLayout && attributeContainer.isAutoLayout === 'Y'"
4293
- [class.flex-wrap]="attributeContainer.isAutoLayout && attributeContainer.isAutoLayout === 'Y'"
4294
- [class.absolute]="!attributeContainer.isAutoLayout || attributeContainer.isAutoLayout === 'N'"
4295
- [class.x-auto]="!attributeContainer.isAutoLayout || attributeContainer.isAutoLayout === 'N'"
4296
- [style.height.px]="(!attributeContainer.isAutoLayout || attributeContainer.isAutoLayout === 'N') ? windowDimension.height : 'auto'">
4297
- <ng-container *ngFor="let attribute of attributeContainer.graphicalAttributes | isGroupAttribute: false">
4298
- <ng-container *ngIf="attributeContainer.isAutoLayout && attributeContainer.isAutoLayout === 'Y' && attribute.codeAttributeDataType !== 'LINE'">
4299
- <hci-attribute-flex [id]="'id-attribute-' + attribute.idAttribute"
4300
- [attribute]="attribute"
4301
- [editInline]="editInline"
4302
- [class.attribute]="true"
4303
- [class.col-4]="attribute.codeAttributeDataType !== 'GA' && attribute.codeAttributeDataType !== 'LINE'"
4304
- [class.col-12]="attribute.codeAttributeDataType === 'GA' || attribute.codeAttributeDataType === 'LINE'"></hci-attribute-flex>
4305
- </ng-container>
4306
- <ng-container *ngIf="!attributeContainer.isAutoLayout || attributeContainer.isAutoLayout === 'N'">
4307
- <hci-attribute-absolute [id]="'id-attribute-' + attribute.idAttribute"
4308
- [attribute]="attribute"
4309
- [editInline]="editInline"
4310
- [class.attribute]="true"></hci-attribute-absolute>
4311
- </ng-container>
4312
- </ng-container>
4313
- </div>
4314
- </ng-template>
4315
- </ngb-panel>
4316
- </ng-container>
4317
- </ngb-accordion>
4318
- </ng-container>
4319
-
4320
- <ng-template #editModal let-close="close">
4321
- <div class="modal-header">
4322
- {{editContainer.containerName}}
4323
- </div>
4324
- <div class="modal-body d-flex flex-column hci-cod-edit">
4325
- <ng-container *ngFor="let attribute of editContainer.graphicalAttributes | isGroupAttribute: false">
4326
- <hci-attribute-edit [id]="'edit-id-attribute-' + attribute.idAttribute"
4327
- [attribute]="attribute"
4328
- class="attribute"></hci-attribute-edit>
4329
- </ng-container>
4330
- </div>
4331
- <div class="modal-footer">
4332
- <button class="btn btn-primary" (click)="close('Save')">Save</button>
4333
- <button class="btn btn-primary" (click)="close('Cancel')">Cancel</button>
4334
- </div>
4335
- </ng-template>
4336
- `
4337
- }]
4338
- }], ctorParameters: () => [{ type: AttributeService }, { type: i0.ElementRef }, { type: i0.Renderer2 }, { type: i0.ChangeDetectorRef }, { type: i2$1.NgbModal }], propDecorators: { classList: [{
4339
- type: HostBinding,
4340
- args: ["class"]
4341
- }], idAttributeValueSet: [{
4342
- type: Input
4343
- }], idParentObject: [{
4344
- type: Input
4345
- }], accordionNav: [{
4346
- type: Input
4347
- }], editInline: [{
4348
- type: Input
4349
- }], editPopup: [{
4350
- type: Input
4351
- }], editable: [{
4352
- type: Input
4353
- }], vPanels: [{
4354
- type: ViewChildren,
4355
- args: [NgbPanel]
4356
- }], cPanels: [{
4357
- type: ContentChildren,
4358
- args: [NgbPanel]
4359
- }], boundData: [{
4360
- type: Input
4361
- }], accordion: [{
4362
- type: ViewChild,
4363
- args: [NgbAccordion, { static: false }]
4364
- }] } });
4365
-
4366
4117
  class AttributeDefaultComponent {
4367
4118
  get value() {
4368
4119
  return this._value;
@@ -4946,7 +4697,6 @@ class CodModule {
4946
4697
  }
4947
4698
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "17.1.2", ngImport: i0, type: CodModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule }); }
4948
4699
  static { this.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "14.0.0", version: "17.1.2", ngImport: i0, type: CodModule, declarations: [AttributeBase,
4949
- AttributeConfigurationComponent,
4950
4700
  AttributeAbsoluteComponent,
4951
4701
  AttributeContainerComponent,
4952
4702
  AttributeFlexComponent,
@@ -4964,8 +4714,7 @@ class CodModule {
4964
4714
  MatNativeDateModule,
4965
4715
  NgxMatDatetimePickerModule,
4966
4716
  NgxMatTimepickerModule,
4967
- NgxMatNativeDateModule], exports: [AttributeConfigurationComponent,
4968
- AttributeAbsoluteComponent,
4717
+ NgxMatNativeDateModule], exports: [AttributeAbsoluteComponent,
4969
4718
  AttributeFlexComponent,
4970
4719
  AttributeEditComponent,
4971
4720
  AttributeDefaultComponent,
@@ -5005,7 +4754,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
5005
4754
  ],
5006
4755
  declarations: [
5007
4756
  AttributeBase,
5008
- AttributeConfigurationComponent,
5009
4757
  AttributeAbsoluteComponent,
5010
4758
  AttributeContainerComponent,
5011
4759
  AttributeFlexComponent,
@@ -5014,7 +4762,6 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "17.1.2", ngImpor
5014
4762
  IsGroupAttributePipe
5015
4763
  ],
5016
4764
  exports: [
5017
- AttributeConfigurationComponent,
5018
4765
  AttributeAbsoluteComponent,
5019
4766
  AttributeFlexComponent,
5020
4767
  AttributeEditComponent,
@@ -5041,5 +4788,5 @@ class AttributeValue {
5041
4788
  * Generated bundle index. Do not edit.
5042
4789
  */
5043
4790
 
5044
- export { ATTRIBUTE_ENDPOINT, AttributeAbsoluteComponent, AttributeBase, AttributeConfigurationComponent, AttributeContainerComponent, AttributeDefaultComponent, AttributeEditComponent, AttributeFlexComponent, AttributeService, AttributeValue, CodModule, IsGroupAttributePipe };
4791
+ export { ATTRIBUTE_ENDPOINT, AttributeAbsoluteComponent, AttributeBase, AttributeContainerComponent, AttributeDefaultComponent, AttributeEditComponent, AttributeFlexComponent, AttributeService, AttributeValue, CodModule, IsGroupAttributePipe };
5045
4792
  //# sourceMappingURL=huntsman-cancer-institute-cod.mjs.map