no-frills-ui 0.0.14-alpha.2 → 0.0.14-alpha.3

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 (246) hide show
  1. package/dist/index.js +99 -49
  2. package/dist/index.js.map +1 -1
  3. package/lib-esm/components/Accordion/Accordion.d.ts +1 -0
  4. package/lib-esm/components/Accordion/Accordion.d.ts.map +1 -0
  5. package/lib-esm/components/Accordion/Accordion.js.map +1 -1
  6. package/lib-esm/components/Accordion/AccordionStep.d.ts +1 -0
  7. package/lib-esm/components/Accordion/AccordionStep.d.ts.map +1 -0
  8. package/lib-esm/components/Accordion/AccordionStep.js.map +1 -1
  9. package/lib-esm/components/Accordion/index.d.ts +1 -0
  10. package/lib-esm/components/Accordion/index.d.ts.map +1 -0
  11. package/lib-esm/components/Accordion/index.js.map +1 -1
  12. package/lib-esm/components/Badge/Badge.d.ts +1 -0
  13. package/lib-esm/components/Badge/Badge.d.ts.map +1 -0
  14. package/lib-esm/components/Badge/Badge.js.map +1 -1
  15. package/lib-esm/components/Badge/index.d.ts +1 -0
  16. package/lib-esm/components/Badge/index.d.ts.map +1 -0
  17. package/lib-esm/components/Badge/index.js.map +1 -1
  18. package/lib-esm/components/Button/ActionButton.d.ts +1 -0
  19. package/lib-esm/components/Button/ActionButton.d.ts.map +1 -0
  20. package/lib-esm/components/Button/ActionButton.js.map +1 -1
  21. package/lib-esm/components/Button/Button.d.ts +1 -0
  22. package/lib-esm/components/Button/Button.d.ts.map +1 -0
  23. package/lib-esm/components/Button/Button.js.map +1 -1
  24. package/lib-esm/components/Button/IconButton.d.ts +1 -0
  25. package/lib-esm/components/Button/IconButton.d.ts.map +1 -0
  26. package/lib-esm/components/Button/IconButton.js.map +1 -1
  27. package/lib-esm/components/Button/LinkButton.d.ts +1 -0
  28. package/lib-esm/components/Button/LinkButton.d.ts.map +1 -0
  29. package/lib-esm/components/Button/LinkButton.js.map +1 -1
  30. package/lib-esm/components/Button/RaisedButton.d.ts +1 -0
  31. package/lib-esm/components/Button/RaisedButton.d.ts.map +1 -0
  32. package/lib-esm/components/Button/RaisedButton.js.map +1 -1
  33. package/lib-esm/components/Button/index.d.ts +1 -0
  34. package/lib-esm/components/Button/index.d.ts.map +1 -0
  35. package/lib-esm/components/Button/index.js.map +1 -1
  36. package/lib-esm/components/Card/Card.d.ts +1 -0
  37. package/lib-esm/components/Card/Card.d.ts.map +1 -0
  38. package/lib-esm/components/Card/Card.js.map +1 -1
  39. package/lib-esm/components/Card/index.d.ts +1 -0
  40. package/lib-esm/components/Card/index.d.ts.map +1 -0
  41. package/lib-esm/components/Card/index.js.map +1 -1
  42. package/lib-esm/components/Chip/Chip.d.ts +1 -0
  43. package/lib-esm/components/Chip/Chip.d.ts.map +1 -0
  44. package/lib-esm/components/Chip/Chip.js.map +1 -1
  45. package/lib-esm/components/Chip/index.d.ts +1 -0
  46. package/lib-esm/components/Chip/index.d.ts.map +1 -0
  47. package/lib-esm/components/Chip/index.js.map +1 -1
  48. package/lib-esm/components/ChipInput/ChipInput.d.ts +1 -0
  49. package/lib-esm/components/ChipInput/ChipInput.d.ts.map +1 -0
  50. package/lib-esm/components/ChipInput/ChipInput.js.map +1 -1
  51. package/lib-esm/components/ChipInput/index.d.ts +1 -0
  52. package/lib-esm/components/ChipInput/index.d.ts.map +1 -0
  53. package/lib-esm/components/ChipInput/index.js.map +1 -1
  54. package/lib-esm/components/Dialog/AlertDialog.d.ts +1 -0
  55. package/lib-esm/components/Dialog/AlertDialog.d.ts.map +1 -0
  56. package/lib-esm/components/Dialog/AlertDialog.js +1 -1
  57. package/lib-esm/components/Dialog/AlertDialog.js.map +1 -1
  58. package/lib-esm/components/Dialog/ConfirmDialog.d.ts +1 -0
  59. package/lib-esm/components/Dialog/ConfirmDialog.d.ts.map +1 -0
  60. package/lib-esm/components/Dialog/ConfirmDialog.js.map +1 -1
  61. package/lib-esm/components/Dialog/Dialog.d.ts +3 -3
  62. package/lib-esm/components/Dialog/Dialog.d.ts.map +1 -0
  63. package/lib-esm/components/Dialog/Dialog.js +17 -13
  64. package/lib-esm/components/Dialog/Dialog.js.map +1 -1
  65. package/lib-esm/components/Dialog/PromptDialog.d.ts +1 -0
  66. package/lib-esm/components/Dialog/PromptDialog.d.ts.map +1 -0
  67. package/lib-esm/components/Dialog/PromptDialog.js.map +1 -1
  68. package/lib-esm/components/Dialog/index.d.ts +1 -0
  69. package/lib-esm/components/Dialog/index.d.ts.map +1 -0
  70. package/lib-esm/components/Dialog/index.js.map +1 -1
  71. package/lib-esm/components/DragAndDrop/DragAndDrop.d.ts +1 -0
  72. package/lib-esm/components/DragAndDrop/DragAndDrop.d.ts.map +1 -0
  73. package/lib-esm/components/DragAndDrop/DragAndDrop.js.map +1 -1
  74. package/lib-esm/components/DragAndDrop/DragItem.d.ts +1 -0
  75. package/lib-esm/components/DragAndDrop/DragItem.d.ts.map +1 -0
  76. package/lib-esm/components/DragAndDrop/DragItem.js.map +1 -1
  77. package/lib-esm/components/DragAndDrop/index.d.ts +1 -0
  78. package/lib-esm/components/DragAndDrop/index.d.ts.map +1 -0
  79. package/lib-esm/components/DragAndDrop/index.js.map +1 -1
  80. package/lib-esm/components/DragAndDrop/types.d.ts +1 -0
  81. package/lib-esm/components/DragAndDrop/types.d.ts.map +1 -0
  82. package/lib-esm/components/DragAndDrop/types.js.map +1 -1
  83. package/lib-esm/components/Drawer/Drawer.d.ts +1 -0
  84. package/lib-esm/components/Drawer/Drawer.d.ts.map +1 -0
  85. package/lib-esm/components/Drawer/Drawer.js.map +1 -1
  86. package/lib-esm/components/Drawer/index.d.ts +1 -0
  87. package/lib-esm/components/Drawer/index.d.ts.map +1 -0
  88. package/lib-esm/components/Drawer/index.js.map +1 -1
  89. package/lib-esm/components/Groups/Group.d.ts +1 -0
  90. package/lib-esm/components/Groups/Group.d.ts.map +1 -0
  91. package/lib-esm/components/Groups/Group.js.map +1 -1
  92. package/lib-esm/components/Groups/GroupLabel.d.ts +1 -0
  93. package/lib-esm/components/Groups/GroupLabel.d.ts.map +1 -0
  94. package/lib-esm/components/Groups/GroupLabel.js.map +1 -1
  95. package/lib-esm/components/Groups/index.d.ts +1 -0
  96. package/lib-esm/components/Groups/index.d.ts.map +1 -0
  97. package/lib-esm/components/Groups/index.js.map +1 -1
  98. package/lib-esm/components/Input/Checkbox.d.ts +1 -0
  99. package/lib-esm/components/Input/Checkbox.d.ts.map +1 -0
  100. package/lib-esm/components/Input/Checkbox.js.map +1 -1
  101. package/lib-esm/components/Input/Dropdown.d.ts +1 -0
  102. package/lib-esm/components/Input/Dropdown.d.ts.map +1 -0
  103. package/lib-esm/components/Input/Dropdown.js.map +1 -1
  104. package/lib-esm/components/Input/Input.d.ts +1 -0
  105. package/lib-esm/components/Input/Input.d.ts.map +1 -0
  106. package/lib-esm/components/Input/Input.js.map +1 -1
  107. package/lib-esm/components/Input/Radio.d.ts +1 -0
  108. package/lib-esm/components/Input/Radio.d.ts.map +1 -0
  109. package/lib-esm/components/Input/Radio.js.map +1 -1
  110. package/lib-esm/components/Input/RadioButton.d.ts +1 -0
  111. package/lib-esm/components/Input/RadioButton.d.ts.map +1 -0
  112. package/lib-esm/components/Input/RadioButton.js.map +1 -1
  113. package/lib-esm/components/Input/Select.d.ts +1 -0
  114. package/lib-esm/components/Input/Select.d.ts.map +1 -0
  115. package/lib-esm/components/Input/Select.js.map +1 -1
  116. package/lib-esm/components/Input/TextArea.d.ts +1 -0
  117. package/lib-esm/components/Input/TextArea.d.ts.map +1 -0
  118. package/lib-esm/components/Input/TextArea.js.map +1 -1
  119. package/lib-esm/components/Input/Toggle.d.ts +1 -0
  120. package/lib-esm/components/Input/Toggle.d.ts.map +1 -0
  121. package/lib-esm/components/Input/Toggle.js.map +1 -1
  122. package/lib-esm/components/Input/index.d.ts +1 -0
  123. package/lib-esm/components/Input/index.d.ts.map +1 -0
  124. package/lib-esm/components/Input/index.js.map +1 -1
  125. package/lib-esm/components/Menu/Menu.d.ts +1 -0
  126. package/lib-esm/components/Menu/Menu.d.ts.map +1 -0
  127. package/lib-esm/components/Menu/Menu.js.map +1 -1
  128. package/lib-esm/components/Menu/MenuContext.d.ts +1 -0
  129. package/lib-esm/components/Menu/MenuContext.d.ts.map +1 -0
  130. package/lib-esm/components/Menu/MenuContext.js.map +1 -1
  131. package/lib-esm/components/Menu/MenuItem.d.ts +1 -0
  132. package/lib-esm/components/Menu/MenuItem.d.ts.map +1 -0
  133. package/lib-esm/components/Menu/MenuItem.js.map +1 -1
  134. package/lib-esm/components/Menu/index.d.ts +1 -0
  135. package/lib-esm/components/Menu/index.d.ts.map +1 -0
  136. package/lib-esm/components/Menu/index.js.map +1 -1
  137. package/lib-esm/components/Modal/Modal.d.ts +1 -0
  138. package/lib-esm/components/Modal/Modal.d.ts.map +1 -0
  139. package/lib-esm/components/Modal/Modal.js.map +1 -1
  140. package/lib-esm/components/Modal/index.d.ts +1 -0
  141. package/lib-esm/components/Modal/index.d.ts.map +1 -0
  142. package/lib-esm/components/Modal/index.js.map +1 -1
  143. package/lib-esm/components/Notification/Notification.d.ts +1 -0
  144. package/lib-esm/components/Notification/Notification.d.ts.map +1 -0
  145. package/lib-esm/components/Notification/Notification.js.map +1 -1
  146. package/lib-esm/components/Notification/NotificationManager.d.ts +1 -0
  147. package/lib-esm/components/Notification/NotificationManager.d.ts.map +1 -0
  148. package/lib-esm/components/Notification/NotificationManager.js.map +1 -1
  149. package/lib-esm/components/Notification/index.d.ts +1 -0
  150. package/lib-esm/components/Notification/index.d.ts.map +1 -0
  151. package/lib-esm/components/Notification/index.js.map +1 -1
  152. package/lib-esm/components/Notification/style.d.ts +1 -0
  153. package/lib-esm/components/Notification/style.d.ts.map +1 -0
  154. package/lib-esm/components/Notification/style.js.map +1 -1
  155. package/lib-esm/components/Notification/types.d.ts +1 -0
  156. package/lib-esm/components/Notification/types.d.ts.map +1 -0
  157. package/lib-esm/components/Notification/types.js.map +1 -1
  158. package/lib-esm/components/Popover/Popover.d.ts +1 -0
  159. package/lib-esm/components/Popover/Popover.d.ts.map +1 -0
  160. package/lib-esm/components/Popover/Popover.js.map +1 -1
  161. package/lib-esm/components/Popover/index.d.ts +1 -0
  162. package/lib-esm/components/Popover/index.d.ts.map +1 -0
  163. package/lib-esm/components/Popover/index.js.map +1 -1
  164. package/lib-esm/components/Spinner/Spinner.d.ts +1 -0
  165. package/lib-esm/components/Spinner/Spinner.d.ts.map +1 -0
  166. package/lib-esm/components/Spinner/Spinner.js.map +1 -1
  167. package/lib-esm/components/Spinner/index.d.ts +1 -0
  168. package/lib-esm/components/Spinner/index.d.ts.map +1 -0
  169. package/lib-esm/components/Spinner/index.js.map +1 -1
  170. package/lib-esm/components/Stepper/Step.d.ts +1 -0
  171. package/lib-esm/components/Stepper/Step.d.ts.map +1 -0
  172. package/lib-esm/components/Stepper/Step.js.map +1 -1
  173. package/lib-esm/components/Stepper/Stepper.d.ts +1 -0
  174. package/lib-esm/components/Stepper/Stepper.d.ts.map +1 -0
  175. package/lib-esm/components/Stepper/Stepper.js.map +1 -1
  176. package/lib-esm/components/Stepper/index.d.ts +1 -0
  177. package/lib-esm/components/Stepper/index.d.ts.map +1 -0
  178. package/lib-esm/components/Stepper/index.js.map +1 -1
  179. package/lib-esm/components/Tabs/Tab.d.ts +1 -0
  180. package/lib-esm/components/Tabs/Tab.d.ts.map +1 -0
  181. package/lib-esm/components/Tabs/Tab.js.map +1 -1
  182. package/lib-esm/components/Tabs/Tabs.d.ts +1 -0
  183. package/lib-esm/components/Tabs/Tabs.d.ts.map +1 -0
  184. package/lib-esm/components/Tabs/Tabs.js.map +1 -1
  185. package/lib-esm/components/Tabs/index.d.ts +1 -0
  186. package/lib-esm/components/Tabs/index.d.ts.map +1 -0
  187. package/lib-esm/components/Tabs/index.js.map +1 -1
  188. package/lib-esm/components/Toast/Toast.d.ts +1 -0
  189. package/lib-esm/components/Toast/Toast.d.ts.map +1 -0
  190. package/lib-esm/components/Toast/Toast.js.map +1 -1
  191. package/lib-esm/components/Toast/ToastStory.d.ts +1 -0
  192. package/lib-esm/components/Toast/ToastStory.d.ts.map +1 -0
  193. package/lib-esm/components/Toast/ToastStory.js.map +1 -1
  194. package/lib-esm/components/Toast/index.d.ts +1 -0
  195. package/lib-esm/components/Toast/index.d.ts.map +1 -0
  196. package/lib-esm/components/Toast/index.js.map +1 -1
  197. package/lib-esm/components/Tooltip/Tooltip.d.ts +1 -0
  198. package/lib-esm/components/Tooltip/Tooltip.d.ts.map +1 -0
  199. package/lib-esm/components/Tooltip/Tooltip.js.map +1 -1
  200. package/lib-esm/components/Tooltip/index.d.ts +1 -0
  201. package/lib-esm/components/Tooltip/index.d.ts.map +1 -0
  202. package/lib-esm/components/Tooltip/index.js.map +1 -1
  203. package/lib-esm/components/index.d.ts +1 -0
  204. package/lib-esm/components/index.d.ts.map +1 -0
  205. package/lib-esm/components/index.js.map +1 -1
  206. package/lib-esm/icons/CheckCircle.d.ts +1 -0
  207. package/lib-esm/icons/CheckCircle.d.ts.map +1 -0
  208. package/lib-esm/icons/CheckCircle.js.map +1 -1
  209. package/lib-esm/icons/Close.d.ts +1 -0
  210. package/lib-esm/icons/Close.d.ts.map +1 -0
  211. package/lib-esm/icons/Close.js.map +1 -1
  212. package/lib-esm/icons/DragIndicator.d.ts +1 -0
  213. package/lib-esm/icons/DragIndicator.d.ts.map +1 -0
  214. package/lib-esm/icons/DragIndicator.js.map +1 -1
  215. package/lib-esm/icons/ErrorOutline.d.ts +1 -0
  216. package/lib-esm/icons/ErrorOutline.d.ts.map +1 -0
  217. package/lib-esm/icons/ErrorOutline.js.map +1 -1
  218. package/lib-esm/icons/ExpandMore.d.ts +1 -0
  219. package/lib-esm/icons/ExpandMore.d.ts.map +1 -0
  220. package/lib-esm/icons/ExpandMore.js.map +1 -1
  221. package/lib-esm/icons/FiberManualRecord.d.ts +1 -0
  222. package/lib-esm/icons/FiberManualRecord.d.ts.map +1 -0
  223. package/lib-esm/icons/FiberManualRecord.js.map +1 -1
  224. package/lib-esm/icons/Info.d.ts +1 -0
  225. package/lib-esm/icons/Info.d.ts.map +1 -0
  226. package/lib-esm/icons/Info.js.map +1 -1
  227. package/lib-esm/icons/ReportProblem.d.ts +1 -0
  228. package/lib-esm/icons/ReportProblem.d.ts.map +1 -0
  229. package/lib-esm/icons/ReportProblem.js.map +1 -1
  230. package/lib-esm/icons/index.d.ts +1 -0
  231. package/lib-esm/icons/index.d.ts.map +1 -0
  232. package/lib-esm/icons/index.js.map +1 -1
  233. package/lib-esm/index.d.ts +1 -0
  234. package/lib-esm/index.d.ts.map +1 -0
  235. package/lib-esm/index.js.map +1 -1
  236. package/lib-esm/shared/LayerManager.d.ts +28 -1
  237. package/lib-esm/shared/LayerManager.d.ts.map +1 -0
  238. package/lib-esm/shared/LayerManager.js +82 -36
  239. package/lib-esm/shared/LayerManager.js.map +1 -1
  240. package/lib-esm/shared/constants.d.ts +1 -0
  241. package/lib-esm/shared/constants.d.ts.map +1 -0
  242. package/lib-esm/shared/constants.js.map +1 -1
  243. package/lib-esm/shared/styles.d.ts +1 -0
  244. package/lib-esm/shared/styles.d.ts.map +1 -0
  245. package/lib-esm/shared/styles.js.map +1 -1
  246. package/package.json +1 -1
