@bikdotai/bik-component-library 0.0.5-beta.0 → 0.0.5-beta.2

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 (137) hide show
  1. package/dist/cjs/assets/icons/alert.svg.js +1 -0
  2. package/dist/cjs/assets/icons/cross.svg.js +1 -1
  3. package/dist/cjs/assets/icons/question-mark.svg.js +1 -0
  4. package/dist/cjs/assets/icons/search.svg.js +1 -0
  5. package/dist/cjs/bundle.css +8 -1
  6. package/dist/cjs/components/TypographyStyle.js +10 -10
  7. package/dist/cjs/components/checkBox/CheckBox.js +1 -1
  8. package/dist/cjs/components/dropdown/Common.styled.d.ts +2 -0
  9. package/dist/cjs/components/dropdown/Dropdown.d.ts +8 -0
  10. package/dist/cjs/components/dropdown/UnChildDropdown/UnChildDropdown.d.ts +10 -0
  11. package/dist/cjs/components/dropdown/index.d.ts +1 -0
  12. package/dist/cjs/components/dropdown/opennedDropdown/components/OpennedDropdown.d.ts +3 -0
  13. package/dist/cjs/components/dropdown/opennedDropdown/components/OpennedDropdown.js +1 -0
  14. package/dist/cjs/components/dropdown/opennedDropdown/components/OpennedDropdown.styled.d.ts +5 -0
  15. package/dist/cjs/components/dropdown/opennedDropdown/components/OpennedDropdown.styled.js +24 -0
  16. package/dist/cjs/components/dropdown/opennedDropdown/components/description/Description.d.ts +6 -0
  17. package/dist/cjs/components/dropdown/opennedDropdown/components/description/Description.js +1 -0
  18. package/dist/cjs/components/dropdown/opennedDropdown/components/description/Description.styled.d.ts +1 -0
  19. package/dist/cjs/components/dropdown/opennedDropdown/components/description/Description.styled.js +5 -0
  20. package/dist/cjs/components/dropdown/opennedDropdown/components/menu/FreeFormMenu.d.ts +6 -0
  21. package/dist/cjs/components/dropdown/opennedDropdown/components/menu/FreeFormMenu.js +1 -0
  22. package/dist/cjs/components/dropdown/opennedDropdown/components/menu/FreeFormMenu.styled.d.ts +1 -0
  23. package/dist/cjs/components/dropdown/opennedDropdown/components/menu/FreeFormMenu.styled.js +6 -0
  24. package/dist/cjs/components/dropdown/opennedDropdown/components/menu/MenuItem.d.ts +8 -0
  25. package/dist/cjs/components/dropdown/opennedDropdown/components/menu/MenuItem.js +1 -0
  26. package/dist/cjs/components/dropdown/opennedDropdown/components/menu/MenuList.d.ts +8 -0
  27. package/dist/cjs/components/dropdown/opennedDropdown/components/menu/MenuList.js +1 -0
  28. package/dist/cjs/components/dropdown/opennedDropdown/components/menu/MenuList.styled.d.ts +1 -0
  29. package/dist/cjs/components/dropdown/opennedDropdown/components/menu/MenuList.styled.js +6 -0
  30. package/dist/cjs/components/dropdown/opennedDropdown/components/menu/SelectAllMenu.d.ts +7 -0
  31. package/dist/cjs/components/dropdown/opennedDropdown/components/menu/SelectAllMenu.js +1 -0
  32. package/dist/cjs/components/dropdown/opennedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.d.ts +8 -0
  33. package/dist/cjs/components/dropdown/opennedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.js +1 -0
  34. package/dist/cjs/components/dropdown/opennedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.styled.d.ts +1 -0
  35. package/dist/cjs/components/dropdown/opennedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.styled.js +8 -0
  36. package/dist/cjs/components/dropdown/opennedDropdown/components/searchbox/SearchBox.d.ts +4 -0
  37. package/dist/cjs/components/dropdown/opennedDropdown/components/searchbox/SearchBox.js +1 -0
  38. package/dist/cjs/components/dropdown/opennedDropdown/components/searchbox/ZeroState.d.ts +4 -0
  39. package/dist/cjs/components/dropdown/opennedDropdown/components/searchbox/ZeroState.js +1 -0
  40. package/dist/cjs/components/dropdown/opennedDropdown/index.d.ts +1 -0
  41. package/dist/cjs/components/dropdown/opennedDropdown/utils/iterationOnOptions.d.ts +31 -0
  42. package/dist/cjs/components/dropdown/opennedDropdown/utils/iterationOnOptions.js +1 -0
  43. package/dist/cjs/components/dropdown/type.d.ts +26 -0
  44. package/dist/cjs/components/fab-menu/FABMenu.d.ts +20 -0
  45. package/dist/cjs/components/fab-menu/FABMenu.js +1 -0
  46. package/dist/cjs/components/fab-menu/index.d.ts +1 -0
  47. package/dist/cjs/components/floating-action-button/FloatingActionButton.d.ts +18 -0
  48. package/dist/cjs/components/floating-action-button/FloatingActionButton.js +1 -0
  49. package/dist/cjs/components/floating-action-button/FloatingActionButton.styles.d.ts +34 -0
  50. package/dist/cjs/components/floating-action-button/FloatingActionButton.styles.js +87 -0
  51. package/dist/cjs/components/floating-action-button/index.d.ts +2 -0
  52. package/dist/cjs/components/input/Input.d.ts +1 -0
  53. package/dist/cjs/components/input/Input.js +1 -0
  54. package/dist/cjs/components/input/Input.styled.js +1 -0
  55. package/dist/cjs/components/input/context/InputStyleProvider.d.ts +7 -0
  56. package/dist/cjs/components/input/context/InputStyleProvider.js +1 -0
  57. package/dist/cjs/components/list-item/ListItem.js +1 -1
  58. package/dist/cjs/components/list-item/ListItem.styled.js +1 -1
  59. package/dist/cjs/components/stepper/WorkingStepper.d.ts +1 -0
  60. package/dist/cjs/components/tooltips/CustomisedTooltip.d.ts +25 -0
  61. package/dist/cjs/components/tooltips/CustomisedTooltip.js +1 -0
  62. package/dist/cjs/components/tooltips/index.d.ts +1 -0
  63. package/dist/cjs/components/zeroState/ZeroState.d.ts +7 -0
  64. package/dist/cjs/components/zeroState/ZeroState.js +17 -0
  65. package/dist/cjs/hooks/useOutside.d.ts +1 -0
  66. package/dist/cjs/hooks/useOutside.js +1 -0
  67. package/dist/cjs/index.d.ts +2 -0
  68. package/dist/cjs/index.js +1 -1
  69. package/dist/esm/assets/icons/alert.svg.js +1 -0
  70. package/dist/esm/assets/icons/cross.svg.js +1 -1
  71. package/dist/esm/assets/icons/question-mark.svg.js +1 -0
  72. package/dist/esm/assets/icons/search.svg.js +1 -0
  73. package/dist/esm/bundle.css +8 -1
  74. package/dist/esm/components/TypographyStyle.js +10 -10
  75. package/dist/esm/components/checkBox/CheckBox.js +1 -1
  76. package/dist/esm/components/dropdown/Common.styled.d.ts +2 -0
  77. package/dist/esm/components/dropdown/Dropdown.d.ts +8 -0
  78. package/dist/esm/components/dropdown/UnChildDropdown/UnChildDropdown.d.ts +10 -0
  79. package/dist/esm/components/dropdown/index.d.ts +1 -0
  80. package/dist/esm/components/dropdown/opennedDropdown/components/OpennedDropdown.d.ts +3 -0
  81. package/dist/esm/components/dropdown/opennedDropdown/components/OpennedDropdown.js +1 -0
  82. package/dist/esm/components/dropdown/opennedDropdown/components/OpennedDropdown.styled.d.ts +5 -0
  83. package/dist/esm/components/dropdown/opennedDropdown/components/OpennedDropdown.styled.js +24 -0
  84. package/dist/esm/components/dropdown/opennedDropdown/components/description/Description.d.ts +6 -0
  85. package/dist/esm/components/dropdown/opennedDropdown/components/description/Description.js +1 -0
  86. package/dist/esm/components/dropdown/opennedDropdown/components/description/Description.styled.d.ts +1 -0
  87. package/dist/esm/components/dropdown/opennedDropdown/components/description/Description.styled.js +5 -0
  88. package/dist/esm/components/dropdown/opennedDropdown/components/menu/FreeFormMenu.d.ts +6 -0
  89. package/dist/esm/components/dropdown/opennedDropdown/components/menu/FreeFormMenu.js +1 -0
  90. package/dist/esm/components/dropdown/opennedDropdown/components/menu/FreeFormMenu.styled.d.ts +1 -0
  91. package/dist/esm/components/dropdown/opennedDropdown/components/menu/FreeFormMenu.styled.js +6 -0
  92. package/dist/esm/components/dropdown/opennedDropdown/components/menu/MenuItem.d.ts +8 -0
  93. package/dist/esm/components/dropdown/opennedDropdown/components/menu/MenuItem.js +1 -0
  94. package/dist/esm/components/dropdown/opennedDropdown/components/menu/MenuList.d.ts +8 -0
  95. package/dist/esm/components/dropdown/opennedDropdown/components/menu/MenuList.js +1 -0
  96. package/dist/esm/components/dropdown/opennedDropdown/components/menu/MenuList.styled.d.ts +1 -0
  97. package/dist/esm/components/dropdown/opennedDropdown/components/menu/MenuList.styled.js +6 -0
  98. package/dist/esm/components/dropdown/opennedDropdown/components/menu/SelectAllMenu.d.ts +7 -0
  99. package/dist/esm/components/dropdown/opennedDropdown/components/menu/SelectAllMenu.js +1 -0
  100. package/dist/esm/components/dropdown/opennedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.d.ts +8 -0
  101. package/dist/esm/components/dropdown/opennedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.js +1 -0
  102. package/dist/esm/components/dropdown/opennedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.styled.d.ts +1 -0
  103. package/dist/esm/components/dropdown/opennedDropdown/components/multiSelect/MultiSelectDropdownBottomBar.styled.js +8 -0
  104. package/dist/esm/components/dropdown/opennedDropdown/components/searchbox/SearchBox.d.ts +4 -0
  105. package/dist/esm/components/dropdown/opennedDropdown/components/searchbox/SearchBox.js +1 -0
  106. package/dist/esm/components/dropdown/opennedDropdown/components/searchbox/ZeroState.d.ts +4 -0
  107. package/dist/esm/components/dropdown/opennedDropdown/components/searchbox/ZeroState.js +1 -0
  108. package/dist/esm/components/dropdown/opennedDropdown/index.d.ts +1 -0
  109. package/dist/esm/components/dropdown/opennedDropdown/utils/iterationOnOptions.d.ts +31 -0
  110. package/dist/esm/components/dropdown/opennedDropdown/utils/iterationOnOptions.js +1 -0
  111. package/dist/esm/components/dropdown/type.d.ts +26 -0
  112. package/dist/esm/components/fab-menu/FABMenu.d.ts +20 -0
  113. package/dist/esm/components/fab-menu/FABMenu.js +1 -0
  114. package/dist/esm/components/fab-menu/index.d.ts +1 -0
  115. package/dist/esm/components/floating-action-button/FloatingActionButton.d.ts +18 -0
  116. package/dist/esm/components/floating-action-button/FloatingActionButton.js +1 -0
  117. package/dist/esm/components/floating-action-button/FloatingActionButton.styles.d.ts +34 -0
  118. package/dist/esm/components/floating-action-button/FloatingActionButton.styles.js +87 -0
  119. package/dist/esm/components/floating-action-button/index.d.ts +2 -0
  120. package/dist/esm/components/input/Input.d.ts +1 -0
  121. package/dist/esm/components/input/Input.js +1 -0
  122. package/dist/esm/components/input/Input.styled.js +1 -0
  123. package/dist/esm/components/input/context/InputStyleProvider.d.ts +7 -0
  124. package/dist/esm/components/input/context/InputStyleProvider.js +1 -0
  125. package/dist/esm/components/list-item/ListItem.js +1 -1
  126. package/dist/esm/components/list-item/ListItem.styled.js +1 -1
  127. package/dist/esm/components/stepper/WorkingStepper.d.ts +1 -0
  128. package/dist/esm/components/tooltips/CustomisedTooltip.d.ts +25 -0
  129. package/dist/esm/components/tooltips/CustomisedTooltip.js +1 -0
  130. package/dist/esm/components/tooltips/index.d.ts +1 -0
  131. package/dist/esm/components/zeroState/ZeroState.d.ts +7 -0
  132. package/dist/esm/components/zeroState/ZeroState.js +17 -0
  133. package/dist/esm/hooks/useOutside.d.ts +1 -0
  134. package/dist/esm/hooks/useOutside.js +1 -0
  135. package/dist/esm/index.d.ts +2 -0
  136. package/dist/esm/index.js +1 -1
  137. package/package.json +6 -2
