@infonomic/uikit 6.1.0 → 6.2.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.
Files changed (68) hide show
  1. package/dist/components/inputs/input.module.css +7 -0
  2. package/dist/components/inputs/input_module.css +4 -0
  3. package/dist/components/inputs/text-area.module.css +15 -9
  4. package/dist/components/inputs/text-area_module.css +4 -0
  5. package/dist/styles/components-vanilla.css +1 -1
  6. package/dist/widgets/drawer/drawer-container.d.ts.map +1 -1
  7. package/dist/widgets/drawer/drawer-container.js +0 -1
  8. package/dist/widgets/drawer/drawer.d.ts +2 -1
  9. package/dist/widgets/drawer/drawer.d.ts.map +1 -1
  10. package/dist/widgets/drawer/drawer.js +34 -49
  11. package/dist/widgets/drawer/drawer.module.css +66 -54
  12. package/dist/widgets/drawer/drawer.module.js +3 -5
  13. package/dist/widgets/drawer/drawer_module.css +47 -81
  14. package/dist/widgets/modal/modal.d.ts +1 -1
  15. package/dist/widgets/modal/modal.d.ts.map +1 -1
  16. package/dist/widgets/modal/modal.js +23 -36
  17. package/dist/widgets/modal/modal.module.css +50 -9
  18. package/dist/widgets/modal/modal.module.js +1 -0
  19. package/dist/widgets/modal/modal_module.css +40 -8
  20. package/package.json +1 -1
  21. package/src/components/inputs/input.module.css +7 -0
  22. package/src/components/inputs/text-area.module.css +15 -9
  23. package/src/styles/local-fonts.css +5 -1
  24. package/src/widgets/drawer/drawer-container.tsx +0 -1
  25. package/src/widgets/drawer/drawer.module.css +66 -54
  26. package/src/widgets/drawer/drawer.stories.tsx +51 -5
  27. package/src/widgets/drawer/drawer.tsx +36 -50
  28. package/src/widgets/modal/modal.module.css +50 -9
  29. package/src/widgets/modal/modal.tsx +27 -45
  30. package/dist/components/overlay/index.d.ts +0 -2
  31. package/dist/components/overlay/index.d.ts.map +0 -1
  32. package/dist/components/overlay/index.js +0 -1
  33. package/dist/components/overlay/overlay.d.ts +0 -9
  34. package/dist/components/overlay/overlay.d.ts.map +0 -1
  35. package/dist/components/overlay/overlay.js +0 -51
  36. package/dist/components/overlay/overlay.module.css +0 -56
  37. package/dist/components/overlay/overlay.module.js +0 -13
  38. package/dist/components/overlay/overlay_module.css +0 -46
  39. package/dist/hooks/use-focus-trap/index.d.ts +0 -2
  40. package/dist/hooks/use-focus-trap/index.d.ts.map +0 -1
  41. package/dist/hooks/use-focus-trap/scope-tab.d.ts +0 -11
  42. package/dist/hooks/use-focus-trap/scope-tab.d.ts.map +0 -1
  43. package/dist/hooks/use-focus-trap/tabbable.d.ts +0 -14
  44. package/dist/hooks/use-focus-trap/tabbable.d.ts.map +0 -1
  45. package/dist/hooks/use-focus-trap/use-focus-trap.d.ts +0 -11
  46. package/dist/hooks/use-focus-trap/use-focus-trap.d.ts.map +0 -1
  47. package/dist/utils/getPortalRoot.d.ts +0 -2
  48. package/dist/utils/getPortalRoot.d.ts.map +0 -1
  49. package/dist/widgets/drawer/drawer-wrapper.d.ts +0 -9
  50. package/dist/widgets/drawer/drawer-wrapper.d.ts.map +0 -1
  51. package/dist/widgets/drawer/drawer-wrapper.js +0 -37
  52. package/dist/widgets/drawer/motionDomAnimation.d.ts +0 -3
  53. package/dist/widgets/drawer/motionDomAnimation.d.ts.map +0 -1
  54. package/dist/widgets/drawer/motionDomMax.d.ts +0 -3
  55. package/dist/widgets/drawer/motionDomMax.d.ts.map +0 -1
  56. package/dist/widgets/modal/modal-wrapper.d.ts +0 -8
  57. package/dist/widgets/modal/modal-wrapper.d.ts.map +0 -1
  58. package/dist/widgets/modal/modal-wrapper.js +0 -37
  59. package/dist/widgets/modal/motionDomAnimation.d.ts +0 -3
  60. package/dist/widgets/modal/motionDomAnimation.d.ts.map +0 -1
  61. package/dist/widgets/modal/motionDomMax.d.ts +0 -3
  62. package/dist/widgets/modal/motionDomMax.d.ts.map +0 -1
  63. package/src/components/overlay/index.stories.tsx +0 -26
  64. package/src/components/overlay/index.ts +0 -2
  65. package/src/components/overlay/overlay.module.css +0 -56
  66. package/src/components/overlay/overlay.tsx +0 -70
  67. package/src/widgets/drawer/drawer-wrapper.tsx +0 -53
  68. package/src/widgets/modal/modal-wrapper.tsx +0 -51
