@m1z23r/ngx-ui 1.1.17 → 1.1.19
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.
|
@@ -5401,9 +5401,11 @@ class SplitComponent {
|
|
|
5401
5401
|
default:
|
|
5402
5402
|
return;
|
|
5403
5403
|
}
|
|
5404
|
-
const
|
|
5405
|
-
|
|
5406
|
-
|
|
5404
|
+
const originalTotal = sizes[gutterIndex] + sizes[gutterIndex + 1];
|
|
5405
|
+
let newLeftSize = Math.max(leftPane.minSize(), Math.min(leftPane.maxSize(), sizes[gutterIndex] + delta));
|
|
5406
|
+
let newRightSize = Math.max(rightPane.minSize(), Math.min(rightPane.maxSize(), originalTotal - newLeftSize));
|
|
5407
|
+
// Recalculate left after right is clamped to preserve total
|
|
5408
|
+
newLeftSize = Math.max(leftPane.minSize(), Math.min(leftPane.maxSize(), originalTotal - newRightSize));
|
|
5407
5409
|
sizes[gutterIndex] = newLeftSize;
|
|
5408
5410
|
sizes[gutterIndex + 1] = newRightSize;
|
|
5409
5411
|
this.paneSizes.set(sizes);
|
|
@@ -5423,32 +5425,16 @@ class SplitComponent {
|
|
|
5423
5425
|
const paneList = this.panes();
|
|
5424
5426
|
const leftPane = paneList[this.dragGutterIndex];
|
|
5425
5427
|
const rightPane = paneList[this.dragGutterIndex + 1];
|
|
5428
|
+
const originalTotal = this.dragStartSizes[this.dragGutterIndex] + this.dragStartSizes[this.dragGutterIndex + 1];
|
|
5429
|
+
// Apply delta and clamp left pane
|
|
5426
5430
|
let newLeftSize = this.dragStartSizes[this.dragGutterIndex] + deltaPercent;
|
|
5427
|
-
let newRightSize = this.dragStartSizes[this.dragGutterIndex + 1] - deltaPercent;
|
|
5428
|
-
// Apply min/max constraints
|
|
5429
|
-
if (newLeftSize < leftPane.minSize()) {
|
|
5430
|
-
const diff = leftPane.minSize() - newLeftSize;
|
|
5431
|
-
newLeftSize = leftPane.minSize();
|
|
5432
|
-
newRightSize += diff;
|
|
5433
|
-
}
|
|
5434
|
-
else if (newLeftSize > leftPane.maxSize()) {
|
|
5435
|
-
const diff = newLeftSize - leftPane.maxSize();
|
|
5436
|
-
newLeftSize = leftPane.maxSize();
|
|
5437
|
-
newRightSize += diff;
|
|
5438
|
-
}
|
|
5439
|
-
if (newRightSize < rightPane.minSize()) {
|
|
5440
|
-
const diff = rightPane.minSize() - newRightSize;
|
|
5441
|
-
newRightSize = rightPane.minSize();
|
|
5442
|
-
newLeftSize -= diff;
|
|
5443
|
-
}
|
|
5444
|
-
else if (newRightSize > rightPane.maxSize()) {
|
|
5445
|
-
const diff = newRightSize - rightPane.maxSize();
|
|
5446
|
-
newRightSize = rightPane.maxSize();
|
|
5447
|
-
newLeftSize -= diff;
|
|
5448
|
-
}
|
|
5449
|
-
// Final clamp
|
|
5450
5431
|
newLeftSize = Math.max(leftPane.minSize(), Math.min(leftPane.maxSize(), newLeftSize));
|
|
5432
|
+
// Calculate right pane from remainder, then clamp
|
|
5433
|
+
let newRightSize = originalTotal - newLeftSize;
|
|
5451
5434
|
newRightSize = Math.max(rightPane.minSize(), Math.min(rightPane.maxSize(), newRightSize));
|
|
5435
|
+
// Recalculate left from clamped right to preserve total
|
|
5436
|
+
newLeftSize = originalTotal - newRightSize;
|
|
5437
|
+
newLeftSize = Math.max(leftPane.minSize(), Math.min(leftPane.maxSize(), newLeftSize));
|
|
5452
5438
|
const sizes = [...this.paneSizes()];
|
|
5453
5439
|
sizes[this.dragGutterIndex] = newLeftSize;
|
|
5454
5440
|
sizes[this.dragGutterIndex + 1] = newRightSize;
|
|
@@ -5513,7 +5499,7 @@ class SplitComponent {
|
|
|
5513
5499
|
return [...this.paneSizes()];
|
|
5514
5500
|
}
|
|
5515
5501
|
static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SplitComponent, deps: [], target: i0.ɵɵFactoryTarget.Component });
|
|
5516
|
-
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: SplitComponent, isStandalone: true, selector: "ui-split", inputs: { orientation: { classPropertyName: "orientation", publicName: "orientation", isSignal: true, isRequired: false, transformFunction: null }, gutterSize: { classPropertyName: "gutterSize", publicName: "gutterSize", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { sizeChange: "sizeChange", dragStart: "dragStart", dragEnd: "dragEnd" }, host: { properties: { "class.ui-split--horizontal": "orientation() === \"horizontal\"", "class.ui-split--vertical": "orientation() === \"vertical\"", "class.ui-split--disabled": "disabled()", "class.ui-split--dragging": "isDragging()" }, classAttribute: "ui-split" }, queries: [{ propertyName: "panes", predicate: SplitPaneComponent, isSignal: true }], ngImport: i0, template: "<ng-content />\n@for (gutterIndex of gutterIndices(); track gutterIndex) {\n <div\n class=\"ui-split__gutter\"\n [class]=\"gutterSizeClass()\"\n [style.order]=\"gutterIndex * 2 + 1\"\n role=\"separator\"\n tabindex=\"0\"\n [attr.aria-orientation]=\"orientation() === 'horizontal' ? 'vertical' : 'horizontal'\"\n [attr.aria-valuenow]=\"paneSizes()[gutterIndex] | number:'1.0-1'\"\n [attr.aria-valuemin]=\"panes()[gutterIndex]?.minSize()\"\n [attr.aria-valuemax]=\"panes()[gutterIndex]?.maxSize()\"\n (mousedown)=\"onGutterMouseDown($event, gutterIndex)\"\n (keydown)=\"onGutterKeyDown($event, gutterIndex)\"\n >\n <div class=\"ui-split__gutter-handle\"></div>\n </div>\n}\n", styles: [":host{display:flex;width:100%;height:100%;overflow:hidden}:host.ui-split--horizontal{flex-direction:row}:host.ui-split--vertical{flex-direction:column}:host.ui-split--disabled .ui-split__gutter{cursor:default;pointer-events:none}:host.ui-split--dragging{-webkit-user-select:none;user-select:none}.ui-split__gutter{flex:0 0 auto;display:flex;align-items:center;justify-content:center;background-color:var(--ui-bg-secondary);transition:background-color var(--ui-transition-fast)}.ui-split__gutter:hover,.ui-split__gutter:focus{background-color:var(--ui-bg-tertiary)}.ui-split__gutter:hover .ui-split__gutter-handle,.ui-split__gutter:focus .ui-split__gutter-handle{background-color:var(--ui-primary)}.ui-split__gutter:focus{outline:none;box-shadow:inset 0 0 0 2px var(--ui-primary)}:host(.ui-split--horizontal) .ui-split__gutter--sm{width:4px}:host(.ui-split--horizontal) .ui-split__gutter--md{width:8px}:host(.ui-split--horizontal) .ui-split__gutter--lg{width:12px}:host(.ui-split--vertical) .ui-split__gutter--sm{height:4px}:host(.ui-split--vertical) .ui-split__gutter--md{height:8px}:host(.ui-split--vertical) .ui-split__gutter--lg{height:12px}:host(.ui-split--horizontal) .ui-split__gutter{cursor:col-resize}:host(.ui-split--vertical) .ui-split__gutter{cursor:row-resize}:host(.ui-split--dragging.ui-split--horizontal){cursor:col-resize}:host(.ui-split--dragging.ui-split--vertical){cursor:row-resize}.ui-split__gutter-handle{background-color:var(--ui-border);border-radius:var(--ui-radius-sm);transition:background-color var(--ui-transition-fast)}:host(.ui-split--horizontal) .ui-split__gutter-handle{width:2px;height:24px}:host(.ui-split--vertical) .ui-split__gutter-handle{width:24px;height:2px}\n"], dependencies: [{ kind: "pipe", type: DecimalPipe, name: "number" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5502
|
+
static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "21.1.1", type: SplitComponent, isStandalone: true, selector: "ui-split", inputs: { orientation: { classPropertyName: "orientation", publicName: "orientation", isSignal: true, isRequired: false, transformFunction: null }, gutterSize: { classPropertyName: "gutterSize", publicName: "gutterSize", isSignal: true, isRequired: false, transformFunction: null }, disabled: { classPropertyName: "disabled", publicName: "disabled", isSignal: true, isRequired: false, transformFunction: null } }, outputs: { sizeChange: "sizeChange", dragStart: "dragStart", dragEnd: "dragEnd" }, host: { properties: { "class.ui-split--horizontal": "orientation() === \"horizontal\"", "class.ui-split--vertical": "orientation() === \"vertical\"", "class.ui-split--disabled": "disabled()", "class.ui-split--dragging": "isDragging()" }, classAttribute: "ui-split" }, queries: [{ propertyName: "panes", predicate: SplitPaneComponent, isSignal: true }], ngImport: i0, template: "<ng-content />\n@for (gutterIndex of gutterIndices(); track gutterIndex) {\n <div\n class=\"ui-split__gutter\"\n [class]=\"gutterSizeClass()\"\n [style.order]=\"gutterIndex * 2 + 1\"\n role=\"separator\"\n tabindex=\"0\"\n [attr.aria-orientation]=\"orientation() === 'horizontal' ? 'vertical' : 'horizontal'\"\n [attr.aria-valuenow]=\"paneSizes()[gutterIndex] | number:'1.0-1'\"\n [attr.aria-valuemin]=\"panes()[gutterIndex]?.minSize()\"\n [attr.aria-valuemax]=\"panes()[gutterIndex]?.maxSize()\"\n (mousedown)=\"onGutterMouseDown($event, gutterIndex)\"\n (keydown)=\"onGutterKeyDown($event, gutterIndex)\"\n >\n <div class=\"ui-split__gutter-handle\"></div>\n </div>\n}\n", styles: [":host{display:flex;width:100%;height:100%;overflow:hidden}:host.ui-split--horizontal{flex-direction:row}:host.ui-split--vertical{flex-direction:column}:host.ui-split--disabled .ui-split__gutter{cursor:default;pointer-events:none}:host.ui-split--dragging{-webkit-user-select:none;user-select:none}.ui-split__gutter{flex:0 0 auto;display:flex;align-items:center;justify-content:center;background-color:var(--ui-bg-secondary);transition:background-color var(--ui-transition-fast)}.ui-split__gutter:hover,.ui-split__gutter:focus{background-color:var(--ui-bg-tertiary)}.ui-split__gutter:hover .ui-split__gutter-handle,.ui-split__gutter:focus .ui-split__gutter-handle{background-color:var(--ui-primary)}.ui-split__gutter:focus{outline:none;box-shadow:inset 0 0 0 2px var(--ui-primary)}:host(.ui-split--horizontal) .ui-split__gutter--sm{width:4px}:host(.ui-split--horizontal) .ui-split__gutter--md{width:8px}:host(.ui-split--horizontal) .ui-split__gutter--lg{width:12px}:host(.ui-split--vertical) .ui-split__gutter--sm{height:4px}:host(.ui-split--vertical) .ui-split__gutter--md{height:8px}:host(.ui-split--vertical) .ui-split__gutter--lg{height:12px}:host(.ui-split--horizontal) .ui-split__gutter{cursor:col-resize}:host(.ui-split--vertical) .ui-split__gutter{cursor:row-resize;width:100%}:host(.ui-split--dragging.ui-split--horizontal){cursor:col-resize}:host(.ui-split--dragging.ui-split--vertical){cursor:row-resize}.ui-split__gutter-handle{background-color:var(--ui-border);border-radius:var(--ui-radius-sm);transition:background-color var(--ui-transition-fast)}:host(.ui-split--horizontal) .ui-split__gutter-handle{width:2px;height:24px}:host(.ui-split--vertical) .ui-split__gutter-handle{width:24px;height:2px}\n"], dependencies: [{ kind: "pipe", type: DecimalPipe, name: "number" }], changeDetection: i0.ChangeDetectionStrategy.OnPush });
|
|
5517
5503
|
}
|
|
5518
5504
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImport: i0, type: SplitComponent, decorators: [{
|
|
5519
5505
|
type: Component,
|
|
@@ -5523,7 +5509,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "21.1.1", ngImpor
|
|
|
5523
5509
|
'[class.ui-split--vertical]': 'orientation() === "vertical"',
|
|
5524
5510
|
'[class.ui-split--disabled]': 'disabled()',
|
|
5525
5511
|
'[class.ui-split--dragging]': 'isDragging()',
|
|
5526
|
-
}, template: "<ng-content />\n@for (gutterIndex of gutterIndices(); track gutterIndex) {\n <div\n class=\"ui-split__gutter\"\n [class]=\"gutterSizeClass()\"\n [style.order]=\"gutterIndex * 2 + 1\"\n role=\"separator\"\n tabindex=\"0\"\n [attr.aria-orientation]=\"orientation() === 'horizontal' ? 'vertical' : 'horizontal'\"\n [attr.aria-valuenow]=\"paneSizes()[gutterIndex] | number:'1.0-1'\"\n [attr.aria-valuemin]=\"panes()[gutterIndex]?.minSize()\"\n [attr.aria-valuemax]=\"panes()[gutterIndex]?.maxSize()\"\n (mousedown)=\"onGutterMouseDown($event, gutterIndex)\"\n (keydown)=\"onGutterKeyDown($event, gutterIndex)\"\n >\n <div class=\"ui-split__gutter-handle\"></div>\n </div>\n}\n", styles: [":host{display:flex;width:100%;height:100%;overflow:hidden}:host.ui-split--horizontal{flex-direction:row}:host.ui-split--vertical{flex-direction:column}:host.ui-split--disabled .ui-split__gutter{cursor:default;pointer-events:none}:host.ui-split--dragging{-webkit-user-select:none;user-select:none}.ui-split__gutter{flex:0 0 auto;display:flex;align-items:center;justify-content:center;background-color:var(--ui-bg-secondary);transition:background-color var(--ui-transition-fast)}.ui-split__gutter:hover,.ui-split__gutter:focus{background-color:var(--ui-bg-tertiary)}.ui-split__gutter:hover .ui-split__gutter-handle,.ui-split__gutter:focus .ui-split__gutter-handle{background-color:var(--ui-primary)}.ui-split__gutter:focus{outline:none;box-shadow:inset 0 0 0 2px var(--ui-primary)}:host(.ui-split--horizontal) .ui-split__gutter--sm{width:4px}:host(.ui-split--horizontal) .ui-split__gutter--md{width:8px}:host(.ui-split--horizontal) .ui-split__gutter--lg{width:12px}:host(.ui-split--vertical) .ui-split__gutter--sm{height:4px}:host(.ui-split--vertical) .ui-split__gutter--md{height:8px}:host(.ui-split--vertical) .ui-split__gutter--lg{height:12px}:host(.ui-split--horizontal) .ui-split__gutter{cursor:col-resize}:host(.ui-split--vertical) .ui-split__gutter{cursor:row-resize}:host(.ui-split--dragging.ui-split--horizontal){cursor:col-resize}:host(.ui-split--dragging.ui-split--vertical){cursor:row-resize}.ui-split__gutter-handle{background-color:var(--ui-border);border-radius:var(--ui-radius-sm);transition:background-color var(--ui-transition-fast)}:host(.ui-split--horizontal) .ui-split__gutter-handle{width:2px;height:24px}:host(.ui-split--vertical) .ui-split__gutter-handle{width:24px;height:2px}\n"] }]
|
|
5512
|
+
}, template: "<ng-content />\n@for (gutterIndex of gutterIndices(); track gutterIndex) {\n <div\n class=\"ui-split__gutter\"\n [class]=\"gutterSizeClass()\"\n [style.order]=\"gutterIndex * 2 + 1\"\n role=\"separator\"\n tabindex=\"0\"\n [attr.aria-orientation]=\"orientation() === 'horizontal' ? 'vertical' : 'horizontal'\"\n [attr.aria-valuenow]=\"paneSizes()[gutterIndex] | number:'1.0-1'\"\n [attr.aria-valuemin]=\"panes()[gutterIndex]?.minSize()\"\n [attr.aria-valuemax]=\"panes()[gutterIndex]?.maxSize()\"\n (mousedown)=\"onGutterMouseDown($event, gutterIndex)\"\n (keydown)=\"onGutterKeyDown($event, gutterIndex)\"\n >\n <div class=\"ui-split__gutter-handle\"></div>\n </div>\n}\n", styles: [":host{display:flex;width:100%;height:100%;overflow:hidden}:host.ui-split--horizontal{flex-direction:row}:host.ui-split--vertical{flex-direction:column}:host.ui-split--disabled .ui-split__gutter{cursor:default;pointer-events:none}:host.ui-split--dragging{-webkit-user-select:none;user-select:none}.ui-split__gutter{flex:0 0 auto;display:flex;align-items:center;justify-content:center;background-color:var(--ui-bg-secondary);transition:background-color var(--ui-transition-fast)}.ui-split__gutter:hover,.ui-split__gutter:focus{background-color:var(--ui-bg-tertiary)}.ui-split__gutter:hover .ui-split__gutter-handle,.ui-split__gutter:focus .ui-split__gutter-handle{background-color:var(--ui-primary)}.ui-split__gutter:focus{outline:none;box-shadow:inset 0 0 0 2px var(--ui-primary)}:host(.ui-split--horizontal) .ui-split__gutter--sm{width:4px}:host(.ui-split--horizontal) .ui-split__gutter--md{width:8px}:host(.ui-split--horizontal) .ui-split__gutter--lg{width:12px}:host(.ui-split--vertical) .ui-split__gutter--sm{height:4px}:host(.ui-split--vertical) .ui-split__gutter--md{height:8px}:host(.ui-split--vertical) .ui-split__gutter--lg{height:12px}:host(.ui-split--horizontal) .ui-split__gutter{cursor:col-resize}:host(.ui-split--vertical) .ui-split__gutter{cursor:row-resize;width:100%}:host(.ui-split--dragging.ui-split--horizontal){cursor:col-resize}:host(.ui-split--dragging.ui-split--vertical){cursor:row-resize}.ui-split__gutter-handle{background-color:var(--ui-border);border-radius:var(--ui-radius-sm);transition:background-color var(--ui-transition-fast)}:host(.ui-split--horizontal) .ui-split__gutter-handle{width:2px;height:24px}:host(.ui-split--vertical) .ui-split__gutter-handle{width:24px;height:2px}\n"] }]
|
|
5527
5513
|
}], ctorParameters: () => [], propDecorators: { orientation: [{ type: i0.Input, args: [{ isSignal: true, alias: "orientation", required: false }] }], gutterSize: [{ type: i0.Input, args: [{ isSignal: true, alias: "gutterSize", required: false }] }], disabled: [{ type: i0.Input, args: [{ isSignal: true, alias: "disabled", required: false }] }], sizeChange: [{ type: i0.Output, args: ["sizeChange"] }], dragStart: [{ type: i0.Output, args: ["dragStart"] }], dragEnd: [{ type: i0.Output, args: ["dragEnd"] }], panes: [{ type: i0.ContentChildren, args: [i0.forwardRef(() => SplitPaneComponent), { isSignal: true }] }] } });
|
|
5528
5514
|
|
|
5529
5515
|
class TreeNodeComponent {
|