@popsure/dirty-swan 0.50.0 → 0.51.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/Readme.md +7 -0
- package/dist/cjs/index.js +225 -169
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/lib/components/button/index.d.ts +1 -1
- package/dist/cjs/lib/components/button/index.stories.d.ts +1 -1
- package/dist/cjs/lib/components/{card → cards/card}/index.d.ts +3 -1
- package/dist/{esm/lib/components → cjs/lib/components/cards}/card/index.stories.d.ts +9 -2
- package/dist/cjs/lib/components/cards/cardButton/index.d.ts +5 -11
- package/dist/cjs/lib/components/cards/cardButton/index.stories.d.ts +1 -1
- package/dist/cjs/lib/components/icon/icons/ArrowRightFilled.d.ts +4 -0
- package/dist/cjs/lib/components/icon/icons/index.d.ts +4 -1
- package/dist/cjs/lib/components/input/index.d.ts +1 -1
- package/dist/cjs/lib/components/input/input.stories.d.ts +1 -1
- package/dist/cjs/lib/components/modal/bottomModal/index.d.ts +2 -1
- package/dist/cjs/lib/components/modal/genericModal/index.d.ts +20 -0
- package/dist/cjs/lib/components/modal/hooks/useOnClose.d.ts +2 -0
- package/dist/cjs/lib/components/modal/index.d.ts +4 -3
- package/dist/cjs/lib/components/modal/index.stories.d.ts +2 -0
- package/dist/cjs/lib/components/modal/regularModal/index.d.ts +2 -1
- package/dist/cjs/lib/index.d.ts +1 -1
- package/dist/esm/components/{card → cards/card}/index.js +19 -11
- package/dist/esm/components/cards/card/index.js.map +1 -0
- package/dist/esm/components/{card → cards/card}/index.stories.js +21 -16
- package/dist/esm/components/cards/card/index.stories.js.map +1 -0
- package/dist/esm/components/cards/cardButton/index.js +12 -14
- package/dist/esm/components/cards/cardButton/index.js.map +1 -1
- package/dist/esm/components/cards/cardButton/index.stories.js +4 -4
- package/dist/esm/components/cards/cardButton/index.stories.js.map +1 -1
- package/dist/esm/components/cards/index.js +2 -1
- package/dist/esm/components/cards/index.js.map +1 -1
- package/dist/esm/components/cards/infoCard/index.js +2 -1
- package/dist/esm/components/cards/infoCard/index.js.map +1 -1
- package/dist/esm/components/cards/infoCard/index.stories.js +2 -1
- package/dist/esm/components/cards/infoCard/index.stories.js.map +1 -1
- package/dist/esm/components/icon/icons/ArrowRightFilled.js +13 -0
- package/dist/esm/components/icon/icons/ArrowRightFilled.js.map +1 -0
- package/dist/esm/components/icon/icons.stories.js +5 -2
- package/dist/esm/components/icon/icons.stories.js.map +1 -1
- package/dist/esm/components/icon/index.stories.js +5 -2
- package/dist/esm/components/icon/index.stories.js.map +1 -1
- package/dist/esm/components/modal/bottomModal/index.js +19 -24
- package/dist/esm/components/modal/bottomModal/index.js.map +1 -1
- package/dist/esm/components/modal/bottomOrRegularModal/index.js +3 -2
- package/dist/esm/components/modal/bottomOrRegularModal/index.js.map +1 -1
- package/dist/esm/components/modal/genericModal/index.js +94 -0
- package/dist/esm/components/modal/genericModal/index.js.map +1 -0
- package/dist/esm/components/modal/index.stories.js +26 -3
- package/dist/esm/components/modal/index.stories.js.map +1 -1
- package/dist/esm/components/modal/regularModal/index.js +18 -16
- package/dist/esm/components/modal/regularModal/index.js.map +1 -1
- package/dist/esm/{index-e506c4ca.js → index-73378a46.js} +9 -3
- package/dist/esm/{index-e506c4ca.js.map → index-73378a46.js.map} +1 -1
- package/dist/esm/index.js +6 -3
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/lib/components/button/index.d.ts +1 -1
- package/dist/esm/lib/components/button/index.stories.d.ts +1 -1
- package/dist/esm/lib/components/{card → cards/card}/index.d.ts +3 -1
- package/dist/{cjs/lib/components → esm/lib/components/cards}/card/index.stories.d.ts +9 -2
- package/dist/esm/lib/components/cards/cardButton/index.d.ts +5 -11
- package/dist/esm/lib/components/cards/cardButton/index.stories.d.ts +1 -1
- package/dist/esm/lib/components/icon/icons/ArrowRightFilled.d.ts +4 -0
- package/dist/esm/lib/components/icon/icons/index.d.ts +4 -1
- package/dist/esm/lib/components/input/index.d.ts +1 -1
- package/dist/esm/lib/components/input/input.stories.d.ts +1 -1
- package/dist/esm/lib/components/modal/bottomModal/index.d.ts +2 -1
- package/dist/esm/lib/components/modal/genericModal/index.d.ts +20 -0
- package/dist/esm/lib/components/modal/hooks/useOnClose.d.ts +2 -0
- package/dist/esm/lib/components/modal/index.d.ts +4 -3
- package/dist/esm/lib/components/modal/index.stories.d.ts +2 -0
- package/dist/esm/lib/components/modal/regularModal/index.d.ts +2 -1
- package/dist/esm/lib/index.d.ts +1 -1
- package/package.json +1 -1
- package/src/lib/components/{card → cards/card}/index.stories.tsx +12 -5
- package/src/lib/components/{card → cards/card}/index.tsx +19 -6
- package/src/lib/components/{card → cards/card}/style.module.scss +5 -1
- package/src/lib/components/cards/cardButton/index.stories.tsx +11 -15
- package/src/lib/components/cards/cardButton/index.tsx +33 -48
- package/src/lib/components/cards/cardButton/style.module.scss +4 -37
- package/src/lib/components/icon/assets/arrow-right-filled.svg +4 -0
- package/src/lib/components/icon/icons/ArrowRightFilled.tsx +23 -0
- package/src/lib/components/icon/icons/index.ts +4 -1
- package/src/lib/components/modal/bottomModal/index.tsx +18 -78
- package/src/lib/components/modal/bottomModal/style.module.scss +11 -71
- package/src/lib/components/modal/genericModal/index.tsx +133 -0
- package/src/lib/components/modal/genericModal/style.module.scss +71 -0
- package/src/lib/components/modal/hooks/useOnClose.ts +27 -5
- package/src/lib/components/modal/index.stories.tsx +95 -0
- package/src/lib/components/modal/index.ts +4 -2
- package/src/lib/components/modal/regularModal/index.tsx +20 -61
- package/src/lib/components/modal/regularModal/style.module.scss +6 -74
- package/src/lib/index.tsx +1 -1
- package/dist/esm/components/card/index.js.map +0 -1
- package/dist/esm/components/card/index.stories.js.map +0 -1
- package/dist/esm/useOnClose-d818a54f.js +0 -46
- package/dist/esm/useOnClose-d818a54f.js.map +0 -1
- package/src/lib/components/cards/a.stories.mdx +0 -44
- package/src/lib/components/modal/bottomModal/img/close.svg +0 -4
- package/src/lib/components/modal/regularModal/img/close.svg +0 -4
|
@@ -1,25 +1,23 @@
|
|
|
1
1
|
import { _ as __assign } from '../../../tslib.es6-5bc94358.js';
|
|
2
|
-
import { jsx
|
|
3
|
-
import { createElement } from 'react';
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
3
|
import ChevronRightIcon from '../../icon/icons/ChevronRight.js';
|
|
5
4
|
import { s as styleInject } from '../../../style-inject.es-1f59c1d0.js';
|
|
5
|
+
import { Card } from '../card/index.js';
|
|
6
|
+
import { c as classNames } from '../../../index-6ea95111.js';
|
|
7
|
+
import 'react';
|
|
6
8
|
import '../../icon/IconWrapper/IconWrapper.js';
|
|
7
|
-
import '../../../index-6ea95111.js';
|
|
8
9
|
|
|
9
|
-
var css_248z = ".style-
|
|
10
|
-
var styles = {"
|
|
10
|
+
var css_248z = ".style-module_containerDisabled__2j9_N {\n pointer-events: none;\n opacity: 0.25;\n}";
|
|
11
|
+
var styles = {"containerDisabled":"style-module_containerDisabled__2j9_N"};
|
|
11
12
|
styleInject(css_248z);
|
|
12
13
|
|
|
13
|
-
var CardContent = function (_a) {
|
|
14
|
-
var title = _a.title, description = _a.description;
|
|
15
|
-
return (jsxs(Fragment, { children: [jsxs("div", { children: [jsx("div", __assign({ className: "p-p--small" }, { children: title }), void 0),
|
|
16
|
-
typeof description === 'string' ? (jsx("div", __assign({ className: "tc-primary-500 p-p" }, { children: description }), void 0)) : (description)] }, void 0),
|
|
17
|
-
jsx(ChevronRightIcon, { size: 16, color: 'purple-500', className: styles.chevronRight }, void 0)] }, void 0));
|
|
18
|
-
};
|
|
19
14
|
var CardButton = function (_a) {
|
|
20
|
-
var
|
|
21
|
-
var
|
|
22
|
-
return (jsx(
|
|
15
|
+
var _b;
|
|
16
|
+
var title = _a.title, description = _a.description, _c = _a.disabled, disabled = _c === void 0 ? false : _c, className = _a.className, href = _a.href;
|
|
17
|
+
return (jsx(Card, __assign({ as: href ? 'a' : 'button', classNames: {
|
|
18
|
+
buttonWrapper: classNames('c-pointer ta-left w100', className, (_b = {}, _b[styles.containerDisabled] = disabled, _b)),
|
|
19
|
+
description: 'tc-primary-500 p-p',
|
|
20
|
+
}, density: 'compact', label: title, description: typeof description === 'string' ? description : null, actionIcon: jsx(ChevronRightIcon, { size: 20, color: 'purple-500', className: styles.chevronRight }, void 0), showActionIcon: true }, href ? { href: href } : {}, { children: typeof description !== 'string' ? description : null }), void 0));
|
|
23
21
|
};
|
|
24
22
|
|
|
25
23
|
export { CardButton };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/lib/components/cards/cardButton/index.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/lib/components/cards/cardButton/index.tsx"],"sourcesContent":["import { ReactNode } from 'react';\n\nimport { ChevronRightIcon } from '../../icon/icons';\n\nimport styles from './style.module.scss';\nimport { Card, CardProps } from '../card';\nimport classNames from 'classnames';\n\nexport type CardButtonProps = {\n title: string;\n description: string | ReactNode;\n disabled?: boolean;\n className?: string;\n href?: string;\n} & CardProps;\n\nexport const CardButton = ({\n title,\n description,\n disabled = false,\n className,\n href,\n}: CardButtonProps) => (\n <Card\n as={href ? 'a' : 'button'}\n classNames={{\n buttonWrapper: classNames(\n 'c-pointer ta-left w100',\n className,\n { [styles.containerDisabled]: disabled }\n ),\n description: 'tc-primary-500 p-p',\n }}\n density='compact'\n label={title}\n description={typeof description === 'string' ? description : null}\n actionIcon={\n <ChevronRightIcon\n size={20}\n color={'purple-500'}\n className={styles.chevronRight}\n />\n }\n showActionIcon\n {...href ? { href } : {}}\n >\n {typeof description !== 'string' ? description : null}\n </Card>\n);\n"],"names":["_jsx"],"mappings":";;;;;;;;;;;;;IAgBa,UAAU,GAAG,UAAC,EAMT;;QALhB,KAAK,WAAA,EACL,WAAW,iBAAA,EACX,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA,EAChB,SAAS,eAAA,EACT,IAAI,UAAA;IACiB,QACrBA,IAAC,IAAI,aACD,EAAE,EAAE,IAAI,GAAG,GAAG,GAAG,QAAQ,EACzB,UAAU,EAAE;YACV,aAAa,EAAE,UAAU,CACvB,wBAAwB,EACxB,SAAS,YACP,GAAC,MAAM,CAAC,iBAAiB,IAAG,QAAQ,MACvC;YACD,WAAW,EAAE,oBAAoB;SAClC,EACD,OAAO,EAAC,SAAS,EACjB,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,OAAO,WAAW,KAAK,QAAQ,GAAG,WAAW,GAAG,IAAI,EACjE,UAAU,EACRA,IAAC,gBAAgB,IACf,IAAI,EAAE,EAAE,EACR,KAAK,EAAE,YAAY,EACnB,SAAS,EAAE,MAAM,CAAC,YAAY,WAC9B,EAEJ,cAAc,UACV,IAAI,GAAG,EAAE,IAAI,MAAA,EAAE,GAAG,EAAE,cAEvB,OAAO,WAAW,KAAK,QAAQ,GAAG,WAAW,GAAG,IAAI,YAClD;AAzBc;;;;"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { CardButton } from './index.js';
|
|
3
3
|
import '../../../tslib.es6-5bc94358.js';
|
|
4
|
-
import 'react';
|
|
5
4
|
import '../../icon/icons/ChevronRight.js';
|
|
5
|
+
import 'react';
|
|
6
6
|
import '../../icon/IconWrapper/IconWrapper.js';
|
|
7
7
|
import '../../../index-6ea95111.js';
|
|
8
8
|
import '../../../style-inject.es-1f59c1d0.js';
|
|
9
|
+
import '../card/index.js';
|
|
9
10
|
|
|
10
11
|
var story = {
|
|
11
12
|
title: 'JSX/Cards/CardButton',
|
|
@@ -35,15 +36,14 @@ var story = {
|
|
|
35
36
|
},
|
|
36
37
|
},
|
|
37
38
|
href: {
|
|
38
|
-
defaultValue: '',
|
|
39
|
+
defaultValue: 'https://feather-insurance.com/',
|
|
39
40
|
description: 'Redirect URL on click of the button',
|
|
40
41
|
},
|
|
41
42
|
},
|
|
42
43
|
};
|
|
43
44
|
var CardButtonStory = function (_a) {
|
|
44
45
|
var title = _a.title, description = _a.description, disabled = _a.disabled, className = _a.className, href = _a.href, onClick = _a.onClick;
|
|
45
|
-
|
|
46
|
-
return (jsx(CardButton, { title: title, description: description, disabled: disabled, className: className, href: href, onClick: handleOnClick }, void 0));
|
|
46
|
+
return (jsx(CardButton, { title: title, description: description, disabled: disabled, className: className, href: href, onClick: onClick }, void 0));
|
|
47
47
|
};
|
|
48
48
|
CardButtonStory.storyName = "CardButton";
|
|
49
49
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.stories.js","sources":["../../../../../../src/lib/components/cards/cardButton/index.stories.tsx"],"sourcesContent":["import {
|
|
1
|
+
{"version":3,"file":"index.stories.js","sources":["../../../../../../src/lib/components/cards/cardButton/index.stories.tsx"],"sourcesContent":["import { CardButton, CardButtonProps } from '.';\n\nconst story = {\n title: 'JSX/Cards/CardButton',\n component: CardButton,\n argTypes: {\n title: {\n defaultValue: 'Risky Sports',\n description: 'Title text that needs to be displayed',\n },\n description: {\n defaultValue: 'Mountain or rock climbing, Bouldering, Martial arts, Extreme sports, Scuba diving, Sky diving, Bungee jumping, Mountain or rock climbing, Bouldering, Martial arts,',\n description: 'Description text that is displayed under title',\n },\n disabled: {\n defaultValue: false,\n description: 'Disabled state of the button',\n },\n className: {\n defaultValue: '',\n description: 'Class name for most top parent element',\n },\n onClick: {\n description: 'Function that runs on click of the button',\n action: true,\n table: {\n category: 'Callbacks',\n },\n },\n href: {\n defaultValue: 'https://feather-insurance.com/',\n description: 'Redirect URL on click of the button',\n },\n },\n};\n\nexport const CardButtonStory = ({\n title,\n description,\n disabled,\n className,\n href,\n onClick,\n}: CardButtonProps) => (\n <CardButton\n title={title}\n description={description}\n disabled={disabled}\n className={className}\n href={href}\n onClick={onClick}\n />\n);\n\nCardButtonStory.storyName = \"CardButton\";\n\nexport default story;\n"],"names":["_jsx"],"mappings":";;;;;;;;;;IAEM,KAAK,GAAG;IACZ,KAAK,EAAE,sBAAsB;IAC7B,SAAS,EAAE,UAAU;IACrB,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,YAAY,EAAE,cAAc;YAC5B,WAAW,EAAE,uCAAuC;SACrD;QACD,WAAW,EAAE;YACX,YAAY,EAAE,qKAAqK;YACnL,WAAW,EAAE,gDAAgD;SAC9D;QACD,QAAQ,EAAE;YACR,YAAY,EAAE,KAAK;YACnB,WAAW,EAAE,8BAA8B;SAC5C;QACD,SAAS,EAAE;YACT,YAAY,EAAE,EAAE;YAChB,WAAW,EAAE,wCAAwC;SACtD;QACD,OAAO,EAAE;YACP,WAAW,EAAE,2CAA2C;YACxD,MAAM,EAAE,IAAI;YACZ,KAAK,EAAE;gBACL,QAAQ,EAAE,WAAW;aACtB;SACF;QACD,IAAI,EAAE;YACJ,YAAY,EAAE,gCAAgC;YAC9C,WAAW,EAAE,qCAAqC;SACnD;KACF;EACD;IAEW,eAAe,GAAG,UAAC,EAOd;QANhB,KAAK,WAAA,EACL,WAAW,iBAAA,EACX,QAAQ,cAAA,EACR,SAAS,eAAA,EACT,IAAI,UAAA,EACJ,OAAO,aAAA;IACc,QACrBA,IAAC,UAAU,IACT,KAAK,EAAE,KAAK,EACZ,WAAW,EAAE,WAAW,EACxB,QAAQ,EAAE,QAAQ,EAClB,SAAS,EAAE,SAAS,EACpB,IAAI,EAAE,IAAI,EACV,OAAO,EAAE,OAAO,WAChB;AARmB,EASrB;AAEF,eAAe,CAAC,SAAS,GAAG,YAAY;;;;;"}
|
|
@@ -2,10 +2,11 @@ import { a as __rest, _ as __assign } from '../../tslib.es6-5bc94358.js';
|
|
|
2
2
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
3
3
|
export { CardButton } from './cardButton/index.js';
|
|
4
4
|
import { s as styleInject } from '../../style-inject.es-1f59c1d0.js';
|
|
5
|
-
import 'react';
|
|
6
5
|
import '../icon/icons/ChevronRight.js';
|
|
6
|
+
import 'react';
|
|
7
7
|
import '../icon/IconWrapper/IconWrapper.js';
|
|
8
8
|
import '../../index-6ea95111.js';
|
|
9
|
+
import './card/index.js';
|
|
9
10
|
|
|
10
11
|
var infoImage = "data:image/svg+xml,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20clip-path%3D%22url%28%23clip0%29%22%3E%3Cpath%20d%3D%22M10%2018.3334C14.6024%2018.3334%2018.3334%2014.6024%2018.3334%2010C18.3334%205.39765%2014.6024%201.66669%2010%201.66669C5.39765%201.66669%201.66669%205.39765%201.66669%2010C1.66669%2014.6024%205.39765%2018.3334%2010%2018.3334Z%22%20stroke%3D%22%238E8CEE%22%20strokeWidth%3D%222%22%20strokeLinecap%3D%22round%22%20strokeLinejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M10%2013.3333V10%22%20stroke%3D%22%238E8CEE%22%20strokeWidth%3D%222%22%20strokeLinecap%3D%22round%22%20strokeLinejoin%3D%22round%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%226.66665%22%20r%3D%220.833333%22%20fill%3D%22%238E8CEE%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CclipPath%20id%3D%22clip0%22%3E%3Crect%20width%3D%2220%22%20height%3D%2220%22%20fill%3D%22white%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E";
|
|
11
12
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../src/lib/components/cards/icons/info.svg","../../../../../src/lib/components/cards/icons/index.ts","../../../../../src/lib/components/cards/infoCard/index.tsx","../../../../../src/lib/components/cards/index.tsx"],"sourcesContent":["export default \"data:image/svg+xml,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20clip-path%3D%22url%28%23clip0%29%22%3E%3Cpath%20d%3D%22M10%2018.3334C14.6024%2018.3334%2018.3334%2014.6024%2018.3334%2010C18.3334%205.39765%2014.6024%201.66669%2010%201.66669C5.39765%201.66669%201.66669%205.39765%201.66669%2010C1.66669%2014.6024%205.39765%2018.3334%2010%2018.3334Z%22%20stroke%3D%22%238E8CEE%22%20strokeWidth%3D%222%22%20strokeLinecap%3D%22round%22%20strokeLinejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M10%2013.3333V10%22%20stroke%3D%22%238E8CEE%22%20strokeWidth%3D%222%22%20strokeLinecap%3D%22round%22%20strokeLinejoin%3D%22round%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%226.66665%22%20r%3D%220.833333%22%20fill%3D%22%238E8CEE%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CclipPath%20id%3D%22clip0%22%3E%3Crect%20width%3D%2220%22%20height%3D%2220%22%20fill%3D%22white%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E\"","import arrowRightImage from './arrow-right.svg';\nimport featherLogoImage from './feather-logo.svg';\nimport infoImage from './info.svg';\n\nexport interface Icon {\n src: string;\n alt: string;\n}\n\nexport interface IconSize {\n width: number;\n height: number;\n}\n\nconst arrowRight: Icon = {\n src: arrowRightImage,\n alt: 'arrow pointing right',\n};\n\nconst featherLogo: Icon = {\n src: featherLogoImage,\n alt: 'feather logo',\n};\n\nconst info: Icon = {\n src: infoImage,\n alt: 'circle with the letter i inside for information',\n};\n\n\nexport { arrowRight, featherLogo, info };\n","import { associatedClassForCardState, CardProps } from '..';\nimport { Icon, info } from '../icons';\n\nimport styles from './style.module.scss';\n\nexport type InfoCardProps = CardProps & {\n topIcon: Icon;\n rightIcon?: 'info' | Icon;\n};\n\nexport const InfoCard = ({\n className,\n title,\n children,\n topIcon,\n rightIcon,\n state = 'actionable',\n dropshadow = true,\n ...props\n}: InfoCardProps) => (\n <div className={`${styles['root-container']} ${className ?? ''}`} {...props}>\n <img\n src={topIcon.src}\n alt={topIcon.alt}\n className={`${styles['top-icon']} ${\n state === 'muted' ? styles['top-icon--muted'] : ''\n } `}\n width=\"80px\"\n height=\"80px\"\n />\n <div\n className={`${associatedClassForCardState(state, dropshadow)} ${\n styles.container\n }`}\n >\n {rightIcon && (\n <img\n width=\"20px\"\n height=\"20px\"\n className={styles['right-icon']}\n src={rightIcon === 'info' ? info.src : rightIcon.src}\n alt={rightIcon === 'info' ? info.alt : rightIcon.alt}\n />\n )}\n <div className=\"p-h4 ta-center mt64\">{title}</div>\n <div className=\"p-p mt16 tc-grey-600\">{children}</div>\n </div>\n </div>\n);\n","import { InfoCard } from './infoCard';\nimport { CardButton } from './cardButton';\n\ntype CardState = 'actionable' | 'static' | 'muted';\n\nexport type CardProps = {\n title: string;\n children: React.ReactNode;\n state?: CardState;\n dropshadow?: boolean;\n} & JSX.IntrinsicElements['div'];\n\nexport const headingForCardSize = (\n cardSize: 'xsmall' | 'small' | 'medium' | 'big'\n): string => {\n switch (cardSize) {\n case 'xsmall':\n case 'small':\n return 'p-h4';\n case 'medium':\n return 'p-h3';\n case 'big':\n return 'p-h2';\n }\n};\n\nexport const associatedClassForCardState = (\n state: CardState,\n dropshadow: boolean\n): string => {\n const baseClass = (() => {\n switch (state) {\n case 'actionable':\n return 'ds-card--actionable';\n case 'muted':\n return 'ds-card--muted';\n case 'static':\n return 'ds-card';\n }\n })();\n\n if (dropshadow === false) {\n return `${baseClass} ds-card--no-dropshadow`;\n }\n return baseClass;\n};\n\nexport {\n InfoCard,\n CardButton,\n};\n"],"names":["_jsxs","_jsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../src/lib/components/cards/icons/info.svg","../../../../../src/lib/components/cards/icons/index.ts","../../../../../src/lib/components/cards/infoCard/index.tsx","../../../../../src/lib/components/cards/index.tsx"],"sourcesContent":["export default \"data:image/svg+xml,%3Csvg%20width%3D%2220%22%20height%3D%2220%22%20viewBox%3D%220%200%2020%2020%22%20fill%3D%22none%22%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%3E%3Cg%20clip-path%3D%22url%28%23clip0%29%22%3E%3Cpath%20d%3D%22M10%2018.3334C14.6024%2018.3334%2018.3334%2014.6024%2018.3334%2010C18.3334%205.39765%2014.6024%201.66669%2010%201.66669C5.39765%201.66669%201.66669%205.39765%201.66669%2010C1.66669%2014.6024%205.39765%2018.3334%2010%2018.3334Z%22%20stroke%3D%22%238E8CEE%22%20strokeWidth%3D%222%22%20strokeLinecap%3D%22round%22%20strokeLinejoin%3D%22round%22%2F%3E%3Cpath%20d%3D%22M10%2013.3333V10%22%20stroke%3D%22%238E8CEE%22%20strokeWidth%3D%222%22%20strokeLinecap%3D%22round%22%20strokeLinejoin%3D%22round%22%2F%3E%3Ccircle%20cx%3D%2210%22%20cy%3D%226.66665%22%20r%3D%220.833333%22%20fill%3D%22%238E8CEE%22%2F%3E%3C%2Fg%3E%3Cdefs%3E%3CclipPath%20id%3D%22clip0%22%3E%3Crect%20width%3D%2220%22%20height%3D%2220%22%20fill%3D%22white%22%2F%3E%3C%2FclipPath%3E%3C%2Fdefs%3E%3C%2Fsvg%3E\"","import arrowRightImage from './arrow-right.svg';\nimport featherLogoImage from './feather-logo.svg';\nimport infoImage from './info.svg';\n\nexport interface Icon {\n src: string;\n alt: string;\n}\n\nexport interface IconSize {\n width: number;\n height: number;\n}\n\nconst arrowRight: Icon = {\n src: arrowRightImage,\n alt: 'arrow pointing right',\n};\n\nconst featherLogo: Icon = {\n src: featherLogoImage,\n alt: 'feather logo',\n};\n\nconst info: Icon = {\n src: infoImage,\n alt: 'circle with the letter i inside for information',\n};\n\n\nexport { arrowRight, featherLogo, info };\n","import { associatedClassForCardState, CardProps } from '..';\nimport { Icon, info } from '../icons';\n\nimport styles from './style.module.scss';\n\nexport type InfoCardProps = CardProps & {\n topIcon: Icon;\n rightIcon?: 'info' | Icon;\n};\n\nexport const InfoCard = ({\n className,\n title,\n children,\n topIcon,\n rightIcon,\n state = 'actionable',\n dropshadow = true,\n ...props\n}: InfoCardProps) => (\n <div className={`${styles['root-container']} ${className ?? ''}`} {...props}>\n <img\n src={topIcon.src}\n alt={topIcon.alt}\n className={`${styles['top-icon']} ${\n state === 'muted' ? styles['top-icon--muted'] : ''\n } `}\n width=\"80px\"\n height=\"80px\"\n />\n <div\n className={`${associatedClassForCardState(state, dropshadow)} ${\n styles.container\n }`}\n >\n {rightIcon && (\n <img\n width=\"20px\"\n height=\"20px\"\n className={styles['right-icon']}\n src={rightIcon === 'info' ? info.src : rightIcon.src}\n alt={rightIcon === 'info' ? info.alt : rightIcon.alt}\n />\n )}\n <div className=\"p-h4 ta-center mt64\">{title}</div>\n <div className=\"p-p mt16 tc-grey-600\">{children}</div>\n </div>\n </div>\n);\n","import { InfoCard } from './infoCard';\nimport { CardButton } from './cardButton';\n\ntype CardState = 'actionable' | 'static' | 'muted';\n\nexport type CardProps = {\n title: string;\n children: React.ReactNode;\n state?: CardState;\n dropshadow?: boolean;\n} & JSX.IntrinsicElements['div'];\n\nexport const headingForCardSize = (\n cardSize: 'xsmall' | 'small' | 'medium' | 'big'\n): string => {\n switch (cardSize) {\n case 'xsmall':\n case 'small':\n return 'p-h4';\n case 'medium':\n return 'p-h3';\n case 'big':\n return 'p-h2';\n }\n};\n\nexport const associatedClassForCardState = (\n state: CardState,\n dropshadow: boolean\n): string => {\n const baseClass = (() => {\n switch (state) {\n case 'actionable':\n return 'ds-card--actionable';\n case 'muted':\n return 'ds-card--muted';\n case 'static':\n return 'ds-card';\n }\n })();\n\n if (dropshadow === false) {\n return `${baseClass} ds-card--no-dropshadow`;\n }\n return baseClass;\n};\n\nexport {\n InfoCard,\n CardButton,\n};\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;;;;AAAA,gBAAe;;ACwBf,IAAM,IAAI,GAAS;IACjB,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,iDAAiD;CACvD;;;;;;ICjBY,QAAQ,GAAG,UAAC,EAST;IARd,IAAA,SAAS,eAAA,EACT,KAAK,WAAA,EACL,QAAQ,cAAA,EACR,OAAO,aAAA,EACP,SAAS,eAAA,EACT,aAAoB,EAApB,KAAK,mBAAG,YAAY,KAAA,EACpB,kBAAiB,EAAjB,UAAU,mBAAG,IAAI,KAAA,EACd,KAAK,cARe,iFASxB,CADS;IACW,QACnBA,uBAAK,SAAS,EAAK,MAAM,CAAC,gBAAgB,CAAC,UAAI,SAAS,aAAT,SAAS,cAAT,SAAS,GAAI,EAAE,CAAE,IAAM,KAAK,eACzEC,aACE,GAAG,EAAE,OAAO,CAAC,GAAG,EAChB,GAAG,EAAE,OAAO,CAAC,GAAG,EAChB,SAAS,EAAK,MAAM,CAAC,UAAU,CAAC,UAC9B,KAAK,KAAK,OAAO,GAAG,MAAM,CAAC,iBAAiB,CAAC,GAAG,EAAE,OACjD,EACH,KAAK,EAAC,MAAM,EACZ,MAAM,EAAC,MAAM,WACb;YACFD,uBACE,SAAS,EAAK,2BAA2B,CAAC,KAAK,EAAE,UAAU,CAAC,SAC1D,MAAM,CAAC,SACP,iBAED,SAAS,KACRC,aACE,KAAK,EAAC,MAAM,EACZ,MAAM,EAAC,MAAM,EACb,SAAS,EAAE,MAAM,CAAC,YAAY,CAAC,EAC/B,GAAG,EAAE,SAAS,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,EACpD,GAAG,EAAE,SAAS,KAAK,MAAM,GAAG,IAAI,CAAC,GAAG,GAAG,SAAS,CAAC,GAAG,WACpD,CACH;oBACDA,sBAAK,SAAS,EAAC,qBAAqB,gBAAE,KAAK,YAAO;oBAClDA,sBAAK,SAAS,EAAC,sBAAsB,gBAAE,QAAQ,YAAO,aAClD,aACF,EACP;;;ICpCY,kBAAkB,GAAG,UAChC,QAA+C;IAE/C,QAAQ,QAAQ;QACd,KAAK,QAAQ,CAAC;QACd,KAAK,OAAO;YACV,OAAO,MAAM,CAAC;QAChB,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC;QAChB,KAAK,KAAK;YACR,OAAO,MAAM,CAAC;KACjB;AACH,EAAE;IAEW,2BAA2B,GAAG,UACzC,KAAgB,EAChB,UAAmB;IAEnB,IAAM,SAAS,GAAG,CAAC;QACjB,QAAQ,KAAK;YACX,KAAK,YAAY;gBACf,OAAO,qBAAqB,CAAC;YAC/B,KAAK,OAAO;gBACV,OAAO,gBAAgB,CAAC;YAC1B,KAAK,QAAQ;gBACX,OAAO,SAAS,CAAC;SACpB;KACF,GAAG,CAAC;IAEL,IAAI,UAAU,KAAK,KAAK,EAAE;QACxB,OAAU,SAAS,4BAAyB,CAAC;KAC9C;IACD,OAAO,SAAS,CAAC;AACnB;;;;"}
|
|
@@ -2,9 +2,10 @@ import '../../../tslib.es6-5bc94358.js';
|
|
|
2
2
|
import 'react/jsx-runtime';
|
|
3
3
|
export { InfoCard } from '../index.js';
|
|
4
4
|
import '../cardButton/index.js';
|
|
5
|
-
import 'react';
|
|
6
5
|
import '../../icon/icons/ChevronRight.js';
|
|
6
|
+
import 'react';
|
|
7
7
|
import '../../icon/IconWrapper/IconWrapper.js';
|
|
8
8
|
import '../../../index-6ea95111.js';
|
|
9
9
|
import '../../../style-inject.es-1f59c1d0.js';
|
|
10
|
+
import '../card/index.js';
|
|
10
11
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;;"}
|
|
@@ -3,11 +3,12 @@ import { jsx } from 'react/jsx-runtime';
|
|
|
3
3
|
import { InfoCard } from '../index.js';
|
|
4
4
|
import { a as images } from '../../../index-1693701e.js';
|
|
5
5
|
import '../cardButton/index.js';
|
|
6
|
-
import 'react';
|
|
7
6
|
import '../../icon/icons/ChevronRight.js';
|
|
7
|
+
import 'react';
|
|
8
8
|
import '../../icon/IconWrapper/IconWrapper.js';
|
|
9
9
|
import '../../../index-6ea95111.js';
|
|
10
10
|
import '../../../style-inject.es-1f59c1d0.js';
|
|
11
|
+
import '../card/index.js';
|
|
11
12
|
|
|
12
13
|
var story = {
|
|
13
14
|
title: 'JSX/Cards/InfoCard',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.stories.js","sources":["../../../../../../src/lib/components/cards/infoCard/index.stories.tsx"],"sourcesContent":["import { InfoCard, InfoCardProps } from '.';\nimport { images } from '../../../util/images';\n\nconst story = {\n title: 'JSX/Cards/InfoCard',\n component: InfoCard,\n argTypes: {\n title: {\n defaultValue: 'Lorem Ipsum',\n description: 'Title text that needs to be displayed',\n },\n children: {\n type: 'text',\n defaultValue: 'Mountain or rock climbing, Bouldering, Martial arts, Extreme sports, Scuba diving, Sky diving, Bungee jumping, Mountain or rock climbing, Bouldering, Martial arts,',\n description: 'Content that is displayed inside the card',\n },\n state: {\n defaultValue: 'actionable',\n description: 'State that describe the interation with the card',\n },\n topIcon: {\n defaultValue: {\n src: images.mortgage,\n alt: 'Image alt'\n },\n description: 'Icon displayed on the top of the card, inside the purple circle',\n },\n rightIcon: {\n defaultValue: {\n src: images.washingMachine,\n alt: 'Icon alt'\n },\n description: 'Icon displayed on the top right corner of the card',\n },\n dropshadow: {\n defaultValue: true,\n description: 'If the card should have a box-shadow or not',\n },\n className: {\n defaultValue: '',\n description: 'Class name for most top parent element',\n },\n },\n};\n\nexport const InfoCardStory = ({\n title,\n dropshadow,\n children,\n className,\n rightIcon,\n state,\n topIcon\n}: InfoCardProps) => {\n return (\n <InfoCard\n className={className}\n dropshadow={dropshadow}\n state={state}\n rightIcon={rightIcon}\n title={title}\n topIcon={topIcon}\n >\n {children}\n </InfoCard>\n );\n}\n\nInfoCardStory.storyName = \"InfoCard\";\n\nexport default story;\n"],"names":["_jsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.stories.js","sources":["../../../../../../src/lib/components/cards/infoCard/index.stories.tsx"],"sourcesContent":["import { InfoCard, InfoCardProps } from '.';\nimport { images } from '../../../util/images';\n\nconst story = {\n title: 'JSX/Cards/InfoCard',\n component: InfoCard,\n argTypes: {\n title: {\n defaultValue: 'Lorem Ipsum',\n description: 'Title text that needs to be displayed',\n },\n children: {\n type: 'text',\n defaultValue: 'Mountain or rock climbing, Bouldering, Martial arts, Extreme sports, Scuba diving, Sky diving, Bungee jumping, Mountain or rock climbing, Bouldering, Martial arts,',\n description: 'Content that is displayed inside the card',\n },\n state: {\n defaultValue: 'actionable',\n description: 'State that describe the interation with the card',\n },\n topIcon: {\n defaultValue: {\n src: images.mortgage,\n alt: 'Image alt'\n },\n description: 'Icon displayed on the top of the card, inside the purple circle',\n },\n rightIcon: {\n defaultValue: {\n src: images.washingMachine,\n alt: 'Icon alt'\n },\n description: 'Icon displayed on the top right corner of the card',\n },\n dropshadow: {\n defaultValue: true,\n description: 'If the card should have a box-shadow or not',\n },\n className: {\n defaultValue: '',\n description: 'Class name for most top parent element',\n },\n },\n};\n\nexport const InfoCardStory = ({\n title,\n dropshadow,\n children,\n className,\n rightIcon,\n state,\n topIcon\n}: InfoCardProps) => {\n return (\n <InfoCard\n className={className}\n dropshadow={dropshadow}\n state={state}\n rightIcon={rightIcon}\n title={title}\n topIcon={topIcon}\n >\n {children}\n </InfoCard>\n );\n}\n\nInfoCardStory.storyName = \"InfoCard\";\n\nexport default story;\n"],"names":["_jsx"],"mappings":";;;;;;;;;;;;IAGM,KAAK,GAAG;IACZ,KAAK,EAAE,oBAAoB;IAC3B,SAAS,EAAE,QAAQ;IACnB,QAAQ,EAAE;QACR,KAAK,EAAE;YACL,YAAY,EAAE,aAAa;YAC3B,WAAW,EAAE,uCAAuC;SACrD;QACD,QAAQ,EAAE;YACR,IAAI,EAAE,MAAM;YACZ,YAAY,EAAE,qKAAqK;YACnL,WAAW,EAAE,2CAA2C;SACzD;QACD,KAAK,EAAE;YACL,YAAY,EAAE,YAAY;YAC1B,WAAW,EAAE,kDAAkD;SAChE;QACD,OAAO,EAAE;YACP,YAAY,EAAE;gBACZ,GAAG,EAAE,MAAM,CAAC,QAAQ;gBACpB,GAAG,EAAE,WAAW;aACjB;YACD,WAAW,EAAE,iEAAiE;SAC/E;QACD,SAAS,EAAE;YACT,YAAY,EAAE;gBACZ,GAAG,EAAE,MAAM,CAAC,cAAc;gBAC1B,GAAG,EAAE,UAAU;aAChB;YACD,WAAW,EAAE,oDAAoD;SAClE;QACD,UAAU,EAAE;YACV,YAAY,EAAE,IAAI;YAClB,WAAW,EAAE,6CAA6C;SAC3D;QACD,SAAS,EAAE;YACT,YAAY,EAAE,EAAE;YAChB,WAAW,EAAE,wCAAwC;SACtD;KACF;EACD;IAEW,aAAa,GAAG,UAAC,EAQd;QAPd,KAAK,WAAA,EACL,UAAU,gBAAA,EACV,QAAQ,cAAA,EACR,SAAS,eAAA,EACT,SAAS,eAAA,EACT,KAAK,WAAA,EACL,OAAO,aAAA;IAEP,QACEA,IAAC,QAAQ,aACP,SAAS,EAAE,SAAS,EACpB,UAAU,EAAE,UAAU,EACtB,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,EACpB,KAAK,EAAE,KAAK,EACZ,OAAO,EAAE,OAAO,gBAEf,QAAQ,YACA,EACX;AACJ,EAAC;AAED,aAAa,CAAC,SAAS,GAAG,UAAU;;;;;"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { jsx } from 'react/jsx-runtime';
|
|
2
|
+
import { createElement } from 'react';
|
|
3
|
+
import { IconWrapper } from '../IconWrapper/IconWrapper.js';
|
|
4
|
+
import '../../../tslib.es6-5bc94358.js';
|
|
5
|
+
import '../../../index-6ea95111.js';
|
|
6
|
+
import '../../../style-inject.es-1f59c1d0.js';
|
|
7
|
+
|
|
8
|
+
var ArrowRightFilled = (function (props) {
|
|
9
|
+
return createElement(IconWrapper, props, jsx("circle", { cx: 12, cy: 12, r: 10, fill: "currentColor", stroke: "currentColor", strokeWidth: 2 }, void 0), jsx("path", { stroke: "#fff", strokeLinecap: "round", strokeWidth: 2, d: "m12 8 3.823 3.823a.25.25 0 0 1 0 .354L12 16m-4-4h8" }, void 0));
|
|
10
|
+
});
|
|
11
|
+
|
|
12
|
+
export default ArrowRightFilled;
|
|
13
|
+
//# sourceMappingURL=ArrowRightFilled.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ArrowRightFilled.js","sources":["../../../../../../src/lib/components/icon/icons/ArrowRightFilled.tsx"],"sourcesContent":["/* Generated file. Do not modify. */\nimport { createElement } from 'react';\nimport { IconWrapper } from '../IconWrapper';\nimport type { IconWrapperProps } from '../IconWrapper';\nexport default (props: IconWrapperProps) =>\n createElement(\n IconWrapper,\n props,\n <circle\n cx={12}\n cy={12}\n r={10}\n fill=\"currentColor\"\n stroke=\"currentColor\"\n strokeWidth={2}\n />,\n <path\n stroke=\"#fff\"\n strokeLinecap=\"round\"\n strokeWidth={2}\n d=\"m12 8 3.823 3.823a.25.25 0 0 1 0 .354L12 16m-4-4h8\"\n />\n );\n"],"names":["_jsx"],"mappings":";;;;;;;AAIA,wBAAe,UAAC,KAAuB;IACrC,OAAA,aAAa,CACX,WAAW,EACX,KAAK,EACLA,gBACE,EAAE,EAAE,EAAE,EACN,EAAE,EAAE,EAAE,EACN,CAAC,EAAE,EAAE,EACL,IAAI,EAAC,cAAc,EACnB,MAAM,EAAC,cAAc,EACrB,WAAW,EAAE,CAAC,WACd,EACFA,cACE,MAAM,EAAC,MAAM,EACb,aAAa,EAAC,OAAO,EACrB,WAAW,EAAE,CAAC,EACd,CAAC,EAAC,oDAAoD,WACtD,CACH;AAjBD,CAiBC;;;;"}
|
|
@@ -2,7 +2,7 @@ import { _ as __assign } from '../../tslib.es6-5bc94358.js';
|
|
|
2
2
|
import { jsxs, jsx } from 'react/jsx-runtime';
|
|
3
3
|
import { useState } from 'react';
|
|
4
4
|
import { Input } from '../input/index.js';
|
|
5
|
-
import { i as icons } from '../../index-
|
|
5
|
+
import { i as icons } from '../../index-73378a46.js';
|
|
6
6
|
import { Button } from '../button/index.js';
|
|
7
7
|
import { c as classNames } from '../../index-6ea95111.js';
|
|
8
8
|
import { s as styleInject } from '../../style-inject.es-1f59c1d0.js';
|
|
@@ -16,6 +16,7 @@ import './icons/5.js';
|
|
|
16
16
|
import './icons/6.js';
|
|
17
17
|
import './icons/7.js';
|
|
18
18
|
import './icons/8.js';
|
|
19
|
+
import './icons/Cancer.js';
|
|
19
20
|
import './icons/Activity.js';
|
|
20
21
|
import './icons/Adhd.js';
|
|
21
22
|
import './icons/AdviceRecommendation.js';
|
|
@@ -37,6 +38,7 @@ import './icons/ArrowDown.js';
|
|
|
37
38
|
import './icons/ArrowLeftCircle.js';
|
|
38
39
|
import './icons/ArrowLeft.js';
|
|
39
40
|
import './icons/ArrowRightCircle.js';
|
|
41
|
+
import './icons/ArrowRightFilled.js';
|
|
40
42
|
import './icons/ArrowRight.js';
|
|
41
43
|
import './icons/ArrowUpCircle.js';
|
|
42
44
|
import './icons/ArrowUpLeft.js';
|
|
@@ -71,7 +73,6 @@ import './icons/Calculator.js';
|
|
|
71
73
|
import './icons/Calendar.js';
|
|
72
74
|
import './icons/CameraOff.js';
|
|
73
75
|
import './icons/Camera.js';
|
|
74
|
-
import './icons/Cancer.js';
|
|
75
76
|
import './icons/Cast.js';
|
|
76
77
|
import './icons/CheckCircle.js';
|
|
77
78
|
import './icons/CheckInCircleFilled.js';
|
|
@@ -248,6 +249,8 @@ import './icons/PhoneOutgoing.js';
|
|
|
248
249
|
import './icons/Phone.js';
|
|
249
250
|
import './icons/PieChart.js';
|
|
250
251
|
import './icons/PlaneFilled.js';
|
|
252
|
+
import './icons/PlaneRepatriationFilled.js';
|
|
253
|
+
import './icons/PlaneRepatriation.js';
|
|
251
254
|
import './icons/Plane.js';
|
|
252
255
|
import './icons/PlayCircle.js';
|
|
253
256
|
import './icons/Play.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"icons.stories.js","sources":["../../../../../src/lib/components/icon/icons.stories.tsx"],"sourcesContent":["import { ChangeEvent, useState } from 'react';\nimport { Input } from '../input';\nimport * as icons from './icons';\nimport { Button } from '../button';\nimport classNames from 'classnames';\nimport styles from './style.module.scss';\n\nconst story = {\n title: 'JSX/Icon/IconsList',\n};\n\nconst iconsList = Object.entries(icons);\n\nexport const IconsList = () => {\n const [value, setValue] = useState('');\n const [options, setOptions] = useState(iconsList);\n\n const clearSearch = () => {\n setValue('');\n setOptions(iconsList);\n };\n\n const handleOnSearch = (event: ChangeEvent<HTMLInputElement>) => {\n const searchValue = event.target.value;\n setValue(event.target.value);\n\n if (searchValue === '') {\n setOptions(iconsList);\n return;\n }\n\n setOptions(iconsList.filter(([key]) => \n key.toLowerCase()\n .includes(searchValue.toLowerCase())\n ));\n };\n\n return (\n <div>\n <div className={classNames(styles.searchBar, 'bg-white')}>\n <div className='d-flex gap8 wmx12 m-auto'>\n <Input\n className='w70'\n onChange={handleOnSearch}\n placeholder='Search icon'\n value={value} \n />\n <Button className='w30' disabled={!value} onClick={clearSearch}>\n Clear search\n </Button>\n </div>\n </div>\n\n <div className='d-flex f-wrap'>\n {options.map(([iconKey, Icon]) => (\n <div key={iconKey} className=\"w20 p8\">\n <div className='br4 p24 pt16 pb16 bg-grey-100 w100 d-flex fd-column ai-center'>\n <Icon size={32} />\n <span className='p-p--small'>{iconKey}</span>\n </div>\n </div>\n ))}\n </div>\n </div>\n );\n}\n\nexport default story;\n"],"names":["_jsxs","_jsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"icons.stories.js","sources":["../../../../../src/lib/components/icon/icons.stories.tsx"],"sourcesContent":["import { ChangeEvent, useState } from 'react';\nimport { Input } from '../input';\nimport * as icons from './icons';\nimport { Button } from '../button';\nimport classNames from 'classnames';\nimport styles from './style.module.scss';\n\nconst story = {\n title: 'JSX/Icon/IconsList',\n};\n\nconst iconsList = Object.entries(icons);\n\nexport const IconsList = () => {\n const [value, setValue] = useState('');\n const [options, setOptions] = useState(iconsList);\n\n const clearSearch = () => {\n setValue('');\n setOptions(iconsList);\n };\n\n const handleOnSearch = (event: ChangeEvent<HTMLInputElement>) => {\n const searchValue = event.target.value;\n setValue(event.target.value);\n\n if (searchValue === '') {\n setOptions(iconsList);\n return;\n }\n\n setOptions(iconsList.filter(([key]) => \n key.toLowerCase()\n .includes(searchValue.toLowerCase())\n ));\n };\n\n return (\n <div>\n <div className={classNames(styles.searchBar, 'bg-white')}>\n <div className='d-flex gap8 wmx12 m-auto'>\n <Input\n className='w70'\n onChange={handleOnSearch}\n placeholder='Search icon'\n value={value} \n />\n <Button className='w30' disabled={!value} onClick={clearSearch}>\n Clear search\n </Button>\n </div>\n </div>\n\n <div className='d-flex f-wrap'>\n {options.map(([iconKey, Icon]) => (\n <div key={iconKey} className=\"w20 p8\">\n <div className='br4 p24 pt16 pb16 bg-grey-100 w100 d-flex fd-column ai-center'>\n <Icon size={32} />\n <span className='p-p--small'>{iconKey}</span>\n </div>\n </div>\n ))}\n </div>\n </div>\n );\n}\n\nexport default story;\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;IAOM,KAAK,GAAG;IACZ,KAAK,EAAE,oBAAoB;EAC3B;AAEF,IAAM,SAAS,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;IAE3B,SAAS,GAAG;IACjB,IAAA,KAAoB,QAAQ,CAAC,EAAE,CAAC,EAA/B,KAAK,QAAA,EAAE,QAAQ,QAAgB,CAAC;IACjC,IAAA,KAAwB,QAAQ,CAAC,SAAS,CAAC,EAA1C,OAAO,QAAA,EAAE,UAAU,QAAuB,CAAC;IAElD,IAAM,WAAW,GAAG;QAClB,QAAQ,CAAC,EAAE,CAAC,CAAC;QACb,UAAU,CAAC,SAAS,CAAC,CAAC;KACvB,CAAC;IAEF,IAAM,cAAc,GAAG,UAAC,KAAoC;QAC1D,IAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC;QACvC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;QAE7B,IAAI,WAAW,KAAK,EAAE,EAAE;YACtB,UAAU,CAAC,SAAS,CAAC,CAAC;YACtB,OAAO;SACR;QAED,UAAU,CAAC,SAAS,CAAC,MAAM,CAAC,UAAC,EAAK;gBAAJ,GAAG,QAAA;YAC/B,OAAA,GAAG,CAAC,WAAW,EAAE;iBACd,QAAQ,CAAC,WAAW,CAAC,WAAW,EAAE,CAAC;SAAA,CACvC,CAAC,CAAC;KACJ,CAAC;IAEF,QACEA,yBACEC,sBAAK,SAAS,EAAE,UAAU,CAAC,MAAM,CAAC,SAAS,EAAE,UAAU,CAAC,gBACtDD,uBAAK,SAAS,EAAC,0BAA0B,iBACzCC,IAAC,KAAK,IACJ,SAAS,EAAC,KAAK,EACf,QAAQ,EAAE,cAAc,EACxB,WAAW,EAAC,aAAa,EACzB,KAAK,EAAE,KAAK,WACZ;wBACFA,IAAC,MAAM,aAAC,SAAS,EAAC,KAAK,EAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,OAAO,EAAE,WAAW,0CAErD,aACH,YACF;YAENA,sBAAK,SAAS,EAAC,eAAe,gBAC3B,OAAO,CAAC,GAAG,CAAC,UAAC,EAAe;wBAAd,OAAO,QAAA,EAAE,IAAI,QAAA;oBAAM,QAChCA,sBAAmB,SAAS,EAAC,QAAQ,gBACnCD,uBAAK,SAAS,EAAC,+DAA+D,iBAC5EC,IAAC,IAAI,IAAC,IAAI,EAAE,EAAE,WAAI;gCAClBA,uBAAM,SAAS,EAAC,YAAY,gBAAE,OAAO,YAAQ,aACzC,KAJE,OAAO,CAKX;iBACP,CAAC,YACE,YACF,EACN;AACJ;;;;;"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsx } from 'react/jsx-runtime';
|
|
2
2
|
import { IconWrapper } from './IconWrapper/IconWrapper.js';
|
|
3
|
-
import { i as icons } from '../../index-
|
|
3
|
+
import { i as icons } from '../../index-73378a46.js';
|
|
4
4
|
import '../../tslib.es6-5bc94358.js';
|
|
5
5
|
import '../../index-6ea95111.js';
|
|
6
6
|
import '../../style-inject.es-1f59c1d0.js';
|
|
@@ -13,6 +13,7 @@ import './icons/5.js';
|
|
|
13
13
|
import './icons/6.js';
|
|
14
14
|
import './icons/7.js';
|
|
15
15
|
import './icons/8.js';
|
|
16
|
+
import './icons/Cancer.js';
|
|
16
17
|
import './icons/Activity.js';
|
|
17
18
|
import './icons/Adhd.js';
|
|
18
19
|
import './icons/AdviceRecommendation.js';
|
|
@@ -34,6 +35,7 @@ import './icons/ArrowDown.js';
|
|
|
34
35
|
import './icons/ArrowLeftCircle.js';
|
|
35
36
|
import './icons/ArrowLeft.js';
|
|
36
37
|
import './icons/ArrowRightCircle.js';
|
|
38
|
+
import './icons/ArrowRightFilled.js';
|
|
37
39
|
import './icons/ArrowRight.js';
|
|
38
40
|
import './icons/ArrowUpCircle.js';
|
|
39
41
|
import './icons/ArrowUpLeft.js';
|
|
@@ -68,7 +70,6 @@ import './icons/Calculator.js';
|
|
|
68
70
|
import './icons/Calendar.js';
|
|
69
71
|
import './icons/CameraOff.js';
|
|
70
72
|
import './icons/Camera.js';
|
|
71
|
-
import './icons/Cancer.js';
|
|
72
73
|
import './icons/Cast.js';
|
|
73
74
|
import './icons/CheckCircle.js';
|
|
74
75
|
import './icons/CheckInCircleFilled.js';
|
|
@@ -245,6 +246,8 @@ import './icons/PhoneOutgoing.js';
|
|
|
245
246
|
import './icons/Phone.js';
|
|
246
247
|
import './icons/PieChart.js';
|
|
247
248
|
import './icons/PlaneFilled.js';
|
|
249
|
+
import './icons/PlaneRepatriationFilled.js';
|
|
250
|
+
import './icons/PlaneRepatriation.js';
|
|
248
251
|
import './icons/Plane.js';
|
|
249
252
|
import './icons/PlayCircle.js';
|
|
250
253
|
import './icons/Play.js';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.stories.js","sources":["../../../../../src/lib/components/icon/index.stories.tsx"],"sourcesContent":["import { IconWrapper, IconWrapperProps } from './IconWrapper';\nimport * as icons from './icons';\n\nconst iconsList = Object.keys(icons);\ntype IconKey = typeof iconsList[number];\n\nconst story = {\n title: 'JSX/Icon',\n component: IconWrapper,\n argTypes: {\n icon: {\n defaultValue: 'InfoIcon',\n description: 'Identifier key of the icon',\n table: {\n type: { \n summary: 'IconKey (see Available Icons story for all icons)'\n },\n },\n control: { \n options: iconsList,\n type: 'select',\n },\n },\n size: {\n defaultValue: 32,\n description: 'Icon size',\n },\n color: {\n defaultValue: 'primary-500',\n description: 'Icon color',\n },\n className: {\n description: 'Class name for updating components styles',\n table: {\n type: { \n summary: 'Your own custom classnames can be added here'\n },\n },\n },\n },\n};\n\nexport const IconStory = ({ color, className, icon, size }: IconWrapperProps & { icon: IconKey }) => {\n // @ts-ignore\n const Icon = icons?.[icon];\n\n return Icon && (\n <Icon\n size={size}\n color={color}\n className={className}\n />\n );\n}\n\nIconStory.storyName = \"Icon\";\n\nexport default story;\n"],"names":["_jsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.stories.js","sources":["../../../../../src/lib/components/icon/index.stories.tsx"],"sourcesContent":["import { IconWrapper, IconWrapperProps } from './IconWrapper';\nimport * as icons from './icons';\n\nconst iconsList = Object.keys(icons);\ntype IconKey = typeof iconsList[number];\n\nconst story = {\n title: 'JSX/Icon',\n component: IconWrapper,\n argTypes: {\n icon: {\n defaultValue: 'InfoIcon',\n description: 'Identifier key of the icon',\n table: {\n type: { \n summary: 'IconKey (see Available Icons story for all icons)'\n },\n },\n control: { \n options: iconsList,\n type: 'select',\n },\n },\n size: {\n defaultValue: 32,\n description: 'Icon size',\n },\n color: {\n defaultValue: 'primary-500',\n description: 'Icon color',\n },\n className: {\n description: 'Class name for updating components styles',\n table: {\n type: { \n summary: 'Your own custom classnames can be added here'\n },\n },\n },\n },\n};\n\nexport const IconStory = ({ color, className, icon, size }: IconWrapperProps & { icon: IconKey }) => {\n // @ts-ignore\n const Icon = icons?.[icon];\n\n return Icon && (\n <Icon\n size={size}\n color={color}\n className={className}\n />\n );\n}\n\nIconStory.storyName = \"Icon\";\n\nexport default story;\n"],"names":["_jsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAGA,IAAM,SAAS,GAAG,MAAM,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;IAG/B,KAAK,GAAG;IACZ,KAAK,EAAE,UAAU;IACjB,SAAS,EAAE,WAAW;IACtB,QAAQ,EAAE;QACR,IAAI,EAAE;YACJ,YAAY,EAAE,UAAU;YACxB,WAAW,EAAE,4BAA4B;YACzC,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,OAAO,EAAE,mDAAmD;iBAC7D;aACF;YACD,OAAO,EAAE;gBACP,OAAO,EAAE,SAAS;gBAClB,IAAI,EAAE,QAAQ;aACf;SACF;QACD,IAAI,EAAE;YACJ,YAAY,EAAE,EAAE;YAChB,WAAW,EAAE,WAAW;SACzB;QACD,KAAK,EAAE;YACL,YAAY,EAAE,aAAa;YAC3B,WAAW,EAAE,YAAY;SAC1B;QACD,SAAS,EAAE;YACT,WAAW,EAAE,2CAA2C;YACxD,KAAK,EAAE;gBACL,IAAI,EAAE;oBACJ,OAAO,EAAE,8CAA8C;iBACxD;aACF;SACF;KACF;EACD;IAEW,SAAS,GAAG,UAAC,EAAsE;QAApE,KAAK,WAAA,EAAE,SAAS,eAAA,EAAE,IAAI,UAAA,EAAE,IAAI,UAAA;;IAEtD,IAAM,IAAI,GAAG,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAG,IAAI,CAAC,CAAC;IAE3B,OAAO,IAAI,KACTA,IAAC,IAAI,IACH,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,SAAS,WACpB,CACH,CAAC;AACJ,EAAC;AAED,SAAS,CAAC,SAAS,GAAG,MAAM;;;;;"}
|
|
@@ -1,34 +1,29 @@
|
|
|
1
|
-
import { _ as __assign } from '../../../tslib.es6-5bc94358.js';
|
|
2
|
-
import { jsx
|
|
3
|
-
import { useState, useCallback } from 'react';
|
|
1
|
+
import { a as __rest, _ as __assign } from '../../../tslib.es6-5bc94358.js';
|
|
2
|
+
import { jsx } from 'react/jsx-runtime';
|
|
4
3
|
import { s as styleInject } from '../../../style-inject.es-1f59c1d0.js';
|
|
5
|
-
import XIcon from '../../icon/icons/X.js';
|
|
6
|
-
import { u as useOnClose } from '../../../useOnClose-d818a54f.js';
|
|
7
4
|
import { c as classNames } from '../../../index-6ea95111.js';
|
|
5
|
+
import { GenericModal } from '../genericModal/index.js';
|
|
6
|
+
import 'react';
|
|
7
|
+
import '../../button/index.js';
|
|
8
|
+
import '../../icon/icons/X.js';
|
|
8
9
|
import '../../icon/IconWrapper/IconWrapper.js';
|
|
9
10
|
|
|
10
|
-
var css_248z = "@keyframes style-
|
|
11
|
-
var styles = {"
|
|
11
|
+
var css_248z = "@keyframes style-module_appear-in__3U2lu {\n 0% {\n transform: translateY(100%);\n }\n 80% {\n transform: translateY(-2%);\n }\n 100% {\n transform: translateY(0);\n }\n}\n@keyframes style-module_disappear-out__6pOVr {\n 0% {\n transform: translateY(0);\n }\n 100% {\n transform: translateY(100%);\n }\n}\n.style-module_wrapper__200Xu {\n position: relative;\n top: 0;\n overflow: hidden;\n}\n\n.style-module_container__aOENo {\n border-top-left-radius: 8px;\n border-top-right-radius: 8px;\n overflow: auto;\n max-height: 90vh;\n bottom: 0;\n position: fixed;\n animation-name: style-module_appear-in__3U2lu;\n animation-duration: 0.4s;\n animation-fill-mode: both;\n animation-timing-function: ease-in;\n}\n@media (max-width: 34rem) {\n .style-module_container__aOENo {\n padding-bottom: 48px;\n }\n}\n.style-module_containerClose__3-nqc {\n animation-name: style-module_disappear-out__6pOVr;\n animation-duration: 0.4s;\n animation-delay: 0s;\n animation-fill-mode: both;\n animation-timing-function: ease-out;\n}";
|
|
12
|
+
var styles = {"wrapper":"style-module_wrapper__200Xu","container":"style-module_container__aOENo","appear-in":"style-module_appear-in__3U2lu","containerClose":"style-module_containerClose__3-nqc","disappear-out":"style-module_disappear-out__6pOVr"};
|
|
12
13
|
styleInject(css_248z);
|
|
13
14
|
|
|
14
15
|
var BottomModal = function (_a) {
|
|
15
|
-
var
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
return (jsx("div", __assign({ className: isClosing ? styles['overlay--close'] : styles.overlay, onClick: handleOnOverlayClick }, { children: jsx("div", __assign({ className: styles.wrapper, ref: containerRef, onClick: handleContainerClick, style: { top: containerXOffset + "px" } }, { children: jsxs("div", __assign({ className: (isClosing ? styles['container--close'] : styles.container) + " " + className }, { children: [jsxs("div", __assign({ className: classNames(styles.header, {
|
|
27
|
-
'jc-between': !!title,
|
|
28
|
-
'jc-end': !title,
|
|
29
|
-
}) }, { children: [jsx("div", __assign({ className: "p-h4 " + styles.title }, { children: title }), void 0),
|
|
30
|
-
dismissible && (jsx("button", __assign({ type: "button", className: styles.close, onClick: handleOnClose }, { children: jsx(XIcon, { size: 24, color: 'grey-700', className: "" + styles.closeIcon }, void 0) }), void 0))] }), void 0),
|
|
31
|
-
jsx("div", __assign({ className: styles.content }, { children: children }), void 0)] }), void 0) }), void 0) }), void 0));
|
|
16
|
+
var className = _a.className, rest = __rest(_a, ["className"]);
|
|
17
|
+
return (jsx(GenericModal, __assign({ titleSize: 'small', classNames: {
|
|
18
|
+
wrapper: classNames('w100', styles.wrapper),
|
|
19
|
+
container: function (_a) {
|
|
20
|
+
var _b;
|
|
21
|
+
var isClosing = _a.isClosing;
|
|
22
|
+
return classNames('bg-white d-flex fd-column w100', className, styles.container, (_b = {},
|
|
23
|
+
_b[styles.containerClose] = isClosing,
|
|
24
|
+
_b));
|
|
25
|
+
},
|
|
26
|
+
} }, rest), void 0));
|
|
32
27
|
};
|
|
33
28
|
|
|
34
29
|
export { BottomModal };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/lib/components/modal/bottomModal/index.tsx"],"sourcesContent":["import
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/lib/components/modal/bottomModal/index.tsx"],"sourcesContent":["import { Props } from '..';\nimport styles from './style.module.scss';\nimport classNames from 'classnames';\nimport { GenericModal } from '../genericModal';\n\nconst BottomModal = ({ className, ...rest }: Props) => (\n <GenericModal\n titleSize='small'\n classNames={{\n wrapper: classNames('w100', styles.wrapper),\n container: ({ isClosing }) => classNames(\n 'bg-white d-flex fd-column w100',\n className,\n styles.container, {\n [styles.containerClose]: isClosing, \n }\n ),\n }}\n {...rest}\n />\n);\n\nexport { BottomModal };"],"names":["_jsx"],"mappings":";;;;;;;;;;;;;;IAKM,WAAW,GAAG,UAAC,EAA6B;IAA3B,IAAA,SAAS,eAAA,EAAK,IAAI,cAApB,aAAsB,CAAF;IAAc,QACrDA,IAAC,YAAY,aACX,SAAS,EAAC,OAAO,EACjB,UAAU,EAAE;YACV,OAAO,EAAE,UAAU,CAAC,MAAM,EAAE,MAAM,CAAC,OAAO,CAAC;YAC3C,SAAS,EAAE,UAAC,EAAa;;oBAAX,SAAS,eAAA;gBAAO,OAAA,UAAU,CACtC,gCAAgC,EAChC,SAAS,EACT,MAAM,CAAC,SAAS;oBACd,GAAC,MAAM,CAAC,cAAc,IAAG,SAAS;wBAErC;aAAA;SACF,IACG,IAAI,UACR,EACH;;;;;"}
|
|
@@ -4,10 +4,11 @@ import { useRef, useState, useEffect } from 'react';
|
|
|
4
4
|
import { BottomModal } from '../bottomModal/index.js';
|
|
5
5
|
import { RegularModal } from '../regularModal/index.js';
|
|
6
6
|
import { s as styleInject } from '../../../style-inject.es-1f59c1d0.js';
|
|
7
|
+
import '../../../index-6ea95111.js';
|
|
8
|
+
import '../genericModal/index.js';
|
|
9
|
+
import '../../button/index.js';
|
|
7
10
|
import '../../icon/icons/X.js';
|
|
8
11
|
import '../../icon/IconWrapper/IconWrapper.js';
|
|
9
|
-
import '../../../index-6ea95111.js';
|
|
10
|
-
import '../../../useOnClose-d818a54f.js';
|
|
11
12
|
|
|
12
13
|
var css_248z = "@media (min-width: 34rem) {\n .style-module_mobile__3k175 {\n display: none;\n }\n}\n@media (max-width: 34rem) {\n .style-module_mobile__3k175 {\n display: block !important;\n }\n}\n\n@media (max-width: 34rem) {\n .style-module_desktop__2lclr {\n display: none;\n }\n}";
|
|
13
14
|
var styles = {"mobile":"style-module_mobile__3k175","desktop":"style-module_desktop__2lclr"};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../../../../src/lib/components/modal/bottomOrRegularModal/index.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\n\nimport { Props, RegularModal } from '..';\nimport { BottomModal } from '../bottomModal';\n\nimport styles from './style.module.scss';\n\nexport const BottomOrRegularModal = ({ isOpen, ...props }: Props) => {\n const mobileRef = useRef<HTMLDivElement>(null);\n const [visibleSize, setVisibleSize] = useState<'desktop' | 'mobile'>(\n 'desktop'\n );\n\n const handleResize = () => {\n setVisibleSize(\n mobileRef.current !== null &&\n window.getComputedStyle(mobileRef.current).display !== 'none'\n ? 'mobile'\n : 'desktop'\n );\n };\n\n useEffect(() => {\n window.addEventListener('resize', handleResize);\n handleResize();\n return () => {\n window.removeEventListener('resize', handleResize);\n };\n }, []);\n\n return (\n <>\n <div className={styles.mobile} ref={mobileRef}>\n {visibleSize === 'mobile' && <BottomModal {...props} isOpen={isOpen} />}\n </div>\n {visibleSize === 'desktop' && (\n <div className={styles.desktop}>\n <RegularModal {...props} isOpen={isOpen} />\n </div>\n )}\n </>\n );\n};\n"],"names":["_jsxs","_jsx"],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/lib/components/modal/bottomOrRegularModal/index.tsx"],"sourcesContent":["import React, { useEffect, useRef, useState } from 'react';\n\nimport { Props, RegularModal } from '..';\nimport { BottomModal } from '../bottomModal';\n\nimport styles from './style.module.scss';\n\nexport const BottomOrRegularModal = ({ isOpen, ...props }: Props) => {\n const mobileRef = useRef<HTMLDivElement>(null);\n const [visibleSize, setVisibleSize] = useState<'desktop' | 'mobile'>(\n 'desktop'\n );\n\n const handleResize = () => {\n setVisibleSize(\n mobileRef.current !== null &&\n window.getComputedStyle(mobileRef.current).display !== 'none'\n ? 'mobile'\n : 'desktop'\n );\n };\n\n useEffect(() => {\n window.addEventListener('resize', handleResize);\n handleResize();\n return () => {\n window.removeEventListener('resize', handleResize);\n };\n }, []);\n\n return (\n <>\n <div className={styles.mobile} ref={mobileRef}>\n {visibleSize === 'mobile' && <BottomModal {...props} isOpen={isOpen} />}\n </div>\n {visibleSize === 'desktop' && (\n <div className={styles.desktop}>\n <RegularModal {...props} isOpen={isOpen} />\n </div>\n )}\n </>\n );\n};\n"],"names":["_jsxs","_jsx"],"mappings":";;;;;;;;;;;;;;;;IAOa,oBAAoB,GAAG,UAAC,EAA2B;IAAzB,IAAA,MAAM,YAAA,EAAK,KAAK,cAAlB,UAAoB,CAAF;IACrD,IAAM,SAAS,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IACzC,IAAA,KAAgC,QAAQ,CAC5C,SAAS,CACV,EAFM,WAAW,QAAA,EAAE,cAAc,QAEjC,CAAC;IAEF,IAAM,YAAY,GAAG;QACnB,cAAc,CACZ,SAAS,CAAC,OAAO,KAAK,IAAI;YACxB,MAAM,CAAC,gBAAgB,CAAC,SAAS,CAAC,OAAO,CAAC,CAAC,OAAO,KAAK,MAAM;cAC3D,QAAQ;cACR,SAAS,CACd,CAAC;KACH,CAAC;IAEF,SAAS,CAAC;QACR,MAAM,CAAC,gBAAgB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;QAChD,YAAY,EAAE,CAAC;QACf,OAAO;YACL,MAAM,CAAC,mBAAmB,CAAC,QAAQ,EAAE,YAAY,CAAC,CAAC;SACpD,CAAC;KACH,EAAE,EAAE,CAAC,CAAC;IAEP,QACEA,4BACEC,sBAAK,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,EAAE,SAAS,gBAC1C,WAAW,KAAK,QAAQ,IAAIA,IAAC,WAAW,eAAK,KAAK,IAAE,MAAM,EAAE,MAAM,YAAI,YACnE;YACL,WAAW,KAAK,SAAS,KACxBA,sBAAK,SAAS,EAAE,MAAM,CAAC,OAAO,gBAC5BA,IAAC,YAAY,eAAK,KAAK,IAAE,MAAM,EAAE,MAAM,YAAI,YACvC,CACP,YACA,EACH;AACJ;;;;"}
|
|
@@ -0,0 +1,94 @@
|
|
|
1
|
+
import { _ as __assign } from '../../../tslib.es6-5bc94358.js';
|
|
2
|
+
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
3
|
+
import { useState, useCallback, useEffect } from 'react';
|
|
4
|
+
import { s as styleInject } from '../../../style-inject.es-1f59c1d0.js';
|
|
5
|
+
import { c as classNames } from '../../../index-6ea95111.js';
|
|
6
|
+
import { Button } from '../../button/index.js';
|
|
7
|
+
import XIcon from '../../icon/icons/X.js';
|
|
8
|
+
import '../../icon/IconWrapper/IconWrapper.js';
|
|
9
|
+
|
|
10
|
+
var useOnClose = function (onClose, isOpen, dismissable) {
|
|
11
|
+
var _a = useState(false), isVisible = _a[0], setIsVisible = _a[1];
|
|
12
|
+
var _b = useState(false), isClosing = _b[0], setIsClosing = _b[1];
|
|
13
|
+
var handleOnClose = useCallback(function () {
|
|
14
|
+
setIsClosing(true);
|
|
15
|
+
}, []);
|
|
16
|
+
var handleOnCloseAnimationEnded = useCallback(function () {
|
|
17
|
+
if (isVisible && isClosing) {
|
|
18
|
+
onClose();
|
|
19
|
+
setIsVisible(false);
|
|
20
|
+
setIsClosing(false);
|
|
21
|
+
}
|
|
22
|
+
}, [isClosing, isVisible, onClose]);
|
|
23
|
+
var handleOnOverlayClick = useCallback(function () {
|
|
24
|
+
if (!dismissable) {
|
|
25
|
+
return;
|
|
26
|
+
}
|
|
27
|
+
handleOnClose();
|
|
28
|
+
}, [dismissable, handleOnClose]);
|
|
29
|
+
var handleEscKey = useCallback(function (e) {
|
|
30
|
+
if (e.code !== 'Escape')
|
|
31
|
+
return;
|
|
32
|
+
if (!dismissable)
|
|
33
|
+
return null;
|
|
34
|
+
if (!isOpen)
|
|
35
|
+
return null;
|
|
36
|
+
handleOnClose();
|
|
37
|
+
}, [isOpen, dismissable, handleOnClose]);
|
|
38
|
+
useEffect(function () {
|
|
39
|
+
window.addEventListener('keydown', handleEscKey);
|
|
40
|
+
return function () {
|
|
41
|
+
window.removeEventListener('keydown', handleEscKey);
|
|
42
|
+
};
|
|
43
|
+
}, [handleEscKey]);
|
|
44
|
+
useEffect(function () {
|
|
45
|
+
if (isOpen) {
|
|
46
|
+
setIsVisible(true);
|
|
47
|
+
}
|
|
48
|
+
if (!isOpen && isVisible) {
|
|
49
|
+
handleOnClose();
|
|
50
|
+
}
|
|
51
|
+
document.body.style.overflow = isOpen ? 'hidden' : 'auto';
|
|
52
|
+
return function () {
|
|
53
|
+
document.body.style.overflow = 'auto';
|
|
54
|
+
};
|
|
55
|
+
}, [handleOnClose, isOpen, isVisible]);
|
|
56
|
+
var handleContainerClick = function (e) {
|
|
57
|
+
e.stopPropagation();
|
|
58
|
+
};
|
|
59
|
+
return {
|
|
60
|
+
isClosing: isClosing,
|
|
61
|
+
isVisible: isVisible,
|
|
62
|
+
handleContainerClick: handleContainerClick,
|
|
63
|
+
handleOnCloseAnimationEnded: handleOnCloseAnimationEnded,
|
|
64
|
+
handleOnClose: handleOnClose,
|
|
65
|
+
handleOnOverlayClick: handleOnOverlayClick
|
|
66
|
+
};
|
|
67
|
+
};
|
|
68
|
+
|
|
69
|
+
var css_248z = "@keyframes style-module_fade-in__f_VRg {\n 0% {\n background-color: rgba(0, 0, 0, 0);\n visibility: hidden;\n }\n 100% {\n background-color: rgba(0, 0, 0, 0.3);\n visibility: visible;\n }\n}\n@keyframes style-module_fade-out__1tEwS {\n from {\n background-color: rgba(0, 0, 0, 0.3);\n visibility: visible;\n }\n to {\n background-color: rgba(0, 0, 0, 0);\n visibility: hidden;\n }\n}\n.style-module_overlay__2f00R {\n z-index: 100;\n overflow: auto;\n position: fixed;\n top: 0;\n bottom: 0;\n left: 0;\n right: 0;\n animation: style-module_fade-in__f_VRg 0.3s both;\n}\n.style-module_overlayClose__1p313 {\n animation-delay: 0.1s;\n animation: style-module_fade-out__1tEwS 0.3s both;\n}\n\n.style-module_header__284Rz {\n position: sticky;\n top: 0;\n}\n\n.style-module_closeButton__1AbX8 {\n width: 32px;\n height: 32px;\n}\n\n.style-module_body__QtlTn {\n flex-grow: 1;\n overflow: auto;\n background: linear-gradient(#fff 30%, #fff), linear-gradient(#fff, #fff 70%), linear-gradient(#ededf2 30%, #ededf2), linear-gradient(#ededf2, #ededf2 70%) 0 100%;\n background-repeat: no-repeat;\n background-size: 100% 1px;\n background-attachment: local, local, scroll, scroll;\n}\n\n.style-module_footer__Sh5bv {\n width: 100%;\n position: sticky;\n bottom: 0;\n}";
|
|
70
|
+
var styles = {"overlay":"style-module_overlay__2f00R","fade-in":"style-module_fade-in__f_VRg","overlayClose":"style-module_overlayClose__1p313","fade-out":"style-module_fade-out__1tEwS","header":"style-module_header__284Rz","closeButton":"style-module_closeButton__1AbX8","body":"style-module_body__QtlTn","footer":"style-module_footer__Sh5bv"};
|
|
71
|
+
styleInject(css_248z);
|
|
72
|
+
|
|
73
|
+
var GenericModal = function (_a) {
|
|
74
|
+
var _b;
|
|
75
|
+
var _c, _d;
|
|
76
|
+
var title = _a.title, isOpen = _a.isOpen, children = _a.children, onClose = _a.onClose, classNames$1 = _a.classNames, _e = _a.dismissible, dismissible = _e === void 0 ? true : _e, footer = _a.footer, _f = _a.titleSize, titleSize = _f === void 0 ? 'default' : _f;
|
|
77
|
+
var _g = useOnClose(onClose, isOpen, dismissible), isClosing = _g.isClosing, isVisible = _g.isVisible, handleContainerClick = _g.handleContainerClick, handleOnCloseAnimationEnded = _g.handleOnCloseAnimationEnded, handleOnClose = _g.handleOnClose, handleOnOverlayClick = _g.handleOnOverlayClick;
|
|
78
|
+
return !isVisible ? null : (jsx("div", __assign({ className: classNames(classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.overlay, styles.overlay, (_b = {},
|
|
79
|
+
_b[styles.overlayClose] = isClosing,
|
|
80
|
+
_b)), onAnimationEnd: handleOnCloseAnimationEnded, onClick: handleOnOverlayClick }, { children: jsx("div", __assign({ className: typeof (classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.wrapper) === 'string'
|
|
81
|
+
? classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.wrapper
|
|
82
|
+
: (_c = classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.wrapper) === null || _c === void 0 ? void 0 : _c.call(classNames$1, { isClosing: isClosing }) }, { children: jsxs("div", __assign({ className: typeof (classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.container) === 'string'
|
|
83
|
+
? classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.container
|
|
84
|
+
: (_d = classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.container) === null || _d === void 0 ? void 0 : _d.call(classNames$1, { isClosing: isClosing }), onClick: handleContainerClick }, { children: [jsxs("div", __assign({ className: classNames('bg-white d-flex ai-center w100 px24 pt24 pb16', styles.header, {
|
|
85
|
+
'jc-between': !!children,
|
|
86
|
+
'jc-end': !children,
|
|
87
|
+
}) }, { children: [title && (jsx("div", __assign({ className: classNames(styles.title, titleSize === 'small' ? 'p-h4' : 'p-h2') }, { children: title }), void 0)),
|
|
88
|
+
dismissible && (jsx(Button, __assign({ hideLabel: true, leftIcon: jsx(XIcon, { color: "grey-700" }, void 0), onClick: handleOnClose, type: "button", variant: "textColor", className: classNames(classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.closeButton, 'p0', styles.closeButton) }, { children: "Close modal" }), void 0))] }), void 0),
|
|
89
|
+
jsx("div", __assign({ className: classNames(classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.body, styles.body) }, { children: children }), void 0),
|
|
90
|
+
footer && (jsx("div", __assign({ className: classNames(classNames$1 === null || classNames$1 === void 0 ? void 0 : classNames$1.footer, 'bg-white', styles.footer) }, { children: jsx("div", __assign({ className: "px24 py16" }, { children: footer }), void 0) }), void 0))] }), void 0) }), void 0) }), void 0));
|
|
91
|
+
};
|
|
92
|
+
|
|
93
|
+
export { GenericModal };
|
|
94
|
+
//# sourceMappingURL=index.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../../../../src/lib/components/modal/hooks/useOnClose.ts","../../../../../../src/lib/components/modal/genericModal/index.tsx"],"sourcesContent":["import React, { useCallback, useEffect, useState } from 'react';\n\ninterface OnCloseReturn {\n isClosing: boolean;\n isVisible: boolean;\n handleOnCloseAnimationEnded: () => void;\n handleContainerClick: (event: React.MouseEvent<HTMLDivElement, MouseEvent>) => void;\n handleOnClose: () => void;\n handleOnOverlayClick: () => void;\n}\n\nconst useOnClose = (\n onClose: () => void,\n isOpen: boolean,\n dismissable: boolean\n): OnCloseReturn => {\n const [isVisible, setIsVisible] = useState(false);\n const [isClosing, setIsClosing] = useState(false);\n\n const handleOnClose = useCallback(() => {\n setIsClosing(true);\n }, []);\n\n const handleOnCloseAnimationEnded = useCallback(() => {\n if (isVisible && isClosing) {\n onClose();\n setIsVisible(false);\n setIsClosing(false);\n }\n }, [isClosing, isVisible, onClose]);\n\n const handleOnOverlayClick = useCallback(() => {\n if (!dismissable) {\n return;\n }\n\n handleOnClose();\n }, [dismissable, handleOnClose]);\n\n const handleEscKey = useCallback(\n (e: KeyboardEvent) => {\n if (e.code !== 'Escape') return;\n if (!dismissable) return null;\n if (!isOpen) return null;\n\n handleOnClose();\n },\n [isOpen, dismissable, handleOnClose]\n );\n\n useEffect(() => {\n window.addEventListener('keydown', handleEscKey);\n\n return () => {\n window.removeEventListener('keydown', handleEscKey);\n };\n }, [handleEscKey]);\n\n useEffect(() => {\n if (isOpen) {\n setIsVisible(true);\n }\n \n if (!isOpen && isVisible){\n handleOnClose();\n }\n\n document.body.style.overflow = isOpen ? 'hidden' : 'auto';\n\n return () => {\n document.body.style.overflow = 'auto';\n };\n }, [handleOnClose, isOpen, isVisible]);\n\n const handleContainerClick = (\n e: React.MouseEvent<HTMLDivElement, MouseEvent>\n ) => {\n e.stopPropagation();\n };\n\n return {\n isClosing,\n isVisible,\n handleContainerClick,\n handleOnCloseAnimationEnded,\n handleOnClose,\n handleOnOverlayClick\n };\n};\n\nexport default useOnClose;\n","import { Props } from '..';\nimport useOnClose from '../hooks/useOnClose';\n\nimport styles from './style.module.scss';\nimport classNamesUtil from 'classnames';\nimport { Button } from '../../button';\nimport { XIcon } from '../../icon';\n\ninterface GenericModalProps extends Props {\n classNames?: {\n wrapper?: string | (({ isClosing }: { isClosing: boolean }) => string);\n container?: string | (({ isClosing }: { isClosing: boolean }) => string);\n overlay?: string;\n header?: string;\n closeButton?: string;\n title?: string;\n body?: string;\n footer?: string;\n };\n titleSize?: 'small' | 'default';\n}\n\nexport const GenericModal = ({\n title,\n isOpen,\n children,\n onClose,\n classNames,\n dismissible = true,\n footer,\n titleSize = 'default',\n}: GenericModalProps) => {\n const {\n isClosing,\n isVisible,\n handleContainerClick,\n handleOnCloseAnimationEnded,\n handleOnClose,\n handleOnOverlayClick,\n } = useOnClose(onClose, isOpen, dismissible);\n\n return !isVisible ? null : (\n <div\n className={classNamesUtil(\n classNames?.overlay,\n styles.overlay, {\n [styles.overlayClose]: isClosing,\n }\n )}\n onAnimationEnd={handleOnCloseAnimationEnded}\n onClick={handleOnOverlayClick}\n >\n <div \n className={\n typeof classNames?.wrapper === 'string' \n ? classNames?.wrapper \n : classNames?.wrapper?.({ isClosing })\n }\n >\n <div\n className={\n typeof classNames?.container === 'string' \n ? classNames?.container \n : classNames?.container?.({ isClosing })\n }\n onClick={handleContainerClick}\n >\n\n <div\n className={classNamesUtil(\n 'bg-white d-flex ai-center w100 px24 pt24 pb16',\n styles.header, {\n 'jc-between': !!children,\n 'jc-end': !children,\n }\n )}\n >\n {title && (\n <div\n className={classNamesUtil(\n styles.title,\n titleSize === 'small' ? 'p-h4' : 'p-h2'\n )}\n >\n {title}\n </div>\n )}\n \n {dismissible && (\n <Button\n hideLabel\n leftIcon={<XIcon color=\"grey-700\" />}\n onClick={handleOnClose}\n type=\"button\"\n variant=\"textColor\"\n className={classNamesUtil(\n classNames?.closeButton,\n 'p0',\n styles.closeButton\n )}\n >\n Close modal\n </Button>\n )}\n </div>\n\n <div\n className={classNamesUtil(\n classNames?.body,\n styles.body\n )}\n >\n {children}\n </div>\n\n {footer && (\n <div\n className={classNamesUtil(\n classNames?.footer,\n 'bg-white',\n styles.footer\n )}\n >\n <div className=\"px24 py16\">\n {footer}\n </div>\n </div>\n )}\n </div>\n </div>\n </div>\n );\n};\n"],"names":["classNames","_jsx","classNamesUtil","_jsxs"],"mappings":"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"}
|