react-miui 0.7.0 → 0.8.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 (146) hide show
  1. package/CHANGELOG.md +13 -0
  2. package/dist/components/layout/list/Header.d.ts +5 -1
  3. package/dist/components/layout/list/Header.d.ts.map +1 -1
  4. package/dist/components/layout/list/Header.js +6 -1
  5. package/dist/components/layout/list/Header.js.map +1 -1
  6. package/dist/components/layout/list/Item.d.ts +3 -0
  7. package/dist/components/layout/list/Item.d.ts.map +1 -1
  8. package/dist/components/layout/list/Item.js +20 -6
  9. package/dist/components/layout/list/Item.js.map +1 -1
  10. package/dist/components/layout/list/Item.module.scss +16 -1
  11. package/dist/components/layout/list/List.d.ts +6 -1
  12. package/dist/components/layout/list/List.d.ts.map +1 -1
  13. package/dist/components/layout/list/List.js +15 -1
  14. package/dist/components/layout/list/List.js.map +1 -1
  15. package/dist/components/layout/list/List.module.scss +4 -0
  16. package/dist/components/ui/button/Button.d.ts.map +1 -1
  17. package/dist/components/ui/button/Button.js +2 -2
  18. package/dist/components/ui/button/Button.js.map +1 -1
  19. package/dist/components/ui/modal/Modal.d.ts +18 -0
  20. package/dist/components/ui/modal/Modal.d.ts.map +1 -0
  21. package/dist/components/ui/modal/Modal.js +108 -0
  22. package/dist/components/ui/modal/Modal.js.map +1 -0
  23. package/dist/components/ui/modal/Modal.module.scss +92 -0
  24. package/dist/components/ui/modal/ModalButton.d.ts +8 -0
  25. package/dist/components/ui/modal/ModalButton.d.ts.map +1 -0
  26. package/dist/components/ui/modal/ModalButton.js +31 -0
  27. package/dist/components/ui/modal/ModalButton.js.map +1 -0
  28. package/dist/components/ui/modal/ModalButtons.d.ts +10 -0
  29. package/dist/components/ui/modal/ModalButtons.d.ts.map +1 -0
  30. package/dist/components/ui/modal/ModalButtons.js +15 -0
  31. package/dist/components/ui/modal/ModalButtons.js.map +1 -0
  32. package/dist/components/ui/modal/ModalButtons.module.scss +32 -0
  33. package/dist/components/ui/modal/ModalNoMargin.d.ts +6 -0
  34. package/dist/components/ui/modal/ModalNoMargin.d.ts.map +1 -0
  35. package/dist/components/ui/modal/ModalNoMargin.js +22 -0
  36. package/dist/components/ui/modal/ModalNoMargin.js.map +1 -0
  37. package/dist/components/ui/toaster/Notification.d.ts +9 -0
  38. package/dist/components/ui/toaster/Notification.d.ts.map +1 -0
  39. package/dist/components/ui/toaster/Notification.js +39 -0
  40. package/dist/components/ui/toaster/Notification.js.map +1 -0
  41. package/dist/components/ui/toaster/Toaster.d.ts +18 -0
  42. package/dist/components/ui/toaster/Toaster.d.ts.map +1 -0
  43. package/dist/components/ui/toaster/Toaster.js +79 -0
  44. package/dist/components/ui/toaster/Toaster.js.map +1 -0
  45. package/dist/components/ui/toaster/Toaster.module.scss +32 -0
  46. package/dist/components/ui/toaster/types.d.ts +7 -0
  47. package/dist/components/ui/toaster/types.d.ts.map +1 -0
  48. package/dist/components/ui/toaster/types.js +3 -0
  49. package/dist/components/ui/toaster/types.js.map +1 -0
  50. package/dist/global.scss +3 -0
  51. package/dist/index.d.ts +3 -0
  52. package/dist/index.d.ts.map +1 -1
  53. package/dist/index.js +3 -0
  54. package/dist/index.js.map +1 -1
  55. package/docs/assets/js/search.js +1 -1
  56. package/docs/assets/js/search.json +1 -1
  57. package/docs/classes/ToasterProvider.html +1090 -0
  58. package/docs/enums/ICON.html +27 -8
  59. package/docs/index.html +29 -4
  60. package/docs/modules/Item.html +16 -3
  61. package/docs/modules/List.html +17 -4
  62. package/docs/modules/Modal.html +160 -0
  63. package/docs/modules/ModalButtons.html +160 -0
  64. package/docs/modules/Section.html +16 -3
  65. package/docs/modules/StickyHeader.html +17 -4
  66. package/docs/modules.html +104 -23
  67. package/docs/pages/Tutorials/Test.html +16 -3
  68. package/esm/components/layout/list/Header.d.ts +5 -1
  69. package/esm/components/layout/list/Header.d.ts.map +1 -1
  70. package/esm/components/layout/list/Header.js +6 -1
  71. package/esm/components/layout/list/Header.js.map +1 -1
  72. package/esm/components/layout/list/Item.d.ts +3 -0
  73. package/esm/components/layout/list/Item.d.ts.map +1 -1
  74. package/esm/components/layout/list/Item.js +20 -6
  75. package/esm/components/layout/list/Item.js.map +1 -1
  76. package/esm/components/layout/list/Item.module.scss +16 -1
  77. package/esm/components/layout/list/List.d.ts +6 -1
  78. package/esm/components/layout/list/List.d.ts.map +1 -1
  79. package/esm/components/layout/list/List.js +15 -1
  80. package/esm/components/layout/list/List.js.map +1 -1
  81. package/esm/components/layout/list/List.module.scss +4 -0
  82. package/esm/components/ui/button/Button.d.ts.map +1 -1
  83. package/esm/components/ui/button/Button.js +2 -2
  84. package/esm/components/ui/button/Button.js.map +1 -1
  85. package/esm/components/ui/modal/Modal.d.ts +18 -0
  86. package/esm/components/ui/modal/Modal.d.ts.map +1 -0
  87. package/esm/components/ui/modal/Modal.js +83 -0
  88. package/esm/components/ui/modal/Modal.js.map +1 -0
  89. package/esm/components/ui/modal/Modal.module.scss +92 -0
  90. package/esm/components/ui/modal/ModalButton.d.ts +8 -0
  91. package/esm/components/ui/modal/ModalButton.d.ts.map +1 -0
  92. package/esm/components/ui/modal/ModalButton.js +13 -0
  93. package/esm/components/ui/modal/ModalButton.js.map +1 -0
  94. package/esm/components/ui/modal/ModalButtons.d.ts +10 -0
  95. package/esm/components/ui/modal/ModalButtons.d.ts.map +1 -0
  96. package/esm/components/ui/modal/ModalButtons.js +9 -0
  97. package/esm/components/ui/modal/ModalButtons.js.map +1 -0
  98. package/esm/components/ui/modal/ModalButtons.module.scss +32 -0
  99. package/esm/components/ui/modal/ModalNoMargin.d.ts +6 -0
  100. package/esm/components/ui/modal/ModalNoMargin.d.ts.map +1 -0
  101. package/esm/components/ui/modal/ModalNoMargin.js +16 -0
  102. package/esm/components/ui/modal/ModalNoMargin.js.map +1 -0
  103. package/esm/components/ui/toaster/Notification.d.ts +9 -0
  104. package/esm/components/ui/toaster/Notification.d.ts.map +1 -0
  105. package/esm/components/ui/toaster/Notification.js +14 -0
  106. package/esm/components/ui/toaster/Notification.js.map +1 -0
  107. package/esm/components/ui/toaster/Toaster.d.ts +18 -0
  108. package/esm/components/ui/toaster/Toaster.d.ts.map +1 -0
  109. package/esm/components/ui/toaster/Toaster.js +74 -0
  110. package/esm/components/ui/toaster/Toaster.js.map +1 -0
  111. package/esm/components/ui/toaster/Toaster.module.scss +32 -0
  112. package/esm/components/ui/toaster/types.d.ts +7 -0
  113. package/esm/components/ui/toaster/types.d.ts.map +1 -0
  114. package/esm/components/ui/toaster/types.js +2 -0
  115. package/esm/components/ui/toaster/types.js.map +1 -0
  116. package/esm/global.scss +3 -0
  117. package/esm/index.d.ts +3 -0
  118. package/esm/index.d.ts.map +1 -1
  119. package/esm/index.js +3 -0
  120. package/esm/index.js.map +1 -1
  121. package/package.json +2 -2
  122. package/src/components/layout/list/Header.tsx +15 -2
  123. package/src/components/layout/list/Item.module.scss +16 -1
  124. package/src/components/layout/list/Item.tsx +28 -7
  125. package/src/components/layout/list/List.module.scss +4 -0
  126. package/src/components/layout/list/List.tsx +29 -2
  127. package/src/components/ui/button/Button.tsx +4 -2
  128. package/src/components/ui/modal/Modal.module.scss +92 -0
  129. package/src/components/ui/modal/Modal.tsx +136 -0
  130. package/src/components/ui/modal/ModalButton.tsx +25 -0
  131. package/src/components/ui/modal/ModalButtons.module.scss +32 -0
  132. package/src/components/ui/modal/ModalButtons.tsx +17 -0
  133. package/src/components/ui/modal/ModalNoMargin.tsx +22 -0
  134. package/src/components/ui/toaster/Notification.tsx +31 -0
  135. package/src/components/ui/toaster/Toaster.module.scss +32 -0
  136. package/src/components/ui/toaster/Toaster.tsx +101 -0
  137. package/src/components/ui/toaster/types.ts +9 -0
  138. package/src/demo/Demo.tsx +7 -4
  139. package/src/demo/Menu.module.scss +1 -0
  140. package/src/demo/components/layout/list/Inset.tsx +24 -0
  141. package/src/demo/components/layout/list/Selection.tsx +17 -0
  142. package/src/demo/components/ui/modal/Modal.tsx +110 -0
  143. package/src/demo/components/ui/toaster/Toaster.tsx +28 -0
  144. package/src/demo/componentsMap.ts +31 -0
  145. package/src/global.scss +3 -0
  146. package/src/index.ts +3 -0
