@taiga-ui/core 5.0.0-canary.8b64ec1 → 5.0.0-canary.95ba426

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.
@@ -33,7 +33,7 @@ class TuiRoot {
33
33
  return this.doc.fullscreenElement === this.el || !this.child;
34
34
  }
35
35
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiRoot, deps: [], target: i0.ɵɵFactoryTarget.Component }); }
36
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.17", type: TuiRoot, isStandalone: true, selector: "tui-root", host: { attributes: { "data-tui-version": "5.0.0-canary.8b64ec1" }, listeners: { "touchstart.passive.zoneless": "0", "document:fullscreenchange": "top.set(parent)" }, properties: { "style.--tui-duration.ms": "duration", "style.--tui-scroll-behavior": "reducedMotion ? \"auto\" : \"smooth\"", "class._mobile": "breakpoint() === \"mobile\"" } }, hostDirectives: [{ directive: i1.TuiPlatform }, { directive: i2.TuiVisualViewport }, { directive: i3.TuiFontSize }], ngImport: i0, template: "<div class=\"t-root-content\">\n <ng-content />\n</div>\n@if (top()) {\n @if (scrollbars) {\n <tui-scroll-controls class=\"t-root-scrollbar\" />\n }\n <tui-popups>\n <ng-content select=\"tuiOverContent\" />\n </tui-popups>\n}\n", styles: ["@keyframes tuiPresent{to{opacity:.99999}}@keyframes tuiFade{0%{opacity:0}}@keyframes tuiSlide{0%{transform:var(--tui-from, translateY(100%))}}@keyframes tuiScale{0%{transform:scale(var(--tui-scale, 0))}}@keyframes tuiCollapse{0%{grid-template-rows:0fr}to{grid-template-rows:1fr}}.tui-enter,.tui-leave{animation-duration:var(--tui-duration);animation-timing-function:ease-in-out;pointer-events:none}.tui-leave{animation-direction:reverse}\n", ".tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.tui-zero-scrollbar::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar-thumb{display:none}body,input{margin:0}tui-root{position:relative;display:block;font:var(--tui-font-body-s);color:var(--tui-text-primary);flex:1;border-image:conic-gradient(var(--tui-background-base) 0 0) fill 0/0/0 0 100vh 0;-webkit-tap-highlight-color:transparent}:root{--tui-inline-start: left;--tui-inline-end: right;--tui-inline: 1}[dir=rtl]{--tui-inline-start: right;--tui-inline-end: left;--tui-inline: -1}tui-root>.t-root-scrollbar{position:fixed;z-index:0;inset:0}.t-root-content{position:relative;top:var(--t-root-top);block-size:100%;isolation:isolate}.t-root-content>*{--t-root-top: 0}[tuiDropdownButton][tuiDropdownButton]{display:none}\n"], dependencies: [{ kind: "component", type: TuiPopups, selector: "tui-popups" }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
36
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "19.2.17", type: TuiRoot, isStandalone: true, selector: "tui-root", host: { attributes: { "data-tui-version": "5.0.0-canary.95ba426" }, listeners: { "touchstart.passive.zoneless": "0", "document:fullscreenchange": "top.set(parent)" }, properties: { "style.--tui-duration.ms": "duration", "style.--tui-scroll-behavior": "reducedMotion ? \"auto\" : \"smooth\"", "class._mobile": "breakpoint() === \"mobile\"" } }, hostDirectives: [{ directive: i1.TuiPlatform }, { directive: i2.TuiVisualViewport }, { directive: i3.TuiFontSize }], ngImport: i0, template: "<div class=\"t-root-content\">\n <ng-content />\n</div>\n@if (top()) {\n @if (scrollbars) {\n <tui-scroll-controls class=\"t-root-scrollbar\" />\n }\n <tui-popups>\n <ng-content select=\"tuiOverContent\" />\n </tui-popups>\n}\n", styles: ["@keyframes tuiPresent{to{opacity:.99999}}@keyframes tuiFade{0%{opacity:0}}@keyframes tuiSlide{0%{transform:var(--tui-from, translateY(100%))}}@keyframes tuiScale{0%{transform:scale(var(--tui-scale, 0))}}@keyframes tuiCollapse{0%{grid-template-rows:0fr}to{grid-template-rows:1fr}}.tui-enter,.tui-leave{animation-duration:var(--tui-duration);animation-timing-function:ease-in-out;pointer-events:none}.tui-leave{animation-direction:reverse}\n", ".tui-zero-scrollbar{scrollbar-width:none;-ms-overflow-style:none}.tui-zero-scrollbar::-webkit-scrollbar,.tui-zero-scrollbar::-webkit-scrollbar-thumb{display:none}body,input{margin:0}tui-root{position:relative;display:block;font:var(--tui-font-body-s);color:var(--tui-text-primary);flex:1;border-image:conic-gradient(var(--tui-background-base) 0 0) fill 0/0/0 0 100vh 0;-webkit-tap-highlight-color:transparent}:root{--tui-inline-start: left;--tui-inline-end: right;--tui-inline: 1}[dir=rtl]{--tui-inline-start: right;--tui-inline-end: left;--tui-inline: -1}tui-root>.t-root-scrollbar{position:fixed;z-index:0;inset:0}.t-root-content{position:relative;top:var(--t-root-top);block-size:100%;isolation:isolate}.t-root-content>*{--t-root-top: 0}[tuiDropdownButton][tuiDropdownButton]{display:none}\n"], dependencies: [{ kind: "component", type: TuiPopups, selector: "tui-popups" }, { kind: "component", type: TuiScrollControls, selector: "tui-scroll-controls" }], changeDetection: i0.ChangeDetectionStrategy.Default, encapsulation: i0.ViewEncapsulation.None }); }
37
37
  }