@@ -1 +1 @@
1
- {"version":3,"file":"Toast.js","sourceRoot":"","sources":["../../../src/components/Toast/Toast.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAE,UAAU,EAAa,MAAM,kBAAkB,CAAC;AACzD,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAC/C,OAAO,YAAY,EAAE,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AACzE,OAAO,EAAE,IAAI,EAAE,MAAM,SAAS,CAAC;AAU/B,MAAM,CAAN,IAAY,UAMX;AAND,WAAY,UAAU;IAClB,+BAAiB,CAAA;IACjB,2BAAa,CAAA;IACb,iCAAmB,CAAA;IACnB,iCAAmB,CAAA;IACnB,+BAAiB,CAAA;AACrB,CAAC,EANW,UAAU,KAAV,UAAU,QAMrB;AAED,MAAM,kBAAkB,GAAG,CAAC,IAAgB,EAAE,EAAE;IAC5C,QAAQ,IAAI,EAAE,CAAC;QACX,KAAK,UAAU,CAAC,IAAI;YAChB,OAAO,eAAe,SAAS,CAAC,IAAI,GAAG,CAAC;QAC5C,KAAK,UAAU,CAAC,OAAO;YACnB,OAAO,kBAAkB,SAAS,CAAC,OAAO,GAAG,CAAC;QAClD,KAAK,UAAU,CAAC,OAAO;YACnB,OAAO,kBAAkB,SAAS,CAAC,OAAO,GAAG,CAAC;QAClD,KAAK,UAAU,CAAC,MAAM;YAClB,OAAO,gBAAgB,SAAS,CAAC,KAAK,GAAG,CAAC;QAC9C,KAAK,UAAU,CAAC,MAAM;YAClB,OAAO,gBAAgB,SAAS,CAAC,KAAK,GAAG,CAAC;IAClD,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,cAAc,GAAG,MAAM,CAAC,IAAI,CAAC,CAAsB;;;;wBAIjC,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;CA4BhE,CAAC;AAEF,MAAM,aAAa,GAAG,MAAM,CAAC,GAAG,CAAA;;CAE/B,CAAC;AAEF,MAAM,cAAc,GAAG,MAAM,CAAC,MAAM,CAAA;;4BAER,SAAS,CAAC,aAAa;;;;;;;;;;CAUlD,CAAC;AAEF,MAAM,gBAAgB,GAAG,IAAI,CAAC;AAE9B,MAAM,KAAK;IAMP;QAIO,WAAM,GAAG,GAAG,EAAE;YACjB,IAAI,IAAI,CAAC,KAAK,EAAE,CAAC;gBACb,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,CAAC;gBAChB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;gBAC3B,IAAI,CAAC,OAAO,GAAG,IAAI,CAAC;YACxB,CAAC;YACD,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC;YAElB,UAAU,CAAC,GAAG,EAAE;gBACZ,IAAI,CAAC,IAAI,CAAC,KAAK,EAAE,CAAC;oBACd,IAAI,CAAC,IAAI,CAAC,OAAO,EAAE,CAAC;gBACxB,CAAC;YACL,CAAC,EAAE,GAAG,CAAC,CAAC;QACZ,CAAC,CAAC;QAEF;;;;WAIG;QACI,UAAK,GAAG,GAAG,EAAE;YAChB,YAAY,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QAC/B,CAAC,CAAC;QAEF;;;;WAIG;QACI,WAAM,GAAG,CAAC,OAAqB,EAAE,EAAE,CAAC,GAAG,EAAE;YAC5C,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;gBAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;YAClB,CAAC,EAAE,OAAO,CAAC,QAAQ,IAAI,gBAAgB,CAAC,CAAC;QAC7C,CAAC,CAAC;QApCE,IAAI,CAAC,OAAO,GAAG,QAAQ,aAAR,QAAQ,uBAAR,QAAQ,CAAE,aAAa,CAAC,KAAK,CAAC,CAAC;IAClD,CAAC;IAqCM,GAAG,CAAC,OAAqB;QAC5B,MAAM,EAAE,IAAI,EAAE,UAAU,EAAE,WAAW,EAAE,QAAQ,EAAE,IAAI,GAAG,UAAU,CAAC,MAAM,EAAE,GAAG,OAAO,CAAC;QACtF,IAAI,CAAC,MAAM,EAAE,CAAC;QACd,IAAI,CAAC,KAAK,GAAG,YAAY,CAAC,WAAW,CAAC;YAClC,SAAS,EAAE,GAAG;YACd,UAAU,EAAE,KAAK;YACjB,mBAAmB,EAAE,KAAK;YAC1B,WAAW,EAAE,IAAI;YACjB,QAAQ,EAAE,cAAc,CAAC,WAAW;YACpC,SAAS,EAAE,CACP,MAAC,cAAc,oBACP,OAAO,IACX,IAAI,EAAE,IAAI,EACV,QAAQ,QACR,YAAY,EAAE,IAAI,CAAC,KAAK,EACxB,YAAY,EAAE,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,aAElC,KAAC,aAAa,cAAE,IAAI,GAAiB,EACpC,UAAU,IAAI,CACX,KAAC,cAAc,IAAC,OAAO,EAAE,WAAW,EAAE,IAAI,EAAC,QAAQ,YAC9C,UAAU,GACE,CACpB,KACY,CACpB;SACJ,CAAC,CAAC;QACH,MAAM,SAAS,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC;QAChC,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACrC,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,KAAC,SAAS,KAAG,CAAC,CAAC;QAEhC,IAAI,CAAC,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;YAC3B,IAAI,CAAC,MAAM,EAAE,CAAC;QAClB,CAAC,EAAE,QAAQ,IAAI,gBAAgB,CAAC,CAAC;IACrC,CAAC;CACJ;AAED,eAAe,IAAI,KAAK,EAAE,CAAC"}
1
+ {"version":3,"file":"Toast.js","sourceRoot":"","sources":["../../../src/components/Toast/Toast.tsx"],"names":[],"mappings":"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","sourcesContent":["import { createRoot, type Root } from 'react-dom/client';\nimport styled from '@emotion/styled';\nimport constants from '../../shared/constants';\nimport LayerManager, { LAYER_POSITION } from '../../shared/LayerManager';\nimport { Card } from '../Card';\n\nexport interface ToastOptions {\n text: string;\n buttonText?: string;\n buttonClick?: () => void;\n duration?: number;\n type?: TOAST_TYPE;\n}\n\nexport enum TOAST_TYPE {\n NORMAL = 'NORMAL',\n INFO = 'INFO',\n SUCCESS = 'SUCCESS',\n WARNING = 'WARNING',\n DANGER = 'DANGER',\n}\n\nconst getBackgroundColor = (type: TOAST_TYPE) => {\n switch (type) {\n case TOAST_TYPE.INFO:\n return `var(--info, ${constants.INFO})`;\n case TOAST_TYPE.SUCCESS:\n return `var(--success, ${constants.SUCCESS})`;\n case TOAST_TYPE.WARNING:\n return `var(--warning, ${constants.WARNING})`;\n case TOAST_TYPE.DANGER:\n return `var(--error, ${constants.ERROR})`;\n case TOAST_TYPE.NORMAL:\n return `var(--toast, ${constants.TOAST})`;\n }\n};\n\nconst ToastContainer = styled(Card)<{ type: TOAST_TYPE }>`\n box-sizing: border-box;\n border-radius: 3px;\n padding: 12px;\n background-color: ${(props) => getBackgroundColor(props.type)};\n color: #fff;\n margin: 20px;\n font-size: 14px;\n line-height: 20px;\n transform: translateY(100%);\n transition: transform 0.3s ease;\n width: 344px;\n display: flex;\n align-items: center;\n\n & svg {\n width: 20px;\n height: 20px;\n fill: currentColor;\n }\n\n @media (max-width: 480px) {\n & {\n margin: 0;\n width: 100vw;\n border-radius: 0;\n }\n }\n\n .nf-layer-enter & {\n transform: translateY(0%);\n }\n`;\n\nconst TextContainer = styled.div`\n flex: 1;\n`;\n\nconst CloseContainer = styled.button`\n background-color: transparent;\n color: var(--primary, ${constants.PRIMARY_LIGHT});\n padding: 6px 10px;\n border: none;\n border-radius: 3px;\n text-transform: uppercase;\n cursor: pointer;\n\n &:focus {\n background-color: rgba(255, 255, 255, 0.1);\n }\n`;\n\nconst DEFAULT_DURATION = 2000;\n\nclass Toast {\n private element: HTMLDivElement;\n private toast: ReturnType<typeof LayerManager.renderLayer>;\n private timeout: NodeJS.Timeout;\n private root: Root;\n\n constructor() {\n this.element = document?.createElement('div');\n }\n\n public remove = () => {\n if (this.toast) {\n this.toast[1]();\n clearTimeout(this.timeout);\n this.timeout = null;\n }\n this.toast = null;\n\n setTimeout(() => {\n if (!this.toast) {\n this.root.unmount();\n }\n }, 300);\n };\n\n /**\n * Pause toast when user is hovering over it.\n *\n * @param id\n */\n public pause = () => {\n clearTimeout(this.timeout);\n };\n\n /**\n * Restart the removal of toast.\n *\n * @param id\n */\n public resume = (options: ToastOptions) => () => {\n this.timeout = setTimeout(() => {\n this.remove();\n }, options.duration || DEFAULT_DURATION);\n };\n\n public add(options: ToastOptions) {\n const { text, buttonText, buttonClick, duration, type = TOAST_TYPE.NORMAL } = options;\n this.remove();\n this.toast = LayerManager.renderLayer({\n exitDelay: 300,\n closeOnEsc: false,\n closeOnOverlayClick: false,\n alwaysOnTop: true,\n position: LAYER_POSITION.BOTTOM_LEFT,\n component: (\n <ToastContainer\n {...options}\n type={type}\n elevated\n onMouseEnter={this.pause}\n onMouseLeave={this.resume(options)}\n >\n <TextContainer>{text}</TextContainer>\n {buttonText && (\n <CloseContainer onClick={buttonClick} type=\"button\">\n {buttonText}\n </CloseContainer>\n )}\n </ToastContainer>\n ),\n });\n const Component = this.toast[0];\n this.root = createRoot(this.element);\n this.root.render(<Component />);\n\n this.timeout = setTimeout(() => {\n this.remove();\n }, duration || DEFAULT_DURATION);\n }\n}\n\nexport default new Toast();\n"]}
@@ -25,3 +25,4 @@ export default class ToastStory extends React.Component<ToastOptions> {
25
25
  render(): React.ReactNode;
26
26
  }
27
27
  export {};
28
+ //# sourceMappingURL=ToastStory.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ToastStory.d.ts","sourceRoot":"","sources":["../../../src/components/Toast/ToastStory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAErC,KAAK,YAAY,GAAG,SAAS,CAAC,UAAU,CAAC,OAAO,UAAU,CAAC,SAAS,CAAC,CAAC;AAEtE,8DAA8D;AAC9D,MAAM,CAAC,OAAO,OAAO,UAAW,SAAQ,KAAK,CAAC,SAAS,CAAC,YAAY,CAAC;IACjE,MAAM,CAAC,SAAS;QACZ,wBAAwB;;QAExB,wDAAwD;;QAExD,6CAA6C;;QAE7C,oBAAoB;;QAQpB,yBAAyB;;QAEzB,mCAAmC;;MAErC;IAEF,MAAM,CAAC,YAAY;;;MAGjB;IAEF,MAAM,IAAI,KAAK,CAAC,SAAS;CAG5B"}
@@ -1 +1 @@
1
- {"version":3,"file":"ToastStory.js","sourceRoot":"","sources":["../../../src/components/Toast/ToastStory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAIrC,8DAA8D;AAC9D,MAAqB,UAAW,SAAQ,KAAK,CAAC,SAAuB;IA2BjE,MAAM;QACF,OAAO,IAAI,CAAC;IAChB,CAAC;;AA5BM,oBAAS,GAAG;IACf,wBAAwB;IACxB,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,UAAU;IACjC,wDAAwD;IACxD,EAAE,EAAE,SAAS,CAAC,MAAM;IACpB,6CAA6C;IAC7C,QAAQ,EAAE,SAAS,CAAC,MAAM;IAC1B,oBAAoB;IACpB,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC;QAClB,UAAU,CAAC,IAAI;QACf,UAAU,CAAC,OAAO;QAClB,UAAU,CAAC,OAAO;QAClB,UAAU,CAAC,MAAM;QACjB,UAAU,CAAC,MAAM;KACpB,CAAC;IACF,yBAAyB;IACzB,UAAU,EAAE,SAAS,CAAC,MAAM;IAC5B,mCAAmC;IACnC,WAAW,EAAE,SAAS,CAAC,IAAI;CAC9B,CAAC;AAEK,uBAAY,GAAG;IAClB,QAAQ,EAAE,IAAI;IACd,IAAI,EAAE,UAAU,CAAC,MAAM;CAC1B,CAAC;eAzBe,UAAU"}
1
+ {"version":3,"file":"ToastStory.js","sourceRoot":"","sources":["../../../src/components/Toast/ToastStory.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC;AAIrC,8DAA8D;AAC9D,MAAqB,UAAW,SAAQ,KAAK,CAAC,SAAuB;IA2BjE,MAAM;QACF,OAAO,IAAI,CAAC;IAChB,CAAC;;AA5BM,oBAAS,GAAG;IACf,wBAAwB;IACxB,IAAI,EAAE,SAAS,CAAC,MAAM,CAAC,UAAU;IACjC,wDAAwD;IACxD,EAAE,EAAE,SAAS,CAAC,MAAM;IACpB,6CAA6C;IAC7C,QAAQ,EAAE,SAAS,CAAC,MAAM;IAC1B,oBAAoB;IACpB,IAAI,EAAE,SAAS,CAAC,KAAK,CAAC;QAClB,UAAU,CAAC,IAAI;QACf,UAAU,CAAC,OAAO;QAClB,UAAU,CAAC,OAAO;QAClB,UAAU,CAAC,MAAM;QACjB,UAAU,CAAC,MAAM;KACpB,CAAC;IACF,yBAAyB;IACzB,UAAU,EAAE,SAAS,CAAC,MAAM;IAC5B,mCAAmC;IACnC,WAAW,EAAE,SAAS,CAAC,IAAI;CAC9B,CAAC;AAEK,uBAAY,GAAG;IAClB,QAAQ,EAAE,IAAI;IACd,IAAI,EAAE,UAAU,CAAC,MAAM;CAC1B,CAAC;eAzBe,UAAU","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport { TOAST_TYPE } from './Toast';\n\ntype ToastOptions = PropTypes.InferProps<typeof ToastStory.propTypes>;\n\n/** This component is only used for storybook documentation */\nexport default class ToastStory extends React.Component<ToastOptions> {\n static propTypes = {\n /** Text of the toast */\n text: PropTypes.string.isRequired,\n /** Id for the notification, helps in de-duplication. */\n id: PropTypes.string,\n /** Duration for the toast in milliseconds */\n duration: PropTypes.number,\n /** Type of toast */\n type: PropTypes.oneOf([\n TOAST_TYPE.INFO,\n TOAST_TYPE.SUCCESS,\n TOAST_TYPE.WARNING,\n TOAST_TYPE.DANGER,\n TOAST_TYPE.NORMAL,\n ]),\n /** Action button text */\n buttonText: PropTypes.string,\n /** Action button click callback */\n buttonClick: PropTypes.func,\n };\n\n static defaultProps = {\n duration: 2000,\n type: TOAST_TYPE.NORMAL,\n };\n\n render(): React.ReactNode {\n return null;\n }\n}\n"]}
@@ -1 +1,2 @@
1
1
  export { default as Toast, TOAST_TYPE } from './Toast';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Toast/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Toast/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Toast/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,UAAU,EAAE,MAAM,SAAS,CAAC","sourcesContent":["export { default as Toast, TOAST_TYPE } from './Toast';\n"]}
@@ -20,3 +20,4 @@ declare namespace Tooltip {
20
20
  }
21
21
  export default Tooltip;
22
22
  type TooltipProps = PropTypes.InferProps<typeof Tooltip.propTypes>;
23
+ //# sourceMappingURL=Tooltip.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Tooltip.d.ts","sourceRoot":"","sources":["../../../src/components/Tooltip/Tooltip.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,SAAS,MAAM,YAAY,CAAC;AAInC,oBAAY,gBAAgB;IACxB,GAAG,QAAQ;IACX,MAAM,WAAW;IACjB,IAAI,SAAS;IACb,KAAK,UAAU;CAClB;AA2DD,iBAAwB,OAAO,CAAC,KAAK,EAAE,KAAK,CAAC,iBAAiB,CAAC,YAAY,CAAC,oDAS3E;kBATuB,OAAO;;QAc3B,kCAAkC;;QAElC,8BAA8B;;;;;;;eAhBV,OAAO;AAW/B,KAAK,YAAY,GAAG,SAAS,CAAC,UAAU,CAAC,OAAO,OAAO,CAAC,SAAS,CAAC,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../../../src/components/Tooltip/Tooltip.tsx"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAE/C,MAAM,CAAN,IAAY,gBAKX;AALD,WAAY,gBAAgB;IACxB,+BAAW,CAAA;IACX,qCAAiB,CAAA;IACjB,iCAAa,CAAA;IACb,mCAAe,CAAA;AACnB,CAAC,EALW,gBAAgB,KAAhB,gBAAgB,QAK3B;AAED,MAAM,aAAa,GAAG;IAClB,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE;;;KAGxB;IACD,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE;;;KAGzB;IACD,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE;;;KAGvB;IACD,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE;;;KAG1B;CACJ,CAAC;AAEF,MAAM,kBAAkB,GAAG;IACvB,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE;;KAExB;IACD,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE;;KAEzB;IACD,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE;;KAEvB;IACD,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE;;KAE1B;CACJ,CAAC;AAEF,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAgC;;6CAEhB,SAAS,CAAC,aAAa;;;;;;;MAO9D,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC;CAC7C,CAAC;AAEF,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAgC;;;;;;cAMrD,UAAU;UACd,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC;;CAEtD,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,KAA4C;IACxE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAc,KAAK,EAAd,IAAI,UAAK,KAAK,EAAvC,wBAA+B,CAAQ,CAAC;IAE9C,OAAO,CACH,MAAC,gBAAgB,kBAAC,QAAQ,EAAE,QAAQ,IAAM,IAAI,eACzC,QAAQ,EACT,KAAC,UAAU,IAAC,QAAQ,EAAE,QAAQ,YAAG,IAAI,CAAC,WAAW,GAAc,KAChD,CACtB,CAAC;AACN,CAAC;AAID,OAAO,CAAC,SAAS,GAAG;IAChB,kCAAkC;IAClC,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU;IAC/E,8BAA8B;IAC9B,QAAQ,EAAE,SAAS,CAAC,KAAK,CAAC;QACtB,gBAAgB,CAAC,GAAG;QACpB,gBAAgB,CAAC,IAAI;QACrB,gBAAgB,CAAC,KAAK;QACtB,gBAAgB,CAAC,MAAM;KAC1B,CAAC;CACL,CAAC;AAEF,OAAO,CAAC,YAAY,GAAG;IACnB,QAAQ,EAAE,gBAAgB,CAAC,MAAM;CACpC,CAAC"}
1
+ {"version":3,"file":"Tooltip.js","sourceRoot":"","sources":["../../../src/components/Tooltip/Tooltip.tsx"],"names":[],"mappings":";;;;;;;;;;;;AACA,OAAO,SAAS,MAAM,YAAY,CAAC;AACnC,OAAO,MAAM,MAAM,iBAAiB,CAAC;AACrC,OAAO,SAAS,MAAM,wBAAwB,CAAC;AAE/C,MAAM,CAAN,IAAY,gBAKX;AALD,WAAY,gBAAgB;IACxB,+BAAW,CAAA;IACX,qCAAiB,CAAA;IACjB,iCAAa,CAAA;IACb,mCAAe,CAAA;AACnB,CAAC,EALW,gBAAgB,KAAhB,gBAAgB,QAK3B;AAED,MAAM,aAAa,GAAG;IAClB,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE;;;KAGxB;IACD,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE;;;KAGzB;IACD,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE;;;KAGvB;IACD,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE;;;KAG1B;CACJ,CAAC;AAEF,MAAM,kBAAkB,GAAG;IACvB,CAAC,gBAAgB,CAAC,IAAI,CAAC,EAAE;;KAExB;IACD,CAAC,gBAAgB,CAAC,KAAK,CAAC,EAAE;;KAEzB;IACD,CAAC,gBAAgB,CAAC,GAAG,CAAC,EAAE;;KAEvB;IACD,CAAC,gBAAgB,CAAC,MAAM,CAAC,EAAE;;KAE1B;CACJ,CAAC;AAEF,MAAM,UAAU,GAAG,MAAM,CAAC,GAAG,CAAgC;;6CAEhB,SAAS,CAAC,aAAa;;;;;;;MAO9D,CAAC,KAAK,EAAE,EAAE,CAAC,aAAa,CAAC,KAAK,CAAC,QAAQ,CAAC;CAC7C,CAAC;AAEF,MAAM,gBAAgB,GAAG,MAAM,CAAC,GAAG,CAAgC;;;;;;cAMrD,UAAU;UACd,CAAC,KAAK,EAAE,EAAE,CAAC,kBAAkB,CAAC,KAAK,CAAC,QAAQ,CAAC;;CAEtD,CAAC;AAEF,MAAM,CAAC,OAAO,UAAU,OAAO,CAAC,KAA4C;IACxE,MAAM,EAAE,QAAQ,EAAE,QAAQ,KAAc,KAAK,EAAd,IAAI,UAAK,KAAK,EAAvC,wBAA+B,CAAQ,CAAC;IAE9C,OAAO,CACH,MAAC,gBAAgB,kBAAC,QAAQ,EAAE,QAAQ,IAAM,IAAI,eACzC,QAAQ,EACT,KAAC,UAAU,IAAC,QAAQ,EAAE,QAAQ,YAAG,IAAI,CAAC,WAAW,GAAc,KAChD,CACtB,CAAC;AACN,CAAC;AAID,OAAO,CAAC,SAAS,GAAG;IAChB,kCAAkC;IAClC,WAAW,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC,SAAS,CAAC,MAAM,EAAE,SAAS,CAAC,IAAI,CAAC,CAAC,CAAC,UAAU;IAC/E,8BAA8B;IAC9B,QAAQ,EAAE,SAAS,CAAC,KAAK,CAAC;QACtB,gBAAgB,CAAC,GAAG;QACpB,gBAAgB,CAAC,IAAI;QACrB,gBAAgB,CAAC,KAAK;QACtB,gBAAgB,CAAC,MAAM;KAC1B,CAAC;CACL,CAAC;AAEF,OAAO,CAAC,YAAY,GAAG;IACnB,QAAQ,EAAE,gBAAgB,CAAC,MAAM;CACpC,CAAC","sourcesContent":["import React from 'react';\nimport PropTypes from 'prop-types';\nimport styled from '@emotion/styled';\nimport constants from '../../shared/constants';\n\nexport enum TOOLTIP_POSITION {\n TOP = 'TOP',\n BOTTOM = 'BOTTOM',\n LEFT = 'LEFT',\n RIGHT = 'RIGHT',\n}\n\nconst positionStyle = {\n [TOOLTIP_POSITION.LEFT]: `\n left: 0;\n transform: translateX(-50%) scale(0);\n `,\n [TOOLTIP_POSITION.RIGHT]: `\n right: 0;\n transform: translateX(50%) scale(0);\n `,\n [TOOLTIP_POSITION.TOP]: `\n top: 0;\n transform: translateY(-10px) scale(0);\n `,\n [TOOLTIP_POSITION.BOTTOM]: `\n bottom: 0;\n transform: translateY(10px) scale(0);\n `,\n};\n\nconst positionHoverStyle = {\n [TOOLTIP_POSITION.LEFT]: `\n transform: translateX(-100%) scale(1);\n `,\n [TOOLTIP_POSITION.RIGHT]: `\n transform: translateX(100%) scale(1);\n `,\n [TOOLTIP_POSITION.TOP]: `\n transform: translateY(-25px) scale(1);\n `,\n [TOOLTIP_POSITION.BOTTOM]: `\n transform: translateY(25px) scale(1);\n `,\n};\n\nconst TooltipDiv = styled.div<{ position: TOOLTIP_POSITION }>`\n position: absolute;\n background-color: var(--tooltip-color, ${constants.TOOLTIP_COLOR});\n padding: 5px;\n color: #fff;\n border-radius: 3px;\n transition: transform 0.3s ease;\n font-size: 12px;\n z-index: 1;\n ${(props) => positionStyle[props.position]}\n`;\n\nconst TooltipContainer = styled.div<{ position: TOOLTIP_POSITION }>`\n position: relative;\n display: inline-flex;\n justify-content: center;\n align-items: center;\n\n &:hover ${TooltipDiv} {\n ${(props) => positionHoverStyle[props.position]}\n }\n`;\n\nexport default function Tooltip(props: React.PropsWithChildren<TooltipProps>) {\n const { children, position, ...rest } = props;\n\n return (\n <TooltipContainer position={position} {...rest}>\n {children}\n <TooltipDiv position={position}>{rest.tooltipText}</TooltipDiv>\n </TooltipContainer>\n );\n}\n\ntype TooltipProps = PropTypes.InferProps<typeof Tooltip.propTypes>;\n\nTooltip.propTypes = {\n /** Text to show in the tooltip */\n tooltipText: PropTypes.oneOfType([PropTypes.string, PropTypes.node]).isRequired,\n /** Position of the tooltip */\n position: PropTypes.oneOf([\n TOOLTIP_POSITION.TOP,\n TOOLTIP_POSITION.LEFT,\n TOOLTIP_POSITION.RIGHT,\n TOOLTIP_POSITION.BOTTOM,\n ]),\n};\n\nTooltip.defaultProps = {\n position: TOOLTIP_POSITION.BOTTOM,\n};\n"]}
@@ -1 +1,2 @@
1
1
  export { default as Tooltip, TOOLTIP_POSITION } from './Tooltip';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/components/Tooltip/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Tooltip/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../../src/components/Tooltip/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,OAAO,EAAE,gBAAgB,EAAE,MAAM,WAAW,CAAC","sourcesContent":["export { default as Tooltip, TOOLTIP_POSITION } from './Tooltip';\n"]}
@@ -18,3 +18,4 @@ export * from './Stepper';
18
18
  export * from './Tabs';
19
19
  export * from './Toast';
20
20
  export * from './Tooltip';
21
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/components/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAC;AAC5B,cAAc,SAAS,CAAC;AACxB,cAAc,UAAU,CAAC;AACzB,cAAc,QAAQ,CAAC;AACvB,cAAc,QAAQ,CAAC;AACvB,cAAc,aAAa,CAAC;AAC5B,cAAc,UAAU,CAAC;AACzB,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,SAAS,CAAC;AACxB,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC;AAC/B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,WAAW,CAAC;AAC1B,cAAc,QAAQ,CAAC;AACvB,cAAc,SAAS,CAAC;AACxB,cAAc,WAAW,CAAC","sourcesContent":["export * from './Accordion';\nexport * from './Badge';\nexport * from './Button';\nexport * from './Card';\nexport * from './Chip';\nexport * from './ChipInput';\nexport * from './Dialog';\nexport * from './DragAndDrop';\nexport * from './Drawer';\nexport * from './Groups';\nexport * from './Input';\nexport * from './Menu';\nexport * from './Modal';\nexport * from './Notification';\nexport * from './Popover';\nexport * from './Spinner';\nexport * from './Stepper';\nexport * from './Tabs';\nexport * from './Toast';\nexport * from './Tooltip';\n"]}
@@ -1 +1,2 @@
1
1
  export default function CheckCircle(props: React.SVGProps<SVGSVGElement>): import("@emotion/react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=CheckCircle.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"CheckCircle.d.ts","sourceRoot":"","sources":["../../src/icons/CheckCircle.tsx"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,oDAOvE"}
@@ -1 +1 @@
1
- {"version":3,"file":"CheckCircle.js","sourceRoot":"","sources":["../../src/icons/CheckCircle.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAoC;IACpE,OAAO,CACH,6BAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,eACzE,eAAM,CAAC,EAAC,gCAAgC,EAAC,IAAI,EAAC,MAAM,GAAG,EACvD,eAAM,CAAC,EAAC,2KAA2K,GAAG,KACpL,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"CheckCircle.js","sourceRoot":"","sources":["../../src/icons/CheckCircle.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAoC;IACpE,OAAO,CACH,6BAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,eACzE,eAAM,CAAC,EAAC,gCAAgC,EAAC,IAAI,EAAC,MAAM,GAAG,EACvD,eAAM,CAAC,EAAC,2KAA2K,GAAG,KACpL,CACT,CAAC;AACN,CAAC","sourcesContent":["export default function CheckCircle(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg height=\"24\" viewBox=\"0 0 24 24\" width=\"24\" fill=\"currentColor\" {...props}>\n <path d=\"M0 0h24v24H0V0zm0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M16.59 7.58L10 14.17l-3.59-3.58L5 12l5 5 8-8zM12 2C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z\" />\n </svg>\n );\n}\n"]}
@@ -1 +1,2 @@
1
1
  export default function Close(props: React.SVGProps<SVGSVGElement>): import("@emotion/react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=Close.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Close.d.ts","sourceRoot":"","sources":["../../src/icons/Close.tsx"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,oDAOjE"}
@@ -1 +1 @@
1
- {"version":3,"file":"Close.js","sourceRoot":"","sources":["../../src/icons/Close.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,KAAoC;IAC9D,OAAO,CACH,6BAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,eACzE,eAAM,CAAC,EAAC,iBAAiB,EAAC,IAAI,EAAC,MAAM,GAAG,EACxC,eAAM,CAAC,EAAC,+GAA+G,GAAG,KACxH,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"Close.js","sourceRoot":"","sources":["../../src/icons/Close.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,KAAK,CAAC,KAAoC;IAC9D,OAAO,CACH,6BAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,eACzE,eAAM,CAAC,EAAC,iBAAiB,EAAC,IAAI,EAAC,MAAM,GAAG,EACxC,eAAM,CAAC,EAAC,+GAA+G,GAAG,KACxH,CACT,CAAC;AACN,CAAC","sourcesContent":["export default function Close(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg height=\"24\" viewBox=\"0 0 24 24\" width=\"24\" fill=\"currentColor\" {...props}>\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M19 6.41L17.59 5 12 10.59 6.41 5 5 6.41 10.59 12 5 17.59 6.41 19 12 13.41 17.59 19 19 17.59 13.41 12 19 6.41z\" />\n </svg>\n );\n}\n"]}
@@ -1 +1,2 @@
1
1
  export default function CheckCircle(props: React.SVGProps<SVGSVGElement>): import("@emotion/react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=DragIndicator.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"DragIndicator.d.ts","sourceRoot":"","sources":["../../src/icons/DragIndicator.tsx"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,oDAOvE"}
@@ -1 +1 @@
1
- {"version":3,"file":"DragIndicator.js","sourceRoot":"","sources":["../../src/icons/DragIndicator.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAoC;IACpE,OAAO,CACH,6BAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,eACzE,eAAM,CAAC,EAAC,iBAAiB,EAAC,IAAI,EAAC,MAAM,GAAG,EACxC,eAAM,CAAC,EAAC,qSAAqS,GAAG,KAC9S,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"DragIndicator.js","sourceRoot":"","sources":["../../src/icons/DragIndicator.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAoC;IACpE,OAAO,CACH,6BAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,eACzE,eAAM,CAAC,EAAC,iBAAiB,EAAC,IAAI,EAAC,MAAM,GAAG,EACxC,eAAM,CAAC,EAAC,qSAAqS,GAAG,KAC9S,CACT,CAAC;AACN,CAAC","sourcesContent":["export default function CheckCircle(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg height=\"24\" viewBox=\"0 0 24 24\" width=\"24\" fill=\"currentColor\" {...props}>\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M11 18c0 1.1-.9 2-2 2s-2-.9-2-2 .9-2 2-2 2 .9 2 2zm-2-8c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0-6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm6 4c1.1 0 2-.9 2-2s-.9-2-2-2-2 .9-2 2 .9 2 2 2zm0 2c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2zm0 6c-1.1 0-2 .9-2 2s.9 2 2 2 2-.9 2-2-.9-2-2-2z\" />\n </svg>\n );\n}\n"]}
@@ -1 +1,2 @@
1
1
  export default function CheckCircle(props: React.SVGProps<SVGSVGElement>): import("@emotion/react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=ErrorOutline.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ErrorOutline.d.ts","sourceRoot":"","sources":["../../src/icons/ErrorOutline.tsx"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,oDAMvE"}
@@ -1 +1 @@
1
- {"version":3,"file":"ErrorOutline.js","sourceRoot":"","sources":["../../src/icons/ErrorOutline.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAoC;IACpE,OAAO,CACH,4BAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,cACzE,eAAM,CAAC,EAAC,8KAA8K,GAAG,IACvL,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"ErrorOutline.js","sourceRoot":"","sources":["../../src/icons/ErrorOutline.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAoC;IACpE,OAAO,CACH,4BAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,cACzE,eAAM,CAAC,EAAC,8KAA8K,GAAG,IACvL,CACT,CAAC;AACN,CAAC","sourcesContent":["export default function CheckCircle(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg height=\"24\" viewBox=\"0 0 24 24\" width=\"24\" fill=\"currentColor\" {...props}>\n <path d=\"M11 15h2v2h-2v-2zm0-8h2v6h-2V7zm.99-5C6.47 2 2 6.48 2 12s4.47 10 9.99 10C17.52 22 22 17.52 22 12S17.52 2 11.99 2zM12 20c-4.42 0-8-3.58-8-8s3.58-8 8-8 8 3.58 8 8-3.58 8-8 8z\" />\n </svg>\n );\n}\n"]}
@@ -1 +1,2 @@
1
1
  export default function ExpandMore(props: React.SVGProps<SVGSVGElement>): import("@emotion/react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=ExpandMore.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ExpandMore.d.ts","sourceRoot":"","sources":["../../src/icons/ExpandMore.tsx"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,oDAOtE"}
@@ -1 +1 @@
1
- {"version":3,"file":"ExpandMore.js","sourceRoot":"","sources":["../../src/icons/ExpandMore.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAoC;IACnE,OAAO,CACH,6BAAK,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,eAC7E,eAAM,CAAC,EAAC,eAAe,EAAC,IAAI,EAAC,MAAM,GAAG,EACtC,eAAM,CAAC,EAAC,8CAA8C,GAAG,KACvD,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"ExpandMore.js","sourceRoot":"","sources":["../../src/icons/ExpandMore.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,KAAoC;IACnE,OAAO,CACH,6BAAK,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,MAAM,EAAC,MAAM,EAAC,MAAM,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,eAC7E,eAAM,CAAC,EAAC,eAAe,EAAC,IAAI,EAAC,MAAM,GAAG,EACtC,eAAM,CAAC,EAAC,8CAA8C,GAAG,KACvD,CACT,CAAC;AACN,CAAC","sourcesContent":["export default function ExpandMore(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg viewBox=\"0 0 24 24\" width=\"18px\" height=\"18px\" fill=\"currentColor\" {...props}>\n <path d=\"M0 0h24v24H0z\" fill=\"none\" />\n <path d=\"M16.59 8.59L12 13.17 7.41 8.59 6 10l6 6 6-6z\" />\n </svg>\n );\n}\n"]}
@@ -1 +1,2 @@
1
1
  export default function FiberManualRecord(props: React.SVGProps<SVGSVGElement>): import("@emotion/react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=FiberManualRecord.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FiberManualRecord.d.ts","sourceRoot":"","sources":["../../src/icons/FiberManualRecord.tsx"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,oDAO7E"}
@@ -1 +1 @@
1
- {"version":3,"file":"FiberManualRecord.js","sourceRoot":"","sources":["../../src/icons/FiberManualRecord.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,KAAoC;IAC1E,OAAO,CACH,6BAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,eACzE,eAAM,CAAC,EAAC,mBAAmB,EAAC,IAAI,EAAC,MAAM,GAAG,EAC1C,iBAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,GAAG,GAAG,KAC9B,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"FiberManualRecord.js","sourceRoot":"","sources":["../../src/icons/FiberManualRecord.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,iBAAiB,CAAC,KAAoC;IAC1E,OAAO,CACH,6BAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,eACzE,eAAM,CAAC,EAAC,mBAAmB,EAAC,IAAI,EAAC,MAAM,GAAG,EAC1C,iBAAQ,EAAE,EAAC,IAAI,EAAC,EAAE,EAAC,IAAI,EAAC,CAAC,EAAC,GAAG,GAAG,KAC9B,CACT,CAAC;AACN,CAAC","sourcesContent":["export default function FiberManualRecord(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg height=\"24\" viewBox=\"0 0 24 24\" width=\"24\" fill=\"currentColor\" {...props}>\n <path d=\"M24 24H0V0h24v24z\" fill=\"none\" />\n <circle cx=\"12\" cy=\"12\" r=\"8\" />\n </svg>\n );\n}\n"]}
@@ -1 +1,2 @@
1
1
  export default function CheckCircle(props: React.SVGProps<SVGSVGElement>): import("@emotion/react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=Info.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Info.d.ts","sourceRoot":"","sources":["../../src/icons/Info.tsx"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,oDAOvE"}
@@ -1 +1 @@
1
- {"version":3,"file":"Info.js","sourceRoot":"","sources":["../../src/icons/Info.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAoC;IACpE,OAAO,CACH,6BAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,eACzE,eAAM,CAAC,EAAC,iBAAiB,EAAC,IAAI,EAAC,MAAM,GAAG,EACxC,eAAM,CAAC,EAAC,sJAAsJ,GAAG,KAC/J,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"Info.js","sourceRoot":"","sources":["../../src/icons/Info.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAoC;IACpE,OAAO,CACH,6BAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,eACzE,eAAM,CAAC,EAAC,iBAAiB,EAAC,IAAI,EAAC,MAAM,GAAG,EACxC,eAAM,CAAC,EAAC,sJAAsJ,GAAG,KAC/J,CACT,CAAC;AACN,CAAC","sourcesContent":["export default function CheckCircle(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg height=\"24\" viewBox=\"0 0 24 24\" width=\"24\" fill=\"currentColor\" {...props}>\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M11 7h2v2h-2zm0 4h2v6h-2zm1-9C6.48 2 2 6.48 2 12s4.48 10 10 10 10-4.48 10-10S17.52 2 12 2zm0 18c-4.41 0-8-3.59-8-8s3.59-8 8-8 8 3.59 8 8-3.59 8-8 8z\" />\n </svg>\n );\n}\n"]}
@@ -1 +1,2 @@
1
1
  export default function CheckCircle(props: React.SVGProps<SVGSVGElement>): import("@emotion/react/jsx-runtime").JSX.Element;
2
+ //# sourceMappingURL=ReportProblem.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ReportProblem.d.ts","sourceRoot":"","sources":["../../src/icons/ReportProblem.tsx"],"names":[],"mappings":"AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAK,EAAE,KAAK,CAAC,QAAQ,CAAC,aAAa,CAAC,oDAOvE"}
@@ -1 +1 @@
1
- {"version":3,"file":"ReportProblem.js","sourceRoot":"","sources":["../../src/icons/ReportProblem.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAoC;IACpE,OAAO,CACH,6BAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,eACzE,eAAM,CAAC,EAAC,iBAAiB,EAAC,IAAI,EAAC,MAAM,GAAG,EACxC,eAAM,CAAC,EAAC,kFAAkF,GAAG,KAC3F,CACT,CAAC;AACN,CAAC"}
1
+ {"version":3,"file":"ReportProblem.js","sourceRoot":"","sources":["../../src/icons/ReportProblem.tsx"],"names":[],"mappings":";AAAA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,KAAoC;IACpE,OAAO,CACH,6BAAK,MAAM,EAAC,IAAI,EAAC,OAAO,EAAC,WAAW,EAAC,KAAK,EAAC,IAAI,EAAC,IAAI,EAAC,cAAc,IAAK,KAAK,eACzE,eAAM,CAAC,EAAC,iBAAiB,EAAC,IAAI,EAAC,MAAM,GAAG,EACxC,eAAM,CAAC,EAAC,kFAAkF,GAAG,KAC3F,CACT,CAAC;AACN,CAAC","sourcesContent":["export default function CheckCircle(props: React.SVGProps<SVGSVGElement>) {\n return (\n <svg height=\"24\" viewBox=\"0 0 24 24\" width=\"24\" fill=\"currentColor\" {...props}>\n <path d=\"M0 0h24v24H0V0z\" fill=\"none\" />\n <path d=\"M12 5.99L19.53 19H4.47L12 5.99M12 2L1 21h22L12 2zm1 14h-2v2h2v-2zm0-6h-2v4h2v-4z\" />\n </svg>\n );\n}\n"]}
@@ -6,3 +6,4 @@ export { default as Info } from './Info';
6
6
  export { default as ReportProblem } from './ReportProblem';
7
7
  export { default as ErrorOutline } from './ErrorOutline';
8
8
  export { default as DragIndicator } from './DragIndicator';
9
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/icons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/icons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/icons/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,eAAe,CAAC;AACvD,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC;AACrD,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,qBAAqB,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,KAAK,EAAE,MAAM,SAAS,CAAC;AAC3C,OAAO,EAAE,OAAO,IAAI,IAAI,EAAE,MAAM,QAAQ,CAAC;AACzC,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC3D,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,gBAAgB,CAAC;AACzD,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,iBAAiB,CAAC","sourcesContent":["export { default as CheckCircle } from './CheckCircle';\nexport { default as ExpandMore } from './ExpandMore';\nexport { default as FiberManualRecord } from './FiberManualRecord';\nexport { default as Close } from './Close';\nexport { default as Info } from './Info';\nexport { default as ReportProblem } from './ReportProblem';\nexport { default as ErrorOutline } from './ErrorOutline';\nexport { default as DragIndicator } from './DragIndicator';\n"]}
@@ -1 +1,2 @@
1
1
  export * from './components';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA,cAAc,cAAc,CAAC","sourcesContent":["export * from './components';\n"]}
@@ -36,6 +36,32 @@ interface LayerConfig {
36
36
  * This way we need not worry about the z-index and can freely keep on creating
37
37
  * new layers. The staring layer z-index is 10000. Leaving enough z-index for the
38
38
  * user if they desires so.
39
+ *
40
+ * @important Usage Pattern
41
+ * To avoid creating duplicate layers (especially in React Strict Mode or Next.js),
42
+ * always call `renderLayer` only once - either in a lifecycle method (like `componentDidUpdate`)
43
+ * or in an imperative method (like `open()`).
44
+ *
45
+ * @example
46
+ * // ❌ Don't call renderLayer in render() method
47
+ * render() {
48
+ * if (this.state.show) {
49
+ * const [Component, closeFn] = LayerManager.renderLayer({ ... }); // Creates new layer on every render
50
+ * return <Component />;
51
+ * }
52
+ * }
53
+ *
54
+ * @example
55
+ * // ✅ Do call renderLayer once in a method and store the component
56
+ * open() {
57
+ * const [Component, closeFn] = LayerManager.renderLayer({ ... });
58
+ * this.setState({ LayerComponent: Component });
59
+ * }
60
+ *
61
+ * render() {
62
+ * const { LayerComponent } = this.state;
63
+ * return LayerComponent ? <LayerComponent /> : null;
64
+ * }
39
65
  */
40
66
  declare class LayerManager {
41
67
  /** Layer stack */
@@ -61,7 +87,8 @@ declare class LayerManager {
61
87
  * Renders a layer.
62
88
  * @param config
63
89
  */
64
- renderLayer: (config: LayerConfig) => [() => React.ReactPortal, (resp?: unknown) => void];
90
+ renderLayer: (config: LayerConfig) => [() => React.ReactPortal | null, (resp?: unknown) => void];
65
91
  }
66
92
  declare const _default: LayerManager;
67
93
  export default _default;
94
+ //# sourceMappingURL=LayerManager.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LayerManager.d.ts","sourceRoot":"","sources":["../../src/shared/LayerManager.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAiC,MAAM,OAAO,CAAC;AAItD,0CAA0C;AAC1C,oBAAY,cAAc;IACtB,QAAQ,IAAA;IACR,UAAU,IAAA;IACV,SAAS,IAAA;IACT,WAAW,IAAA;IACX,aAAa,IAAA;IACb,YAAY,IAAA;IACZ,MAAM,IAAA;CACT;AAED,UAAU,WAAW;IACjB,sBAAsB;IACtB,OAAO,CAAC,EAAE,OAAO,CAAC;IAClB,0CAA0C;IAC1C,SAAS,EAAE,GAAG,CAAC,OAAO,CAAC;IACvB,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,cAAc,CAAC;IAC1B,qBAAqB;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,sCAAsC;IACtC,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,sCAAsC;IACtC,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,wCAAwC;IACxC,aAAa,CAAC,EAAE,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,KAAK,IAAI,CAAC;IACrC,wCAAwC;IACxC,WAAW,CAAC,EAAE,OAAO,CAAC;CACzB;AAgED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAmCG;AACH,cAAM,YAAY;IACd,kBAAkB;IAClB,OAAO,CAAC,MAAM,CAAe;IAC7B,gCAAgC;IAChC,OAAO,CAAC,SAAS,CAAS;IAE1B;;;OAGG;;IAcH;;;;;;;;OAQG;IACH,OAAO,CAAC,OAAO,CAeb;IAEF;;;OAGG;IACI,WAAW,WACN,WAAW,KACpB,CAAC,MAAM,KAAK,CAAC,WAAW,GAAG,IAAI,EAAE,CAAC,IAAI,CAAC,EAAE,OAAO,KAAK,IAAI,CAAC,CAmF3D;CACL;;AAGD,wBAAkC"}
@@ -1,5 +1,5 @@
1
1
  import { jsx as _jsx } from "@emotion/react/jsx-runtime";
2
- import { useEffect } from 'react';
2
+ import React, { useEffect } from 'react';
3
3
  import ReactDOM from 'react-dom';
4
4
  import styled from '@emotion/styled';
5
5
  /** Enums for layer position on screen. */
@@ -71,6 +71,32 @@ const KEY_CODES = {
71
71
  * This way we need not worry about the z-index and can freely keep on creating
72
72
  * new layers. The staring layer z-index is 10000. Leaving enough z-index for the
73
73
  * user if they desires so.
74
+ *
75
+ * @important Usage Pattern
76
+ * To avoid creating duplicate layers (especially in React Strict Mode or Next.js),
77
+ * always call `renderLayer` only once - either in a lifecycle method (like `componentDidUpdate`)
78
+ * or in an imperative method (like `open()`).
79
+ *
80
+ * @example
81
+ * // ❌ Don't call renderLayer in render() method
82
+ * render() {
83
+ * if (this.state.show) {
84
+ * const [Component, closeFn] = LayerManager.renderLayer({ ... }); // Creates new layer on every render
85
+ * return <Component />;
86
+ * }
87
+ * }
88
+ *
89
+ * @example
90
+ * // ✅ Do call renderLayer once in a method and store the component
91
+ * open() {
92
+ * const [Component, closeFn] = LayerManager.renderLayer({ ... });
93
+ * this.setState({ LayerComponent: Component });
94
+ * }
95
+ *
96
+ * render() {
97
+ * const { LayerComponent } = this.state;
98
+ * return LayerComponent ? <LayerComponent /> : null;
99
+ * }
74
100
  */
75
101
  class LayerManager {
76
102
  /**
@@ -110,59 +136,79 @@ class LayerManager {
110
136
  * @param config
111
137
  */
112
138
  this.renderLayer = (config) => {
139
+ // SSR guard
140
+ if (typeof document === 'undefined') {
141
+ return [() => null, () => { }];
142
+ }
113
143
  // Merge default config with the provided config.
114
144
  const layerConfig = Object.assign(Object.assign({}, defaultConfig), config);
115
145
  // Get the z-index for the new layer
116
146
  const currentIndex = layerConfig.alwaysOnTop ? 2147483647 : this.nextIndex++;
117
- // Prepare the div on DOM where the new layer will be mounted.
118
- const divElement = document.createElement('div');
119
- divElement.setAttribute('id', `nf-layer-manager-${currentIndex}`);
120
- document.body.appendChild(divElement);
121
- // Add layer to stack.
122
- const currentLayer = {
123
- id: `nf-layer-manager-${currentIndex}`,
124
- config: layerConfig,
125
- element: divElement,
126
- };
127
- this.layers.push(currentLayer);
128
- const overlayClickHandler = (layer) => () => {
129
- if (layer.config.closeOnOverlayClick !== false) {
147
+ // Create a unique ID for tracking this layer
148
+ const layerId = `nf-layer-manager-${currentIndex}`;
149
+ const overlayClickHandler = () => {
150
+ const layer = this.layers.find((l) => l.id === layerId);
151
+ if (layer && layer.config.closeOnOverlayClick !== false) {
130
152
  this.unmount(layer);
131
153
  }
132
154
  };
155
+ const closeFn = (resp) => {
156
+ const layer = this.layers.find((l) => l.id === layerId);
157
+ if (layer) {
158
+ this.unmount(layer, resp);
159
+ }
160
+ };
133
161
  // Return callback which will trigger the un-mount.
134
162
  return [
135
- // Render the layer and then add `nf-layer-enter` class to
136
- // the div created above.
137
- // This class will help component in triggering the entry animation.
138
- function TestLayer() {
163
+ () => {
164
+ const [divElement, setDivElement] = React.useState(null);
139
165
  useEffect(() => {
140
- // The delay is introduced to enable entry animation on Firefox.
141
- // Somehow on Firefox, useEffect is triggered before the component
142
- // is rendered it seems.
166
+ // Create the div element only once when component mounts
167
+ const div = document.createElement('div');
168
+ div.setAttribute('id', layerId);
169
+ document.body.appendChild(div);
170
+ // Add layer to stack
171
+ const currentLayer = {
172
+ id: layerId,
173
+ config: layerConfig,
174
+ element: div,
175
+ };
176
+ this.layers.push(currentLayer);
177
+ setDivElement(div);
178
+ // Add entry animation class after a short delay
143
179
  setTimeout(() => {
144
- divElement.setAttribute('class', 'nf-layer-enter');
180
+ div.setAttribute('class', 'nf-layer-enter');
145
181
  }, 10);
146
- // Cleanup function
182
+ // Cleanup function - remove div when component unmounts
147
183
  return () => {
148
- document.body.removeChild(divElement);
184
+ if (document.body.contains(div)) {
185
+ document.body.removeChild(div);
186
+ }
187
+ // Remove from layers array
188
+ const index = this.layers.findIndex((layer) => layer.id === layerId);
189
+ if (index !== -1) {
190
+ this.layers.splice(index, 1);
191
+ }
149
192
  };
150
- }, []);
151
- return ReactDOM.createPortal(_jsx(Container, Object.assign({ onClick: overlayClickHandler(currentLayer), zIndex: currentIndex }, layerConfig, { children: layerConfig.component })), divElement);
152
- },
153
- (resp) => {
154
- this.unmount(currentLayer, resp);
193
+ }, []); // Empty dependency array - run only once
194
+ if (!divElement) {
195
+ return null;
196
+ }
197
+ return ReactDOM.createPortal(_jsx(Container, Object.assign({ onClick: overlayClickHandler, zIndex: currentIndex }, layerConfig, { children: layerConfig.component })), divElement);
155
198
  },
199
+ closeFn,
156
200
  ];
157
201
  };
158
- document === null || document === void 0 ? void 0 : document.body.addEventListener('keyup', (e) => {
159
- if (this.layers.length && e.keyCode === KEY_CODES.ESC) {
160
- const lastLayer = this.layers.slice(-1)[0];
161
- if (lastLayer.config.closeOnEsc !== false) {
162
- this.unmount(lastLayer);
202
+ if (typeof document !== 'undefined') {
203
+ document.body.addEventListener('keyup', (e) => {
204
+ if (this.layers.length && e.keyCode === KEY_CODES.ESC) {
205
+ const lastLayer = this.layers.slice(-1)[0];
206
+ if (lastLayer.config.closeOnEsc !== false) {
207
+ this.unmount(lastLayer);
208
+ }
163
209
  }
164
- }
165
- });
210
+ });
211
+ }
166
212
  }
167
213
  }
168
214
  // Return the instance of the class to create a Singleton.
@@ -1 +1 @@
1
- {"version":3,"file":"LayerManager.js","sourceRoot":"","sources":["../../src/shared/LayerManager.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"LayerManager.js","sourceRoot":"","sources":["../../src/shared/LayerManager.tsx"],"names":[],"mappings":"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","sourcesContent":["import React, { ReactPortal, useEffect } from 'react';\nimport ReactDOM from 'react-dom';\nimport styled from '@emotion/styled';\n\n/** Enums for layer position on screen. */\nexport enum LAYER_POSITION {\n TOP_LEFT,\n TOP_CENTER,\n TOP_RIGHT,\n BOTTOM_LEFT,\n BOTTOM_CENTER,\n BOTTOM_RIGHT,\n DIALOG,\n}\n\ninterface LayerConfig {\n /** Show an overlay */\n overlay?: boolean;\n /** Element to render inside the layer. */\n component: JSX.Element;\n /** Position of the layer */\n position?: LAYER_POSITION;\n /** Delay for exit */\n exitDelay?: number;\n /** Close layer on `esc` key press. */\n closeOnEsc?: boolean;\n /** Close layer overlay is clicked. */\n closeOnOverlayClick?: boolean;\n /** Callback called when modal closes */\n closeCallback?: <T>(resp: T) => void;\n /** Layer is created with max z-index */\n alwaysOnTop?: boolean;\n}\n\n/** Default value of config */\nconst defaultConfig: LayerConfig = {\n closeOnEsc: true,\n overlay: false,\n position: LAYER_POSITION.TOP_LEFT,\n component: null,\n exitDelay: 0,\n closeOnOverlayClick: true,\n alwaysOnTop: false,\n};\n\n/** Metadata of each layer */\ninterface Layer {\n id: string;\n config: LayerConfig;\n element: HTMLDivElement;\n}\n\n/** Styles for each position */\nconst POSITION_STYLE = {\n [LAYER_POSITION.TOP_LEFT]: 'top: 0; left: 0;',\n [LAYER_POSITION.TOP_CENTER]: 'top: 0; left: 50%; justify-content: center;',\n [LAYER_POSITION.TOP_RIGHT]: 'top: 0; right: 0; justify-content: flex-end;',\n [LAYER_POSITION.BOTTOM_LEFT]: 'bottom: 0; left: 0;',\n [LAYER_POSITION.BOTTOM_CENTER]: 'bottom: 0; left: 50%; justify-content: center;',\n [LAYER_POSITION.BOTTOM_RIGHT]: 'bottom: 0; right: 0; justify-content: flex-end;',\n [LAYER_POSITION.DIALOG]: 'top: 0; left: 0; justify-content: center; align-items: center;',\n};\n\n/** Layer container component. */\nconst Container = styled.div<LayerConfig & { zIndex: number }>`\n position: fixed;\n display: flex;\n opacity: 0;\n transition: opacity 0.3s ease;\n ${(props) => POSITION_STYLE[props.position]}\n ${(props) =>\n props.overlay &&\n `\n width: 100%;\n height: 100vh;\n background-color: var(--backdrop-color, #2681da80);\n backdrop-filter: blur(0px);\n pointer-events: all;\n `}\n z-index: ${(props) => props.zIndex};\n\n .nf-layer-enter & {\n opacity: 1;\n ${(props) =>\n props.overlay &&\n `\n backdrop-filter: blur(3px);\n `}\n }\n`;\n\n/** Key code for different keys. */\nconst KEY_CODES = {\n ESC: 27,\n};\n\n/**\n * This is a shared helper class which manages the z-index of each layer.\n * If a component needs to be rendered in a different layer then this class\n * should be used. It internally maintains the stack of opened layer and each\n * `renderLayer` call will push a new layer in stack.\n *\n * This way we need not worry about the z-index and can freely keep on creating\n * new layers. The staring layer z-index is 10000. Leaving enough z-index for the\n * user if they desires so.\n *\n * @important Usage Pattern\n * To avoid creating duplicate layers (especially in React Strict Mode or Next.js),\n * always call `renderLayer` only once - either in a lifecycle method (like `componentDidUpdate`)\n * or in an imperative method (like `open()`).\n *\n * @example\n * // ❌ Don't call renderLayer in render() method\n * render() {\n * if (this.state.show) {\n * const [Component, closeFn] = LayerManager.renderLayer({ ... }); // Creates new layer on every render\n * return <Component />;\n * }\n * }\n *\n * @example\n * // ✅ Do call renderLayer once in a method and store the component\n * open() {\n * const [Component, closeFn] = LayerManager.renderLayer({ ... });\n * this.setState({ LayerComponent: Component });\n * }\n *\n * render() {\n * const { LayerComponent } = this.state;\n * return LayerComponent ? <LayerComponent /> : null;\n * }\n */\nclass LayerManager {\n /** Layer stack */\n private layers: Layer[] = [];\n /** z-index of the next layer */\n private nextIndex = 10000;\n\n /**\n * Constructor simply registers a event listener on body to\n * react to esc key press.\n */\n constructor() {\n if (typeof document !== 'undefined') {\n document.body.addEventListener('keyup', (e) => {\n if (this.layers.length && e.keyCode === KEY_CODES.ESC) {\n const lastLayer = this.layers.slice(-1)[0];\n if (lastLayer.config.closeOnEsc !== false) {\n this.unmount(lastLayer);\n }\n }\n });\n }\n }\n\n /**\n * Un-mounts a layer.\n *\n * It first adds a class 'nf-layer-exit' and then un-mounts the\n * layer after the `exitDelay` mentioned in the layer config.\n * This class will help component in triggering the entry animation.\n *\n * @param layer\n */\n private unmount = (layer: Layer, resp?: unknown) => {\n layer.element.setAttribute('class', 'nf-layer-exit');\n this.layers.splice(\n this.layers.findIndex((item) => item === layer),\n 1,\n );\n\n setTimeout(() => {\n try {\n layer.config.closeCallback?.(resp);\n } catch (e) {\n // Error in callback function. Ignore and proceed.\n console.warn(e.message);\n }\n }, layer.config.exitDelay);\n };\n\n /**\n * Renders a layer.\n * @param config\n */\n public renderLayer = (\n config: LayerConfig,\n ): [() => React.ReactPortal | null, (resp?: unknown) => void] => {\n // SSR guard\n if (typeof document === 'undefined') {\n return [() => null, () => {}];\n }\n\n // Merge default config with the provided config.\n const layerConfig = {\n ...defaultConfig,\n ...config,\n };\n\n // Get the z-index for the new layer\n const currentIndex = layerConfig.alwaysOnTop ? 2147483647 : this.nextIndex++;\n\n // Create a unique ID for tracking this layer\n const layerId = `nf-layer-manager-${currentIndex}`;\n\n const overlayClickHandler = () => {\n const layer = this.layers.find((l) => l.id === layerId);\n if (layer && layer.config.closeOnOverlayClick !== false) {\n this.unmount(layer);\n }\n };\n\n const closeFn = (resp?: unknown) => {\n const layer = this.layers.find((l) => l.id === layerId);\n if (layer) {\n this.unmount(layer, resp);\n }\n };\n\n // Return callback which will trigger the un-mount.\n return [\n (): ReactPortal | null => {\n const [divElement, setDivElement] = React.useState<HTMLDivElement | null>(null);\n\n useEffect(() => {\n // Create the div element only once when component mounts\n const div = document.createElement('div');\n div.setAttribute('id', layerId);\n document.body.appendChild(div);\n\n // Add layer to stack\n const currentLayer = {\n id: layerId,\n config: layerConfig,\n element: div,\n };\n this.layers.push(currentLayer);\n\n setDivElement(div);\n // Add entry animation class after a short delay\n setTimeout(() => {\n div.setAttribute('class', 'nf-layer-enter');\n }, 10);\n\n // Cleanup function - remove div when component unmounts\n return () => {\n if (document.body.contains(div)) {\n document.body.removeChild(div);\n }\n // Remove from layers array\n const index = this.layers.findIndex((layer) => layer.id === layerId);\n if (index !== -1) {\n this.layers.splice(index, 1);\n }\n };\n }, []); // Empty dependency array - run only once\n\n if (!divElement) {\n return null;\n }\n\n return ReactDOM.createPortal(\n <Container onClick={overlayClickHandler} zIndex={currentIndex} {...layerConfig}>\n {layerConfig.component}\n </Container>,\n divElement,\n );\n },\n closeFn,\n ];\n };\n}\n\n// Return the instance of the class to create a Singleton.\nexport default new LayerManager();\n"]}
@@ -25,3 +25,4 @@ declare const _default: {
25
25
  MODAL_SHADOW: string;
26
26
  };
27
27
  export default _default;
28
+ //# sourceMappingURL=constants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"constants.d.ts","sourceRoot":"","sources":["../../src/shared/constants.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,wBA0BE"}
@@ -1 +1 @@
1
- {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/shared/constants.ts"],"names":[],"mappings":"AAAA,eAAe;IACX,OAAO,EAAE,SAAS;IAClB,aAAa,EAAE,SAAS;IACxB,eAAe,EAAE,SAAS;IAC1B,cAAc,EAAE,WAAW;IAC3B,IAAI,EAAE,SAAS;IACf,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,SAAS;IAClB,aAAa,EAAE,SAAS;IACxB,OAAO,EAAE,SAAS;IAClB,aAAa,EAAE,SAAS;IACxB,KAAK,EAAE,SAAS;IAChB,WAAW,EAAE,SAAS;IACtB,YAAY,EAAE,SAAS;IACvB,KAAK,EAAE,SAAS;IAChB,aAAa,EAAE,iBAAiB;IAChC,kBAAkB,EAAE,SAAS;IAC7B,UAAU,EAAE,SAAS;IACrB,mBAAmB,EAAE,SAAS;IAC9B,eAAe,EAAE,MAAM;IACvB,UAAU,EAAE,MAAM;IAClB,QAAQ,EAAE,MAAM;IAChB,MAAM,EAAE,mEAAmE;IAC3E,YAAY,EAAE,uEAAuE;IACrF,YAAY,EACR,wGAAwG;CAC/G,CAAC"}
1
+ {"version":3,"file":"constants.js","sourceRoot":"","sources":["../../src/shared/constants.ts"],"names":[],"mappings":"AAAA,eAAe;IACX,OAAO,EAAE,SAAS;IAClB,aAAa,EAAE,SAAS;IACxB,eAAe,EAAE,SAAS;IAC1B,cAAc,EAAE,WAAW;IAC3B,IAAI,EAAE,SAAS;IACf,UAAU,EAAE,SAAS;IACrB,OAAO,EAAE,SAAS;IAClB,aAAa,EAAE,SAAS;IACxB,OAAO,EAAE,SAAS;IAClB,aAAa,EAAE,SAAS;IACxB,KAAK,EAAE,SAAS;IAChB,WAAW,EAAE,SAAS;IACtB,YAAY,EAAE,SAAS;IACvB,KAAK,EAAE,SAAS;IAChB,aAAa,EAAE,iBAAiB;IAChC,kBAAkB,EAAE,SAAS;IAC7B,UAAU,EAAE,SAAS;IACrB,mBAAmB,EAAE,SAAS;IAC9B,eAAe,EAAE,MAAM;IACvB,UAAU,EAAE,MAAM;IAClB,QAAQ,EAAE,MAAM;IAChB,MAAM,EAAE,mEAAmE;IAC3E,YAAY,EAAE,uEAAuE;IACrF,YAAY,EACR,wGAAwG;CAC/G,CAAC","sourcesContent":["export default {\n PRIMARY: '#2283d2',\n PRIMARY_LIGHT: '#64baff',\n PRIMARY_LIGHTER: '#cfe9ff',\n BACKDROP_COLOR: '#2681da80',\n INFO: '#2283d2',\n INFO_LIGHT: '#64baff',\n SUCCESS: '#22d295',\n SUCCESS_LIGHT: '#80eac6',\n WARNING: '#cc9500',\n WARNING_LIGHT: '#ffba00',\n ERROR: '#d63b3b',\n ERROR_LIGHT: '#f1a5a5',\n BORDER_COLOR: '#555555',\n TOAST: '#5f5f5f',\n TOOLTIP_COLOR: 'rgba(0,0,0,0.5)',\n BORDER_LIGHT_COLOR: '#eeeeee',\n BACKGROUND: '#ffffff',\n DISABLED_BACKGROUND: '#fafafa',\n DISABLED_BORDER: '#aaa',\n LIGHT_GREY: '#ccc',\n DISABLED: '#777',\n SHADOW: '0px 1px 3px 0px rgba(0,0,0,0.1), 0px 1px 2px 0px rgba(0,0,0,0.06)',\n HOVER_SHADOW: '0 4px 6px -1px rgba(0, 0, 0, 0.1), 0 2px 4px -1px rgba(0, 0, 0, 0.06)',\n MODAL_SHADOW:\n '0px 8px 17px 2px rgba(0,0,0,0.14), 0px 3px 14px 2px rgba(0,0,0,0.12), 0px 5px 5px -3px rgba(0,0,0,0.2)',\n};\n"]}
@@ -14,3 +14,4 @@ export declare const Footer: import("@emotion/styled").StyledComponent<{
14
14
  theme?: import("@emotion/react").Theme;
15
15
  as?: React.ElementType;
16
16
  }, import("react").DetailedHTMLProps<import("react").HTMLAttributes<HTMLDivElement>, HTMLDivElement>, {}>;
17
+ //# sourceMappingURL=styles.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../src/shared/styles.ts"],"names":[],"mappings":"AAEA,eAAO,MAAM,QAAQ;;SA0BrB,MAAO,WAAW;2GAtBjB,CAAC;AAEF,eAAO,MAAM,MAAM;;SAoBnB,MAAO,WAAW;yGAdjB,CAAC;AAEF,eAAO,MAAM,IAAI;;SAYjB,MAAO,WAAW;yGARjB,CAAC;AAEF,eAAO,MAAM,MAAM;;SAMnB,MAAO,WAAW;yGADjB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/shared/styles.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAA;;;;CAIlC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;CAM/B,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAA;;;;CAI7B,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;CAK/B,CAAC"}
1
+ {"version":3,"file":"styles.js","sourceRoot":"","sources":["../../src/shared/styles.ts"],"names":[],"mappings":"AAAA,OAAO,MAAM,MAAM,iBAAiB,CAAC;AAErC,MAAM,CAAC,MAAM,QAAQ,GAAG,MAAM,CAAC,IAAI,CAAA;;;;CAIlC,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;;CAM/B,CAAC;AAEF,MAAM,CAAC,MAAM,IAAI,GAAG,MAAM,CAAC,GAAG,CAAA;;;;CAI7B,CAAC;AAEF,MAAM,CAAC,MAAM,MAAM,GAAG,MAAM,CAAC,GAAG,CAAA;;;;;CAK/B,CAAC","sourcesContent":["import styled from '@emotion/styled';\n\nexport const Ellipsis = styled.span`\n white-space: nowrap;\n text-overflow: ellipsis;\n overflow: hidden;\n`;\n\nexport const Header = styled.div`\n padding: 10px 15px;\n line-height: 26px;\n border-bottom: 1px solid var(--border-light-color, #eeeeee);\n font-size: 16px;\n font-weight: bold;\n`;\n\nexport const Body = styled.div`\n padding: 20px 15px;\n flex: 1;\n overflow: auto;\n`;\n\nexport const Footer = styled.div`\n padding: 10px 15px;\n border-top: 1px solid var(--border-light-color, #eeeeee);\n display: flex;\n justify-content: flex-end;\n`;\n"]}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "no-frills-ui",
3
- "version": "0.0.14-alpha.2",
3
+ "version": "0.0.14-alpha.3",
4
4
  "description": "React components that are made of styled native components. Mostly!",
5
5
  "main": "dist/index.js",
6
6
  "module": "lib-esm/index.js",