@activecollab/components 1.0.93 → 1.0.96

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 (53) hide show
  1. package/dist/cjs/components/Input/Input.js +5 -2
  2. package/dist/cjs/components/Input/Input.js.map +1 -1
  3. package/dist/cjs/components/Input/Styles.js +9 -7
  4. package/dist/cjs/components/Input/Styles.js.map +1 -1
  5. package/dist/cjs/components/Textarea/Styles.js +9 -7
  6. package/dist/cjs/components/Textarea/Styles.js.map +1 -1
  7. package/dist/cjs/components/Textarea/Textarea.js +4 -1
  8. package/dist/cjs/components/Textarea/Textarea.js.map +1 -1
  9. package/dist/cjs/components/ToastMessage/ToastMessage.js +19 -9
  10. package/dist/cjs/components/ToastMessage/ToastMessage.js.map +1 -1
  11. package/dist/cjs/helpers/Portal/Portal.js +30 -3
  12. package/dist/cjs/helpers/Portal/Portal.js.map +1 -1
  13. package/dist/cjs/utils/index.js +14 -0
  14. package/dist/cjs/utils/index.js.map +1 -1
  15. package/dist/esm/components/AutoResizeTextarea/Styles.d.ts +1 -1
  16. package/dist/esm/components/AutoResizeTextarea/Styles.d.ts.map +1 -1
  17. package/dist/esm/components/ComboBox/Styles.d.ts +1 -1
  18. package/dist/esm/components/ComboBox/Styles.d.ts.map +1 -1
  19. package/dist/esm/components/Input/Input.d.ts +2 -1
  20. package/dist/esm/components/Input/Input.d.ts.map +1 -1
  21. package/dist/esm/components/Input/Input.js +5 -2
  22. package/dist/esm/components/Input/Input.js.map +1 -1
  23. package/dist/esm/components/Input/Styles.d.ts +1 -0
  24. package/dist/esm/components/Input/Styles.d.ts.map +1 -1
  25. package/dist/esm/components/Input/Styles.js +9 -7
  26. package/dist/esm/components/Input/Styles.js.map +1 -1
  27. package/dist/esm/components/Select/Styles.d.ts +1 -1
  28. package/dist/esm/components/Select/Styles.d.ts.map +1 -1
  29. package/dist/esm/components/Textarea/Styles.d.ts +1 -0
  30. package/dist/esm/components/Textarea/Styles.d.ts.map +1 -1
  31. package/dist/esm/components/Textarea/Styles.js +9 -7
  32. package/dist/esm/components/Textarea/Styles.js.map +1 -1
  33. package/dist/esm/components/Textarea/Textarea.d.ts +4 -1
  34. package/dist/esm/components/Textarea/Textarea.d.ts.map +1 -1
  35. package/dist/esm/components/Textarea/Textarea.js +4 -1
  36. package/dist/esm/components/Textarea/Textarea.js.map +1 -1
  37. package/dist/esm/components/ToastMessage/ToastMessage.d.ts +3 -6
  38. package/dist/esm/components/ToastMessage/ToastMessage.d.ts.map +1 -1
  39. package/dist/esm/components/ToastMessage/ToastMessage.js +15 -9
  40. package/dist/esm/components/ToastMessage/ToastMessage.js.map +1 -1
  41. package/dist/esm/helpers/Portal/Portal.d.ts +3 -1
  42. package/dist/esm/helpers/Portal/Portal.d.ts.map +1 -1
  43. package/dist/esm/helpers/Portal/Portal.js +17 -3
  44. package/dist/esm/helpers/Portal/Portal.js.map +1 -1
  45. package/dist/esm/utils/index.d.ts +1 -0
  46. package/dist/esm/utils/index.d.ts.map +1 -1
  47. package/dist/esm/utils/index.js +1 -0
  48. package/dist/esm/utils/index.js.map +1 -1
  49. package/dist/index.js +158 -130
  50. package/dist/index.js.map +1 -1
  51. package/dist/index.min.js +1 -1
  52. package/dist/index.min.js.map +1 -1
  53. package/package.json +1 -1
