ngwr 9.0.0 → 9.1.0
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/README.md +1 -1
- package/date-picker/styles/_index.scss +62 -0
- package/drawer/styles/_index.scss +23 -0
- package/fesm2022/ngwr-date-picker.mjs +509 -1
- package/fesm2022/ngwr-date-picker.mjs.map +1 -1
- package/fesm2022/ngwr-dialog.mjs +85 -12
- package/fesm2022/ngwr-dialog.mjs.map +1 -1
- package/fesm2022/ngwr-drawer.mjs +340 -6
- package/fesm2022/ngwr-drawer.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-en.mjs +5 -0
- package/fesm2022/ngwr-i18n-en.mjs.map +1 -1
- package/fesm2022/ngwr-i18n-ru.mjs +5 -0
- package/fesm2022/ngwr-i18n-ru.mjs.map +1 -1
- package/fesm2022/ngwr-pagination.mjs +1 -1
- package/fesm2022/ngwr-pagination.mjs.map +1 -1
- package/fesm2022/ngwr-select.mjs +221 -38
- package/fesm2022/ngwr-select.mjs.map +1 -1
- package/fesm2022/ngwr-version.mjs +1 -1
- package/fesm2022/ngwr-version.mjs.map +1 -1
- package/llms-full.txt +11 -11
- package/llms.txt +12 -6
- package/package.json +21 -5
- package/schematics/use/symbol-map.json +5 -0
- package/types/ngwr-date-picker.d.ts +167 -1
- package/types/ngwr-dialog.d.ts +71 -8
- package/types/ngwr-drawer.d.ts +225 -6
- package/types/ngwr-select.d.ts +115 -9
- package/types/ngwr-version.d.ts +1 -1
package/README.md
CHANGED
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
zoneless-ready, responsive, modular SCSS, fully tree-shakable. Built on top of
|
|
11
11
|
`@angular/cdk` for overlay, portal, and a11y primitives.
|
|
12
12
|
|
|
13
|
-
> **Status:** active development.
|
|
13
|
+
> **Status:** active development. v9 is the current major line (Angular 22 peer).
|
|
14
14
|
> Public API is stable across patch releases and still evolving between majors.
|
|
15
15
|
> [Open an issue](https://github.com/thekhegay/ngwr/issues/new)
|
|
16
16
|
> if something breaks or feels wrong.
|
|
@@ -27,6 +27,30 @@
|
|
|
27
27
|
}
|
|
28
28
|
}
|
|
29
29
|
|
|
30
|
+
.wr-date-range-picker {
|
|
31
|
+
display: inline-block;
|
|
32
|
+
|
|
33
|
+
// Each end shares the group's width so the pair reads as one control.
|
|
34
|
+
&__input {
|
|
35
|
+
flex: 1 1 0;
|
|
36
|
+
min-width: 0;
|
|
37
|
+
}
|
|
38
|
+
|
|
39
|
+
&__separator {
|
|
40
|
+
display: inline-flex;
|
|
41
|
+
align-items: center;
|
|
42
|
+
padding: 0 0.25rem;
|
|
43
|
+
color: var(--wr-color-on-surface-muted);
|
|
44
|
+
user-select: none;
|
|
45
|
+
}
|
|
46
|
+
|
|
47
|
+
&--disabled {
|
|
48
|
+
.wr-date-range-picker__separator {
|
|
49
|
+
opacity: 0.5;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
|
|
30
54
|
// Overlay pane — z-index isolation only. <wr-calendar> + the time panel
|
|
31
55
|
// bring their own chrome.
|
|
32
56
|
.wr-date-picker-overlay {
|
|
@@ -201,3 +225,41 @@
|
|
|
201
225
|
border-radius: 0 0 var(--wr-border-radius-base) var(--wr-border-radius-base);
|
|
202
226
|
}
|
|
203
227
|
}
|
|
228
|
+
|
|
229
|
+
// Range calendar + one time stepper per end, joined to the calendar the same
|
|
230
|
+
// way the single datetime panel is.
|
|
231
|
+
.wr-date-range-panel {
|
|
232
|
+
display: inline-flex;
|
|
233
|
+
flex-direction: column;
|
|
234
|
+
gap: 0;
|
|
235
|
+
|
|
236
|
+
> .wr-calendar {
|
|
237
|
+
border-bottom: 0;
|
|
238
|
+
border-bottom-left-radius: 0;
|
|
239
|
+
border-bottom-right-radius: 0;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
&__times {
|
|
243
|
+
display: flex;
|
|
244
|
+
flex-wrap: wrap;
|
|
245
|
+
justify-content: center;
|
|
246
|
+
gap: 0.75rem 1.25rem;
|
|
247
|
+
padding: 0.75rem;
|
|
248
|
+
background: var(--wr-color-surface);
|
|
249
|
+
border: 1px solid var(--wr-color-outline);
|
|
250
|
+
border-top: 0;
|
|
251
|
+
border-radius: 0 0 var(--wr-border-radius-base) var(--wr-border-radius-base);
|
|
252
|
+
}
|
|
253
|
+
|
|
254
|
+
&__time {
|
|
255
|
+
display: inline-flex;
|
|
256
|
+
flex-direction: column;
|
|
257
|
+
gap: 0.25rem;
|
|
258
|
+
}
|
|
259
|
+
|
|
260
|
+
&__time-label {
|
|
261
|
+
color: var(--wr-color-on-surface-muted);
|
|
262
|
+
font-size: var(--wr-text-xs);
|
|
263
|
+
font-weight: 600;
|
|
264
|
+
}
|
|
265
|
+
}
|
|
@@ -18,6 +18,29 @@
|
|
|
18
18
|
height: 100dvh;
|
|
19
19
|
}
|
|
20
20
|
|
|
21
|
+
// `WrDrawerManager.open()` attaches the content component straight into the
|
|
22
|
+
// overlay pane, so both class sets land on the same element and the panel's
|
|
23
|
+
// `height: 100%` would otherwise win over the rule above.
|
|
24
|
+
.wr-drawer-overlay--left.wr-drawer__panel,
|
|
25
|
+
.wr-drawer-overlay--right.wr-drawer__panel {
|
|
26
|
+
height: 100vh;
|
|
27
|
+
height: 100dvh;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// …and that same flattening puts the content component's own host element
|
|
31
|
+
// between the panel and the title / content / footer slots, so the panel's
|
|
32
|
+
// column layout stops one level short: the footer wouldn't pin to the bottom
|
|
33
|
+
// and the body wouldn't scroll. Pass the layout through the interposed host.
|
|
34
|
+
.wr-drawer-overlay.wr-drawer__panel > * {
|
|
35
|
+
display: flex;
|
|
36
|
+
flex: 1 1 auto;
|
|
37
|
+
flex-direction: column;
|
|
38
|
+
width: 100%;
|
|
39
|
+
// Let `wr-drawer__content`'s `overflow: auto` actually clip: a flex item
|
|
40
|
+
// defaults to `min-height: auto`, which refuses to shrink below its content.
|
|
41
|
+
min-height: 0;
|
|
42
|
+
}
|
|
43
|
+
|
|
21
44
|
.wr-drawer__panel {
|
|
22
45
|
--wr-drawer-bg: var(--wr-color-surface);
|
|
23
46
|
--wr-drawer-shadow: var(--wr-shadow-modal);
|