@razorpay/blade 12.21.3 → 12.23.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/build/lib/native/components/BaseHeaderFooter/BaseHeader.js +2 -2
- package/build/lib/native/components/BaseHeaderFooter/BaseHeader.js.map +1 -1
- package/build/lib/native/components/Button/IconButton/IconButton.js +2 -1
- package/build/lib/native/components/Button/IconButton/IconButton.js.map +1 -1
- package/build/lib/native/components/Typography/Heading/Heading.js +1 -1
- package/build/lib/native/components/Typography/Heading/Heading.js.map +1 -1
- package/build/lib/web/development/components/BaseHeaderFooter/BaseHeader.js +54 -5
- package/build/lib/web/development/components/BaseHeaderFooter/BaseHeader.js.map +1 -1
- package/build/lib/web/development/components/Button/IconButton/IconButton.js +5 -1
- package/build/lib/web/development/components/Button/IconButton/IconButton.js.map +1 -1
- package/build/lib/web/development/components/Drawer/Drawer.web.js +45 -25
- package/build/lib/web/development/components/Drawer/Drawer.web.js.map +1 -1
- package/build/lib/web/development/components/Drawer/DrawerSubcomponents.web.js +11 -2
- package/build/lib/web/development/components/Drawer/DrawerSubcomponents.web.js.map +1 -1
- package/build/lib/web/development/components/StepGroup/StepLine.web.js +16 -1
- package/build/lib/web/development/components/StepGroup/StepLine.web.js.map +1 -1
- package/build/lib/web/development/components/Typography/Heading/Heading.js +4 -2
- package/build/lib/web/development/components/Typography/Heading/Heading.js.map +1 -1
- package/build/lib/web/production/components/BaseHeaderFooter/BaseHeader.js +54 -5
- package/build/lib/web/production/components/BaseHeaderFooter/BaseHeader.js.map +1 -1
- package/build/lib/web/production/components/Button/IconButton/IconButton.js +5 -1
- package/build/lib/web/production/components/Button/IconButton/IconButton.js.map +1 -1
- package/build/lib/web/production/components/Drawer/Drawer.web.js +45 -25
- package/build/lib/web/production/components/Drawer/Drawer.web.js.map +1 -1
- package/build/lib/web/production/components/Drawer/DrawerSubcomponents.web.js +11 -2
- package/build/lib/web/production/components/Drawer/DrawerSubcomponents.web.js.map +1 -1
- package/build/lib/web/production/components/StepGroup/StepLine.web.js +16 -1
- package/build/lib/web/production/components/StepGroup/StepLine.web.js.map +1 -1
- package/build/lib/web/production/components/Typography/Heading/Heading.js +4 -2
- package/build/lib/web/production/components/Typography/Heading/Heading.js.map +1 -1
- package/build/types/components/index.d.ts +26 -3
- package/build/types/components/index.native.d.ts +24 -2
- package/package.json +7 -8
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"IconButton.js","sources":["../../../../../../../src/components/Button/IconButton/IconButton.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable react/display-name */\nimport React from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport StyledIconButton from './StyledIconButton';\nimport type { IconComponent } from '~components/Icons';\nimport type { BladeElementRef, DataAnalyticsAttribute } from '~utils/types';\nimport type { BladeCommonEvents } from '~components/types';\nimport type { Platform } from '~utils';\nimport type { SubtleOrIntense } from '~tokens/theme/theme';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\n\ntype IconButtonProps = {\n /**\n * Icon component to be rendered, eg. `CloseIcon`\n */\n icon: IconComponent;\n\n /**\n * Icon size\n *\n * @default 'medium'\n */\n size?: 'small' | 'medium' | 'large';\n\n /**\n * Icon contrast\n *\n * @default 'intense'\n */\n emphasis?: SubtleOrIntense;\n\n /**\n * Sets aria-label to help users know what the action does, eg 'Dismiss alert'\n */\n accessibilityLabel: string;\n\n /**\n * Disabled state for IconButton\n */\n isDisabled?: boolean;\n\n /**\n * Sets tabindex property on button element\n */\n _tabIndex?: number;\n} & DataAnalyticsAttribute &\n BladeCommonEvents &\n StyledPropsBlade &\n Platform.Select<{\n web: {\n onClick: (event: React.MouseEvent<HTMLButtonElement>) => void;\n /**\n * This changes the hover interaction to highlight icon more\n *\n * **Only available on web currently**\n */\n isHighlighted?: boolean;\n };\n native: {\n onClick: (event: GestureResponderEvent) => void;\n isHighlighted?: undefined;\n };\n }>;\n\n/**\n * Component for making clickable icons with transparent background.\n * For other cases please use `Button` component with `icon` prop.\n */\nconst _IconButton: React.ForwardRefRenderFunction<BladeElementRef, IconButtonProps> = (\n {\n icon,\n onClick,\n size = 'medium',\n emphasis = 'intense',\n accessibilityLabel,\n isDisabled,\n onBlur,\n onFocus,\n onMouseLeave,\n onMouseMove,\n onPointerDown,\n onPointerEnter,\n onTouchEnd,\n onTouchStart,\n isHighlighted,\n _tabIndex,\n ...rest\n },\n ref,\n) => {\n return (\n <StyledIconButton\n ref={ref as any}\n onClick={onClick}\n emphasis={emphasis}\n size={size}\n icon={icon}\n tabIndex={_tabIndex}\n accessibilityLabel={accessibilityLabel}\n isDisabled={isDisabled}\n isHighlighted={isHighlighted}\n onBlur={onBlur}\n onFocus={onFocus}\n onMouseLeave={onMouseLeave}\n onMouseMove={onMouseMove}\n onPointerDown={onPointerDown}\n onPointerEnter={onPointerEnter}\n onTouchEnd={onTouchEnd}\n onTouchStart={onTouchStart}\n {...makeAnalyticsAttribute(rest)}\n {...rest}\n />\n );\n};\n\nconst IconButton = React.forwardRef(_IconButton);\n\nexport type { IconButtonProps };\nexport { IconButton };\n"],"names":["_IconButton","_ref","ref","icon","onClick","_ref$size","size","_ref$emphasis","emphasis","accessibilityLabel","isDisabled","onBlur","onFocus","onMouseLeave","onMouseMove","onPointerDown","onPointerEnter","onTouchEnd","onTouchStart","isHighlighted","_tabIndex","rest","_objectWithoutProperties","_excluded","_jsx","StyledIconButton","_objectSpread","tabIndex","makeAnalyticsAttribute","IconButton","React","forwardRef"],"mappings":"
|
|
1
|
+
{"version":3,"file":"IconButton.js","sources":["../../../../../../../src/components/Button/IconButton/IconButton.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/no-explicit-any */\n/* eslint-disable react/display-name */\nimport React from 'react';\nimport type { GestureResponderEvent } from 'react-native';\nimport StyledIconButton from './StyledIconButton';\nimport type { IconComponent } from '~components/Icons';\nimport type { BladeElementRef, DataAnalyticsAttribute } from '~utils/types';\nimport type { BladeCommonEvents } from '~components/types';\nimport type { Platform } from '~utils';\nimport type { SubtleOrIntense } from '~tokens/theme/theme';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\n\ntype IconButtonProps = {\n /**\n * Icon component to be rendered, eg. `CloseIcon`\n */\n icon: IconComponent;\n\n /**\n * Icon size\n *\n * @default 'medium'\n */\n size?: 'small' | 'medium' | 'large';\n\n /**\n * Icon contrast\n *\n * @default 'intense'\n */\n emphasis?: SubtleOrIntense;\n\n /**\n * Sets aria-label to help users know what the action does, eg 'Dismiss alert'\n */\n accessibilityLabel: string;\n\n /**\n * Disabled state for IconButton\n */\n isDisabled?: boolean;\n\n /**\n * Sets tabindex property on button element\n */\n _tabIndex?: number;\n} & DataAnalyticsAttribute &\n BladeCommonEvents &\n StyledPropsBlade &\n Platform.Select<{\n web: {\n onClick: (event: React.MouseEvent<HTMLButtonElement>) => void;\n /**\n * This changes the hover interaction to highlight icon more\n *\n * **Only available on web currently**\n */\n isHighlighted?: boolean;\n };\n native: {\n onClick: (event: GestureResponderEvent) => void;\n isHighlighted?: undefined;\n };\n }>;\n\n/**\n * Component for making clickable icons with transparent background.\n * For other cases please use `Button` component with `icon` prop.\n */\nconst _IconButton: React.ForwardRefRenderFunction<BladeElementRef, IconButtonProps> = (\n {\n icon,\n onClick,\n size = 'medium',\n emphasis = 'intense',\n accessibilityLabel,\n isDisabled,\n onBlur,\n onFocus,\n onMouseLeave,\n onMouseMove,\n onPointerDown,\n onPointerEnter,\n onTouchEnd,\n onTouchStart,\n isHighlighted,\n _tabIndex,\n ...rest\n },\n ref,\n) => {\n return (\n <StyledIconButton\n ref={ref as any}\n onClick={onClick}\n emphasis={emphasis}\n size={size}\n icon={icon}\n tabIndex={_tabIndex}\n accessibilityLabel={accessibilityLabel}\n isDisabled={isDisabled}\n isHighlighted={isHighlighted}\n onBlur={onBlur}\n onFocus={onFocus}\n onMouseLeave={onMouseLeave}\n onMouseMove={onMouseMove}\n onPointerDown={onPointerDown}\n onPointerEnter={onPointerEnter}\n onTouchEnd={onTouchEnd}\n onTouchStart={onTouchStart}\n {...makeAnalyticsAttribute(rest)}\n {...rest}\n />\n );\n};\n\nconst IconButton = assignWithoutSideEffects(React.forwardRef(_IconButton), {\n componentId: 'IconButton',\n});\n\nexport type { IconButtonProps };\nexport { IconButton };\n"],"names":["_IconButton","_ref","ref","icon","onClick","_ref$size","size","_ref$emphasis","emphasis","accessibilityLabel","isDisabled","onBlur","onFocus","onMouseLeave","onMouseMove","onPointerDown","onPointerEnter","onTouchEnd","onTouchStart","isHighlighted","_tabIndex","rest","_objectWithoutProperties","_excluded","_jsx","StyledIconButton","_objectSpread","tabIndex","makeAnalyticsAttribute","IconButton","assignWithoutSideEffects","React","forwardRef","componentId"],"mappings":";;;;;;;;;;;;;AAmEA;AACA;AACA;AACA;AACA,IAAMA,WAA6E,GAAG,SAAhFA,WAA6EA,CAAAC,IAAA,EAoBjFC,GAAG,EACA;AAAA,EAAA,IAnBDC,IAAI,GAAAF,IAAA,CAAJE,IAAI;IACJC,OAAO,GAAAH,IAAA,CAAPG,OAAO;IAAAC,SAAA,GAAAJ,IAAA,CACPK,IAAI;AAAJA,IAAAA,IAAI,GAAAD,SAAA,KAAG,KAAA,CAAA,GAAA,QAAQ,GAAAA,SAAA;IAAAE,aAAA,GAAAN,IAAA,CACfO,QAAQ;AAARA,IAAAA,QAAQ,GAAAD,aAAA,KAAG,KAAA,CAAA,GAAA,SAAS,GAAAA,aAAA;IACpBE,kBAAkB,GAAAR,IAAA,CAAlBQ,kBAAkB;IAClBC,UAAU,GAAAT,IAAA,CAAVS,UAAU;IACVC,MAAM,GAAAV,IAAA,CAANU,MAAM;IACNC,OAAO,GAAAX,IAAA,CAAPW,OAAO;IACPC,YAAY,GAAAZ,IAAA,CAAZY,YAAY;IACZC,WAAW,GAAAb,IAAA,CAAXa,WAAW;IACXC,aAAa,GAAAd,IAAA,CAAbc,aAAa;IACbC,cAAc,GAAAf,IAAA,CAAde,cAAc;IACdC,UAAU,GAAAhB,IAAA,CAAVgB,UAAU;IACVC,YAAY,GAAAjB,IAAA,CAAZiB,YAAY;IACZC,aAAa,GAAAlB,IAAA,CAAbkB,aAAa;IACbC,SAAS,GAAAnB,IAAA,CAATmB,SAAS;AACNC,IAAAA,IAAI,GAAAC,wBAAA,CAAArB,IAAA,EAAAsB,SAAA,CAAA,CAAA;AAIT,EAAA,oBACEC,GAAA,CAACC,gBAAgB,EAAAC,aAAA,CAAAA,aAAA,CAAA;AACfxB,IAAAA,GAAG,EAAEA,GAAW;AAChBE,IAAAA,OAAO,EAAEA,OAAQ;AACjBI,IAAAA,QAAQ,EAAEA,QAAS;AACnBF,IAAAA,IAAI,EAAEA,IAAK;AACXH,IAAAA,IAAI,EAAEA,IAAK;AACXwB,IAAAA,QAAQ,EAAEP,SAAU;AACpBX,IAAAA,kBAAkB,EAAEA,kBAAmB;AACvCC,IAAAA,UAAU,EAAEA,UAAW;AACvBS,IAAAA,aAAa,EAAEA,aAAc;AAC7BR,IAAAA,MAAM,EAAEA,MAAO;AACfC,IAAAA,OAAO,EAAEA,OAAQ;AACjBC,IAAAA,YAAY,EAAEA,YAAa;AAC3BC,IAAAA,WAAW,EAAEA,WAAY;AACzBC,IAAAA,aAAa,EAAEA,aAAc;AAC7BC,IAAAA,cAAc,EAAEA,cAAe;AAC/BC,IAAAA,UAAU,EAAEA,UAAW;AACvBC,IAAAA,YAAY,EAAEA,YAAAA;AAAa,GAAA,EACvBU,sBAAsB,CAACP,IAAI,CAAC,CAC5BA,EAAAA,IAAI,CACT,CAAC,CAAA;AAEN,CAAC,CAAA;AAEKQ,IAAAA,UAAU,gBAAGC,wBAAwB,eAACC,cAAK,CAACC,UAAU,CAAChC,WAAW,CAAC,EAAE;AACzEiC,EAAAA,WAAW,EAAE,YAAA;AACf,CAAC;;;;"}
|
|
@@ -22,6 +22,7 @@ import { jsx, jsxs } from 'react/jsx-runtime';
|
|
|
22
22
|
import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
|
|
23
23
|
import { castWebType } from '../../utils/platform/castUtils.js';
|
|
24
24
|
import { makeMotionTime } from '../../utils/makeMotionTime/makeMotionTime.web.js';
|
|
25
|
+
import { getMediaQuery } from '../../utils/getMediaQuery/getMediaQuery.js';
|
|
25
26
|
import { useVerifyAllowedChildren } from '../../utils/useVerifyAllowedChildren/useVerifyAllowedChildren.js';
|
|
26
27
|
import useTheme from '../BladeProvider/useTheme.js';
|
|
27
28
|
import { metaAttribute } from '../../utils/metaAttribute/metaAttribute.web.js';
|
|
@@ -30,7 +31,7 @@ import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeA
|
|
|
30
31
|
import { makeAccessible } from '../../utils/makeAccessible/makeAccessible.web.js';
|
|
31
32
|
import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
|
|
32
33
|
|
|
33
|
-
var _excluded = ["isOpen", "onDismiss", "zIndex", "children", "accessibilityLabel", "showOverlay", "initialFocusRef", "isLazy", "testID"];
|
|
34
|
+
var _excluded = ["isOpen", "onDismiss", "onUnmount", "zIndex", "children", "accessibilityLabel", "showOverlay", "initialFocusRef", "isLazy", "testID"];
|
|
34
35
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
35
36
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
36
37
|
var SHOW_DRAWER = 'show-drawer';
|
|
@@ -43,18 +44,29 @@ var AnimatedDrawerContainer = /*#__PURE__*/styled(BaseBox).withConfig({
|
|
|
43
44
|
isVisible = _ref.isVisible;
|
|
44
45
|
var entranceTransition = "all ".concat(castWebType(castWebType(makeMotionTime(theme.motion.duration.xmoderate))), " ").concat(castWebType(theme.motion.easing.entrance));
|
|
45
46
|
var exitTransition = "all\n ".concat(castWebType(makeMotionTime(theme.motion.duration.moderate)), "\n ").concat(castWebType(theme.motion.easing.exit));
|
|
46
|
-
return {
|
|
47
|
+
return _defineProperty({
|
|
47
48
|
opacity: isVisible ? 1 : 0,
|
|
48
|
-
transform: isVisible ? isFirstDrawerInStack ? 'translateX(calc(-100% - 16px))' :
|
|
49
|
+
transform: isVisible ? isFirstDrawerInStack ? 'translateX(calc(-100% - 16px))' : "translateX(-100%)" : 'translateX(0%)',
|
|
49
50
|
transition: isVisible ? entranceTransition : exitTransition,
|
|
50
|
-
animationFillMode: 'initial'
|
|
51
|
-
|
|
51
|
+
animationFillMode: 'initial',
|
|
52
|
+
position: 'fixed',
|
|
53
|
+
top: '0px',
|
|
54
|
+
bottom: '0px',
|
|
55
|
+
left: '100%',
|
|
56
|
+
height: 'auto'
|
|
57
|
+
}, "@media ".concat(getMediaQuery({
|
|
58
|
+
min: theme.breakpoints.m
|
|
59
|
+
})), {
|
|
60
|
+
top: isFirstDrawerInStack ? '24px' : '8px',
|
|
61
|
+
bottom: isFirstDrawerInStack ? '24px' : '8px',
|
|
62
|
+
transform: isVisible ? isFirstDrawerInStack ? 'translateX(calc(-100% - 24px))' : "translateX(calc(-100% - ".concat(theme.spacing[3], "px))") : 'translateX(0%)'
|
|
63
|
+
});
|
|
52
64
|
});
|
|
53
65
|
var DrawerOverlay = /*#__PURE__*/styled(FloatingOverlay).withConfig({
|
|
54
66
|
displayName: "Drawerweb__DrawerOverlay",
|
|
55
67
|
componentId: "sc-15ixhgr-1"
|
|
56
|
-
})(function (
|
|
57
|
-
var theme =
|
|
68
|
+
})(function (_ref3) {
|
|
69
|
+
var theme = _ref3.theme;
|
|
58
70
|
return _defineProperty({
|
|
59
71
|
opacity: 0,
|
|
60
72
|
transition: "opacity\n ".concat(makeMotionTime(theme.motion.duration.xmoderate), "\n ").concat(castWebType(theme.motion.easing.exit)),
|
|
@@ -64,20 +76,21 @@ var DrawerOverlay = /*#__PURE__*/styled(FloatingOverlay).withConfig({
|
|
|
64
76
|
transition: "opacity ".concat(makeMotionTime(theme.motion.duration.gentle), " ").concat(castWebType(theme.motion.easing.entrance))
|
|
65
77
|
});
|
|
66
78
|
});
|
|
67
|
-
var _Drawer = function _Drawer(
|
|
68
|
-
var isOpen =
|
|
69
|
-
onDismiss =
|
|
70
|
-
|
|
71
|
-
zIndex =
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
showOverlay =
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
isLazy =
|
|
79
|
-
|
|
80
|
-
|
|
79
|
+
var _Drawer = function _Drawer(_ref5, ref) {
|
|
80
|
+
var isOpen = _ref5.isOpen,
|
|
81
|
+
onDismiss = _ref5.onDismiss,
|
|
82
|
+
onUnmount = _ref5.onUnmount,
|
|
83
|
+
_ref5$zIndex = _ref5.zIndex,
|
|
84
|
+
zIndex = _ref5$zIndex === void 0 ? componentZIndices.drawer : _ref5$zIndex,
|
|
85
|
+
children = _ref5.children,
|
|
86
|
+
accessibilityLabel = _ref5.accessibilityLabel,
|
|
87
|
+
_ref5$showOverlay = _ref5.showOverlay,
|
|
88
|
+
showOverlay = _ref5$showOverlay === void 0 ? true : _ref5$showOverlay,
|
|
89
|
+
initialFocusRef = _ref5.initialFocusRef,
|
|
90
|
+
_ref5$isLazy = _ref5.isLazy,
|
|
91
|
+
isLazy = _ref5$isLazy === void 0 ? true : _ref5$isLazy,
|
|
92
|
+
testID = _ref5.testID,
|
|
93
|
+
rest = _objectWithoutProperties(_ref5, _excluded);
|
|
81
94
|
var closeButtonRef = React__default.useRef(null);
|
|
82
95
|
var _React$useState = React__default.useState(zIndex),
|
|
83
96
|
_React$useState2 = _slicedToArray(_React$useState, 2),
|
|
@@ -114,7 +127,12 @@ var _Drawer = function _Drawer(_ref4, ref) {
|
|
|
114
127
|
stackingLevel = _React$useMemo.stackingLevel,
|
|
115
128
|
isFirstDrawerInStack = _React$useMemo.isFirstDrawerInStack;
|
|
116
129
|
var _useFloating = useFloating({
|
|
117
|
-
open: isMounted
|
|
130
|
+
open: isMounted,
|
|
131
|
+
onOpenChange: function onOpenChange(open) {
|
|
132
|
+
if (!open) {
|
|
133
|
+
onUnmount === null || onUnmount === void 0 ? void 0 : onUnmount();
|
|
134
|
+
}
|
|
135
|
+
}
|
|
118
136
|
}),
|
|
119
137
|
refs = _useFloating.refs,
|
|
120
138
|
context = _useFloating.context;
|
|
@@ -184,11 +202,13 @@ var _Drawer = function _Drawer(_ref4, ref) {
|
|
|
184
202
|
label: accessibilityLabel
|
|
185
203
|
})), {}, {
|
|
186
204
|
position: "fixed",
|
|
187
|
-
top: "spacing.0",
|
|
188
|
-
left: "100%",
|
|
189
205
|
backgroundColor: "popup.background.subtle",
|
|
206
|
+
borderRadius: {
|
|
207
|
+
base: 'none',
|
|
208
|
+
m: 'large'
|
|
209
|
+
},
|
|
210
|
+
overflow: "hidden",
|
|
190
211
|
elevation: "highRaised",
|
|
191
|
-
height: "100%",
|
|
192
212
|
display: "flex",
|
|
193
213
|
flexDirection: "column",
|
|
194
214
|
ref: mergeRefs(ref, refs.setFloating),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"Drawer.web.js","sources":["../../../../../../src/components/Drawer/Drawer.web.tsx"],"sourcesContent":["import {\n FloatingFocusManager,\n FloatingOverlay,\n FloatingPortal,\n useFloating,\n} from '@floating-ui/react';\nimport type { CSSProperties } from 'react';\nimport React from 'react';\nimport styled from 'styled-components';\nimport usePresence from 'use-presence';\nimport { drawerComponentIds } from './drawerComponentIds';\nimport { DrawerContext } from './DrawerContext';\nimport type { DrawerProps } from './types';\nimport BaseBox from '~components/Box/BaseBox';\nimport { castWebType, makeMotionTime, useTheme } from '~utils';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { componentZIndices } from '~utils/componentZIndices';\nimport { useDrawerStack } from '~components/Drawer/StackProvider';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { useId } from '~utils/useId';\nimport { useVerifyAllowedChildren } from '~utils/useVerifyAllowedChildren';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport type { BladeElementRef } from '~utils/types';\nimport { mergeRefs } from '~utils/useMergeRefs';\n\nconst SHOW_DRAWER = 'show-drawer';\n\nconst AnimatedDrawerContainer = styled(BaseBox)<{\n isFirstDrawerInStack: boolean;\n isVisible: boolean;\n}>(({ theme, isFirstDrawerInStack, isVisible }) => {\n const entranceTransition: CSSProperties['transition'] = `all ${castWebType(\n castWebType(makeMotionTime(theme.motion.duration.xmoderate)),\n )} ${castWebType(theme.motion.easing.entrance)}`;\n\n const exitTransition: CSSProperties['transition'] = `all\n ${castWebType(makeMotionTime(theme.motion.duration.moderate))}\n ${castWebType(theme.motion.easing.exit)}`;\n\n return {\n opacity: isVisible ? 1 : 0,\n transform: isVisible\n ? isFirstDrawerInStack\n ? 'translateX(calc(-100% - 16px))'\n : 'translateX(-100%)'\n : 'translateX(0%)',\n transition: isVisible ? entranceTransition : exitTransition,\n animationFillMode: 'initial',\n };\n});\n\nconst DrawerOverlay = styled(FloatingOverlay)(({ theme }) => {\n return {\n opacity: 0,\n transition: `opacity\n ${makeMotionTime(theme.motion.duration.xmoderate)}\n ${castWebType(theme.motion.easing.exit)}`,\n backgroundColor: theme.colors.overlay.background.subtle,\n\n [`&.${SHOW_DRAWER}`]: {\n opacity: 1,\n transition: `opacity ${makeMotionTime(theme.motion.duration.gentle)} ${castWebType(\n theme.motion.easing.entrance,\n )}`,\n },\n };\n});\n\nconst _Drawer: React.ForwardRefRenderFunction<BladeElementRef, DrawerProps> = (\n {\n isOpen,\n onDismiss,\n zIndex = componentZIndices.drawer,\n children,\n accessibilityLabel,\n showOverlay = true,\n initialFocusRef,\n isLazy = true,\n testID,\n ...rest\n },\n ref,\n) => {\n const closeButtonRef = React.useRef<HTMLDivElement>(null);\n const [zIndexState, setZIndexState] = React.useState<number>(zIndex);\n\n useVerifyAllowedChildren({\n children,\n componentName: 'Drawer',\n allowedComponents: [drawerComponentIds.DrawerHeader, drawerComponentIds.DrawerBody],\n });\n\n const { theme } = useTheme();\n const drawerId = useId('drawer');\n const { drawerStack, addToDrawerStack, removeFromDrawerStack } = useDrawerStack();\n\n const { isMounted, isVisible, isExiting } = usePresence(isOpen, {\n enterTransitionDuration: theme.motion.duration.gentle,\n exitTransitionDuration: theme.motion.duration.xmoderate,\n initialEnter: true,\n });\n\n const { stackingLevel, isFirstDrawerInStack } = React.useMemo(() => {\n // eslint-disable-next-line @typescript-eslint/restrict-plus-operands\n const level = Object.keys(drawerStack).indexOf(drawerId) + 1;\n return {\n stackingLevel: level,\n isFirstDrawerInStack: level === 1 && Object.keys(drawerStack).length > 1,\n };\n }, [drawerId, drawerStack]);\n\n const { refs, context } = useFloating({\n open: isMounted,\n });\n\n React.useEffect(() => {\n if (isOpen) {\n addToDrawerStack({ elementId: drawerId, onDismiss });\n } else {\n removeFromDrawerStack({ elementId: drawerId });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isOpen]);\n\n // When z-index is not defined by user, we use default drawer z index and add stackingLevel to ensure\n // new drawer that opens, always opens on top of previous one.\n React.useEffect(() => {\n // eslint-disable-next-line @typescript-eslint/restrict-plus-operands\n setZIndexState(zIndex + stackingLevel);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isMounted]);\n\n const contextValue = React.useMemo(\n () => ({\n close: onDismiss,\n closeButtonRef,\n stackingLevel,\n isExiting,\n }),\n [isExiting, onDismiss, stackingLevel],\n );\n\n return (\n <DrawerContext.Provider value={contextValue}>\n <FloatingPortal>\n {isMounted || !isLazy ? (\n <FloatingFocusManager\n context={context}\n initialFocus={initialFocusRef ?? closeButtonRef}\n returnFocus={true}\n >\n <BaseBox\n display={isLazy ? undefined : isMounted ? 'block' : 'none'}\n position=\"fixed\"\n {...metaAttribute({\n name: MetaConstants.Drawer,\n testID,\n })}\n {...makeAnalyticsAttribute(rest)}\n zIndex={zIndexState}\n >\n {showOverlay ? (\n <DrawerOverlay\n onClick={() => {\n onDismiss();\n }}\n className={isVisible ? SHOW_DRAWER : ''}\n lockScroll={true}\n {...metaAttribute({\n testID: 'drawer-overlay',\n })}\n />\n ) : null}\n <AnimatedDrawerContainer\n isVisible={isVisible}\n isFirstDrawerInStack={isFirstDrawerInStack}\n width={{ base: '90%', s: '375px', m: '420px' }}\n {...makeAccessible({\n role: 'dialog',\n modal: true,\n label: accessibilityLabel,\n })}\n position=\"fixed\"\n top=\"spacing.0\"\n left=\"100%\"\n backgroundColor=\"popup.background.subtle\"\n elevation=\"highRaised\"\n height=\"100%\"\n display=\"flex\"\n flexDirection=\"column\"\n ref={mergeRefs(ref, refs.setFloating)}\n onKeyDown={(event) => {\n if (event?.key === 'Escape' || event?.code === 'Escape') {\n onDismiss();\n }\n }}\n >\n {children}\n </AnimatedDrawerContainer>\n </BaseBox>\n </FloatingFocusManager>\n ) : null}\n </FloatingPortal>\n </DrawerContext.Provider>\n );\n};\n\n/**\n * ### Drawer Component\n * \n * A drawer is a panel that slides in mostly from right side of the screen over the existing content in the viewport. \n * It helps in providing additional details or context and can also be used to promote product features or new products.\n * \n * ---\n * \n * #### Usage\n * \n * ```jsx\n const MyDrawer = () => {\n const [showDrawer, setShowDrawer] = React.useState(false);\n return (\n <Box>\n <Button onClick={() => setShowDrawer(true)}>Open Drawer</Button>\n <Drawer\n isOpen={showDrawer}\n onDismiss={() => setShowDrawer(false)}\n >\n <DrawerHeader title=\"Announcements\" />\n <DrawerBody>\n <FTXAnnouncement />\n <CatPictures />\n </DrawerBody>\n <Drawer>\n </Box>\n )\n }\n * ```\n *\n * ---\n *\n * Checkout {@link https://blade.razorpay.com/?path=/docs/components-drawer Drawer Documentation}\n * \n * \n */\nconst Drawer = assignWithoutSideEffects(React.forwardRef(_Drawer), {\n displayName: 'Drawer',\n componentId: drawerComponentIds.Drawer,\n});\n\nexport { Drawer };\n"],"names":["SHOW_DRAWER","AnimatedDrawerContainer","styled","BaseBox","withConfig","displayName","componentId","_ref","theme","isFirstDrawerInStack","isVisible","entranceTransition","concat","castWebType","makeMotionTime","motion","duration","xmoderate","easing","entrance","exitTransition","moderate","exit","opacity","transform","transition","animationFillMode","DrawerOverlay","FloatingOverlay","_ref2","_defineProperty","backgroundColor","colors","overlay","background","subtle","gentle","_Drawer","_ref4","ref","isOpen","onDismiss","_ref4$zIndex","zIndex","componentZIndices","drawer","children","accessibilityLabel","_ref4$showOverlay","showOverlay","initialFocusRef","_ref4$isLazy","isLazy","testID","rest","_objectWithoutProperties","_excluded","closeButtonRef","React","useRef","_React$useState","useState","_React$useState2","_slicedToArray","zIndexState","setZIndexState","useVerifyAllowedChildren","componentName","allowedComponents","drawerComponentIds","DrawerHeader","DrawerBody","_useTheme","useTheme","drawerId","useId","_useDrawerStack","useDrawerStack","drawerStack","addToDrawerStack","removeFromDrawerStack","_usePresence","usePresence","enterTransitionDuration","exitTransitionDuration","initialEnter","isMounted","isExiting","_React$useMemo","useMemo","level","Object","keys","indexOf","stackingLevel","length","_useFloating","useFloating","open","refs","context","useEffect","elementId","contextValue","close","_jsx","DrawerContext","Provider","value","FloatingPortal","FloatingFocusManager","initialFocus","returnFocus","_jsxs","_objectSpread","display","undefined","position","metaAttribute","name","MetaConstants","Drawer","makeAnalyticsAttribute","onClick","className","lockScroll","width","base","s","m","makeAccessible","role","modal","label","top","left","elevation","height","flexDirection","mergeRefs","setFloating","onKeyDown","event","key","code","assignWithoutSideEffects","forwardRef"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"Drawer.web.js","sources":["../../../../../../src/components/Drawer/Drawer.web.tsx"],"sourcesContent":["import {\n FloatingFocusManager,\n FloatingOverlay,\n FloatingPortal,\n useFloating,\n} from '@floating-ui/react';\nimport type { CSSProperties } from 'react';\nimport React from 'react';\nimport styled from 'styled-components';\nimport usePresence from 'use-presence';\nimport { drawerComponentIds } from './drawerComponentIds';\nimport { DrawerContext } from './DrawerContext';\nimport type { DrawerProps } from './types';\nimport BaseBox from '~components/Box/BaseBox';\nimport { castWebType, getMediaQuery, makeMotionTime, useTheme } from '~utils';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { componentZIndices } from '~utils/componentZIndices';\nimport { useDrawerStack } from '~components/Drawer/StackProvider';\nimport { makeAccessible } from '~utils/makeAccessible';\nimport { metaAttribute, MetaConstants } from '~utils/metaAttribute';\nimport { useId } from '~utils/useId';\nimport { useVerifyAllowedChildren } from '~utils/useVerifyAllowedChildren';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport type { BladeElementRef } from '~utils/types';\nimport { mergeRefs } from '~utils/useMergeRefs';\n\nconst SHOW_DRAWER = 'show-drawer';\n\nconst AnimatedDrawerContainer = styled(BaseBox)<{\n isFirstDrawerInStack: boolean;\n isVisible: boolean;\n}>(({ theme, isFirstDrawerInStack, isVisible }) => {\n const entranceTransition: CSSProperties['transition'] = `all ${castWebType(\n castWebType(makeMotionTime(theme.motion.duration.xmoderate)),\n )} ${castWebType(theme.motion.easing.entrance)}`;\n\n const exitTransition: CSSProperties['transition'] = `all\n ${castWebType(makeMotionTime(theme.motion.duration.moderate))}\n ${castWebType(theme.motion.easing.exit)}`;\n\n return {\n opacity: isVisible ? 1 : 0,\n transform: isVisible\n ? isFirstDrawerInStack\n ? 'translateX(calc(-100% - 16px))'\n : `translateX(-100%)`\n : 'translateX(0%)',\n transition: isVisible ? entranceTransition : exitTransition,\n animationFillMode: 'initial',\n position: 'fixed',\n top: '0px',\n bottom: '0px',\n left: '100%',\n height: 'auto',\n [`@media ${getMediaQuery({ min: theme.breakpoints.m })}`]: {\n top: isFirstDrawerInStack ? '24px' : '8px',\n bottom: isFirstDrawerInStack ? '24px' : '8px',\n transform: isVisible\n ? isFirstDrawerInStack\n ? 'translateX(calc(-100% - 24px))'\n : `translateX(calc(-100% - ${theme.spacing[3]}px))`\n : 'translateX(0%)',\n },\n };\n});\n\nconst DrawerOverlay = styled(FloatingOverlay)(({ theme }) => {\n return {\n opacity: 0,\n transition: `opacity\n ${makeMotionTime(theme.motion.duration.xmoderate)}\n ${castWebType(theme.motion.easing.exit)}`,\n backgroundColor: theme.colors.overlay.background.subtle,\n\n [`&.${SHOW_DRAWER}`]: {\n opacity: 1,\n transition: `opacity ${makeMotionTime(theme.motion.duration.gentle)} ${castWebType(\n theme.motion.easing.entrance,\n )}`,\n },\n };\n});\n\nconst _Drawer: React.ForwardRefRenderFunction<BladeElementRef, DrawerProps> = (\n {\n isOpen,\n onDismiss,\n onUnmount,\n zIndex = componentZIndices.drawer,\n children,\n accessibilityLabel,\n showOverlay = true,\n initialFocusRef,\n isLazy = true,\n testID,\n ...rest\n },\n ref,\n) => {\n const closeButtonRef = React.useRef<HTMLDivElement>(null);\n const [zIndexState, setZIndexState] = React.useState<number>(zIndex);\n\n useVerifyAllowedChildren({\n children,\n componentName: 'Drawer',\n allowedComponents: [drawerComponentIds.DrawerHeader, drawerComponentIds.DrawerBody],\n });\n\n const { theme } = useTheme();\n const drawerId = useId('drawer');\n const { drawerStack, addToDrawerStack, removeFromDrawerStack } = useDrawerStack();\n\n const { isMounted, isVisible, isExiting } = usePresence(isOpen, {\n enterTransitionDuration: theme.motion.duration.gentle,\n exitTransitionDuration: theme.motion.duration.xmoderate,\n initialEnter: true,\n });\n\n const { stackingLevel, isFirstDrawerInStack } = React.useMemo(() => {\n // eslint-disable-next-line @typescript-eslint/restrict-plus-operands\n const level = Object.keys(drawerStack).indexOf(drawerId) + 1;\n return {\n stackingLevel: level,\n isFirstDrawerInStack: level === 1 && Object.keys(drawerStack).length > 1,\n };\n }, [drawerId, drawerStack]);\n\n const { refs, context } = useFloating({\n open: isMounted,\n onOpenChange: (open) => {\n if (!open) {\n onUnmount?.();\n }\n },\n });\n\n React.useEffect(() => {\n if (isOpen) {\n addToDrawerStack({ elementId: drawerId, onDismiss });\n } else {\n removeFromDrawerStack({ elementId: drawerId });\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isOpen]);\n\n // When z-index is not defined by user, we use default drawer z index and add stackingLevel to ensure\n // new drawer that opens, always opens on top of previous one.\n React.useEffect(() => {\n // eslint-disable-next-line @typescript-eslint/restrict-plus-operands\n setZIndexState(zIndex + stackingLevel);\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [isMounted]);\n\n const contextValue = React.useMemo(\n () => ({\n close: onDismiss,\n closeButtonRef,\n stackingLevel,\n isExiting,\n }),\n [isExiting, onDismiss, stackingLevel],\n );\n\n return (\n <DrawerContext.Provider value={contextValue}>\n <FloatingPortal>\n {isMounted || !isLazy ? (\n <FloatingFocusManager\n context={context}\n initialFocus={initialFocusRef ?? closeButtonRef}\n returnFocus={true}\n >\n <BaseBox\n display={isLazy ? undefined : isMounted ? 'block' : 'none'}\n position=\"fixed\"\n {...metaAttribute({\n name: MetaConstants.Drawer,\n testID,\n })}\n {...makeAnalyticsAttribute(rest)}\n zIndex={zIndexState}\n >\n {showOverlay ? (\n <DrawerOverlay\n onClick={() => {\n onDismiss();\n }}\n className={isVisible ? SHOW_DRAWER : ''}\n lockScroll={true}\n {...metaAttribute({\n testID: 'drawer-overlay',\n })}\n />\n ) : null}\n <AnimatedDrawerContainer\n isVisible={isVisible}\n isFirstDrawerInStack={isFirstDrawerInStack}\n width={{ base: '90%', s: '375px', m: '420px' }}\n {...makeAccessible({\n role: 'dialog',\n modal: true,\n label: accessibilityLabel,\n })}\n position=\"fixed\"\n backgroundColor=\"popup.background.subtle\"\n borderRadius={{ base: 'none', m: 'large' }}\n overflow=\"hidden\"\n elevation=\"highRaised\"\n display=\"flex\"\n flexDirection=\"column\"\n ref={mergeRefs(ref, refs.setFloating)}\n onKeyDown={(event) => {\n if (event?.key === 'Escape' || event?.code === 'Escape') {\n onDismiss();\n }\n }}\n >\n {children}\n </AnimatedDrawerContainer>\n </BaseBox>\n </FloatingFocusManager>\n ) : null}\n </FloatingPortal>\n </DrawerContext.Provider>\n );\n};\n\n/**\n * ### Drawer Component\n * \n * A drawer is a panel that slides in mostly from right side of the screen over the existing content in the viewport. \n * It helps in providing additional details or context and can also be used to promote product features or new products.\n * \n * ---\n * \n * #### Usage\n * \n * ```jsx\n const MyDrawer = () => {\n const [showDrawer, setShowDrawer] = React.useState(false);\n return (\n <Box>\n <Button onClick={() => setShowDrawer(true)}>Open Drawer</Button>\n <Drawer\n isOpen={showDrawer}\n onDismiss={() => setShowDrawer(false)}\n >\n <DrawerHeader title=\"Announcements\" />\n <DrawerBody>\n <FTXAnnouncement />\n <CatPictures />\n </DrawerBody>\n <Drawer>\n </Box>\n )\n }\n * ```\n *\n * ---\n *\n * Checkout {@link https://blade.razorpay.com/?path=/docs/components-drawer Drawer Documentation}\n * \n * \n */\nconst Drawer = assignWithoutSideEffects(React.forwardRef(_Drawer), {\n displayName: 'Drawer',\n componentId: drawerComponentIds.Drawer,\n});\n\nexport { Drawer };\n"],"names":["SHOW_DRAWER","AnimatedDrawerContainer","styled","BaseBox","withConfig","displayName","componentId","_ref","theme","isFirstDrawerInStack","isVisible","entranceTransition","concat","castWebType","makeMotionTime","motion","duration","xmoderate","easing","entrance","exitTransition","moderate","exit","_defineProperty","opacity","transform","transition","animationFillMode","position","top","bottom","left","height","getMediaQuery","min","breakpoints","m","spacing","DrawerOverlay","FloatingOverlay","_ref3","backgroundColor","colors","overlay","background","subtle","gentle","_Drawer","_ref5","ref","isOpen","onDismiss","onUnmount","_ref5$zIndex","zIndex","componentZIndices","drawer","children","accessibilityLabel","_ref5$showOverlay","showOverlay","initialFocusRef","_ref5$isLazy","isLazy","testID","rest","_objectWithoutProperties","_excluded","closeButtonRef","React","useRef","_React$useState","useState","_React$useState2","_slicedToArray","zIndexState","setZIndexState","useVerifyAllowedChildren","componentName","allowedComponents","drawerComponentIds","DrawerHeader","DrawerBody","_useTheme","useTheme","drawerId","useId","_useDrawerStack","useDrawerStack","drawerStack","addToDrawerStack","removeFromDrawerStack","_usePresence","usePresence","enterTransitionDuration","exitTransitionDuration","initialEnter","isMounted","isExiting","_React$useMemo","useMemo","level","Object","keys","indexOf","stackingLevel","length","_useFloating","useFloating","open","onOpenChange","refs","context","useEffect","elementId","contextValue","close","_jsx","DrawerContext","Provider","value","FloatingPortal","FloatingFocusManager","initialFocus","returnFocus","_jsxs","_objectSpread","display","undefined","metaAttribute","name","MetaConstants","Drawer","makeAnalyticsAttribute","onClick","className","lockScroll","width","base","s","makeAccessible","role","modal","label","borderRadius","overflow","elevation","flexDirection","mergeRefs","setFloating","onKeyDown","event","key","code","assignWithoutSideEffects","forwardRef"],"mappings":"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"}
|
|
@@ -8,12 +8,14 @@ import { BaseHeader } from '../BaseHeaderFooter/BaseHeader.js';
|
|
|
8
8
|
import '../Box/index.js';
|
|
9
9
|
import '../../utils/assignWithoutSideEffects/index.js';
|
|
10
10
|
import '../../utils/makeAnalyticsAttribute/index.js';
|
|
11
|
+
import '../../utils/index.js';
|
|
11
12
|
import { jsx } from 'react/jsx-runtime';
|
|
13
|
+
import useTheme from '../BladeProvider/useTheme.js';
|
|
12
14
|
import { makeAnalyticsAttribute } from '../../utils/makeAnalyticsAttribute/makeAnalyticsAttribute.js';
|
|
13
15
|
import { assignWithoutSideEffects } from '../../utils/assignWithoutSideEffects/assignWithoutSideEffects.js';
|
|
14
16
|
import { Box } from '../Box/Box.js';
|
|
15
17
|
|
|
16
|
-
var _excluded = ["title", "subtitle", "leading", "trailing", "titleSuffix", "children"];
|
|
18
|
+
var _excluded = ["title", "subtitle", "leading", "trailing", "titleSuffix", "children", "color"];
|
|
17
19
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
18
20
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
19
21
|
var _DrawerHeader = function _DrawerHeader(_ref) {
|
|
@@ -23,6 +25,8 @@ var _DrawerHeader = function _DrawerHeader(_ref) {
|
|
|
23
25
|
trailing = _ref.trailing,
|
|
24
26
|
titleSuffix = _ref.titleSuffix,
|
|
25
27
|
children = _ref.children,
|
|
28
|
+
_ref$color = _ref.color,
|
|
29
|
+
color = _ref$color === void 0 ? 'information' : _ref$color,
|
|
26
30
|
rest = _objectWithoutProperties(_ref, _excluded);
|
|
27
31
|
var _React$useContext = React__default.useContext(DrawerContext),
|
|
28
32
|
close = _React$useContext.close,
|
|
@@ -31,6 +35,8 @@ var _DrawerHeader = function _DrawerHeader(_ref) {
|
|
|
31
35
|
isExiting = _React$useContext.isExiting;
|
|
32
36
|
var _useDrawerStack = useDrawerStack(),
|
|
33
37
|
drawerStack = _useDrawerStack.drawerStack;
|
|
38
|
+
var _useTheme = useTheme(),
|
|
39
|
+
theme = _useTheme.theme;
|
|
34
40
|
var closeAllDrawers = function closeAllDrawers() {
|
|
35
41
|
for (var _i = 0, _Object$values = Object.values(drawerStack); _i < _Object$values.length; _i++) {
|
|
36
42
|
var onDismiss = _Object$values[_i];
|
|
@@ -39,6 +45,7 @@ var _DrawerHeader = function _DrawerHeader(_ref) {
|
|
|
39
45
|
};
|
|
40
46
|
var isStackedDrawer = stackingLevel && stackingLevel > 1;
|
|
41
47
|
var isAtleastOneDrawerOpen = Object.keys(drawerStack).length > 0;
|
|
48
|
+
var backgroundGradient = "linear-gradient(155deg, ".concat(theme.colors.transparent, " 0%, ").concat(theme.colors.feedback.background[color].subtle, " 30.26%)");
|
|
42
49
|
// This condition is to avoid back button disappear while stacked drawer is in the exiting transition
|
|
43
50
|
var isDrawerExiting = isAtleastOneDrawerOpen && isExiting && stackingLevel !== 1;
|
|
44
51
|
return /*#__PURE__*/jsx(BaseHeader
|
|
@@ -54,10 +61,12 @@ var _DrawerHeader = function _DrawerHeader(_ref) {
|
|
|
54
61
|
return close();
|
|
55
62
|
},
|
|
56
63
|
title: title,
|
|
64
|
+
size: "xlarge",
|
|
57
65
|
titleSuffix: titleSuffix,
|
|
58
66
|
subtitle: subtitle,
|
|
59
67
|
leading: leading,
|
|
60
|
-
trailing: trailing
|
|
68
|
+
trailing: trailing,
|
|
69
|
+
backgroundImage: backgroundGradient
|
|
61
70
|
}, makeAnalyticsAttribute(rest)), {}, {
|
|
62
71
|
children: children
|
|
63
72
|
}));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DrawerSubcomponents.web.js","sources":["../../../../../../src/components/Drawer/DrawerSubcomponents.web.tsx"],"sourcesContent":["import React from 'react';\nimport { drawerComponentIds } from './drawerComponentIds';\nimport { DrawerContext } from './DrawerContext';\nimport type { DrawerHeaderProps } from './types';\nimport { useDrawerStack } from './StackProvider';\nimport { BaseHeader } from '~components/BaseHeaderFooter/BaseHeader';\nimport { Box } from '~components/Box';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\n\nconst _DrawerHeader = ({\n title,\n subtitle,\n leading,\n trailing,\n titleSuffix,\n children,\n ...rest\n}: DrawerHeaderProps): React.ReactElement => {\n const { close, closeButtonRef, stackingLevel, isExiting } = React.useContext(DrawerContext);\n const { drawerStack } = useDrawerStack();\n const closeAllDrawers = (): void => {\n for (const onDismiss of Object.values(drawerStack)) {\n onDismiss();\n }\n };\n\n const isStackedDrawer = stackingLevel && stackingLevel > 1;\n\n const isAtleastOneDrawerOpen = Object.keys(drawerStack).length > 0;\n // This condition is to avoid back button disappear while stacked drawer is in the exiting transition\n const isDrawerExiting = isAtleastOneDrawerOpen && isExiting && stackingLevel !== 1;\n\n return (\n <BaseHeader\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n showBackButton={isStackedDrawer || isDrawerExiting}\n showCloseButton={true}\n closeButtonRef={closeButtonRef}\n onCloseButtonClick={() => closeAllDrawers()}\n onBackButtonClick={() => close()}\n title={title}\n titleSuffix={titleSuffix}\n subtitle={subtitle}\n leading={leading}\n trailing={trailing}\n {...makeAnalyticsAttribute(rest)}\n >\n {children}\n </BaseHeader>\n );\n};\n\n/**\n * #### Usage\n *\n * ```jsx\n * <DrawerHeader\n * title=\"Announcements\"\n * subtitle=\"Checkout what's new in Razorpay\"\n * titleSuffix={<DrawerHeaderBadge>New</DrawerHeaderBadge>}\n * leading={<DrawerHeaderIcon icon={AnnouncementIcon} />}\n * trailing={<Button icon={DownloadIcon} />}\n * />\n * ```\n *\n */\nconst DrawerHeader = assignWithoutSideEffects(_DrawerHeader, {\n componentId: drawerComponentIds.DrawerHeader,\n});\n\nconst drawerPadding = 'spacing.6';\n\nconst _DrawerBody = ({ children }: { children: React.ReactNode }): React.ReactElement => {\n return (\n <Box padding={drawerPadding} overflow=\"auto\" flex=\"1\">\n {children}\n </Box>\n );\n};\nconst DrawerBody = assignWithoutSideEffects(_DrawerBody, {\n componentId: drawerComponentIds.DrawerBody,\n});\n\nexport { DrawerHeader, DrawerBody, drawerPadding };\n"],"names":["_DrawerHeader","_ref","title","subtitle","leading","trailing","titleSuffix","children","rest","_objectWithoutProperties","_excluded","_React$useContext","React","useContext","DrawerContext","close","closeButtonRef","stackingLevel","isExiting","_useDrawerStack","useDrawerStack","drawerStack","closeAllDrawers","_i","_Object$values","Object","values","length","onDismiss","isStackedDrawer","isAtleastOneDrawerOpen","keys","isDrawerExiting","_jsx","BaseHeader","_objectSpread","showBackButton","showCloseButton","onCloseButtonClick","onBackButtonClick","makeAnalyticsAttribute","DrawerHeader","assignWithoutSideEffects","componentId","drawerComponentIds","drawerPadding","_DrawerBody","_ref2","Box","padding","overflow","flex","DrawerBody"],"mappings":"
|
|
1
|
+
{"version":3,"file":"DrawerSubcomponents.web.js","sources":["../../../../../../src/components/Drawer/DrawerSubcomponents.web.tsx"],"sourcesContent":["import React from 'react';\nimport { drawerComponentIds } from './drawerComponentIds';\nimport { DrawerContext } from './DrawerContext';\nimport type { DrawerHeaderProps } from './types';\nimport { useDrawerStack } from './StackProvider';\nimport { BaseHeader } from '~components/BaseHeaderFooter/BaseHeader';\nimport { Box } from '~components/Box';\nimport { assignWithoutSideEffects } from '~utils/assignWithoutSideEffects';\nimport { makeAnalyticsAttribute } from '~utils/makeAnalyticsAttribute';\nimport { useTheme } from '~utils';\n\nconst _DrawerHeader = ({\n title,\n subtitle,\n leading,\n trailing,\n titleSuffix,\n children,\n color = 'information',\n ...rest\n}: DrawerHeaderProps): React.ReactElement => {\n const { close, closeButtonRef, stackingLevel, isExiting } = React.useContext(DrawerContext);\n const { drawerStack } = useDrawerStack();\n const { theme } = useTheme();\n\n const closeAllDrawers = (): void => {\n for (const onDismiss of Object.values(drawerStack)) {\n onDismiss();\n }\n };\n\n const isStackedDrawer = stackingLevel && stackingLevel > 1;\n\n const isAtleastOneDrawerOpen = Object.keys(drawerStack).length > 0;\n\n const backgroundGradient = `linear-gradient(155deg, ${theme.colors.transparent} 0%, ${theme.colors.feedback.background[color].subtle} 30.26%)` as const;\n // This condition is to avoid back button disappear while stacked drawer is in the exiting transition\n const isDrawerExiting = isAtleastOneDrawerOpen && isExiting && stackingLevel !== 1;\n\n return (\n <BaseHeader\n // eslint-disable-next-line @typescript-eslint/prefer-nullish-coalescing\n showBackButton={isStackedDrawer || isDrawerExiting}\n showCloseButton={true}\n closeButtonRef={closeButtonRef}\n onCloseButtonClick={() => closeAllDrawers()}\n onBackButtonClick={() => close()}\n title={title}\n size=\"xlarge\"\n titleSuffix={titleSuffix}\n subtitle={subtitle}\n leading={leading}\n trailing={trailing}\n backgroundImage={backgroundGradient}\n {...makeAnalyticsAttribute(rest)}\n >\n {children}\n </BaseHeader>\n );\n};\n\n/**\n * #### Usage\n *\n * ```jsx\n * <DrawerHeader\n * title=\"Announcements\"\n * subtitle=\"Checkout what's new in Razorpay\"\n * titleSuffix={<DrawerHeaderBadge>New</DrawerHeaderBadge>}\n * leading={<DrawerHeaderIcon icon={AnnouncementIcon} />}\n * trailing={<Button icon={DownloadIcon} />}\n * />\n * ```\n *\n */\nconst DrawerHeader = assignWithoutSideEffects(_DrawerHeader, {\n componentId: drawerComponentIds.DrawerHeader,\n});\n\nconst drawerPadding = 'spacing.6';\n\nconst _DrawerBody = ({ children }: { children: React.ReactNode }): React.ReactElement => {\n return (\n <Box padding={drawerPadding} overflow=\"auto\" flex=\"1\">\n {children}\n </Box>\n );\n};\nconst DrawerBody = assignWithoutSideEffects(_DrawerBody, {\n componentId: drawerComponentIds.DrawerBody,\n});\n\nexport { DrawerHeader, DrawerBody, drawerPadding };\n"],"names":["_DrawerHeader","_ref","title","subtitle","leading","trailing","titleSuffix","children","_ref$color","color","rest","_objectWithoutProperties","_excluded","_React$useContext","React","useContext","DrawerContext","close","closeButtonRef","stackingLevel","isExiting","_useDrawerStack","useDrawerStack","drawerStack","_useTheme","useTheme","theme","closeAllDrawers","_i","_Object$values","Object","values","length","onDismiss","isStackedDrawer","isAtleastOneDrawerOpen","keys","backgroundGradient","concat","colors","transparent","feedback","background","subtle","isDrawerExiting","_jsx","BaseHeader","_objectSpread","showBackButton","showCloseButton","onCloseButtonClick","onBackButtonClick","size","backgroundImage","makeAnalyticsAttribute","DrawerHeader","assignWithoutSideEffects","componentId","drawerComponentIds","drawerPadding","_DrawerBody","_ref2","Box","padding","overflow","flex","DrawerBody"],"mappings":"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"}
|
|
@@ -1,6 +1,5 @@
|
|
|
1
1
|
import _defineProperty from '@babel/runtime/helpers/defineProperty';
|
|
2
2
|
import _objectWithoutProperties from '@babel/runtime/helpers/objectWithoutProperties';
|
|
3
|
-
import { encode } from 'universal-base64';
|
|
4
3
|
import { StepItemIndicator } from './StepItemMarker.js';
|
|
5
4
|
import { useStepGroup } from './StepGroupContext.js';
|
|
6
5
|
import { markerLineDotWidth, markerLineDotSpacing, markerLineWidth, getMarkerLineSpacings, itemTopMargin } from './tokens.js';
|
|
@@ -8,7 +7,9 @@ import '../Box/index.js';
|
|
|
8
7
|
import '../Box/BaseBox/index.js';
|
|
9
8
|
import '../Icons/_Svg/index.js';
|
|
10
9
|
import '../../utils/index.js';
|
|
10
|
+
import '../../utils/logger/index.js';
|
|
11
11
|
import { jsx, jsxs } from 'react/jsx-runtime';
|
|
12
|
+
import { throwBladeError } from '../../utils/logger/logger.js';
|
|
12
13
|
import useTheme from '../BladeProvider/useTheme.js';
|
|
13
14
|
import { makeSize } from '../../utils/makeSize/makeSize.js';
|
|
14
15
|
import { BaseBox } from '../Box/BaseBox/BaseBox.web.js';
|
|
@@ -22,6 +23,20 @@ var _excluded = ["isDotted", "width"],
|
|
|
22
23
|
_excluded4 = ["isDotted"];
|
|
23
24
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
24
25
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
26
|
+
var encode = function encode(svgString) {
|
|
27
|
+
try {
|
|
28
|
+
if (typeof Buffer !== 'undefined') {
|
|
29
|
+
return Buffer.from(svgString).toString('base64');
|
|
30
|
+
}
|
|
31
|
+
return window.btoa(svgString);
|
|
32
|
+
} catch (error) {
|
|
33
|
+
throwBladeError({
|
|
34
|
+
message: "Failed to encode SVG string: ".concat(error),
|
|
35
|
+
moduleName: 'StepLine'
|
|
36
|
+
});
|
|
37
|
+
return '';
|
|
38
|
+
}
|
|
39
|
+
};
|
|
25
40
|
var useDottedLineStyles = function useDottedLineStyles() {
|
|
26
41
|
var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},
|
|
27
42
|
isHorizontal = _ref.isHorizontal;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"StepLine.web.js","sources":["../../../../../../src/components/StepGroup/StepLine.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/restrict-plus-operands */\nimport { encode } from 'universal-base64';\nimport type { StepItemProps } from './types';\nimport { StepItemIndicator } from './StepItemMarker';\nimport { useStepGroup } from './StepGroupContext';\nimport {\n getMarkerLineSpacings,\n itemTopMargin,\n markerLineDotSpacing,\n markerLineDotWidth,\n markerLineWidth,\n} from './tokens';\nimport { Box } from '~components/Box';\nimport type { BaseBoxProps } from '~components/Box/BaseBox';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport Svg, { Path } from '~components/Icons/_Svg';\nimport { makeSize, useTheme } from '~utils';\n\ntype StepLineSvgProps = {\n isDotted?: boolean;\n} & StyledPropsBlade;\n\nconst useDottedLineStyles = ({ isHorizontal }: { isHorizontal?: boolean } = {}): BaseBoxProps => {\n const { theme } = useTheme();\n\n const svgString = `<svg width=\"2\" height=\"2\" viewBox=\"0 0 2 2\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M0 1C0 0.447715 0.447715 0 1 0C1.55228 0 2 0.447715 2 1C2 1.55228 1.55228 2 1 2C0.447715 2 0 1.55228 0 1Z\"\n fill=\"${theme.colors.surface.border.gray.subtle}\"\n />\n </svg>\n `;\n\n const backgroundURL = `url(data:image/svg+xml;base64,${encode(svgString)})`;\n\n return {\n backgroundImage: backgroundURL,\n backgroundPosition: isHorizontal ? 'left' : 'top',\n backgroundSize: isHorizontal\n ? `${makeSize(markerLineDotWidth + markerLineDotSpacing)} ${makeSize(markerLineDotWidth)}`\n : `${makeSize(markerLineDotWidth)} ${makeSize(markerLineDotWidth + markerLineDotSpacing)} `,\n backgroundRepeat: isHorizontal ? 'round no-repeat' : 'no-repeat round',\n };\n};\n\nconst StepStraightLineHorizontal = ({\n isDotted,\n width,\n ...styledProps\n}: StepLineSvgProps & {\n width?: number;\n}): React.ReactElement => {\n const dottedStyles = useDottedLineStyles({ isHorizontal: true });\n const borderStyles: BaseBoxProps = isDotted\n ? dottedStyles\n : {\n borderTopWidth: 'thicker',\n borderTopColor: 'surface.border.gray.subtle',\n };\n\n return <BaseBox height={makeSize(markerLineWidth)} flex=\"1\" {...borderStyles} {...styledProps} />;\n};\n\nconst StepStraightLineVertical = ({\n height,\n isDotted,\n ...styledProps\n}: StepLineSvgProps & {\n height?: number;\n}): React.ReactElement => {\n const dottedStyles = useDottedLineStyles();\n const borderStyles: BaseBoxProps = isDotted\n ? dottedStyles\n : {\n borderLeftWidth: 'thicker',\n borderLeftColor: 'surface.border.gray.subtle',\n };\n return (\n <BaseBox\n height={height ? makeSize(height) : undefined}\n flex={height ? undefined : '1'}\n width={makeSize(markerLineWidth)}\n {...borderStyles}\n {...styledProps}\n />\n );\n};\n\nconst StepTopCurveVertical = ({\n isDotted,\n ...styledProps\n}: StepLineSvgProps): React.ReactElement => {\n const { theme } = useTheme();\n\n return isDotted ? (\n <Svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill={theme.colors.surface.border.gray.subtle}\n {...styledProps}\n >\n <Path d=\"M2 1C2 1.55228 1.55228 2 1 2C0.447715 2 0 1.55228 0 1C0 0.447715 0.447715 0 1 0C1.55228 0 2 0.447715 2 1Z\" />\n <Path d=\"M2 6C2 6.55228 1.55228 7 1 7C0.447715 7 0 6.55228 0 6C0 5.44772 0.447715 5 1 5C1.55228 5 2 5.44772 2 6Z\" />\n <Path d=\"M1 12C1.55228 12 2 11.5523 2 11C2 10.4477 1.55228 10 1 10C0.447715 10 0 10.4477 0 11C0 11.5523 0.447715 12 1 12Z\" />\n <Path d=\"M3 16C3 16.5523 2.55228 17 2 17C1.44772 17 1 16.5523 1 16C1 15.4477 1.44772 15 2 15C2.55228 15 3 15.4477 3 16Z\" />\n <Path d=\"M7 20C7.55228 20 8 19.5523 8 19C8 18.4477 7.55228 18 7 18C6.44772 18 6 18.4477 6 19C6 19.5523 6.44772 20 7 20Z\" />\n <Path d=\"M14 19C14 19.5523 13.5523 20 13 20C12.4477 20 12 19.5523 12 19C12 18.4477 12.4477 18 13 18C13.5523 18 14 18.4477 14 19Z\" />\n <Path d=\"M19 20C19.5523 20 20 19.5523 20 19C20 18.4477 19.5523 18 19 18C18.4477 18 18 18.4477 18 19C18 19.5523 18.4477 20 19 20Z\" />\n </Svg>\n ) : (\n <Svg width=\"20\" height=\"14\" viewBox=\"0 0 20 14\" fill=\"none\" {...styledProps}>\n <Path\n d=\"M1 0V5C1 9.41828 4.58172 13 9 13H20\"\n stroke={theme.colors.surface.border.gray.subtle}\n strokeWidth=\"2\"\n />\n </Svg>\n );\n};\n\nconst StepBottomCurveVertical = ({\n isDotted,\n ...styledProps\n}: StepLineSvgProps): React.ReactElement => {\n const { theme } = useTheme();\n const { size } = useStepGroup();\n\n if (size === 'medium') {\n return isDotted ? (\n <Svg\n width=\"42\"\n height=\"5\"\n viewBox=\"0 0 42 5\"\n fill={theme.colors.surface.border.gray.subtle}\n {...styledProps}\n >\n <Path d=\"M32 1C32 1.55228 31.5523 2 31 2C30.4477 2 30 1.55228 30 1C30 0.447715 30.4477 0 31 0C31.5523 0 32 0.447715 32 1Z\" />\n <Path d=\"M2 4C2 4.55228 1.55228 5 1 5C0.447715 5 0 4.55228 0 4C0 3.44772 0.447715 3 1 3C1.55228 3 2 3.44772 2 4Z\" />\n <Path d=\"M27.5 3.5C28.0523 3.5 28.5 3.05228 28.5 2.5C28.5 1.94772 28.0523 1.5 27.5 1.5C26.9477 1.5 26.5 1.94772 26.5 2.5C26.5 3.05228 26.9477 3.5 27.5 3.5Z\" />\n <Path d=\"M5.5 2.5C5.5 3.05228 5.05228 3.5 4.5 3.5C3.94772 3.5 3.5 3.05228 3.5 2.5C3.5 1.94772 3.94772 1.5 4.5 1.5C5.05228 1.5 5.5 1.94772 5.5 2.5Z\" />\n <Path d=\"M16.5 3.5C17.0523 3.5 17.5 3.05228 17.5 2.5C17.5 1.94772 17.0523 1.5 16.5 1.5C15.9477 1.5 15.5 1.94772 15.5 2.5C15.5 3.05228 15.9477 3.5 16.5 3.5Z\" />\n <Path d=\"M11.5 2.5C11.5 3.05228 11.0523 3.5 10.5 3.5C9.94771 3.5 9.5 3.05228 9.5 2.5C9.5 1.94772 9.94771 1.5 10.5 1.5C11.0523 1.5 11.5 1.94772 11.5 2.5Z\" />\n <Path d=\"M22.5 3.5C23.0523 3.5 23.5 3.05228 23.5 2.5C23.5 1.94772 23.0523 1.5 22.5 1.5C21.9477 1.5 21.5 1.94772 21.5 2.5C21.5 3.05228 21.9477 3.5 22.5 3.5Z\" />\n </Svg>\n ) : (\n <Svg width=\"33\" height=\"5\" viewBox=\"0 0 33 5\" fill=\"none\">\n <Path\n d=\"M1 5V5C1 3.63251 2.108 2.52363 3.47549 2.52255L29.5 2.50198C30.881 2.50088 32 1.38103 32 1.19209e-07V1.19209e-07\"\n stroke={theme.colors.surface.border.gray.subtle}\n strokeWidth=\"2\"\n />\n </Svg>\n );\n }\n\n return isDotted ? (\n <Svg\n width=\"46\"\n height=\"5\"\n viewBox=\"0 0 46 5\"\n fill={theme.colors.surface.border.gray.subtle}\n {...styledProps}\n >\n <Path d=\"M35 1C35 1.55228 34.5523 2 34 2C33.4477 2 33 1.55228 33 1C33 0.447715 33.4477 0 34 0C34.5523 0 35 0.447715 35 1Z\" />\n <Path d=\"M2 4C2 4.55228 1.55228 5 1 5C0.447715 5 0 4.55228 0 4C0 3.44772 0.447715 3 1 3C1.55228 3 2 3.44772 2 4Z\" />\n <Path d=\"M31.5 3.5C32.0523 3.5 32.5 3.05228 32.5 2.5C32.5 1.94772 32.0523 1.5 31.5 1.5C30.9477 1.5 30.5 1.94772 30.5 2.5C30.5 3.05228 30.9477 3.5 31.5 3.5Z\" />\n <Path d=\"M4.5 2.5C4.5 3.05228 4.05228 3.5 3.5 3.5C2.94772 3.5 2.5 3.05228 2.5 2.5C2.5 1.94772 2.94772 1.5 3.5 1.5C4.05228 1.5 4.5 1.94772 4.5 2.5Z\" />\n <Path d=\"M17.5 3.5C18.0523 3.5 18.5 3.05228 18.5 2.5C18.5 1.94772 18.0523 1.5 17.5 1.5C16.9477 1.5 16.5 1.94772 16.5 2.5C16.5 3.05228 16.9477 3.5 17.5 3.5Z\" />\n <Path d=\"M11.5 2.5C11.5 3.05228 11.0523 3.5 10.5 3.5C9.94771 3.5 9.5 3.05228 9.5 2.5C9.5 1.94772 9.94771 1.5 10.5 1.5C11.0523 1.5 11.5 1.94772 11.5 2.5Z\" />\n <Path d=\"M24.5 3.5C25.0523 3.5 25.5 3.05228 25.5 2.5C25.5 1.94772 25.0523 1.5 24.5 1.5C23.9477 1.5 23.5 1.94772 23.5 2.5C23.5 3.05228 23.9477 3.5 24.5 3.5Z\" />\n </Svg>\n ) : (\n <Svg width=\"35\" height=\"6\" viewBox=\"0 0 35 6\" fill=\"none\" {...styledProps}>\n <Path\n d=\"M1 6V6C1 4.36914 2.31973 3.04584 3.95058 3.04142L31.04 2.96802C32.6761 2.96359 34 1.63606 34 1.3411e-07V1.3411e-07\"\n stroke={theme.colors.surface.border.gray.subtle}\n strokeWidth=\"2\"\n />\n </Svg>\n );\n};\n\ntype StepLineProps = {\n stepType: 'single-item' | 'start' | 'middle' | 'end' | 'default';\n shouldShowStartBranch: boolean;\n shouldShowEndBranch: boolean;\n} & Pick<StepItemProps, 'stepProgress' | 'marker'>;\n\ntype StepLineSubComponentProps = Pick<\n StepLineProps,\n 'shouldShowStartBranch' | 'shouldShowEndBranch' | 'marker' | 'stepProgress'\n>;\n\nconst defaultMarker = <StepItemIndicator color=\"neutral\" />;\n\nconst StepLineVertical = ({\n marker = defaultMarker,\n stepProgress,\n isIndented,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps & {\n isIndented?: boolean;\n}): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n\n return (\n <Box\n position=\"relative\"\n marginLeft={isIndented ? makeSize(spacingTokens.indentationWidth) : undefined}\n display=\"flex\"\n flexDirection=\"column\"\n >\n <StepStraightLineVertical\n height={itemTopMargin}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n />\n <Box marginLeft={makeSize(-spacingTokens.markerLeftAlignment)}>{marker}</Box>\n <StepStraightLineVertical\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n />\n </Box>\n );\n};\n\nconst StepLineStart = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n\n return (\n <Box position=\"relative\" display=\"flex\" flexDirection=\"column\">\n <StepStraightLineVertical\n height={itemTopMargin}\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <StepTopCurveVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <Box\n marginLeft={makeSize(-spacingTokens.markerLeftAlignment + spacingTokens.indentationWidth)}\n marginTop={makeSize(spacingTokens.markerTopAlignment)}\n >\n {marker}\n </Box>\n <StepStraightLineVertical\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n </Box>\n );\n};\n\nconst StepLineEnd = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n return (\n <Box position=\"relative\" display=\"flex\" flexDirection=\"column\">\n <StepStraightLineVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n height={itemTopMargin}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <Box\n marginLeft={makeSize(-spacingTokens.markerLeftAlignment + spacingTokens.indentationWidth)}\n >\n {marker}\n </Box>\n <StepStraightLineVertical\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n <StepBottomCurveVertical\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n />\n </Box>\n );\n};\n\nconst StepLineHorizontal = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n return (\n <Box\n position=\"relative\"\n display=\"flex\"\n flexDirection=\"row\"\n width=\"100%\"\n justifyContent=\"center\"\n alignItems=\"center\"\n >\n <StepStraightLineHorizontal\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n />\n <Box>{marker}</Box>\n <StepStraightLineHorizontal\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n />\n </Box>\n );\n};\n\nconst StepLineSingleItem = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowEndBranch,\n shouldShowStartBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n return (\n <Box position=\"relative\" display=\"flex\" flexDirection=\"column\">\n <StepStraightLineVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n height={itemTopMargin}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <StepTopCurveVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <Box\n // -12 (markerLeftAlginment) + 33 (indentationWidth)\n marginLeft={makeSize(-spacingTokens.markerLeftAlignment + spacingTokens.indentationWidth)}\n marginTop={makeSize(spacingTokens.markerTopAlignment)}\n >\n {marker}\n </Box>\n <StepStraightLineVertical\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n <StepBottomCurveVertical\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n </Box>\n );\n};\n\nconst StepLine = ({\n stepType = 'default',\n shouldShowStartBranch,\n shouldShowEndBranch,\n marker,\n stepProgress,\n}: StepLineProps): React.ReactElement => {\n const { orientation } = useStepGroup();\n const commonProps = {\n shouldShowStartBranch,\n shouldShowEndBranch,\n marker,\n stepProgress,\n };\n\n if (orientation === 'horizontal') {\n return <StepLineHorizontal {...commonProps} />;\n }\n\n if (stepType === 'start') {\n return <StepLineStart {...commonProps} />;\n }\n\n if (stepType === 'middle') {\n return <StepLineVertical {...commonProps} isIndented={true} />;\n }\n\n if (stepType === 'end') {\n return <StepLineEnd {...commonProps} />;\n }\n\n if (stepType === 'single-item') {\n return <StepLineSingleItem {...commonProps} />;\n }\n\n return <StepLineVertical {...commonProps} />;\n};\n\nexport type { StepLineProps };\nexport { StepLine };\n"],"names":["useDottedLineStyles","_ref","arguments","length","undefined","isHorizontal","_useTheme","useTheme","theme","svgString","concat","colors","surface","border","gray","subtle","backgroundURL","encode","backgroundImage","backgroundPosition","backgroundSize","makeSize","markerLineDotWidth","markerLineDotSpacing","backgroundRepeat","StepStraightLineHorizontal","_ref2","isDotted","width","styledProps","_objectWithoutProperties","_excluded","dottedStyles","borderStyles","borderTopWidth","borderTopColor","_jsx","BaseBox","_objectSpread","height","markerLineWidth","flex","StepStraightLineVertical","_ref3","_excluded2","borderLeftWidth","borderLeftColor","StepTopCurveVertical","_ref4","_excluded3","_useTheme2","_jsxs","Svg","viewBox","fill","children","Path","d","stroke","strokeWidth","StepBottomCurveVertical","_ref5","_excluded4","_useTheme3","_useStepGroup","useStepGroup","size","defaultMarker","StepItemIndicator","color","StepLineVertical","_ref6","_ref6$marker","marker","stepProgress","isIndented","shouldShowStartBranch","shouldShowEndBranch","_useStepGroup2","spacingTokens","getMarkerLineSpacings","Box","position","marginLeft","indentationWidth","display","flexDirection","itemTopMargin","visibility","markerLeftAlignment","StepLineStart","_ref7","_ref7$marker","_useStepGroup3","marginTop","markerTopAlignment","StepLineEnd","_ref8","_ref8$marker","_useStepGroup4","StepLineHorizontal","_ref9","_ref9$marker","justifyContent","alignItems","StepLineSingleItem","_ref10","_ref10$marker","_useStepGroup5","StepLine","_ref11","_ref11$stepType","stepType","_useStepGroup6","orientation","commonProps"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"StepLine.web.js","sources":["../../../../../../src/components/StepGroup/StepLine.web.tsx"],"sourcesContent":["/* eslint-disable @typescript-eslint/restrict-plus-operands */\nimport type { StepItemProps } from './types';\nimport { StepItemIndicator } from './StepItemMarker';\nimport { useStepGroup } from './StepGroupContext';\nimport {\n getMarkerLineSpacings,\n itemTopMargin,\n markerLineDotSpacing,\n markerLineDotWidth,\n markerLineWidth,\n} from './tokens';\nimport { Box } from '~components/Box';\nimport type { BaseBoxProps } from '~components/Box/BaseBox';\nimport BaseBox from '~components/Box/BaseBox';\nimport type { StyledPropsBlade } from '~components/Box/styledProps';\nimport Svg, { Path } from '~components/Icons/_Svg';\nimport { makeSize, useTheme } from '~utils';\nimport { throwBladeError } from '~utils/logger';\n\n// universal base64 encode\nconst encode = (svgString: string): string => {\n try {\n if (typeof Buffer !== 'undefined') {\n return Buffer.from(svgString).toString('base64');\n }\n\n return window.btoa(svgString);\n } catch (error: unknown) {\n throwBladeError({\n message: `Failed to encode SVG string: ${error}`,\n moduleName: 'StepLine',\n });\n\n return '';\n }\n};\n\ntype StepLineSvgProps = {\n isDotted?: boolean;\n} & StyledPropsBlade;\n\nconst useDottedLineStyles = ({ isHorizontal }: { isHorizontal?: boolean } = {}): BaseBoxProps => {\n const { theme } = useTheme();\n\n const svgString = `<svg width=\"2\" height=\"2\" viewBox=\"0 0 2 2\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n <path\n d=\"M0 1C0 0.447715 0.447715 0 1 0C1.55228 0 2 0.447715 2 1C2 1.55228 1.55228 2 1 2C0.447715 2 0 1.55228 0 1Z\"\n fill=\"${theme.colors.surface.border.gray.subtle}\"\n />\n </svg>\n `;\n\n const backgroundURL = `url(data:image/svg+xml;base64,${encode(svgString)})`;\n\n return {\n backgroundImage: backgroundURL,\n backgroundPosition: isHorizontal ? 'left' : 'top',\n backgroundSize: isHorizontal\n ? `${makeSize(markerLineDotWidth + markerLineDotSpacing)} ${makeSize(markerLineDotWidth)}`\n : `${makeSize(markerLineDotWidth)} ${makeSize(markerLineDotWidth + markerLineDotSpacing)} `,\n backgroundRepeat: isHorizontal ? 'round no-repeat' : 'no-repeat round',\n };\n};\n\nconst StepStraightLineHorizontal = ({\n isDotted,\n width,\n ...styledProps\n}: StepLineSvgProps & {\n width?: number;\n}): React.ReactElement => {\n const dottedStyles = useDottedLineStyles({ isHorizontal: true });\n const borderStyles: BaseBoxProps = isDotted\n ? dottedStyles\n : {\n borderTopWidth: 'thicker',\n borderTopColor: 'surface.border.gray.subtle',\n };\n\n return <BaseBox height={makeSize(markerLineWidth)} flex=\"1\" {...borderStyles} {...styledProps} />;\n};\n\nconst StepStraightLineVertical = ({\n height,\n isDotted,\n ...styledProps\n}: StepLineSvgProps & {\n height?: number;\n}): React.ReactElement => {\n const dottedStyles = useDottedLineStyles();\n const borderStyles: BaseBoxProps = isDotted\n ? dottedStyles\n : {\n borderLeftWidth: 'thicker',\n borderLeftColor: 'surface.border.gray.subtle',\n };\n return (\n <BaseBox\n height={height ? makeSize(height) : undefined}\n flex={height ? undefined : '1'}\n width={makeSize(markerLineWidth)}\n {...borderStyles}\n {...styledProps}\n />\n );\n};\n\nconst StepTopCurveVertical = ({\n isDotted,\n ...styledProps\n}: StepLineSvgProps): React.ReactElement => {\n const { theme } = useTheme();\n\n return isDotted ? (\n <Svg\n width=\"20\"\n height=\"20\"\n viewBox=\"0 0 20 20\"\n fill={theme.colors.surface.border.gray.subtle}\n {...styledProps}\n >\n <Path d=\"M2 1C2 1.55228 1.55228 2 1 2C0.447715 2 0 1.55228 0 1C0 0.447715 0.447715 0 1 0C1.55228 0 2 0.447715 2 1Z\" />\n <Path d=\"M2 6C2 6.55228 1.55228 7 1 7C0.447715 7 0 6.55228 0 6C0 5.44772 0.447715 5 1 5C1.55228 5 2 5.44772 2 6Z\" />\n <Path d=\"M1 12C1.55228 12 2 11.5523 2 11C2 10.4477 1.55228 10 1 10C0.447715 10 0 10.4477 0 11C0 11.5523 0.447715 12 1 12Z\" />\n <Path d=\"M3 16C3 16.5523 2.55228 17 2 17C1.44772 17 1 16.5523 1 16C1 15.4477 1.44772 15 2 15C2.55228 15 3 15.4477 3 16Z\" />\n <Path d=\"M7 20C7.55228 20 8 19.5523 8 19C8 18.4477 7.55228 18 7 18C6.44772 18 6 18.4477 6 19C6 19.5523 6.44772 20 7 20Z\" />\n <Path d=\"M14 19C14 19.5523 13.5523 20 13 20C12.4477 20 12 19.5523 12 19C12 18.4477 12.4477 18 13 18C13.5523 18 14 18.4477 14 19Z\" />\n <Path d=\"M19 20C19.5523 20 20 19.5523 20 19C20 18.4477 19.5523 18 19 18C18.4477 18 18 18.4477 18 19C18 19.5523 18.4477 20 19 20Z\" />\n </Svg>\n ) : (\n <Svg width=\"20\" height=\"14\" viewBox=\"0 0 20 14\" fill=\"none\" {...styledProps}>\n <Path\n d=\"M1 0V5C1 9.41828 4.58172 13 9 13H20\"\n stroke={theme.colors.surface.border.gray.subtle}\n strokeWidth=\"2\"\n />\n </Svg>\n );\n};\n\nconst StepBottomCurveVertical = ({\n isDotted,\n ...styledProps\n}: StepLineSvgProps): React.ReactElement => {\n const { theme } = useTheme();\n const { size } = useStepGroup();\n\n if (size === 'medium') {\n return isDotted ? (\n <Svg\n width=\"42\"\n height=\"5\"\n viewBox=\"0 0 42 5\"\n fill={theme.colors.surface.border.gray.subtle}\n {...styledProps}\n >\n <Path d=\"M32 1C32 1.55228 31.5523 2 31 2C30.4477 2 30 1.55228 30 1C30 0.447715 30.4477 0 31 0C31.5523 0 32 0.447715 32 1Z\" />\n <Path d=\"M2 4C2 4.55228 1.55228 5 1 5C0.447715 5 0 4.55228 0 4C0 3.44772 0.447715 3 1 3C1.55228 3 2 3.44772 2 4Z\" />\n <Path d=\"M27.5 3.5C28.0523 3.5 28.5 3.05228 28.5 2.5C28.5 1.94772 28.0523 1.5 27.5 1.5C26.9477 1.5 26.5 1.94772 26.5 2.5C26.5 3.05228 26.9477 3.5 27.5 3.5Z\" />\n <Path d=\"M5.5 2.5C5.5 3.05228 5.05228 3.5 4.5 3.5C3.94772 3.5 3.5 3.05228 3.5 2.5C3.5 1.94772 3.94772 1.5 4.5 1.5C5.05228 1.5 5.5 1.94772 5.5 2.5Z\" />\n <Path d=\"M16.5 3.5C17.0523 3.5 17.5 3.05228 17.5 2.5C17.5 1.94772 17.0523 1.5 16.5 1.5C15.9477 1.5 15.5 1.94772 15.5 2.5C15.5 3.05228 15.9477 3.5 16.5 3.5Z\" />\n <Path d=\"M11.5 2.5C11.5 3.05228 11.0523 3.5 10.5 3.5C9.94771 3.5 9.5 3.05228 9.5 2.5C9.5 1.94772 9.94771 1.5 10.5 1.5C11.0523 1.5 11.5 1.94772 11.5 2.5Z\" />\n <Path d=\"M22.5 3.5C23.0523 3.5 23.5 3.05228 23.5 2.5C23.5 1.94772 23.0523 1.5 22.5 1.5C21.9477 1.5 21.5 1.94772 21.5 2.5C21.5 3.05228 21.9477 3.5 22.5 3.5Z\" />\n </Svg>\n ) : (\n <Svg width=\"33\" height=\"5\" viewBox=\"0 0 33 5\" fill=\"none\">\n <Path\n d=\"M1 5V5C1 3.63251 2.108 2.52363 3.47549 2.52255L29.5 2.50198C30.881 2.50088 32 1.38103 32 1.19209e-07V1.19209e-07\"\n stroke={theme.colors.surface.border.gray.subtle}\n strokeWidth=\"2\"\n />\n </Svg>\n );\n }\n\n return isDotted ? (\n <Svg\n width=\"46\"\n height=\"5\"\n viewBox=\"0 0 46 5\"\n fill={theme.colors.surface.border.gray.subtle}\n {...styledProps}\n >\n <Path d=\"M35 1C35 1.55228 34.5523 2 34 2C33.4477 2 33 1.55228 33 1C33 0.447715 33.4477 0 34 0C34.5523 0 35 0.447715 35 1Z\" />\n <Path d=\"M2 4C2 4.55228 1.55228 5 1 5C0.447715 5 0 4.55228 0 4C0 3.44772 0.447715 3 1 3C1.55228 3 2 3.44772 2 4Z\" />\n <Path d=\"M31.5 3.5C32.0523 3.5 32.5 3.05228 32.5 2.5C32.5 1.94772 32.0523 1.5 31.5 1.5C30.9477 1.5 30.5 1.94772 30.5 2.5C30.5 3.05228 30.9477 3.5 31.5 3.5Z\" />\n <Path d=\"M4.5 2.5C4.5 3.05228 4.05228 3.5 3.5 3.5C2.94772 3.5 2.5 3.05228 2.5 2.5C2.5 1.94772 2.94772 1.5 3.5 1.5C4.05228 1.5 4.5 1.94772 4.5 2.5Z\" />\n <Path d=\"M17.5 3.5C18.0523 3.5 18.5 3.05228 18.5 2.5C18.5 1.94772 18.0523 1.5 17.5 1.5C16.9477 1.5 16.5 1.94772 16.5 2.5C16.5 3.05228 16.9477 3.5 17.5 3.5Z\" />\n <Path d=\"M11.5 2.5C11.5 3.05228 11.0523 3.5 10.5 3.5C9.94771 3.5 9.5 3.05228 9.5 2.5C9.5 1.94772 9.94771 1.5 10.5 1.5C11.0523 1.5 11.5 1.94772 11.5 2.5Z\" />\n <Path d=\"M24.5 3.5C25.0523 3.5 25.5 3.05228 25.5 2.5C25.5 1.94772 25.0523 1.5 24.5 1.5C23.9477 1.5 23.5 1.94772 23.5 2.5C23.5 3.05228 23.9477 3.5 24.5 3.5Z\" />\n </Svg>\n ) : (\n <Svg width=\"35\" height=\"6\" viewBox=\"0 0 35 6\" fill=\"none\" {...styledProps}>\n <Path\n d=\"M1 6V6C1 4.36914 2.31973 3.04584 3.95058 3.04142L31.04 2.96802C32.6761 2.96359 34 1.63606 34 1.3411e-07V1.3411e-07\"\n stroke={theme.colors.surface.border.gray.subtle}\n strokeWidth=\"2\"\n />\n </Svg>\n );\n};\n\ntype StepLineProps = {\n stepType: 'single-item' | 'start' | 'middle' | 'end' | 'default';\n shouldShowStartBranch: boolean;\n shouldShowEndBranch: boolean;\n} & Pick<StepItemProps, 'stepProgress' | 'marker'>;\n\ntype StepLineSubComponentProps = Pick<\n StepLineProps,\n 'shouldShowStartBranch' | 'shouldShowEndBranch' | 'marker' | 'stepProgress'\n>;\n\nconst defaultMarker = <StepItemIndicator color=\"neutral\" />;\n\nconst StepLineVertical = ({\n marker = defaultMarker,\n stepProgress,\n isIndented,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps & {\n isIndented?: boolean;\n}): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n\n return (\n <Box\n position=\"relative\"\n marginLeft={isIndented ? makeSize(spacingTokens.indentationWidth) : undefined}\n display=\"flex\"\n flexDirection=\"column\"\n >\n <StepStraightLineVertical\n height={itemTopMargin}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n />\n <Box marginLeft={makeSize(-spacingTokens.markerLeftAlignment)}>{marker}</Box>\n <StepStraightLineVertical\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n />\n </Box>\n );\n};\n\nconst StepLineStart = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n\n return (\n <Box position=\"relative\" display=\"flex\" flexDirection=\"column\">\n <StepStraightLineVertical\n height={itemTopMargin}\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <StepTopCurveVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <Box\n marginLeft={makeSize(-spacingTokens.markerLeftAlignment + spacingTokens.indentationWidth)}\n marginTop={makeSize(spacingTokens.markerTopAlignment)}\n >\n {marker}\n </Box>\n <StepStraightLineVertical\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n </Box>\n );\n};\n\nconst StepLineEnd = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n return (\n <Box position=\"relative\" display=\"flex\" flexDirection=\"column\">\n <StepStraightLineVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n height={itemTopMargin}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <Box\n marginLeft={makeSize(-spacingTokens.markerLeftAlignment + spacingTokens.indentationWidth)}\n >\n {marker}\n </Box>\n <StepStraightLineVertical\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n <StepBottomCurveVertical\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n />\n </Box>\n );\n};\n\nconst StepLineHorizontal = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowStartBranch,\n shouldShowEndBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n return (\n <Box\n position=\"relative\"\n display=\"flex\"\n flexDirection=\"row\"\n width=\"100%\"\n justifyContent=\"center\"\n alignItems=\"center\"\n >\n <StepStraightLineHorizontal\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n />\n <Box>{marker}</Box>\n <StepStraightLineHorizontal\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n />\n </Box>\n );\n};\n\nconst StepLineSingleItem = ({\n marker = defaultMarker,\n stepProgress,\n shouldShowEndBranch,\n shouldShowStartBranch,\n}: StepLineSubComponentProps): React.ReactElement => {\n const { size } = useStepGroup();\n const spacingTokens = getMarkerLineSpacings(size);\n return (\n <Box position=\"relative\" display=\"flex\" flexDirection=\"column\">\n <StepStraightLineVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n height={itemTopMargin}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <StepTopCurveVertical\n visibility={shouldShowStartBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'end'}\n />\n <Box\n // -12 (markerLeftAlginment) + 33 (indentationWidth)\n marginLeft={makeSize(-spacingTokens.markerLeftAlignment + spacingTokens.indentationWidth)}\n marginTop={makeSize(spacingTokens.markerTopAlignment)}\n >\n {marker}\n </Box>\n <StepStraightLineVertical\n marginLeft={makeSize(spacingTokens.indentationWidth)}\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n <StepBottomCurveVertical\n visibility={shouldShowEndBranch ? 'visible' : 'hidden'}\n isDotted={stepProgress === 'none' || stepProgress === 'start'}\n />\n </Box>\n );\n};\n\nconst StepLine = ({\n stepType = 'default',\n shouldShowStartBranch,\n shouldShowEndBranch,\n marker,\n stepProgress,\n}: StepLineProps): React.ReactElement => {\n const { orientation } = useStepGroup();\n const commonProps = {\n shouldShowStartBranch,\n shouldShowEndBranch,\n marker,\n stepProgress,\n };\n\n if (orientation === 'horizontal') {\n return <StepLineHorizontal {...commonProps} />;\n }\n\n if (stepType === 'start') {\n return <StepLineStart {...commonProps} />;\n }\n\n if (stepType === 'middle') {\n return <StepLineVertical {...commonProps} isIndented={true} />;\n }\n\n if (stepType === 'end') {\n return <StepLineEnd {...commonProps} />;\n }\n\n if (stepType === 'single-item') {\n return <StepLineSingleItem {...commonProps} />;\n }\n\n return <StepLineVertical {...commonProps} />;\n};\n\nexport type { StepLineProps };\nexport { StepLine };\n"],"names":["encode","svgString","Buffer","from","toString","window","btoa","error","throwBladeError","message","concat","moduleName","useDottedLineStyles","_ref","arguments","length","undefined","isHorizontal","_useTheme","useTheme","theme","colors","surface","border","gray","subtle","backgroundURL","backgroundImage","backgroundPosition","backgroundSize","makeSize","markerLineDotWidth","markerLineDotSpacing","backgroundRepeat","StepStraightLineHorizontal","_ref2","isDotted","width","styledProps","_objectWithoutProperties","_excluded","dottedStyles","borderStyles","borderTopWidth","borderTopColor","_jsx","BaseBox","_objectSpread","height","markerLineWidth","flex","StepStraightLineVertical","_ref3","_excluded2","borderLeftWidth","borderLeftColor","StepTopCurveVertical","_ref4","_excluded3","_useTheme2","_jsxs","Svg","viewBox","fill","children","Path","d","stroke","strokeWidth","StepBottomCurveVertical","_ref5","_excluded4","_useTheme3","_useStepGroup","useStepGroup","size","defaultMarker","StepItemIndicator","color","StepLineVertical","_ref6","_ref6$marker","marker","stepProgress","isIndented","shouldShowStartBranch","shouldShowEndBranch","_useStepGroup2","spacingTokens","getMarkerLineSpacings","Box","position","marginLeft","indentationWidth","display","flexDirection","itemTopMargin","visibility","markerLeftAlignment","StepLineStart","_ref7","_ref7$marker","_useStepGroup3","marginTop","markerTopAlignment","StepLineEnd","_ref8","_ref8$marker","_useStepGroup4","StepLineHorizontal","_ref9","_ref9$marker","justifyContent","alignItems","StepLineSingleItem","_ref10","_ref10$marker","_useStepGroup5","StepLine","_ref11","_ref11$stepType","stepType","_useStepGroup6","orientation","commonProps"],"mappings":"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"}
|
|
@@ -10,7 +10,7 @@ import { isReactNative } from '../../../utils/platform/isReactNative.js';
|
|
|
10
10
|
import { BaseText } from '../BaseText/BaseText.web.js';
|
|
11
11
|
import { getStyledProps } from '../../Box/styledProps/getStyledProps.js';
|
|
12
12
|
|
|
13
|
-
var _excluded = ["as", "size", "weight", "color", "children", "testID", "textAlign", "textDecorationLine"];
|
|
13
|
+
var _excluded = ["as", "size", "weight", "color", "children", "testID", "textAlign", "textDecorationLine", "wordBreak"];
|
|
14
14
|
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
15
15
|
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
16
16
|
var validAsValues = ['span', 'h1', 'h2', 'h3', 'h4', 'h5', 'h6'];
|
|
@@ -71,6 +71,7 @@ var _Heading = function _Heading(_ref2, ref) {
|
|
|
71
71
|
testID = _ref2.testID,
|
|
72
72
|
textAlign = _ref2.textAlign,
|
|
73
73
|
textDecorationLine = _ref2.textDecorationLine,
|
|
74
|
+
wordBreak = _ref2.wordBreak,
|
|
74
75
|
styledProps = _objectWithoutProperties(_ref2, _excluded);
|
|
75
76
|
useValidateAsProp({
|
|
76
77
|
componentName: 'Heading',
|
|
@@ -87,7 +88,8 @@ var _Heading = function _Heading(_ref2, ref) {
|
|
|
87
88
|
return /*#__PURE__*/jsx(BaseText, _objectSpread(_objectSpread(_objectSpread({}, props), {}, {
|
|
88
89
|
ref: ref,
|
|
89
90
|
textAlign: textAlign,
|
|
90
|
-
textDecorationLine: textDecorationLine
|
|
91
|
+
textDecorationLine: textDecorationLine,
|
|
92
|
+
wordBreak: wordBreak
|
|
91
93
|
}, getStyledProps(styledProps)), {}, {
|
|
92
94
|
children: children
|
|
93
95
|
}));
|