@@ -4,7 +4,7 @@ import { FontStyle } from "../FontStyle";
4
4
  export var StyledTextarea = styled.textarea.withConfig({
5
5
  displayName: "Styles__StyledTextarea",
6
6
  componentId: "sc-m6jqw8-0"
7
- })(["", " ", " ", " ", " ", " border-width:1px;border-style:solid;", " border-radius:8px;padding:4px 8px 6px 8px;height:auto;background-color:var(--input-background-color);transition:all 0.3s ease;width:360px;min-height:90px;", " ", " ", " &:active,&:focus{outline:none !important;", "}&:focus{box-shadow:none;}&::placeholder{", "}", ""], {
7
+ })(["", " ", " ", " ", " ", " border-width:1px;border-style:solid;", " border-radius:8px;padding:4px 8px 6px 8px;height:auto;background-color:var(--input-background-color);transition:all 0.3s ease;width:360px;min-height:90px;outline:none;", " ", " ", " ", " &::placeholder{", "}", ""], {
8
8
  "fontSize": "0.875rem"
9
9
  }, {
10
10
  "color": "var(--color-theme-900)"
@@ -17,17 +17,19 @@ export var StyledTextarea = styled.textarea.withConfig({
17
17
  }, {
18
18
  "borderColor": "var(--color-theme-500)"
19
19
  }, FontStyle, BoxSizingStyle, function (props) {
20
- return !props.disabled && css(["&:hover{outline:none !important;", "}"], {
20
+ return props.disabled && css(["", ""], {
21
+ "cursor": "not-allowed",
22
+ "opacity": "0.5"
23
+ });
24
+ }, function (props) {
25
+ return !props.disabled && !props.$invalid && css(["&:active,&:focus,&:hover{", "}"], {
21
26
  "borderColor": "var(--color-primary)"
22
27
  });
23
- }, {
24
- "borderColor": "var(--color-primary)"
25
28
  }, {
26
29
  "color": "var(--color-theme-transparent-500)"
27
30
  }, function (props) {
28
- return props.disabled && css(["outline:none;", " &:hover{border-color:var(--border-primary);}"], {
29
- "cursor": "not-allowed",
30
- "opacity": "0.5"
31
+ return !props.disabled && props.$invalid && css(["", ""], {
32
+ "borderColor": "var(--red-alert)"
31
33
  });
32
34
  });
33
35
  StyledTextarea.displayName = "StyledTextarea";
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Textarea/Styles.ts"],"names":["styled","css","BoxSizingStyle","FontStyle","StyledTextarea","textarea","props","disabled","displayName"],"mappings":"AAAA,OAAOA,MAAP,IAAiBC,GAAjB,QAA4B,mBAA5B;AACA,SAASC,cAAT,QAA+B,mBAA/B;AACA,SAASC,SAAT,QAA0B,cAA1B;AAOA,OAAO,IAAMC,cAAc,GAAGJ,MAAM,CAACK,QAAV;AAAA;AAAA;AAAA,mVACrB;AAAA;AAAA,CADqB,EAErB;AAAA;AAAA,CAFqB,EAGrB;AAAA;AAAA,CAHqB,EAIrB;AAAA;AAAA,CAJqB,EAKrB;AAAA;AAAA,CALqB,EAQrB;AAAA;AAAA,CARqB,EAgBvBF,SAhBuB,EAiBvBD,cAjBuB,EAmBvB,UAACI,KAAD;AAAA,SACA,CAACA,KAAK,CAACC,QAAP,IACAN,GADA,4CAIQ;AAAA;AAAA,GAJR,CADA;AAAA,CAnBuB,EA8BnB;AAAA;AAAA,CA9BmB,EAsCnB;AAAA;AAAA,CAtCmB,EAyCvB,UAACK,KAAD;AAAA,SACAA,KAAK,CAACC,QAAN,IACAN,GADA,qEAGM;AAAA;AAAA;AAAA,GAHN,CADA;AAAA,CAzCuB,CAApB;AAqDPG,cAAc,CAACI,WAAf,GAA6B,gBAA7B","sourcesContent":["import styled, { css } from \"styled-components\";\nimport { BoxSizingStyle } from \"../BoxSizingStyle\";\nimport { FontStyle } from \"../FontStyle\";\nimport tw from \"twin.macro\";\n\ninterface StyledTextareaProps {\n disabled: boolean;\n}\n\nexport const StyledTextarea = styled.textarea<StyledTextareaProps>`\n ${tw`tw-text-body-2`}\n ${tw`tw-text-theme-900`}\n ${tw`tw-leading-regular`}\n ${tw`tw-tracking-regular`}\n ${tw`tw-font-regular`}\n border-width: 1px;\n border-style: solid;\n ${tw`tw-border-theme-500`}\n border-radius: 8px;\n padding: 4px 8px 6px 8px;\n height: auto;\n background-color: var(--input-background-color);\n transition: all 0.3s ease;\n width: 360px;\n min-height: 90px;\n ${FontStyle}\n ${BoxSizingStyle}\n\n ${(props) =>\n !props.disabled &&\n css`\n &:hover {\n outline: none !important;\n ${tw`tw-border-primary`}\n }\n `}\n\n &:active, &:focus {\n outline: none !important;\n ${tw`tw-border-primary`}\n }\n\n &:focus {\n box-shadow: none;\n }\n\n &::placeholder {\n ${tw`tw-text-theme-transparent-500`}\n }\n\n ${(props) =>\n props.disabled &&\n css`\n outline: none;\n ${tw`tw-cursor-not-allowed tw-opacity-50`}\n\n &:hover {\n border-color: var(--border-primary);\n }\n `}\n`;\n\nStyledTextarea.displayName = \"StyledTextarea\";\n"],"file":"Styles.js"}
1
+ {"version":3,"sources":["../../../../src/components/Textarea/Styles.ts"],"names":["styled","css","BoxSizingStyle","FontStyle","StyledTextarea","textarea","props","disabled","$invalid","displayName"],"mappings":"AAAA,OAAOA,MAAP,IAAiBC,GAAjB,QAA4B,mBAA5B;AACA,SAASC,cAAT,QAA+B,mBAA/B;AACA,SAASC,SAAT,QAA0B,cAA1B;AAQA,OAAO,IAAMC,cAAc,GAAGJ,MAAM,CAACK,QAAV;AAAA;AAAA;AAAA,8RACrB;AAAA;AAAA,CADqB,EAErB;AAAA;AAAA,CAFqB,EAGrB;AAAA;AAAA,CAHqB,EAIrB;AAAA;AAAA,CAJqB,EAKrB;AAAA;AAAA,CALqB,EAQrB;AAAA;AAAA,CARqB,EAiBvBF,SAjBuB,EAkBvBD,cAlBuB,EAoBvB,UAACI,KAAD;AAAA,SACAA,KAAK,CAACC,QAAN,IACAN,GADA,WAEM;AAAA;AAAA;AAAA,GAFN,CADA;AAAA,CApBuB,EA0BvB,UAACK,KAAD;AAAA,SACA,CAACA,KAAK,CAACC,QAAP,IACA,CAACD,KAAK,CAACE,QADP,IAEAP,GAFA,qCAMQ;AAAA;AAAA,GANR,CADA;AAAA,CA1BuB,EAsCnB;AAAA;AAAA,CAtCmB,EAyCvB,UAACK,KAAD;AAAA,SACA,CAACA,KAAK,CAACC,QAAP,IACAD,KAAK,CAACE,QADN,IAEAP,GAFA,WAGM;AAAA;AAAA,GAHN,CADA;AAAA,CAzCuB,CAApB;AAiDPG,cAAc,CAACK,WAAf,GAA6B,gBAA7B","sourcesContent":["import styled, { css } from \"styled-components\";\nimport { BoxSizingStyle } from \"../BoxSizingStyle\";\nimport { FontStyle } from \"../FontStyle\";\nimport tw from \"twin.macro\";\n\ninterface StyledTextareaProps {\n disabled: boolean;\n $invalid: boolean;\n}\n\nexport const StyledTextarea = styled.textarea<StyledTextareaProps>`\n ${tw`tw-text-body-2`}\n ${tw`tw-text-theme-900`}\n ${tw`tw-leading-regular`}\n ${tw`tw-tracking-regular`}\n ${tw`tw-font-regular`}\n border-width: 1px;\n border-style: solid;\n ${tw`tw-border-theme-500`}\n border-radius: 8px;\n padding: 4px 8px 6px 8px;\n height: auto;\n background-color: var(--input-background-color);\n transition: all 0.3s ease;\n width: 360px;\n min-height: 90px;\n outline: none;\n ${FontStyle}\n ${BoxSizingStyle}\n\n ${(props) =>\n props.disabled &&\n css`\n ${tw`tw-cursor-not-allowed tw-opacity-50`}\n `}\n\n ${(props) =>\n !props.disabled &&\n !props.$invalid &&\n css`\n &:active,\n &:focus,\n &:hover {\n ${tw`tw-border-primary`}\n }\n `}\n\n &::placeholder {\n ${tw`tw-text-theme-transparent-500`}\n }\n\n ${(props) =>\n !props.disabled &&\n props.$invalid &&\n css`\n ${tw`tw-border-alert`}\n `}\n`;\n\nStyledTextarea.displayName = \"StyledTextarea\";\n"],"file":"Styles.js"}
@@ -1,3 +1,6 @@
1
1
  import React from "react";
2
- export declare const Textarea: React.ForwardRefExoticComponent<React.TextareaHTMLAttributes<HTMLTextAreaElement> & React.RefAttributes<HTMLTextAreaElement>>;
2
+ export interface TextareaProps {
3
+ invalid?: boolean;
4
+ }
5
+ export declare const Textarea: React.ForwardRefExoticComponent<TextareaProps & Omit<Pick<React.DetailedHTMLProps<React.TextareaHTMLAttributes<HTMLTextAreaElement>, HTMLTextAreaElement>, "key" | keyof React.TextareaHTMLAttributes<HTMLTextAreaElement>>, "invalid"> & React.RefAttributes<HTMLTextAreaElement>>;
3
6
  //# sourceMappingURL=Textarea.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"Textarea.d.ts","sourceRoot":"","sources":["../../../../src/components/Textarea/Textarea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAkD,MAAM,OAAO,CAAC;AAIvE,eAAO,MAAM,QAAQ,+HAsBpB,CAAC"}
1
+ {"version":3,"file":"Textarea.d.ts","sourceRoot":"","sources":["../../../../src/components/Textarea/Textarea.tsx"],"names":[],"mappings":"AAAA,OAAO,KAA0B,MAAM,OAAO,CAAC;AAI/C,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,OAAO,CAAC;CACnB;AAED,eAAO,MAAM,QAAQ,qRAyBpB,CAAC"}
@@ -1,6 +1,6 @@
1
1
  import _extends from "@babel/runtime/helpers/esm/extends";
2
2
  import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
- var _excluded = ["className", "disabled"];
3
+ var _excluded = ["className", "disabled", "invalid"];
4
4
  import React, { forwardRef } from "react";
5
5
  import classnames from "classnames";
6
6
  import { StyledTextarea } from "./Styles";
@@ -8,9 +8,12 @@ export var Textarea = /*#__PURE__*/forwardRef(function (_ref, ref) {
8
8
  var className = _ref.className,
9
9
  _ref$disabled = _ref.disabled,
10
10
  disabled = _ref$disabled === void 0 ? false : _ref$disabled,
11
+ _ref$invalid = _ref.invalid,
12
+ invalid = _ref$invalid === void 0 ? false : _ref$invalid,
11
13
  rest = _objectWithoutPropertiesLoose(_ref, _excluded);
12
14
 
13
15
  return /*#__PURE__*/React.createElement(StyledTextarea, _extends({}, rest, {
16
+ $invalid: invalid,
14
17
  ref: ref,
15
18
  disabled: disabled,
16
19
  className: classnames("c-textarea", {
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/Textarea/Textarea.tsx"],"names":["React","forwardRef","classnames","StyledTextarea","Textarea","ref","className","disabled","rest","displayName"],"mappings":";;;AAAA,OAAOA,KAAP,IAAwCC,UAAxC,QAA+D,OAA/D;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SAASC,cAAT,QAA+B,UAA/B;AAEA,OAAO,IAAMC,QAAQ,gBAAGH,UAAU,CAChC,gBAMEI,GANF,EAOK;AAAA,MALDC,SAKC,QALDA,SAKC;AAAA,2BAJDC,QAIC;AAAA,MAJDA,QAIC,8BAJU,KAIV;AAAA,MAHEC,IAGF;;AACH,sBACE,oBAAC,cAAD,eACMA,IADN;AAEE,IAAA,GAAG,EAAEH,GAFP;AAGE,IAAA,QAAQ,EAAEE,QAHZ;AAIE,IAAA,SAAS,EAAEL,UAAU,CACnB,YADmB,EAEnB;AAAE,8BAAwBK;AAA1B,KAFmB,EAGnBD,SAHmB;AAJvB,KADF;AAYD,CArB+B,CAA3B;AAwBPF,QAAQ,CAACK,WAAT,GAAuB,UAAvB","sourcesContent":["import React, { TextareaHTMLAttributes, forwardRef, Ref } from \"react\";\nimport classnames from \"classnames\";\nimport { StyledTextarea } from \"./Styles\";\n\nexport const Textarea = forwardRef(\n (\n {\n className,\n disabled = false,\n ...rest\n }: TextareaHTMLAttributes<HTMLTextAreaElement>,\n ref: Ref<HTMLTextAreaElement> | null | undefined\n ) => {\n return (\n <StyledTextarea\n {...rest}\n ref={ref}\n disabled={disabled}\n className={classnames(\n \"c-textarea\",\n { \"c-textarea__disabled\": disabled },\n className\n )}\n />\n );\n }\n);\n\nTextarea.displayName = \"Textarea\";\n"],"file":"Textarea.js"}
1
+ {"version":3,"sources":["../../../../src/components/Textarea/Textarea.tsx"],"names":["React","forwardRef","classnames","StyledTextarea","Textarea","ref","className","disabled","invalid","rest","displayName"],"mappings":";;;AAAA,OAAOA,KAAP,IAAgBC,UAAhB,QAAuC,OAAvC;AACA,OAAOC,UAAP,MAAuB,YAAvB;AACA,SAASC,cAAT,QAA+B,UAA/B;AAMA,OAAO,IAAMC,QAAQ,gBAAGH,UAAU,CAChC,gBAQEI,GARF,EASK;AAAA,MAPDC,SAOC,QAPDA,SAOC;AAAA,2BANDC,QAMC;AAAA,MANDA,QAMC,8BANU,KAMV;AAAA,0BALDC,OAKC;AAAA,MALDA,OAKC,6BALS,KAKT;AAAA,MAJEC,IAIF;;AACH,sBACE,oBAAC,cAAD,eACMA,IADN;AAEE,IAAA,QAAQ,EAAED,OAFZ;AAGE,IAAA,GAAG,EAAEH,GAHP;AAIE,IAAA,QAAQ,EAAEE,QAJZ;AAKE,IAAA,SAAS,EAAEL,UAAU,CACnB,YADmB,EAEnB;AAAE,8BAAwBK;AAA1B,KAFmB,EAGnBD,SAHmB;AALvB,KADF;AAaD,CAxB+B,CAA3B;AA2BPF,QAAQ,CAACM,WAAT,GAAuB,UAAvB","sourcesContent":["import React, { forwardRef, Ref } from \"react\";\nimport classnames from \"classnames\";\nimport { StyledTextarea } from \"./Styles\";\n\nexport interface TextareaProps {\n invalid?: boolean;\n}\n\nexport const Textarea = forwardRef(\n (\n {\n className,\n disabled = false,\n invalid = false,\n ...rest\n }: TextareaProps &\n Omit<React.ComponentPropsWithoutRef<\"textarea\">, keyof TextareaProps>,\n ref: Ref<HTMLTextAreaElement> | null | undefined\n ) => {\n return (\n <StyledTextarea\n {...rest}\n $invalid={invalid}\n ref={ref}\n disabled={disabled}\n className={classnames(\n \"c-textarea\",\n { \"c-textarea__disabled\": disabled },\n className\n )}\n />\n );\n }\n);\n\nTextarea.displayName = \"Textarea\";\n"],"file":"Textarea.js"}
@@ -1,14 +1,11 @@
1
- /// <reference types="react" />
1
+ import React from "react";
2
2
  export interface ToastMessageProps {
3
3
  text: string;
4
4
  type: "error" | "success" | "general" | "warning";
5
5
  onClose?: () => void;
6
- dismissable?: boolean;
6
+ dismissible?: boolean;
7
7
  dropShadow?: boolean;
8
8
  timeout?: number;
9
9
  }
10
- export declare const ToastMessage: {
11
- ({ text, type, onClose, dismissable, dropShadow, timeout, }: ToastMessageProps): JSX.Element;
12
- displayName: string;
13
- };
10
+ export declare const ToastMessage: React.ForwardRefExoticComponent<ToastMessageProps & React.HTMLAttributes<HTMLDivElement> & React.RefAttributes<HTMLDivElement>>;
14
11
  //# sourceMappingURL=ToastMessage.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ToastMessage.d.ts","sourceRoot":"","sources":["../../../../src/components/ToastMessage/ToastMessage.tsx"],"names":[],"mappings":";AAOA,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAClD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,YAAY;iEAOtB,iBAAiB;;CAqBnB,CAAC"}
1
+ {"version":3,"file":"ToastMessage.d.ts","sourceRoot":"","sources":["../../../../src/components/ToastMessage/ToastMessage.tsx"],"names":[],"mappings":"AAAA,OAAO,KAMN,MAAM,OAAO,CAAC;AAOf,MAAM,WAAW,iBAAiB;IAChC,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,OAAO,GAAG,SAAS,GAAG,SAAS,GAAG,SAAS,CAAC;IAClD,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;IACrB,WAAW,CAAC,EAAE,OAAO,CAAC;IACtB,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;CAClB;AAED,eAAO,MAAM,YAAY,iIAuCxB,CAAC"}
@@ -1,15 +1,20 @@
1
- import React, { useEffect, useCallback } from "react";
1
+ import _extends from "@babel/runtime/helpers/esm/extends";
2
+ import _objectWithoutPropertiesLoose from "@babel/runtime/helpers/esm/objectWithoutPropertiesLoose";
3
+ var _excluded = ["text", "type", "onClose", "dismissible", "dropShadow", "timeout"];
4
+ import React, { forwardRef, useEffect, useCallback } from "react";
2
5
  import { StyledToastMessage, StyledToastMessageText, StyledCloseSmallIcon } from "./Styles";
3
- export var ToastMessage = function ToastMessage(_ref) {
6
+ export var ToastMessage = /*#__PURE__*/forwardRef(function (_ref, ref) {
4
7
  var text = _ref.text,
5
8
  type = _ref.type,
6
9
  onClose = _ref.onClose,
7
- _ref$dismissable = _ref.dismissable,
8
- dismissable = _ref$dismissable === void 0 ? false : _ref$dismissable,
10
+ _ref$dismissible = _ref.dismissible,
11
+ dismissible = _ref$dismissible === void 0 ? false : _ref$dismissible,
9
12
  _ref$dropShadow = _ref.dropShadow,
10
13
  dropShadow = _ref$dropShadow === void 0 ? false : _ref$dropShadow,
11
14
  _ref$timeout = _ref.timeout,
12
- timeout = _ref$timeout === void 0 ? 0 : _ref$timeout;
15
+ timeout = _ref$timeout === void 0 ? 0 : _ref$timeout,
16
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded);
17
+
13
18
  var handleOnClose = useCallback(function () {
14
19
  if (typeof onClose === "function") {
15
20
  onClose();
@@ -22,13 +27,14 @@ export var ToastMessage = function ToastMessage(_ref) {
22
27
  return clearTimeout(timer);
23
28
  };
24
29
  }
25
- }, [dismissable, timeout, handleOnClose]);
26
- return /*#__PURE__*/React.createElement(StyledToastMessage, {
30
+ }, [dismissible, timeout, handleOnClose]);
31
+ return /*#__PURE__*/React.createElement(StyledToastMessage, _extends({
32
+ ref: ref,
27
33
  $type: type,
28
34
  $dropShadow: dropShadow
29
- }, /*#__PURE__*/React.createElement(StyledToastMessageText, null, text), dismissable ? /*#__PURE__*/React.createElement(StyledCloseSmallIcon, {
35
+ }, rest), /*#__PURE__*/React.createElement(StyledToastMessageText, null, text), dismissible ? /*#__PURE__*/React.createElement(StyledCloseSmallIcon, {
30
36
  onClick: handleOnClose
31
37
  }) : null);
32
- };
38
+ });
33
39
  ToastMessage.displayName = "ToastMessage";
34
40
  //# sourceMappingURL=ToastMessage.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/components/ToastMessage/ToastMessage.tsx"],"names":["React","useEffect","useCallback","StyledToastMessage","StyledToastMessageText","StyledCloseSmallIcon","ToastMessage","text","type","onClose","dismissable","dropShadow","timeout","handleOnClose","timer","setTimeout","clearTimeout","displayName"],"mappings":"AAAA,OAAOA,KAAP,IAAgBC,SAAhB,EAA2BC,WAA3B,QAA8C,OAA9C;AACA,SACEC,kBADF,EAEEC,sBAFF,EAGEC,oBAHF,QAIO,UAJP;AAeA,OAAO,IAAMC,YAAY,GAAG,SAAfA,YAAe,OAOH;AAAA,MANvBC,IAMuB,QANvBA,IAMuB;AAAA,MALvBC,IAKuB,QALvBA,IAKuB;AAAA,MAJvBC,OAIuB,QAJvBA,OAIuB;AAAA,8BAHvBC,WAGuB;AAAA,MAHvBA,WAGuB,iCAHT,KAGS;AAAA,6BAFvBC,UAEuB;AAAA,MAFvBA,UAEuB,gCAFV,KAEU;AAAA,0BADvBC,OACuB;AAAA,MADvBA,OACuB,6BADb,CACa;AACvB,MAAMC,aAAa,GAAGX,WAAW,CAAC,YAAM;AACtC,QAAI,OAAOO,OAAP,KAAmB,UAAvB,EAAmC;AACjCA,MAAAA,OAAO;AACR;AACF,GAJgC,EAI9B,CAACA,OAAD,CAJ8B,CAAjC;AAMAR,EAAAA,SAAS,CAAC,YAAM;AACd,QAAIW,OAAO,GAAG,CAAd,EAAiB;AACf,UAAME,KAAK,GAAGC,UAAU,CAACF,aAAD,EAAgBD,OAAhB,CAAxB;AAEA,aAAO;AAAA,eAAMI,YAAY,CAACF,KAAD,CAAlB;AAAA,OAAP;AACD;AACF,GANQ,EAMN,CAACJ,WAAD,EAAcE,OAAd,EAAuBC,aAAvB,CANM,CAAT;AAQA,sBACE,oBAAC,kBAAD;AAAoB,IAAA,KAAK,EAAEL,IAA3B;AAAiC,IAAA,WAAW,EAAEG;AAA9C,kBACE,oBAAC,sBAAD,QAAyBJ,IAAzB,CADF,EAEGG,WAAW,gBAAG,oBAAC,oBAAD;AAAsB,IAAA,OAAO,EAAEG;AAA/B,IAAH,GAAsD,IAFpE,CADF;AAMD,CA5BM;AA8BPP,YAAY,CAACW,WAAb,GAA2B,cAA3B","sourcesContent":["import React, { useEffect, useCallback } from \"react\";\nimport {\n StyledToastMessage,\n StyledToastMessageText,\n StyledCloseSmallIcon,\n} from \"./Styles\";\n\nexport interface ToastMessageProps {\n text: string;\n type: \"error\" | \"success\" | \"general\" | \"warning\";\n onClose?: () => void;\n dismissable?: boolean;\n dropShadow?: boolean;\n timeout?: number;\n}\n\nexport const ToastMessage = ({\n text,\n type,\n onClose,\n dismissable = false,\n dropShadow = false,\n timeout = 0,\n}: ToastMessageProps) => {\n const handleOnClose = useCallback(() => {\n if (typeof onClose === \"function\") {\n onClose();\n }\n }, [onClose]);\n\n useEffect(() => {\n if (timeout > 0) {\n const timer = setTimeout(handleOnClose, timeout);\n\n return () => clearTimeout(timer);\n }\n }, [dismissable, timeout, handleOnClose]);\n\n return (\n <StyledToastMessage $type={type} $dropShadow={dropShadow}>\n <StyledToastMessageText>{text}</StyledToastMessageText>\n {dismissable ? <StyledCloseSmallIcon onClick={handleOnClose} /> : null}\n </StyledToastMessage>\n );\n};\n\nToastMessage.displayName = \"ToastMessage\";\n"],"file":"ToastMessage.js"}
1
+ {"version":3,"sources":["../../../../src/components/ToastMessage/ToastMessage.tsx"],"names":["React","forwardRef","useEffect","useCallback","StyledToastMessage","StyledToastMessageText","StyledCloseSmallIcon","ToastMessage","ref","text","type","onClose","dismissible","dropShadow","timeout","rest","handleOnClose","timer","setTimeout","clearTimeout","displayName"],"mappings":";;;AAAA,OAAOA,KAAP,IACEC,UADF,EAIEC,SAJF,EAKEC,WALF,QAMO,OANP;AAOA,SACEC,kBADF,EAEEC,sBAFF,EAGEC,oBAHF,QAIO,UAJP;AAeA,OAAO,IAAMC,YAAY,gBAAGN,UAAU,CACpC,gBAUEO,GAVF,EAWK;AAAA,MATDC,IASC,QATDA,IASC;AAAA,MARDC,IAQC,QARDA,IAQC;AAAA,MAPDC,OAOC,QAPDA,OAOC;AAAA,8BANDC,WAMC;AAAA,MANDA,WAMC,iCANa,KAMb;AAAA,6BALDC,UAKC;AAAA,MALDA,UAKC,gCALY,KAKZ;AAAA,0BAJDC,OAIC;AAAA,MAJDA,OAIC,6BAJS,CAIT;AAAA,MAHEC,IAGF;;AACH,MAAMC,aAAa,GAAGb,WAAW,CAAC,YAAM;AACtC,QAAI,OAAOQ,OAAP,KAAmB,UAAvB,EAAmC;AACjCA,MAAAA,OAAO;AACR;AACF,GAJgC,EAI9B,CAACA,OAAD,CAJ8B,CAAjC;AAMAT,EAAAA,SAAS,CAAC,YAAM;AACd,QAAIY,OAAO,GAAG,CAAd,EAAiB;AACf,UAAMG,KAAK,GAAGC,UAAU,CAACF,aAAD,EAAgBF,OAAhB,CAAxB;AAEA,aAAO;AAAA,eAAMK,YAAY,CAACF,KAAD,CAAlB;AAAA,OAAP;AACD;AACF,GANQ,EAMN,CAACL,WAAD,EAAcE,OAAd,EAAuBE,aAAvB,CANM,CAAT;AAQA,sBACE,oBAAC,kBAAD;AACE,IAAA,GAAG,EAAER,GADP;AAEE,IAAA,KAAK,EAAEE,IAFT;AAGE,IAAA,WAAW,EAAEG;AAHf,KAIME,IAJN,gBAME,oBAAC,sBAAD,QAAyBN,IAAzB,CANF,EAOGG,WAAW,gBAAG,oBAAC,oBAAD;AAAsB,IAAA,OAAO,EAAEI;AAA/B,IAAH,GAAsD,IAPpE,CADF;AAWD,CAtCmC,CAA/B;AAyCPT,YAAY,CAACa,WAAb,GAA2B,cAA3B","sourcesContent":["import React, {\n forwardRef,\n HTMLAttributes,\n Ref,\n useEffect,\n useCallback,\n} from \"react\";\nimport {\n StyledToastMessage,\n StyledToastMessageText,\n StyledCloseSmallIcon,\n} from \"./Styles\";\n\nexport interface ToastMessageProps {\n text: string;\n type: \"error\" | \"success\" | \"general\" | \"warning\";\n onClose?: () => void;\n dismissible?: boolean;\n dropShadow?: boolean;\n timeout?: number;\n}\n\nexport const ToastMessage = forwardRef(\n (\n {\n text,\n type,\n onClose,\n dismissible = false,\n dropShadow = false,\n timeout = 0,\n ...rest\n }: ToastMessageProps & HTMLAttributes<HTMLDivElement>,\n ref: Ref<HTMLDivElement> | null | undefined\n ) => {\n const handleOnClose = useCallback(() => {\n if (typeof onClose === \"function\") {\n onClose();\n }\n }, [onClose]);\n\n useEffect(() => {\n if (timeout > 0) {\n const timer = setTimeout(handleOnClose, timeout);\n\n return () => clearTimeout(timer);\n }\n }, [dismissible, timeout, handleOnClose]);\n\n return (\n <StyledToastMessage\n ref={ref}\n $type={type}\n $dropShadow={dropShadow}\n {...rest}\n >\n <StyledToastMessageText>{text}</StyledToastMessageText>\n {dismissible ? <StyledCloseSmallIcon onClick={handleOnClose} /> : null}\n </StyledToastMessage>\n );\n }\n);\n\nToastMessage.displayName = \"ToastMessage\";\n"],"file":"ToastMessage.js"}
@@ -1,6 +1,8 @@
1
1
  import { FC } from "react";
2
+ declare type ContainerFunc = () => HTMLElement;
3
+ declare type Container = HTMLElement | ContainerFunc;
2
4
  interface IPortal {
3
- root?: HTMLElement;
5
+ container?: Container;
4
6
  }
5
7
  export declare const Portal: FC<IPortal>;
6
8
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"Portal.d.ts","sourceRoot":"","sources":["../../../../src/helpers/Portal/Portal.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAG3B,UAAU,OAAO;IACf,IAAI,CAAC,EAAE,WAAW,CAAC;CACpB;AAED,eAAO,MAAM,MAAM,EAAE,EAAE,CAAC,OAAO,CAI9B,CAAC"}
1
+ {"version":3,"file":"Portal.d.ts","sourceRoot":"","sources":["../../../../src/helpers/Portal/Portal.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,EAAE,EAAuB,MAAM,OAAO,CAAC;AAGhD,aAAK,aAAa,GAAG,MAAM,WAAW,CAAC;AACvC,aAAK,SAAS,GAAG,WAAW,GAAG,aAAa,CAAC;AAC7C,UAAU,OAAO;IACf,SAAS,CAAC,EAAE,SAAS,CAAC;CACvB;AAMD,eAAO,MAAM,MAAM,EAAE,EAAE,CAAC,OAAO,CAW9B,CAAC"}
@@ -1,9 +1,23 @@
1
+ import { useEffect, useState } from "react";
1
2
  import ReactDOM from "react-dom";
3
+
4
+ var getContainer = function getContainer(container) {
5
+ return typeof container === "function" ? container() : container;
6
+ };
7
+
2
8
  export var Portal = function Portal(_ref) {
3
9
  var children = _ref.children,
4
- _ref$root = _ref.root,
5
- root = _ref$root === void 0 ? document.body : _ref$root;
6
- return document.body.contains(root) || root === document.body ? /*#__PURE__*/ReactDOM.createPortal(children, root) : null;
10
+ _ref$container = _ref.container,
11
+ container = _ref$container === void 0 ? document.body : _ref$container;
12
+
13
+ var _useState = useState(null),
14
+ mountNode = _useState[0],
15
+ setMountNode = _useState[1];
16
+
17
+ useEffect(function () {
18
+ setMountNode(getContainer(container));
19
+ }, [container]);
20
+ return mountNode ? /*#__PURE__*/ReactDOM.createPortal(children, mountNode) : mountNode;
7
21
  };
8
22
  Portal.displayName = "Portal";
9
23
  //# sourceMappingURL=Portal.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../../src/helpers/Portal/Portal.tsx"],"names":["ReactDOM","Portal","children","root","document","body","contains","createPortal","displayName"],"mappings":"AACA,OAAOA,QAAP,MAAqB,WAArB;AAMA,OAAO,IAAMC,MAAmB,GAAG,SAAtBA,MAAsB,OAAwC;AAAA,MAArCC,QAAqC,QAArCA,QAAqC;AAAA,uBAA3BC,IAA2B;AAAA,MAA3BA,IAA2B,0BAApBC,QAAQ,CAACC,IAAW;AACzE,SAAOD,QAAQ,CAACC,IAAT,CAAcC,QAAd,CAAuBH,IAAvB,KAAgCA,IAAI,KAAKC,QAAQ,CAACC,IAAlD,gBACHL,QAAQ,CAACO,YAAT,CAAsBL,QAAtB,EAAgCC,IAAhC,CADG,GAEH,IAFJ;AAGD,CAJM;AAMPF,MAAM,CAACO,WAAP,GAAqB,QAArB","sourcesContent":["import { FC } from \"react\";\nimport ReactDOM from \"react-dom\";\n\ninterface IPortal {\n root?: HTMLElement;\n}\n\nexport const Portal: FC<IPortal> = ({ children, root = document.body }) => {\n return document.body.contains(root) || root === document.body\n ? ReactDOM.createPortal(children, root)\n : null;\n};\n\nPortal.displayName = \"Portal\";\n"],"file":"Portal.js"}
1
+ {"version":3,"sources":["../../../../src/helpers/Portal/Portal.tsx"],"names":["useEffect","useState","ReactDOM","getContainer","container","Portal","children","document","body","mountNode","setMountNode","createPortal","displayName"],"mappings":"AAAA,SAAaA,SAAb,EAAwBC,QAAxB,QAAwC,OAAxC;AACA,OAAOC,QAAP,MAAqB,WAArB;;AAQA,IAAMC,YAAY,GAAG,SAAfA,YAAe,CAACC,SAAD,EAA0B;AAC7C,SAAO,OAAOA,SAAP,KAAqB,UAArB,GAAkCA,SAAS,EAA3C,GAAgDA,SAAvD;AACD,CAFD;;AAIA,OAAO,IAAMC,MAAmB,GAAG,SAAtBA,MAAsB,OAG7B;AAAA,MAFJC,QAEI,QAFJA,QAEI;AAAA,4BADJF,SACI;AAAA,MADJA,SACI,+BADQG,QAAQ,CAACC,IACjB;;AACJ,kBAAkCP,QAAQ,CAAqB,IAArB,CAA1C;AAAA,MAAOQ,SAAP;AAAA,MAAkBC,YAAlB;;AAEAV,EAAAA,SAAS,CAAC,YAAM;AACdU,IAAAA,YAAY,CAACP,YAAY,CAACC,SAAD,CAAb,CAAZ;AACD,GAFQ,EAEN,CAACA,SAAD,CAFM,CAAT;AAIA,SAAOK,SAAS,gBAAGP,QAAQ,CAACS,YAAT,CAAsBL,QAAtB,EAAgCG,SAAhC,CAAH,GAAgDA,SAAhE;AACD,CAXM;AAaPJ,MAAM,CAACO,WAAP,GAAqB,QAArB","sourcesContent":["import { FC, useEffect, useState } from \"react\";\nimport ReactDOM from \"react-dom\";\n\ntype ContainerFunc = () => HTMLElement;\ntype Container = HTMLElement | ContainerFunc;\ninterface IPortal {\n container?: Container;\n}\n\nconst getContainer = (container: Container) => {\n return typeof container === \"function\" ? container() : container;\n};\n\nexport const Portal: FC<IPortal> = ({\n children,\n container = document.body,\n}) => {\n const [mountNode, setMountNode] = useState<HTMLElement | null>(null);\n\n useEffect(() => {\n setMountNode(getContainer(container));\n }, [container]);\n\n return mountNode ? ReactDOM.createPortal(children, mountNode) : mountNode;\n};\n\nPortal.displayName = \"Portal\";\n"],"file":"Portal.js"}
@@ -1,2 +1,3 @@
1
1
  export * from "./layers";
2
+ export { default as useForkRef } from "./useForkRef";
2
3
  //# sourceMappingURL=index.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC;AACzB,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,cAAc,CAAC"}
@@ -1,2 +1,3 @@
1
1
  export * from "./layers";
2
+ export { default as useForkRef } from "./useForkRef";
2
3
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAd","sourcesContent":["export * from \"./layers\";\n"],"file":"index.js"}
1
+ {"version":3,"sources":["../../../src/utils/index.ts"],"names":["default","useForkRef"],"mappings":"AAAA,cAAc,UAAd;AACA,SAASA,OAAO,IAAIC,UAApB,QAAsC,cAAtC","sourcesContent":["export * from \"./layers\";\nexport { default as useForkRef } from \"./useForkRef\";\n"],"file":"index.js"}