@jsekulowicz/ds-components 0.13.2 → 0.14.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.
Files changed (55) hide show
  1. package/custom-elements.json +392 -4
  2. package/dist/atoms/segmented-control/define.d.ts +7 -0
  3. package/dist/atoms/segmented-control/define.d.ts.map +1 -0
  4. package/dist/atoms/segmented-control/define.js +5 -0
  5. package/dist/atoms/segmented-control/define.js.map +1 -0
  6. package/dist/atoms/segmented-control/index.d.ts +2 -0
  7. package/dist/atoms/segmented-control/index.d.ts.map +1 -0
  8. package/dist/atoms/segmented-control/index.js +2 -0
  9. package/dist/atoms/segmented-control/index.js.map +1 -0
  10. package/dist/atoms/segmented-control/segmented-control.d.ts +30 -0
  11. package/dist/atoms/segmented-control/segmented-control.d.ts.map +1 -0
  12. package/dist/atoms/segmented-control/segmented-control.js +81 -0
  13. package/dist/atoms/segmented-control/segmented-control.js.map +1 -0
  14. package/dist/atoms/segmented-control/segmented-control.styles.d.ts +2 -0
  15. package/dist/atoms/segmented-control/segmented-control.styles.d.ts.map +1 -0
  16. package/dist/atoms/segmented-control/segmented-control.styles.js +64 -0
  17. package/dist/atoms/segmented-control/segmented-control.styles.js.map +1 -0
  18. package/dist/atoms/table/table-scroll-body.styles.d.ts.map +1 -1
  19. package/dist/atoms/table/table-scroll-body.styles.js +11 -24
  20. package/dist/atoms/table/table-scroll-body.styles.js.map +1 -1
  21. package/dist/atoms/table/table.d.ts +1 -0
  22. package/dist/atoms/table/table.d.ts.map +1 -1
  23. package/dist/atoms/table/table.js +2 -0
  24. package/dist/atoms/table/table.js.map +1 -1
  25. package/dist/define.d.ts +1 -0
  26. package/dist/define.d.ts.map +1 -1
  27. package/dist/define.js +1 -0
  28. package/dist/define.js.map +1 -1
  29. package/dist/index.d.ts +1 -0
  30. package/dist/index.d.ts.map +1 -1
  31. package/dist/index.js +1 -0
  32. package/dist/index.js.map +1 -1
  33. package/dist/molecules/dialog/dialog.d.ts +1 -0
  34. package/dist/molecules/dialog/dialog.d.ts.map +1 -1
  35. package/dist/molecules/dialog/dialog.js +11 -2
  36. package/dist/molecules/dialog/dialog.js.map +1 -1
  37. package/dist/molecules/dialog/dialog.styles.d.ts.map +1 -1
  38. package/dist/molecules/dialog/dialog.styles.js +2 -26
  39. package/dist/molecules/dialog/dialog.styles.js.map +1 -1
  40. package/dist/molecules/drawer/drawer.d.ts +1 -0
  41. package/dist/molecules/drawer/drawer.d.ts.map +1 -1
  42. package/dist/molecules/drawer/drawer.js +11 -2
  43. package/dist/molecules/drawer/drawer.js.map +1 -1
  44. package/dist/molecules/drawer/drawer.styles.d.ts.map +1 -1
  45. package/dist/molecules/drawer/drawer.styles.js +2 -24
  46. package/dist/molecules/drawer/drawer.styles.js.map +1 -1
  47. package/dist/shared/scroll-fade-controller.d.ts +9 -0
  48. package/dist/shared/scroll-fade-controller.d.ts.map +1 -0
  49. package/dist/shared/scroll-fade-controller.js +92 -0
  50. package/dist/shared/scroll-fade-controller.js.map +1 -0
  51. package/dist/shared/scroll-fade.styles.d.ts +1 -0
  52. package/dist/shared/scroll-fade.styles.d.ts.map +1 -1
  53. package/dist/shared/scroll-fade.styles.js +42 -35
  54. package/dist/shared/scroll-fade.styles.js.map +1 -1
  55. package/package.json +9 -2
