@colijnit/corecomponents_v12 261.20.2 → 261.20.4
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.
|
@@ -2127,7 +2127,7 @@ class OverlayService {
|
|
|
2127
2127
|
this._appRef = _appRef;
|
|
2128
2128
|
this._injector = _injector;
|
|
2129
2129
|
}
|
|
2130
|
-
createComponent(compClass, inputs, events
|
|
2130
|
+
createComponent(compClass, inputs, events) {
|
|
2131
2131
|
if (this._componentRefExists(compClass)) {
|
|
2132
2132
|
this._removeComponentRef(compClass);
|
|
2133
2133
|
}
|
|
@@ -2151,8 +2151,7 @@ class OverlayService {
|
|
|
2151
2151
|
this._appRef.attachView(componentRef.hostView);
|
|
2152
2152
|
const domElem = componentRef.hostView
|
|
2153
2153
|
.rootNodes[0];
|
|
2154
|
-
|
|
2155
|
-
container.appendChild(domElem);
|
|
2154
|
+
document.body.appendChild(domElem);
|
|
2156
2155
|
componentRef.onDestroy(() => {
|
|
2157
2156
|
this._appRef.detachView(componentRef.hostView);
|
|
2158
2157
|
});
|
|
@@ -8180,7 +8179,7 @@ class InputDatePickerComponent extends BaseInputDatePickerDirective {
|
|
|
8180
8179
|
}, {
|
|
8181
8180
|
dateSelected: (event) => this.handleDateSelected(event),
|
|
8182
8181
|
clickedOutside: () => this.toggleCalendar(false) // Close when clicked outside
|
|
8183
|
-
}
|
|
8182
|
+
});
|
|
8184
8183
|
}
|
|
8185
8184
|
else {
|
|
8186
8185
|
this.overlayService.removeComponent(this._calendarComponentRef);
|
|
@@ -8959,7 +8958,7 @@ class InputDateRangePickerComponent extends BaseInputDatePickerDirective {
|
|
|
8959
8958
|
datesSelected: (event) => this.handleDatesSelected(event),
|
|
8960
8959
|
secondDateSelected: () => this.handleSecondDateSelected(),
|
|
8961
8960
|
clickedOutside: () => this.toggleCalendar()
|
|
8962
|
-
}
|
|
8961
|
+
});
|
|
8963
8962
|
}
|
|
8964
8963
|
else {
|
|
8965
8964
|
this.overlayService.removeComponent(this._doubleCalendarComponentRef);
|
|
@@ -14481,12 +14480,12 @@ class ListOfValuesComponent extends BaseInputComponent {
|
|
|
14481
14480
|
showToggleAll: this.showToggleAll,
|
|
14482
14481
|
model: this.model,
|
|
14483
14482
|
collection: this.collection,
|
|
14484
|
-
optionIcon: this.optionIcon
|
|
14483
|
+
optionIcon: this.optionIcon
|
|
14485
14484
|
}, {
|
|
14486
14485
|
modelChange: (value) => this.optionChosen(value),
|
|
14487
14486
|
closePopup: () => this.closePopup(),
|
|
14488
14487
|
keyDown: (event) => this.handleInputKeyDown(event)
|
|
14489
|
-
}
|
|
14488
|
+
});
|
|
14490
14489
|
this.keepFocussed = true;
|
|
14491
14490
|
}
|
|
14492
14491
|
removeOptionFromModel(chip) {
|
|
@@ -18658,7 +18657,7 @@ class ScreenConfigurationDirective {
|
|
|
18658
18657
|
this._setHostVisible(myCfgObj.immediatelyVisible());
|
|
18659
18658
|
if (!this.screenConfigNativeElement) {
|
|
18660
18659
|
this.hostComponent.required = this.hostComponent.required || myCfgObj.isRequired();
|
|
18661
|
-
this.hostComponent.readonly = this.
|
|
18660
|
+
this.hostComponent.readonly = this._moduleInReadonlyMode() || myCfgObj.isReadonly();
|
|
18662
18661
|
this.hostComponent.decimals = myCfgObj.scale;
|
|
18663
18662
|
this.hostComponent.maxLength = myCfgObj.maxLength;
|
|
18664
18663
|
this.hostComponent.defaultValue = myCfgObj.defaultValue;
|
|
@@ -19336,11 +19335,13 @@ class HourSchedulingExpandableComponent {
|
|
|
19336
19335
|
currentDraggingObject = null;
|
|
19337
19336
|
MIN_HEIGHT = 30;
|
|
19338
19337
|
_schedule = {};
|
|
19338
|
+
_onMouseMove = (e) => this.onResizing(e);
|
|
19339
|
+
_onMouseUp = (e) => this.onResizeEnd(e);
|
|
19339
19340
|
set schedule(value) {
|
|
19340
|
-
|
|
19341
|
+
this._schedule = value;
|
|
19342
|
+
if (this._schedule) {
|
|
19341
19343
|
this.renderObjects();
|
|
19342
19344
|
}
|
|
19343
|
-
this._schedule = value;
|
|
19344
19345
|
}
|
|
19345
19346
|
get schedule() {
|
|
19346
19347
|
return this._schedule;
|
|
@@ -19477,14 +19478,10 @@ class HourSchedulingExpandableComponent {
|
|
|
19477
19478
|
if (this.currentDraggingObject) {
|
|
19478
19479
|
let newStartDate = this.convertDateToEuropean(this.currentDraggingObject.start);
|
|
19479
19480
|
let hourSplit = hour.split(":");
|
|
19480
|
-
newStartDate.setHours(parseInt(hourSplit[0]));
|
|
19481
|
-
newStartDate.
|
|
19482
|
-
|
|
19483
|
-
|
|
19484
|
-
}
|
|
19485
|
-
else {
|
|
19486
|
-
return true;
|
|
19487
|
-
}
|
|
19481
|
+
newStartDate.setHours(parseInt(hourSplit[0], 10));
|
|
19482
|
+
newStartDate.setMinutes(parseInt(hourSplit[1], 10));
|
|
19483
|
+
const t = newStartDate.getTime();
|
|
19484
|
+
return !this.scheduledObjects.some(o => o.start?.getTime() === t);
|
|
19488
19485
|
}
|
|
19489
19486
|
}
|
|
19490
19487
|
handleDragLeave(event) {
|
|
@@ -19502,8 +19499,8 @@ class HourSchedulingExpandableComponent {
|
|
|
19502
19499
|
this.initialHeight = obj.height || 0;
|
|
19503
19500
|
this.initialTop = obj.top || 0;
|
|
19504
19501
|
// Listen to mousemove and mouseup events globally
|
|
19505
|
-
document.addEventListener(
|
|
19506
|
-
document.addEventListener(
|
|
19502
|
+
document.addEventListener("mousemove", this._onMouseMove);
|
|
19503
|
+
document.addEventListener("mouseup", this._onMouseUp);
|
|
19507
19504
|
}
|
|
19508
19505
|
// Handle resizing with snapping to 30px increments and minimum height restriction
|
|
19509
19506
|
onResizing(event) {
|
|
@@ -19548,9 +19545,8 @@ class HourSchedulingExpandableComponent {
|
|
|
19548
19545
|
this.currentResizingObject.selected = false;
|
|
19549
19546
|
this.currentResizingObject = null;
|
|
19550
19547
|
}
|
|
19551
|
-
|
|
19552
|
-
document.removeEventListener(
|
|
19553
|
-
document.removeEventListener('mouseup', this.onResizeEnd.bind(this));
|
|
19548
|
+
document.removeEventListener("mousemove", this._onMouseMove);
|
|
19549
|
+
document.removeEventListener("mouseup", this._onMouseUp);
|
|
19554
19550
|
}
|
|
19555
19551
|
timeDifference(date1, date2) {
|
|
19556
19552
|
let difference = this.convertDateToEuropean(date1).getTime() / 1000 - this.convertDateToEuropean(date2).getTime() / 1000;
|
|
@@ -19602,90 +19598,92 @@ class HourSchedulingExpandableComponent {
|
|
|
19602
19598
|
});
|
|
19603
19599
|
}
|
|
19604
19600
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: HourSchedulingExpandableComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i0.ElementRef }], target: i0.ɵɵFactoryTarget.Component });
|
|
19605
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: HourSchedulingExpandableComponent, isStandalone: false, selector: "co-hour-scheduling-expandable", inputs: { schedule: "schedule", startTimeProp: "startTimeProp", endTimeProp: "endTimeProp", objectsProp: "objectsProp", childProp: "childProp", customTemplate: "customTemplate", idProp: "idProp" }, outputs: { timeChangeEvent: "timeChangeEvent", newObjectPlanEvent: "newObjectPlanEvent", moveBetweenCalendarsEvent: "moveBetweenCalendarsEvent" }, host: { listeners: { "window:resize": "onResize($event)", "document:click": "clickOut($event)" }, properties: { "class.co-hour-scheduling-expandable": "this.showClass" } }, ngImport: i0, template: `
|
|
19606
|
-
<div class="wrapper">
|
|
19607
|
-
@for (hour of hourLabels; track hour) {
|
|
19608
|
-
<div class="time-block">
|
|
19609
|
-
<div class="hour-label"><span [textContent]="hour"></span></div>
|
|
19610
|
-
<div class="object-display">
|
|
19611
|
-
<div class="first-half-hour object-half"
|
|
19612
|
-
(dragover)="allowDrop($event, hour)"
|
|
19613
|
-
(dragleave)="handleDragLeave($event)"
|
|
19614
|
-
(drop)="handleDrop($event, hour)">
|
|
19615
|
-
</div>
|
|
19616
|
-
<div class="second-half-hour object-half"
|
|
19617
|
-
(dragover)="allowDrop($event, addHalfHour(hour))"
|
|
19618
|
-
(dragleave)="handleDragLeave($event)"
|
|
19619
|
-
(drop)="handleDrop($event, addHalfHour(hour))">
|
|
19620
|
-
</div>
|
|
19621
|
-
</div>
|
|
19622
|
-
</div>
|
|
19623
|
-
}
|
|
19624
|
-
|
|
19625
|
-
<div class="scheduled-objects" >
|
|
19626
|
-
<ng-container>
|
|
19627
|
-
<ng-template
|
|
19628
|
-
[ngTemplateOutlet]="customTemplate"
|
|
19601
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: HourSchedulingExpandableComponent, isStandalone: false, selector: "co-hour-scheduling-expandable", inputs: { schedule: "schedule", startTimeProp: "startTimeProp", endTimeProp: "endTimeProp", objectsProp: "objectsProp", childProp: "childProp", customTemplate: "customTemplate", idProp: "idProp" }, outputs: { timeChangeEvent: "timeChangeEvent", newObjectPlanEvent: "newObjectPlanEvent", moveBetweenCalendarsEvent: "moveBetweenCalendarsEvent" }, host: { listeners: { "window:resize": "onResize($event)", "document:click": "clickOut($event)" }, properties: { "class.co-hour-scheduling-expandable": "this.showClass" } }, ngImport: i0, template: `
|
|
19602
|
+
<div class="wrapper">
|
|
19603
|
+
@for (hour of hourLabels; track hour) {
|
|
19604
|
+
<div class="time-block">
|
|
19605
|
+
<div class="hour-label"><span [textContent]="hour"></span></div>
|
|
19606
|
+
<div class="object-display">
|
|
19607
|
+
<div class="first-half-hour object-half"
|
|
19608
|
+
(dragover)="allowDrop($event, hour)"
|
|
19609
|
+
(dragleave)="handleDragLeave($event)"
|
|
19610
|
+
(drop)="handleDrop($event, hour)">
|
|
19611
|
+
</div>
|
|
19612
|
+
<div class="second-half-hour object-half"
|
|
19613
|
+
(dragover)="allowDrop($event, addHalfHour(hour))"
|
|
19614
|
+
(dragleave)="handleDragLeave($event)"
|
|
19615
|
+
(drop)="handleDrop($event, addHalfHour(hour))">
|
|
19616
|
+
</div>
|
|
19617
|
+
</div>
|
|
19618
|
+
</div>
|
|
19619
|
+
}
|
|
19620
|
+
|
|
19621
|
+
<div class="scheduled-objects" >
|
|
19622
|
+
<ng-container>
|
|
19623
|
+
<ng-template
|
|
19624
|
+
[ngTemplateOutlet]="customTemplate"
|
|
19629
19625
|
[ngTemplateOutletContext]="{
|
|
19630
19626
|
objects: scheduledObjects,
|
|
19631
19627
|
onSelectBlock: this.onSelectBlock.bind(this),
|
|
19632
19628
|
onResizeStart: this.onResizeStart.bind(this),
|
|
19629
|
+
onResizeEnd: this.onResizeEnd.bind(this),
|
|
19633
19630
|
onDragStartCustom: this.onDragStartCustom.bind(this)
|
|
19634
19631
|
|
|
19635
19632
|
}"
|
|
19636
|
-
>
|
|
19637
|
-
<ng-content></ng-content>
|
|
19638
|
-
</ng-template>
|
|
19639
|
-
</ng-container>
|
|
19640
|
-
</div>
|
|
19641
|
-
|
|
19642
|
-
</div>
|
|
19643
|
-
|
|
19633
|
+
>
|
|
19634
|
+
<ng-content></ng-content>
|
|
19635
|
+
</ng-template>
|
|
19636
|
+
</ng-container>
|
|
19637
|
+
</div>
|
|
19638
|
+
|
|
19639
|
+
</div>
|
|
19640
|
+
|
|
19644
19641
|
`, isInline: true, dependencies: [{ kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], changeDetection: i0.ChangeDetectionStrategy.OnPush, encapsulation: i0.ViewEncapsulation.None });
|
|
19645
19642
|
}
|
|
19646
19643
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: HourSchedulingExpandableComponent, decorators: [{
|
|
19647
19644
|
type: Component,
|
|
19648
19645
|
args: [{
|
|
19649
19646
|
selector: 'co-hour-scheduling-expandable',
|
|
19650
|
-
template: `
|
|
19651
|
-
<div class="wrapper">
|
|
19652
|
-
@for (hour of hourLabels; track hour) {
|
|
19653
|
-
<div class="time-block">
|
|
19654
|
-
<div class="hour-label"><span [textContent]="hour"></span></div>
|
|
19655
|
-
<div class="object-display">
|
|
19656
|
-
<div class="first-half-hour object-half"
|
|
19657
|
-
(dragover)="allowDrop($event, hour)"
|
|
19658
|
-
(dragleave)="handleDragLeave($event)"
|
|
19659
|
-
(drop)="handleDrop($event, hour)">
|
|
19660
|
-
</div>
|
|
19661
|
-
<div class="second-half-hour object-half"
|
|
19662
|
-
(dragover)="allowDrop($event, addHalfHour(hour))"
|
|
19663
|
-
(dragleave)="handleDragLeave($event)"
|
|
19664
|
-
(drop)="handleDrop($event, addHalfHour(hour))">
|
|
19665
|
-
</div>
|
|
19666
|
-
</div>
|
|
19667
|
-
</div>
|
|
19668
|
-
}
|
|
19669
|
-
|
|
19670
|
-
<div class="scheduled-objects" >
|
|
19671
|
-
<ng-container>
|
|
19672
|
-
<ng-template
|
|
19673
|
-
[ngTemplateOutlet]="customTemplate"
|
|
19647
|
+
template: `
|
|
19648
|
+
<div class="wrapper">
|
|
19649
|
+
@for (hour of hourLabels; track hour) {
|
|
19650
|
+
<div class="time-block">
|
|
19651
|
+
<div class="hour-label"><span [textContent]="hour"></span></div>
|
|
19652
|
+
<div class="object-display">
|
|
19653
|
+
<div class="first-half-hour object-half"
|
|
19654
|
+
(dragover)="allowDrop($event, hour)"
|
|
19655
|
+
(dragleave)="handleDragLeave($event)"
|
|
19656
|
+
(drop)="handleDrop($event, hour)">
|
|
19657
|
+
</div>
|
|
19658
|
+
<div class="second-half-hour object-half"
|
|
19659
|
+
(dragover)="allowDrop($event, addHalfHour(hour))"
|
|
19660
|
+
(dragleave)="handleDragLeave($event)"
|
|
19661
|
+
(drop)="handleDrop($event, addHalfHour(hour))">
|
|
19662
|
+
</div>
|
|
19663
|
+
</div>
|
|
19664
|
+
</div>
|
|
19665
|
+
}
|
|
19666
|
+
|
|
19667
|
+
<div class="scheduled-objects" >
|
|
19668
|
+
<ng-container>
|
|
19669
|
+
<ng-template
|
|
19670
|
+
[ngTemplateOutlet]="customTemplate"
|
|
19674
19671
|
[ngTemplateOutletContext]="{
|
|
19675
19672
|
objects: scheduledObjects,
|
|
19676
19673
|
onSelectBlock: this.onSelectBlock.bind(this),
|
|
19677
19674
|
onResizeStart: this.onResizeStart.bind(this),
|
|
19675
|
+
onResizeEnd: this.onResizeEnd.bind(this),
|
|
19678
19676
|
onDragStartCustom: this.onDragStartCustom.bind(this)
|
|
19679
19677
|
|
|
19680
19678
|
}"
|
|
19681
|
-
>
|
|
19682
|
-
<ng-content></ng-content>
|
|
19683
|
-
</ng-template>
|
|
19684
|
-
</ng-container>
|
|
19685
|
-
</div>
|
|
19686
|
-
|
|
19687
|
-
</div>
|
|
19688
|
-
|
|
19679
|
+
>
|
|
19680
|
+
<ng-content></ng-content>
|
|
19681
|
+
</ng-template>
|
|
19682
|
+
</ng-container>
|
|
19683
|
+
</div>
|
|
19684
|
+
|
|
19685
|
+
</div>
|
|
19686
|
+
|
|
19689
19687
|
`,
|
|
19690
19688
|
changeDetection: ChangeDetectionStrategy.OnPush,
|
|
19691
19689
|
encapsulation: ViewEncapsulation.None,
|
|
@@ -19741,11 +19739,9 @@ class HourSchedulingExpandableTemplateComponent {
|
|
|
19741
19739
|
showClass() {
|
|
19742
19740
|
return true;
|
|
19743
19741
|
}
|
|
19744
|
-
onExpandableDragStart(event, obj
|
|
19745
|
-
event.dataTransfer
|
|
19746
|
-
|
|
19747
|
-
onDragStartCustom?.call(obj);
|
|
19748
|
-
}
|
|
19742
|
+
onExpandableDragStart(event, obj) {
|
|
19743
|
+
event.dataTransfer?.setData("text", JSON.stringify(obj));
|
|
19744
|
+
this.onDragStartCustom?.(obj);
|
|
19749
19745
|
}
|
|
19750
19746
|
calculateLeftAndWidthOfObjects() {
|
|
19751
19747
|
const layoutData = new Array(this._objects.length);
|
|
@@ -19790,76 +19786,66 @@ class HourSchedulingExpandableTemplateComponent {
|
|
|
19790
19786
|
return layoutData;
|
|
19791
19787
|
}
|
|
19792
19788
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: HourSchedulingExpandableTemplateComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
19793
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: HourSchedulingExpandableTemplateComponent, isStandalone: false, selector: "co-hour-scheduling-expandable-template", inputs: { objectTemplate: "objectTemplate", objects: "objects", onDragStartCustom: "onDragStartCustom", onResizeStart: "onResizeStart", onSelectBlock: "onSelectBlock", startTimeProp: "startTimeProp", endTimeProp: "endTimeProp" }, host: { properties: { "class.co-hour-scheduling-expandable-template": "this.showClass" } }, ngImport: i0, template: `
|
|
19794
|
-
|
|
19795
|
-
@for (obj of objects; track obj) {
|
|
19796
|
-
|
|
19797
|
-
|
|
19798
|
-
|
|
19799
|
-
|
|
19800
|
-
|
|
19801
|
-
|
|
19802
|
-
|
|
19803
|
-
|
|
19804
|
-
|
|
19805
|
-
|
|
19806
|
-
|
|
19807
|
-
|
|
19808
|
-
|
|
19809
|
-
|
|
19810
|
-
|
|
19811
|
-
|
|
19812
|
-
|
|
19813
|
-
|
|
19814
|
-
|
|
19815
|
-
|
|
19816
|
-
|
|
19817
|
-
|
|
19818
|
-
|
|
19819
|
-
|
|
19820
|
-
class="bottom-resizer"
|
|
19821
|
-
(mousedown)="onResizeStart($event, obj, 'bottom')"></div>
|
|
19822
|
-
}
|
|
19823
|
-
</div>
|
|
19824
|
-
}
|
|
19789
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.3.16", type: HourSchedulingExpandableTemplateComponent, isStandalone: false, selector: "co-hour-scheduling-expandable-template", inputs: { objectTemplate: "objectTemplate", objects: "objects", onDragStartCustom: "onDragStartCustom", onResizeStart: "onResizeStart", onSelectBlock: "onSelectBlock", startTimeProp: "startTimeProp", endTimeProp: "endTimeProp" }, host: { properties: { "class.co-hour-scheduling-expandable-template": "this.showClass" } }, ngImport: i0, template: `
|
|
19790
|
+
|
|
19791
|
+
@for (obj of objects; track obj.id; let i = $index) {
|
|
19792
|
+
<div
|
|
19793
|
+
class="custom-scheduled-object"
|
|
19794
|
+
[class.selected]="obj.selected"
|
|
19795
|
+
[draggable]="!obj.selected"
|
|
19796
|
+
[style.--height]="obj.height + 'px'"
|
|
19797
|
+
[style.--top]="obj.top + 'px'"
|
|
19798
|
+
[style.--left]="layouts[i]?.leftPercent + '%'"
|
|
19799
|
+
[style.--width]="layouts[i]?.widthPercent + '%'"
|
|
19800
|
+
(click)="onSelectBlock(obj)"
|
|
19801
|
+
(dragstart)="onExpandableDragStart($event, obj)">
|
|
19802
|
+
@if (obj.selected) {
|
|
19803
|
+
<div class="top-resizer" (mousedown)="onResizeStart($event, obj, 'top')"></div>
|
|
19804
|
+
}
|
|
19805
|
+
|
|
19806
|
+
<ng-template
|
|
19807
|
+
[ngTemplateOutlet]="objectTemplate"
|
|
19808
|
+
[ngTemplateOutletContext]="{object: obj}">
|
|
19809
|
+
</ng-template>
|
|
19810
|
+
|
|
19811
|
+
@if (obj.selected) {
|
|
19812
|
+
<div class="bottom-resizer" (mousedown)="onResizeStart($event, obj, 'bottom')"></div>
|
|
19813
|
+
}
|
|
19814
|
+
</div>
|
|
19815
|
+
}
|
|
19825
19816
|
`, isInline: true, dependencies: [{ kind: "directive", type: i1$1.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }], encapsulation: i0.ViewEncapsulation.None });
|
|
19826
19817
|
}
|
|
19827
19818
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.3.16", ngImport: i0, type: HourSchedulingExpandableTemplateComponent, decorators: [{
|
|
19828
19819
|
type: Component,
|
|
19829
19820
|
args: [{
|
|
19830
19821
|
selector: 'co-hour-scheduling-expandable-template',
|
|
19831
|
-
template: `
|
|
19832
|
-
|
|
19833
|
-
@for (obj of objects; track obj) {
|
|
19834
|
-
|
|
19835
|
-
|
|
19836
|
-
|
|
19837
|
-
|
|
19838
|
-
|
|
19839
|
-
|
|
19840
|
-
|
|
19841
|
-
|
|
19842
|
-
|
|
19843
|
-
|
|
19844
|
-
|
|
19845
|
-
|
|
19846
|
-
|
|
19847
|
-
|
|
19848
|
-
|
|
19849
|
-
|
|
19850
|
-
|
|
19851
|
-
|
|
19852
|
-
|
|
19853
|
-
|
|
19854
|
-
|
|
19855
|
-
|
|
19856
|
-
|
|
19857
|
-
|
|
19858
|
-
class="bottom-resizer"
|
|
19859
|
-
(mousedown)="onResizeStart($event, obj, 'bottom')"></div>
|
|
19860
|
-
}
|
|
19861
|
-
</div>
|
|
19862
|
-
}
|
|
19822
|
+
template: `
|
|
19823
|
+
|
|
19824
|
+
@for (obj of objects; track obj.id; let i = $index) {
|
|
19825
|
+
<div
|
|
19826
|
+
class="custom-scheduled-object"
|
|
19827
|
+
[class.selected]="obj.selected"
|
|
19828
|
+
[draggable]="!obj.selected"
|
|
19829
|
+
[style.--height]="obj.height + 'px'"
|
|
19830
|
+
[style.--top]="obj.top + 'px'"
|
|
19831
|
+
[style.--left]="layouts[i]?.leftPercent + '%'"
|
|
19832
|
+
[style.--width]="layouts[i]?.widthPercent + '%'"
|
|
19833
|
+
(click)="onSelectBlock(obj)"
|
|
19834
|
+
(dragstart)="onExpandableDragStart($event, obj)">
|
|
19835
|
+
@if (obj.selected) {
|
|
19836
|
+
<div class="top-resizer" (mousedown)="onResizeStart($event, obj, 'top')"></div>
|
|
19837
|
+
}
|
|
19838
|
+
|
|
19839
|
+
<ng-template
|
|
19840
|
+
[ngTemplateOutlet]="objectTemplate"
|
|
19841
|
+
[ngTemplateOutletContext]="{object: obj}">
|
|
19842
|
+
</ng-template>
|
|
19843
|
+
|
|
19844
|
+
@if (obj.selected) {
|
|
19845
|
+
<div class="bottom-resizer" (mousedown)="onResizeStart($event, obj, 'bottom')"></div>
|
|
19846
|
+
}
|
|
19847
|
+
</div>
|
|
19848
|
+
}
|
|
19863
19849
|
`,
|
|
19864
19850
|
encapsulation: ViewEncapsulation.None,
|
|
19865
19851
|
standalone: false
|