@@ -3,9 +3,21 @@ import classnames from "classnames";
3
3
  import styles from "./Item.module.scss";
4
4
  import { Value } from "./Value.js";
5
5
  import { Label } from "./Label.js";
6
+ import { makeVariants } from "../../../utils/makeVariants";
7
+ import { ICON, Icon } from "../../icons/Icon";
8
+ const icon = React.createElement(Icon, { className: styles.icon, name: ICON.forward });
9
+ const noIcon = React.createElement("span", { className: styles.icon });
6
10
  const Item = (props) => {
7
- const { className, children, href, to, onClick, Link, ratio, ...restProps } = props;
11
+ const { className, children, href, to, onClick, Link, ratio, variant, selected, ...restProps } = props;
12
+ const v = makeVariants(variant);
8
13
  const cls = classnames(styles.item, className);
14
+ const innerCls = classnames(styles.content, {
15
+ [styles.inset]: v.includes("inset"),
16
+ [styles.selected]: selected,
17
+ });
18
+ const pre = typeof selected === "boolean"
19
+ ? (selected ? icon : noIcon)
20
+ : null;
9
21
  const liProps = {
10
22
  className: cls,
11
23
  };
@@ -18,7 +30,9 @@ const Item = (props) => {
18
30
  if (index in r) {
19
31
  flex = r[index];
20
32
  }
21
- return React.createElement("div", { style: { flex } }, child);
33
+ return React.createElement("div", { style: { flex } },
34
+ pre,
35
+ child);
22
36
  });
