ngx-tethys 22.0.0-next.4 → 22.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +14 -0
- package/fesm2022/ngx-tethys-loading.mjs +2 -2
- package/fesm2022/ngx-tethys-loading.mjs.map +1 -1
- package/fesm2022/ngx-tethys.mjs +1 -1
- package/fesm2022/ngx-tethys.mjs.map +1 -1
- package/form/styles/forms.scss +9 -0
- package/input/styles/input-group.scss +4 -0
- package/package.json +1 -1
- package/schematics/version.d.ts +1 -1
- package/schematics/version.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -2,6 +2,20 @@
|
|
|
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
|
+
## [22.0.1](github.com/atinc/ngx-tethys/compare/22.0.0...22.0.1) (2026-09-10)
|
|
6
|
+
|
|
7
|
+
|
|
8
|
+
### Bug Fixes
|
|
9
|
+
|
|
10
|
+
* **style:** fix input style #TINFR-4053 ([#3934](/github.com/atinc/ngx-tethys/issues/3934)) ([cf5c4ab](github.com/atinc/ngx-tethys/commits/cf5c4ab951c5c7a89caaf940d7fef4d443f635a5)), closes [#TINFR-4053](github.com/atinc/ngx-tethys/issues/TINFR-4053)
|
|
11
|
+
|
|
12
|
+
# [22.0.0](github.com/atinc/ngx-tethys/compare/22.0.0-next.4...22.0.0) (2026-09-09)
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
### Features
|
|
16
|
+
* feat: upgrade ng to v22 #TINFR-3745 (#3824)
|
|
17
|
+
|
|
18
|
+
|
|
5
19
|
# [22.0.0-next.4](github.com/atinc/ngx-tethys/compare/22.0.0-next.3...22.0.0-next.4) (2026-09-08)
|
|
6
20
|
|
|
7
21
|
|
|
@@ -27,11 +27,11 @@ class ThyLoading {
|
|
|
27
27
|
this.loadingClassName = true;
|
|
28
28
|
}
|
|
29
29
|
static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: ThyLoading, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
|
|
30
|
-
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: ThyLoading, isStandalone: true, selector: "thy-loading", inputs: { thyDone: { classPropertyName: "thyDone", publicName: "thyDone", isSignal: true, isRequired: false, transformFunction: null }, thyTip: { classPropertyName: "thyTip", publicName: "thyTip", isSignal: true, isRequired: false, transformFunction: null }, thyIsMask: { classPropertyName: "thyIsMask", publicName: "thyIsMask", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.thy-loading": "this.loadingClassName" } }, ngImport: i0, template: "<div [class.thy-loading-mask]=\"thyIsMask() && !thyDone()\"
|
|
30
|
+
static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "22.1.4", type: ThyLoading, isStandalone: true, selector: "thy-loading", inputs: { thyDone: { classPropertyName: "thyDone", publicName: "thyDone", isSignal: true, isRequired: false, transformFunction: null }, thyTip: { classPropertyName: "thyTip", publicName: "thyTip", isSignal: true, isRequired: false, transformFunction: null }, thyIsMask: { classPropertyName: "thyIsMask", publicName: "thyIsMask", isSignal: true, isRequired: false, transformFunction: null } }, host: { properties: { "class.thy-loading": "this.loadingClassName" } }, ngImport: i0, template: "<div [class.thy-loading-mask]=\"thyIsMask() && !thyDone()\">\n @if (!thyDone()) {\n <div class=\"thy-loading-indicator\">\n <h4>\n <span [style.display]=\"thyTip() ? 'inline' : 'none'\">{{ thyTip() }}</span>\n <div class=\"thy-loading-ellipsis\">\n <span class=\"thy-spot\"></span>\n </div>\n </h4>\n </div>\n }\n @if (thyIsMask() || thyDone()) {\n <ng-content></ng-content>\n }\n</div>\n" }); }
|
|
31
31
|
}
|
|
32
32
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "22.1.4", ngImport: i0, type: ThyLoading, decorators: [{
|
|
33
33
|
type: Component,
|
|
34
|
-
args: [{ selector: 'thy-loading', imports: [], template: "<div [class.thy-loading-mask]=\"thyIsMask() && !thyDone()\"
|
|
34
|
+
args: [{ selector: 'thy-loading', imports: [], template: "<div [class.thy-loading-mask]=\"thyIsMask() && !thyDone()\">\n @if (!thyDone()) {\n <div class=\"thy-loading-indicator\">\n <h4>\n <span [style.display]=\"thyTip() ? 'inline' : 'none'\">{{ thyTip() }}</span>\n <div class=\"thy-loading-ellipsis\">\n <span class=\"thy-spot\"></span>\n </div>\n </h4>\n </div>\n }\n @if (thyIsMask() || thyDone()) {\n <ng-content></ng-content>\n }\n</div>\n" }]
|
|
35
35
|
}], propDecorators: { thyDone: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyDone", required: false }] }], thyTip: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyTip", required: false }] }], thyIsMask: [{ type: i0.Input, args: [{ isSignal: true, alias: "thyIsMask", required: false }] }], loadingClassName: [{
|
|
36
36
|
type: HostBinding,
|
|
37
37
|
args: ['class.thy-loading']
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-tethys-loading.mjs","sources":["../../../src/loading/loading.component.ts","../../../src/loading/loading.component.html","../../../src/loading/loading.module.ts","../../../src/loading/ngx-tethys-loading.ts"],"sourcesContent":["import { Component, HostBinding, input } from '@angular/core';\n\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * 加载组件,页面调用接口等待请求时,给用户的反馈\n * @name thy-loading\n * @order 10\n */\n@Component({\n selector: 'thy-loading',\n templateUrl: './loading.component.html',\n imports: []\n})\nexport class ThyLoading {\n /**\n * 数据是否加载完成\n * @default false\n */\n readonly thyDone = input(false, { transform: coerceBooleanProperty });\n\n /**\n * 自定义加载提示文案\n */\n readonly thyTip = input<string>('');\n\n /**\n * 加载时是否启用嵌套遮罩模式,不传或传 false,没有遮罩层,加载完成出现内容\n */\n readonly thyIsMask = input(false, { transform: coerceBooleanProperty });\n\n @HostBinding('class.thy-loading') loadingClassName = true;\n}\n","<div [class.thy-loading-mask]=\"thyIsMask() && !thyDone()\"
|
|
1
|
+
{"version":3,"file":"ngx-tethys-loading.mjs","sources":["../../../src/loading/loading.component.ts","../../../src/loading/loading.component.html","../../../src/loading/loading.module.ts","../../../src/loading/ngx-tethys-loading.ts"],"sourcesContent":["import { Component, HostBinding, input } from '@angular/core';\n\nimport { coerceBooleanProperty } from 'ngx-tethys/util';\n\n/**\n * 加载组件,页面调用接口等待请求时,给用户的反馈\n * @name thy-loading\n * @order 10\n */\n@Component({\n selector: 'thy-loading',\n templateUrl: './loading.component.html',\n imports: []\n})\nexport class ThyLoading {\n /**\n * 数据是否加载完成\n * @default false\n */\n readonly thyDone = input(false, { transform: coerceBooleanProperty });\n\n /**\n * 自定义加载提示文案\n */\n readonly thyTip = input<string>('');\n\n /**\n * 加载时是否启用嵌套遮罩模式,不传或传 false,没有遮罩层,加载完成出现内容\n */\n readonly thyIsMask = input(false, { transform: coerceBooleanProperty });\n\n @HostBinding('class.thy-loading') loadingClassName = true;\n}\n","<div [class.thy-loading-mask]=\"thyIsMask() && !thyDone()\">\n @if (!thyDone()) {\n <div class=\"thy-loading-indicator\">\n <h4>\n <span [style.display]=\"thyTip() ? 'inline' : 'none'\">{{ thyTip() }}</span>\n <div class=\"thy-loading-ellipsis\">\n <span class=\"thy-spot\"></span>\n </div>\n </h4>\n </div>\n }\n @if (thyIsMask() || thyDone()) {\n <ng-content></ng-content>\n }\n</div>\n","import { NgModule } from '@angular/core';\nimport { CommonModule } from '@angular/common';\nimport { ThyLoading } from './loading.component';\n\n@NgModule({\n imports: [CommonModule, ThyLoading],\n exports: [ThyLoading]\n})\nexport class ThyLoadingModule {}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './index';\n"],"names":[],"mappings":";;;;;AAIA;;;;AAIG;MAMU,UAAU,CAAA;AALvB,IAAA,WAAA,GAAA;AAMI;;;AAGG;QACM,IAAA,CAAA,OAAO,GAAG,KAAK,CAAC,KAAK,+EAAI,SAAS,EAAE,qBAAqB,EAAA,CAAG;AAErE;;AAEG;QACM,IAAA,CAAA,MAAM,GAAG,KAAK,CAAS,EAAE;mFAAC;AAEnC;;AAEG;QACM,IAAA,CAAA,SAAS,GAAG,KAAK,CAAC,KAAK,iFAAI,SAAS,EAAE,qBAAqB,EAAA,CAAG;QAErC,IAAA,CAAA,gBAAgB,GAAG,IAAI;AAC5D,IAAA;8GAlBY,UAAU,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,SAAA,EAAA,CAAA,CAAA;AAAV,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,oBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,IAAA,EAAA,UAAU,whBCdvB,2bAeA,EAAA,CAAA,CAAA;;2FDDa,UAAU,EAAA,UAAA,EAAA,CAAA;kBALtB,SAAS;AACI,YAAA,IAAA,EAAA,CAAA,EAAA,QAAA,EAAA,aAAa,WAEd,EAAE,EAAA,QAAA,EAAA,2bAAA,EAAA;;sBAmBV,WAAW;uBAAC,mBAAmB;;;MEvBvB,gBAAgB,CAAA;8GAAhB,gBAAgB,EAAA,IAAA,EAAA,EAAA,EAAA,MAAA,EAAA,EAAA,CAAA,eAAA,CAAA,QAAA,EAAA,CAAA,CAAA;AAAhB,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,EAAA,OAAA,EAAA,CAHf,YAAY,EAAE,UAAU,aACxB,UAAU,CAAA,EAAA,CAAA,CAAA;AAEX,IAAA,SAAA,IAAA,CAAA,IAAA,GAAA,EAAA,CAAA,mBAAA,CAAA,EAAA,UAAA,EAAA,QAAA,EAAA,OAAA,EAAA,QAAA,EAAA,QAAA,EAAA,EAAA,EAAA,IAAA,EAAA,gBAAgB,YAHf,YAAY,CAAA,EAAA,CAAA,CAAA;;2FAGb,gBAAgB,EAAA,UAAA,EAAA,CAAA;kBAJ5B,QAAQ;AAAC,YAAA,IAAA,EAAA,CAAA;AACN,oBAAA,OAAO,EAAE,CAAC,YAAY,EAAE,UAAU,CAAC;oBACnC,OAAO,EAAE,CAAC,UAAU;AACvB,iBAAA;;;ACPD;;AAEG;;;;"}
|
package/fesm2022/ngx-tethys.mjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { Version, InjectionToken, makeEnvironmentProviders } from '@angular/core';
|
|
2
2
|
|
|
3
|
-
const VERSION = new Version('22.0.
|
|
3
|
+
const VERSION = new Version('22.0.1');
|
|
4
4
|
|
|
5
5
|
const THY_GLOBAL_CONFIG = new InjectionToken('thy-global-config');
|
|
6
6
|
function getOverlayGlobalConfig(globalConfig) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ngx-tethys.mjs","sources":["../../../src/version.ts","../../../src/core/global-config.ts","../../../src/core/provide.ts","../../../src/ngx-tethys.ts"],"sourcesContent":["import { Version } from '@angular/core';\n\nexport const VERSION = new Version('22.0.
|
|
1
|
+
{"version":3,"file":"ngx-tethys.mjs","sources":["../../../src/version.ts","../../../src/core/global-config.ts","../../../src/core/provide.ts","../../../src/ngx-tethys.ts"],"sourcesContent":["import { Version } from '@angular/core';\n\nexport const VERSION = new Version('22.0.1');\n","import { InjectionToken } from '@angular/core';\n\nexport interface ThyOverlayGlobalConfig {\n /**\n * Whether overlay-based components can automatically choose a better position\n * from their fallback positions when the preferred placement does not fit.\n */\n flexiblePosition?: boolean;\n\n /**\n * Whether overlay-based components can be pushed on-screen if none of the provided positions fit.\n */\n canPush?: boolean;\n}\n\nexport interface ThyGlobalConfig {\n overlay?: ThyOverlayGlobalConfig;\n}\n\nexport const THY_GLOBAL_CONFIG = new InjectionToken<ThyGlobalConfig>('thy-global-config');\n\nexport function getOverlayGlobalConfig(globalConfig?: ThyGlobalConfig | null): ThyOverlayGlobalConfig {\n return globalConfig?.overlay ?? {};\n}\n","import { EnvironmentProviders, Provider, makeEnvironmentProviders } from '@angular/core';\nimport { THY_GLOBAL_CONFIG, ThyGlobalConfig } from './global-config';\n\nexport type ThyTethysFeature = Provider | EnvironmentProviders;\n\nexport function provideTethys(...features: ThyTethysFeature[]): EnvironmentProviders {\n return makeEnvironmentProviders(features);\n}\n\nexport function withGlobalConfig(config: ThyGlobalConfig): EnvironmentProviders {\n return makeEnvironmentProviders([{ provide: THY_GLOBAL_CONFIG, useValue: config }]);\n}\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":";;MAEa,OAAO,GAAG,IAAI,OAAO,CAAC,QAAQ;;MCiB9B,iBAAiB,GAAG,IAAI,cAAc,CAAkB,mBAAmB;AAElF,SAAU,sBAAsB,CAAC,YAAqC,EAAA;AACxE,IAAA,OAAO,YAAY,EAAE,OAAO,IAAI,EAAE;AACtC;;AClBM,SAAU,aAAa,CAAC,GAAG,QAA4B,EAAA;AACzD,IAAA,OAAO,wBAAwB,CAAC,QAAQ,CAAC;AAC7C;AAEM,SAAU,gBAAgB,CAAC,MAAuB,EAAA;AACpD,IAAA,OAAO,wBAAwB,CAAC,CAAC,EAAE,OAAO,EAAE,iBAAiB,EAAE,QAAQ,EAAE,MAAM,EAAE,CAAC,CAAC;AACvF;;ACXA;;AAEG;;;;"}
|
package/form/styles/forms.scss
CHANGED
|
@@ -22,6 +22,15 @@
|
|
|
22
22
|
background-clip: padding-box;
|
|
23
23
|
border: bootstrap-variables.$input-border-width solid variables.$input-border-color;
|
|
24
24
|
|
|
25
|
+
// Note: This has no effect on <select>s in some browsers, due to the limited stylability of `<select>`s in CSS.
|
|
26
|
+
@if bootstrap-variables.$enable-rounded {
|
|
27
|
+
// Manually use the if/else instead of the mixin to account for iOS override
|
|
28
|
+
border-radius: variables.$input-border-radius-md;
|
|
29
|
+
} @else {
|
|
30
|
+
// Otherwise undo the iOS default
|
|
31
|
+
border-radius: 0;
|
|
32
|
+
}
|
|
33
|
+
|
|
25
34
|
@include transition.transition(bootstrap-variables.$input-transition);
|
|
26
35
|
|
|
27
36
|
// Unstyle the caret on `<select>`s in IE10+.
|
|
@@ -139,13 +139,17 @@
|
|
|
139
139
|
.input-group-text {
|
|
140
140
|
display: flex;
|
|
141
141
|
align-items: center;
|
|
142
|
+
padding: variables.$input-padding-y-md variables.$input-padding-x-md;
|
|
142
143
|
margin-bottom: 0; // Allow use of <label> elements by overriding our default margin-bottom
|
|
144
|
+
font-size: variables.$font-size-base;
|
|
143
145
|
font-weight: bootstrap-variables.$font-weight-normal;
|
|
146
|
+
line-height: bootstrap-variables.$input-line-height;
|
|
144
147
|
color: variables.$input-group-addon-color;
|
|
145
148
|
text-align: center;
|
|
146
149
|
white-space: nowrap;
|
|
147
150
|
background-color: variables.$input-group-addon-bg;
|
|
148
151
|
border: bootstrap-variables.$input-border-width solid bootstrap-variables.$input-group-addon-border-color;
|
|
152
|
+
@include border-radius.border-radius(variables.$input-border-radius-md);
|
|
149
153
|
|
|
150
154
|
// Nuke default margins from checkboxes and radios to vertically center within.
|
|
151
155
|
input[type='radio'],
|
package/package.json
CHANGED
package/schematics/version.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
export declare const VERSION = "22.0.
|
|
1
|
+
export declare const VERSION = "22.0.1";
|
package/schematics/version.js
CHANGED