@@ -1,113 +1,91 @@
1
1
  @layer infonomic-base, infonomic-utilities, infonomic-theme;
2
2
 
3
3
  @layer infonomic-components {
4
- :is(.drawer-wrapper-q0hBzd, .infonomic-drawer-wrapper) {
5
- z-index: 30;
6
- opacity: 1;
7
- flex-direction: column;
8
- justify-content: end;
9
- display: flex;
4
+ :is(.backdrop-Ga1s55, .infonomic-drawer-backdrop) {
5
+ background-color: #f5f5f559;
6
+ transition: opacity .2s;
10
7
  position: fixed;
11
8
  inset: 0;
12
9
  }
13
10
 
14
- :is(.drawer-container-ssf1qn, .infonomic-drawer-container) {
15
- background-color: var(--surface-panel);
16
- height: 100%;
17
- box-shadow: var(--shadow-md);
18
- z-index: inherit;
19
- position: absolute;
20
- right: 0;
11
+ .backdrop-Ga1s55[data-starting-style], .backdrop-Ga1s55[data-ending-style] {
12
+ opacity: 0;
21
13
  }
22
14
 
23
- .drawer-container-ssf1qn[aria-hidden="false"] {
24
- animation: .15s cubic-bezier(.16, 1, .3, 1) slideIn-dDQJvD;
15
+ .dark .backdrop-Ga1s55 {
16
+ background-color: #00000080;
25
17
  }
26
18
 
27
- .infonomic-drawer-container[aria-hidden="false"] {
28
- animation: .15s cubic-bezier(.16, 1, .3, 1) slideIn-dDQJvD;
19
+ [data-theme="dark"] .backdrop-Ga1s55 {
20
+ background-color: #00000080;
29
21
  }
30
22
 
31
- .drawer-depth-0-VYE9YM.drawer-medium-ZFbdby .drawer-container-ssf1qn, .drawer-depth-0-VYE9YM.drawer-wide-nXbxPs .drawer-container-ssf1qn {
32
- width: 90%;
23
+ .dark .infonomic-drawer-backdrop {
24
+ background-color: #00000080;
33
25
  }
34
26
 
35
- .infonomic-drawer-depth-0.drawer-medium .drawer-container {
36
- width: 90%;
27
+ [data-theme="dark"] .infonomic-drawer-backdrop {
28
+ background-color: #00000080;
37
29
  }
38
30
 
39
- .infonomic-drawer-depth-0.drawer-wide .drawer-container {
40
- width: 90%;
31
+ :is(.drawer-wrapper-q0hBzd, .infonomic-drawer-wrapper) {
32
+ background-color: var(--surface-panel);
33
+ box-shadow: var(--shadow-md);
34
+ flex-direction: column;
35
+ transition: transform .2s cubic-bezier(.16, 1, .3, 1);
36
+ display: flex;
37
+ position: fixed;
38
+ top: 0;
39
+ bottom: 0;
40
+ right: 0;
41
+ overflow: hidden;
41
42
  }
42
43
 
43
- .drawer-depth-1-2CzoWM.drawer-medium-ZFbdby .drawer-container-ssf1qn, .drawer-depth-1-2CzoWM.drawer-wide-nXbxPs .drawer-container-ssf1qn {
44
- width: 88%;
44
+ .drawer-wrapper-q0hBzd[data-open] {
45
+ transform: translateX(var(--drawer-swipe-movement-x, 0px));
45
46
  }
46
47
 
47
- .infonomic-drawer-depth-1.drawer-medium .drawer-container {
48
- width: 88%;
48
+ .drawer-wrapper-q0hBzd[data-closed], .drawer-wrapper-q0hBzd[data-starting-style] {
49
+ transform: translateX(100%);
49
50
  }
50
51
 
51
- .infonomic-drawer-depth-1.drawer-wide .drawer-container {
52
- width: 88%;
52
+ .drawer-wrapper-q0hBzd[data-swiping] {
53
+ transition: none;
53
54
  }
54
55
 
55
- .drawer-depth-2-eR43PT.drawer--tSM0mV .drawer-container-ssf1qn, .drawer-depth-2-eR43PT.drawer-wide-nXbxPs .drawer-container-ssf1qn {
56
- width: 86%;
56
+ :is(.drawer-container-ssf1qn, .infonomic-drawer-container) {
57
+ height: 100%;
57
58
  }
58
59
 
59
- .infonomic-drawer-depth-2.drawer-medium .drawer-container {
60
- width: 86%;
60
+ :is(.drawer-narrow-lsLgHp, .infonomic-drawer-narrow) {
61
+ width: calc(100% - 32px);
62
+ max-width: 400px;
61
63
  }
62
64
 
63
- .infonomic-drawer-depth-2.drawer-wide .drawer-container {
65
+ .drawer-depth-0-VYE9YM.drawer-medium-ZFbdby, .drawer-depth-0-VYE9YM.drawer-wide-nXbxPs {
66
+ width: 90%;
67
+ }
68
+
69
+ .drawer-depth-1-2CzoWM.drawer-medium-ZFbdby, .drawer-depth-1-2CzoWM.drawer-wide-nXbxPs {
70
+ width: 88%;
71
+ }
72
+
73
+ .drawer-depth-2-eR43PT.drawer-medium-ZFbdby, .drawer-depth-2-eR43PT.drawer-wide-nXbxPs {
64
74
  width: 86%;
65
75
  }
66
76
 
67
77
  @media (min-width: 48rem) {
68
- .drawer-depth-0-VYE9YM.drawer-medium-ZFbdby .drawer-container-ssf1qn {
69
- width: 600px;
70
- }
71
-
72
- .infonomic-drawer-depth-0.drawer-medium .drawer-container {
78
+ .drawer-depth-0-VYE9YM.drawer-medium-ZFbdby {
73
79
  width: 600px;
74
80
  }
75
81
 
76
- .drawer-depth-1-2CzoWM.drawer-medium-ZFbdby .drawer-container-ssf1qn {
77
- width: 580px;
78
- }
79
-
80
- .infonomic-drawer-depth-1.drawer-medium .drawer-container {
82
+ .drawer-depth-1-2CzoWM.drawer-medium-ZFbdby {
81
83
  width: 580px;
82
84
  }
83
85
 
84
- .drawer-depth-2-eR43PT.drawer--tSM0mV .drawer-container-ssf1qn {
86
+ .drawer-depth-2-eR43PT.drawer-medium-ZFbdby {
85
87
  width: 560px;
86
88
  }
87
-
88
- .infonomic-drawer-depth-2.drawer-medium .drawer-container {
89
- width: 560px;
90
- }
91
- }
92
-
93
- .drawer-narrow-lsLgHp .drawer-container-ssf1qn {
94
- width: calc(100% - 32px);
95
- max-width: 400px;
96
- }
97
-
98
- .infonomic-drawer-narrow .infonomic-drawer-container {
99
- width: calc(100% - 32px);
100
- max-width: 400px;
101
- }
102
-
103
- .drawer-container-ssf1qn[aria-hidden="true"] {
104
- opacity: 0;
105
- transform: translateX(100%);
106
- }
107
-
108
- .infonomic-drawer-container[aria-hidden="true"] {
109
- opacity: 0;
110
- transform: translateX(100%);
111
89
  }
112
90
 
113
91
  :is(.drawer-top-actions-FiHu4U, .infonomic-drawer-top-actions) {
@@ -147,17 +125,5 @@
147
125
  :is(.drawer-content-QQqzOR, .infonomic-drawer-content) {
148
126
  padding: var(--spacing-12);
149
127
  }
150
-
151
- @keyframes slideIn-dDQJvD {
152
- from {
153
- opacity: 0;
154
- transform: translateX(100%);
155
- }
156
-
157
- to {
158
- opacity: 1;
159
- transform: translateX(0);
160
- }
161
- }
162
128
  }
163
129
 
@@ -15,7 +15,7 @@ export declare function useModal(): {
15
15
  isOpen: boolean;
16
16
  setIsOpen: React.Dispatch<React.SetStateAction<boolean>>;
17
17
  };
18
- declare function Modal({ isOpen, onDismiss, closeOnOverlayClick, children, ...rest }: ModalProps): React.ReactPortal | null;
18
+ declare function Modal({ isOpen, onDismiss, closeOnOverlayClick, children, }: ModalProps): React.JSX.Element;
19
19
  declare namespace Modal {
20
20
  var displayName: string;
21
21
  var Container: ({ ref, children, className, ...rest }: import("./modal-container").ModalContainerProps & {
@@ -1 +1 @@
1
- {"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../../src/widgets/modal/modal.tsx"],"names":[],"mappings":"AAGA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAoB9B,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAC3B;AAED,eAAO,MAAM,YAAY;gBACX,MAAM,IAAI;EAClB,CAAA;AAEN,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAA;AAEvD,wBAAgB,QAAQ,IAAI;IAC1B,SAAS,EAAE,MAAM,IAAI,CAAA;IACrB,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAA;CACzD,CAiBA;AAED,iBAAS,KAAK,CAAC,EACb,MAAM,EACN,SAAS,EACT,mBAAmB,EACnB,QAAQ,EACR,GAAG,IAAI,EACR,EAAE,UAAU,GAAG,KAAK,CAAC,WAAW,GAAG,IAAI,CAkCvC;kBAxCQ,KAAK;;;WAjDK,CAAC;;;WAAnB,CAAC;;;WAAK,CAAC;;;WAAD,CAAC;;;AAkGR,OAAO,EAAE,KAAK,EAAE,CAAA"}
1
+ {"version":3,"file":"modal.d.ts","sourceRoot":"","sources":["../../../src/widgets/modal/modal.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,KAAK,MAAM,OAAO,CAAA;AAY9B,MAAM,WAAW,UAAU;IACzB,MAAM,CAAC,EAAE,OAAO,CAAA;IAChB,SAAS,CAAC,EAAE,MAAM,IAAI,CAAA;IACtB,mBAAmB,CAAC,EAAE,OAAO,CAAA;IAC7B,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAA;CAC3B;AAED,eAAO,MAAM,YAAY;gBACX,MAAM,IAAI;EAClB,CAAA;AAEN,MAAM,MAAM,aAAa,GAAG,UAAU,CAAC,OAAO,QAAQ,CAAC,CAAA;AAEvD,wBAAgB,QAAQ,IAAI;IAC1B,SAAS,EAAE,MAAM,IAAI,CAAA;IACrB,MAAM,EAAE,MAAM,IAAI,CAAA;IAClB,MAAM,EAAE,OAAO,CAAA;IACf,SAAS,EAAE,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,CAAA;CACzD,CAiBA;AAED,iBAAS,KAAK,CAAC,EACb,MAAM,EACN,SAAS,EACT,mBAAmB,EACnB,QAAQ,GACT,EAAE,UAAU,GAAG,KAAK,CAAC,GAAG,CAAC,OAAO,CA0BhC;kBA/BQ,KAAK;;;WArCN,CAAC;;;WAF2B,CAAC;;;WAAK,CAAC;;;WAAD,CAAC;;;AA+E3C,OAAO,EAAE,KAAK,EAAE,CAAA"}
@@ -1,18 +1,13 @@
1
1
  "use client";
2
2
  import { jsx, jsxs } from "react/jsx-runtime";
3
3
  import { createContext, useCallback, useState } from "react";
4
- import { AnimatePresence, LazyMotion } from "motion/react";
5
- import { createPortal } from "react-dom";
6
- import { Overlay } from "../../components/overlay/index.js";
7
- import { useMediaQuery } from "../../hooks/use-media-query.js";
8
- import { getPortalRoot } from "../../utils/getPortalRoot.js";
4
+ import { Dialog } from "@base-ui/react/dialog";
5
+ import classnames from "classnames";
6
+ import modal_module from "./modal.module.js";
9
7
  import { ModalActions } from "./modal-actions.js";
10
8
  import { ModalContainer } from "./modal-container.js";
11
9
  import { ModalContent } from "./modal-content.js";
12
10
  import { ModalHeader } from "./modal-header.js";
13
- import { ModalWrapper } from "./modal-wrapper.js";
14
- const DomMax = async ()=>await import("./motionDomMax.js").then((mod)=>mod.default);
15
- const DomAnimation = async ()=>await import("./motionDomAnimation.js").then((mod)=>mod.default);
16
11
  const ModalContext = /*#__PURE__*/ createContext({});
17
12
  function useModal() {
18
13
  const [isOpen, setIsOpen] = useState(false);
@@ -29,39 +24,31 @@ function useModal() {
29
24
  setIsOpen
30
25
  };
31
26
  }
32
- function Modal({ isOpen, onDismiss, closeOnOverlayClick, children, ...rest }) {
33
- const isMobile = useMediaQuery('(max-width: 768px)') ?? false;
34
- const handleOverlayDismiss = (e)=>{
35
- e.stopPropagation();
36
- e.preventDefault();
37
- if (true === closeOnOverlayClick) onDismiss?.();
38
- };
39
- const portal = getPortalRoot();
40
- if (false === portal) return null;
41
- return /*#__PURE__*/ createPortal(/*#__PURE__*/ jsx(ModalContext.Provider, {
27
+ function Modal({ isOpen, onDismiss, closeOnOverlayClick, children }) {
28
+ return /*#__PURE__*/ jsx(ModalContext.Provider, {
42
29
  value: {
43
30
  onDismiss
44
31
  },
45
- children: /*#__PURE__*/ jsx(LazyMotion, {
46
- features: isMobile ? DomMax : DomAnimation,
47
- children: /*#__PURE__*/ jsx(AnimatePresence, {
48
- children: true === isOpen && /*#__PURE__*/ jsxs(ModalWrapper, {
49
- transition: {
50
- duration: 0.2
51
- },
52
- onEscapeKey: handleOverlayDismiss,
53
- ...rest,
54
- children: [
55
- /*#__PURE__*/ jsx(Overlay, {
56
- onClick: handleOverlayDismiss,
57
- isUnmounting: !(isOpen ?? false)
58
- }),
59
- children
60
- ]
61
- })
32
+ children: /*#__PURE__*/ jsx(Dialog.Root, {
33
+ open: isOpen,
34
+ onOpenChange: (open)=>{
35
+ if (!open) onDismiss?.();
36
+ },
37
+ modal: true,
38
+ disablePointerDismissal: true !== closeOnOverlayClick,
39
+ children: /*#__PURE__*/ jsxs(Dialog.Portal, {
40
+ children: [
41
+ /*#__PURE__*/ jsx(Dialog.Backdrop, {
42
+ className: classnames('infonomic-modal-backdrop', modal_module.backdrop)
43
+ }),
44
+ /*#__PURE__*/ jsx(Dialog.Popup, {
45
+ className: classnames('infonomic-modal-wrapper', modal_module["modal-wrapper"]),
46
+ children: children
47
+ })
48
+ ]
62
49
  })
63
50
  })
64
- }), portal);
51
+ });
65
52
  }
66
53
  Modal.displayName = 'Modal';
67
54
  Modal.Container = ModalContainer;
@@ -1,33 +1,72 @@
1
1
  @layer infonomic-base, infonomic-utilities, infonomic-theme, infonomic-components;
2
2
 
3
3
  @layer infonomic-components {
4
+
5
+ /* Backdrop overlay */
6
+
7
+ .backdrop,
8
+ :global(.infonomic-modal-backdrop) {
9
+ position: fixed;
10
+ top: 0;
11
+ left: 0;
12
+ right: 0;
13
+ bottom: 0;
14
+ background-color: rgba(245, 245, 245, 0.35);
15
+ transition: opacity 200ms ease;
16
+ }
17
+
18
+ .backdrop[data-starting-style],
19
+ .backdrop[data-ending-style] {
20
+ opacity: 0;
21
+ }
22
+
23
+ :global(.dark) .backdrop,
24
+ :global([data-theme="dark"]) .backdrop,
25
+ :global(.dark .infonomic-modal-backdrop),
26
+ :global([data-theme="dark"] .infonomic-modal-backdrop) {
27
+ background-color: rgba(0, 0, 0, 0.5);
28
+ }
29
+
30
+ /* Modal wrapper / popup — the dialog surface */
31
+
4
32
  .modal-wrapper,
5
- :global(.infonomic-modal-open) {
33
+ :global(.infonomic-modal-wrapper) {
6
34
  position: fixed;
7
35
  display: flex;
8
36
  flex-direction: column;
9
- justify-content: center;
37
+ justify-content: flex-end;
10
38
  align-items: center;
11
39
  top: 0;
12
40
  left: 0;
13
41
  right: 0;
14
42
  bottom: 0;
15
- z-index: 30;
16
- opacity: 1;
43
+ transition: opacity 200ms ease;
44
+ }
45
+
46
+ .modal-wrapper[data-starting-style],
47
+ .modal-wrapper[data-ending-style] {
48
+ opacity: 0;
17
49
  }
18
50
 
51
+ @media screen and (min-width: 40rem) {
52
+
53
+ .modal-wrapper,
54
+ :global(.infonomic-modal-wrapper) {
55
+ justify-content: center;
56
+ }
57
+ }
58
+
59
+ /* Container — the visible dialog box */
60
+
19
61
  .modal-container,
20
62
  :global(.infonomic-modal-container) {
21
- position: absolute;
22
63
  display: flex;
23
64
  flex-direction: column;
24
65
  box-shadow: var(--shadow-md);
25
66
  border-radius: var(--border-radius-md);
26
- z-index: 20;
27
67
  min-height: 300px;
28
68
  max-height: 88vh;
29
69
  width: 100%;
30
- bottom: 0;
31
70
  background-color: var(--surface-panel);
32
71
  border: 1px solid var(--border-color);
33
72
  margin-left: var(--spacing-8);
@@ -35,15 +74,17 @@
35
74
  }
36
75
 
37
76
  @media screen and (min-width: 40rem) {
77
+
38
78
  .modal-container,
39
79
  :global(.infonomic-modal-container) {
40
80
  max-height: calc(100vh - 24px);
41
81
  min-height: auto;
42
- bottom: auto;
43
82
  width: auto;
44
83
  }
45
84
  }
46
85
 
86
+ /* Sub-component styles */
87
+
47
88
  .modal-header,
48
89
  :global(.infonomic-modal-header) {
49
90
  display: flex;
@@ -86,4 +127,4 @@
86
127
  padding-left: var(--spacing-16);
87
128
  padding-right: var(--spacing-16);
88
129
  }
89
- }
130
+ }
@@ -1,5 +1,6 @@
1
1
  import "./modal_module.css";
2
2
  const modal_module = {
3
+ backdrop: "backdrop-BgKon2",
3
4
  "modal-wrapper": "modal-wrapper-wF5Mv1",
4
5
  modalWrapper: "modal-wrapper-wF5Mv1",
5
6
  "modal-container": "modal-container-PPkPyj",
@@ -1,21 +1,56 @@
1
1
  @layer infonomic-base, infonomic-utilities, infonomic-theme;
2
2
 
3
3
  @layer infonomic-components {
4
- :is(.modal-wrapper-wF5Mv1, .infonomic-modal-open) {
5
- z-index: 30;
6
- opacity: 1;
4
+ :is(.backdrop-BgKon2, .infonomic-modal-backdrop) {
5
+ background-color: #f5f5f559;
6
+ transition: opacity .2s;
7
+ position: fixed;
8
+ inset: 0;
9
+ }
10
+
11
+ .backdrop-BgKon2[data-starting-style], .backdrop-BgKon2[data-ending-style] {
12
+ opacity: 0;
13
+ }
14
+
15
+ .dark .backdrop-BgKon2 {
16
+ background-color: #00000080;
17
+ }
18
+
19
+ [data-theme="dark"] .backdrop-BgKon2 {
20
+ background-color: #00000080;
21
+ }
22
+
23
+ .dark .infonomic-modal-backdrop {
24
+ background-color: #00000080;
25
+ }
26
+
27
+ [data-theme="dark"] .infonomic-modal-backdrop {
28
+ background-color: #00000080;
29
+ }
30
+
31
+ :is(.modal-wrapper-wF5Mv1, .infonomic-modal-wrapper) {
7
32
  flex-direction: column;
8
- justify-content: center;
33
+ justify-content: flex-end;
9
34
  align-items: center;
35
+ transition: opacity .2s;
10
36
  display: flex;
11
37
  position: fixed;
12
38
  inset: 0;
13
39
  }
14
40
 
41
+ .modal-wrapper-wF5Mv1[data-starting-style], .modal-wrapper-wF5Mv1[data-ending-style] {
42
+ opacity: 0;
43
+ }
44
+
45
+ @media screen and (min-width: 40rem) {
46
+ :is(.modal-wrapper-wF5Mv1, .infonomic-modal-wrapper) {
47
+ justify-content: center;
48
+ }
49
+ }
50
+
15
51
  :is(.modal-container-PPkPyj, .infonomic-modal-container) {
16
52
  box-shadow: var(--shadow-md);
17
53
  border-radius: var(--border-radius-md);
18
- z-index: 20;
19
54
  background-color: var(--surface-panel);
20
55
  border: 1px solid var(--border-color);
21
56
  width: 100%;
@@ -25,8 +60,6 @@
25
60
  margin-right: var(--spacing-8);
26
61
  flex-direction: column;
27
62
  display: flex;
28
- position: absolute;
29
- bottom: 0;
30
63
  }
31
64
 
32
65
  @media screen and (min-width: 40rem) {
@@ -34,7 +67,6 @@
34
67
  width: auto;
35
68
  min-height: auto;
36
69
  max-height: calc(100vh - 24px);
37
- bottom: auto;
38
70
  }
39
71
  }
40
72
 
package/package.json CHANGED
@@ -2,7 +2,7 @@
2
2
  "name": "@infonomic/uikit",
3
3
  "private": false,
4
4
  "license": "MIT",
5
- "version": "6.1.0",
5
+ "version": "6.2.1",
6
6
  "type": "module",
7
7
  "description": "Infonomic UI kit is a collection of reusable UI components and utilities for React and Astro.",
8
8
  "keywords": [
@@ -160,6 +160,13 @@ infonomic-components;
160
160
  border-bottom: 1px solid var(--input-variant-underlined-hover-border);
161
161
  }
162
162
 
163
+ .underlined:focus,
164
+ .underlined:active,
165
+ :global(.infonomic-input-underlined):focus,
166
+ :global(.infonomic-input-underlined):active {
167
+ outline: none;
168
+ }
169
+
163
170
  .filled,
164
171
  :global(.infonomic-input-filled) {
165
172
  background-color: var(--input-variant-filled);
@@ -1,11 +1,12 @@
1
1
  @layer infonomic-base,
2
- infonomic-functional,
3
- infonomic-utilities,
4
- infonomic-theme,
5
- infonomic-typography,
6
- infonomic-components;
2
+ infonomic-functional,
3
+ infonomic-utilities,
4
+ infonomic-theme,
5
+ infonomic-typography,
6
+ infonomic-components;
7
7
 
8
8
  @layer infonomic-components {
9
+
9
10
  .text-area,
10
11
  :global(.infonomic-text-area) {
11
12
  font-size: 1rem;
@@ -19,9 +20,14 @@
19
20
  padding-right: 0;
20
21
  }
21
22
 
22
- .outlined {
23
+ .underlined:focus,
24
+ .underlined:active,
25
+ :global(.infonomic-text-area--underlined):focus,
26
+ :global(.infonomic-text-area--underlined):active {
27
+ outline: none;
23
28
  }
24
29
 
25
- .filled {
26
- }
27
- }
30
+ .outlined {}
31
+
32
+ .filled {}
33
+ }
@@ -5,6 +5,10 @@
5
5
  use its own method to load them.
6
6
  */
7
7
 
8
+ .root {
9
+ isolation: isolate;
10
+ }
11
+
8
12
  @font-face {
9
13
  font-family: "Inter";
10
14
  src: url("/fonts/Inter/Inter-VariableFont_opsz_wght.woff2") format("woff2");
@@ -69,4 +73,4 @@
69
73
  font-weight: 100 900;
70
74
  font-style: italic;
71
75
  font-display: swap;
72
- }
76
+ }
@@ -22,7 +22,6 @@ export function DrawerContainer({
22
22
  return (
23
23
  <div
24
24
  ref={ref}
25
- role="dialog"
26
25
  className={cx('infonomic-drawer-container', styles['drawer-container'], className)}
27
26
  {...rest}
28
27
  >