23
37
  if (to) {
24
38
  if (!Link) {
@@ -26,7 +40,7 @@ const Item = (props) => {
26
40
  }
27
41
  return React.createElement("li", { ...liProps },
28
42
  React.createElement(Link, { href: to, ...restProps },
29
- React.createElement("a", { className: styles.content }, ren)));
43
+ React.createElement("a", { className: innerCls }, ren)));
30
44
  }
31
45
  if (href) {
32
46
  const aProps = { ...restProps };
@@ -34,14 +48,14 @@ const Item = (props) => {
34
48
  aProps.onClick = onClick;
35
49
  }
36
50
  return React.createElement("li", { ...liProps },
37
- React.createElement("a", { href: href, ...aProps, className: styles.content }, ren));
51
+ React.createElement("a", { href: href, ...aProps, className: innerCls }, ren));
38
52
  }
39
53
  if (onClick) {
40
54
  return (React.createElement("li", { ...liProps },
41
- React.createElement("button", { className: classnames(styles.button, styles.content), onClick: props.onClick, ...restProps }, ren)));
55
+ React.createElement("button", { className: classnames(styles.button, innerCls), onClick: props.onClick, ...restProps }, ren)));
42
56
  }
43
57
  return React.createElement("li", { ...liProps },
44
- React.createElement("div", { ...restProps, className: styles.content }, ren));
58
+ React.createElement("div", { ...restProps, className: innerCls }, ren));
45
59
  };
46
60
  Item.Label = Label;
47
61
  Item.Value = Value;