38
38
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "19.2.17", ngImport: i0, type: TuiRoot, decorators: [{
39
39
  type: Component,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@taiga-ui/core",
3
- "version": "5.0.0-canary.8b64ec1",
3
+ "version": "5.0.0-canary.95ba426",
4
4
  "description": "Core library for creating Angular components and applications using Taiga UI",
5
5
  "keywords": [
6
6
  "angular",
@@ -50,14 +50,14 @@
50
50
  "types": "./tokens/index.d.ts",
51
51
  "default": "./fesm2022/taiga-ui-core-tokens.mjs"
52
52
  },
53
- "./types": {
54
- "types": "./types/index.d.ts",
55
- "default": "./fesm2022/taiga-ui-core-types.mjs"
56
- },
57
53
  "./services": {
58
54
  "types": "./services/index.d.ts",
59
55
  "default": "./fesm2022/taiga-ui-core-services.mjs"
60
56
  },
57
+ "./types": {
58
+ "types": "./types/index.d.ts",
59
+ "default": "./fesm2022/taiga-ui-core-types.mjs"
60
+ },
61
61
  "./utils": {
62
62
  "types": "./utils/index.d.ts",
63
63
  "default": "./fesm2022/taiga-ui-core-utils.mjs"
@@ -114,14 +114,14 @@
114
114
  "types": "./components/root/index.d.ts",
115
115
  "default": "./fesm2022/taiga-ui-core-components-root.mjs"
116
116
  },
117
- "./components/scrollbar": {
118
- "types": "./components/scrollbar/index.d.ts",
119
- "default": "./fesm2022/taiga-ui-core-components-scrollbar.mjs"
120
- },
121
117
  "./components/spin-button": {
122
118
  "types": "./components/spin-button/index.d.ts",
123
119
  "default": "./fesm2022/taiga-ui-core-components-spin-button.mjs"
124
120
  },
121
+ "./components/scrollbar": {
122
+ "types": "./components/scrollbar/index.d.ts",
123
+ "default": "./fesm2022/taiga-ui-core-components-scrollbar.mjs"
124
+ },
125
125
  "./components/textfield": {
126
126
  "types": "./components/textfield/index.d.ts",
127
127
  "default": "./fesm2022/taiga-ui-core-components-textfield.mjs"
@@ -205,9 +205,9 @@
205
205
  "@angular/forms": ">=19.0.0",
206
206
  "@angular/platform-browser": ">=19.0.0",
207
207
  "@angular/router": ">=19.0.0",
208
- "@ng-web-apis/common": "^5.0.1",
209
- "@ng-web-apis/mutation-observer": "^5.0.1",
210
- "@ng-web-apis/platform": "^5.0.1",
208
+ "@ng-web-apis/common": "^5.0.2",
209
+ "@ng-web-apis/mutation-observer": "^5.0.2",
210
+ "@ng-web-apis/platform": "^5.0.2",
211
211
  "@taiga-ui/cdk": "^5.0.0-rc.0",
212
212
  "@taiga-ui/event-plugins": "^5.0.0",
213
213
  "@taiga-ui/i18n": "^5.0.0-rc.0",
@@ -1,18 +1,15 @@
1
- @thumb-diameters: {
2
- @s: 0.5rem;
3
- @m: 0.75rem;
4
- };
5
-
6
1
  @track-inset: {
7
2
  @s: 0.625rem;
8
3
  @m: 0.75rem;
9
4
  @l: 1rem;
10
5
  };
11
6
 
12
- .tui-slider-ticks-labels(@thumb-size: m) {
13
- @thumb: @thumb-diameters[@@thumb-size];
7
+ @thumb-radius: var(--tui-thumb-radius, 0.375rem);
8
+ @track-thickness: calc(@thumb-radius - 0.25rem);
9
+ @thumb-diameter: calc(@thumb-radius * 2);
14
10
 
15
- --t-offset: calc(@thumb / 2);
11
+ .tui-slider-ticks-labels() {
12
+ --t-offset: @thumb-radius;
16
13
 
17
14
  display: flex;
18
15
  font: var(--tui-font-body-s);
@@ -38,33 +35,33 @@
38
35
  }
39
36
 
40
37
  tui-range + & {
41
- --t-offset: @thumb;
38
+ --t-offset: @thumb-diameter;
42
39
  }
43
40
 
44
41
  /* TODO: add :has([tuiInputSlider]) */
45
42
  tui-textfield[data-size='l'] + & {
46
- --t-offset: calc(@track-inset[@l] + @thumb / 2);
43
+ --t-offset: calc(@track-inset[@l] + @thumb-radius);
47
44
  }
48
45
 
49
46
  /* TODO: add :has([tuiInputSlider]) */
50
47
  tui-textfield[data-size='m'] + & {
51
- --t-offset: calc(@track-inset[@m] + @thumb / 2);
48
+ --t-offset: calc(@track-inset[@m] + @thumb-radius);
52
49
  }
53
50
 
54
51
  /* TODO: add :has([tuiInputSlider]) */
55
52
  tui-textfield[data-size='s'] + & {
56
- --t-offset: calc(@track-inset[@s] + @thumb / 2);
53
+ --t-offset: calc(@track-inset[@s] + @thumb-radius);
57
54
  }
58
55
 
59
56
  tui-input-range[data-size='l'] + & {
60
- --t-offset: calc(@track-inset[@l] + @thumb);
57
+ --t-offset: calc(@track-inset[@l] + @thumb-diameter);
61
58
  }
62
59
 
63
60
  tui-input-range[data-size='m'] + & {
64
- --t-offset: calc(@track-inset[@m] + @thumb);
61
+ --t-offset: calc(@track-inset[@m] + @thumb-diameter);
65
62
  }
66
63
 
67
64
  tui-input-range[data-size='s'] + & {
68
- --t-offset: calc(@track-inset[@s] + @thumb);
65
+ --t-offset: calc(@track-inset[@s] + @thumb-diameter);
69
66
  }
70
67
  }
@@ -1,20 +1,16 @@
1
- $thumb-diameters: (
2
- 's': 0.5rem,
3
- 'm': 0.75rem,
4
- 'l': 0.75rem,
5
- );
6
-
7
1
  $track-inset: (
8
2
  's': 0.625rem,
9
3
  'm': 0.75rem,
10
4
  'l': 1rem,
11
5
  );
12
6
 
13
- // TODO(v5): use `l` by default (default size for new textfields)
14
- @mixin tui-slider-ticks-labels($input-size: m) {
15
- $thumb: map-get($thumb-diameters, $input-size);
7
+ $thumb-radius: var(--tui-thumb-radius, 0.375rem);
8
+ $track-thickness: calc($thumb-radius / 3);
9
+ $thumb-diameter: calc($thumb-radius * 2);
16
10
 
17
- --t-offset: calc($thumb / 2);
11
+ // TODO(v5): use `l` by default (default size for new textfields)
12
+ @mixin tui-slider-ticks-labels() {
13
+ --t-offset: $thumb-radius;
18
14
 
19
15
  display: flex;
20
16
  font: var(--tui-font-body-s);
@@ -40,33 +36,33 @@ $track-inset: (
40
36
  }
41
37
 
42
38
  tui-range + & {
43
- --t-offset: $thumb;
39
+ --t-offset: $thumb-diameter;
44
40
  }
45
41
 
46
42
  /* TODO: add :has([tuiInputSlider]) */
47
43
  tui-textfield[data-size='l'] + & {
48
- --t-offset: calc(map-get($track-inset, 'l') + $thumb / 2);
44
+ --t-offset: calc(map-get($track-inset, 'l') + $thumb-radius);
49
45
  }
50
46
 
51
47
  /* TODO: add :has([tuiInputSlider]) */
52
48
  tui-textfield[data-size='m'] + & {
53
- --t-offset: calc(map-get($track-inset, 'm') + $thumb / 2);
49
+ --t-offset: calc(map-get($track-inset, 'm') + $thumb-radius);
54
50
  }
55
51
 
56
52
  /* TODO: add :has([tuiInputSlider]) */
57
53
  tui-textfield[data-size='s'] + & {
58
- --t-offset: calc(map-get($track-inset, 's') + $thumb / 2);
54
+ --t-offset: calc(map-get($track-inset, 's') + $thumb-radius);
59
55
  }
60
56
 
61
57
  tui-input-range[data-size='l'] + & {
62
- --t-offset: calc(map-get($track-inset, 'l') + $thumb);
58
+ --t-offset: calc(map-get($track-inset, 'l') + $thumb-diameter);
63
59
  }
64
60
 
65
61
  tui-input-range[data-size='m'] + & {
66
- --t-offset: calc(map-get($track-inset, 'm') + $thumb);
62
+ --t-offset: calc(map-get($track-inset, 'm') + $thumb-diameter);
67
63
  }
68
64
 
69
65
  tui-input-range[data-size='s'] + & {
70
- --t-offset: calc(map-get($track-inset, 's') + $thumb);
66
+ --t-offset: calc(map-get($track-inset, 's') + $thumb-diameter);
71
67
  }
72
68
  }