@@ -0,0 +1 @@
1
+ {"version":3,"file":"scroll-fade-controller.js","sourceRoot":"","sources":["../../src/shared/scroll-fade-controller.ts"],"names":[],"mappings":"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"}
@@ -1,2 +1,3 @@
1
1
  export declare const scrollFadeStyles: import("lit").CSSResult;
2
+ export declare const cardBodyScrollFadeStyles: import("lit").CSSResult;
2
3
  //# sourceMappingURL=scroll-fade.styles.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"scroll-fade.styles.d.ts","sourceRoot":"","sources":["../../src/shared/scroll-fade.styles.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,gBAAgB,yBA2B5B,CAAC"}
1
+ {"version":3,"file":"scroll-fade.styles.d.ts","sourceRoot":"","sources":["../../src/shared/scroll-fade.styles.ts"],"names":[],"mappings":"AAcA,eAAO,MAAM,gBAAgB,yBAc5B,CAAC;AAIF,eAAO,MAAM,wBAAwB,yBAiBpC,CAAC"}
@@ -1,42 +1,49 @@
1
1
  import { css } from 'lit';
2
- // Shared scroll-driven fade. Registers the fade-colour custom properties and a
3
- // keyframe that flips them at the scroll extremes — top fade hidden at
4
- // scroll-top, bottom fade hidden at scroll-end, both visible in between. Add
5
- // `scrollFadeStyles` to a component's styles, then on the scroll container:
6
- // scrollbar-width: none;
7
- // mask-image: linear-gradient(to bottom,
8
- // var(--ds-scroll-fade-top, rgb(0 0 0)) ...,
9
- // var(--ds-scroll-fade-bottom, rgb(0 0 0)) ...);
10
- // animation: ds-scroll-fade linear;
11
- // animation-timeline: scroll(self);
12
- // and hide the WebKit scrollbar with `::-webkit-scrollbar { display: none }`.
13
- // Used by ds-dialog, ds-drawer and ds-table (`scroll-body`).
2
+ // Shared scroll fade. The fade colours (`--ds-scroll-fade-top` /
3
+ // `--ds-scroll-fade-bottom`) are set per scroll position by
4
+ // `ScrollFadeController`. The gradient is exposed as `--ds-scroll-fade-mask`
5
+ // so any scroll container can apply it with `mask-image: var(--ds-scroll-fade-mask)`.
6
+ //
7
+ // IMPORTANT: the gradient must be DECLARED on the scroll container itself, not
8
+ // on :host — a custom property resolves its inner var()s against the element it
9
+ // is declared on, and the controller sets the fade colours on the scroller. So
10
+ // this rule targets the two scroller selectors directly (a component only
11
+ // matches its own one). `--ds-scroll-fade-depth` tunes the fade size and
12
+ // `--ds-scroll-fade-offset` shifts the top fade past a sticky header; both
13
+ // inherit, so a host can override them.
14
14
  export const scrollFadeStyles = css `
15
- /* @property registration so the scroll-driven keyframe can interpolate the
16
- fades as colours. Near-instant flips keep the transitions binary. */
17
- @property --ds-scroll-fade-top {
18
- syntax: '<color>';
19
- inherits: false;
20
- initial-value: rgb(0 0 0);
15
+ ds-card::part(body),
16
+ .scroll {
17
+ --ds-scroll-fade-mask: linear-gradient(
18
+ to bottom,
19
+ rgb(0 0 0) 0,
20
+ rgb(0 0 0) var(--ds-scroll-fade-offset, 0px),
21
+ var(--ds-scroll-fade-top, rgb(0 0 0)) var(--ds-scroll-fade-offset, 0px),
22
+ rgb(0 0 0)
23
+ calc(var(--ds-scroll-fade-offset, 0px) + var(--ds-scroll-fade-depth, var(--ds-space-8))),
24
+ rgb(0 0 0) calc(100% - var(--ds-scroll-fade-depth, var(--ds-space-8))),
25
+ var(--ds-scroll-fade-bottom, rgb(0 0 0)) 100%
26
+ );
21
27
  }
22
- @property --ds-scroll-fade-bottom {
23
- syntax: '<color>';
24
- inherits: false;
25
- initial-value: rgb(0 0 0);
28
+ `;
29
+ // The scrolling body shared by the ds-card-based panels (ds-dialog, ds-drawer):
30
+ // identical flex / overflow / inline padding plus the masked scroll fade.
31
+ export const cardBodyScrollFadeStyles = css `
32
+ ds-card::part(body) {
33
+ flex: 1;
34
+ min-height: 0;
35
+ overflow-x: clip;
36
+ overflow-y: auto;
37
+ overscroll-behavior: contain;
38
+ /* Inline padding + negative margin lets focus rings on full-width
39
+ children paint outside the body's clip box. */
40
+ padding-inline: var(--ds-space-2);
41
+ margin-inline: calc(var(--ds-space-2) * -1);
42
+ scrollbar-width: none;
43
+ mask-image: var(--ds-scroll-fade-mask);
26
44
  }
27
- @keyframes ds-scroll-fade {
28
- 0% {
29
- --ds-scroll-fade-top: rgb(0 0 0);
30
- --ds-scroll-fade-bottom: rgb(0 0 0 / 0);
31
- }
32
- 0.001%, 99.999% {
33
- --ds-scroll-fade-top: rgb(0 0 0 / 0);
34
- --ds-scroll-fade-bottom: rgb(0 0 0 / 0);
35
- }
36
- 100% {
37
- --ds-scroll-fade-top: rgb(0 0 0 / 0);
38
- --ds-scroll-fade-bottom: rgb(0 0 0);
39
- }
45
+ ds-card::part(body)::-webkit-scrollbar {
46
+ display: none;
40
47
  }
41
48
  `;