@@ -1 +1 @@
1
- {"version":3,"file":"Item.js","sourceRoot":"","sources":["../../../../src/components/layout/list/Item.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,KAAK,EAAE,MAAM,YAAY,CAAC;AAqBnC,MAAM,IAAI,GAAoC,CAAC,KAAK,EAAE,EAAE;IACpD,MAAM,EAAE,SAAS,EAAE,QAAQ,EAAE,IAAI,EAAE,EAAE,EAAE,OAAO,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,SAAS,EAAE,GAAG,KAAK,CAAC;IACpF,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE,SAAS,CAAC,CAAC;IAE/C,MAAM,OAAO,GAAG;QACZ,SAAS,EAAE,GAAG;KACjB,CAAC;IAEF,MAAM,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;IAExC,MAAM,GAAG,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAC5D,IAAI,IAAI,GAAG,SAAS,CAAC;QACrB,IAAI,CAAC,CAAC,CAAC,MAAM,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,KAAK,EAAE;YAC5F,OAAO,KAAK,CAAC;SAChB;QACD,IAAI,KAAK,IAAI,CAAC,EAAE;YACZ,IAAI,GAAG,CAAC,CAAC,KAAK,CAAC,CAAC;SACnB;QACD,OAAO,6BAAK,KAAK,EAAE,EAAE,IAAI,EAAE,IAAG,KAAK,CAAO,CAAC;IAC/C,CAAC,CAAC,CAAC;IAEH,IAAI,EAAE,EAAE;QACJ,IAAI,CAAC,IAAI,EAAE;YACP,MAAM,IAAI,SAAS,CAAC,0CAA0C,CAAC,CAAC;SACnE;QAED,OAAO,+BAAQ,OAAO;YAAE,oBAAC,IAAI,IAAC,IAAI,EAAE,EAAE,KAAM,SAAS;gBAAE,2BAAG,SAAS,EAAE,MAAM,CAAC,OAAO,IAAG,GAAG,CAAK,CAAO,CAAK,CAAC;KAC9G;IACD,IAAI,IAAI,EAAE;QACN,MAAM,MAAM,GAAqD,EAAE,GAAG,SAAS,EAAE,CAAC;QAClF,IAAI,OAAO,EAAE;YACT,MAAM,CAAC,OAAO,GAAG,OAAO,CAAC;SAC5B;QACD,OAAO,+BAAQ,OAAO;YAAE,2BAAG,IAAI,EAAE,IAAI,KAAM,MAAM,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,IAAG,GAAG,CAAK,CAAK,CAAC;KAChG;IACD,IAAI,OAAO,EAAE;QACT,OAAO,CACH,+BAAQ,OAAO;YACX,gCAAQ,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,OAAO,EAAE,KAAK,CAAC,OAAO,KAAK,SAAS,IAC7F,GAAG,CACC,CACR,CACR,CAAC;KACL;IACD,OAAO,+BAAQ,OAAO;QAAE,gCAAS,SAAS,EAAE,SAAS,EAAE,MAAM,CAAC,OAAO,IAAG,GAAG,CAAO,CAAK,CAAC;AAC5F,CAAC,CAAC;AAEF,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AACnB,IAAI,CAAC,KAAK,GAAG,KAAK,CAAC;AAEnB,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"Item.js","sourceRoot":"","sources":["../../../../src/components/layout/list/Item.tsx"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  padding: 0;
5
5
  font-size: calc(34px / var(--ratio-font));
6
6
 
7
- &:not(:first-child) > * {
7
+ &:not(:first-child) {
8
8
  border-top: 0.37px solid var(--header-border);
9
9
  }
10
10
 
@@ -29,3 +29,18 @@
29
29
  min-height: calc(174px / var(--ratio-dimensions));
30
30
  align-items: center;
31
31
  }
32
+
33
+ .inset {
34
+ padding-left: calc(37px / var(--ratio-dimensions));
35
+ padding-right: calc(37px / var(--ratio-dimensions));
36
+ }
37
+
38
+ .icon {
39
+ width: 7px;
40
+ margin-right: 10px;
41
+ display: inline-block;
42
+ }
43
+
44
+ .selected {
45
+ color: var(--main-color);
46
+ }
@@ -1,8 +1,13 @@
1
1
  import React from "react";
2
2
  import { Header } from "./Header.js";
3
+ declare type Variant = "inset";
4
+ interface Props {
5
+ className?: string;
6
+ variant?: Variant | Variant[];
7
+ }
3
8
  interface SubComponents {
4
9
  Header: typeof Header;
5
10
  }
6
- declare const List: React.FC & SubComponents;
11
+ declare const List: React.FC<Props> & SubComponents;
7
12
  export { List };
8
13
  //# sourceMappingURL=List.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"List.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/list/List.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAGrC,UAAU,aAAa;IACnB,MAAM,EAAE,OAAO,MAAM,CAAC;CACzB;AAED,QAAA,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,GAAG,aAItB,CAAC;AAIF,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"List.d.ts","sourceRoot":"","sources":["../../../../src/components/layout/list/List.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AAKrC,aAAK,OAAO,GAAG,OAAO,CAAC;AAEvB,UAAU,KAAK;IACX,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,CAAC;CACjC;AAED,UAAU,aAAa;IACnB,MAAM,EAAE,OAAO,MAAM,CAAC;CACzB;AAED,QAAA,MAAM,IAAI,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,aAqB7B,CAAC;AAIF,OAAO,EAAE,IAAI,EAAE,CAAC"}
@@ -1,8 +1,22 @@
1
1
  import React from "react";
2
+ import classnames from "classnames";
2
3
  import { Header } from "./Header.js";
4
+ import { makeVariants } from "../../../utils/makeVariants";
5
+ import { Item } from "./Item";
3
6
  import styles from "./List.module.scss";
4
7
  const List = (props) => {
5
- return (React.createElement("ul", { className: styles.list }, props.children));
8
+ const v = makeVariants(props.variant);
9
+ const chld = React.Children.map(props.children, (child) => {
10
+ if (child && typeof child === "object" && "type" in child && (child.type === Item || child.type === Header)) {
11
+ return React.cloneElement(child, {
12
+ variant: props.variant,
13
+ });
14
+ }
15
+ return child;
16
+ });
17
+ return (React.createElement("ul", { className: classnames(styles.list, {
18
+ [styles.inset]: v.includes("inset"),
19
+ }) }, chld));
6
20
  };
7
21
  List.Header = Header;
8
22
  export { List };
@@ -1 +1 @@
1
- {"version":3,"file":"List.js","sourceRoot":"","sources":["../../../../src/components/layout/list/List.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,MAAM,MAAM,oBAAoB,CAAC;AAMxC,MAAM,IAAI,GAA6B,CAAC,KAAK,EAAE,EAAE;IAC7C,OAAO,CACH,4BAAI,SAAS,EAAE,MAAM,CAAC,IAAI,IAAG,KAAK,CAAC,QAAQ,CAAM,CACpD,CAAC;AACN,CAAC,CAAC;AAEF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AAErB,OAAO,EAAE,IAAI,EAAE,CAAC"}
1
+ {"version":3,"file":"List.js","sourceRoot":"","sources":["../../../../src/components/layout/list/List.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AACrC,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,EAAE,IAAI,EAAE,MAAM,QAAQ,CAAC;AAC9B,OAAO,MAAM,MAAM,oBAAoB,CAAC;AAaxC,MAAM,IAAI,GAAoC,CAAC,KAAK,EAAE,EAAE;IACpD,MAAM,CAAC,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAEtC,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,EAAE;QACtD,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,IAAI,KAAK,IAAI,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,IAAI,KAAK,CAAC,IAAI,KAAK,MAAM,CAAC,EAAE;YACzG,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE;gBAE7B,OAAO,EAAE,KAAK,CAAC,OAAO;aACzB,CAAC,CAAC;SACN;QACD,OAAO,KAAK,CAAC;IACjB,CAAC,CAAC,CAAC;IAEH,OAAO,CACH,4BACI,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,IAAI,EAAE;YAC/B,CAAC,MAAM,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC;SACtC,CAAC,IACJ,IAAI,CACD,CACR,CAAC;AACN,CAAC,CAAC;AAEF,IAAI,CAAC,MAAM,GAAG,MAAM,CAAC;AAErB,OAAO,EAAE,IAAI,EAAE,CAAC"}
@@ -2,3 +2,7 @@
2
2
  margin: 0 23px;
3
3
  padding: 0;
4
4
  }
5
+
6
+ .inset {
7
+ margin: 0;
8
+ }
@@ -1 +1 @@
1
- {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,UAAU,KAAK;IACX,OAAO,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAClC;AAED,QAAA,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAgB3E,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"Button.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,UAAU,KAAK;IACX,OAAO,CAAC,EAAE,QAAQ,GAAG,SAAS,CAAC;CAClC;AAED,QAAA,MAAM,MAAM,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAkB3E,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC"}
@@ -2,8 +2,8 @@ import React from "react";
2
2
  import classnames from "classnames";
3
3
  import styles from "./Button.module.scss";
4
4
  import { makeVariants } from "../../../utils/makeVariants.js";
5
- const Button = ({ className, children, ...props }) => {
6
- const variants = makeVariants(props.variant);
5
+ const Button = ({ className, children, variant, ...props }) => {
6
+ const variants = makeVariants(variant);
7
7
  const cls = classnames(styles.btn, {
8
8
  [styles["btn--inline"]]: variants.includes("inline"),
9
9
  [styles["btn--outline"]]: variants.includes("outline"),
@@ -1 +1 @@
1
- {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../../src/components/ui/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAM9D,MAAM,MAAM,GAAoE,CAAC,EAAE,SAAS,EAAE,QAAQ,EAAE,GAAG,KAAK,EAAE,EAAE,EAAE;IAClH,MAAM,QAAQ,GAAG,YAAY,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;IAE7C,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,EAAE;QAC/B,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACpD,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;KACzD,EAAE,SAAS,CAAC,CAAC;IAEd,OAAO,CACH,mCACQ,KAAK,EACT,SAAS,EAAE,GAAG,EACd,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAC1B,QAAQ,CACD,CACZ,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC"}
1
+ {"version":3,"file":"Button.js","sourceRoot":"","sources":["../../../../src/components/ui/button/Button.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,UAAU,MAAM,YAAY,CAAC;AAEpC,OAAO,MAAM,MAAM,sBAAsB,CAAC;AAC1C,OAAO,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAM9D,MAAM,MAAM,GAAoE,CAAC,EAC7E,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,EACzC,EAAE,EAAE;IACD,MAAM,QAAQ,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAEvC,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,GAAG,EAAE;QAC/B,CAAC,MAAM,CAAC,aAAa,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,QAAQ,CAAC;QACpD,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC,EAAE,QAAQ,CAAC,QAAQ,CAAC,SAAS,CAAC;KACzD,EAAE,SAAS,CAAC,CAAC;IAEd,OAAO,CACH,mCACQ,KAAK,EACT,SAAS,EAAE,GAAG,EACd,QAAQ,EAAE,KAAK,CAAC,QAAQ,IAC1B,QAAQ,CACD,CACZ,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,MAAM,EAAE,CAAC"}
@@ -0,0 +1,18 @@
1
+ import React from "react";
2
+ import { ModalNegateMargin } from "./ModalNoMargin";
3
+ declare type Variant = "bottom" | "full";
4
+ interface Props {
5
+ onOverlayClick?: (() => void) | "close" | null;
6
+ closeOnEsc?: boolean;
7
+ onClose: () => void;
8
+ isOpen: boolean;
9
+ title?: React.ReactNode;
10
+ className?: string;
11
+ variant?: Variant | Variant[];
12
+ }
13
+ interface SubComponents {
14
+ NegateMargin: typeof ModalNegateMargin;
15
+ }
16
+ declare const Modal: React.FC<Props> & SubComponents;
17
+ export { Modal };
18
+ //# sourceMappingURL=Modal.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Modal.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/modal/Modal.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAmD,MAAM,OAAO,CAAC;AAKxE,OAAO,EAAE,iBAAiB,EAAE,MAAM,iBAAiB,CAAC;AAEpD,aAAK,OAAO,GAAG,QAAQ,GAAG,MAAM,CAAC;AAEjC,UAAU,KAAK;IACX,cAAc,CAAC,EAAE,CAAC,MAAM,IAAI,CAAC,GAAG,OAAO,GAAG,IAAI,CAAC;IAC/C,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,MAAM,EAAE,OAAO,CAAC;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IACxB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,CAAC;CACjC;AAED,UAAU,aAAa;IACnB,YAAY,EAAE,OAAO,iBAAiB,CAAC;CAC1C;AAGD,QAAA,MAAM,KAAK,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,aA4G9B,CAAC;AAGF,OAAO,EAAE,KAAK,EAAE,CAAC"}
@@ -0,0 +1,83 @@
1
+ import React, { useCallback, useEffect, useRef, useState } from "react";
2
+ import classnames from "classnames";
3
+ import styles from "./Modal.module.scss";
4
+ import { makeVariants } from "../../../utils/makeVariants";
5
+ import { ModalNegateMargin } from "./ModalNoMargin";
6
+ const Modal = ({ children, onClose, isOpen, title, className, onOverlayClick = "close", closeOnEsc = true, variant, }) => {
7
+ const [isClosing, setIsClosing] = useState(false);
8
+ const [isRendered, setIsRendered] = useState(false);
9
+ const overlayRef = useRef(null);
10
+ const containerRef = useRef(null);
11
+ const v = makeVariants(variant);
12
+ useEffect(() => {
13
+ if (!isOpen || !closeOnEsc) {
14
+ return;
15
+ }
16
+ const onKeyDown = (e) => {
17
+ if (e.key === "Escape") {
18
+ onClose();
19
+ }
20
+ };
21
+ document.addEventListener("keydown", onKeyDown);
22
+ return () => {
23
+ document.removeEventListener("keydown", onKeyDown);
24
+ };
25
+ }, [isOpen, closeOnEsc]);
26
+ useEffect(() => {
27
+ if (!isOpen) {
28
+ setIsClosing(true);
29
+ return;
30
+ }
31
+ setIsRendered(true);
32
+ setIsClosing(false);
33
+ }, [isOpen]);
34
+ useEffect(() => {
35
+ if (!isClosing) {
36
+ return;
37
+ }
38
+ if (!overlayRef.current || !containerRef.current) {
39
+ return;
40
+ }
41
+ overlayRef.current.style.animation = "none";
42
+ containerRef.current.style.animation = "none";
43
+ overlayRef.current.offsetHeight;
44
+ overlayRef.current.style.removeProperty("animation");
45
+ containerRef.current.style.removeProperty("animation");
46
+ }, [isClosing]);
47
+ const titleElem = title && React.createElement("div", { className: styles.title }, title);
48
+ const handleOverlayClick = useCallback((e) => {
49
+ if (e.target !== e.currentTarget) {
50
+ return;
51
+ }
52
+ if (onOverlayClick === "close") {
53
+ onClose();
54
+ }
55
+ if (typeof onOverlayClick === "function") {
56
+ onOverlayClick();
57
+ }
58
+ }, [onOverlayClick, onClose]);
59
+ const handleAnimationEnd = useCallback(() => {
60
+ if (isOpen) {
61
+ return;
62
+ }
63
+ setIsRendered(false);
64
+ }, [isOpen]);
65
+ if (!isRendered) {
66
+ return null;
67
+ }
68
+ const overlayCls = classnames(styles.overlay, {
69
+ [styles.isClosing]: isClosing,
70
+ [styles.overlayOnBottom]: v.includes("bottom"),
71
+ });
72
+ const containerCls = classnames(styles.container, className, {
73
+ [styles.isClosing]: isClosing,
74
+ [styles.full]: v.includes("full"),
75
+ });
76
+ return (React.createElement("div", { className: overlayCls, onClick: handleOverlayClick, ref: overlayRef, onAnimationEnd: handleAnimationEnd },
77
+ React.createElement("div", { className: containerCls, ref: containerRef },
78
+ titleElem,
79
+ children)));
80
+ };
81
+ Modal.NegateMargin = ModalNegateMargin;
82
+ export { Modal };
83
+ //# sourceMappingURL=Modal.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Modal.js","sourceRoot":"","sources":["../../../../src/components/ui/modal/Modal.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,92 @@
1
+ @keyframes overlay {
2
+ from {
3
+ background: #00000000;
4
+ }
5
+
6
+ to {
7
+ background: #0000004c;
8
+ }
9
+ }
10
+
11
+ .overlay {
12
+ position: fixed;
13
+ z-index: 4;
14
+ top: 0;
15
+ bottom: 0;
16
+ left: 0;
17
+ right: 0;
18
+ display: flex;
19
+ align-items: center;
20
+ justify-content: center;
21
+ animation: overlay 300ms;
22
+ animation-fill-mode: forwards;
23
+ }
24
+
25
+ .overlayOnBottom {
26
+ align-items: flex-end;
27
+ padding-bottom: calc(24px / var(--ratio-dimensions));
28
+ }
29
+
30
+ @keyframes container {
31
+ from {
32
+ transform: translateY(30px);
33
+ opacity: 0;
34
+ }
35
+
36
+ to {
37
+ transform: translateY(0);
38
+ opacity: 1;
39
+ }
40
+ }
41
+
42
+ .container {
43
+ background: var(--modal-bg);
44
+ border-radius: calc(12px / var(--ratio-dimensions));
45
+ max-width: 333px;
46
+ width: calc(100% - 30px);
47
+ padding: 20px;
48
+ position: relative;
49
+ box-sizing: border-box;
50
+ animation: container 300ms;
51
+ animation-fill-mode: forwards;
52
+ }
53
+
54
+ .full {
55
+ width: calc(100vw - 30px);
56
+ max-width: 1000px;
57
+ }
58
+
59
+ .isClosing {
60
+ // keep this after .overlay .container to prevent overwriting
61
+ animation-direction: reverse;
62
+ }
63
+
64
+ .close {
65
+ position: absolute;
66
+ top: 20px;
67
+ right: 20px;
68
+ background: none;
69
+ border: none;
70
+ padding: 0;
71
+ margin: 0;
72
+
73
+ + .title {
74
+ margin-right: 40px;
75
+ margin-top: -4px;
76
+ }
77
+ }
78
+
79
+ .title {
80
+ font-size: calc(40px / var(--ratio-font));
81
+ text-align: center;
82
+ color: black;
83
+ margin: calc(90px / var(--ratio-dimensions)) 0;
84
+ }
85
+
86
+ .negateMargin {
87
+ margin: 0 -20px -20px;
88
+ }
89
+
90
+ .removeMargin {
91
+ margin: 0;
92
+ }
@@ -0,0 +1,8 @@
1
+ import React from "react";
2
+ declare type Variant = "main";
3
+ interface Props {
4
+ variant?: Variant | Variant[];
5
+ }
6
+ declare const ModalButton: React.FC<React.ButtonHTMLAttributes<HTMLButtonElement> & Props>;
7
+ export { ModalButton };
8
+ //# sourceMappingURL=ModalButton.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModalButton.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/modal/ModalButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAM1B,aAAK,OAAO,GAAG,MAAM,CAAC;AAEtB,UAAU,KAAK;IACX,OAAO,CAAC,EAAE,OAAO,GAAG,OAAO,EAAE,CAAC;CACjC;AAED,QAAA,MAAM,WAAW,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,oBAAoB,CAAC,iBAAiB,CAAC,GAAG,KAAK,CAUhF,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -0,0 +1,13 @@
1
+ import React from "react";
2
+ import styles from "./ModalButtons.module.scss";
3
+ import { makeVariants } from "../../../utils/makeVariants";
4
+ import classnames from "classnames";
5
+ const ModalButton = ({ className, children, variant, ...props }) => {
6
+ const v = makeVariants(variant);
7
+ const cls = classnames(styles.button, {
8
+ [styles.buttonMain]: v.includes("main"),
9
+ }, className);
10
+ return React.createElement("button", { ...props, className: cls }, children);
11
+ };
12
+ export { ModalButton };
13
+ //# sourceMappingURL=ModalButton.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModalButton.js","sourceRoot":"","sources":["../../../../src/components/ui/modal/ModalButton.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAC3D,OAAO,UAAU,MAAM,YAAY,CAAC;AAQpC,MAAM,WAAW,GAAoE,CAAC,EAClF,SAAS,EAAE,QAAQ,EAAE,OAAO,EAAE,GAAG,KAAK,EACzC,EAAE,EAAE;IACD,MAAM,CAAC,GAAG,YAAY,CAAC,OAAO,CAAC,CAAC;IAEhC,MAAM,GAAG,GAAG,UAAU,CAAC,MAAM,CAAC,MAAM,EAAE;QAClC,CAAC,MAAM,CAAC,UAAU,CAAC,EAAE,CAAC,CAAC,QAAQ,CAAC,MAAM,CAAC;KAC1C,EAAE,SAAS,CAAC,CAAC;IAEd,OAAO,mCAAY,KAAK,EAAE,SAAS,EAAE,GAAG,IAAG,QAAQ,CAAU,CAAC;AAClE,CAAC,CAAC;AAEF,OAAO,EAAE,WAAW,EAAE,CAAC"}
@@ -0,0 +1,10 @@
1
+ import React from "react";
2
+ import { ModalButton } from "./ModalButton";
3
+ interface Props {
4
+ }
5
+ interface SubComponents {
6
+ Button: typeof ModalButton;
7
+ }
8
+ declare const ModalButtons: React.FC<Props> & SubComponents;
9
+ export { ModalButtons };
10
+ //# sourceMappingURL=ModalButtons.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModalButtons.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/modal/ModalButtons.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAI5C,UAAU,KAAK;CAAG;AAElB,UAAU,aAAa;IACnB,MAAM,EAAE,OAAO,WAAW,CAAC;CAC9B;AAED,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,aAErC,CAAC;AAGF,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ import { ModalButton } from "./ModalButton";
3
+ import styles from "./ModalButtons.module.scss";
4
+ const ModalButtons = (props) => {
5
+ return React.createElement("div", { className: styles.container }, props.children);
6
+ };
7
+ ModalButtons.Button = ModalButton;
8
+ export { ModalButtons };
9
+ //# sourceMappingURL=ModalButtons.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModalButtons.js","sourceRoot":"","sources":["../../../../src/components/ui/modal/ModalButtons.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAE,WAAW,EAAE,MAAM,eAAe,CAAC;AAE5C,OAAO,MAAM,MAAM,4BAA4B,CAAC;AAQhD,MAAM,YAAY,GAAoC,CAAC,KAAK,EAAE,EAAE;IAC5D,OAAO,6BAAK,SAAS,EAAE,MAAM,CAAC,SAAS,IAAG,KAAK,CAAC,QAAQ,CAAO,CAAC;AACpE,CAAC,CAAC;AACF,YAAY,CAAC,MAAM,GAAG,WAAW,CAAC;AAElC,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,32 @@
1
+ .container {
2
+ display: flex;
3
+ margin-top: calc(100px / var(--ratio-dimensions));
4
+ margin-left: -20px;
5
+ margin-right: -20px;
6
+ margin-bottom: -20px;
7
+ }
8
+
9
+ .button {
10
+ border: none;
11
+ border-top: 1px solid var(--modal-button-border);
12
+ background: var(--modal-button-bg);
13
+ flex: 1;
14
+ height: calc(156px / var(--ratio-dimensions));
15
+ font-weight: 500;
16
+
17
+ &:not(:first-child) {
18
+ border-left: 1px solid var(--modal-button-border);
19
+ }
20
+
21
+ &:first-child {
22
+ border-bottom-left-radius: calc(12px / var(--ratio-dimensions));
23
+ }
24
+
25
+ &:last-child {
26
+ border-bottom-right-radius: calc(12px / var(--ratio-dimensions));
27
+ }
28
+ }
29
+
30
+ .buttonMain {
31
+ color: var(--main-color);
32
+ }
@@ -0,0 +1,6 @@
1
+ import React from "react";
2
+ interface Props {
3
+ }
4
+ declare const ModalNegateMargin: React.FC<Props>;
5
+ export { ModalNegateMargin };
6
+ //# sourceMappingURL=ModalNoMargin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModalNoMargin.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/modal/ModalNoMargin.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAK1B,UAAU,KAAK;CAAG;AAElB,QAAA,MAAM,iBAAiB,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAYtC,CAAC;AAEF,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,16 @@
1
+ import React from "react";
2
+ import styles from "./Modal.module.scss";
3
+ import { List } from "../../layout/list/List";
4
+ const ModalNegateMargin = (props) => {
5
+ const chld = React.Children.map(props.children, (child, index) => {
6
+ if (child && typeof child === "object" && "type" in child && child.type === List) {
7
+ return React.cloneElement(child, {
8
+ className: styles.removeMargin,
9
+ });
10
+ }
11
+ return child;
12
+ });
13
+ return React.createElement("div", { className: styles.negateMargin }, chld);
14
+ };
15
+ export { ModalNegateMargin };
16
+ //# sourceMappingURL=ModalNoMargin.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModalNoMargin.js","sourceRoot":"","sources":["../../../../src/components/ui/modal/ModalNoMargin.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,OAAO,MAAM,MAAM,qBAAqB,CAAC;AACzC,OAAO,EAAE,IAAI,EAAE,MAAM,wBAAwB,CAAC;AAI9C,MAAM,iBAAiB,GAAoB,CAAC,KAAK,EAAE,EAAE;IACjD,MAAM,IAAI,GAAG,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE;QAC7D,IAAI,KAAK,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,MAAM,IAAI,KAAK,IAAI,KAAK,CAAC,IAAI,KAAK,IAAI,EAAE;YAC9E,OAAO,KAAK,CAAC,YAAY,CAAC,KAAK,EAAE;gBAE7B,SAAS,EAAE,MAAM,CAAC,YAAY;aACjC,CAAC,CAAC;SACN;QAED,OAAO,KAAK,CAAC;IACjB,CAAC,CAAC,CAAC;IACH,OAAO,6BAAK,SAAS,EAAE,MAAM,CAAC,YAAY,IAAG,IAAI,CAAO,CAAC;AAC7D,CAAC,CAAC;AAEF,OAAO,EAAE,iBAAiB,EAAE,CAAC"}
@@ -0,0 +1,9 @@
1
+ import React from "react";
2
+ import type { Toast } from "./types";
3
+ interface Props {
4
+ toast: Toast;
5
+ onRemove: (id: Toast["id"]) => void;
6
+ }
7
+ declare const Notification: React.FC<Props>;
8
+ export { Notification };
9
+ //# sourceMappingURL=Notification.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Notification.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/toaster/Notification.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAsB,MAAM,OAAO,CAAC;AAG3C,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAGrC,UAAU,KAAK;IACX,KAAK,EAAE,KAAK,CAAC;IACb,QAAQ,EAAE,CAAC,EAAE,EAAE,KAAK,CAAC,IAAI,CAAC,KAAK,IAAI,CAAC;CACvC;AAGD,QAAA,MAAM,YAAY,EAAE,KAAK,CAAC,EAAE,CAAC,KAAK,CAgBjC,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,14 @@
1
+ import React, { useCallback } from "react";
2
+ import classnames from "classnames";
3
+ import styles from "./Toaster.module.scss";
4
+ const Notification = (props) => {
5
+ const handleRemove = useCallback(() => {
6
+ props.onRemove(props.toast.id);
7
+ }, [props.toast.id]);
8
+ return (React.createElement("div", { className: classnames(styles.toast, {
9
+ [styles.hide]: props.toast.hide,
10
+ }), key: props.toast.id, onTransitionEnd: handleRemove },
11
+ React.createElement("span", null, props.toast.text)));
12
+ };
13
+ export { Notification };
14
+ //# sourceMappingURL=Notification.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Notification.js","sourceRoot":"","sources":["../../../../src/components/ui/toaster/Notification.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,WAAW,EAAE,MAAM,OAAO,CAAC;AAC3C,OAAO,UAAU,MAAM,YAAY,CAAC;AAGpC,OAAO,MAAM,MAAM,uBAAuB,CAAC;AAQ3C,MAAM,YAAY,GAAoB,CAAC,KAAK,EAAE,EAAE;IAC5C,MAAM,YAAY,GAAG,WAAW,CAAC,GAAG,EAAE;QAClC,KAAK,CAAC,QAAQ,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC;IACnC,CAAC,EAAE,CAAC,KAAK,CAAC,KAAK,CAAC,EAAE,CAAC,CAAC,CAAC;IAErB,OAAO,CACH,6BACI,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,KAAK,EAAE;YAChC,CAAC,MAAM,CAAC,IAAI,CAAC,EAAE,KAAK,CAAC,KAAK,CAAC,IAAI;SAClC,CAAC,EACF,GAAG,EAAE,KAAK,CAAC,KAAK,CAAC,EAAE,EACnB,eAAe,EAAE,YAAY;QAE7B,kCAAO,KAAK,CAAC,KAAK,CAAC,IAAI,CAAQ,CAC7B,CACT,CAAC;AACN,CAAC,CAAC;AAEF,OAAO,EAAE,YAAY,EAAE,CAAC"}
@@ -0,0 +1,18 @@
1
+ import React from "react";
2
+ import type { Toast } from "./types";
3
+ declare type ToasterFn = (text: string) => void;
4
+ interface Props {
5
+ }
6
+ interface State {
7
+ list: Toast[];
8
+ }
9
+ declare class ToasterProvider extends React.Component<Props, State> {
10
+ constructor(props: Props, context: unknown);
11
+ private readonly _add;
12
+ private readonly _handleRemove;
13
+ private readonly _removeAllToasts;
14
+ render(): JSX.Element;
15
+ }
16
+ declare const useToaster: () => ToasterFn;
17
+ export { ToasterProvider, useToaster };
18
+ //# sourceMappingURL=Toaster.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Toaster.d.ts","sourceRoot":"","sources":["../../../../src/components/ui/toaster/Toaster.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAoC,MAAM,OAAO,CAAC;AAEzD,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAC;AAIrC,aAAK,SAAS,GAAG,CAAC,IAAI,EAAE,MAAM,KAAK,IAAI,CAAC;AASxC,UAAU,KAAK;CAAG;AAClB,UAAU,KAAK;IACX,IAAI,EAAE,KAAK,EAAE,CAAC;CACjB;AAID,cAAM,eAAgB,SAAQ,KAAK,CAAC,SAAS,CAAC,KAAK,EAAE,KAAK,CAAC;gBACpC,KAAK,EAAE,KAAK,EAAE,OAAO,EAAE,OAAO;IAQjD,OAAO,CAAC,QAAQ,CAAC,IAAI,CA6BnB;IAEF,OAAO,CAAC,QAAQ,CAAC,aAAa,CAK5B;IAEF,OAAO,CAAC,QAAQ,CAAC,gBAAgB,CAa/B;IAEK,MAAM;CAYhB;AAED,QAAA,MAAM,UAAU,iBAAmC,CAAC;AAEpD,OAAO,EAAE,eAAe,EAAE,UAAU,EAAE,CAAC"}