@@ -0,0 +1,10 @@
1
+ import React from 'react';
2
+ import { OpenDropdownProps } from '../type';
3
+ export type DropdownProps = OpenDropdownProps & {
4
+ isLoading?: boolean;
5
+ size?: 'default' | 'small';
6
+ };
7
+ export declare const UnChildDropdown: React.ForwardRefExoticComponent<OpenDropdownProps & {
8
+ isLoading?: boolean | undefined;
9
+ size?: "small" | "default" | undefined;
10
+ } & React.RefAttributes<{}>>;
@@ -0,0 +1 @@
1
+ export * from './Dropdown';
@@ -0,0 +1,3 @@
1
+ import React from 'react';
2
+ import { OpenDropdownProps } from '../../type';
3
+ export declare const OpennedDropdown: React.FC<OpenDropdownProps>;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),s=require("../../../../hooks/useOutside.js"),n=require("../utils/iterationOnOptions.js"),i=require("./description/Description.js"),l=require("./menu/FreeFormMenu.js"),o=require("./menu/MenuList.js"),r=require("./menu/SelectAllMenu.js"),u=require("./multiSelect/MultiSelectDropdownBottomBar.js"),c=require("./OpennedDropdown.styled.js"),a=require("./searchbox/SearchBox.js"),d=require("./searchbox/ZeroState.js");const p=304,j=290;exports.OpennedDropdown=h=>{let{options:f,isSearchable:O,isMultiSelect:S,width:b,allowFreeForm:x,height:m,onClose:g,onSelect:v}=h;const[q,M]=t.useState(null!=f?f:[]),[F,w]=t.useState(null!=b?b:j),[D,y]=t.useState(""),[A,B]=t.useState(null),C=t.useRef(null);s.useOutside(C,(()=>{B(null),null==g||g()}));const L=null!=m?m:p,E="number"==typeof L&&O&&S?L-96:O&&!S||!O&&S?L-48:L;function Z(e){if(S){const t=n.iterateOnOptions(q,{selected:e.selected},(t=>t.value===e.value));M([...t])}else null==v||v(e)}t.useEffect((()=>{const e=null!=b?b:j;w(null===A?e:2*e)}),[A]);const _=q.map((e=>{var t;if(D){if(e.options){const t=Object.assign({},e);return t.options=t.options.filter((e=>{var t;return!!(null===(t=e.label)||void 0===t?void 0:t.includes(D))})),t.options.length>0?t:null}return(null===(t=e.label)||void 0===t?void 0:t.includes(D))?e:null}return e})).filter((e=>null!==e)),k=!!O&&D&&0===_.length;return e.jsxs(c.OpennedDropdownContainer,Object.assign({ref:C,style:{maxWidth:A?800:400,width:F,height:L}},{children:[e.jsxs("div",Object.assign({style:{width:A?"50%":"100%",display:"flex",flexDirection:"column"}},{children:[!!O&&e.jsx(a.SearchBox,{options:f,onSearch:function(e){y(e)}}),e.jsxs(c.MenuListContainer,Object.assign({maxHeight:E},{children:[!!S&&!k&&e.jsx(r.SelectAllMenu,{options:q,onSelect:function(e){if("selectAll"===e){const e=n.iterateOnOptions(q,{selected:!0},(e=>!e.disabled));M([...e])}else if("notSelected"===e){const e=n.iterateOnOptions(q,{selected:!1},(e=>!e.disabled));M([...e])}}}),!x&&k&&e.jsx(d.SearchZeroState,{searchedString:D}),x&&k&&e.jsx(l.FreeFormMenu,{isMultiSelect:S,onSelect:function(e){if(!S)return void Z({label:D,value:D,isFreeForm:!0,selected:!0});const t=q.map((t=>t.options?t:Object.assign(Object.assign({},t),{selected:t.label===D&&t.value===D&&e})));e&&(t.some((e=>e.label===D&&e.value===D))||t.unshift({label:D,value:D,isFreeForm:!0,selected:!0})),M([...t])},searchedString:D}),e.jsx(o.MenuList,{onSelect:Z,showDescription:function(e,t){B(e&&t?{title:e,description:t}:null)},isMultiSelect:S,options:_})]})),!!S&&e.jsx(u.default,{onClear:function(){const e=n.iterateOnOptions(q,{selected:!1});M([...e])},onApply:function(){const e=[];q.forEach((t=>{if(t.options){const s=t.options.filter((e=>!0===e.selected));e.push(Object.assign(Object.assign({},t),{options:[...s]}))}else t.selected&&e.push(Object.assign({},t))})),null==v||v([...e])},list:q})]})),!!A&&e.jsx(i.Description,{title:A.title,description:A.description})]}))};
@@ -0,0 +1,5 @@
1
+ export declare const OpennedDropdownContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
2
+ export declare const ItemContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
3
+ export declare const MenuListContainer: import("styled-components").StyledComponent<"div", any, {
4
+ maxHeight: number;
5
+ }, never>;
@@ -0,0 +1,24 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("styled-components"),t=require("../../../../constants/Theme.js");function o(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}var r=o(e);const i=r.default.div`
2
+ border-radius: 4px;
3
+ border: 1px solid ${t.COLORS.stroke.primary};
4
+ max-height: 640px;
5
+ overflow: hidden;
6
+ display: flex;
7
+ flex-direction: row;
8
+ position: relative;
9
+ `;r.default.div`
10
+ padding: 14px 16px 14px 18px;
11
+ flex-direction: row;
12
+ align-items: center;
13
+ border-bottom-width: 1px;
14
+ border-bottom-style: solid;
15
+ border-bottom-color: ${t.COLORS.stroke.primary};
16
+ width: 100%;
17
+ heigth: 100%;
18
+ `;const d=r.default.div`
19
+ max-height: ${e=>e.maxHeight}px;
20
+ overflow-y: auto;
21
+ flex: 1;
22
+ display: flex;
23
+ flex-direction: column;
24
+ `;exports.MenuListContainer=d,exports.OpennedDropdownContainer=i;
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ export declare const Description: React.FC<{
3
+ title: string;
4
+ visible: boolean;
5
+ description: string;
6
+ }>;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("../../../../TypographyStyle.js"),t=require("../../../../../constants/Theme.js"),s=require("./Description.styled.js");exports.Description=i=>{let{title:n,description:o,visible:c}=i;return e.jsx(s.DescriptionContainer,{children:e.jsxs("div",Object.assign({style:{padding:24}},{children:[e.jsx(r.TitleRegular,Object.assign({style:{color:t.COLORS.content.primary,marginBottom:4}},{children:n})),e.jsx(r.BodySecondary,Object.assign({style:{color:t.COLORS.content.secondary}},{children:o}))]}))})};
@@ -0,0 +1 @@
1
+ export declare const DescriptionContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -0,0 +1,5 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("styled-components"),t=require("../../../../../constants/Theme.js");function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}const o=r(e).default.div`
2
+ background: ${t.COLORS.surface.standard};
3
+ border-left: 1px solid ${t.COLORS.stroke.primary};
4
+ width: 50%;
5
+ `;exports.DescriptionContainer=o;
@@ -0,0 +1,6 @@
1
+ import React from 'react';
2
+ export declare const FreeFormMenu: React.FC<{
3
+ isMultiSelect: boolean;
4
+ searchedString: string;
5
+ onSelect: (isChecked: boolean) => void;
6
+ }>;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),r=require("styled-components"),n=require("../../../../checkBox/CheckBox.js"),s=require("../../../../list-item/ListItem.js"),o=require("../../../../TypographyStyle.js"),i=require("../../../../../constants/Theme.js"),c=require("./FreeFormMenu.styled.js");function l(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}const u=l(r).default(s.ListItem)``;exports.FreeFormMenu=r=>{let{searchedString:s,onSelect:l,isMultiSelect:a}=r;const[d,j]=t.useState(!1);function m(){j(!d),l(!d)}return e.jsx(u,{onClick:e=>{e.preventDefault(),m()},listItem:{label:s,value:s},trailingIcon:a?e.jsx(n.CheckBox,{isChecked:d,onValueChange:m}):e.jsx(e.Fragment,{}),leadingIcon:e.jsx(c.FreeFormContainer,{children:e.jsx(o.BodyCaption,Object.assign({style:{color:i.COLORS.content.secondary}},{children:"Freeform"}))})})};
@@ -0,0 +1 @@
1
+ export declare const FreeFormContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -0,0 +1,6 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("styled-components"),r=require("../../../../../constants/Theme.js");function t(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}const o=t(e).default.div`
2
+ padding: 4px 8px;
3
+ background: ${r.COLORS.surface.subdued};
4
+ border: 1px solid ${r.COLORS.stroke.primary};
5
+ border-radius: 4px;
6
+ `;exports.FreeFormContainer=o;
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { MultiSelectOption, SingleOption } from '../../../type';
3
+ export declare const MenuItem: React.FC<{
4
+ option: SingleOption | MultiSelectOption;
5
+ isMultiSelect?: boolean;
6
+ showDescription: (title?: string, description?: string) => void;
7
+ onSelect: (option: SingleOption) => void;
8
+ }>;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("styled-components"),s=require("../../../../checkBox/CheckBox.js"),i=require("../../../../list-item/ListItem.js"),r=require("../../../../TypographyStyle.js"),n=require("../../../../../constants/Theme.js"),o=require("./FreeFormMenu.styled.js");function c(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}const l=c(t).default(i.ListItem)``;exports.MenuItem=t=>{let{option:i,isMultiSelect:c,showDescription:a,onSelect:d}=t;var u;function j(e){i.disabled||d(Object.assign(Object.assign({},i),{selected:e}))}return e.jsx(l,{onClick:e=>{e.preventDefault(),j(!i.selected)},onMouseOver:function(){i.descriptions?a(i.label,i.descriptions):a()},listItem:i,trailingIcon:c?e.jsx(s.CheckBox,{isDisabled:null!==(u=i.disabled)&&void 0!==u&&u,isChecked:i.selected,onValueChange:j}):e.jsx(e.Fragment,{}),leadingIcon:i.isFreeForm?e.jsx(o.FreeFormContainer,{children:e.jsx(r.BodyCaption,Object.assign({style:{color:n.COLORS.content.secondary}},{children:"Freeform"}))}):e.jsx(e.Fragment,{}),variant:i.disabled?"inactive":"default"})};
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { DropdownOption, SingleOption } from '../../../type';
3
+ export declare const MenuList: React.FC<{
4
+ options: DropdownOption[];
5
+ isMultiSelect?: boolean;
6
+ showDescription: (title?: string, description?: string) => void;
7
+ onSelect: (optionSelect: SingleOption) => void;
8
+ }>;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("./MenuItem.js"),i=require("./MenuList.styled.js");exports.MenuList=s=>{let{options:r,isMultiSelect:n,showDescription:o,onSelect:l}=s;return e.jsx(e.Fragment,{children:r.map(((s,r)=>{if(s.options){const u=s;return e.jsxs("div",{children:[e.jsx(i.StyledGroupedLabel,{children:u.label}),u.options.map(((i,s)=>e.jsx(t.MenuItem,{onSelect:l,showDescription:o,isMultiSelect:n,option:i},s)))]},r)}return e.jsx(t.MenuItem,{onSelect:l,showDescription:o,isMultiSelect:n,option:s},r)}))})};
@@ -0,0 +1 @@
1
+ export declare const StyledGroupedLabel: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -0,0 +1,6 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("styled-components"),t=require("../../../../TypographyStyle.js"),o=require("../../../../../constants/Theme.js");function r(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}const n=r(e).default(t.BodyCaption)`
2
+ padding: 8px 16px;
3
+ height: 16px;
4
+ color: ${o.COLORS.content.secondary};
5
+ background-color: ${o.COLORS.background.base};
6
+ `;exports.StyledGroupedLabel=n;
@@ -0,0 +1,7 @@
1
+ import React from 'react';
2
+ import { DropdownOption } from '../../../type';
3
+ export type SelectAllCheckboxState = 'notSelected' | 'selectAll' | 'partiallySelected';
4
+ export declare const SelectAllMenu: React.FC<{
5
+ options: DropdownOption[];
6
+ onSelect: (newState: SelectAllCheckboxState) => void;
7
+ }>;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),l=require("styled-components"),n=require("../../../../checkBox/CheckBox.js"),r=require("../../../../list-item/ListItem.js");function i(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}const a=i(l).default(r.ListItem)``;exports.SelectAllMenu=l=>{let{options:r,onSelect:i}=l;const[o,c]=t.useState("notSelected");function s(){"partiallySelected"===o&&i("notSelected"),"selectAll"===o&&i("notSelected"),"notSelected"===o&&i("selectAll")}return t.useEffect((()=>{var e;if("all"===(r[0].options?!0===(null===(e=r[0].options)||void 0===e?void 0:e[0].selected)?"all":"none":!0===r[0].selected?"all":"none")){const e=r.filter((e=>!e.disabled)).reduce(((e,t)=>{if("all"===e){if(!t.options)return t.selected?"all":"partial";{const e=t.options.filter((e=>!e.disabled)),l=e.filter((e=>!0===e.selected));if(l.length===e.length)return"all";if(l.length<e.length)return"partial"}}return e}),"all");"all"===e&&c("selectAll"),"partial"===e&&c("partiallySelected")}else{const e=r.filter((e=>!e.disabled)).reduce(((e,t)=>{if("none"===e){if(!t.options)return t.selected?"partial":"none";{const e=t.options.filter((e=>!e.disabled)),l=e.filter((e=>!e.selected));if(l.length===e.length)return"none";if(l.length<e.length)return"partial"}}return e}),"none");"none"===e&&c("notSelected"),"partial"===e&&c("partiallySelected")}}),[r]),e.jsx(a,{onClick:e=>{e.preventDefault(),s()},listItem:{label:"Select All",value:"All"},trailingIcon:e.jsx(n.CheckBox,{isChecked:"selectAll"===o||"partiallySelected"===o,isPartiallyChecked:"partiallySelected"===o,onValueChange:s}),variant:"default"})};
@@ -0,0 +1,8 @@
1
+ import React from 'react';
2
+ import { DropdownOption } from '../../../type';
3
+ declare const MultiSelectDropdownBottomBar: React.FC<{
4
+ onClear?: () => void;
5
+ onApply: () => void;
6
+ list: DropdownOption[];
7
+ }>;
8
+ export default MultiSelectDropdownBottomBar;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("../../../../button/Button.js"),r=require("../../../../TypographyStyle.js"),s=require("../../../../../constants/Theme.js"),n=require("./MultiSelectDropdownBottomBar.styled.js");exports.default=o=>{let{onApply:l,onClear:i,list:a}=o;const c=a.reduce(((e,t)=>{if(t.options){return e+t.options.filter((e=>!0===e.selected)).length}return t.selected?e+1:e}),0);return e.jsxs(n.BottomBarContainer,Object.assign({style:{justifyContent:"space-between"}},{children:[e.jsx(r.BodySecondary,Object.assign({style:{flex:1,color:s.COLORS.content.primary}},{children:c?`${c} selected`:""})),e.jsxs("div",Object.assign({style:{flexDirection:"row",display:"flex",gap:12}},{children:[e.jsx(t.Button,{size:"small",buttonType:"tertiaryGray",buttonText:"Clear",onClick:i}),e.jsx(t.Button,{size:"small",buttonText:"Apply",onClick:l})]}))]}))};
@@ -0,0 +1 @@
1
+ export declare const BottomBarContainer: import("styled-components").StyledComponent<"div", any, {}, never>;
@@ -0,0 +1,8 @@
1
+ "use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e:{default:e}}Object.defineProperty(exports,"__esModule",{value:!0});const t=e(require("styled-components")).default.div`
2
+ display: flex;
3
+ padding: 8px 16px;
4
+ flex-direction: row;
5
+ align-items: center;
6
+ justify-content: end;
7
+ box-shadow: 0px -2px 8px rgba(0, 0, 0, 0.12);
8
+ `;exports.BottomBarContainer=t;
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ export declare const SearchBox: React.FC<{
3
+ onSearch: (searchString: string | null) => void;
4
+ }>;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("react"),t=require("../../../../input/Input.js"),n=require("../../../../input/context/InputStyleProvider.js"),o=require("../../../../../constants/Theme.js"),i=require("../../../../../assets/icons/cross.svg.js"),s=require("../../../../../assets/icons/search.svg.js");exports.SearchBox=a=>{let{onSearch:u}=a;const c=r.useRef();return e.jsx(n.InputStyleContext.Provider,Object.assign({value:{InputWrapper:{borderRadius:0,border:0,borderBottom:"1px solid "+o.COLORS.stroke.primary,padding:"12px 16px"},IconHolder:{marginLeft:0},input:{marginLeft:4,minHeight:"100%"}}},{children:e.jsx(t.Input,{ref:c,variant:"small",placeholder:"Search",leftIcon:{icon:()=>e.jsx(s.default,{width:24,height:24,color:o.COLORS.content.placeholder})},rightIcon:{icon:()=>{var r;return(null===(r=null==c?void 0:c.current)||void 0===r?void 0:r.value)?e.jsx(i.default,{onClick:()=>{c.current.value="",u("")},width:24,height:24,color:o.COLORS.content.placeholder}):e.jsx(e.Fragment,{})}},onChangeText:u})}))};
@@ -0,0 +1,4 @@
1
+ import React from 'react';
2
+ export declare const SearchZeroState: React.FC<{
3
+ searchedString: string;
4
+ }>;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),r=require("../../../../zeroState/ZeroState.js");exports.SearchZeroState=t=>{let{searchedString:o}=t;return e.jsx(r.ZeroState,{title:"No results found",subTitle:`\tSorry we could not find any results for "${null!=o?o:""}"`})};
@@ -0,0 +1 @@
1
+ export * from './components/OpennedDropdown';
@@ -0,0 +1,31 @@
1
+ import { DropdownOption, SingleOption } from '../../type';
2
+ export declare function iterateOnOptions(options: DropdownOption[], newVal: SingleOption, checkCB?: (optionForValidation: SingleOption) => boolean): ({
3
+ options: {
4
+ label?: string | undefined;
5
+ value?: string | undefined;
6
+ descriptions?: string | undefined;
7
+ selected?: boolean | undefined;
8
+ disabled?: boolean | undefined;
9
+ isFreeForm?: boolean | undefined;
10
+ }[];
11
+ label?: string | undefined;
12
+ value?: string | undefined;
13
+ descriptions?: string | undefined;
14
+ selected?: boolean | undefined;
15
+ disabled?: boolean | undefined;
16
+ isFreeForm?: boolean | undefined;
17
+ } | {
18
+ label?: string | undefined;
19
+ value?: string | undefined;
20
+ descriptions?: string | undefined;
21
+ selected?: boolean | undefined;
22
+ disabled?: boolean | undefined;
23
+ isFreeForm?: boolean | undefined;
24
+ } | {
25
+ label?: string | undefined;
26
+ value?: string | undefined;
27
+ descriptions?: string | undefined;
28
+ selected?: boolean | undefined;
29
+ disabled?: boolean | undefined;
30
+ options: (SingleOption | import("../../type").MultiSelectOption)[];
31
+ })[];
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0}),exports.iterateOnOptions=function(s,t,e){return s.map((s=>{if(s.options){const n=s.options.map((s=>!e||e(s)?Object.assign(Object.assign({},s),t):Object.assign({},s)));return Object.assign(Object.assign({},s),{options:[...n]})}return!e||e(s)?Object.assign(Object.assign({},s),t):Object.assign({},s)}))};
@@ -0,0 +1,26 @@
1
+ export interface OpenDropdownProps {
2
+ options: DropdownOption[];
3
+ isSearchable?: boolean;
4
+ error?: string;
5
+ isMultiSelect?: boolean;
6
+ width?: number | string;
7
+ height?: number | string;
8
+ allowFreeForm?: boolean;
9
+ onClose?: () => void;
10
+ onSelect?: (option: SingleOption | SingleOption[]) => void;
11
+ }
12
+ export type GroupedOption = {
13
+ label?: string;
14
+ options: (SingleOption | MultiSelectOption)[];
15
+ };
16
+ export type SingleOption = {
17
+ label?: string;
18
+ value?: string;
19
+ descriptions?: string;
20
+ selected?: boolean;
21
+ disabled?: boolean;
22
+ };
23
+ export type MultiSelectOption = SingleOption & {
24
+ isFreeForm?: boolean;
25
+ };
26
+ export type DropdownOption = MultiSelectOption | SingleOption | GroupedOption;
@@ -0,0 +1,20 @@
1
+ import React from 'react';
2
+ import { DropdownOption, SingleOption } from '../dropdown/type';
3
+ import { FAB_POSITION } from '../floating-action-button/FloatingActionButton.styles';
4
+ import { TooltipPlacement } from '../tooltips';
5
+ export declare const FABMenu: React.FC<{
6
+ onSelect: (selected: SingleOption | SingleOption[]) => void;
7
+ menuOptions: DropdownOption[];
8
+ buttonWidth?: number;
9
+ buttonHeight?: number;
10
+ buttonColor?: string;
11
+ buttonPosition?: FAB_POSITION;
12
+ menuWidth?: number;
13
+ menuHeight?: number;
14
+ buttonIcon?: JSX.Element;
15
+ buttonPaddingHorizontal?: number;
16
+ buttonPaddingVertical?: number;
17
+ tooltipPlacement?: TooltipPlacement;
18
+ tooltipText?: string;
19
+ zIndex?: number;
20
+ }>;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("react/jsx-runtime"),o=require("../dropdown/opennedDropdown/components/OpennedDropdown.js"),n=require("../floating-action-button/FloatingActionButton.js");require("../floating-action-button/FloatingActionButton.styles.js");exports.FABMenu=e=>{const{onSelect:i,menuOptions:r,buttonWidth:d,buttonHeight:u,buttonColor:l,buttonPosition:c,menuWidth:s,menuHeight:a,buttonIcon:p,buttonPaddingHorizontal:g,buttonPaddingVertical:b,tooltipPlacement:h,tooltipText:x,zIndex:j}=e;return t.jsx("div",{children:t.jsx(n.FloatingActionButton,Object.assign({icon:p,width:d,height:u,color:l,position:c,buttonPaddingHorizontal:g,buttonPaddingVertical:b,tooltipPlacement:h,tooltipText:x,zIndex:j},{children:t.jsx(o.OpennedDropdown,{options:r,height:a||90,width:s,onSelect:i})}))})};
@@ -0,0 +1 @@
1
+ export * from './FABMenu';
@@ -0,0 +1,18 @@
1
+ import 'bootstrap/dist/css/bootstrap.min.css';
2
+ import React from 'react';
3
+ import { TooltipPlacement } from '../tooltips/CustomisedTooltip';
4
+ import { FAB_POSITION } from './FloatingActionButton.styles';
5
+ export declare const FloatingActionButton: React.FC<{
6
+ onClick?: () => void;
7
+ children?: React.ReactNode;
8
+ width?: number;
9
+ height?: number;
10
+ icon?: JSX.Element;
11
+ color?: string;
12
+ position?: FAB_POSITION;
13
+ buttonPaddingHorizontal?: number;
14
+ buttonPaddingVertical?: number;
15
+ tooltipText?: string;
16
+ tooltipPlacement?: TooltipPlacement;
17
+ zIndex?: number;
18
+ }>;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("react/jsx-runtime"),o=require("react-bootstrap"),i=require("../../constants/Theme.js"),n=require("../tooltips/CustomisedTooltip.js"),e=require("../../assets/icons/question-mark.svg.js"),r=require("./FloatingActionButton.styles.js");const l=o=>{const{width:i,height:l,color:s,onClick:c,icon:d,tooltipPlacement:a,tooltipText:h}=o;return h?t.jsx(n.CustomisedTooltip,{tooltipContent:t.jsx(t.Fragment,{children:h}),tooltipTriggerContent:t.jsx(r.FloatingActionButtonContainer,Object.assign({width:i,height:l,color:s,onClick:c},{children:d||t.jsx(e.default,{width:22,height:22})})),tooltipPlacement:a,showOnHover:!0}):t.jsx(t.Fragment,{children:t.jsx(r.FloatingActionButtonContainer,Object.assign({width:i,height:l,color:s,onClick:c},{children:d||t.jsx(e.default,{width:22,height:22})}))})};exports.FloatingActionButton=e=>{const{icon:s,onClick:c,children:d,tooltipText:a}=e,h=e.width?e.width:48,g=e.height?e.height:48,u=e.color?e.color:i.COLORS.background.inverse,p=e.position?e.position:r.FAB_POSITION.TOP_LEFT,x=e.buttonPaddingHorizontal?e.buttonPaddingHorizontal:20,j=e.buttonPaddingVertical?e.buttonPaddingVertical:20,m=e.zIndex?e.zIndex:1,P=e.tooltipPlacement?e.tooltipPlacement:n.TooltipPlacement.Auto;return t.jsx(t.Fragment,{children:t.jsx(r.FloatingActionButtonOuterContainer,Object.assign({width:h,height:g,color:u,position:p,buttonPaddingHorizontal:x,buttonPaddingVertical:j,zIndex:m},{children:t.jsx(r.StyledDropdown,{children:d?t.jsxs(t.Fragment,{children:[t.jsx(r.DropdownToggleContainer,{children:t.jsx(l,{width:h,height:g,color:u,tooltipPlacement:P,onClick:c,tooltipText:a,icon:s,position:p})}),t.jsx(o.Dropdown.Menu,{children:d})]}):t.jsx(l,{width:h,height:g,color:u,tooltipPlacement:P,onClick:c,tooltipText:a,icon:s,position:p})})}))})};
@@ -0,0 +1,34 @@
1
+ /// <reference types="react" />
2
+ export declare enum FAB_POSITION {
3
+ TOP_LEFT = "top left",
4
+ TOP_RIGHT = "top right",
5
+ BOTTOM_LEFT = "bottom left",
6
+ BOTTOM_RIGHT = "botton right"
7
+ }
8
+ export declare const FloatingActionButtonContainer: import("styled-components").StyledComponent<"div", any, {
9
+ width: number;
10
+ height: number;
11
+ color: string;
12
+ }, never>;
13
+ export declare const FloatingActionButtonOuterContainer: import("styled-components").StyledComponent<"div", any, {
14
+ width: number;
15
+ height: number;
16
+ color: string;
17
+ position: FAB_POSITION;
18
+ buttonPaddingHorizontal: number;
19
+ buttonPaddingVertical: number;
20
+ zIndex: number;
21
+ }, never>;
22
+ export declare const StyledDropdown: import("styled-components").StyledComponent<import("react-bootstrap/esm/helpers").BsPrefixRefForwardingComponent<"div", import("react-bootstrap").DropdownProps> & {
23
+ Toggle: import("react-bootstrap/esm/helpers").BsPrefixRefForwardingComponent<"button", import("react-bootstrap/esm/DropdownToggle").DropdownToggleProps>;
24
+ Menu: import("react-bootstrap/esm/helpers").BsPrefixRefForwardingComponent<"div", import("react-bootstrap/esm/DropdownMenu").DropdownMenuProps>;
25
+ Item: import("react-bootstrap/esm/helpers").BsPrefixRefForwardingComponent<import("@restart/ui/esm/types").DynamicRefForwardingComponent<import("react").ForwardRefExoticComponent<import("@restart/ui/esm/Button").ButtonProps & import("react").RefAttributes<HTMLElement>>, import("@restart/ui/esm/DropdownItem").DropdownItemProps>, import("react-bootstrap/esm/DropdownItem").DropdownItemProps>;
26
+ ItemText: import("react-bootstrap/esm/helpers").BsPrefixRefForwardingComponent<"span", unknown>;
27
+ Divider: import("react-bootstrap/esm/helpers").BsPrefixRefForwardingComponent<"hr", unknown>;
28
+ Header: import("react-bootstrap/esm/helpers").BsPrefixRefForwardingComponent<"div", unknown>;
29
+ }, any, {
30
+ active?: string | undefined;
31
+ width?: string | undefined;
32
+ height?: string | undefined;
33
+ }, never>;
34
+ export declare const DropdownToggleContainer: import("styled-components").StyledComponent<import("react-bootstrap/esm/helpers").BsPrefixRefForwardingComponent<"button", import("react-bootstrap/esm/DropdownToggle").DropdownToggleProps>, any, {}, never>;
@@ -0,0 +1,87 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("react-bootstrap"),o=require("styled-components"),e=require("../../constants/Theme.js");function r(t){return t&&"object"==typeof t&&"default"in t?t:{default:t}}var i,n=r(o);exports.FAB_POSITION=void 0,(i=exports.FAB_POSITION||(exports.FAB_POSITION={})).TOP_LEFT="top left",i.TOP_RIGHT="top right",i.BOTTOM_LEFT="bottom left",i.BOTTOM_RIGHT="botton right";const d=n.default.div`
2
+ width: ${t=>t.width}px;
3
+ height: ${t=>t.height}px;
4
+ background: ${t=>t.color};
5
+ border-radius: 50%;
6
+ justify-content: center;
7
+ align-items: center;
8
+ cursor: pointer;
9
+ display: flex;
10
+ `,p=n.default.div`
11
+ display: flex;
12
+ border-radius: 50%;
13
+ flex-direction: column;
14
+ align-items: flex-end;
15
+ position: fixed;
16
+ width: ${t=>t.width}px;
17
+ height: ${t=>t.height}px;
18
+ z-index: ${t=>t.zIndex};
19
+ ${t=>t.position===exports.FAB_POSITION.BOTTOM_RIGHT?`right: ${t.buttonPaddingHorizontal}px; bottom: ${t.buttonPaddingVertical}px`:t.position===exports.FAB_POSITION.BOTTOM_LEFT?`left: ${t.buttonPaddingHorizontal}px; bottom: ${t.buttonPaddingVertical}px`:t.position===exports.FAB_POSITION.TOP_LEFT?`left: ${t.buttonPaddingHorizontal}px; top: ${t.buttonPaddingVertical}px`:t.position===exports.FAB_POSITION.TOP_RIGHT?`right: ${t.buttonPaddingHorizontal}px; top: ${t.buttonPaddingVertical}px`:""};
20
+ `,a=n.default(t.Dropdown)`
21
+ .filter-container {
22
+ .single-row {
23
+ display: flex;
24
+ flex-direction: row;
25
+ align-items: center;
26
+ justify-content: flex-start;
27
+ gap: 8px;
28
+ padding: 14px;
29
+ border-bottom: 1px solid ${e.COLORS.stroke.primary};
30
+
31
+ :last-child {
32
+ border-bottom: none !important;
33
+ }
34
+ }
35
+ }
36
+ button {
37
+ border: 1px solid
38
+ ${t=>"true"===t.active?e.COLORS.stroke.positive.lightAlt:e.COLORS.stroke.primary};
39
+ border-radius: 4px;
40
+ display: flex;
41
+ flex-direction: row;
42
+ align-items: center;
43
+ justify-content: space-between;
44
+ padding: 6px 8px;
45
+ background: ${t=>"true"===t.active?e.COLORS.background.positive.light:e.COLORS.surface.standard};
46
+ color: ${t=>"true"===t.active?e.COLORS.content.positive:e.COLORS.content.primary};
47
+ }
48
+
49
+ .btn-primary:hover,
50
+ .btn-primary:active,
51
+ .btn-primary:focus,
52
+ .btn-primary.dropdown-toggle,
53
+ .show > .btn-primary.dropdown-toggle {
54
+ color: ${t=>"true"===t.active?e.COLORS.content.positive:e.COLORS.content.primary};
55
+ background-color: ${t=>"true"===t.active?e.COLORS.background.positive.light:"transparent"};
56
+ border: none;
57
+ }
58
+ .btn:focus {
59
+ outline: 0;
60
+ box-shadow: 0 0 0 0.25rem transparent !important;
61
+ }
62
+
63
+ .dropdown-toggle::after {
64
+ border-top: 0.3em solid ${e.COLORS.content.primary};
65
+ display: none;
66
+ }
67
+ .dropdown-menu {
68
+ min-width: 12rem;
69
+ padding: 0 0;
70
+ }
71
+ .dropdown-item:active,
72
+ .dropdown-item:hover {
73
+ color: ${e.COLORS.content.positive};
74
+ text-decoration: none;
75
+ background-color: ${e.COLORS.background.positive.light};
76
+ }
77
+ `,s=n.default(t.Dropdown.Toggle)`
78
+ border-radius: 4px;
79
+ display: flex;
80
+ flex-direction: row;
81
+ align-items: center;
82
+ justify-content: space-between;
83
+ padding: 6px 8px;
84
+ font-weight: 400;
85
+ font-size: 14px;
86
+ line-height: 20px;
87
+ `;exports.DropdownToggleContainer=s,exports.FloatingActionButtonContainer=d,exports.FloatingActionButtonOuterContainer=p,exports.StyledDropdown=a;
@@ -0,0 +1,2 @@
1
+ export * from './FloatingActionButton';
2
+ export * from './FloatingActionButton.styles';
@@ -26,6 +26,7 @@ export interface InputProps {
26
26
  validate: function takes the input and returns boolean + string (error message in case of invalid input)
27
27
  **/
28
28
  validate: (input?: string | number) => [boolean, string];
29
+ onChangeText: (input: string) => void;
29
30
  button?: {
30
31
  text: string;
31
32
  onClick?: () => void;
@@ -0,0 +1 @@
1
+ "use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("react"),n=require("../button/Button.js"),i=require("../TypographyStyle.js"),r=require("../../assets/icons/errorInfo.svg.js"),l=require("./context/InputStyleProvider.js"),s=require("./Input.styled.js");const a=e=>e&&"function"==typeof e,o=t.forwardRef(((o,u)=>{var c,d,x;const{placeholder:h,leftIcon:v,rightIcon:j,labelText:p,maxCharLimit:f,isRequired:g,hintText:y,type:I,state:b,validate:C,variant:S,button:m,suffixText:O,prefixText:w,onChangeText:q,value:T}=Object.assign({maxCharLimit:0,type:"text",variant:"default"},o),k=null==v?void 0:v.icon,E=null==j?void 0:j.icon,[H,B]=t.useState(""),[F,L]=t.useState(!1),[M,R]=t.useState(!1),[D,P]=t.useState(),z="small"===S?"18px":"22px",A=t.useContext(l.InputStyleContext);t.useEffect((()=>{P(o.errorMessage)}),[o.errorMessage]),t.useEffect((()=>{L(!1),("invalid"===o.state||D)&&L(!0)}),[o.state,D]),t.useEffect((()=>{L(!!D)}),[D]),t.useEffect((()=>{if(q(H),!a(C))return;const[e,t]=C(H);L(!e),P(t)}),[H]);const K=function(e){if(a(e)){for(var t=arguments.length,n=new Array(t>1?t-1:0),i=1;i<t;i++)n[i-1]=arguments[i];e(...n)}},W=e=>{![8].includes(e.which)&&f>0&&e.target.value.length===f&&e.preventDefault()},_=e=>{B(e.target.value)},N=()=>{var t;return e.jsxs(e.Fragment,{children:["multiline"!==I&&e.jsx("input",{style:null!==(t=null==A?void 0:A.input)&&void 0!==t?t:{},ref:u,type:I,value:T,onFocus:()=>R(!0),onBlur:()=>R(!1),placeholder:h||"Enter here",onChange:_,onKeyDown:e=>W(e)}),"multiline"===I&&e.jsx("textarea",{value:T,ref:u,onFocus:()=>R(!0),onBlur:()=>R(!1),placeholder:h||"Enter here",onChange:_,onKeyDown:e=>W(e)})]})};return e.jsxs(s.RootContainer,Object.assign({width:o.width,height:o.height,state:b,type:I,style:null!==(c=null==A?void 0:A.RootContainer)&&void 0!==c?c:{}},{children:[(!!y||!!D)&&e.jsxs(s.InputFooter,Object.assign({invalid:!!D},{children:[!!D&&e.jsx(r.default,{}),D||y]})),e.jsxs(s.InputWrapper,Object.assign({variant:S,state:b,width:o.width,isActive:"active"===b||M,isInvalid:F,style:null!==(d=null==A?void 0:A.InputWrapper)&&void 0!==d?d:{}},{children:[!!k&&e.jsx(s.IconHolder,Object.assign({variant:S,iconSize:z,onClick:()=>K(null==v?void 0:v.callback),isLeft:!0,style:null!==(x=null==A?void 0:A.IconHolder)&&void 0!==x?x:{}},{children:e.jsx(k,{})})),!!w&&e.jsx(s.PrefixHolder,Object.assign({variant:S},{children:w})),"default"===S&&e.jsx(s.InputContainer,{children:N()}),"small"===S&&e.jsx(s.InputContainerSmall,{children:N()}),!!E&&e.jsx(s.IconHolder,Object.assign({variant:S,iconSize:z,onClick:()=>K(null==v?void 0:v.callback),isLeft:!1},{children:e.jsx(E,{})})),!!O&&e.jsx(s.SuffixHolder,Object.assign({variant:S},{children:O})),m&&m.text&&e.jsx(n.Button,{buttonText:m.text,onClick:()=>K(null==m?void 0:m.onClick)})]})),(!!p||!!f)&&"default"===S&&e.jsxs(s.InputHeader,Object.assign({invalid:F},{children:[e.jsxs(i.BodySecondary,{children:[p,g?e.jsx("span",{children:"*"}):""]}),f>0&&e.jsxs(s.MaxCharStyle,{children:[H.length,"/",f]})]}))]}))}));o.displayName="Input",exports.Input=o;