@magic-xpa/angular-material-core 4.1300.0-dev4130.20 → 4.1300.0-dev4130.200
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.
- package/fesm2022/magic-xpa-angular-material-core.mjs +151 -35
- package/fesm2022/magic-xpa-angular-material-core.mjs.map +1 -1
- package/package.json +9 -9
- package/types/magic-xpa-angular-material-core.d.ts +392 -0
- package/index.d.ts +0 -12
- package/src/angular-material.module.d.ts +0 -35
- package/src/components/base-mat-table-magic.component.d.ts +0 -46
- package/src/components/editable-combo-component.d.ts +0 -48
- package/src/directives/magic/form-controls/mat-magic-autocomplete.directive.d.ts +0 -10
- package/src/directives/magic/form-controls/mat-magic-checkbox.directive.d.ts +0 -35
- package/src/directives/magic/form-controls/mat-magic-combobox.directive.d.ts +0 -19
- package/src/directives/magic/form-controls/mat-magic-listbox.directive.d.ts +0 -16
- package/src/services/mat.magic.providers.d.ts +0 -41
- package/src/services/mattable.magic.service.d.ts +0 -129
|
@@ -1,9 +1,8 @@
|
|
|
1
1
|
import * as i0 from '@angular/core';
|
|
2
|
-
import { Directive, HostListener, Input, Injectable, Component, ViewChild,
|
|
3
|
-
import * as i2$1 from '@angular/common';
|
|
2
|
+
import { Directive, HostListener, Input, Injectable, Component, ViewChild, Optional, Self, NgModule } from '@angular/core';
|
|
4
3
|
import { CommonModule } from '@angular/common';
|
|
5
4
|
import * as i3 from '@angular/forms';
|
|
6
|
-
import { FormGroup, FormControl,
|
|
5
|
+
import { FormGroup, FormControl, FormsModule, ReactiveFormsModule } from '@angular/forms';
|
|
7
6
|
import * as i1 from '@magic-xpa/angular';
|
|
8
7
|
import { ComboboxMagicDirective, MagicDirective, TableMagicService, basicMagicProviders, TaskBaseMagicComponent, MagicModule } from '@magic-xpa/angular';
|
|
9
8
|
import { filter } from 'rxjs/operators';
|
|
@@ -16,6 +15,10 @@ import { MatTableDataSource, MatTableModule } from '@angular/material/table';
|
|
|
16
15
|
import { SelectionModel } from '@angular/cdk/collections';
|
|
17
16
|
import { isNullOrUndefined } from '@magic-xpa/mscorelib';
|
|
18
17
|
import { MatPaginator, MatPaginatorModule } from '@angular/material/paginator';
|
|
18
|
+
import { MatFormFieldControl } from '@angular/material/form-field';
|
|
19
|
+
import * as i2$1 from '@angular/cdk/a11y';
|
|
20
|
+
import { coerceBooleanProperty } from '@angular/cdk/coercion';
|
|
21
|
+
import { Subject } from 'rxjs';
|
|
19
22
|
import * as i4 from '@angular/material/input';
|
|
20
23
|
import { MatInputModule } from '@angular/material/input';
|
|
21
24
|
import * as i5 from '@angular/material/select';
|
|
@@ -462,8 +465,7 @@ class BaseMatTableMagicComponent extends TaskBaseMagicComponent {
|
|
|
462
465
|
}
|
|
463
466
|
/** @nocollapse */ static ɵfac = function BaseMatTableMagicComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || BaseMatTableMagicComponent)(i0.ɵɵdirectiveInject(i0.ChangeDetectorRef), i0.ɵɵdirectiveInject(i1.MagicServices)); };
|
|
464
467
|
/** @nocollapse */ static ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: BaseMatTableMagicComponent, selectors: [["ng-component"]], viewQuery: function BaseMatTableMagicComponent_Query(rf, ctx) { if (rf & 1) {
|
|
465
|
-
i0.ɵɵviewQuery(MatPaginator, 7);
|
|
466
|
-
i0.ɵɵviewQuery(MatSort, 7);
|
|
468
|
+
i0.ɵɵviewQuery(MatPaginator, 7)(MatSort, 7);
|
|
467
469
|
} if (rf & 2) {
|
|
468
470
|
let _t;
|
|
469
471
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.paginator = _t.first);
|
|
@@ -487,18 +489,23 @@ class BaseMatTableMagicComponent extends TaskBaseMagicComponent {
|
|
|
487
489
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(BaseMatTableMagicComponent, { className: "BaseMatTableMagicComponent", filePath: "src/components/base-mat-table-magic.component.ts", lineNumber: 19 }); })();
|
|
488
490
|
|
|
489
491
|
const _c0 = ["comboinput"];
|
|
490
|
-
function
|
|
491
|
-
i0.ɵɵelementStart(0, "mat-option",
|
|
492
|
+
function EditableComboComponent_For_6_Template(rf, ctx) { if (rf & 1) {
|
|
493
|
+
i0.ɵɵelementStart(0, "mat-option", 5);
|
|
492
494
|
i0.ɵɵtext(1);
|
|
493
495
|
i0.ɵɵelementEnd();
|
|
494
496
|
} if (rf & 2) {
|
|
495
|
-
const
|
|
496
|
-
i0.ɵɵproperty("value",
|
|
497
|
+
const o_r1 = ctx.$implicit;
|
|
498
|
+
i0.ɵɵproperty("value", o_r1.displayValue);
|
|
497
499
|
i0.ɵɵadvance();
|
|
498
|
-
i0.ɵɵtextInterpolate1(" ",
|
|
500
|
+
i0.ɵɵtextInterpolate1(" ", o_r1.displayValue, " ");
|
|
499
501
|
} }
|
|
502
|
+
// Added MatFormFieldControl<number> so this component integrates with mat-form-field.
|
|
503
|
+
// Added OnDestroy to clean up stateChanges stream and FocusMonitor when component is destroyed.
|
|
500
504
|
class EditableComboComponent {
|
|
501
505
|
magicServices;
|
|
506
|
+
fm;
|
|
507
|
+
elRef;
|
|
508
|
+
ngControl;
|
|
502
509
|
/**
|
|
503
510
|
* @ignore
|
|
504
511
|
*/
|
|
@@ -518,11 +525,71 @@ class EditableComboComponent {
|
|
|
518
525
|
;
|
|
519
526
|
placeholder = '';
|
|
520
527
|
formGroup = new FormGroup({});
|
|
528
|
+
// Track whether the autocomplete panel is open
|
|
529
|
+
isPanelOpen = false;
|
|
521
530
|
// These are the functions required by ControlValueAccessor
|
|
522
531
|
onChange = () => { };
|
|
523
532
|
onTouched = () => { };
|
|
524
|
-
|
|
533
|
+
// Required fields for MatFormFieldControl contract.
|
|
534
|
+
// These allow mat-form-field to track id, state changes, focus, and control type.
|
|
535
|
+
static nextId = 0;
|
|
536
|
+
id = `editable-combo-${EditableComboComponent.nextId++}`;
|
|
537
|
+
stateChanges = new Subject();
|
|
538
|
+
focused = false;
|
|
539
|
+
touched = false;
|
|
540
|
+
controlType = 'editable-combo';
|
|
541
|
+
value = -1;
|
|
542
|
+
// Required by MatFormFieldControl. Allows developer to set required attribute on mat-form-field.
|
|
543
|
+
_required = false;
|
|
544
|
+
get required() { return this._required; }
|
|
545
|
+
set required(val) { this._required = coerceBooleanProperty(val); this.stateChanges.next(); }
|
|
546
|
+
// Required by MatFormFieldControl. Keeps the internal FormControl in sync with disabled state.
|
|
547
|
+
_disabled = false;
|
|
548
|
+
get disabled() { return this._disabled; }
|
|
549
|
+
set disabled(val) { this._disabled = coerceBooleanProperty(val); this.stateChanges.next(); }
|
|
550
|
+
// Checks the inner input value to determine if the field is empty.
|
|
551
|
+
// mat-form-field uses this to decide whether the label should float or not.
|
|
552
|
+
get empty() {
|
|
553
|
+
const inputVal = this.formGroup.get('combo_fc')?.value;
|
|
554
|
+
return !inputVal || inputVal === '';
|
|
555
|
+
}
|
|
556
|
+
// Controls whether mat-label floats above the field.
|
|
557
|
+
// Label floats when the field is focused or has a value selected.
|
|
558
|
+
get shouldLabelFloat() {
|
|
559
|
+
return this.focused || !this.empty;
|
|
560
|
+
}
|
|
561
|
+
// Controls when the red error border is shown.
|
|
562
|
+
// Error is shown only after the user has left the field without selecting a value.
|
|
563
|
+
get errorState() {
|
|
564
|
+
return this.touched && this.ngControl?.invalid === true;
|
|
565
|
+
}
|
|
566
|
+
constructor(magicServices,
|
|
567
|
+
// FocusMonitor and ElementRef are needed to track focus state on the host element.
|
|
568
|
+
fm, elRef,
|
|
569
|
+
// NgControl gives access to the form control's validation state for errorState.
|
|
570
|
+
ngControl) {
|
|
525
571
|
this.magicServices = magicServices;
|
|
572
|
+
this.fm = fm;
|
|
573
|
+
this.elRef = elRef;
|
|
574
|
+
this.ngControl = ngControl;
|
|
575
|
+
// Manually assign valueAccessor here instead of using NG_VALUE_ACCESSOR provider.
|
|
576
|
+
// This avoids the circular dependency error (NG0200) that occurs when NgControl
|
|
577
|
+
// and NG_VALUE_ACCESSOR both try to reference each other during injection.
|
|
578
|
+
if (this.ngControl != null) {
|
|
579
|
+
this.ngControl.valueAccessor = this;
|
|
580
|
+
}
|
|
581
|
+
// origin tells you how the element was focused, its values are: 'mouse'/'keyboard'/'touch'/'program'
|
|
582
|
+
// Set touched=true on blur (while leaving the control) to avoid showing error on entering the control when control is with required.
|
|
583
|
+
// otherwise, the error will be shown as soon as user enters the control.
|
|
584
|
+
fm.monitor(elRef, true).subscribe(origin => {
|
|
585
|
+
this.focused = origin !== null;
|
|
586
|
+
if (origin === null && !this.isPanelOpen) {
|
|
587
|
+
// Only mark touched if panel is closed.
|
|
588
|
+
// If panel is open, user is clicking an option — onClosed() will handle touched.
|
|
589
|
+
this.touched = true;
|
|
590
|
+
}
|
|
591
|
+
this.stateChanges.next();
|
|
592
|
+
});
|
|
526
593
|
}
|
|
527
594
|
/**
|
|
528
595
|
* Returns the Magic accessor service
|
|
@@ -540,6 +607,22 @@ class EditableComboComponent {
|
|
|
540
607
|
}
|
|
541
608
|
ngOnInit() {
|
|
542
609
|
this.formGroup.addControl("combo_fc", new FormControl());
|
|
610
|
+
// Notify mat-form-field whenever the inner input value changes.
|
|
611
|
+
// This ensures the label floats correctly as the user types or selects a value.
|
|
612
|
+
this.formGroup.get('combo_fc')?.valueChanges.subscribe(() => {
|
|
613
|
+
this.stateChanges.next();
|
|
614
|
+
});
|
|
615
|
+
}
|
|
616
|
+
// Clean up stateChanges stream and stop focus monitoring to prevent memory leaks.
|
|
617
|
+
ngOnDestroy() {
|
|
618
|
+
this.stateChanges.complete();
|
|
619
|
+
this.fm.stopMonitoring(this.elRef);
|
|
620
|
+
}
|
|
621
|
+
// Required by MatFormFieldControl. Sets aria-describedby for accessibility.
|
|
622
|
+
setDescribedByIds(ids) { }
|
|
623
|
+
// Required by MatFormFieldControl. Focuses the inner input when the field container is clicked.
|
|
624
|
+
onContainerClick(event) {
|
|
625
|
+
this.combo_input?.nativeElement.focus();
|
|
543
626
|
}
|
|
544
627
|
// Write value method will be called when FormControl value is updated
|
|
545
628
|
writeValue(value) {
|
|
@@ -553,6 +636,8 @@ class EditableComboComponent {
|
|
|
553
636
|
}
|
|
554
637
|
else
|
|
555
638
|
this.formGroup.get("combo_fc")?.setValue("");
|
|
639
|
+
// Notify mat-form-field that the value has changed so it can update label and state.
|
|
640
|
+
this.stateChanges.next();
|
|
556
641
|
}
|
|
557
642
|
// Register onChange function to be triggered when the input value changes
|
|
558
643
|
registerOnChange(fn) {
|
|
@@ -565,6 +650,19 @@ class EditableComboComponent {
|
|
|
565
650
|
// Optional: Handle the touch event when the input is blurred
|
|
566
651
|
onBlur() {
|
|
567
652
|
this.onTouched();
|
|
653
|
+
this.stateChanges.next();
|
|
654
|
+
}
|
|
655
|
+
// Enables or disables the form control based on the provided state
|
|
656
|
+
setDisabledState(isDisabled) {
|
|
657
|
+
const formControl = this.formGroup.get("combo_fc");
|
|
658
|
+
if (formControl) {
|
|
659
|
+
if (isDisabled)
|
|
660
|
+
formControl.disable();
|
|
661
|
+
else
|
|
662
|
+
formControl.enable();
|
|
663
|
+
}
|
|
664
|
+
// Notify mat-form-field so it updates the visual disabled state.
|
|
665
|
+
this.stateChanges.next();
|
|
568
666
|
}
|
|
569
667
|
onOptionSelected(event) {
|
|
570
668
|
const selectedVal = event.option.value;
|
|
@@ -579,11 +677,16 @@ class EditableComboComponent {
|
|
|
579
677
|
this.task.insertEvent(guiEvent);
|
|
580
678
|
}
|
|
581
679
|
onOpened() {
|
|
680
|
+
this.isPanelOpen = true;
|
|
582
681
|
MagicDirective.noOfAutoCompleteBoxesOpened++;
|
|
583
682
|
}
|
|
584
683
|
onClosed() {
|
|
684
|
+
this.isPanelOpen = false;
|
|
585
685
|
this.writeValue(this.mg.getValue(this.controlId, this.rowId));
|
|
586
686
|
MagicDirective.noOfAutoCompleteBoxesOpened--;
|
|
687
|
+
// Mark touched here instead: panel is closed means user truly left the field
|
|
688
|
+
this.touched = true;
|
|
689
|
+
this.stateChanges.next();
|
|
587
690
|
}
|
|
588
691
|
getFilteredListForChoiceControl() {
|
|
589
692
|
const elem = this.combo_input;
|
|
@@ -596,46 +699,55 @@ class EditableComboComponent {
|
|
|
596
699
|
else
|
|
597
700
|
return items;
|
|
598
701
|
}
|
|
599
|
-
/** @nocollapse */ static ɵfac = function EditableComboComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || EditableComboComponent)(i0.ɵɵdirectiveInject(i1.MagicServices)); };
|
|
702
|
+
/** @nocollapse */ static ɵfac = function EditableComboComponent_Factory(__ngFactoryType__) { return new (__ngFactoryType__ || EditableComboComponent)(i0.ɵɵdirectiveInject(i1.MagicServices), i0.ɵɵdirectiveInject(i2$1.FocusMonitor), i0.ɵɵdirectiveInject(i0.ElementRef), i0.ɵɵdirectiveInject(i3.NgControl, 10)); };
|
|
600
703
|
/** @nocollapse */ static ɵcmp = /** @pureOrBreakMyCode */ i0.ɵɵdefineComponent({ type: EditableComboComponent, selectors: [["editable-combo"]], viewQuery: function EditableComboComponent_Query(rf, ctx) { if (rf & 1) {
|
|
601
704
|
i0.ɵɵviewQuery(_c0, 5);
|
|
602
705
|
} if (rf & 2) {
|
|
603
706
|
let _t;
|
|
604
707
|
i0.ɵɵqueryRefresh(_t = i0.ɵɵloadQuery()) && (ctx.combo_input = _t.first);
|
|
605
|
-
} }, inputs: { magic: "magic", rowId1: [0, "rowId", "rowId1"], placeholder: "placeholder" }, standalone: false, features: [i0.ɵɵProvidersFeature([
|
|
708
|
+
} }, inputs: { magic: "magic", rowId1: [0, "rowId", "rowId1"], placeholder: "placeholder", required: "required", disabled: "disabled" }, standalone: false, features: [i0.ɵɵProvidersFeature([
|
|
709
|
+
// Registering this component as a MatFormFieldControl so that Angular Material's
|
|
710
|
+
// mat-form-field can recognize it as a valid form control and communicate with it.
|
|
711
|
+
// useExisting tells Angular to use the already created instance of this component
|
|
712
|
+
// instead of creating a new one, so mat-form-field and the component share the same instance.
|
|
606
713
|
{
|
|
607
|
-
provide:
|
|
608
|
-
useExisting:
|
|
609
|
-
multi: true
|
|
714
|
+
provide: MatFormFieldControl,
|
|
715
|
+
useExisting: EditableComboComponent
|
|
610
716
|
}
|
|
611
|
-
])], decls: 7, vars:
|
|
612
|
-
|
|
613
|
-
i0.ɵɵ
|
|
614
|
-
i0.ɵɵlistener("blur", function EditableComboComponent_Template_input_blur_2_listener() { i0.ɵɵrestoreView(_r1); return i0.ɵɵresetView(ctx.onBlur()); });
|
|
717
|
+
])], decls: 7, vars: 3, consts: [["comboinput", ""], ["Editable_Combo", "matAutocomplete"], ["novalidate", "", 3, "formGroup"], ["matInput", "", "formControlName", "combo_fc", 3, "blur", "matAutocomplete", "placeholder"], ["requireSelection", "true", "autoActiveFirstOption", "true", 3, "optionSelected", "closed", "opened"], [3, "value"]], template: function EditableComboComponent_Template(rf, ctx) { if (rf & 1) {
|
|
718
|
+
i0.ɵɵelementStart(0, "div", 2)(1, "input", 3, 0);
|
|
719
|
+
i0.ɵɵlistener("blur", function EditableComboComponent_Template_input_blur_1_listener() { return ctx.onBlur(); });
|
|
615
720
|
i0.ɵɵelementEnd();
|
|
616
|
-
i0.ɵɵelementStart(
|
|
617
|
-
i0.ɵɵlistener("optionSelected", function
|
|
618
|
-
i0.ɵɵ
|
|
619
|
-
i0.ɵɵelementEnd()()
|
|
721
|
+
i0.ɵɵelementStart(3, "mat-autocomplete", 4, 1);
|
|
722
|
+
i0.ɵɵlistener("optionSelected", function EditableComboComponent_Template_mat_autocomplete_optionSelected_3_listener($event) { return ctx.onOptionSelected($event); })("closed", function EditableComboComponent_Template_mat_autocomplete_closed_3_listener() { return ctx.onClosed(); })("opened", function EditableComboComponent_Template_mat_autocomplete_opened_3_listener() { return ctx.onOpened(); });
|
|
723
|
+
i0.ɵɵrepeaterCreate(5, EditableComboComponent_For_6_Template, 2, 2, "mat-option", 5, i0.ɵɵrepeaterTrackByIdentity);
|
|
724
|
+
i0.ɵɵelementEnd()();
|
|
620
725
|
} if (rf & 2) {
|
|
621
|
-
const
|
|
726
|
+
const Editable_Combo_r2 = i0.ɵɵreference(4);
|
|
622
727
|
i0.ɵɵproperty("formGroup", ctx.formGroup);
|
|
623
|
-
i0.ɵɵadvance(
|
|
624
|
-
i0.ɵɵproperty("matAutocomplete",
|
|
728
|
+
i0.ɵɵadvance();
|
|
729
|
+
i0.ɵɵproperty("matAutocomplete", Editable_Combo_r2)("placeholder", ctx.placeholder);
|
|
625
730
|
i0.ɵɵadvance(4);
|
|
626
|
-
i0.ɵɵ
|
|
627
|
-
} }, dependencies: [
|
|
731
|
+
i0.ɵɵrepeater(ctx.getFilteredListForChoiceControl());
|
|
732
|
+
} }, dependencies: [i3.DefaultValueAccessor, i3.NgControlStatus, i3.NgControlStatusGroup, i4.MatInput, i5.MatOption, i6.MatAutocompleteTrigger, i6.MatAutocomplete, i3.FormGroupDirective, i3.FormControlName], encapsulation: 2 });
|
|
628
733
|
}
|
|
629
734
|
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassMetadata(EditableComboComponent, [{
|
|
630
735
|
type: Component,
|
|
631
736
|
args: [{ selector: 'editable-combo', standalone: false, providers: [
|
|
737
|
+
// Registering this component as a MatFormFieldControl so that Angular Material's
|
|
738
|
+
// mat-form-field can recognize it as a valid form control and communicate with it.
|
|
739
|
+
// useExisting tells Angular to use the already created instance of this component
|
|
740
|
+
// instead of creating a new one, so mat-form-field and the component share the same instance.
|
|
632
741
|
{
|
|
633
|
-
provide:
|
|
634
|
-
useExisting:
|
|
635
|
-
multi: true
|
|
742
|
+
provide: MatFormFieldControl,
|
|
743
|
+
useExisting: EditableComboComponent
|
|
636
744
|
}
|
|
637
|
-
], template: "<div\n novalidate\n [formGroup]=\"formGroup\"\n
|
|
638
|
-
}], () => [{ type: i1.MagicServices }
|
|
745
|
+
], template: "<div\n novalidate\n [formGroup]=\"formGroup\"\n >\n <input\n #comboinput\n matInput\n formControlName=\"combo_fc\"\n [matAutocomplete]=\"Editable_Combo\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholder\"\n >\n <!-- <mat-icon matSuffix>arrow_drop_down</mat-icon>-->\n <mat-autocomplete\n #Editable_Combo=\"matAutocomplete\"\n requireSelection=\"true\"\n autoActiveFirstOption=\"true\"\n (optionSelected)=\"onOptionSelected($event)\"\n (closed)=\"onClosed()\"\n (opened)=\"onOpened()\"\n >\n @for (o of getFilteredListForChoiceControl(); track o) {\n <mat-option\n [value]=\"o.displayValue\"\n >\n {{o.displayValue}}\n </mat-option>\n }\n </mat-autocomplete>\n </div>\n" }]
|
|
746
|
+
}], () => [{ type: i1.MagicServices }, { type: i2$1.FocusMonitor }, { type: i0.ElementRef }, { type: i3.NgControl, decorators: [{
|
|
747
|
+
type: Optional
|
|
748
|
+
}, {
|
|
749
|
+
type: Self
|
|
750
|
+
}] }], { combo_input: [{
|
|
639
751
|
type: ViewChild,
|
|
640
752
|
args: ['comboinput']
|
|
641
753
|
}], magic: [{
|
|
@@ -646,8 +758,12 @@ class EditableComboComponent {
|
|
|
646
758
|
args: ['rowId']
|
|
647
759
|
}], placeholder: [{
|
|
648
760
|
type: Input
|
|
761
|
+
}], required: [{
|
|
762
|
+
type: Input
|
|
763
|
+
}], disabled: [{
|
|
764
|
+
type: Input
|
|
649
765
|
}] }); })();
|
|
650
|
-
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EditableComboComponent, { className: "EditableComboComponent", filePath: "src/components/editable-combo-component.ts", lineNumber:
|
|
766
|
+
(() => { (typeof ngDevMode === "undefined" || ngDevMode) && i0.ɵsetClassDebugInfo(EditableComboComponent, { className: "EditableComboComponent", filePath: "src/components/editable-combo-component.ts", lineNumber: 39 }); })();
|
|
651
767
|
|
|
652
768
|
/**
|
|
653
769
|
* Directive for material-design listboxes not on material-design table
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"magic-xpa-angular-material-core.mjs","sources":["../../../../projects/angular-material-core/src/directives/magic/form-controls/mat-magic-checkbox.directive.ts","../../../../projects/angular-material-core/src/directives/magic/form-controls/mat-magic-combobox.directive.ts","../../../../projects/angular-material-core/src/services/mattable.magic.service.ts","../../../../projects/angular-material-core/src/services/mat.magic.providers.ts","../../../../projects/angular-material-core/src/components/base-mat-table-magic.component.ts","../../../../projects/angular-material-core/src/components/editable-combo.component.html","../../../../projects/angular-material-core/src/components/editable-combo-component.ts","../../../../projects/angular-material-core/src/directives/magic/form-controls/mat-magic-listbox.directive.ts","../../../../projects/angular-material-core/src/directives/magic/form-controls/mat-magic-autocomplete.directive.ts","../../../../projects/angular-material-core/src/angular-material.module.ts","../../../../projects/angular-material-core/index.ts","../../../../projects/angular-material-core/magic-xpa-angular-material-core.ts"],"sourcesContent":["import {Directive, ElementRef, HostListener, Input} from \"@angular/core\";\r\nimport {MagicDirective, TaskMagicService} from \"@magic-xpa/angular\";\r\nimport {filter} from \"rxjs/operators\";\r\nimport {CommandType, GuiCommand, HtmlProperties} from \"@magic-xpa/gui\";\r\nimport {MatCheckbox} from \"@angular/material/checkbox\";\r\nimport {getGuiEventObj, IGuiEvent} from \"@magic-xpa/engine\";\r\n\r\n\r\n/**\r\n * Directive for material-design checkboxes not on material-design table\r\n */\r\n@Directive({\n selector: `\r\n mat-checkbox[magic]:not([noFormControl])\r\n `,\n standalone: false\n})\r\nexport class MatCheckboxDirective {\r\n @Input() threeState: boolean = false;\r\n private subscribeRefreshDom: any = null;\r\n private indeterminate : boolean = false;\r\n /**\r\n * @ignore\r\n */\r\n constructor( protected magicDirective: MagicDirective,\r\n private matCheckbox: MatCheckbox,\r\n protected task: TaskMagicService,\r\n protected element: ElementRef) {\r\n }\r\n /**\r\n * Handles the Checkbox 'change' event - pass it to the Magic engine\r\n */\r\n @HostListener('change', ['$event'])\r\n onChange($event: Event) {\r\n if(this.threeState) {\r\n this.handleThreeState();\r\n }\r\n else {\r\n this.magicDirective.task.onCheckChanged($event, this.magicDirective.id, +this.magicDirective.rowId);\r\n }\r\n }\r\n ngOnInit() {\r\n if(this.threeState){\r\n let guiEvent: IGuiEvent = getGuiEventObj(\"setAsThreeState\",this.magicDirective.id, +this.magicDirective.rowId);\r\n this.task.insertEvent(guiEvent);\r\n this.matCheckbox.indeterminate = this.indeterminate = this.task.getProperty(this.magicDirective.id, HtmlProperties.CheckBoxIndeterminate, this.magicDirective.rowId);\r\n this.regUpdatesUI();\r\n }\r\n }\r\n private regUpdatesUI() {\r\n this.subscribeRefreshDom = this.task\r\n .refreshDom.pipe(filter(c => this.magicDirective.IsSameElement(c)))\r\n .subscribe(a => {\r\n let command: GuiCommand = a;\r\n try {\r\n this.handleCommand(command);\r\n } catch (ex) {\r\n console.dir(ex);\r\n }\r\n }\r\n );\r\n }\r\n handleCommand(command: GuiCommand){\r\n if (command.CommandType == CommandType.SET_PROPERTY &&\r\n command.Operation == HtmlProperties.CheckBoxIndeterminate) {\r\n this.indeterminate = this.matCheckbox.indeterminate = command.obj1;\r\n }\r\n }\r\n private handleThreeState() {\r\n let value : string = '';\r\n let prevCheckedValue = this.task.getValue(this.magicDirective.id, this.magicDirective.rowId);\r\n if(this.indeterminate) {\r\n this.indeterminate = this.matCheckbox.indeterminate = false;\r\n this.matCheckbox.checked = false;\r\n value = 'unchecked';\r\n }\r\n else if(prevCheckedValue) {\r\n this.indeterminate = this.matCheckbox.indeterminate = true;\r\n this.matCheckbox.checked = false;\r\n value = 'indeterminate';\r\n }\r\n else if(!prevCheckedValue) {\r\n this.indeterminate = this.matCheckbox.indeterminate = false;\r\n this.matCheckbox.checked = true;\r\n value = 'checked';\r\n }\r\n // @ts-ignore\r\n this.magicDirective.task.onCheckChanged(value, this.magicDirective.id, +this.magicDirective.rowId);\r\n }\r\n /**\r\n * Cleanup\r\n */\r\n ngOnDestroy(): void {\r\n if(this.subscribeRefreshDom !== null)\r\n this.subscribeRefreshDom.unsubscribe();\r\n }\r\n}\r\n","import { Directive, HostListener } from \"@angular/core\";\r\nimport {ComboboxMagicDirective, MagicDirective} from \"@magic-xpa/angular\";\r\n\r\n\r\n/**\r\n * Directive for material-design comboboxes not on material-design table\r\n */\r\n@Directive({\n selector: `mat-select[magic]`,\n standalone: false\n})\r\nexport class MatComboboxDirective extends ComboboxMagicDirective {\r\n\r\n /**\r\n * Handles the \"selectionChange\" event - pass it to the \"change\" event handler\r\n * @param $event\r\n */\r\n @HostListener('selectionChange', ['$event'])\r\n onChange($event) {\r\n super.onChange($event);\r\n }\r\n\r\n @HostListener('openedChange', ['$event'])\r\n onOpenedChanged($event) {\r\n MagicDirective.opened = $event;\r\n }\r\n\r\n /**\r\n * For mat-select do nothing\r\n */\r\n onComboboxItemsListChanged(): void {\r\n }\r\n}\r\n","\nimport { Injectable } from '@angular/core';\nimport { SelectionModel } from \"@angular/cdk/collections\";\n\nimport { TaskMagicService, ComponentListMagicService, ControlsMetadata } from \"@magic-xpa/angular\";\nimport {IGuiEvent, getGuiEventObj} from \"@magic-xpa/engine\";\nimport { TableMagicService } from \"@magic-xpa/angular\";\nimport {isNullOrUndefined} from \"@magic-xpa/mscorelib\";\nimport { MatTableDataSource } from '@angular/material/table';\nimport { MatPaginator } from '@angular/material/paginator';\n\n\n/**\n * Extends the Magic table service to supply functionality for Material Design tables\n */\n@Injectable()\nexport class MgMatTableService extends TableMagicService {\n /**\n * Table data source\n */\n dataSource: MatTableDataSource<Element>;\n\n /**\n * @ignore\n */\n get DataSource(): MatTableDataSource<Element> {\n return this.dataSource;\n }\n\n /**\n * @ignore\n */\n set DataSource(dataSource: MatTableDataSource<Element>) {\n this.dataSource = dataSource;\n }\n\n /**\n * Provides selection options for the table\n */\n selection: SelectionModel<Element>;\n\n /**\n * @ignore\n */\n get Selection(): SelectionModel<Element> {\n return this.selection;\n }\n\n /**\n * @ignore\n */\n set Selection(selection: SelectionModel<Element>) {\n this.selection = selection;\n }\n\n /**\n * Paginator to enable changing pages in the table\n */\n paginator: MatPaginator;\n\n /**\n * @ignore\n */\n get Paginator(): MatPaginator {\n return this.paginator;\n }\n\n /**\n * @ignore\n */\n set Paginator(paginator: MatPaginator) {\n this.paginator = paginator;\n }\n\n /**\n * @ignore\n */\n constructor(protected componentList: ComponentListMagicService, protected task: TaskMagicService ) {\n super(componentList, task);\n }\n\n /**\n * Connects the service to the elements of the table component\n * @param dataSource Table data source\n * @param paginator Table paginator\n * @param selection table SelectionModel\n */\n connect(dataSource: MatTableDataSource<Element> , paginator: MatPaginator, selection: SelectionModel<Element>) {\n this.dataSource = dataSource;\n this.paginator = paginator;\n this.selection = selection;\n }\n\n /**\n * @ignore\n */\n refreshDataSource() {\n if (!isNullOrUndefined(this.paginator))\n this.dataSource.paginator = this.paginator;\n\n this.dataSource.data = (this.task.mgAccessorService.isDataviewEmpty() ? [] : this.task.Records.list);\n }\n\n /**\n * returns the page size of the table\n * @returns\n */\n getPageSize(): number {\n if (isNullOrUndefined(this.paginator))\n return 10;\n return this.paginator.pageSize;\n }\n\n /**\n * Selects a table row\n * @param guiRowid Id of row to be selected\n */\n selectRow(guiRowid: string): void {\n super.selectRow(guiRowid);\n this.selection.select(this.task.Records.list[guiRowid]);\n this.refreshDataSource();\n }\n\n /**\n * Displays the requested table page\n * @param pageId Id of page to be selected\n */\n selectPage(pageId: number): void {\n if (!isNullOrUndefined(this.paginator))\n this.paginator.pageIndex = pageId;\n\n this.refreshDataSource();\n }\n\n /**\n * Returns the currently seleted row\n * @returns\n */\n selectedRow(): any {\n return this.selection.selected[0];\n }\n\n /**\n * Handle the paginator's \"page\" event\n * @param e The event received from the UI\n * @param changeSelectedRow The flag true or false to indicate change the row\n */\n mgOnPaginateChange(e, changeSelectedRow?: boolean)\n {\n if (this.task.oldPageSize != e.pageSize) {\n this.handleResize(e.pageIndex, e.previousPageIndex, e.pageSize);\n this.task.oldPageSize = e.pageSize;\n }\n else {\n if (changeSelectedRow)\n {\n let evt: string;\n if (e.pageIndex > e.previousPageIndex) {\n evt = (e.pageIndex - e.previousPageIndex === 1) ? \"next-page\" : \"end-table\";\n } else {\n evt = (e.previousPageIndex - e.pageIndex === 1) ? \"previous-page\" : \"begin-table\";\n }\n\n let guiEvent: IGuiEvent = getGuiEventObj(\"navigateInTable\", \"magicRow\",0);\n guiEvent.Value = evt;\n this.task.insertEvent(guiEvent);\n }\n else\n this.getRowsIfNeeded(e.pageIndex, e.previousPageIndex, e.pageSize);\n }\n }\n\n /**\n * Handle resize and set table top index.\n * @param pageIndex : New page index.\n * @param prevPageIndex : Prev page index\n * @param pageSize : PageSize\n */\n handleResize(pageIndex: number, prevPageIndex: number, pageSize: number): void {\n let requiredGuiRowId = pageIndex * pageSize;\n this.task.resize(pageSize, requiredGuiRowId);\n }\n\n /**\n * Execute getRows to fetch required chunk of records.\n * @param pageIndex : New page index.\n * @param prevPageIndex : Prev page index\n * @param pageSize : PageSize\n */\n getRowsIfNeeded(pageIndex: number, prevPageIndex: number, pageSize: number): void {\n let guiEvent: IGuiEvent = getGuiEventObj(\"getRows\", \"\",0);\n guiEvent.Line = pageIndex * pageSize;\n this.task.insertEvent(guiEvent);\n this.setTableTopIndex(this.task.getDvRowId(pageSize * pageIndex));\n }\n\n /**\n * Handles the \"matSortChange\" event\n * @param e The event received from the UI\n */\n sortData(e) {\n let direction: number = 0;\n if (e.direction === 'asc')\n direction = 0;\n else if (e.direction === 'desc')\n direction = 1;\n\n let guiEvent: IGuiEvent = getGuiEventObj(\"columnSort\", e.active, direction);\n this.task.insertEvent(guiEvent);\n }\n\n /**\n * Change the number of lines in a table\n * @param size New number of lines in table\n */\n updateTableSize(size: number) {\n if (size === 0) // never remove row 0 for now\n {\n size = 1;\n this.task.Records.clearFirstTableRecord(this.task.template);\n }\n\n else if (isNullOrUndefined(this.paginator))\n size = this.getPageSize();\n\n this.task.formGroups.length = size;\n this.task.Records.updateSize(size);\n this.task.setIncludesFirst(false);\n }\n\n /**\n * Handle the selection of row and if needed move to respective page.\n * @param guiRowId New number of lines in table\n */\n protected selectPageForGuiRowId(guiRowId: number): void {\n let pageToBeSelected: number = 0;\n let prevSelectedRow: ControlsMetadata = <ControlsMetadata>this.selectedRow();\n\n pageToBeSelected = Math.floor(guiRowId / this.getPageSize());\n\n // Explicitly handle selection of page when it's not raised by using pagination\n if ((isNullOrUndefined(prevSelectedRow) || (!isNullOrUndefined(this.paginator) && pageToBeSelected != this.paginator.pageIndex)))\n this.selectPage(pageToBeSelected);\n }\n\n /**\n * @ignore\n */\n setTableTopIndex(value: number) {\n this.task.Records.setGuiTopIndex(value);\n\n if (value >= 0)\n this.selectPageForGuiRowId(this.task.getGuiRowId(value, true));\n }\n\n /**\n * @ignore\n */\n getTableTopIndex():number\n {\n return this.task.Records.getGuiTopIndex();\n }\n}\n\n","\r\nimport { basicMagicProviders, TableMagicService} from \"@magic-xpa/angular\";\r\n\r\nimport { MgMatTableService } from \"./mattable.magic.service\";\r\n\r\n\r\n/**\r\n * @ignore\r\n */\r\nexport const matMagicProviders = [\r\n ...basicMagicProviders, // - created error Exported variable 'matMagicProviders' has or is using name 'MagicServices' from external module \"D:/magicxpaproject/_Trunk/Sources/Webclient/dist/angular/src/services/magic.services\" but cannot be named.\r\n { provide: TableMagicService, useClass: MgMatTableService }\r\n];\r\n\r\n","import { MagicServices, TaskBaseMagicComponent } from '@magic-xpa/angular';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { SelectionModel } from '@angular/cdk/collections';\r\nimport { ChangeDetectorRef, Component, ViewChild } from '@angular/core';\r\nimport { MgMatTableService } from '../services/mattable.magic.service';\r\nimport { matMagicProviders } from '../services/mat.magic.providers';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { isNullOrUndefined } from '@magic-xpa/mscorelib';\r\n\r\n/**\r\n * This component is the base component for forms which has a material-design table (grid)\r\n */\r\n@Component({\n providers: matMagicProviders,\n template: '',\n standalone: false\n})\r\n export class BaseMatTableMagicComponent extends TaskBaseMagicComponent {\r\n\r\n /**\r\n * Paginator to enable changing pages in the table\r\n */\r\n @ViewChild(MatPaginator, {static:true}) paginator: MatPaginator;\r\n\r\n /**\r\n * Provides the table sort capabilities\r\n */\r\n @ViewChild(MatSort, {static:true}) sort: MatSort;\r\n\r\n /**\r\n * List of table columns to be displayed\r\n */\r\n displayedColumns;\r\n\r\n /**\r\n * Table data source\r\n */\r\n dataSource;\r\n\r\n /**\r\n * Provides selection options for the table\r\n */\r\n selection;\r\n\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(\r\n protected ref: ChangeDetectorRef,\r\n public magicService: MagicServices,\r\n ) {\r\n\r\n super(ref, magicService);\r\n\r\n this.displayedColumns = [];\r\n this.dataSource = new MatTableDataSource < Element > (this.task.Records.list);\r\n this.selection = new SelectionModel < Element > (false, []);\r\n }\r\n\r\n /**\r\n * Initializer\r\n */\r\n ngOnInit() {\r\n super.ngOnInit();\r\n (this.magicService.tableService as MgMatTableService).connect(this.dataSource, this.paginator, this.selection);\r\n }\r\n\r\n /**\r\n * AfterContentChecked implementation\r\n */\r\n ngAfterContentChecked() {\r\n if (!isNullOrUndefined(this.paginator) && !isNullOrUndefined(this.paginator.pageSize) &&\r\n this.paginator.pageSize != this.task.oldPageSize) {\r\n (this.magicService.tableService as MgMatTableService).handleResize(this.paginator.pageIndex, 0, this.paginator.pageSize);\r\n this.task.oldPageSize = this.paginator.pageSize;\r\n }\r\n }\r\n}\r\n","<div\n novalidate\n [formGroup]=\"formGroup\"\n>\n <mat-form-field>\n <input\n #comboinput\n matInput\n formControlName=\"combo_fc\"\n [matAutocomplete]=\"Editable_Combo\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholder\"\n >\n<!-- <mat-icon matSuffix>arrow_drop_down</mat-icon>-->\n <mat-autocomplete\n #Editable_Combo=\"matAutocomplete\"\n requireSelection=\"true\"\n autoActiveFirstOption=\"true\"\n (optionSelected)=\"onOptionSelected($event)\"\n (closed)=\"onClosed()\"\n (opened)=\"onOpened()\"\n >\n <mat-option\n *ngFor=\"let o of getFilteredListForChoiceControl();\"\n [value]=\"o.displayValue\"\n >\n {{o.displayValue}}\n </mat-option>\n </mat-autocomplete>\n</mat-form-field>\n</div>\n","import {Component, ElementRef, forwardRef, Input, OnInit, ViewChild} from '@angular/core';\nimport {ControlValueAccessor, FormControl, FormGroup, NG_VALUE_ACCESSOR} from '@angular/forms';\nimport {\n AccessorMagicService,\n MagicDirective,\n MagicServices,\n TaskMagicService\n} from \"@magic-xpa/angular\";\n\nimport {MatAutocompleteSelectedEvent} from \"@angular/material/autocomplete\";\nimport {getGuiEventObj, IGuiEvent} from \"@magic-xpa/engine\";\n\n@Component({\n selector: 'editable-combo',\n standalone: false,\n templateUrl: './editable-combo.component.html',\n providers: [\n {\n provide: NG_VALUE_ACCESSOR,\n useExisting: forwardRef(() => EditableComboComponent),\n multi: true\n }\n ]\n})\nexport class EditableComboComponent implements ControlValueAccessor, OnInit {\n /**\n * @ignore\n */\n controlId: string = \"\";\n rowId: string = \"0\";\n @ViewChild('comboinput') combo_input!: ElementRef;\n\n /**\n * @ignore\n */\n @Input('magic') set magic(val: string) {\n this.controlId = val;\n };\n\n @Input('rowId') set rowId1(val: string) {\n this.rowId = val;\n };\n\n @Input() placeholder: string = '';\n\n formGroup: FormGroup = new FormGroup({});\n\n // These are the functions required by ControlValueAccessor\n private onChange: (value: number) => void = () => {};\n private onTouched: () => void = () => {};\n\n constructor(public magicServices: MagicServices) {\n }\n\n /**\n * Returns the Magic accessor service\n * @returns\n */\n get mg(): AccessorMagicService {\n return this.magicServices.mgAccessorService;\n }\n\n /**\n * Returns the Magic task service\n * @returns\n */\n get task(): TaskMagicService {\n return this.magicServices.task;\n }\n\n ngOnInit(): void {\n this.formGroup.addControl(\"combo_fc\", new FormControl());\n }\n\n // Write value method will be called when FormControl value is updated\n writeValue(value: number): void {\n if (typeof value == 'number' && value >= 0) {\n const options = this.mg.getItemListValues(this.controlId, this.rowId);\n const matchingOption = options.find(option => option.index === value);\n\n if (matchingOption != undefined)\n this.formGroup.get(\"combo_fc\")?.setValue(matchingOption.displayValue);\n else\n this.formGroup.get(\"combo_fc\")?.setValue(\"\");\n }\n else\n this.formGroup.get(\"combo_fc\")?.setValue(\"\");\n }\n\n // Register onChange function to be triggered when the input value changes\n registerOnChange(fn: (value: number) => void): void {\n this.onChange = fn;\n }\n\n // Register onTouched function to be triggered when the input is touched\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n // Optional: Handle the touch event when the input is blurred\n onBlur(): void {\n this.onTouched();\n }\n\n onOptionSelected(event: MatAutocompleteSelectedEvent): void {\n const selectedVal = event.option.value;\n\n const options = this.mg.getItemListValues(this.controlId, this.rowId);\n const matchingOption = options.find(option => option.displayValue === selectedVal);\n let selectedIndex = -1;\n\n if (matchingOption != undefined)\n selectedIndex = matchingOption.index;\n\n this.onChange(selectedIndex);\n\n let guiEvent: IGuiEvent = getGuiEventObj('selectionchanged', this.controlId, +this.rowId);\n guiEvent.Value = selectedIndex.toString();\n this.task.insertEvent(guiEvent);\n }\n\n onOpened() {\n MagicDirective.noOfAutoCompleteBoxesOpened++;\n }\n\n onClosed() {\n this.writeValue(this.mg.getValue(this.controlId, this.rowId));\n MagicDirective.noOfAutoCompleteBoxesOpened--;\n }\n\n getFilteredListForChoiceControl(): Array<{index: number, displayValue: string}> {\n const elem = this.combo_input;\n let value = elem ? elem.nativeElement.value : \"\";\n\n let items = this.mg.getItemListValues(this.controlId, this.rowId);\n if (value !== null && value !== \"\" && items instanceof Array) {\n value = value.toLowerCase();\n return items.filter(option => option.displayValue.toLowerCase().includes(value));\n }\n else\n return items;\n }\n}\n","import { Directive, HostListener } from \"@angular/core\";\r\nimport { MagicDirective } from \"@magic-xpa/angular\";\r\n\r\n\r\n/**\r\n * Directive for material-design listboxes not on material-design table\r\n */\r\n@Directive({\n selector: `mat-selection-list[magic]`,\n standalone: false\n})\r\nexport class MatListboxDirective{\r\n\r\n constructor(protected magicDirective: MagicDirective) {\r\n }\r\n\r\n /**\r\n * Handles the \"selectionChange\" event - pass it to the \"change\" event handler\r\n * @param $event\r\n */\r\n @HostListener('selectionChange', ['$event'])\r\n onChange($event) {\r\n this.magicDirective.task.onListBoxSelectionChanged($event, this.magicDirective.id);\r\n }\r\n}\r\n","import { Directive, HostListener } from '@angular/core';\r\nimport { MagicDirective } from '@magic-xpa/angular';\r\n\r\n/**\r\n * Directive for material-design autocomplete not on material-design table\r\n */\r\n@Directive({\n selector: 'mat-autocomplete[magic]',\n standalone: false\n})\r\nexport class MatMagicAutocompleteDirective {\r\n\r\n @HostListener('opened', ['$event'])\r\n onOpenedChanged($event) {\r\n MagicDirective.noOfAutoCompleteBoxesOpened++;\r\n }\r\n\r\n @HostListener('closed', ['$event'])\r\n onClosedChanged($event) {\r\n MagicDirective.noOfAutoCompleteBoxesOpened--;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatCheckboxDirective } from './directives/magic/form-controls/mat-magic-checkbox.directive';\r\nimport { MatComboboxDirective } from './directives/magic/form-controls/mat-magic-combobox.directive';\r\nimport { BaseMatTableMagicComponent } from './components/base-mat-table-magic.component';\r\nimport { EditableComboComponent } from './components/editable-combo-component';\r\nimport { MatListboxDirective } from './directives/magic/form-controls/mat-magic-listbox.directive';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatNativeDateModule } from '@angular/material/core';\r\nimport { MagicModule } from '@magic-xpa/angular';\r\nimport { MatMagicAutocompleteDirective } from './directives/magic/form-controls/mat-magic-autocomplete.directive';\r\nimport { MatAutocomplete, MatAutocompleteTrigger } from \"@angular/material/autocomplete\";\r\n\r\n\r\n/**\r\n * @ignore\r\n */\r\nexport const materialModules = [\r\n MatTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n MatButtonModule,\r\n MatListModule,\r\n MatCheckboxModule,\r\n MatTabsModule,\r\n MatSelectModule,\r\n MatDatepickerModule,\r\n MatNativeDateModule,\r\n MatAutocompleteTrigger,\r\n MatAutocomplete\r\n];\r\n\r\n/**\r\n * @ignore\r\n */\r\n@NgModule({\r\n declarations: [\r\n MatCheckboxDirective,\r\n MatComboboxDirective,\r\n MatListboxDirective,\r\n MatMagicAutocompleteDirective,\r\n BaseMatTableMagicComponent,\r\n EditableComboComponent\r\n ],\r\n exports: [\r\n MatCheckboxDirective,\r\n MatComboboxDirective,\r\n MatListboxDirective,\r\n MatMagicAutocompleteDirective,\r\n BaseMatTableMagicComponent,\r\n EditableComboComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ...materialModules,\r\n MagicModule,\r\n ReactiveFormsModule,\r\n ]\r\n})\r\nexport class MagicAngularMaterialModule {\r\n\r\n}\r\n","/**\n * @file Automatically generated by barrelsby.\n */\n\nexport * from \"./src/angular-material.module\";\nexport * from \"./src/components/base-mat-table-magic.component\";\nexport * from \"./src/components/editable-combo-component\";\nexport * from \"./src/directives/magic/form-controls/mat-magic-autocomplete.directive\";\nexport * from \"./src/directives/magic/form-controls/mat-magic-checkbox.directive\";\nexport * from \"./src/directives/magic/form-controls/mat-magic-combobox.directive\";\nexport * from \"./src/directives/magic/form-controls/mat-magic-listbox.directive\";\nexport * from \"./src/services/mat.magic.providers\";\nexport * from \"./src/services/mattable.magic.service\";\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"magic-xpa-angular-material-core.mjs","sources":["../../../../projects/angular-material-core/src/directives/magic/form-controls/mat-magic-checkbox.directive.ts","../../../../projects/angular-material-core/src/directives/magic/form-controls/mat-magic-combobox.directive.ts","../../../../projects/angular-material-core/src/services/mattable.magic.service.ts","../../../../projects/angular-material-core/src/services/mat.magic.providers.ts","../../../../projects/angular-material-core/src/components/base-mat-table-magic.component.ts","../../../../projects/angular-material-core/src/components/editable-combo.component.html","../../../../projects/angular-material-core/src/components/editable-combo-component.ts","../../../../projects/angular-material-core/src/directives/magic/form-controls/mat-magic-listbox.directive.ts","../../../../projects/angular-material-core/src/directives/magic/form-controls/mat-magic-autocomplete.directive.ts","../../../../projects/angular-material-core/src/angular-material.module.ts","../../../../projects/angular-material-core/index.ts","../../../../projects/angular-material-core/magic-xpa-angular-material-core.ts"],"sourcesContent":["import {Directive, ElementRef, HostListener, Input} from \"@angular/core\";\r\nimport {MagicDirective, TaskMagicService} from \"@magic-xpa/angular\";\r\nimport {filter} from \"rxjs/operators\";\r\nimport {CommandType, GuiCommand, HtmlProperties} from \"@magic-xpa/gui\";\r\nimport {MatCheckbox} from \"@angular/material/checkbox\";\r\nimport {getGuiEventObj, IGuiEvent} from \"@magic-xpa/engine\";\r\n\r\n\r\n/**\r\n * Directive for material-design checkboxes not on material-design table\r\n */\r\n@Directive({\n selector: `\r\n mat-checkbox[magic]:not([noFormControl])\r\n `,\n standalone: false\n})\r\nexport class MatCheckboxDirective {\r\n @Input() threeState: boolean = false;\r\n private subscribeRefreshDom: any = null;\r\n private indeterminate : boolean = false;\r\n /**\r\n * @ignore\r\n */\r\n constructor( protected magicDirective: MagicDirective,\r\n private matCheckbox: MatCheckbox,\r\n protected task: TaskMagicService,\r\n protected element: ElementRef) {\r\n }\r\n /**\r\n * Handles the Checkbox 'change' event - pass it to the Magic engine\r\n */\r\n @HostListener('change', ['$event'])\r\n onChange($event: Event) {\r\n if(this.threeState) {\r\n this.handleThreeState();\r\n }\r\n else {\r\n this.magicDirective.task.onCheckChanged($event, this.magicDirective.id, +this.magicDirective.rowId);\r\n }\r\n }\r\n ngOnInit() {\r\n if(this.threeState){\r\n let guiEvent: IGuiEvent = getGuiEventObj(\"setAsThreeState\",this.magicDirective.id, +this.magicDirective.rowId);\r\n this.task.insertEvent(guiEvent);\r\n this.matCheckbox.indeterminate = this.indeterminate = this.task.getProperty(this.magicDirective.id, HtmlProperties.CheckBoxIndeterminate, this.magicDirective.rowId);\r\n this.regUpdatesUI();\r\n }\r\n }\r\n private regUpdatesUI() {\r\n this.subscribeRefreshDom = this.task\r\n .refreshDom.pipe(filter(c => this.magicDirective.IsSameElement(c)))\r\n .subscribe(a => {\r\n let command: GuiCommand = a;\r\n try {\r\n this.handleCommand(command);\r\n } catch (ex) {\r\n console.dir(ex);\r\n }\r\n }\r\n );\r\n }\r\n handleCommand(command: GuiCommand){\r\n if (command.CommandType == CommandType.SET_PROPERTY &&\r\n command.Operation == HtmlProperties.CheckBoxIndeterminate) {\r\n this.indeterminate = this.matCheckbox.indeterminate = command.obj1;\r\n }\r\n }\r\n private handleThreeState() {\r\n let value : string = '';\r\n let prevCheckedValue = this.task.getValue(this.magicDirective.id, this.magicDirective.rowId);\r\n if(this.indeterminate) {\r\n this.indeterminate = this.matCheckbox.indeterminate = false;\r\n this.matCheckbox.checked = false;\r\n value = 'unchecked';\r\n }\r\n else if(prevCheckedValue) {\r\n this.indeterminate = this.matCheckbox.indeterminate = true;\r\n this.matCheckbox.checked = false;\r\n value = 'indeterminate';\r\n }\r\n else if(!prevCheckedValue) {\r\n this.indeterminate = this.matCheckbox.indeterminate = false;\r\n this.matCheckbox.checked = true;\r\n value = 'checked';\r\n }\r\n // @ts-ignore\r\n this.magicDirective.task.onCheckChanged(value, this.magicDirective.id, +this.magicDirective.rowId);\r\n }\r\n /**\r\n * Cleanup\r\n */\r\n ngOnDestroy(): void {\r\n if(this.subscribeRefreshDom !== null)\r\n this.subscribeRefreshDom.unsubscribe();\r\n }\r\n}\r\n","import { Directive, HostListener } from \"@angular/core\";\r\nimport {ComboboxMagicDirective, MagicDirective} from \"@magic-xpa/angular\";\r\n\r\n\r\n/**\r\n * Directive for material-design comboboxes not on material-design table\r\n */\r\n@Directive({\n selector: `mat-select[magic]`,\n standalone: false\n})\r\nexport class MatComboboxDirective extends ComboboxMagicDirective {\r\n\r\n /**\r\n * Handles the \"selectionChange\" event - pass it to the \"change\" event handler\r\n * @param $event\r\n */\r\n @HostListener('selectionChange', ['$event'])\r\n onChange($event) {\r\n super.onChange($event);\r\n }\r\n\r\n @HostListener('openedChange', ['$event'])\r\n onOpenedChanged($event) {\r\n MagicDirective.opened = $event;\r\n }\r\n\r\n /**\r\n * For mat-select do nothing\r\n */\r\n onComboboxItemsListChanged(): void {\r\n }\r\n}\r\n","\nimport { Injectable } from '@angular/core';\nimport { SelectionModel } from \"@angular/cdk/collections\";\n\nimport { TaskMagicService, ComponentListMagicService, ControlsMetadata } from \"@magic-xpa/angular\";\nimport {IGuiEvent, getGuiEventObj} from \"@magic-xpa/engine\";\nimport { TableMagicService } from \"@magic-xpa/angular\";\nimport {isNullOrUndefined} from \"@magic-xpa/mscorelib\";\nimport { MatTableDataSource } from '@angular/material/table';\nimport { MatPaginator } from '@angular/material/paginator';\n\n\n/**\n * Extends the Magic table service to supply functionality for Material Design tables\n */\n@Injectable()\nexport class MgMatTableService extends TableMagicService {\n /**\n * Table data source\n */\n dataSource: MatTableDataSource<Element>;\n\n /**\n * @ignore\n */\n get DataSource(): MatTableDataSource<Element> {\n return this.dataSource;\n }\n\n /**\n * @ignore\n */\n set DataSource(dataSource: MatTableDataSource<Element>) {\n this.dataSource = dataSource;\n }\n\n /**\n * Provides selection options for the table\n */\n selection: SelectionModel<Element>;\n\n /**\n * @ignore\n */\n get Selection(): SelectionModel<Element> {\n return this.selection;\n }\n\n /**\n * @ignore\n */\n set Selection(selection: SelectionModel<Element>) {\n this.selection = selection;\n }\n\n /**\n * Paginator to enable changing pages in the table\n */\n paginator: MatPaginator;\n\n /**\n * @ignore\n */\n get Paginator(): MatPaginator {\n return this.paginator;\n }\n\n /**\n * @ignore\n */\n set Paginator(paginator: MatPaginator) {\n this.paginator = paginator;\n }\n\n /**\n * @ignore\n */\n constructor(protected componentList: ComponentListMagicService, protected task: TaskMagicService ) {\n super(componentList, task);\n }\n\n /**\n * Connects the service to the elements of the table component\n * @param dataSource Table data source\n * @param paginator Table paginator\n * @param selection table SelectionModel\n */\n connect(dataSource: MatTableDataSource<Element> , paginator: MatPaginator, selection: SelectionModel<Element>) {\n this.dataSource = dataSource;\n this.paginator = paginator;\n this.selection = selection;\n }\n\n /**\n * @ignore\n */\n refreshDataSource() {\n if (!isNullOrUndefined(this.paginator))\n this.dataSource.paginator = this.paginator;\n\n this.dataSource.data = (this.task.mgAccessorService.isDataviewEmpty() ? [] : this.task.Records.list);\n }\n\n /**\n * returns the page size of the table\n * @returns\n */\n getPageSize(): number {\n if (isNullOrUndefined(this.paginator))\n return 10;\n return this.paginator.pageSize;\n }\n\n /**\n * Selects a table row\n * @param guiRowid Id of row to be selected\n */\n selectRow(guiRowid: string): void {\n super.selectRow(guiRowid);\n this.selection.select(this.task.Records.list[guiRowid]);\n this.refreshDataSource();\n }\n\n /**\n * Displays the requested table page\n * @param pageId Id of page to be selected\n */\n selectPage(pageId: number): void {\n if (!isNullOrUndefined(this.paginator))\n this.paginator.pageIndex = pageId;\n\n this.refreshDataSource();\n }\n\n /**\n * Returns the currently seleted row\n * @returns\n */\n selectedRow(): any {\n return this.selection.selected[0];\n }\n\n /**\n * Handle the paginator's \"page\" event\n * @param e The event received from the UI\n * @param changeSelectedRow The flag true or false to indicate change the row\n */\n mgOnPaginateChange(e, changeSelectedRow?: boolean)\n {\n if (this.task.oldPageSize != e.pageSize) {\n this.handleResize(e.pageIndex, e.previousPageIndex, e.pageSize);\n this.task.oldPageSize = e.pageSize;\n }\n else {\n if (changeSelectedRow)\n {\n let evt: string;\n if (e.pageIndex > e.previousPageIndex) {\n evt = (e.pageIndex - e.previousPageIndex === 1) ? \"next-page\" : \"end-table\";\n } else {\n evt = (e.previousPageIndex - e.pageIndex === 1) ? \"previous-page\" : \"begin-table\";\n }\n\n let guiEvent: IGuiEvent = getGuiEventObj(\"navigateInTable\", \"magicRow\",0);\n guiEvent.Value = evt;\n this.task.insertEvent(guiEvent);\n }\n else\n this.getRowsIfNeeded(e.pageIndex, e.previousPageIndex, e.pageSize);\n }\n }\n\n /**\n * Handle resize and set table top index.\n * @param pageIndex : New page index.\n * @param prevPageIndex : Prev page index\n * @param pageSize : PageSize\n */\n handleResize(pageIndex: number, prevPageIndex: number, pageSize: number): void {\n let requiredGuiRowId = pageIndex * pageSize;\n this.task.resize(pageSize, requiredGuiRowId);\n }\n\n /**\n * Execute getRows to fetch required chunk of records.\n * @param pageIndex : New page index.\n * @param prevPageIndex : Prev page index\n * @param pageSize : PageSize\n */\n getRowsIfNeeded(pageIndex: number, prevPageIndex: number, pageSize: number): void {\n let guiEvent: IGuiEvent = getGuiEventObj(\"getRows\", \"\",0);\n guiEvent.Line = pageIndex * pageSize;\n this.task.insertEvent(guiEvent);\n this.setTableTopIndex(this.task.getDvRowId(pageSize * pageIndex));\n }\n\n /**\n * Handles the \"matSortChange\" event\n * @param e The event received from the UI\n */\n sortData(e) {\n let direction: number = 0;\n if (e.direction === 'asc')\n direction = 0;\n else if (e.direction === 'desc')\n direction = 1;\n\n let guiEvent: IGuiEvent = getGuiEventObj(\"columnSort\", e.active, direction);\n this.task.insertEvent(guiEvent);\n }\n\n /**\n * Change the number of lines in a table\n * @param size New number of lines in table\n */\n updateTableSize(size: number) {\n if (size === 0) // never remove row 0 for now\n {\n size = 1;\n this.task.Records.clearFirstTableRecord(this.task.template);\n }\n\n else if (isNullOrUndefined(this.paginator))\n size = this.getPageSize();\n\n this.task.formGroups.length = size;\n this.task.Records.updateSize(size);\n this.task.setIncludesFirst(false);\n }\n\n /**\n * Handle the selection of row and if needed move to respective page.\n * @param guiRowId New number of lines in table\n */\n protected selectPageForGuiRowId(guiRowId: number): void {\n let pageToBeSelected: number = 0;\n let prevSelectedRow: ControlsMetadata = <ControlsMetadata>this.selectedRow();\n\n pageToBeSelected = Math.floor(guiRowId / this.getPageSize());\n\n // Explicitly handle selection of page when it's not raised by using pagination\n if ((isNullOrUndefined(prevSelectedRow) || (!isNullOrUndefined(this.paginator) && pageToBeSelected != this.paginator.pageIndex)))\n this.selectPage(pageToBeSelected);\n }\n\n /**\n * @ignore\n */\n setTableTopIndex(value: number) {\n this.task.Records.setGuiTopIndex(value);\n\n if (value >= 0)\n this.selectPageForGuiRowId(this.task.getGuiRowId(value, true));\n }\n\n /**\n * @ignore\n */\n getTableTopIndex():number\n {\n return this.task.Records.getGuiTopIndex();\n }\n}\n\n","\r\nimport { basicMagicProviders, TableMagicService} from \"@magic-xpa/angular\";\r\n\r\nimport { MgMatTableService } from \"./mattable.magic.service\";\r\n\r\n\r\n/**\r\n * @ignore\r\n */\r\nexport const matMagicProviders = [\r\n ...basicMagicProviders, // - created error Exported variable 'matMagicProviders' has or is using name 'MagicServices' from external module \"D:/magicxpaproject/_Trunk/Sources/Webclient/dist/angular/src/services/magic.services\" but cannot be named.\r\n { provide: TableMagicService, useClass: MgMatTableService }\r\n];\r\n\r\n","import { MagicServices, TaskBaseMagicComponent } from '@magic-xpa/angular';\r\nimport { MatSort } from '@angular/material/sort';\r\nimport { MatTableDataSource } from '@angular/material/table';\r\nimport { SelectionModel } from '@angular/cdk/collections';\r\nimport { ChangeDetectorRef, Component, ViewChild } from '@angular/core';\r\nimport { MgMatTableService } from '../services/mattable.magic.service';\r\nimport { matMagicProviders } from '../services/mat.magic.providers';\r\nimport { MatPaginator } from '@angular/material/paginator';\r\nimport { isNullOrUndefined } from '@magic-xpa/mscorelib';\r\n\r\n/**\r\n * This component is the base component for forms which has a material-design table (grid)\r\n */\r\n@Component({\n providers: matMagicProviders,\n template: '',\n standalone: false\n})\r\n export class BaseMatTableMagicComponent extends TaskBaseMagicComponent {\r\n\r\n /**\r\n * Paginator to enable changing pages in the table\r\n */\r\n @ViewChild(MatPaginator, {static:true}) paginator: MatPaginator;\r\n\r\n /**\r\n * Provides the table sort capabilities\r\n */\r\n @ViewChild(MatSort, {static:true}) sort: MatSort;\r\n\r\n /**\r\n * List of table columns to be displayed\r\n */\r\n displayedColumns;\r\n\r\n /**\r\n * Table data source\r\n */\r\n dataSource;\r\n\r\n /**\r\n * Provides selection options for the table\r\n */\r\n selection;\r\n\r\n\r\n /**\r\n * @ignore\r\n */\r\n constructor(\r\n protected ref: ChangeDetectorRef,\r\n public magicService: MagicServices,\r\n ) {\r\n\r\n super(ref, magicService);\r\n\r\n this.displayedColumns = [];\r\n this.dataSource = new MatTableDataSource < Element > (this.task.Records.list);\r\n this.selection = new SelectionModel < Element > (false, []);\r\n }\r\n\r\n /**\r\n * Initializer\r\n */\r\n ngOnInit() {\r\n super.ngOnInit();\r\n (this.magicService.tableService as MgMatTableService).connect(this.dataSource, this.paginator, this.selection);\r\n }\r\n\r\n /**\r\n * AfterContentChecked implementation\r\n */\r\n ngAfterContentChecked() {\r\n if (!isNullOrUndefined(this.paginator) && !isNullOrUndefined(this.paginator.pageSize) &&\r\n this.paginator.pageSize != this.task.oldPageSize) {\r\n (this.magicService.tableService as MgMatTableService).handleResize(this.paginator.pageIndex, 0, this.paginator.pageSize);\r\n this.task.oldPageSize = this.paginator.pageSize;\r\n }\r\n }\r\n}\r\n","<div\n novalidate\n [formGroup]=\"formGroup\"\n >\n <input\n #comboinput\n matInput\n formControlName=\"combo_fc\"\n [matAutocomplete]=\"Editable_Combo\"\n (blur)=\"onBlur()\"\n [placeholder]=\"placeholder\"\n >\n <!-- <mat-icon matSuffix>arrow_drop_down</mat-icon>-->\n <mat-autocomplete\n #Editable_Combo=\"matAutocomplete\"\n requireSelection=\"true\"\n autoActiveFirstOption=\"true\"\n (optionSelected)=\"onOptionSelected($event)\"\n (closed)=\"onClosed()\"\n (opened)=\"onOpened()\"\n >\n @for (o of getFilteredListForChoiceControl(); track o) {\n <mat-option\n [value]=\"o.displayValue\"\n >\n {{o.displayValue}}\n </mat-option>\n }\n </mat-autocomplete>\n </div>\n","import {Component, ElementRef, Input, OnInit, OnDestroy, Optional, Self, ViewChild} from '@angular/core';\nimport {ControlValueAccessor, FormControl, FormGroup, NgControl} from '@angular/forms';\nimport {\n AccessorMagicService,\n MagicDirective,\n MagicServices,\n TaskMagicService\n} from \"@magic-xpa/angular\";\n\nimport {MatAutocompleteSelectedEvent} from \"@angular/material/autocomplete\";\nimport {getGuiEventObj, IGuiEvent} from \"@magic-xpa/engine\";\n// MatFormFieldControl allows this component to act as a native Material form field control,\n// enabling support for mat-label, mat-hint, mat-error\nimport {MatFormFieldControl} from \"@angular/material/form-field\";\n// FocusMonitor tracks when the user enters or leaves the field, used to update focused state.\nimport {FocusMonitor} from \"@angular/cdk/a11y\";\n// coerceBooleanProperty converts various truthy/falsy values into a strict boolean.\nimport {coerceBooleanProperty} from \"@angular/cdk/coercion\";\n// Subject is used for stateChanges stream to notify mat-form-field when component state changes.\nimport {Subject} from \"rxjs\";\n\n@Component({\n selector: 'editable-combo',\n standalone: false,\n templateUrl: './editable-combo.component.html',\n providers: [\n // Registering this component as a MatFormFieldControl so that Angular Material's\n // mat-form-field can recognize it as a valid form control and communicate with it.\n // useExisting tells Angular to use the already created instance of this component\n // instead of creating a new one, so mat-form-field and the component share the same instance.\n {\n provide: MatFormFieldControl,\n useExisting: EditableComboComponent\n }\n ]\n})\n// Added MatFormFieldControl<number> so this component integrates with mat-form-field.\n// Added OnDestroy to clean up stateChanges stream and FocusMonitor when component is destroyed.\nexport class EditableComboComponent implements ControlValueAccessor, MatFormFieldControl<number>, OnInit, OnDestroy {\n /**\n * @ignore\n */\n controlId: string = \"\";\n rowId: string = \"0\";\n @ViewChild('comboinput') combo_input!: ElementRef;\n\n /**\n * @ignore\n */\n @Input('magic') set magic(val: string) {\n this.controlId = val;\n };\n\n @Input('rowId') set rowId1(val: string) {\n this.rowId = val;\n };\n\n @Input() placeholder: string = '';\n\n formGroup: FormGroup = new FormGroup({});\n\n // Track whether the autocomplete panel is open\n isPanelOpen = false;\n\n // These are the functions required by ControlValueAccessor\n private onChange: (value: number) => void = () => {};\n private onTouched: () => void = () => {};\n\n // Required fields for MatFormFieldControl contract.\n // These allow mat-form-field to track id, state changes, focus, and control type.\n static nextId = 0;\n id = `editable-combo-${EditableComboComponent.nextId++}`;\n stateChanges = new Subject<void>();\n focused = false;\n touched = false;\n controlType = 'editable-combo';\n value: number = -1;\n\n // Required by MatFormFieldControl. Allows developer to set required attribute on mat-form-field.\n private _required = false;\n @Input()\n get required(): boolean { return this._required; }\n set required(val: boolean | string) { this._required = coerceBooleanProperty(val); this.stateChanges.next(); }\n\n // Required by MatFormFieldControl. Keeps the internal FormControl in sync with disabled state.\n private _disabled = false;\n @Input()\n get disabled(): boolean { return this._disabled; }\n set disabled(val: boolean | string) { this._disabled = coerceBooleanProperty(val); this.stateChanges.next(); }\n\n // Checks the inner input value to determine if the field is empty.\n // mat-form-field uses this to decide whether the label should float or not.\n get empty(): boolean {\n const inputVal = this.formGroup.get('combo_fc')?.value;\n return !inputVal || inputVal === '';\n }\n\n // Controls whether mat-label floats above the field.\n // Label floats when the field is focused or has a value selected.\n get shouldLabelFloat(): boolean {\n return this.focused || !this.empty;\n }\n\n // Controls when the red error border is shown.\n // Error is shown only after the user has left the field without selecting a value.\n get errorState(): boolean {\n return this.touched && this.ngControl?.invalid === true;\n }\n\n constructor(\n public magicServices: MagicServices,\n // FocusMonitor and ElementRef are needed to track focus state on the host element.\n private fm: FocusMonitor,\n private elRef: ElementRef,\n // NgControl gives access to the form control's validation state for errorState.\n @Optional() @Self() public ngControl: NgControl\n ) {\n // Manually assign valueAccessor here instead of using NG_VALUE_ACCESSOR provider.\n // This avoids the circular dependency error (NG0200) that occurs when NgControl\n // and NG_VALUE_ACCESSOR both try to reference each other during injection.\n if (this.ngControl != null) {\n this.ngControl.valueAccessor = this;\n }\n\n // origin tells you how the element was focused, its values are: 'mouse'/'keyboard'/'touch'/'program'\n // Set touched=true on blur (while leaving the control) to avoid showing error on entering the control when control is with required.\n // otherwise, the error will be shown as soon as user enters the control.\n fm.monitor(elRef, true).subscribe(origin => {\n this.focused = origin !== null;\n if (origin === null && !this.isPanelOpen) {\n // Only mark touched if panel is closed.\n // If panel is open, user is clicking an option — onClosed() will handle touched.\n this.touched = true;\n }\n this.stateChanges.next();\n });\n }\n\n /**\n * Returns the Magic accessor service\n * @returns\n */\n get mg(): AccessorMagicService {\n return this.magicServices.mgAccessorService;\n }\n\n /**\n * Returns the Magic task service\n * @returns\n */\n get task(): TaskMagicService {\n return this.magicServices.task;\n }\n\n ngOnInit(): void {\n this.formGroup.addControl(\"combo_fc\", new FormControl());\n\n // Notify mat-form-field whenever the inner input value changes.\n // This ensures the label floats correctly as the user types or selects a value.\n this.formGroup.get('combo_fc')?.valueChanges.subscribe(() => {\n this.stateChanges.next();\n });\n }\n\n // Clean up stateChanges stream and stop focus monitoring to prevent memory leaks.\n ngOnDestroy(): void {\n this.stateChanges.complete();\n this.fm.stopMonitoring(this.elRef);\n }\n\n // Required by MatFormFieldControl. Sets aria-describedby for accessibility.\n setDescribedByIds(ids: string[]): void {}\n\n // Required by MatFormFieldControl. Focuses the inner input when the field container is clicked.\n onContainerClick(event: MouseEvent): void {\n this.combo_input?.nativeElement.focus();\n }\n\n // Write value method will be called when FormControl value is updated\n writeValue(value: number): void {\n if (typeof value == 'number' && value >= 0) {\n const options = this.mg.getItemListValues(this.controlId, this.rowId);\n const matchingOption = options.find(option => option.index === value);\n\n if (matchingOption != undefined)\n this.formGroup.get(\"combo_fc\")?.setValue(matchingOption.displayValue);\n else\n this.formGroup.get(\"combo_fc\")?.setValue(\"\");\n }\n else\n this.formGroup.get(\"combo_fc\")?.setValue(\"\");\n\n // Notify mat-form-field that the value has changed so it can update label and state.\n this.stateChanges.next();\n }\n\n // Register onChange function to be triggered when the input value changes\n registerOnChange(fn: (value: number) => void): void {\n this.onChange = fn;\n }\n\n // Register onTouched function to be triggered when the input is touched\n registerOnTouched(fn: () => void): void {\n this.onTouched = fn;\n }\n\n // Optional: Handle the touch event when the input is blurred\n onBlur(): void {\n this.onTouched();\n this.stateChanges.next();\n }\n\n // Enables or disables the form control based on the provided state\n setDisabledState(isDisabled: boolean): void {\n const formControl = this.formGroup.get(\"combo_fc\");\n if (formControl) {\n if (isDisabled)\n formControl.disable();\n else\n formControl.enable();\n }\n // Notify mat-form-field so it updates the visual disabled state.\n this.stateChanges.next();\n }\n\n onOptionSelected(event: MatAutocompleteSelectedEvent): void {\n const selectedVal = event.option.value;\n\n const options = this.mg.getItemListValues(this.controlId, this.rowId);\n const matchingOption = options.find(option => option.displayValue === selectedVal);\n let selectedIndex = -1;\n\n if (matchingOption != undefined)\n selectedIndex = matchingOption.index;\n\n this.onChange(selectedIndex);\n\n let guiEvent: IGuiEvent = getGuiEventObj('selectionchanged', this.controlId, +this.rowId);\n guiEvent.Value = selectedIndex.toString();\n this.task.insertEvent(guiEvent);\n }\n\n onOpened() {\n this.isPanelOpen = true;\n MagicDirective.noOfAutoCompleteBoxesOpened++;\n }\n\n onClosed() {\n this.isPanelOpen = false;\n this.writeValue(this.mg.getValue(this.controlId, this.rowId));\n MagicDirective.noOfAutoCompleteBoxesOpened--;\n\n // Mark touched here instead: panel is closed means user truly left the field\n this.touched = true;\n this.stateChanges.next();\n }\n\n getFilteredListForChoiceControl(): Array<{index: number, displayValue: string}> {\n const elem = this.combo_input;\n let value = elem ? elem.nativeElement.value : \"\";\n\n let items = this.mg.getItemListValues(this.controlId, this.rowId);\n if (value !== null && value !== \"\" && items instanceof Array) {\n value = value.toLowerCase();\n return items.filter(option => option.displayValue.toLowerCase().includes(value));\n }\n else\n return items;\n }\n}\n","import { Directive, HostListener } from \"@angular/core\";\r\nimport { MagicDirective } from \"@magic-xpa/angular\";\r\n\r\n\r\n/**\r\n * Directive for material-design listboxes not on material-design table\r\n */\r\n@Directive({\n selector: `mat-selection-list[magic]`,\n standalone: false\n})\r\nexport class MatListboxDirective{\r\n\r\n constructor(protected magicDirective: MagicDirective) {\r\n }\r\n\r\n /**\r\n * Handles the \"selectionChange\" event - pass it to the \"change\" event handler\r\n * @param $event\r\n */\r\n @HostListener('selectionChange', ['$event'])\r\n onChange($event) {\r\n this.magicDirective.task.onListBoxSelectionChanged($event, this.magicDirective.id);\r\n }\r\n}\r\n","import { Directive, HostListener } from '@angular/core';\r\nimport { MagicDirective } from '@magic-xpa/angular';\r\n\r\n/**\r\n * Directive for material-design autocomplete not on material-design table\r\n */\r\n@Directive({\n selector: 'mat-autocomplete[magic]',\n standalone: false\n})\r\nexport class MatMagicAutocompleteDirective {\r\n\r\n @HostListener('opened', ['$event'])\r\n onOpenedChanged($event) {\r\n MagicDirective.noOfAutoCompleteBoxesOpened++;\r\n }\r\n\r\n @HostListener('closed', ['$event'])\r\n onClosedChanged($event) {\r\n MagicDirective.noOfAutoCompleteBoxesOpened--;\r\n }\r\n}\r\n","import { NgModule } from '@angular/core';\r\nimport { CommonModule } from '@angular/common';\r\n\r\nimport { FormsModule, ReactiveFormsModule } from '@angular/forms';\r\nimport { MatCheckboxDirective } from './directives/magic/form-controls/mat-magic-checkbox.directive';\r\nimport { MatComboboxDirective } from './directives/magic/form-controls/mat-magic-combobox.directive';\r\nimport { BaseMatTableMagicComponent } from './components/base-mat-table-magic.component';\r\nimport { EditableComboComponent } from './components/editable-combo-component';\r\nimport { MatListboxDirective } from './directives/magic/form-controls/mat-magic-listbox.directive';\r\nimport { MatTableModule } from '@angular/material/table';\r\nimport { MatPaginatorModule } from '@angular/material/paginator';\r\nimport { MatInputModule } from '@angular/material/input';\r\nimport { MatButtonModule } from '@angular/material/button';\r\nimport { MatListModule } from '@angular/material/list';\r\nimport { MatCheckboxModule } from '@angular/material/checkbox';\r\nimport { MatTabsModule } from '@angular/material/tabs';\r\nimport { MatSelectModule } from '@angular/material/select';\r\nimport { MatDatepickerModule } from '@angular/material/datepicker';\r\nimport { MatNativeDateModule } from '@angular/material/core';\r\nimport { MagicModule } from '@magic-xpa/angular';\r\nimport { MatMagicAutocompleteDirective } from './directives/magic/form-controls/mat-magic-autocomplete.directive';\r\nimport { MatAutocomplete, MatAutocompleteTrigger } from \"@angular/material/autocomplete\";\r\n\r\n\r\n/**\r\n * @ignore\r\n */\r\nexport const materialModules = [\r\n MatTableModule,\r\n MatPaginatorModule,\r\n MatInputModule,\r\n MatButtonModule,\r\n MatListModule,\r\n MatCheckboxModule,\r\n MatTabsModule,\r\n MatSelectModule,\r\n MatDatepickerModule,\r\n MatNativeDateModule,\r\n MatAutocompleteTrigger,\r\n MatAutocomplete\r\n];\r\n\r\n/**\r\n * @ignore\r\n */\r\n@NgModule({\r\n declarations: [\r\n MatCheckboxDirective,\r\n MatComboboxDirective,\r\n MatListboxDirective,\r\n MatMagicAutocompleteDirective,\r\n BaseMatTableMagicComponent,\r\n EditableComboComponent\r\n ],\r\n exports: [\r\n MatCheckboxDirective,\r\n MatComboboxDirective,\r\n MatListboxDirective,\r\n MatMagicAutocompleteDirective,\r\n BaseMatTableMagicComponent,\r\n EditableComboComponent\r\n ],\r\n imports: [\r\n CommonModule,\r\n FormsModule,\r\n ...materialModules,\r\n MagicModule,\r\n ReactiveFormsModule,\r\n ]\r\n})\r\nexport class MagicAngularMaterialModule {\r\n\r\n}\r\n","/**\n * @file Automatically generated by barrelsby.\n */\n\nexport * from \"./src/angular-material.module\";\nexport * from \"./src/components/base-mat-table-magic.component\";\nexport * from \"./src/components/editable-combo-component\";\nexport * from \"./src/directives/magic/form-controls/mat-magic-autocomplete.directive\";\nexport * from \"./src/directives/magic/form-controls/mat-magic-checkbox.directive\";\nexport * from \"./src/directives/magic/form-controls/mat-magic-combobox.directive\";\nexport * from \"./src/directives/magic/form-controls/mat-magic-listbox.directive\";\nexport * from \"./src/services/mat.magic.providers\";\nexport * from \"./src/services/mattable.magic.service\";\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":["i2"],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,22 +1,22 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@magic-xpa/angular-material-core",
|
|
3
|
-
"version": "4.1300.0-dev4130.
|
|
3
|
+
"version": "4.1300.0-dev4130.200",
|
|
4
4
|
"license": "SEE LICENSE IN EULA.pdf",
|
|
5
5
|
"peerDependencies": {
|
|
6
|
-
"@angular/core": "^
|
|
7
|
-
"@angular/common": "^
|
|
8
|
-
"@angular/forms": "^
|
|
9
|
-
"@angular/material": "^
|
|
10
|
-
"@magic-xpa/angular": "4.1300.0-dev4130.
|
|
6
|
+
"@angular/core": "^21.1.4",
|
|
7
|
+
"@angular/common": "^21.1.4",
|
|
8
|
+
"@angular/forms": "^21.1.4",
|
|
9
|
+
"@angular/material": "^21.1.4",
|
|
10
|
+
"@magic-xpa/angular": "4.1300.0-dev4130.200"
|
|
11
11
|
},
|
|
12
12
|
"module": "fesm2022/magic-xpa-angular-material-core.mjs",
|
|
13
|
-
"typings": "
|
|
13
|
+
"typings": "types/magic-xpa-angular-material-core.d.ts",
|
|
14
14
|
"exports": {
|
|
15
15
|
"./package.json": {
|
|
16
16
|
"default": "./package.json"
|
|
17
17
|
},
|
|
18
18
|
".": {
|
|
19
|
-
"types": "./
|
|
19
|
+
"types": "./types/magic-xpa-angular-material-core.d.ts",
|
|
20
20
|
"default": "./fesm2022/magic-xpa-angular-material-core.mjs"
|
|
21
21
|
}
|
|
22
22
|
},
|
|
@@ -25,6 +25,6 @@
|
|
|
25
25
|
"tslib": "^2.3.0"
|
|
26
26
|
},
|
|
27
27
|
"scripts": {
|
|
28
|
-
"prepublishOnly": "node --eval \"console.error('ERROR: Trying to publish a package that has been compiled
|
|
28
|
+
"prepublishOnly": "node --eval \"console.error('ERROR: Trying to publish a package that has been compiled in full compilation mode. This is not allowed.\\nPlease delete and rebuild the package with partial compilation mode, before attempting to publish.\\n')\" && exit 1"
|
|
29
29
|
}
|
|
30
30
|
}
|