ngx-tethys 19.1.2 → 19.1.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/CHANGELOG.md CHANGED
@@ -2,6 +2,25 @@
2
2
 
3
3
  All notable changes to this project will be documented in this file. See [commit-and-tag-version](https://github.com/absolute-version/commit-and-tag-version) for commit guidelines.
4
4
 
5
+ ## [19.1.4](https://github.com/atinc/ngx-tethys/compare/19.1.3...19.1.4) (2025-09-23)
6
+
7
+
8
+ ### Bug Fixes
9
+
10
+ * **date-picker:** fix date-pick cellRender date select error #TINFR-2892 ([#3564](https://github.com/atinc/ngx-tethys/issues/3564)) ([cc1c451](https://github.com/atinc/ngx-tethys/commit/cc1c4514a3313a7bd2450b78a359cf24dccfbde1)), closes [#TINFR-2892](https://github.com/atinc/ngx-tethys/issues/TINFR-2892)
11
+
12
+
13
+
14
+ ## [19.1.3](https://github.com/atinc/ngx-tethys/compare/19.1.2...19.1.3) (2025-09-17)
15
+
16
+
17
+ ### Bug Fixes
18
+
19
+ * **date-picker:** #TINFR-2875 after date-picker popup closed, clicking again cannot open it. ([acd82c1](https://github.com/atinc/ngx-tethys/commit/acd82c119ad3a631da4325f38e86b6af9c252005)), closes [#TINFR-2875](https://github.com/atinc/ngx-tethys/issues/TINFR-2875)
20
+ * **drop-down:** set the default value for thyMenuInsideClosable to undefined ([#3559](https://github.com/atinc/ngx-tethys/issues/3559)) ([ed07891](https://github.com/atinc/ngx-tethys/commit/ed07891bb1918983ffb476e1c0e2d77b8829d9df))
21
+
22
+
23
+
5
24
  ## [19.1.2](https://github.com/atinc/ngx-tethys/compare/19.1.1...19.1.2) (2025-09-11)
6
25
 
7
26
 
@@ -12,6 +12,7 @@ export declare class DateTableCell {
12
12
  isNonEmptyString: (v: any) => boolean;
13
13
  readonly functionRenderResult: import("@angular/core").Signal<boolean>;
14
14
  cellRender: import("@angular/core").Signal<string | ((date: Date) => import("@angular/platform-browser").SafeHtml | undefined) | import("@angular/core").TemplateRef<Date>>;
15
+ cellClick(event: Event): void;
15
16
  static ɵfac: i0.ɵɵFactoryDeclaration<DateTableCell, never>;
16
17
  static ɵcmp: i0.ɵɵComponentDeclaration<DateTableCell, "[date-table-cell]", ["dateTableCell"], { "prefixCls": { "alias": "prefixCls"; "required": false; "isSignal": true; }; "cell": { "alias": "cell"; "required": false; "isSignal": true; }; }, {}, never, never, true, never>;
17
18
  }
@@ -1197,12 +1197,16 @@ class DateTableCell {
1197
1197
  return this.cell()?.dateCellRender || this.datePickerConfigService.config?.dateCellRender;
1198
1198
  });
1199
1199
  }
1200
+ cellClick(event) {
1201
+ event.stopPropagation();
1202
+ this.cell().onClick();
1203
+ }
1200
1204
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: DateTableCell, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
1201
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.8", type: DateTableCell, isStandalone: true, selector: "[date-table-cell]", inputs: { prefixCls: { classPropertyName: "prefixCls", publicName: "prefixCls", isSignal: true, isRequired: false, transformFunction: null }, cell: { classPropertyName: "cell", publicName: "cell", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["dateTableCell"], ngImport: i0, template: "@let prefixClass = prefixCls();\n@let dateCell = cell();\n@let dateCellRender = cellRender();\n\n@switch (prefixClass) {\n @case ('thy-calendar') {\n @switch (true) {\n @case (isTemplateRef(dateCellRender)) {\n <ng-container *ngTemplateOutlet=\"dateCellRender; context: { $implicit: dateCell.value }\"></ng-container>\n }\n @case (isNonEmptyString(dateCellRender)) {\n <span [innerHTML]=\"dateCellRender\"></span>\n }\n @case (functionRenderResult()) {\n <span [innerHTML]=\"$any(dateCellRender)(dateCell.value)\"></span>\n }\n @default {\n <div class=\"{{ prefixClass }}-date\" [attr.aria-selected]=\"dateCell.isSelected\" [attr.aria-disabled]=\"dateCell.isDisabled\">\n {{ dateCell.content }}\n </div>\n }\n }\n }\n @case ('thy-calendar-full') {\n <div\n tabindex=\"0\"\n class=\"{{ prefixClass }}-date thy-calendar-full-cell-inner\"\n [class.thy-calendar-full-calendar-date-today]=\"dateCell.isToday\">\n @if (dateCell.fullCellRender) {\n <ng-container *ngTemplateOutlet=\"$any(dateCell.fullCellRender); context: { $implicit: dateCell.value }\"> </ng-container>\n } @else {\n <div class=\"{{ prefixClass }}-date-value\">\n <span class=\"{{ prefixClass }}-date-value-today-text\">\n <span class=\"{{ prefixClass }}-date-value-text\">{{ dateCell.content }}</span>\n </span>\n </div>\n <div class=\"{{ prefixClass }}-date-content\">\n <ng-container *ngTemplateOutlet=\"$any(dateCellRender); context: { $implicit: dateCell.value }\"> </ng-container>\n </div>\n }\n </div>\n }\n}\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
1205
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.8", type: DateTableCell, isStandalone: true, selector: "[date-table-cell]", inputs: { prefixCls: { classPropertyName: "prefixCls", publicName: "prefixCls", isSignal: true, isRequired: false, transformFunction: null }, cell: { classPropertyName: "cell", publicName: "cell", isSignal: true, isRequired: false, transformFunction: null } }, exportAs: ["dateTableCell"], ngImport: i0, template: "@let prefixClass = prefixCls();\n@let dateCell = cell();\n@let dateCellRender = cellRender();\n\n@switch (prefixClass) {\n @case ('thy-calendar') {\n @switch (true) {\n @case (isTemplateRef(dateCellRender)) {\n <ng-container *ngTemplateOutlet=\"dateCellRender; context: { $implicit: dateCell.value }\"></ng-container>\n }\n @case (isNonEmptyString(dateCellRender)) {\n <span (click)=\"cellClick($event)\" [innerHTML]=\"dateCellRender\"></span>\n }\n @case (functionRenderResult()) {\n <span (click)=\"cellClick($event)\" [innerHTML]=\"$any(dateCellRender)(dateCell.value)\"></span>\n }\n @default {\n <div class=\"{{ prefixClass }}-date\" [attr.aria-selected]=\"dateCell.isSelected\" [attr.aria-disabled]=\"dateCell.isDisabled\">\n {{ dateCell.content }}\n </div>\n }\n }\n }\n @case ('thy-calendar-full') {\n <div\n tabindex=\"0\"\n class=\"{{ prefixClass }}-date thy-calendar-full-cell-inner\"\n [class.thy-calendar-full-calendar-date-today]=\"dateCell.isToday\">\n @if (dateCell.fullCellRender) {\n <ng-container *ngTemplateOutlet=\"$any(dateCell.fullCellRender); context: { $implicit: dateCell.value }\"> </ng-container>\n } @else {\n <div class=\"{{ prefixClass }}-date-value\">\n <span class=\"{{ prefixClass }}-date-value-today-text\">\n <span class=\"{{ prefixClass }}-date-value-text\">{{ dateCell.content }}</span>\n </span>\n </div>\n <div class=\"{{ prefixClass }}-date-content\">\n <ng-container *ngTemplateOutlet=\"$any(dateCellRender); context: { $implicit: dateCell.value }\"> </ng-container>\n </div>\n }\n </div>\n }\n}\n", dependencies: [{ kind: "directive", type: NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }] }); }
1202
1206
  }
1203
1207
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.8", ngImport: i0, type: DateTableCell, decorators: [{
1204
1208
  type: Component,
1205
- args: [{ selector: '[date-table-cell]', exportAs: 'dateTableCell', imports: [NgTemplateOutlet], template: "@let prefixClass = prefixCls();\n@let dateCell = cell();\n@let dateCellRender = cellRender();\n\n@switch (prefixClass) {\n @case ('thy-calendar') {\n @switch (true) {\n @case (isTemplateRef(dateCellRender)) {\n <ng-container *ngTemplateOutlet=\"dateCellRender; context: { $implicit: dateCell.value }\"></ng-container>\n }\n @case (isNonEmptyString(dateCellRender)) {\n <span [innerHTML]=\"dateCellRender\"></span>\n }\n @case (functionRenderResult()) {\n <span [innerHTML]=\"$any(dateCellRender)(dateCell.value)\"></span>\n }\n @default {\n <div class=\"{{ prefixClass }}-date\" [attr.aria-selected]=\"dateCell.isSelected\" [attr.aria-disabled]=\"dateCell.isDisabled\">\n {{ dateCell.content }}\n </div>\n }\n }\n }\n @case ('thy-calendar-full') {\n <div\n tabindex=\"0\"\n class=\"{{ prefixClass }}-date thy-calendar-full-cell-inner\"\n [class.thy-calendar-full-calendar-date-today]=\"dateCell.isToday\">\n @if (dateCell.fullCellRender) {\n <ng-container *ngTemplateOutlet=\"$any(dateCell.fullCellRender); context: { $implicit: dateCell.value }\"> </ng-container>\n } @else {\n <div class=\"{{ prefixClass }}-date-value\">\n <span class=\"{{ prefixClass }}-date-value-today-text\">\n <span class=\"{{ prefixClass }}-date-value-text\">{{ dateCell.content }}</span>\n </span>\n </div>\n <div class=\"{{ prefixClass }}-date-content\">\n <ng-container *ngTemplateOutlet=\"$any(dateCellRender); context: { $implicit: dateCell.value }\"> </ng-container>\n </div>\n }\n </div>\n }\n}\n" }]
1209
+ args: [{ selector: '[date-table-cell]', exportAs: 'dateTableCell', imports: [NgTemplateOutlet], template: "@let prefixClass = prefixCls();\n@let dateCell = cell();\n@let dateCellRender = cellRender();\n\n@switch (prefixClass) {\n @case ('thy-calendar') {\n @switch (true) {\n @case (isTemplateRef(dateCellRender)) {\n <ng-container *ngTemplateOutlet=\"dateCellRender; context: { $implicit: dateCell.value }\"></ng-container>\n }\n @case (isNonEmptyString(dateCellRender)) {\n <span (click)=\"cellClick($event)\" [innerHTML]=\"dateCellRender\"></span>\n }\n @case (functionRenderResult()) {\n <span (click)=\"cellClick($event)\" [innerHTML]=\"$any(dateCellRender)(dateCell.value)\"></span>\n }\n @default {\n <div class=\"{{ prefixClass }}-date\" [attr.aria-selected]=\"dateCell.isSelected\" [attr.aria-disabled]=\"dateCell.isDisabled\">\n {{ dateCell.content }}\n </div>\n }\n }\n }\n @case ('thy-calendar-full') {\n <div\n tabindex=\"0\"\n class=\"{{ prefixClass }}-date thy-calendar-full-cell-inner\"\n [class.thy-calendar-full-calendar-date-today]=\"dateCell.isToday\">\n @if (dateCell.fullCellRender) {\n <ng-container *ngTemplateOutlet=\"$any(dateCell.fullCellRender); context: { $implicit: dateCell.value }\"> </ng-container>\n } @else {\n <div class=\"{{ prefixClass }}-date-value\">\n <span class=\"{{ prefixClass }}-date-value-today-text\">\n <span class=\"{{ prefixClass }}-date-value-text\">{{ dateCell.content }}</span>\n </span>\n </div>\n <div class=\"{{ prefixClass }}-date-content\">\n <ng-container *ngTemplateOutlet=\"$any(dateCellRender); context: { $implicit: dateCell.value }\"> </ng-container>\n </div>\n }\n </div>\n }\n}\n" }]
1206
1210
  }] });
1207
1211
 
1208
1212
  /**
@@ -3137,7 +3141,8 @@ class BasePicker extends AbstractPickerComponent {
3137
3141
  return this._panelMode;
3138
3142
  }
3139
3143
  open() {
3140
- this.opened.set(true);
3144
+ this.thyPicker().focus();
3145
+ this.thyPicker().onClickInputBox();
3141
3146
  }
3142
3147
  ngOnInit() {
3143
3148
  super.ngOnInit();