42
49
  //# sourceMappingURL=scroll-fade.styles.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"scroll-fade.styles.js","sourceRoot":"","sources":["../../src/shared/scroll-fade.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,+EAA+E;AAC/E,uEAAuE;AACvE,6EAA6E;AAC7E,4EAA4E;AAC5E,2BAA2B;AAC3B,2CAA2C;AAC3C,iDAAiD;AACjD,qDAAqD;AACrD,sCAAsC;AACtC,sCAAsC;AACtC,8EAA8E;AAC9E,6DAA6D;AAC7D,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;;;;;;;;;;;CA2BlC,CAAC"}
1
+ {"version":3,"file":"scroll-fade.styles.js","sourceRoot":"","sources":["../../src/shared/scroll-fade.styles.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,KAAK,CAAC;AAE1B,iEAAiE;AACjE,4DAA4D;AAC5D,6EAA6E;AAC7E,sFAAsF;AACtF,EAAE;AACF,+EAA+E;AAC/E,gFAAgF;AAChF,+EAA+E;AAC/E,0EAA0E;AAC1E,yEAAyE;AACzE,2EAA2E;AAC3E,wCAAwC;AACxC,MAAM,CAAC,MAAM,gBAAgB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;CAclC,CAAC;AAEF,gFAAgF;AAChF,0EAA0E;AAC1E,MAAM,CAAC,MAAM,wBAAwB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;CAiB1C,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jsekulowicz/ds-components",
3
- "version": "0.13.2",
3
+ "version": "0.14.0",
4
4
  "description": "Lit web components for the Design System Library (atoms, molecules, organisms, templates, pages).",
5
5
  "license": "UNLICENSED",
6
6
  "repository": {
@@ -48,6 +48,13 @@
48
48
  "./button/define": {
49
49
  "import": "./dist/atoms/button/define.js"
50
50
  },
51
+ "./segmented-control": {
52
+ "types": "./dist/atoms/segmented-control/index.d.ts",
53
+ "import": "./dist/atoms/segmented-control/index.js"
54
+ },
55
+ "./segmented-control/define": {
56
+ "import": "./dist/atoms/segmented-control/define.js"
57
+ },
51
58
  "./tooltip": {
52
59
  "types": "./dist/atoms/tooltip/index.d.ts",
53
60
  "import": "./dist/atoms/tooltip/index.js"
@@ -329,7 +336,7 @@
329
336
  "dependencies": {
330
337
  "lit": "^3.2.1",
331
338
  "@jsekulowicz/ds-core": "0.5.0",
332
- "@jsekulowicz/ds-tokens": "0.5.0"
339
+ "@jsekulowicz/ds-tokens": "0.14.0"
333
340
  },
334
341
  "devDependencies": {
335
342
  "heroicons": "2.2.0",