@stenajs-webui/core 14.2.0 → 15.0.0-alpha.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/components/layout/box/Box.d.ts +2 -2
- package/dist/components/layout/box/Box.stories.d.ts +2 -2
- package/dist/hooks/UseEventListener.d.ts +1 -1
- package/dist/index.d.ts +2 -0
- package/dist/index.es.js +52 -53
- package/dist/index.es.js.map +1 -1
- package/dist/index.js +71 -52
- package/dist/index.js.map +1 -1
- package/dist/types/PickByValue.d.ts +3 -0
- package/dist/utils/TruthyKeysAsList.d.ts +1 -0
- package/dist/utils/__tests__/TruthyKeysAsList.test.d.ts +1 -0
- package/package.json +3 -4
package/dist/index.es.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.es.js","sources":["../src/components/decorators/separatorline/SeparatorLine.tsx","../src/components/interaction/Clickable.tsx","../src/utils/BooleanOrNumberToNumber.ts","../src/components/layout/box/Box.tsx","../src/components/layout/column/Column.tsx","../src/hooks/UseElementDimensions.ts","../src/components/layout/box/ResizeAwareBox.tsx","../src/components/layout/row/Row.tsx","../src/components/layout/indent/Indent.tsx","../src/components/layout/spacing/Spacing.tsx","../src/components/layout/space/Space.tsx","../src/components/util/Nest.tsx","../../../node_modules/style-inject/dist/style-inject.es.js","../src/components/text/Text.tsx","../src/components/deprecated-text/SmallText.tsx","../src/components/deprecated-text/SmallerText.tsx","../src/components/deprecated-text/StandardText.tsx","../src/components/deprecated-text/LargeText.tsx","../src/components/heading/Heading.tsx","../src/components/deprecated-text/HeaderText.tsx","../src/hooks/UseArraySet.ts","../src/hooks/UseBoolean.ts","../src/hooks/UseDebounce.ts","../src/hooks/UseDelayedFalse.ts","../src/hooks/UseDomId.ts","../src/hooks/UseEventListener.ts","../src/hooks/UseElementFocus.ts","../src/hooks/UseMouseIsOver.ts","../src/hooks/UseMouseIsEntered.ts","../src/hooks/UseMultiOnClickOutside.ts","../src/hooks/UseOnClickOutside.ts","../src/hooks/UseOnNoMouseInput.ts","../src/hooks/UseOnScreen.ts","../src/hooks/UseForwardedRef.ts","../src/hooks/UseTimeoutState.ts","../src/utils/SwitchCaseExhauster.ts","../src/utils/parsers/NumberParser.ts"],"sourcesContent":["import styled from \"@emotion/styled\";\nimport { Property } from \"csstype\";\nimport * as React from \"react\";\nimport { forwardRef } from \"react\";\n\nexport interface SeparatorLineProps {\n color?: Property.Color;\n vertical?: boolean;\n size?: string;\n width?: string;\n}\n\ninterface SeparatorLineComponentProps {\n color: string;\n vertical?: boolean;\n size?: string;\n width?: string;\n}\n\nconst SeparatorLineComponent = styled.hr<SeparatorLineComponentProps>`\n display: flex;\n border: 0;\n margin: 0;\n background-color: ${(props) => props.color};\n height: ${(props) =>\n props.vertical ? props.size || \"100%\" : props.width || \"1px\"};\n width: ${(props) =>\n props.vertical ? props.width || \"1px\" : props.size || \"100%\"};\n`;\n\nexport const SeparatorLine = forwardRef<HTMLHRElement, SeparatorLineProps>(\n (\n {\n color = \"var(--lhds-color-ui-300)\",\n size = \"100%\",\n width = \"1px\",\n vertical = false,\n },\n ref\n ) => {\n return (\n <SeparatorLineComponent\n color={color}\n size={size}\n width={width}\n vertical={vertical}\n ref={ref}\n />\n );\n }\n);\n","import styled from \"@emotion/styled\";\nimport * as React from \"react\";\nimport { CSSProperties, forwardRef, MouseEventHandler } from \"react\";\nimport { ButtonElementProps } from \"../../types/ElementProps\";\n\nexport interface ClickableProps extends ButtonElementProps {\n /** Callback function called when clicking on click area. */\n onClick?: MouseEventHandler<HTMLButtonElement>;\n /** Callback function called when double clicking on click area. */\n onDblClick?: MouseEventHandler<HTMLButtonElement>;\n /** Adds a title to the click area. */\n tooltip?: string;\n /** If set, there is no opacity applies when clicking on the click area. */\n disableOpacityOnClick?: boolean;\n /** Mouse does not turn into pointer when hovering over click area. */\n disablePointer?: boolean;\n /** When set, click area receives opacity when mouse hovers over it. */\n opacityOnHover?: boolean;\n /** Custom style on div with click event. */\n style?: CSSProperties;\n /** Disables shadow when element is focused. */\n disableFocusHighlight?: boolean;\n /** Disables the HTML button element. */\n disabled?: boolean;\n /**\n * Sets the background of the box.\n */\n background?: string;\n /**\n * Sets the background of the box when the box is in focus.\n */\n focusBackground?: string;\n /**\n * Sets the background of the box when hovering with mouse.\n */\n hoverBackground?: string;\n /**\n * The width.\n */\n width?: string;\n /**\n * The height.\n */\n height?: string;\n /**\n * Border radius\n */\n borderRadius?: string;\n}\n\ninterface ClickableElementProps {\n disableOpacityOnClick?: boolean;\n opacityOnHover?: boolean;\n disableFocusHighlight?: boolean;\n pointer?: boolean;\n background?: string;\n focusBackground?: string;\n hoverBackground?: string;\n width?: string;\n height?: string;\n borderRadius?: string;\n}\n\nconst ClickableElement = styled.button<ClickableElementProps>`\n display: inline-block;\n user-select: none;\n border: 0;\n padding: 0;\n background: ${({ background }) => background};\n ${({ pointer }) => (pointer ? \"cursor: pointer;\" : \"\")}\n\n :hover {\n ${(props) => (props.opacityOnHover ? \"opacity: 0.7;\" : \"\")};\n ${({ hoverBackground }) => `background: ${hoverBackground};`}\n }\n :active {\n ${({ disableOpacityOnClick }) =>\n !disableOpacityOnClick ? \"opacity: 0.5;\" : \"\"}\n }\n :focus {\n outline: 0;\n ${({ disableFocusHighlight }) =>\n disableFocusHighlight\n ? \"\"\n : \"box-shadow: 0 0 3pt 2pt rgba(0, 0, 100, 0.3);\"}\n ${({ focusBackground }) => `background: ${focusBackground};`}\n }\n ${({ width }) => (width ? `width: ${width};` : \"\")}\n ${({ height }) => (height ? `height: ${height};` : \"\")}\n ${({ borderRadius }) =>\n borderRadius ? `border-radius: ${borderRadius};` : \"\"}\n`;\n\nexport const Clickable = forwardRef<HTMLButtonElement, ClickableProps>(\n (\n {\n disableFocusHighlight,\n onClick,\n onDblClick,\n tooltip,\n disableOpacityOnClick,\n disablePointer,\n opacityOnHover,\n disabled,\n children,\n background = \"transparent\",\n hoverBackground,\n focusBackground,\n type = \"button\",\n ...restProps\n },\n ref\n ) => {\n const hasClickHandler = !!(onClick || onDblClick);\n\n return (\n <ClickableElement\n opacityOnHover={opacityOnHover}\n title={tooltip}\n disabled={disabled}\n disableOpacityOnClick={disableOpacityOnClick}\n onClick={onClick}\n onDoubleClick={onDblClick}\n disableFocusHighlight={disableFocusHighlight}\n pointer={hasClickHandler && !disablePointer}\n ref={ref}\n background={background}\n hoverBackground={hoverBackground}\n focusBackground={focusBackground}\n type={type}\n {...restProps}\n >\n {children}\n </ClickableElement>\n );\n }\n);\n","export const booleanOrNumberToNumber = (\n num: number | boolean | undefined\n): number => {\n if (num == null) {\n return 0;\n }\n if (typeof num === \"boolean\") {\n return num ? 1 : 0;\n }\n return num;\n};\n","import isPropValid from \"@emotion/is-prop-valid\";\nimport styled from \"@emotion/styled\";\nimport { Property } from \"csstype\";\n\nimport {\n background,\n BackgroundProps,\n border,\n borderBottom,\n BorderBottomProps,\n borderColor,\n borderLeft,\n BorderLeftProps,\n borderRadius,\n BorderRadiusProps,\n borderRight,\n BorderRightProps,\n borderStyle,\n BorderStyleProps,\n borderTop,\n BorderTopProps,\n borderWidth,\n BorderWidthProps,\n bottom,\n BottomProps,\n boxShadow,\n BoxShadowProps,\n flexbox,\n FlexboxProps,\n layout,\n LayoutProps,\n left,\n LeftProps,\n overflow,\n OverflowProps,\n position,\n PositionProps,\n ResponsiveValue,\n right,\n RightProps,\n system,\n TLengthStyledSystem,\n top,\n TopProps,\n zIndex,\n ZIndexProps,\n} from \"styled-system\";\nimport { DivProps } from \"../../../types/ElementProps\";\nimport { booleanOrNumberToNumber } from \"../../../utils/BooleanOrNumberToNumber\";\n\ninterface StyledSystemProps\n extends BorderRadiusProps,\n BorderStyleProps,\n BorderWidthProps,\n BorderLeftProps,\n BorderRightProps,\n BorderTopProps,\n BorderBottomProps,\n FlexboxProps,\n LayoutProps,\n OverflowProps,\n PositionProps,\n ZIndexProps,\n LeftProps,\n RightProps,\n TopProps,\n BottomProps {}\n\nconst shadows = {\n box: \"var(--swui-shadow-box)\",\n popover: \"var(--swui-shadow-popover)\",\n modal: \"var(--swui-shadow-modal)\",\n};\n\ntype ShadowType = keyof typeof shadows;\n\nexport interface BoxProps extends StyledSystemProps, DivProps {\n /**\n * If true, children are placed in a row.\n */\n row?: ResponsiveValue<boolean>;\n\n /**\n * Adds spacing over and under content.\n */\n spacing?: ResponsiveValue<boolean | TLengthStyledSystem>;\n\n /**\n * Adds spacing left and right of content.\n */\n indent?: ResponsiveValue<boolean | TLengthStyledSystem>;\n\n /**\n * Adds a shadow around the box.\n */\n shadow?: ResponsiveValue<Property.BoxShadow | ShadowType>;\n\n /**\n * Sets the background of the box.\n */\n background?: ResponsiveValue<Property.Background<TLengthStyledSystem>>;\n\n /**\n * Sets the border of the box.\n */\n border?: ResponsiveValue<Property.Border<TLengthStyledSystem>>;\n\n /**\n * Sets the border color of the box.\n */\n borderColor?: ResponsiveValue<Property.BorderColor>;\n\n /**\n * Sets the background of the box when hovering with mouse.\n */\n hoverBackground?: Property.Background<TLengthStyledSystem>;\n\n /**\n * Sets the border of the box when hovering with mouse.\n */\n hoverBorder?: Property.Border<TLengthStyledSystem>;\n\n /**\n * Sets the background of the box when the box is in focus.\n */\n focusBackground?: Property.Background<TLengthStyledSystem>;\n\n /**\n * Sets the border of the box when the box is in focus.\n */\n focusBorder?: Property.Border<TLengthStyledSystem>;\n\n /**\n * Sets the background of the box when focus is within the box.\n */\n focusWithinBackground?: Property.Background<TLengthStyledSystem>;\n\n /**\n * Sets the border of the box when focus is within the box.\n */\n focusWithinBorder?: Property.Border<TLengthStyledSystem>;\n}\n\nconst excludedProps = [\n \"spacing\",\n \"indent\",\n \"width\",\n \"height\",\n \"overflow\",\n \"display\",\n];\n\nconst isExcludedWebUiProp = (propName: string) =>\n excludedProps.includes(propName);\n\nconst box = system({\n row: {\n property: \"flexDirection\",\n transform: (row: boolean) => (row ? \"row\" : \"column\"),\n },\n indent: {\n // @ts-ignore\n property: \"--current-indent\",\n transform: booleanOrNumberToNumber,\n },\n spacing: {\n // @ts-ignore\n property: \"--current-spacing\",\n transform: booleanOrNumberToNumber,\n },\n shadow: {\n property: \"boxShadow\",\n transform: (value) => shadows[value] ?? value,\n },\n});\n\ntype InnerProps = BoxProps & BoxShadowProps & BackgroundProps;\n\nexport const Box = styled(\"div\", {\n shouldForwardProp: (propName) =>\n typeof propName === \"string\"\n ? isExcludedWebUiProp(propName)\n ? false\n : isPropValid(propName)\n : false,\n})<InnerProps>`\n --current-spacing: 0;\n --current-indent: 0;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n ${box};\n ${background};\n ${border};\n ${borderRight};\n ${borderLeft};\n ${borderTop};\n ${borderBottom};\n ${borderColor};\n ${borderRadius};\n ${borderStyle};\n ${borderWidth};\n ${boxShadow};\n ${flexbox};\n ${overflow};\n ${position};\n ${layout};\n ${zIndex};\n ${left};\n ${right};\n ${top};\n ${bottom};\n\n padding: calc(var(--current-spacing) * var(--swui-metrics-spacing))\n calc(var(--current-indent) * var(--swui-metrics-indent));\n :hover {\n ${({ hoverBackground }) =>\n hoverBackground ? `background: ${hoverBackground};` : \"\"}\n ${({ hoverBorder }) => (hoverBorder ? `border: ${hoverBorder};` : \"\")}\n }\n :focus {\n ${({ focusBackground }) =>\n focusBackground ? `background: ${focusBackground};` : \"\"}\n ${({ focusBorder }) => (focusBorder ? `border: ${focusBorder};` : \"\")}\n }\n :focus-within {\n ${({ focusWithinBackground }) =>\n focusWithinBackground ? `background: ${focusWithinBackground};` : \"\"}\n ${({ focusWithinBorder }) =>\n focusWithinBorder ? `border: ${focusWithinBorder};` : \"\"}\n }\n`;\n","import * as React from \"react\";\nimport { forwardRef } from \"react\";\nimport { Box, BoxProps } from \"../box/Box\";\n\nexport const Column = forwardRef<HTMLDivElement, BoxProps>(function Column(\n props,\n ref\n) {\n return <Box ref={ref} {...props} />;\n});\n","import { RefObject, useCallback, useLayoutEffect, useState } from \"react\";\n\nexport interface ElementDimensions {\n width: number;\n height: number;\n top: number;\n left: number;\n x: number;\n y: number;\n right: number;\n bottom: number;\n}\n\nexport const getDimensionObject = (node: HTMLElement): ElementDimensions => {\n const {\n x,\n y,\n width,\n height,\n bottom,\n top,\n left,\n right,\n } = node.getBoundingClientRect();\n\n return {\n width,\n height,\n top,\n left,\n x,\n y,\n right,\n bottom,\n };\n};\n\nconst isEqualDimensions = (\n a: ElementDimensions,\n b: ElementDimensions\n): boolean =>\n a.x === b.x &&\n a.y === b.y &&\n a.width === b.width &&\n a.height === b.height &&\n a.bottom === b.bottom &&\n a.top === b.top &&\n a.left === b.left &&\n a.right === b.right;\n\nexport const useElementDimensions = (\n ref: RefObject<HTMLElement>,\n onResizeElement?: (dimensions: ElementDimensions) => void\n) => {\n const [dimensions, setDimensions] = useState<ElementDimensions | undefined>();\n\n const updateDimensions = useCallback(() => {\n window.requestAnimationFrame(() => {\n if (ref.current) {\n const newDimensions = getDimensionObject(ref.current);\n if (!dimensions || !isEqualDimensions(dimensions, newDimensions)) {\n if (onResizeElement) {\n onResizeElement(newDimensions);\n }\n }\n setDimensions(newDimensions);\n }\n });\n }, [ref, dimensions, setDimensions, onResizeElement]);\n\n useLayoutEffect(() => {\n updateDimensions();\n }, [updateDimensions]);\n\n return {\n dimensions,\n };\n};\n","import * as React from \"react\";\nimport { forwardRef, RefObject, useRef } from \"react\";\nimport { Box, BoxProps } from \"./Box\";\nimport {\n ElementDimensions,\n useElementDimensions,\n} from \"../../../hooks/UseElementDimensions\";\n\nexport interface ResizeAwareBoxProps extends BoxProps {\n onResize?: (dimensions: ElementDimensions) => void;\n}\n\nexport const ResizeAwareBox = forwardRef<HTMLDivElement, ResizeAwareBoxProps>(\n function ResizeAwareBox({ onResize, ...boxProps }, ref) {\n const localRef = useRef<HTMLDivElement>(null);\n const currentRef = (ref as RefObject<HTMLDivElement>) ?? localRef;\n useElementDimensions(currentRef, onResize);\n\n return <Box {...boxProps} ref={ref} />;\n }\n);\n","import * as React from \"react\";\nimport { forwardRef } from \"react\";\nimport { Box, BoxProps } from \"../box/Box\";\n\nexport const Row = forwardRef<HTMLDivElement, BoxProps>(function Row(\n props,\n ref\n) {\n return <Box row ref={ref} {...props} />;\n});\n","import * as React from \"react\";\nimport { forwardRef } from \"react\";\nimport { Box, BoxProps } from \"../box/Box\";\nimport { ResponsiveValue, TLengthStyledSystem } from \"styled-system\";\n\nexport interface IndentProps extends BoxProps {\n num?: ResponsiveValue<boolean | TLengthStyledSystem>;\n}\n\nexport const Indent = forwardRef<HTMLDivElement, IndentProps>(function Indent(\n { num = 1, ...props },\n ref\n) {\n return <Box indent={num} ref={ref} {...props} />;\n});\n","import * as React from \"react\";\nimport { forwardRef } from \"react\";\nimport { Box, BoxProps } from \"../box/Box\";\nimport { ResponsiveValue, TLengthStyledSystem } from \"styled-system\";\n\nexport interface SpacingProps extends BoxProps {\n num?: ResponsiveValue<boolean | TLengthStyledSystem>;\n}\n\nexport const Spacing = forwardRef<HTMLDivElement, SpacingProps>(\n function Spacing({ num = 1, ...props }, ref) {\n return <Box spacing={num} ref={ref} {...props} />;\n }\n);\n","import styled from \"@emotion/styled\";\nimport * as React from \"react\";\n\nexport interface SpaceProps {\n half?: boolean;\n horizontal?: boolean;\n num?: number;\n vertical?: boolean;\n}\n\nconst InnerSpace = styled.div`\n --current-size: 1;\n flex: none;\n width: calc(var(--current-size) * var(--swui-metrics-space));\n height: calc(var(--current-size) * var(--swui-metrics-space));\n`;\n\nexport const Space: React.VFC<SpaceProps> = ({\n half = false,\n horizontal = false,\n num = 1,\n vertical = false,\n}) => {\n const size = num * (half ? 0.5 : 1);\n\n return (\n <InnerSpace\n style={{\n [\"--current-size\" as string]: size,\n height: horizontal ? 1 : undefined,\n width: vertical ? 1 : undefined,\n }}\n />\n );\n};\n","import * as React from \"react\";\nimport { ReactNode } from \"react\";\n\ninterface Props {\n nest?: boolean;\n render: (children: ReactNode) => ReactNode;\n}\n\nexport const Nest: React.FC<Props> = ({ children, nest, render }) => {\n if (nest) {\n return <>{render(children)}</>;\n }\n return <>{children}</>;\n};\n","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import * as React from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./Text.module.css\";\nimport { SpanProps } from \"../../types/ElementProps\";\nimport { Property } from \"csstype\";\nimport { forwardRef } from \"react\";\n\nexport interface TextProps extends SpanProps {\n variant?: TextVariant;\n size?: TextSize;\n userSelect?: Property.UserSelect;\n whiteSpace?: Property.WhiteSpace;\n color?: string;\n}\n\nexport type TextVariant = \"standard\" | \"caption\" | \"overline\" | \"bold\";\nexport type TextSize = \"large\" | \"medium\" | \"small\" | \"smaller\";\n\nexport const Text = forwardRef<HTMLSpanElement, TextProps>(\n (\n {\n children,\n variant = \"standard\",\n size = \"medium\",\n className,\n color,\n userSelect,\n whiteSpace,\n style,\n ...spanProps\n },\n ref\n ) => {\n return (\n <span\n className={cx(styles.text, styles[variant], styles[size], className)}\n ref={ref}\n style={{ color, userSelect, whiteSpace, ...style }}\n {...spanProps}\n >\n {children}\n </span>\n );\n }\n);\n\nexport const Txt = Text;\n","import * as React from \"react\";\nimport { Text, TextProps } from \"../text/Text\";\n\n/**\n * @deprecated Please use `Text` instead.\n */\nexport const SmallText: React.FC<Omit<TextProps, \"size\">> = (props) => {\n return <Text size={\"small\"} {...props} />;\n};\n","import * as React from \"react\";\nimport { Text, TextProps } from \"../text/Text\";\n\n/**\n * @deprecated Please use `Text` instead.\n */\nexport const SmallerText: React.FC<Omit<TextProps, \"size\">> = (props) => {\n return <Text size={\"smaller\"} {...props} />;\n};\n","import * as React from \"react\";\nimport { Text, TextProps } from \"../text/Text\";\n\n/**\n * @deprecated Please use `Text` instead.\n */\nexport const StandardText: React.FC<Omit<TextProps, \"size\">> = (props) => {\n return <Text size={\"medium\"} {...props} />;\n};\n","import * as React from \"react\";\nimport { Text, TextProps } from \"../text/Text\";\n\n/**\n * @deprecated Please use `Text` instead.\n */\nexport const LargeText: React.FC<Omit<TextProps, \"size\">> = (props) => {\n return <Text size={\"large\"} {...props} />;\n};\n","import cx from \"classnames\";\nimport { Property } from \"csstype\";\nimport * as React from \"react\";\nimport { forwardRef } from \"react\";\nimport { H1Props } from \"../../types/ElementProps\";\nimport styles from \"./Heading.module.css\";\n\nexport interface HeadingProps extends H1Props {\n variant?: HeadingVariant;\n whiteSpace?: Property.WhiteSpace;\n as?: HeadingVariant;\n}\n\nexport type HeadingVariant = \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\";\n\nexport const Heading = forwardRef<HTMLHeadingElement, HeadingProps>(\n (\n {\n variant = \"h3\",\n className,\n color,\n whiteSpace,\n style,\n children,\n as,\n ...hProps\n },\n ref\n ) => {\n const Element = as ?? variant;\n return (\n <Element\n className={cx(styles.heading, styles[variant], className)}\n style={{ color, whiteSpace, ...style }}\n ref={ref}\n {...hProps}\n >\n {children}\n </Element>\n );\n }\n);\n","import * as React from \"react\";\nimport { Heading, HeadingProps } from \"../heading/Heading\";\n\n/**\n * @deprecated Please use `Heading` instead.\n */\nexport const HeaderText: React.FC<Omit<HeadingProps, \"variant\">> = (props) => {\n return <Heading variant={\"h2\"} {...props} />;\n};\n","import { useCallback } from \"react\";\n\ntype ArrayItemEqualsComparator<T> = (a: T, b: T) => boolean;\n\nconst defaultComparator = <T>(a: T, b: T) => a === b;\n\nexport const useArraySet = <T>(\n list: Array<T>,\n setList: (list: Array<T>) => void,\n comparator: ArrayItemEqualsComparator<T> = defaultComparator\n) => {\n const add = useCallback(\n (item: T) => {\n if (!list.some((l) => comparator(l, item))) {\n setList([...list, item]);\n }\n },\n [list, setList, comparator]\n );\n\n const addMultiple = useCallback(\n (items: Array<T>) => {\n setList(\n items.reduce((list, item) => {\n if (!list.some((l) => comparator(l, item))) {\n return [...list, item];\n }\n return list;\n }, list)\n );\n },\n [list, setList, comparator]\n );\n\n const remove = useCallback(\n (item: T) => {\n const index = list.findIndex((l) => comparator(l, item));\n if (index >= 0) {\n setList(list.filter((_, i) => i !== index));\n }\n },\n [list, setList, comparator]\n );\n\n const removeMultiple = useCallback(\n (items: Array<T>) => {\n setList(list.filter((item) => !items.some((l) => comparator(l, item))));\n },\n [list, setList, comparator]\n );\n\n const toggle = useCallback(\n (item: T) => {\n const found = list.some((l) => comparator(l, item));\n if (found) {\n remove(item);\n } else {\n add(item);\n }\n },\n [list, add, remove, comparator]\n );\n\n return {\n add,\n addMultiple,\n remove,\n removeMultiple,\n toggle,\n };\n};\n","import { useCallback, useState } from \"react\";\n\ntype Value = boolean;\ntype SetTrue = () => void;\ntype SetFalse = () => void;\ntype ToggleValue = () => void;\ntype BooleanHook = [Value, SetTrue, SetFalse, ToggleValue];\n\nexport const useBoolean = (initialValue: Value): BooleanHook => {\n const [value, setValue] = useState(initialValue);\n\n const setTrue = useCallback(() => {\n setValue(true);\n }, [setValue]);\n\n const setFalse = useCallback(() => {\n setValue(false);\n }, [setValue]);\n\n const toggle = useCallback(() => {\n setValue((v) => !v);\n }, [setValue]);\n\n return [value, setTrue, setFalse, toggle];\n};\n","import { useEffect, useState } from \"react\";\n\nexport const useDebounce = <T>(value: T, delay: number): T => {\n // State and setters for debounced value\n const [debouncedValue, setDebouncedValue] = useState<T>(value);\n\n useEffect(() => {\n // Update debounced value after delay\n const handler = setTimeout(() => {\n setDebouncedValue(value);\n }, delay);\n\n // Cancel the timeout if value changes (also on delay change or unmount)\n // This is how we prevent debounced value from updating if value is changed ...\n // .. within the delay period. Timeout gets cleared and restarted.\n return () => {\n clearTimeout(handler);\n };\n }, [value, delay]); // Only re-call effect if value or delay changes\n\n return debouncedValue;\n};\n","import { useEffect, useState } from \"react\";\n\nexport const useDelayedFalse = (value: boolean, delay: number) => {\n const [debouncedValue, setDebouncedValue] = useState<boolean>(value);\n\n useEffect(() => {\n if (value) {\n setDebouncedValue(true);\n }\n\n const handler = setTimeout(() => {\n if (!value) {\n setDebouncedValue(value);\n }\n }, delay);\n\n return () => {\n clearTimeout(handler);\n };\n }, [value, delay]);\n\n return debouncedValue;\n};\n","import { useEffect, useState } from \"react\";\n\nlet id = 0;\nconst genId = (componentName?: string) =>\n `webui-${componentName ? componentName + \"-\" : \"\"}${++id}`;\n\nexport const useDomId = (componentName?: string): string => {\n const [id, setId] = useState<string | null>(() => genId(componentName));\n useEffect(() => setId(genId(componentName)), [componentName]);\n return id!;\n};\n","import { RefObject, useEffect, useRef } from \"react\";\n\ntype EventHandler<TEventName extends keyof HTMLElementEventMap> = (\n event: HTMLElementEventMap[TEventName]\n) => void;\n\nexport const useEventListener = <TEventName extends keyof HTMLElementEventMap>(\n ref: RefObject<HTMLElement>,\n eventName: TEventName,\n handler: EventHandler<TEventName>\n) => {\n // Create a ref that stores handler\n const savedHandler = useRef<EventHandler<TEventName>>();\n\n // Update ref.current value if handler changes.\n // This allows our effect below to always get latest handler ...\n // ... without us needing to pass it in effect deps array ...\n // ... and potentially cause effect to re-run every render.\n useEffect(() => {\n savedHandler.current = handler;\n }, [handler]);\n\n useEffect(() => {\n // Make sure element supports addEventListener\n const isSupported = ref.current && ref.current.addEventListener;\n if (!isSupported) return;\n\n // Create event listener that calls handler function stored in ref\n const eventListener: EventHandler<TEventName> = (event) => {\n if (savedHandler.current) {\n return savedHandler.current(event);\n }\n };\n\n // Add event listener\n if (!ref.current) {\n return;\n }\n\n const element = ref.current;\n element.addEventListener(eventName, eventListener);\n\n // Remove event listener on cleanup\n return () => {\n if (element) {\n element.removeEventListener(eventName, eventListener);\n }\n };\n }, [eventName, ref]); // Re-run if eventName or element changes\n};\n","import { RefObject, useCallback, useEffect } from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { useBoolean } from \"./UseBoolean\";\nimport { useEventListener } from \"./UseEventListener\";\n\nexport const useElementFocus = <TElement extends HTMLElement>(\n ref: RefObject<TElement>\n) => {\n const [isInFocus, setIsInFocus, setIsNotInFocus] = useBoolean(false);\n\n useEffect(() => {\n if (document.activeElement === ReactDOM.findDOMNode(ref.current)) {\n setIsInFocus();\n } else {\n setIsNotInFocus();\n }\n }, [ref, setIsNotInFocus, setIsInFocus]);\n\n useEventListener(ref, \"focus\", setIsInFocus);\n useEventListener(ref, \"blur\", setIsNotInFocus);\n\n const focus = useCallback(() => {\n if (ref.current) {\n ref.current.focus();\n }\n }, [ref]);\n\n const blur = useCallback(() => {\n if (ref.current) {\n ref.current.blur();\n }\n }, [ref]);\n\n return { isInFocus, focus, blur };\n};\n","import { RefObject } from \"react\";\nimport { useBoolean } from \"./UseBoolean\";\nimport { useEventListener } from \"./UseEventListener\";\n\nexport const useMouseIsOver = <TElement extends HTMLElement>(\n ref: RefObject<TElement>\n) => {\n const [mouseIsOver, setMouseIsOver, setMouseIsNotOver] = useBoolean(false);\n\n useEventListener(ref, \"mouseover\", setMouseIsOver);\n useEventListener(ref, \"mouseout\", setMouseIsNotOver);\n\n return mouseIsOver;\n};\n","import { RefObject } from \"react\";\nimport { useBoolean } from \"./UseBoolean\";\nimport { useEventListener } from \"./UseEventListener\";\n\nexport const useMouseIsEntered = <TElement extends HTMLElement>(\n ref: RefObject<TElement>\n) => {\n const [mouseIsEntered, setMouseIsEntered, setMouseIsNotEntered] = useBoolean(\n false\n );\n\n useEventListener(ref, \"mouseenter\", setMouseIsEntered);\n useEventListener(ref, \"mouseleave\", setMouseIsNotEntered);\n\n return mouseIsEntered;\n};\n","import * as React from \"react\";\nimport { useEffect, useRef } from \"react\";\n\nexport const useMultiOnClickOutside = (\n refs: Array<React.RefObject<any>>,\n handler: (event: TouchEvent | MouseEvent) => void\n) => {\n const eventHandler = useRef<(event: TouchEvent | MouseEvent) => void>(() => {\n return;\n });\n\n useEffect(() => {\n eventHandler.current = handler;\n }, [handler]);\n\n useEffect(() => {\n const listener = (event: TouchEvent | MouseEvent) => {\n // Do nothing if clicking ref's element or descendent elements\n\n const allNotContains = refs\n .filter((ref) => ref.current)\n .every((ref) => {\n return ref.current && !ref.current.contains(event.target);\n });\n\n if (!allNotContains) {\n return;\n }\n\n eventHandler.current(event);\n };\n\n document.addEventListener(\"mousedown\", listener);\n document.addEventListener(\"touchstart\", listener);\n\n return () => {\n document.removeEventListener(\"mousedown\", listener);\n document.removeEventListener(\"touchstart\", listener);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [...refs]);\n};\n","import * as React from \"react\";\nimport { useEffect, useRef } from \"react\";\n\nexport const useOnClickOutside = (\n ref: React.RefObject<any>,\n handler: (event: TouchEvent | MouseEvent) => void\n) => {\n const eventHandler = useRef<(event: TouchEvent | MouseEvent) => void>(() => {\n return;\n });\n\n useEffect(() => {\n eventHandler.current = handler;\n }, [handler]);\n\n useEffect(() => {\n const listener = (event: TouchEvent | MouseEvent) => {\n // Do nothing if clicking ref's element or descendent elements\n if (!ref.current || ref.current.contains(event.target)) {\n return;\n }\n\n eventHandler.current(event);\n };\n\n document.addEventListener(\"mousedown\", listener);\n document.addEventListener(\"touchstart\", listener);\n\n return () => {\n document.removeEventListener(\"mousedown\", listener);\n document.removeEventListener(\"touchstart\", listener);\n };\n }, [ref]);\n};\n","import { debounce } from \"lodash\";\nimport { useEffect, useRef } from \"react\";\n\nconst events = [\"mousemove\", \"mousedown\", \"keydown\", \"touchstart\", \"scroll\"];\n\nexport const useOnNoMouseMovement = (callback: () => void, delay: number) => {\n const eventHandler = useRef<(event: Event) => void>(() => {\n return;\n });\n\n useEffect(() => {\n eventHandler.current = callback;\n }, [callback]);\n\n useEffect(() => {\n const onIdleChange = debounce(eventHandler.current, delay);\n events.forEach((event) => window.addEventListener(event, onIdleChange));\n\n return () => {\n events.forEach((event) =>\n window.removeEventListener(event, onIdleChange)\n );\n };\n }, [delay]);\n};\n","import { RefObject, useEffect, useMemo, useState } from \"react\";\n\nexport const useOnScreen = (\n ref: RefObject<Element>,\n options?: IntersectionObserverInit\n) => {\n const [isVisible, setIsVisible] = useState(false);\n\n const { rootMargin, root, threshold } = options || {};\n\n const observer = useMemo(() => {\n return new IntersectionObserver(\n ([entry]) => setIsVisible(entry.isIntersecting),\n {\n rootMargin,\n root,\n threshold,\n }\n );\n }, [setIsVisible, rootMargin, root, threshold]);\n\n useEffect(() => {\n if (ref.current) {\n observer.observe(ref.current);\n }\n return () => {\n observer.disconnect();\n };\n }, [observer, ref]);\n\n return isVisible;\n};\n","import {\n MutableRefObject,\n RefCallback,\n RefObject,\n useEffect,\n useRef,\n} from \"react\";\n\nexport const useForwardedRef = <T>(\n ref: RefCallback<T> | MutableRefObject<T> | null\n): RefObject<NonNullable<T>> => {\n const innerRef = useRef<T>(null) as MutableRefObject<NonNullable<T>>;\n\n useEffect(() => {\n if (!ref) return;\n if (typeof ref === \"function\") {\n ref(innerRef.current);\n } else {\n ref.current = innerRef.current;\n }\n });\n\n return innerRef;\n};\n","import { useCallback, useEffect, useRef, useState } from \"react\";\n\nexport const useTimeoutState = <S>(\n initialValue: S,\n defaultTimeout: number,\n clearTimeoutOnSetValue = true\n): [S, (v: S) => void] => {\n const [value, setValue] = useState<S>(initialValue);\n const timeoutRef = useRef<NodeJS.Timeout>();\n\n const wrappedSetter = useCallback(\n (newValue: S, timeout = defaultTimeout) => {\n setValue(newValue);\n if (clearTimeoutOnSetValue) {\n clearTimeout(timeoutRef.current!);\n }\n timeoutRef.current = setTimeout(() => setValue(initialValue), timeout);\n },\n [defaultTimeout, clearTimeoutOnSetValue, initialValue]\n );\n\n useEffect(() => {\n return () => {\n clearTimeout(timeoutRef.current!);\n };\n }, []);\n\n return [value, wrappedSetter];\n};\n","export const exhaustSwitchCaseElseThrow = (arg: never) => {\n throw new Error(`Switch unhandled case: ${arg}`);\n};\n\nexport const exhaustSwitchCase = <T>(_arg: never, fallback: T) => {\n return fallback;\n};\n","export const parseFloatElseUndefined = (s: string): number | undefined => {\n try {\n const f = parseFloat(s);\n if (isNaN(f)) {\n return undefined;\n }\n if (f == null) {\n return undefined;\n }\n return f;\n } catch (e) {}\n return undefined;\n};\n\nexport const parseIntElseUndefined = (s: string): number | undefined => {\n try {\n const f = parseInt(s, 10);\n if (isNaN(f)) {\n return undefined;\n }\n if (f == null) {\n return undefined;\n }\n return f;\n } catch (e) {}\n return undefined;\n};\n"],"names":["React.createElement","styles","ReactDOM.findDOMNode"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"index.es.js","sources":["../src/components/decorators/separatorline/SeparatorLine.tsx","../src/components/interaction/Clickable.tsx","../src/utils/BooleanOrNumberToNumber.ts","../src/components/layout/box/Box.tsx","../src/components/layout/column/Column.tsx","../src/hooks/UseElementDimensions.ts","../src/components/layout/box/ResizeAwareBox.tsx","../src/components/layout/row/Row.tsx","../src/components/layout/indent/Indent.tsx","../src/components/layout/spacing/Spacing.tsx","../src/components/layout/space/Space.tsx","../src/components/util/Nest.tsx","../../../node_modules/style-inject/dist/style-inject.es.js","../src/components/text/Text.tsx","../src/components/deprecated-text/SmallText.tsx","../src/components/deprecated-text/SmallerText.tsx","../src/components/deprecated-text/StandardText.tsx","../src/components/deprecated-text/LargeText.tsx","../src/components/heading/Heading.tsx","../src/components/deprecated-text/HeaderText.tsx","../src/hooks/UseArraySet.ts","../src/hooks/UseBoolean.ts","../src/hooks/UseDebounce.ts","../src/hooks/UseDelayedFalse.ts","../src/hooks/UseDomId.ts","../src/hooks/UseEventListener.ts","../src/hooks/UseElementFocus.ts","../src/hooks/UseMouseIsOver.ts","../src/hooks/UseMouseIsEntered.ts","../src/hooks/UseMultiOnClickOutside.ts","../src/hooks/UseOnClickOutside.ts","../src/hooks/UseOnNoMouseInput.ts","../src/hooks/UseOnScreen.ts","../src/hooks/UseForwardedRef.ts","../src/hooks/UseTimeoutState.ts","../src/utils/SwitchCaseExhauster.ts","../src/utils/TruthyKeysAsList.ts","../src/utils/parsers/NumberParser.ts"],"sourcesContent":["import styled from \"@emotion/styled\";\nimport { Property } from \"csstype\";\nimport * as React from \"react\";\nimport { forwardRef } from \"react\";\n\nexport interface SeparatorLineProps {\n color?: Property.Color;\n vertical?: boolean;\n size?: string;\n width?: string;\n}\n\ninterface SeparatorLineComponentProps {\n color: string;\n vertical?: boolean;\n size?: string;\n width?: string;\n}\n\nconst SeparatorLineComponent = styled.hr<SeparatorLineComponentProps>`\n display: flex;\n border: 0;\n margin: 0;\n background-color: ${(props) => props.color};\n height: ${(props) =>\n props.vertical ? props.size || \"100%\" : props.width || \"1px\"};\n width: ${(props) =>\n props.vertical ? props.width || \"1px\" : props.size || \"100%\"};\n`;\n\nexport const SeparatorLine = forwardRef<HTMLHRElement, SeparatorLineProps>(\n (\n {\n color = \"var(--lhds-color-ui-300)\",\n size = \"100%\",\n width = \"1px\",\n vertical = false,\n },\n ref\n ) => {\n return (\n <SeparatorLineComponent\n color={color}\n size={size}\n width={width}\n vertical={vertical}\n ref={ref}\n />\n );\n }\n);\n","import styled from \"@emotion/styled\";\nimport * as React from \"react\";\nimport { CSSProperties, forwardRef, MouseEventHandler } from \"react\";\nimport { ButtonElementProps } from \"../../types/ElementProps\";\n\nexport interface ClickableProps extends ButtonElementProps {\n /** Callback function called when clicking on click area. */\n onClick?: MouseEventHandler<HTMLButtonElement>;\n /** Callback function called when double clicking on click area. */\n onDblClick?: MouseEventHandler<HTMLButtonElement>;\n /** Adds a title to the click area. */\n tooltip?: string;\n /** If set, there is no opacity applies when clicking on the click area. */\n disableOpacityOnClick?: boolean;\n /** Mouse does not turn into pointer when hovering over click area. */\n disablePointer?: boolean;\n /** When set, click area receives opacity when mouse hovers over it. */\n opacityOnHover?: boolean;\n /** Custom style on div with click event. */\n style?: CSSProperties;\n /** Disables shadow when element is focused. */\n disableFocusHighlight?: boolean;\n /** Disables the HTML button element. */\n disabled?: boolean;\n /**\n * Sets the background of the box.\n */\n background?: string;\n /**\n * Sets the background of the box when the box is in focus.\n */\n focusBackground?: string;\n /**\n * Sets the background of the box when hovering with mouse.\n */\n hoverBackground?: string;\n /**\n * The width.\n */\n width?: string;\n /**\n * The height.\n */\n height?: string;\n /**\n * Border radius\n */\n borderRadius?: string;\n}\n\ninterface ClickableElementProps {\n disableOpacityOnClick?: boolean;\n opacityOnHover?: boolean;\n disableFocusHighlight?: boolean;\n pointer?: boolean;\n background?: string;\n focusBackground?: string;\n hoverBackground?: string;\n width?: string;\n height?: string;\n borderRadius?: string;\n}\n\nconst ClickableElement = styled.button<ClickableElementProps>`\n display: inline-block;\n user-select: none;\n border: 0;\n padding: 0;\n background: ${({ background }) => background};\n ${({ pointer }) => (pointer ? \"cursor: pointer;\" : \"\")}\n\n :hover {\n ${(props) => (props.opacityOnHover ? \"opacity: 0.7;\" : \"\")};\n ${({ hoverBackground }) => `background: ${hoverBackground};`}\n }\n :active {\n ${({ disableOpacityOnClick }) =>\n !disableOpacityOnClick ? \"opacity: 0.5;\" : \"\"}\n }\n :focus {\n outline: 0;\n ${({ disableFocusHighlight }) =>\n disableFocusHighlight\n ? \"\"\n : \"box-shadow: 0 0 3pt 2pt rgba(0, 0, 100, 0.3);\"}\n ${({ focusBackground }) => `background: ${focusBackground};`}\n }\n ${({ width }) => (width ? `width: ${width};` : \"\")}\n ${({ height }) => (height ? `height: ${height};` : \"\")}\n ${({ borderRadius }) =>\n borderRadius ? `border-radius: ${borderRadius};` : \"\"}\n`;\n\nexport const Clickable = forwardRef<HTMLButtonElement, ClickableProps>(\n (\n {\n disableFocusHighlight,\n onClick,\n onDblClick,\n tooltip,\n disableOpacityOnClick,\n disablePointer,\n opacityOnHover,\n disabled,\n children,\n background = \"transparent\",\n hoverBackground,\n focusBackground,\n type = \"button\",\n ...restProps\n },\n ref\n ) => {\n const hasClickHandler = !!(onClick || onDblClick);\n\n return (\n <ClickableElement\n opacityOnHover={opacityOnHover}\n title={tooltip}\n disabled={disabled}\n disableOpacityOnClick={disableOpacityOnClick}\n onClick={onClick}\n onDoubleClick={onDblClick}\n disableFocusHighlight={disableFocusHighlight}\n pointer={hasClickHandler && !disablePointer}\n ref={ref}\n background={background}\n hoverBackground={hoverBackground}\n focusBackground={focusBackground}\n type={type}\n {...restProps}\n >\n {children}\n </ClickableElement>\n );\n }\n);\n","export const booleanOrNumberToNumber = (\n num: number | boolean | undefined\n): number => {\n if (num == null) {\n return 0;\n }\n if (typeof num === \"boolean\") {\n return num ? 1 : 0;\n }\n return num;\n};\n","import isPropValid from \"@emotion/is-prop-valid\";\nimport styled from \"@emotion/styled\";\nimport { Property } from \"csstype\";\n\nimport {\n background,\n BackgroundProps,\n border,\n borderBottom,\n BorderBottomProps,\n borderColor,\n borderLeft,\n BorderLeftProps,\n borderRadius,\n BorderRadiusProps,\n borderRight,\n BorderRightProps,\n borderStyle,\n BorderStyleProps,\n borderTop,\n BorderTopProps,\n borderWidth,\n BorderWidthProps,\n bottom,\n BottomProps,\n boxShadow,\n BoxShadowProps,\n flexbox,\n FlexboxProps,\n layout,\n LayoutProps,\n left,\n LeftProps,\n overflow,\n OverflowProps,\n position,\n PositionProps,\n ResponsiveValue,\n right,\n RightProps,\n system,\n TLengthStyledSystem,\n top,\n TopProps,\n zIndex,\n ZIndexProps,\n} from \"styled-system\";\nimport { DivProps } from \"../../../types/ElementProps\";\nimport { booleanOrNumberToNumber } from \"../../../utils/BooleanOrNumberToNumber\";\n\ninterface StyledSystemProps\n extends BorderRadiusProps,\n BorderStyleProps,\n BorderWidthProps,\n BorderLeftProps,\n BorderRightProps,\n BorderTopProps,\n BorderBottomProps,\n FlexboxProps,\n LayoutProps,\n OverflowProps,\n PositionProps,\n ZIndexProps,\n LeftProps,\n RightProps,\n TopProps,\n BottomProps {}\n\nconst shadows = {\n box: \"var(--swui-shadow-box)\",\n popover: \"var(--swui-shadow-popover)\",\n modal: \"var(--swui-shadow-modal)\",\n};\n\ntype ShadowType = keyof typeof shadows;\n\nexport interface BoxProps extends StyledSystemProps, DivProps {\n /**\n * If true, children are placed in a row.\n */\n row?: ResponsiveValue<boolean>;\n\n /**\n * Adds spacing over and under content.\n */\n spacing?: ResponsiveValue<boolean | TLengthStyledSystem>;\n\n /**\n * Adds spacing left and right of content.\n */\n indent?: ResponsiveValue<boolean | TLengthStyledSystem>;\n\n /**\n * Adds a shadow around the box.\n */\n shadow?: ResponsiveValue<Property.BoxShadow | ShadowType>;\n\n /**\n * Sets the background of the box.\n */\n background?: ResponsiveValue<Property.Background<TLengthStyledSystem>>;\n\n /**\n * Sets the border of the box.\n */\n border?: ResponsiveValue<Property.Border<TLengthStyledSystem>>;\n\n /**\n * Sets the border color of the box.\n */\n borderColor?: ResponsiveValue<Property.BorderColor>;\n\n /**\n * Sets the background of the box when hovering with mouse.\n */\n hoverBackground?: Property.Background<TLengthStyledSystem>;\n\n /**\n * Sets the border of the box when hovering with mouse.\n */\n hoverBorder?: Property.Border<TLengthStyledSystem>;\n\n /**\n * Sets the background of the box when the box is in focus.\n */\n focusBackground?: Property.Background<TLengthStyledSystem>;\n\n /**\n * Sets the border of the box when the box is in focus.\n */\n focusBorder?: Property.Border<TLengthStyledSystem>;\n\n /**\n * Sets the background of the box when focus is within the box.\n */\n focusWithinBackground?: Property.Background<TLengthStyledSystem>;\n\n /**\n * Sets the border of the box when focus is within the box.\n */\n focusWithinBorder?: Property.Border<TLengthStyledSystem>;\n}\n\nconst excludedProps = [\n \"spacing\",\n \"indent\",\n \"width\",\n \"height\",\n \"overflow\",\n \"display\",\n];\n\nconst isExcludedWebUiProp = (propName: string) =>\n excludedProps.includes(propName);\n\nconst box = system({\n row: {\n property: \"flexDirection\",\n transform: (row: boolean) => (row ? \"row\" : \"column\"),\n },\n indent: {\n // @ts-ignore\n property: \"--current-indent\",\n transform: booleanOrNumberToNumber,\n },\n spacing: {\n // @ts-ignore\n property: \"--current-spacing\",\n transform: booleanOrNumberToNumber,\n },\n shadow: {\n property: \"boxShadow\",\n transform: (value) => shadows[value] ?? value,\n },\n});\n\ntype InnerProps = BoxProps & BoxShadowProps & BackgroundProps;\n\nexport const Box = styled(\"div\", {\n shouldForwardProp: (propName) =>\n typeof propName === \"string\"\n ? isExcludedWebUiProp(propName)\n ? false\n : isPropValid(propName)\n : false,\n})<InnerProps>`\n --current-spacing: 0;\n --current-indent: 0;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n ${box};\n ${background};\n ${border};\n ${borderRight};\n ${borderLeft};\n ${borderTop};\n ${borderBottom};\n ${borderColor};\n ${borderRadius};\n ${borderStyle};\n ${borderWidth};\n ${boxShadow};\n ${flexbox};\n ${overflow};\n ${position};\n ${layout};\n ${zIndex};\n ${left};\n ${right};\n ${top};\n ${bottom};\n\n padding: calc(var(--current-spacing) * var(--swui-metrics-spacing))\n calc(var(--current-indent) * var(--swui-metrics-indent));\n :hover {\n ${({ hoverBackground }) =>\n hoverBackground ? `background: ${hoverBackground};` : \"\"}\n ${({ hoverBorder }) => (hoverBorder ? `border: ${hoverBorder};` : \"\")}\n }\n :focus {\n ${({ focusBackground }) =>\n focusBackground ? `background: ${focusBackground};` : \"\"}\n ${({ focusBorder }) => (focusBorder ? `border: ${focusBorder};` : \"\")}\n }\n :focus-within {\n ${({ focusWithinBackground }) =>\n focusWithinBackground ? `background: ${focusWithinBackground};` : \"\"}\n ${({ focusWithinBorder }) =>\n focusWithinBorder ? `border: ${focusWithinBorder};` : \"\"}\n }\n`;\n","import * as React from \"react\";\nimport { forwardRef } from \"react\";\nimport { Box, BoxProps } from \"../box/Box\";\n\nexport const Column = forwardRef<HTMLDivElement, BoxProps>(function Column(\n props,\n ref\n) {\n return <Box ref={ref} {...props} />;\n});\n","import { RefObject, useCallback, useLayoutEffect, useState } from \"react\";\n\nexport interface ElementDimensions {\n width: number;\n height: number;\n top: number;\n left: number;\n x: number;\n y: number;\n right: number;\n bottom: number;\n}\n\nexport const getDimensionObject = (node: HTMLElement): ElementDimensions => {\n const {\n x,\n y,\n width,\n height,\n bottom,\n top,\n left,\n right,\n } = node.getBoundingClientRect();\n\n return {\n width,\n height,\n top,\n left,\n x,\n y,\n right,\n bottom,\n };\n};\n\nconst isEqualDimensions = (\n a: ElementDimensions,\n b: ElementDimensions\n): boolean =>\n a.x === b.x &&\n a.y === b.y &&\n a.width === b.width &&\n a.height === b.height &&\n a.bottom === b.bottom &&\n a.top === b.top &&\n a.left === b.left &&\n a.right === b.right;\n\nexport const useElementDimensions = (\n ref: RefObject<HTMLElement>,\n onResizeElement?: (dimensions: ElementDimensions) => void\n) => {\n const [dimensions, setDimensions] = useState<ElementDimensions | undefined>();\n\n const updateDimensions = useCallback(() => {\n window.requestAnimationFrame(() => {\n if (ref.current) {\n const newDimensions = getDimensionObject(ref.current);\n if (!dimensions || !isEqualDimensions(dimensions, newDimensions)) {\n if (onResizeElement) {\n onResizeElement(newDimensions);\n }\n }\n setDimensions(newDimensions);\n }\n });\n }, [ref, dimensions, setDimensions, onResizeElement]);\n\n useLayoutEffect(() => {\n updateDimensions();\n }, [updateDimensions]);\n\n return {\n dimensions,\n };\n};\n","import * as React from \"react\";\nimport { forwardRef, RefObject, useRef } from \"react\";\nimport { Box, BoxProps } from \"./Box\";\nimport {\n ElementDimensions,\n useElementDimensions,\n} from \"../../../hooks/UseElementDimensions\";\n\nexport interface ResizeAwareBoxProps extends BoxProps {\n onResize?: (dimensions: ElementDimensions) => void;\n}\n\nexport const ResizeAwareBox = forwardRef<HTMLDivElement, ResizeAwareBoxProps>(\n function ResizeAwareBox({ onResize, ...boxProps }, ref) {\n const localRef = useRef<HTMLDivElement>(null);\n const currentRef = (ref as RefObject<HTMLDivElement>) ?? localRef;\n useElementDimensions(currentRef, onResize);\n\n return <Box {...boxProps} ref={ref} />;\n }\n);\n","import * as React from \"react\";\nimport { forwardRef } from \"react\";\nimport { Box, BoxProps } from \"../box/Box\";\n\nexport const Row = forwardRef<HTMLDivElement, BoxProps>(function Row(\n props,\n ref\n) {\n return <Box row ref={ref} {...props} />;\n});\n","import * as React from \"react\";\nimport { forwardRef } from \"react\";\nimport { Box, BoxProps } from \"../box/Box\";\nimport { ResponsiveValue, TLengthStyledSystem } from \"styled-system\";\n\nexport interface IndentProps extends BoxProps {\n num?: ResponsiveValue<boolean | TLengthStyledSystem>;\n}\n\nexport const Indent = forwardRef<HTMLDivElement, IndentProps>(function Indent(\n { num = 1, ...props },\n ref\n) {\n return <Box indent={num} ref={ref} {...props} />;\n});\n","import * as React from \"react\";\nimport { forwardRef } from \"react\";\nimport { Box, BoxProps } from \"../box/Box\";\nimport { ResponsiveValue, TLengthStyledSystem } from \"styled-system\";\n\nexport interface SpacingProps extends BoxProps {\n num?: ResponsiveValue<boolean | TLengthStyledSystem>;\n}\n\nexport const Spacing = forwardRef<HTMLDivElement, SpacingProps>(\n function Spacing({ num = 1, ...props }, ref) {\n return <Box spacing={num} ref={ref} {...props} />;\n }\n);\n","import styled from \"@emotion/styled\";\nimport * as React from \"react\";\n\nexport interface SpaceProps {\n half?: boolean;\n horizontal?: boolean;\n num?: number;\n vertical?: boolean;\n}\n\nconst InnerSpace = styled.div`\n --current-size: 1;\n flex: none;\n width: calc(var(--current-size) * var(--swui-metrics-space));\n height: calc(var(--current-size) * var(--swui-metrics-space));\n`;\n\nexport const Space: React.VFC<SpaceProps> = ({\n half = false,\n horizontal = false,\n num = 1,\n vertical = false,\n}) => {\n const size = num * (half ? 0.5 : 1);\n\n return (\n <InnerSpace\n style={{\n [\"--current-size\" as string]: size,\n height: horizontal ? 1 : undefined,\n width: vertical ? 1 : undefined,\n }}\n />\n );\n};\n","import * as React from \"react\";\nimport { ReactNode } from \"react\";\n\ninterface Props {\n nest?: boolean;\n render: (children: ReactNode) => ReactNode;\n}\n\nexport const Nest: React.FC<Props> = ({ children, nest, render }) => {\n if (nest) {\n return <>{render(children)}</>;\n }\n return <>{children}</>;\n};\n","function styleInject(css, ref) {\n if ( ref === void 0 ) ref = {};\n var insertAt = ref.insertAt;\n\n if (!css || typeof document === 'undefined') { return; }\n\n var head = document.head || document.getElementsByTagName('head')[0];\n var style = document.createElement('style');\n style.type = 'text/css';\n\n if (insertAt === 'top') {\n if (head.firstChild) {\n head.insertBefore(style, head.firstChild);\n } else {\n head.appendChild(style);\n }\n } else {\n head.appendChild(style);\n }\n\n if (style.styleSheet) {\n style.styleSheet.cssText = css;\n } else {\n style.appendChild(document.createTextNode(css));\n }\n}\n\nexport default styleInject;\n","import * as React from \"react\";\nimport cx from \"classnames\";\nimport styles from \"./Text.module.css\";\nimport { SpanProps } from \"../../types/ElementProps\";\nimport { Property } from \"csstype\";\nimport { forwardRef } from \"react\";\n\nexport interface TextProps extends SpanProps {\n variant?: TextVariant;\n size?: TextSize;\n userSelect?: Property.UserSelect;\n whiteSpace?: Property.WhiteSpace;\n color?: string;\n}\n\nexport type TextVariant = \"standard\" | \"caption\" | \"overline\" | \"bold\";\nexport type TextSize = \"large\" | \"medium\" | \"small\" | \"smaller\";\n\nexport const Text = forwardRef<HTMLSpanElement, TextProps>(\n (\n {\n children,\n variant = \"standard\",\n size = \"medium\",\n className,\n color,\n userSelect,\n whiteSpace,\n style,\n ...spanProps\n },\n ref\n ) => {\n return (\n <span\n className={cx(styles.text, styles[variant], styles[size], className)}\n ref={ref}\n style={{ color, userSelect, whiteSpace, ...style }}\n {...spanProps}\n >\n {children}\n </span>\n );\n }\n);\n\nexport const Txt = Text;\n","import * as React from \"react\";\nimport { Text, TextProps } from \"../text/Text\";\n\n/**\n * @deprecated Please use `Text` instead.\n */\nexport const SmallText: React.FC<Omit<TextProps, \"size\">> = (props) => {\n return <Text size={\"small\"} {...props} />;\n};\n","import * as React from \"react\";\nimport { Text, TextProps } from \"../text/Text\";\n\n/**\n * @deprecated Please use `Text` instead.\n */\nexport const SmallerText: React.FC<Omit<TextProps, \"size\">> = (props) => {\n return <Text size={\"smaller\"} {...props} />;\n};\n","import * as React from \"react\";\nimport { Text, TextProps } from \"../text/Text\";\n\n/**\n * @deprecated Please use `Text` instead.\n */\nexport const StandardText: React.FC<Omit<TextProps, \"size\">> = (props) => {\n return <Text size={\"medium\"} {...props} />;\n};\n","import * as React from \"react\";\nimport { Text, TextProps } from \"../text/Text\";\n\n/**\n * @deprecated Please use `Text` instead.\n */\nexport const LargeText: React.FC<Omit<TextProps, \"size\">> = (props) => {\n return <Text size={\"large\"} {...props} />;\n};\n","import cx from \"classnames\";\nimport { Property } from \"csstype\";\nimport * as React from \"react\";\nimport { forwardRef } from \"react\";\nimport { H1Props } from \"../../types/ElementProps\";\nimport styles from \"./Heading.module.css\";\n\nexport interface HeadingProps extends H1Props {\n variant?: HeadingVariant;\n whiteSpace?: Property.WhiteSpace;\n as?: HeadingVariant;\n}\n\nexport type HeadingVariant = \"h1\" | \"h2\" | \"h3\" | \"h4\" | \"h5\" | \"h6\";\n\nexport const Heading = forwardRef<HTMLHeadingElement, HeadingProps>(\n (\n {\n variant = \"h3\",\n className,\n color,\n whiteSpace,\n style,\n children,\n as,\n ...hProps\n },\n ref\n ) => {\n const Element = as ?? variant;\n return (\n <Element\n className={cx(styles.heading, styles[variant], className)}\n style={{ color, whiteSpace, ...style }}\n ref={ref}\n {...hProps}\n >\n {children}\n </Element>\n );\n }\n);\n","import * as React from \"react\";\nimport { Heading, HeadingProps } from \"../heading/Heading\";\n\n/**\n * @deprecated Please use `Heading` instead.\n */\nexport const HeaderText: React.FC<Omit<HeadingProps, \"variant\">> = (props) => {\n return <Heading variant={\"h2\"} {...props} />;\n};\n","import { useCallback } from \"react\";\n\ntype ArrayItemEqualsComparator<T> = (a: T, b: T) => boolean;\n\nconst defaultComparator = <T>(a: T, b: T) => a === b;\n\nexport const useArraySet = <T>(\n list: Array<T>,\n setList: (list: Array<T>) => void,\n comparator: ArrayItemEqualsComparator<T> = defaultComparator\n) => {\n const add = useCallback(\n (item: T) => {\n if (!list.some((l) => comparator(l, item))) {\n setList([...list, item]);\n }\n },\n [list, setList, comparator]\n );\n\n const addMultiple = useCallback(\n (items: Array<T>) => {\n setList(\n items.reduce((list, item) => {\n if (!list.some((l) => comparator(l, item))) {\n return [...list, item];\n }\n return list;\n }, list)\n );\n },\n [list, setList, comparator]\n );\n\n const remove = useCallback(\n (item: T) => {\n const index = list.findIndex((l) => comparator(l, item));\n if (index >= 0) {\n setList(list.filter((_, i) => i !== index));\n }\n },\n [list, setList, comparator]\n );\n\n const removeMultiple = useCallback(\n (items: Array<T>) => {\n setList(list.filter((item) => !items.some((l) => comparator(l, item))));\n },\n [list, setList, comparator]\n );\n\n const toggle = useCallback(\n (item: T) => {\n const found = list.some((l) => comparator(l, item));\n if (found) {\n remove(item);\n } else {\n add(item);\n }\n },\n [list, add, remove, comparator]\n );\n\n return {\n add,\n addMultiple,\n remove,\n removeMultiple,\n toggle,\n };\n};\n","import { useCallback, useState } from \"react\";\n\ntype Value = boolean;\ntype SetTrue = () => void;\ntype SetFalse = () => void;\ntype ToggleValue = () => void;\ntype BooleanHook = [Value, SetTrue, SetFalse, ToggleValue];\n\nexport const useBoolean = (initialValue: Value): BooleanHook => {\n const [value, setValue] = useState(initialValue);\n\n const setTrue = useCallback(() => {\n setValue(true);\n }, [setValue]);\n\n const setFalse = useCallback(() => {\n setValue(false);\n }, [setValue]);\n\n const toggle = useCallback(() => {\n setValue((v) => !v);\n }, [setValue]);\n\n return [value, setTrue, setFalse, toggle];\n};\n","import { useEffect, useState } from \"react\";\n\nexport const useDebounce = <T>(value: T, delay: number): T => {\n // State and setters for debounced value\n const [debouncedValue, setDebouncedValue] = useState<T>(value);\n\n useEffect(() => {\n // Update debounced value after delay\n const handler = setTimeout(() => {\n setDebouncedValue(value);\n }, delay);\n\n // Cancel the timeout if value changes (also on delay change or unmount)\n // This is how we prevent debounced value from updating if value is changed ...\n // .. within the delay period. Timeout gets cleared and restarted.\n return () => {\n clearTimeout(handler);\n };\n }, [value, delay]); // Only re-call effect if value or delay changes\n\n return debouncedValue;\n};\n","import { useEffect, useState } from \"react\";\n\nexport const useDelayedFalse = (value: boolean, delay: number) => {\n const [debouncedValue, setDebouncedValue] = useState<boolean>(value);\n\n useEffect(() => {\n if (value) {\n setDebouncedValue(true);\n }\n\n const handler = setTimeout(() => {\n if (!value) {\n setDebouncedValue(value);\n }\n }, delay);\n\n return () => {\n clearTimeout(handler);\n };\n }, [value, delay]);\n\n return debouncedValue;\n};\n","import { useEffect, useState } from \"react\";\n\nlet id = 0;\nconst genId = (componentName?: string) =>\n `webui-${componentName ? componentName + \"-\" : \"\"}${++id}`;\n\nexport const useDomId = (componentName?: string): string => {\n const [id, setId] = useState<string | null>(() => genId(componentName));\n useEffect(() => setId(genId(componentName)), [componentName]);\n return id!;\n};\n","import { RefObject, useEffect, useRef } from \"react\";\n\ntype EventHandler<TEventName extends keyof HTMLElementEventMap> = (\n event: HTMLElementEventMap[TEventName]\n) => void;\n\nexport const useEventListener = <TEventName extends keyof HTMLElementEventMap>(\n ref: RefObject<HTMLElement>,\n eventName: TEventName,\n handler: EventHandler<TEventName>\n) => {\n // Create a ref that stores handler\n const savedHandler = useRef<EventHandler<TEventName>>();\n\n // Update ref.current value if handler changes.\n // This allows our effect below to always get latest handler ...\n // ... without us needing to pass it in effect deps array ...\n // ... and potentially cause effect to re-run every render.\n useEffect(() => {\n savedHandler.current = handler;\n }, [handler]);\n\n useEffect(() => {\n // Make sure element supports addEventListener\n const isSupported = ref.current && ref.current.addEventListener;\n if (!isSupported) return;\n\n // Create event listener that calls handler function stored in ref\n const eventListener: EventHandler<TEventName> = (event) => {\n if (savedHandler.current) {\n return savedHandler.current(event);\n }\n };\n\n // Add event listener\n if (!ref.current) {\n return;\n }\n\n const element = ref.current;\n element.addEventListener(eventName, eventListener);\n\n // Remove event listener on cleanup\n return () => {\n if (element) {\n element.removeEventListener(eventName, eventListener);\n }\n };\n }, [eventName, ref]); // Re-run if eventName or element changes\n};\n","import { RefObject, useCallback, useEffect } from \"react\";\nimport * as ReactDOM from \"react-dom\";\nimport { useBoolean } from \"./UseBoolean\";\nimport { useEventListener } from \"./UseEventListener\";\n\nexport const useElementFocus = <TElement extends HTMLElement>(\n ref: RefObject<TElement>\n) => {\n const [isInFocus, setIsInFocus, setIsNotInFocus] = useBoolean(false);\n\n useEffect(() => {\n if (document.activeElement === ReactDOM.findDOMNode(ref.current)) {\n setIsInFocus();\n } else {\n setIsNotInFocus();\n }\n }, [ref, setIsNotInFocus, setIsInFocus]);\n\n useEventListener(ref, \"focus\", setIsInFocus);\n useEventListener(ref, \"blur\", setIsNotInFocus);\n\n const focus = useCallback(() => {\n if (ref.current) {\n ref.current.focus();\n }\n }, [ref]);\n\n const blur = useCallback(() => {\n if (ref.current) {\n ref.current.blur();\n }\n }, [ref]);\n\n return { isInFocus, focus, blur };\n};\n","import { RefObject } from \"react\";\nimport { useBoolean } from \"./UseBoolean\";\nimport { useEventListener } from \"./UseEventListener\";\n\nexport const useMouseIsOver = <TElement extends HTMLElement>(\n ref: RefObject<TElement>\n) => {\n const [mouseIsOver, setMouseIsOver, setMouseIsNotOver] = useBoolean(false);\n\n useEventListener(ref, \"mouseover\", setMouseIsOver);\n useEventListener(ref, \"mouseout\", setMouseIsNotOver);\n\n return mouseIsOver;\n};\n","import { RefObject } from \"react\";\nimport { useBoolean } from \"./UseBoolean\";\nimport { useEventListener } from \"./UseEventListener\";\n\nexport const useMouseIsEntered = <TElement extends HTMLElement>(\n ref: RefObject<TElement>\n) => {\n const [mouseIsEntered, setMouseIsEntered, setMouseIsNotEntered] = useBoolean(\n false\n );\n\n useEventListener(ref, \"mouseenter\", setMouseIsEntered);\n useEventListener(ref, \"mouseleave\", setMouseIsNotEntered);\n\n return mouseIsEntered;\n};\n","import * as React from \"react\";\nimport { useEffect, useRef } from \"react\";\n\nexport const useMultiOnClickOutside = (\n refs: Array<React.RefObject<any>>,\n handler: (event: TouchEvent | MouseEvent) => void\n) => {\n const eventHandler = useRef<(event: TouchEvent | MouseEvent) => void>(() => {\n return;\n });\n\n useEffect(() => {\n eventHandler.current = handler;\n }, [handler]);\n\n useEffect(() => {\n const listener = (event: TouchEvent | MouseEvent) => {\n // Do nothing if clicking ref's element or descendent elements\n\n const allNotContains = refs\n .filter((ref) => ref.current)\n .every((ref) => {\n return ref.current && !ref.current.contains(event.target);\n });\n\n if (!allNotContains) {\n return;\n }\n\n eventHandler.current(event);\n };\n\n document.addEventListener(\"mousedown\", listener);\n document.addEventListener(\"touchstart\", listener);\n\n return () => {\n document.removeEventListener(\"mousedown\", listener);\n document.removeEventListener(\"touchstart\", listener);\n };\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [...refs]);\n};\n","import * as React from \"react\";\nimport { useEffect, useRef } from \"react\";\n\nexport const useOnClickOutside = (\n ref: React.RefObject<any>,\n handler: (event: TouchEvent | MouseEvent) => void\n) => {\n const eventHandler = useRef<(event: TouchEvent | MouseEvent) => void>(() => {\n return;\n });\n\n useEffect(() => {\n eventHandler.current = handler;\n }, [handler]);\n\n useEffect(() => {\n const listener = (event: TouchEvent | MouseEvent) => {\n // Do nothing if clicking ref's element or descendent elements\n if (!ref.current || ref.current.contains(event.target)) {\n return;\n }\n\n eventHandler.current(event);\n };\n\n document.addEventListener(\"mousedown\", listener);\n document.addEventListener(\"touchstart\", listener);\n\n return () => {\n document.removeEventListener(\"mousedown\", listener);\n document.removeEventListener(\"touchstart\", listener);\n };\n }, [ref]);\n};\n","import { debounce } from \"lodash\";\nimport { useEffect, useRef } from \"react\";\n\nconst events = [\"mousemove\", \"mousedown\", \"keydown\", \"touchstart\", \"scroll\"];\n\nexport const useOnNoMouseMovement = (callback: () => void, delay: number) => {\n const eventHandler = useRef<(event: Event) => void>(() => {\n return;\n });\n\n useEffect(() => {\n eventHandler.current = callback;\n }, [callback]);\n\n useEffect(() => {\n const onIdleChange = debounce(eventHandler.current, delay);\n events.forEach((event) => window.addEventListener(event, onIdleChange));\n\n return () => {\n events.forEach((event) =>\n window.removeEventListener(event, onIdleChange)\n );\n };\n }, [delay]);\n};\n","import { RefObject, useEffect, useMemo, useState } from \"react\";\n\nexport const useOnScreen = (\n ref: RefObject<Element>,\n options?: IntersectionObserverInit\n) => {\n const [isVisible, setIsVisible] = useState(false);\n\n const { rootMargin, root, threshold } = options || {};\n\n const observer = useMemo(() => {\n return new IntersectionObserver(\n ([entry]) => setIsVisible(entry.isIntersecting),\n {\n rootMargin,\n root,\n threshold,\n }\n );\n }, [setIsVisible, rootMargin, root, threshold]);\n\n useEffect(() => {\n if (ref.current) {\n observer.observe(ref.current);\n }\n return () => {\n observer.disconnect();\n };\n }, [observer, ref]);\n\n return isVisible;\n};\n","import {\n MutableRefObject,\n RefCallback,\n RefObject,\n useEffect,\n useRef,\n} from \"react\";\n\nexport const useForwardedRef = <T>(\n ref: RefCallback<T> | MutableRefObject<T> | null\n): RefObject<NonNullable<T>> => {\n const innerRef = useRef<T>(null) as MutableRefObject<NonNullable<T>>;\n\n useEffect(() => {\n if (!ref) return;\n if (typeof ref === \"function\") {\n ref(innerRef.current);\n } else {\n ref.current = innerRef.current;\n }\n });\n\n return innerRef;\n};\n","import { useCallback, useEffect, useRef, useState } from \"react\";\n\nexport const useTimeoutState = <S>(\n initialValue: S,\n defaultTimeout: number,\n clearTimeoutOnSetValue = true\n): [S, (v: S) => void] => {\n const [value, setValue] = useState<S>(initialValue);\n const timeoutRef = useRef<NodeJS.Timeout>();\n\n const wrappedSetter = useCallback(\n (newValue: S, timeout = defaultTimeout) => {\n setValue(newValue);\n if (clearTimeoutOnSetValue) {\n clearTimeout(timeoutRef.current!);\n }\n timeoutRef.current = setTimeout(() => setValue(initialValue), timeout);\n },\n [defaultTimeout, clearTimeoutOnSetValue, initialValue]\n );\n\n useEffect(() => {\n return () => {\n clearTimeout(timeoutRef.current!);\n };\n }, []);\n\n return [value, wrappedSetter];\n};\n","export const exhaustSwitchCaseElseThrow = (arg: never) => {\n throw new Error(`Switch unhandled case: ${arg}`);\n};\n\nexport const exhaustSwitchCase = <T>(_arg: never, fallback: T) => {\n return fallback;\n};\n","export const truthyKeysAsList = (r: Record<string, boolean>): Array<string> =>\n Object.keys(r).filter((key) => r[key]);\n","export const parseFloatElseUndefined = (s: string): number | undefined => {\n try {\n const f = parseFloat(s);\n if (isNaN(f)) {\n return undefined;\n }\n if (f == null) {\n return undefined;\n }\n return f;\n } catch (e) {}\n return undefined;\n};\n\nexport const parseIntElseUndefined = (s: string): number | undefined => {\n try {\n const f = parseInt(s, 10);\n if (isNaN(f)) {\n return undefined;\n }\n if (f == null) {\n return undefined;\n }\n return f;\n } catch (e) {}\n return undefined;\n};\n"],"names":["styles"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmBA,IAAM,sBAAsB,GAAG,MAAM,CAAC,EAAE,qLAA6B,sEAI/C,EAAsB,eAChC,EACoD,cACrD,EACqD,KAC/D,KALqB,UAAC,KAAK,IAAK,OAAA,KAAK,CAAC,KAAK,GAAA,EAChC,UAAC,KAAK;IACd,OAAA,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,IAAI,IAAI,MAAM,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK;AAA5D,CAA4D,EACrD,UAAC,KAAK;IACb,OAAA,KAAK,CAAC,QAAQ,GAAG,KAAK,CAAC,KAAK,IAAI,KAAK,GAAG,KAAK,CAAC,IAAI,IAAI,MAAM;AAA5D,CAA4D,CAC/D,CAAC;IAEW,aAAa,GAAG,UAAU,CACrC,UACE,EAKC,EACD,GAAG;QALD,aAAkC,EAAlC,KAAK,mBAAG,0BAA0B,KAAA,EAClC,YAAa,EAAb,IAAI,mBAAG,MAAM,KAAA,EACb,aAAa,EAAb,KAAK,mBAAG,KAAK,KAAA,EACb,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA;IAIlB,QACE,oBAAC,sBAAsB,IACrB,KAAK,EAAE,KAAK,EACZ,IAAI,EAAE,IAAI,EACV,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,GAAG,EAAE,GAAG,GACR,EACF;AACJ,CAAC,EACD;;;ACaF,IAAM,gBAAgB,GAAG,MAAM,CAAC,MAAM,uUAAuB,+FAK7C,EAA8B,OAC1C,EAAoD,sBAGlD,EAAwD,SACxD,EAA0D,0BAG1D,EAC6C,0CAI7C,EAGmD,QACnD,EAA0D,WAE5D,EAAgD,MAChD,EAAoD,MACpD,EACqD,IACxD,KAvBe,UAAC,EAAc;QAAZ,UAAU,gBAAA;IAAO,OAAA,UAAU;AAAV,CAAU,EAC1C,UAAC,EAAW;QAAT,OAAO,aAAA;IAAO,QAAC,OAAO,GAAG,kBAAkB,GAAG,EAAE;AAAlC,CAAmC,EAGlD,UAAC,KAAK,IAAK,QAAC,KAAK,CAAC,cAAc,GAAG,eAAe,GAAG,EAAE,IAAC,EACxD,UAAC,EAAmB;QAAjB,eAAe,qBAAA;IAAO,OAAA,iBAAe,eAAe,MAAG;AAAjC,CAAiC,EAG1D,UAAC,EAAyB;QAAvB,qBAAqB,2BAAA;IACxB,OAAA,CAAC,qBAAqB,GAAG,eAAe,GAAG,EAAE;AAA7C,CAA6C,EAI7C,UAAC,EAAyB;QAAvB,qBAAqB,2BAAA;IACxB,OAAA,qBAAqB;UACjB,EAAE;UACF,+CAA+C;AAFnD,CAEmD,EACnD,UAAC,EAAmB;QAAjB,eAAe,qBAAA;IAAO,OAAA,iBAAe,eAAe,MAAG;AAAjC,CAAiC,EAE5D,UAAC,EAAS;QAAP,KAAK,WAAA;IAAO,QAAC,KAAK,GAAG,YAAU,KAAK,MAAG,GAAG,EAAE;AAAhC,CAAiC,EAChD,UAAC,EAAU;QAAR,MAAM,YAAA;IAAO,QAAC,MAAM,GAAG,aAAW,MAAM,MAAG,GAAG,EAAE;AAAnC,CAAoC,EACpD,UAAC,EAAgB;QAAd,YAAY,kBAAA;IACf,OAAA,YAAY,GAAG,oBAAkB,YAAY,MAAG,GAAG,EAAE;AAArD,CAAqD,CACxD,CAAC;IAEW,SAAS,GAAG,UAAU,CACjC,UACE,EAeC,EACD,GAAG;IAfD,IAAA,qBAAqB,2BAAA,EACrB,OAAO,aAAA,EACP,UAAU,gBAAA,EACV,OAAO,aAAA,EACP,qBAAqB,2BAAA,EACrB,cAAc,oBAAA,EACd,cAAc,oBAAA,EACd,QAAQ,cAAA,EACR,QAAQ,cAAA,EACR,kBAA0B,EAA1B,UAAU,mBAAG,aAAa,KAAA,EAC1B,eAAe,qBAAA,EACf,eAAe,qBAAA,EACf,YAAe,EAAf,IAAI,mBAAG,QAAQ,KAAA,EACZ,SAAS,cAdd,8MAeC,CADa;IAId,IAAM,eAAe,GAAG,CAAC,EAAE,OAAO,IAAI,UAAU,CAAC,CAAC;IAElD,QACE,oBAAC,gBAAgB,aACf,cAAc,EAAE,cAAc,EAC9B,KAAK,EAAE,OAAO,EACd,QAAQ,EAAE,QAAQ,EAClB,qBAAqB,EAAE,qBAAqB,EAC5C,OAAO,EAAE,OAAO,EAChB,aAAa,EAAE,UAAU,EACzB,qBAAqB,EAAE,qBAAqB,EAC5C,OAAO,EAAE,eAAe,IAAI,CAAC,cAAc,EAC3C,GAAG,EAAE,GAAG,EACR,UAAU,EAAE,UAAU,EACtB,eAAe,EAAE,eAAe,EAChC,eAAe,EAAE,eAAe,EAChC,IAAI,EAAE,IAAI,IACN,SAAS,GAEZ,QAAQ,CACQ,EACnB;AACJ,CAAC,EACD;;;ICxIW,uBAAuB,GAAG,UACrC,GAAiC;IAEjC,IAAI,GAAG,IAAI,IAAI,EAAE;QACf,OAAO,CAAC,CAAC;KACV;IACD,IAAI,OAAO,GAAG,KAAK,SAAS,EAAE;QAC5B,OAAO,GAAG,GAAG,CAAC,GAAG,CAAC,CAAC;KACpB;IACD,OAAO,GAAG,CAAC;AACb;;AC0DA,IAAM,OAAO,GAAG;IACd,GAAG,EAAE,wBAAwB;IAC7B,OAAO,EAAE,4BAA4B;IACrC,KAAK,EAAE,0BAA0B;CAClC,CAAC;AAuEF,IAAM,aAAa,GAAG;IACpB,SAAS;IACT,QAAQ;IACR,OAAO;IACP,QAAQ;IACR,UAAU;IACV,SAAS;CACV,CAAC;AAEF,IAAM,mBAAmB,GAAG,UAAC,QAAgB;IAC3C,OAAA,aAAa,CAAC,QAAQ,CAAC,QAAQ,CAAC;AAAhC,CAAgC,CAAC;AAEnC,IAAM,GAAG,GAAG,MAAM,CAAC;IACjB,GAAG,EAAE;QACH,QAAQ,EAAE,eAAe;QACzB,SAAS,EAAE,UAAC,GAAY,IAAK,QAAC,GAAG,GAAG,KAAK,GAAG,QAAQ,IAAC;KACtD;IACD,MAAM,EAAE;;QAEN,QAAQ,EAAE,kBAAkB;QAC5B,SAAS,EAAE,uBAAuB;KACnC;IACD,OAAO,EAAE;;QAEP,QAAQ,EAAE,mBAAmB;QAC7B,SAAS,EAAE,uBAAuB;KACnC;IACD,MAAM,EAAE;QACN,QAAQ,EAAE,WAAW;QACrB,SAAS,EAAE,UAAC,KAAK,YAAK,OAAA,MAAA,OAAO,CAAC,KAAK,CAAC,mCAAI,KAAK,CAAA,EAAA;KAC9C;CACF,CAAC,CAAC;IAIU,GAAG,GAAG,MAAM,CAAC,KAAK,EAAE;IAC/B,iBAAiB,EAAE,UAAC,QAAQ;QAC1B,OAAA,OAAO,QAAQ,KAAK,QAAQ;cACxB,mBAAmB,CAAC,QAAQ,CAAC;kBAC3B,KAAK;kBACL,WAAW,CAAC,QAAQ,CAAC;cACvB,KAAK;KAAA;CACZ,CAAC,+nBAAY,+HAMV,EAAG,OACH,EAAU,OACV,EAAM,OACN,EAAW,OACX,EAAU,OACV,EAAS,OACT,EAAY,OACZ,EAAW,OACX,EAAY,OACZ,EAAW,OACX,EAAW,OACX,EAAS,OACT,EAAO,OACP,EAAQ,OACR,EAAQ,OACR,EAAM,OACN,EAAM,OACN,EAAI,OACJ,EAAK,OACL,EAAG,OACH,EAAM,6JAKJ,EACwD,QACxD,EAAmE,yBAGnE,EACwD,QACxD,EAAmE,gCAGnE,EACoE,QACpE,EACwD,SAE7D,KAxCG,GAAG,EACH,UAAU,EACV,MAAM,EACN,WAAW,EACX,UAAU,EACV,SAAS,EACT,YAAY,EACZ,WAAW,EACX,YAAY,EACZ,WAAW,EACX,WAAW,EACX,SAAS,EACT,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,MAAM,EACN,IAAI,EACJ,KAAK,EACL,GAAG,EACH,MAAM,EAKJ,UAAC,EAAmB;QAAjB,eAAe,qBAAA;IAClB,OAAA,eAAe,GAAG,iBAAe,eAAe,MAAG,GAAG,EAAE;AAAxD,CAAwD,EACxD,UAAC,EAAe;QAAb,WAAW,iBAAA;IAAO,QAAC,WAAW,GAAG,aAAW,WAAW,MAAG,GAAG,EAAE;AAA7C,CAA8C,EAGnE,UAAC,EAAmB;QAAjB,eAAe,qBAAA;IAClB,OAAA,eAAe,GAAG,iBAAe,eAAe,MAAG,GAAG,EAAE;AAAxD,CAAwD,EACxD,UAAC,EAAe;QAAb,WAAW,iBAAA;IAAO,QAAC,WAAW,GAAG,aAAW,WAAW,MAAG,GAAG,EAAE;AAA7C,CAA8C,EAGnE,UAAC,EAAyB;QAAvB,qBAAqB,2BAAA;IACxB,OAAA,qBAAqB,GAAG,iBAAe,qBAAqB,MAAG,GAAG,EAAE;AAApE,CAAoE,EACpE,UAAC,EAAqB;QAAnB,iBAAiB,uBAAA;IACpB,OAAA,iBAAiB,GAAG,aAAW,iBAAiB,MAAG,GAAG,EAAE;AAAxD,CAAwD,EAE5D;;;ICnOW,MAAM,GAAG,UAAU,CAA2B,SAAS,MAAM,CACxE,KAAK,EACL,GAAG;IAEH,OAAO,oBAAC,GAAG,aAAC,GAAG,EAAE,GAAG,IAAM,KAAK,EAAI,CAAC;AACtC,CAAC;;ICIY,kBAAkB,GAAG,UAAC,IAAiB;IAC5C,IAAA,KASF,IAAI,CAAC,qBAAqB,EAAE,EAR9B,CAAC,OAAA,EACD,CAAC,OAAA,EACD,KAAK,WAAA,EACL,MAAM,YAAA,EACN,MAAM,YAAA,EACN,GAAG,SAAA,EACH,IAAI,UAAA,EACJ,KAAK,WACyB,CAAC;IAEjC,OAAO;QACL,KAAK,OAAA;QACL,MAAM,QAAA;QACN,GAAG,KAAA;QACH,IAAI,MAAA;QACJ,CAAC,GAAA;QACD,CAAC,GAAA;QACD,KAAK,OAAA;QACL,MAAM,QAAA;KACP,CAAC;AACJ,EAAE;AAEF,IAAM,iBAAiB,GAAG,UACxB,CAAoB,EACpB,CAAoB;IAEpB,OAAA,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACX,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC;QACX,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK;QACnB,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QACrB,CAAC,CAAC,MAAM,KAAK,CAAC,CAAC,MAAM;QACrB,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,GAAG;QACf,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI;QACjB,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,KAAK;AAPnB,CAOmB,CAAC;IAET,oBAAoB,GAAG,UAClC,GAA2B,EAC3B,eAAyD;IAEnD,IAAA,KAA8B,QAAQ,EAAiC,EAAtE,UAAU,QAAA,EAAE,aAAa,QAA6C,CAAC;IAE9E,IAAM,gBAAgB,GAAG,WAAW,CAAC;QACnC,MAAM,CAAC,qBAAqB,CAAC;YAC3B,IAAI,GAAG,CAAC,OAAO,EAAE;gBACf,IAAM,aAAa,GAAG,kBAAkB,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;gBACtD,IAAI,CAAC,UAAU,IAAI,CAAC,iBAAiB,CAAC,UAAU,EAAE,aAAa,CAAC,EAAE;oBAChE,IAAI,eAAe,EAAE;wBACnB,eAAe,CAAC,aAAa,CAAC,CAAC;qBAChC;iBACF;gBACD,aAAa,CAAC,aAAa,CAAC,CAAC;aAC9B;SACF,CAAC,CAAC;KACJ,EAAE,CAAC,GAAG,EAAE,UAAU,EAAE,aAAa,EAAE,eAAe,CAAC,CAAC,CAAC;IAEtD,eAAe,CAAC;QACd,gBAAgB,EAAE,CAAC;KACpB,EAAE,CAAC,gBAAgB,CAAC,CAAC,CAAC;IAEvB,OAAO;QACL,UAAU,YAAA;KACX,CAAC;AACJ;;ICjEa,cAAc,GAAG,UAAU,CACtC,SAAS,cAAc,CAAC,EAAyB,EAAE,GAAG;;IAA5B,IAAA,QAAQ,cAAA,EAAK,QAAQ,cAAvB,YAAyB,CAAF;IAC7C,IAAM,QAAQ,GAAG,MAAM,CAAiB,IAAI,CAAC,CAAC;IAC9C,IAAM,UAAU,GAAG,MAAC,GAAiC,mCAAI,QAAQ,CAAC;IAClE,oBAAoB,CAAC,UAAU,EAAE,QAAQ,CAAC,CAAC;IAE3C,OAAO,oBAAC,GAAG,eAAK,QAAQ,IAAE,GAAG,EAAE,GAAG,IAAI,CAAC;AACzC,CAAC;;ICfU,GAAG,GAAG,UAAU,CAA2B,SAAS,GAAG,CAClE,KAAK,EACL,GAAG;IAEH,OAAO,oBAAC,GAAG,aAAC,GAAG,QAAC,GAAG,EAAE,GAAG,IAAM,KAAK,EAAI,CAAC;AAC1C,CAAC;;ICAY,MAAM,GAAG,UAAU,CAA8B,SAAS,MAAM,CAC3E,EAAqB,EACrB,GAAG;IADD,IAAA,WAAO,EAAP,GAAG,mBAAG,CAAC,KAAA,EAAK,KAAK,cAAnB,OAAqB,CAAF;IAGnB,OAAO,oBAAC,GAAG,aAAC,MAAM,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAM,KAAK,EAAI,CAAC;AACnD,CAAC;;ICLY,OAAO,GAAG,UAAU,CAC/B,SAAS,OAAO,CAAC,EAAqB,EAAE,GAAG;IAAxB,IAAA,WAAO,EAAP,GAAG,mBAAG,CAAC,KAAA,EAAK,KAAK,cAAnB,OAAqB,CAAF;IAClC,OAAO,oBAAC,GAAG,aAAC,OAAO,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAM,KAAK,EAAI,CAAC;AACpD,CAAC;;ACFH,IAAM,UAAU,GAAG,MAAM,CAAC,GAAG,+OAAA,4KAK5B,IAAA,CAAC;IAEW,KAAK,GAA0B,UAAC,EAK5C;;QAJC,YAAY,EAAZ,IAAI,mBAAG,KAAK,KAAA,EACZ,kBAAkB,EAAlB,UAAU,mBAAG,KAAK,KAAA,EAClB,WAAO,EAAP,GAAG,mBAAG,CAAC,KAAA,EACP,gBAAgB,EAAhB,QAAQ,mBAAG,KAAK,KAAA;IAEhB,IAAM,IAAI,GAAG,GAAG,IAAI,IAAI,GAAG,GAAG,GAAG,CAAC,CAAC,CAAC;IAEpC,QACE,oBAAC,UAAU,IACT,KAAK;YACH,GAAC,gBAA0B,IAAG,IAAI;YAClC,SAAM,GAAE,UAAU,GAAG,CAAC,GAAG,SAAS;YAClC,QAAK,GAAE,QAAQ,GAAG,CAAC,GAAG,SAAS;kBAEjC,EACF;AACJ,EAAE;;;IC1BW,IAAI,GAAoB,UAAC,EAA0B;QAAxB,QAAQ,cAAA,EAAE,IAAI,UAAA,EAAE,MAAM,YAAA;IAC5D,IAAI,IAAI,EAAE;QACR,OAAO,0CAAG,MAAM,CAAC,QAAQ,CAAC,CAAI,CAAC;KAChC;IACD,OAAO,0CAAG,QAAQ,CAAI,CAAC;AACzB;;ACbA,SAAS,WAAW,CAAC,GAAG,EAAE,GAAG,EAAE;AAC/B,EAAE,KAAK,GAAG,KAAK,KAAK,CAAC,GAAG,GAAG,GAAG,EAAE,CAAC;AACjC,EAAE,IAAI,QAAQ,GAAG,GAAG,CAAC,QAAQ,CAAC;AAC9B;AACA,EAAE,IAAI,CAAC,GAAG,IAAI,OAAO,QAAQ,KAAK,WAAW,EAAE,EAAE,OAAO,EAAE;AAC1D;AACA,EAAE,IAAI,IAAI,GAAG,QAAQ,CAAC,IAAI,IAAI,QAAQ,CAAC,oBAAoB,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;AACvE,EAAE,IAAI,KAAK,GAAG,QAAQ,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;AAC9C,EAAE,KAAK,CAAC,IAAI,GAAG,UAAU,CAAC;AAC1B;AACA,EAAE,IAAI,QAAQ,KAAK,KAAK,EAAE;AAC1B,IAAI,IAAI,IAAI,CAAC,UAAU,EAAE;AACzB,MAAM,IAAI,CAAC,YAAY,CAAC,KAAK,EAAE,IAAI,CAAC,UAAU,CAAC,CAAC;AAChD,KAAK,MAAM;AACX,MAAM,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAC9B,KAAK;AACL,GAAG,MAAM;AACT,IAAI,IAAI,CAAC,WAAW,CAAC,KAAK,CAAC,CAAC;AAC5B,GAAG;AACH;AACA,EAAE,IAAI,KAAK,CAAC,UAAU,EAAE;AACxB,IAAI,KAAK,CAAC,UAAU,CAAC,OAAO,GAAG,GAAG,CAAC;AACnC,GAAG,MAAM;AACT,IAAI,KAAK,CAAC,WAAW,CAAC,QAAQ,CAAC,cAAc,CAAC,GAAG,CAAC,CAAC,CAAC;AACpD,GAAG;AACH;;;;;;ICPa,IAAI,GAAG,UAAU,CAC5B,UACE,EAUC,EACD,GAAG;IAVD,IAAA,QAAQ,cAAA,EACR,eAAoB,EAApB,OAAO,mBAAG,UAAU,KAAA,EACpB,YAAe,EAAf,IAAI,mBAAG,QAAQ,KAAA,EACf,SAAS,eAAA,EACT,KAAK,WAAA,EACL,UAAU,gBAAA,EACV,UAAU,gBAAA,EACV,KAAK,WAAA,EACF,SAAS,cATd,0FAUC,CADa;IAId,QACE,uCACE,SAAS,EAAE,EAAE,CAACA,QAAM,CAAC,IAAI,EAAEA,QAAM,CAAC,OAAO,CAAC,EAAEA,QAAM,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC,EACpE,GAAG,EAAE,GAAG,EACR,KAAK,aAAI,KAAK,OAAA,EAAE,UAAU,YAAA,EAAE,UAAU,YAAA,IAAK,KAAK,KAC5C,SAAS,GAEZ,QAAQ,CACJ,EACP;AACJ,CAAC,EACD;IAEW,GAAG,GAAG;;AC3CnB;;;IAGa,SAAS,GAAsC,UAAC,KAAK;IAChE,OAAO,oBAAC,IAAI,aAAC,IAAI,EAAE,OAAO,IAAM,KAAK,EAAI,CAAC;AAC5C;;ACLA;;;IAGa,WAAW,GAAsC,UAAC,KAAK;IAClE,OAAO,oBAAC,IAAI,aAAC,IAAI,EAAE,SAAS,IAAM,KAAK,EAAI,CAAC;AAC9C;;ACLA;;;IAGa,YAAY,GAAsC,UAAC,KAAK;IACnE,OAAO,oBAAC,IAAI,aAAC,IAAI,EAAE,QAAQ,IAAM,KAAK,EAAI,CAAC;AAC7C;;ACLA;;;IAGa,SAAS,GAAsC,UAAC,KAAK;IAChE,OAAO,oBAAC,IAAI,aAAC,IAAI,EAAE,OAAO,IAAM,KAAK,EAAI,CAAC;AAC5C;;;;;;ICOa,OAAO,GAAG,UAAU,CAC/B,UACE,EASC,EACD,GAAG;IATD,IAAA,eAAc,EAAd,OAAO,mBAAG,IAAI,KAAA,EACd,SAAS,eAAA,EACT,KAAK,WAAA,EACL,UAAU,gBAAA,EACV,KAAK,WAAA,EACL,QAAQ,cAAA,EACR,EAAE,QAAA,EACC,MAAM,cARX,0EASC,CADU;IAIX,IAAM,OAAO,GAAG,EAAE,aAAF,EAAE,cAAF,EAAE,GAAI,OAAO,CAAC;IAC9B,QACE,oBAAC,OAAO,aACN,SAAS,EAAE,EAAE,CAAC,MAAM,CAAC,OAAO,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,SAAS,CAAC,EACzD,KAAK,aAAI,KAAK,OAAA,EAAE,UAAU,YAAA,IAAK,KAAK,GACpC,GAAG,EAAE,GAAG,IACJ,MAAM,GAET,QAAQ,CACD,EACV;AACJ,CAAC;;ACrCH;;;IAGa,UAAU,GAA4C,UAAC,KAAK;IACvE,OAAO,oBAAC,OAAO,aAAC,OAAO,EAAE,IAAI,IAAM,KAAK,EAAI,CAAC;AAC/C;;ACJA,IAAM,iBAAiB,GAAG,UAAI,CAAI,EAAE,CAAI,IAAK,OAAA,CAAC,KAAK,CAAC,GAAA,CAAC;IAExC,WAAW,GAAG,UACzB,IAAc,EACd,OAAiC,EACjC,UAA4D;IAA5D,2BAAA,EAAA,8BAA4D;IAE5D,IAAM,GAAG,GAAG,WAAW,CACrB,UAAC,IAAO;QACN,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,GAAA,CAAC,EAAE;YAC1C,OAAO,iCAAK,IAAI,UAAE,IAAI,UAAE,CAAC;SAC1B;KACF,EACD,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAC5B,CAAC;IAEF,IAAM,WAAW,GAAG,WAAW,CAC7B,UAAC,KAAe;QACd,OAAO,CACL,KAAK,CAAC,MAAM,CAAC,UAAC,IAAI,EAAE,IAAI;YACtB,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,GAAA,CAAC,EAAE;gBAC1C,uCAAW,IAAI,UAAE,IAAI,UAAE;aACxB;YACD,OAAO,IAAI,CAAC;SACb,EAAE,IAAI,CAAC,CACT,CAAC;KACH,EACD,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAC5B,CAAC;IAEF,IAAM,MAAM,GAAG,WAAW,CACxB,UAAC,IAAO;QACN,IAAM,KAAK,GAAG,IAAI,CAAC,SAAS,CAAC,UAAC,CAAC,IAAK,OAAA,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,GAAA,CAAC,CAAC;QACzD,IAAI,KAAK,IAAI,CAAC,EAAE;YACd,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,UAAC,CAAC,EAAE,CAAC,IAAK,OAAA,CAAC,KAAK,KAAK,GAAA,CAAC,CAAC,CAAC;SAC7C;KACF,EACD,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAC5B,CAAC;IAEF,IAAM,cAAc,GAAG,WAAW,CAChC,UAAC,KAAe;QACd,OAAO,CAAC,IAAI,CAAC,MAAM,CAAC,UAAC,IAAI,IAAK,OAAA,CAAC,KAAK,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,GAAA,CAAC,GAAA,CAAC,CAAC,CAAC;KACzE,EACD,CAAC,IAAI,EAAE,OAAO,EAAE,UAAU,CAAC,CAC5B,CAAC;IAEF,IAAM,MAAM,GAAG,WAAW,CACxB,UAAC,IAAO;QACN,IAAM,KAAK,GAAG,IAAI,CAAC,IAAI,CAAC,UAAC,CAAC,IAAK,OAAA,UAAU,CAAC,CAAC,EAAE,IAAI,CAAC,GAAA,CAAC,CAAC;QACpD,IAAI,KAAK,EAAE;YACT,MAAM,CAAC,IAAI,CAAC,CAAC;SACd;aAAM;YACL,GAAG,CAAC,IAAI,CAAC,CAAC;SACX;KACF,EACD,CAAC,IAAI,EAAE,GAAG,EAAE,MAAM,EAAE,UAAU,CAAC,CAChC,CAAC;IAEF,OAAO;QACL,GAAG,KAAA;QACH,WAAW,aAAA;QACX,MAAM,QAAA;QACN,cAAc,gBAAA;QACd,MAAM,QAAA;KACP,CAAC;AACJ;;IC9Da,UAAU,GAAG,UAAC,YAAmB;IACtC,IAAA,KAAoB,QAAQ,CAAC,YAAY,CAAC,EAAzC,KAAK,QAAA,EAAE,QAAQ,QAA0B,CAAC;IAEjD,IAAM,OAAO,GAAG,WAAW,CAAC;QAC1B,QAAQ,CAAC,IAAI,CAAC,CAAC;KAChB,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,IAAM,QAAQ,GAAG,WAAW,CAAC;QAC3B,QAAQ,CAAC,KAAK,CAAC,CAAC;KACjB,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,IAAM,MAAM,GAAG,WAAW,CAAC;QACzB,QAAQ,CAAC,UAAC,CAAC,IAAK,OAAA,CAAC,CAAC,GAAA,CAAC,CAAC;KACrB,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,OAAO,CAAC,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;AAC5C;;ICtBa,WAAW,GAAG,UAAI,KAAQ,EAAE,KAAa;;IAE9C,IAAA,KAAsC,QAAQ,CAAI,KAAK,CAAC,EAAvD,cAAc,QAAA,EAAE,iBAAiB,QAAsB,CAAC;IAE/D,SAAS,CAAC;;QAER,IAAM,OAAO,GAAG,UAAU,CAAC;YACzB,iBAAiB,CAAC,KAAK,CAAC,CAAC;SAC1B,EAAE,KAAK,CAAC,CAAC;;;;QAKV,OAAO;YACL,YAAY,CAAC,OAAO,CAAC,CAAC;SACvB,CAAC;KACH,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAEnB,OAAO,cAAc,CAAC;AACxB;;ICnBa,eAAe,GAAG,UAAC,KAAc,EAAE,KAAa;IACrD,IAAA,KAAsC,QAAQ,CAAU,KAAK,CAAC,EAA7D,cAAc,QAAA,EAAE,iBAAiB,QAA4B,CAAC;IAErE,SAAS,CAAC;QACR,IAAI,KAAK,EAAE;YACT,iBAAiB,CAAC,IAAI,CAAC,CAAC;SACzB;QAED,IAAM,OAAO,GAAG,UAAU,CAAC;YACzB,IAAI,CAAC,KAAK,EAAE;gBACV,iBAAiB,CAAC,KAAK,CAAC,CAAC;aAC1B;SACF,EAAE,KAAK,CAAC,CAAC;QAEV,OAAO;YACL,YAAY,CAAC,OAAO,CAAC,CAAC;SACvB,CAAC;KACH,EAAE,CAAC,KAAK,EAAE,KAAK,CAAC,CAAC,CAAC;IAEnB,OAAO,cAAc,CAAC;AACxB;;ACpBA,IAAI,EAAE,GAAG,CAAC,CAAC;AACX,IAAM,KAAK,GAAG,UAAC,aAAsB;IACnC,OAAA,YAAS,aAAa,GAAG,aAAa,GAAG,GAAG,GAAG,EAAE,IAAG,EAAE,EAAI;AAA1D,CAA0D,CAAC;IAEhD,QAAQ,GAAG,UAAC,aAAsB;IACvC,IAAA,KAAc,QAAQ,CAAgB,cAAM,OAAA,KAAK,CAAC,aAAa,CAAC,GAAA,CAAC,EAAhE,EAAE,QAAA,EAAE,KAAK,QAAuD,CAAC;IACxE,SAAS,CAAC,cAAM,OAAA,KAAK,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,GAAA,EAAE,CAAC,aAAa,CAAC,CAAC,CAAC;IAC9D,OAAO,EAAG,CAAC;AACb;;ICJa,gBAAgB,GAAG,UAC9B,GAA2B,EAC3B,SAAqB,EACrB,OAAiC;;IAGjC,IAAM,YAAY,GAAG,MAAM,EAA4B,CAAC;;;;;IAMxD,SAAS,CAAC;QACR,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC;KAChC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,SAAS,CAAC;;QAER,IAAM,WAAW,GAAG,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,gBAAgB,CAAC;QAChE,IAAI,CAAC,WAAW;YAAE,OAAO;;QAGzB,IAAM,aAAa,GAA6B,UAAC,KAAK;YACpD,IAAI,YAAY,CAAC,OAAO,EAAE;gBACxB,OAAO,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;aACpC;SACF,CAAC;;QAGF,IAAI,CAAC,GAAG,CAAC,OAAO,EAAE;YAChB,OAAO;SACR;QAED,IAAM,OAAO,GAAG,GAAG,CAAC,OAAO,CAAC;QAC5B,OAAO,CAAC,gBAAgB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;;QAGnD,OAAO;YACL,IAAI,OAAO,EAAE;gBACX,OAAO,CAAC,mBAAmB,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;aACvD;SACF,CAAC;KACH,EAAE,CAAC,SAAS,EAAE,GAAG,CAAC,CAAC,CAAC;AACvB;;IC5Ca,eAAe,GAAG,UAC7B,GAAwB;IAElB,IAAA,KAA6C,UAAU,CAAC,KAAK,CAAC,EAA7D,SAAS,QAAA,EAAE,YAAY,QAAA,EAAE,eAAe,QAAqB,CAAC;IAErE,SAAS,CAAC;QACR,IAAI,QAAQ,CAAC,aAAa,KAAK,QAAQ,CAAC,WAAW,CAAC,GAAG,CAAC,OAAO,CAAC,EAAE;YAChE,YAAY,EAAE,CAAC;SAChB;aAAM;YACL,eAAe,EAAE,CAAC;SACnB;KACF,EAAE,CAAC,GAAG,EAAE,eAAe,EAAE,YAAY,CAAC,CAAC,CAAC;IAEzC,gBAAgB,CAAC,GAAG,EAAE,OAAO,EAAE,YAAY,CAAC,CAAC;IAC7C,gBAAgB,CAAC,GAAG,EAAE,MAAM,EAAE,eAAe,CAAC,CAAC;IAE/C,IAAM,KAAK,GAAG,WAAW,CAAC;QACxB,IAAI,GAAG,CAAC,OAAO,EAAE;YACf,GAAG,CAAC,OAAO,CAAC,KAAK,EAAE,CAAC;SACrB;KACF,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV,IAAM,IAAI,GAAG,WAAW,CAAC;QACvB,IAAI,GAAG,CAAC,OAAO,EAAE;YACf,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,CAAC;SACpB;KACF,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;IAEV,OAAO,EAAE,SAAS,WAAA,EAAE,KAAK,OAAA,EAAE,IAAI,MAAA,EAAE,CAAC;AACpC;;IC9Ba,cAAc,GAAG,UAC5B,GAAwB;IAElB,IAAA,KAAmD,UAAU,CAAC,KAAK,CAAC,EAAnE,WAAW,QAAA,EAAE,cAAc,QAAA,EAAE,iBAAiB,QAAqB,CAAC;IAE3E,gBAAgB,CAAC,GAAG,EAAE,WAAW,EAAE,cAAc,CAAC,CAAC;IACnD,gBAAgB,CAAC,GAAG,EAAE,UAAU,EAAE,iBAAiB,CAAC,CAAC;IAErD,OAAO,WAAW,CAAC;AACrB;;ICTa,iBAAiB,GAAG,UAC/B,GAAwB;IAElB,IAAA,KAA4D,UAAU,CAC1E,KAAK,CACN,EAFM,cAAc,QAAA,EAAE,iBAAiB,QAAA,EAAE,oBAAoB,QAE7D,CAAC;IAEF,gBAAgB,CAAC,GAAG,EAAE,YAAY,EAAE,iBAAiB,CAAC,CAAC;IACvD,gBAAgB,CAAC,GAAG,EAAE,YAAY,EAAE,oBAAoB,CAAC,CAAC;IAE1D,OAAO,cAAc,CAAC;AACxB;;ICZa,sBAAsB,GAAG,UACpC,IAAiC,EACjC,OAAiD;IAEjD,IAAM,YAAY,GAAG,MAAM,CAA2C;QACpE,OAAO;KACR,CAAC,CAAC;IAEH,SAAS,CAAC;QACR,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC;KAChC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,SAAS,CAAC;QACR,IAAM,QAAQ,GAAG,UAAC,KAA8B;;YAG9C,IAAM,cAAc,GAAG,IAAI;iBACxB,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,GAAG,CAAC,OAAO,GAAA,CAAC;iBAC5B,KAAK,CAAC,UAAC,GAAG;gBACT,OAAO,GAAG,CAAC,OAAO,IAAI,CAAC,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC;aAC3D,CAAC,CAAC;YAEL,IAAI,CAAC,cAAc,EAAE;gBACnB,OAAO;aACR;YAED,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAC7B,CAAC;QAEF,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACjD,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QAElD,OAAO;YACL,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YACpD,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;SACtD,CAAC;;KAEH,oBAAM,IAAI,QAAE,CAAC;AAChB;;ICtCa,iBAAiB,GAAG,UAC/B,GAAyB,EACzB,OAAiD;IAEjD,IAAM,YAAY,GAAG,MAAM,CAA2C;QACpE,OAAO;KACR,CAAC,CAAC;IAEH,SAAS,CAAC;QACR,YAAY,CAAC,OAAO,GAAG,OAAO,CAAC;KAChC,EAAE,CAAC,OAAO,CAAC,CAAC,CAAC;IAEd,SAAS,CAAC;QACR,IAAM,QAAQ,GAAG,UAAC,KAA8B;;YAE9C,IAAI,CAAC,GAAG,CAAC,OAAO,IAAI,GAAG,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,MAAM,CAAC,EAAE;gBACtD,OAAO;aACR;YAED,YAAY,CAAC,OAAO,CAAC,KAAK,CAAC,CAAC;SAC7B,CAAC;QAEF,QAAQ,CAAC,gBAAgB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;QACjD,QAAQ,CAAC,gBAAgB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;QAElD,OAAO;YACL,QAAQ,CAAC,mBAAmB,CAAC,WAAW,EAAE,QAAQ,CAAC,CAAC;YACpD,QAAQ,CAAC,mBAAmB,CAAC,YAAY,EAAE,QAAQ,CAAC,CAAC;SACtD,CAAC;KACH,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC;AACZ;;AC9BA,IAAM,MAAM,GAAG,CAAC,WAAW,EAAE,WAAW,EAAE,SAAS,EAAE,YAAY,EAAE,QAAQ,CAAC,CAAC;IAEhE,oBAAoB,GAAG,UAAC,QAAoB,EAAE,KAAa;IACtE,IAAM,YAAY,GAAG,MAAM,CAAyB;QAClD,OAAO;KACR,CAAC,CAAC;IAEH,SAAS,CAAC;QACR,YAAY,CAAC,OAAO,GAAG,QAAQ,CAAC;KACjC,EAAE,CAAC,QAAQ,CAAC,CAAC,CAAC;IAEf,SAAS,CAAC;QACR,IAAM,YAAY,GAAG,QAAQ,CAAC,YAAY,CAAC,OAAO,EAAE,KAAK,CAAC,CAAC;QAC3D,MAAM,CAAC,OAAO,CAAC,UAAC,KAAK,IAAK,OAAA,MAAM,CAAC,gBAAgB,CAAC,KAAK,EAAE,YAAY,CAAC,GAAA,CAAC,CAAC;QAExE,OAAO;YACL,MAAM,CAAC,OAAO,CAAC,UAAC,KAAK;gBACnB,OAAA,MAAM,CAAC,mBAAmB,CAAC,KAAK,EAAE,YAAY,CAAC;aAAA,CAChD,CAAC;SACH,CAAC;KACH,EAAE,CAAC,KAAK,CAAC,CAAC,CAAC;AACd;;ICtBa,WAAW,GAAG,UACzB,GAAuB,EACvB,OAAkC;IAE5B,IAAA,KAA4B,QAAQ,CAAC,KAAK,CAAC,EAA1C,SAAS,QAAA,EAAE,YAAY,QAAmB,CAAC;IAE5C,IAAA,KAAkC,OAAO,IAAI,EAAE,EAA7C,UAAU,gBAAA,EAAE,IAAI,UAAA,EAAE,SAAS,eAAkB,CAAC;IAEtD,IAAM,QAAQ,GAAG,OAAO,CAAC;QACvB,OAAO,IAAI,oBAAoB,CAC7B,UAAC,EAAO;gBAAN,KAAK,QAAA;YAAM,OAAA,YAAY,CAAC,KAAK,CAAC,cAAc,CAAC;SAAA,EAC/C;YACE,UAAU,YAAA;YACV,IAAI,MAAA;YACJ,SAAS,WAAA;SACV,CACF,CAAC;KACH,EAAE,CAAC,YAAY,EAAE,UAAU,EAAE,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC;IAEhD,SAAS,CAAC;QACR,IAAI,GAAG,CAAC,OAAO,EAAE;YACf,QAAQ,CAAC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;SAC/B;QACD,OAAO;YACL,QAAQ,CAAC,UAAU,EAAE,CAAC;SACvB,CAAC;KACH,EAAE,CAAC,QAAQ,EAAE,GAAG,CAAC,CAAC,CAAC;IAEpB,OAAO,SAAS,CAAC;AACnB;;ICvBa,eAAe,GAAG,UAC7B,GAAgD;IAEhD,IAAM,QAAQ,GAAG,MAAM,CAAI,IAAI,CAAqC,CAAC;IAErE,SAAS,CAAC;QACR,IAAI,CAAC,GAAG;YAAE,OAAO;QACjB,IAAI,OAAO,GAAG,KAAK,UAAU,EAAE;YAC7B,GAAG,CAAC,QAAQ,CAAC,OAAO,CAAC,CAAC;SACvB;aAAM;YACL,GAAG,CAAC,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;SAChC;KACF,CAAC,CAAC;IAEH,OAAO,QAAQ,CAAC;AAClB;;ICrBa,eAAe,GAAG,UAC7B,YAAe,EACf,cAAsB,EACtB,sBAA6B;IAA7B,uCAAA,EAAA,6BAA6B;IAEvB,IAAA,KAAoB,QAAQ,CAAI,YAAY,CAAC,EAA5C,KAAK,QAAA,EAAE,QAAQ,QAA6B,CAAC;IACpD,IAAM,UAAU,GAAG,MAAM,EAAkB,CAAC;IAE5C,IAAM,aAAa,GAAG,WAAW,CAC/B,UAAC,QAAW,EAAE,OAAwB;QAAxB,wBAAA,EAAA,wBAAwB;QACpC,QAAQ,CAAC,QAAQ,CAAC,CAAC;QACnB,IAAI,sBAAsB,EAAE;YAC1B,YAAY,CAAC,UAAU,CAAC,OAAQ,CAAC,CAAC;SACnC;QACD,UAAU,CAAC,OAAO,GAAG,UAAU,CAAC,cAAM,OAAA,QAAQ,CAAC,YAAY,CAAC,GAAA,EAAE,OAAO,CAAC,CAAC;KACxE,EACD,CAAC,cAAc,EAAE,sBAAsB,EAAE,YAAY,CAAC,CACvD,CAAC;IAEF,SAAS,CAAC;QACR,OAAO;YACL,YAAY,CAAC,UAAU,CAAC,OAAQ,CAAC,CAAC;SACnC,CAAC;KACH,EAAE,EAAE,CAAC,CAAC;IAEP,OAAO,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC;AAChC;;IC5Ba,0BAA0B,GAAG,UAAC,GAAU;IACnD,MAAM,IAAI,KAAK,CAAC,4BAA0B,GAAK,CAAC,CAAC;AACnD,EAAE;IAEW,iBAAiB,GAAG,UAAI,IAAW,EAAE,QAAW;IAC3D,OAAO,QAAQ,CAAC;AAClB;;ICNa,gBAAgB,GAAG,UAAC,CAA0B;IACzD,OAAA,MAAM,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,MAAM,CAAC,UAAC,GAAG,IAAK,OAAA,CAAC,CAAC,GAAG,CAAC,GAAA,CAAC;AAAtC;;ICDW,uBAAuB,GAAG,UAAC,CAAS;IAC/C,IAAI;QACF,IAAM,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,CAAC;QACxB,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE;YACZ,OAAO,SAAS,CAAC;SAClB;QACD,IAAI,CAAC,IAAI,IAAI,EAAE;YACb,OAAO,SAAS,CAAC;SAClB;QACD,OAAO,CAAC,CAAC;KACV;IAAC,OAAO,CAAC,EAAE,GAAE;IACd,OAAO,SAAS,CAAC;AACnB,EAAE;IAEW,qBAAqB,GAAG,UAAC,CAAS;IAC7C,IAAI;QACF,IAAM,CAAC,GAAG,QAAQ,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC;QAC1B,IAAI,KAAK,CAAC,CAAC,CAAC,EAAE;YACZ,OAAO,SAAS,CAAC;SAClB;QACD,IAAI,CAAC,IAAI,IAAI,EAAE;YACb,OAAO,SAAS,CAAC;SAClB;QACD,OAAO,CAAC,CAAC;KACV;IAAC,OAAO,CAAC,EAAE,GAAE;IACd,OAAO,SAAS,CAAC;AACnB;;;;"}
|
package/dist/index.js
CHANGED
|
@@ -13,9 +13,29 @@ var lodash = require('lodash');
|
|
|
13
13
|
|
|
14
14
|
function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; }
|
|
15
15
|
|
|
16
|
+
function _interopNamespace(e) {
|
|
17
|
+
if (e && e.__esModule) return e;
|
|
18
|
+
var n = Object.create(null);
|
|
19
|
+
if (e) {
|
|
20
|
+
Object.keys(e).forEach(function (k) {
|
|
21
|
+
if (k !== 'default') {
|
|
22
|
+
var d = Object.getOwnPropertyDescriptor(e, k);
|
|
23
|
+
Object.defineProperty(n, k, d.get ? d : {
|
|
24
|
+
enumerable: true,
|
|
25
|
+
get: function () { return e[k]; }
|
|
26
|
+
});
|
|
27
|
+
}
|
|
28
|
+
});
|
|
29
|
+
}
|
|
30
|
+
n["default"] = e;
|
|
31
|
+
return Object.freeze(n);
|
|
32
|
+
}
|
|
33
|
+
|
|
16
34
|
var styled__default = /*#__PURE__*/_interopDefaultLegacy(styled);
|
|
35
|
+
var React__namespace = /*#__PURE__*/_interopNamespace(React);
|
|
17
36
|
var isPropValid__default = /*#__PURE__*/_interopDefaultLegacy(isPropValid);
|
|
18
37
|
var cx__default = /*#__PURE__*/_interopDefaultLegacy(cx);
|
|
38
|
+
var ReactDOM__namespace = /*#__PURE__*/_interopNamespace(ReactDOM);
|
|
19
39
|
|
|
20
40
|
/*! *****************************************************************************
|
|
21
41
|
Copyright (c) Microsoft Corporation.
|
|
@@ -55,35 +75,33 @@ function __rest(s, e) {
|
|
|
55
75
|
return t;
|
|
56
76
|
}
|
|
57
77
|
|
|
58
|
-
function
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
78
|
+
function __spreadArray(to, from, pack) {
|
|
79
|
+
if (pack || arguments.length === 2) for (var i = 0, l = from.length, ar; i < l; i++) {
|
|
80
|
+
if (ar || !(i in from)) {
|
|
81
|
+
if (!ar) ar = Array.prototype.slice.call(from, 0, i);
|
|
82
|
+
ar[i] = from[i];
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
return to.concat(ar || Array.prototype.slice.call(from));
|
|
64
86
|
}
|
|
87
|
+
|
|
65
88
|
function __makeTemplateObject(cooked, raw) {
|
|
66
89
|
if (Object.defineProperty) { Object.defineProperty(cooked, "raw", { value: raw }); } else { cooked.raw = raw; }
|
|
67
90
|
return cooked;
|
|
68
91
|
}
|
|
69
92
|
|
|
70
|
-
var SeparatorLineComponent = styled__default[
|
|
71
|
-
";\n width: ",
|
|
72
|
-
";\n"])), function (props) { return props.color; }, function (props) {
|
|
93
|
+
var SeparatorLineComponent = styled__default["default"].hr(templateObject_1$3 || (templateObject_1$3 = __makeTemplateObject(["\n display: flex;\n border: 0;\n margin: 0;\n background-color: ", ";\n height: ", ";\n width: ", ";\n"], ["\n display: flex;\n border: 0;\n margin: 0;\n background-color: ", ";\n height: ", ";\n width: ", ";\n"])), function (props) { return props.color; }, function (props) {
|
|
73
94
|
return props.vertical ? props.size || "100%" : props.width || "1px";
|
|
74
95
|
}, function (props) {
|
|
75
96
|
return props.vertical ? props.width || "1px" : props.size || "100%";
|
|
76
97
|
});
|
|
77
98
|
var SeparatorLine = React.forwardRef(function (_a, ref) {
|
|
78
99
|
var _b = _a.color, color = _b === void 0 ? "var(--lhds-color-ui-300)" : _b, _c = _a.size, size = _c === void 0 ? "100%" : _c, _d = _a.width, width = _d === void 0 ? "1px" : _d, _e = _a.vertical, vertical = _e === void 0 ? false : _e;
|
|
79
|
-
return (
|
|
100
|
+
return (React__namespace.createElement(SeparatorLineComponent, { color: color, size: size, width: width, vertical: vertical, ref: ref }));
|
|
80
101
|
});
|
|
81
|
-
var templateObject_1;
|
|
102
|
+
var templateObject_1$3;
|
|
82
103
|
|
|
83
|
-
var ClickableElement = styled__default[
|
|
84
|
-
"\n }\n :focus {\n outline: 0;\n ",
|
|
85
|
-
"\n ", "\n }\n ", "\n ", "\n ",
|
|
86
|
-
"\n"])), function (_a) {
|
|
104
|
+
var ClickableElement = styled__default["default"].button(templateObject_1$2 || (templateObject_1$2 = __makeTemplateObject(["\n display: inline-block;\n user-select: none;\n border: 0;\n padding: 0;\n background: ", ";\n ", "\n\n :hover {\n ", ";\n ", "\n }\n :active {\n ", "\n }\n :focus {\n outline: 0;\n ", "\n ", "\n }\n ", "\n ", "\n ", "\n"], ["\n display: inline-block;\n user-select: none;\n border: 0;\n padding: 0;\n background: ", ";\n ", "\n\n :hover {\n ", ";\n ", "\n }\n :active {\n ", "\n }\n :focus {\n outline: 0;\n ", "\n ", "\n }\n ", "\n ", "\n ", "\n"])), function (_a) {
|
|
87
105
|
var background = _a.background;
|
|
88
106
|
return background;
|
|
89
107
|
}, function (_a) {
|
|
@@ -116,9 +134,9 @@ var ClickableElement = styled__default['default'].button(templateObject_1$1 || (
|
|
|
116
134
|
var Clickable = React.forwardRef(function (_a, ref) {
|
|
117
135
|
var disableFocusHighlight = _a.disableFocusHighlight, onClick = _a.onClick, onDblClick = _a.onDblClick, tooltip = _a.tooltip, disableOpacityOnClick = _a.disableOpacityOnClick, disablePointer = _a.disablePointer, opacityOnHover = _a.opacityOnHover, disabled = _a.disabled, children = _a.children, _b = _a.background, background = _b === void 0 ? "transparent" : _b, hoverBackground = _a.hoverBackground, focusBackground = _a.focusBackground, _c = _a.type, type = _c === void 0 ? "button" : _c, restProps = __rest(_a, ["disableFocusHighlight", "onClick", "onDblClick", "tooltip", "disableOpacityOnClick", "disablePointer", "opacityOnHover", "disabled", "children", "background", "hoverBackground", "focusBackground", "type"]);
|
|
118
136
|
var hasClickHandler = !!(onClick || onDblClick);
|
|
119
|
-
return (
|
|
137
|
+
return (React__namespace.createElement(ClickableElement, __assign({ opacityOnHover: opacityOnHover, title: tooltip, disabled: disabled, disableOpacityOnClick: disableOpacityOnClick, onClick: onClick, onDoubleClick: onDblClick, disableFocusHighlight: disableFocusHighlight, pointer: hasClickHandler && !disablePointer, ref: ref, background: background, hoverBackground: hoverBackground, focusBackground: focusBackground, type: type }, restProps), children));
|
|
120
138
|
});
|
|
121
|
-
var templateObject_1$
|
|
139
|
+
var templateObject_1$2;
|
|
122
140
|
|
|
123
141
|
var booleanOrNumberToNumber = function (num) {
|
|
124
142
|
if (num == null) {
|
|
@@ -166,19 +184,15 @@ var box = styledSystem.system({
|
|
|
166
184
|
transform: function (value) { var _a; return (_a = shadows[value]) !== null && _a !== void 0 ? _a : value; },
|
|
167
185
|
},
|
|
168
186
|
});
|
|
169
|
-
var Box = styled__default[
|
|
187
|
+
var Box = styled__default["default"]("div", {
|
|
170
188
|
shouldForwardProp: function (propName) {
|
|
171
189
|
return typeof propName === "string"
|
|
172
190
|
? isExcludedWebUiProp(propName)
|
|
173
191
|
? false
|
|
174
|
-
: isPropValid__default[
|
|
192
|
+
: isPropValid__default["default"](propName)
|
|
175
193
|
: false;
|
|
176
194
|
},
|
|
177
|
-
})(templateObject_1$
|
|
178
|
-
"\n ", "\n }\n :focus {\n ",
|
|
179
|
-
"\n ", "\n }\n :focus-within {\n ",
|
|
180
|
-
"\n ",
|
|
181
|
-
"\n }\n"])), box, styledSystem.background, styledSystem.border, styledSystem.borderRight, styledSystem.borderLeft, styledSystem.borderTop, styledSystem.borderBottom, styledSystem.borderColor, styledSystem.borderRadius, styledSystem.borderStyle, styledSystem.borderWidth, styledSystem.boxShadow, styledSystem.flexbox, styledSystem.overflow, styledSystem.position, styledSystem.layout, styledSystem.zIndex, styledSystem.left, styledSystem.right, styledSystem.top, styledSystem.bottom, function (_a) {
|
|
195
|
+
})(templateObject_1$1 || (templateObject_1$1 = __makeTemplateObject(["\n --current-spacing: 0;\n --current-indent: 0;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n\n padding: calc(var(--current-spacing) * var(--swui-metrics-spacing))\n calc(var(--current-indent) * var(--swui-metrics-indent));\n :hover {\n ", "\n ", "\n }\n :focus {\n ", "\n ", "\n }\n :focus-within {\n ", "\n ", "\n }\n"], ["\n --current-spacing: 0;\n --current-indent: 0;\n box-sizing: border-box;\n display: flex;\n flex-direction: column;\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n ", ";\n\n padding: calc(var(--current-spacing) * var(--swui-metrics-spacing))\n calc(var(--current-indent) * var(--swui-metrics-indent));\n :hover {\n ", "\n ", "\n }\n :focus {\n ", "\n ", "\n }\n :focus-within {\n ", "\n ", "\n }\n"])), box, styledSystem.background, styledSystem.border, styledSystem.borderRight, styledSystem.borderLeft, styledSystem.borderTop, styledSystem.borderBottom, styledSystem.borderColor, styledSystem.borderRadius, styledSystem.borderStyle, styledSystem.borderWidth, styledSystem.boxShadow, styledSystem.flexbox, styledSystem.overflow, styledSystem.position, styledSystem.layout, styledSystem.zIndex, styledSystem.left, styledSystem.right, styledSystem.top, styledSystem.bottom, function (_a) {
|
|
182
196
|
var hoverBackground = _a.hoverBackground;
|
|
183
197
|
return hoverBackground ? "background: " + hoverBackground + ";" : "";
|
|
184
198
|
}, function (_a) {
|
|
@@ -197,10 +211,10 @@ var Box = styled__default['default']("div", {
|
|
|
197
211
|
var focusWithinBorder = _a.focusWithinBorder;
|
|
198
212
|
return focusWithinBorder ? "border: " + focusWithinBorder + ";" : "";
|
|
199
213
|
});
|
|
200
|
-
var templateObject_1$
|
|
214
|
+
var templateObject_1$1;
|
|
201
215
|
|
|
202
216
|
var Column = React.forwardRef(function Column(props, ref) {
|
|
203
|
-
return
|
|
217
|
+
return React__namespace.createElement(Box, __assign({ ref: ref }, props));
|
|
204
218
|
});
|
|
205
219
|
|
|
206
220
|
var getDimensionObject = function (node) {
|
|
@@ -255,42 +269,42 @@ var ResizeAwareBox = React.forwardRef(function ResizeAwareBox(_a, ref) {
|
|
|
255
269
|
var localRef = React.useRef(null);
|
|
256
270
|
var currentRef = (_b = ref) !== null && _b !== void 0 ? _b : localRef;
|
|
257
271
|
useElementDimensions(currentRef, onResize);
|
|
258
|
-
return
|
|
272
|
+
return React__namespace.createElement(Box, __assign({}, boxProps, { ref: ref }));
|
|
259
273
|
});
|
|
260
274
|
|
|
261
275
|
var Row = React.forwardRef(function Row(props, ref) {
|
|
262
|
-
return
|
|
276
|
+
return React__namespace.createElement(Box, __assign({ row: true, ref: ref }, props));
|
|
263
277
|
});
|
|
264
278
|
|
|
265
279
|
var Indent = React.forwardRef(function Indent(_a, ref) {
|
|
266
280
|
var _b = _a.num, num = _b === void 0 ? 1 : _b, props = __rest(_a, ["num"]);
|
|
267
|
-
return
|
|
281
|
+
return React__namespace.createElement(Box, __assign({ indent: num, ref: ref }, props));
|
|
268
282
|
});
|
|
269
283
|
|
|
270
284
|
var Spacing = React.forwardRef(function Spacing(_a, ref) {
|
|
271
285
|
var _b = _a.num, num = _b === void 0 ? 1 : _b, props = __rest(_a, ["num"]);
|
|
272
|
-
return
|
|
286
|
+
return React__namespace.createElement(Box, __assign({ spacing: num, ref: ref }, props));
|
|
273
287
|
});
|
|
274
288
|
|
|
275
|
-
var InnerSpace = styled__default[
|
|
289
|
+
var InnerSpace = styled__default["default"].div(templateObject_1 || (templateObject_1 = __makeTemplateObject(["\n --current-size: 1;\n flex: none;\n width: calc(var(--current-size) * var(--swui-metrics-space));\n height: calc(var(--current-size) * var(--swui-metrics-space));\n"], ["\n --current-size: 1;\n flex: none;\n width: calc(var(--current-size) * var(--swui-metrics-space));\n height: calc(var(--current-size) * var(--swui-metrics-space));\n"])));
|
|
276
290
|
var Space = function (_a) {
|
|
277
291
|
var _b;
|
|
278
292
|
var _c = _a.half, half = _c === void 0 ? false : _c, _d = _a.horizontal, horizontal = _d === void 0 ? false : _d, _e = _a.num, num = _e === void 0 ? 1 : _e, _f = _a.vertical, vertical = _f === void 0 ? false : _f;
|
|
279
293
|
var size = num * (half ? 0.5 : 1);
|
|
280
|
-
return (
|
|
294
|
+
return (React__namespace.createElement(InnerSpace, { style: (_b = {},
|
|
281
295
|
_b["--current-size"] = size,
|
|
282
296
|
_b.height = horizontal ? 1 : undefined,
|
|
283
297
|
_b.width = vertical ? 1 : undefined,
|
|
284
298
|
_b) }));
|
|
285
299
|
};
|
|
286
|
-
var templateObject_1
|
|
300
|
+
var templateObject_1;
|
|
287
301
|
|
|
288
302
|
var Nest = function (_a) {
|
|
289
303
|
var children = _a.children, nest = _a.nest, render = _a.render;
|
|
290
304
|
if (nest) {
|
|
291
|
-
return
|
|
305
|
+
return React__namespace.createElement(React__namespace.Fragment, null, render(children));
|
|
292
306
|
}
|
|
293
|
-
return
|
|
307
|
+
return React__namespace.createElement(React__namespace.Fragment, null, children);
|
|
294
308
|
};
|
|
295
309
|
|
|
296
310
|
function styleInject(css, ref) {
|
|
@@ -320,13 +334,13 @@ function styleInject(css, ref) {
|
|
|
320
334
|
}
|
|
321
335
|
}
|
|
322
336
|
|
|
323
|
-
var css_248z = ".Text-module_text__2FYaC {\n /* Theme vars */\n --swui-text-color: var(--swui-text-primary-color);\n --swui-text-color-caption: var(--swui-text-primary-color);\n --swui-text-color-overline: var(--lhds-color-ui-600);\n --swui-text-font-family: var(--swui-font-primary);\n --swui-text-font-weight: var(--swui-font-weight-text);\n\n /* Current */\n --current-color: var(--swui-text-color);\n --current-font-size: var(--swui-font-size-medium);\n --current-line-height: var(--swui-line-height-medium);\n --current-font-weight: var(--swui-text-font-weight);\n --current-letter-spacing: var(--swui-text-letter-spacing);\n\n /* Styling */\n font-size: var(--current-font-size);\n line-height: var(--current-line-height);\n color: var(--current-color);\n letter-spacing: var(--current-letter-spacing);\n font-family: var(--swui-text-font-family);\n font-weight: var(--current-font-weight);\n}\n\n .Text-module_text__2FYaC.Text-module_standard__2-bur {\n }\n\n .Text-module_text__2FYaC.Text-module_bold__1Knlz {\n --current-font-weight: var(--swui-font-weight-text-bold);\n }\n\n .Text-module_text__2FYaC.Text-module_caption__153CS {\n --current-font-size: var(--swui-font-size-small);\n --current-line-height: var(--swui-line-height-small);\n --current-color: var(--swui-text-color-caption);\n --current-letter-spacing: 0;\n font-style: italic;\n }\n\n .Text-module_text__2FYaC.Text-module_overline__22jee {\n --current-font-size: var(--swui-font-size-smaller);\n --current-line-height: var(--swui-line-height-smaller);\n --current-color: var(--swui-text-color-overline);\n --current-font-weight: var(--swui-font-weight-text-bold);\n --current-letter-spacing: 1px;\n text-transform: uppercase;\n }\n\n .Text-module_text__2FYaC.Text-module_large__3TF1O {\n --current-font-size: var(--swui-font-size-large);\n --current-line-height: var(--swui-line-height-large);\n }\n\n .Text-module_text__2FYaC.Text-module_medium__1yeKe {\n --current-font-size: var(--swui-font-size-medium);\n --current-line-height: var(--swui-line-height-medium);\n }\n\n .Text-module_text__2FYaC.Text-module_small__3KAee {\n --current-font-size: var(--swui-font-size-small);\n --current-line-height: var(--swui-line-height-small);\n }\n\n .Text-module_text__2FYaC.Text-module_smaller__1mD_7 {\n --current-font-size: var(--swui-font-size-smaller);\n --current-line-height: var(--swui-line-height-smaller);\n }\n";
|
|
324
|
-
var styles = {"text":"Text-module_text__2FYaC","standard":"Text-module_standard__2-bur","bold":"Text-module_bold__1Knlz","caption":"Text-module_caption__153CS","overline":"Text-module_overline__22jee","large":"Text-module_large__3TF1O","medium":"Text-module_medium__1yeKe","small":"Text-module_small__3KAee","smaller":"Text-module_smaller__1mD_7"};
|
|
325
|
-
styleInject(css_248z);
|
|
337
|
+
var css_248z$1 = ".Text-module_text__2FYaC {\n /* Theme vars */\n --swui-text-color: var(--swui-text-primary-color);\n --swui-text-color-caption: var(--swui-text-primary-color);\n --swui-text-color-overline: var(--lhds-color-ui-600);\n --swui-text-font-family: var(--swui-font-primary);\n --swui-text-font-weight: var(--swui-font-weight-text);\n\n /* Current */\n --current-color: var(--swui-text-color);\n --current-font-size: var(--swui-font-size-medium);\n --current-line-height: var(--swui-line-height-medium);\n --current-font-weight: var(--swui-text-font-weight);\n --current-letter-spacing: var(--swui-text-letter-spacing);\n\n /* Styling */\n font-size: var(--current-font-size);\n line-height: var(--current-line-height);\n color: var(--current-color);\n letter-spacing: var(--current-letter-spacing);\n font-family: var(--swui-text-font-family);\n font-weight: var(--current-font-weight);\n}\n\n .Text-module_text__2FYaC.Text-module_standard__2-bur {\n }\n\n .Text-module_text__2FYaC.Text-module_bold__1Knlz {\n --current-font-weight: var(--swui-font-weight-text-bold);\n }\n\n .Text-module_text__2FYaC.Text-module_caption__153CS {\n --current-font-size: var(--swui-font-size-small);\n --current-line-height: var(--swui-line-height-small);\n --current-color: var(--swui-text-color-caption);\n --current-letter-spacing: 0;\n font-style: italic;\n }\n\n .Text-module_text__2FYaC.Text-module_overline__22jee {\n --current-font-size: var(--swui-font-size-smaller);\n --current-line-height: var(--swui-line-height-smaller);\n --current-color: var(--swui-text-color-overline);\n --current-font-weight: var(--swui-font-weight-text-bold);\n --current-letter-spacing: 1px;\n text-transform: uppercase;\n }\n\n .Text-module_text__2FYaC.Text-module_large__3TF1O {\n --current-font-size: var(--swui-font-size-large);\n --current-line-height: var(--swui-line-height-large);\n }\n\n .Text-module_text__2FYaC.Text-module_medium__1yeKe {\n --current-font-size: var(--swui-font-size-medium);\n --current-line-height: var(--swui-line-height-medium);\n }\n\n .Text-module_text__2FYaC.Text-module_small__3KAee {\n --current-font-size: var(--swui-font-size-small);\n --current-line-height: var(--swui-line-height-small);\n }\n\n .Text-module_text__2FYaC.Text-module_smaller__1mD_7 {\n --current-font-size: var(--swui-font-size-smaller);\n --current-line-height: var(--swui-line-height-smaller);\n }\n";
|
|
338
|
+
var styles$1 = {"text":"Text-module_text__2FYaC","standard":"Text-module_standard__2-bur","bold":"Text-module_bold__1Knlz","caption":"Text-module_caption__153CS","overline":"Text-module_overline__22jee","large":"Text-module_large__3TF1O","medium":"Text-module_medium__1yeKe","small":"Text-module_small__3KAee","smaller":"Text-module_smaller__1mD_7"};
|
|
339
|
+
styleInject(css_248z$1);
|
|
326
340
|
|
|
327
341
|
var Text = React.forwardRef(function (_a, ref) {
|
|
328
342
|
var children = _a.children, _b = _a.variant, variant = _b === void 0 ? "standard" : _b, _c = _a.size, size = _c === void 0 ? "medium" : _c, className = _a.className, color = _a.color, userSelect = _a.userSelect, whiteSpace = _a.whiteSpace, style = _a.style, spanProps = __rest(_a, ["children", "variant", "size", "className", "color", "userSelect", "whiteSpace", "style"]);
|
|
329
|
-
return (
|
|
343
|
+
return (React__namespace.createElement("span", __assign({ className: cx__default["default"](styles$1.text, styles$1[variant], styles$1[size], className), ref: ref, style: __assign({ color: color, userSelect: userSelect, whiteSpace: whiteSpace }, style) }, spanProps), children));
|
|
330
344
|
});
|
|
331
345
|
var Txt = Text;
|
|
332
346
|
|
|
@@ -334,45 +348,45 @@ var Txt = Text;
|
|
|
334
348
|
* @deprecated Please use `Text` instead.
|
|
335
349
|
*/
|
|
336
350
|
var SmallText = function (props) {
|
|
337
|
-
return
|
|
351
|
+
return React__namespace.createElement(Text, __assign({ size: "small" }, props));
|
|
338
352
|
};
|
|
339
353
|
|
|
340
354
|
/**
|
|
341
355
|
* @deprecated Please use `Text` instead.
|
|
342
356
|
*/
|
|
343
357
|
var SmallerText = function (props) {
|
|
344
|
-
return
|
|
358
|
+
return React__namespace.createElement(Text, __assign({ size: "smaller" }, props));
|
|
345
359
|
};
|
|
346
360
|
|
|
347
361
|
/**
|
|
348
362
|
* @deprecated Please use `Text` instead.
|
|
349
363
|
*/
|
|
350
364
|
var StandardText = function (props) {
|
|
351
|
-
return
|
|
365
|
+
return React__namespace.createElement(Text, __assign({ size: "medium" }, props));
|
|
352
366
|
};
|
|
353
367
|
|
|
354
368
|
/**
|
|
355
369
|
* @deprecated Please use `Text` instead.
|
|
356
370
|
*/
|
|
357
371
|
var LargeText = function (props) {
|
|
358
|
-
return
|
|
372
|
+
return React__namespace.createElement(Text, __assign({ size: "large" }, props));
|
|
359
373
|
};
|
|
360
374
|
|
|
361
|
-
var css_248z
|
|
362
|
-
var styles
|
|
363
|
-
styleInject(css_248z
|
|
375
|
+
var css_248z = ".Heading-module_heading__1Y-tN {\n font-size: var(--swui-heading-font-size);\n color: var(--lhds-color-ui-800);\n letter-spacing: 0;\n margin: 0;\n line-height: var(--swui-heading-line-height);\n font-family: var(--swui-font-primary);\n font-weight: var(--swui-font-weight-text);\n}\n\n .Heading-module_heading__1Y-tN.Heading-module_h1__3hICB {\n --swui-heading-font-size: 28px;\n --swui-heading-line-height: 32px;\n }\n\n .Heading-module_heading__1Y-tN.Heading-module_h2__2p_cD {\n --swui-heading-font-size: 24px;\n --swui-heading-line-height: 28px;\n }\n\n .Heading-module_heading__1Y-tN.Heading-module_h3__3qTgm {\n --swui-heading-font-size: 20px;\n --swui-heading-line-height: 24px;\n }\n\n .Heading-module_heading__1Y-tN.Heading-module_h4__2ishv {\n --swui-heading-font-size: 16px;\n --swui-heading-line-height: 20px;\n }\n\n .Heading-module_heading__1Y-tN.Heading-module_h5__bYa6B {\n --swui-heading-font-size: 14px;\n --swui-heading-line-height: 18px;\n font-weight: var(--swui-font-weight-text-bold);\n }\n\n .Heading-module_heading__1Y-tN.Heading-module_h6__4yp37 {\n --swui-heading-font-size: 12px;\n --swui-heading-line-height: 16px;\n font-weight: var(--swui-font-weight-text-bold);\n }\n";
|
|
376
|
+
var styles = {"heading":"Heading-module_heading__1Y-tN","h1":"Heading-module_h1__3hICB","h2":"Heading-module_h2__2p_cD","h3":"Heading-module_h3__3qTgm","h4":"Heading-module_h4__2ishv","h5":"Heading-module_h5__bYa6B","h6":"Heading-module_h6__4yp37"};
|
|
377
|
+
styleInject(css_248z);
|
|
364
378
|
|
|
365
379
|
var Heading = React.forwardRef(function (_a, ref) {
|
|
366
380
|
var _b = _a.variant, variant = _b === void 0 ? "h3" : _b, className = _a.className, color = _a.color, whiteSpace = _a.whiteSpace, style = _a.style, children = _a.children, as = _a.as, hProps = __rest(_a, ["variant", "className", "color", "whiteSpace", "style", "children", "as"]);
|
|
367
381
|
var Element = as !== null && as !== void 0 ? as : variant;
|
|
368
|
-
return (
|
|
382
|
+
return (React__namespace.createElement(Element, __assign({ className: cx__default["default"](styles.heading, styles[variant], className), style: __assign({ color: color, whiteSpace: whiteSpace }, style), ref: ref }, hProps), children));
|
|
369
383
|
});
|
|
370
384
|
|
|
371
385
|
/**
|
|
372
386
|
* @deprecated Please use `Heading` instead.
|
|
373
387
|
*/
|
|
374
388
|
var HeaderText = function (props) {
|
|
375
|
-
return
|
|
389
|
+
return React__namespace.createElement(Heading, __assign({ variant: "h2" }, props));
|
|
376
390
|
};
|
|
377
391
|
|
|
378
392
|
var defaultComparator = function (a, b) { return a === b; };
|
|
@@ -380,13 +394,13 @@ var useArraySet = function (list, setList, comparator) {
|
|
|
380
394
|
if (comparator === void 0) { comparator = defaultComparator; }
|
|
381
395
|
var add = React.useCallback(function (item) {
|
|
382
396
|
if (!list.some(function (l) { return comparator(l, item); })) {
|
|
383
|
-
setList(
|
|
397
|
+
setList(__spreadArray(__spreadArray([], list, true), [item], false));
|
|
384
398
|
}
|
|
385
399
|
}, [list, setList, comparator]);
|
|
386
400
|
var addMultiple = React.useCallback(function (items) {
|
|
387
401
|
setList(items.reduce(function (list, item) {
|
|
388
402
|
if (!list.some(function (l) { return comparator(l, item); })) {
|
|
389
|
-
return
|
|
403
|
+
return __spreadArray(__spreadArray([], list, true), [item], false);
|
|
390
404
|
}
|
|
391
405
|
return list;
|
|
392
406
|
}, list));
|
|
@@ -517,7 +531,7 @@ var useEventListener = function (ref, eventName, handler) {
|
|
|
517
531
|
var useElementFocus = function (ref) {
|
|
518
532
|
var _a = useBoolean(false), isInFocus = _a[0], setIsInFocus = _a[1], setIsNotInFocus = _a[2];
|
|
519
533
|
React.useEffect(function () {
|
|
520
|
-
if (document.activeElement ===
|
|
534
|
+
if (document.activeElement === ReactDOM__namespace.findDOMNode(ref.current)) {
|
|
521
535
|
setIsInFocus();
|
|
522
536
|
}
|
|
523
537
|
else {
|
|
@@ -580,7 +594,7 @@ var useMultiOnClickOutside = function (refs, handler) {
|
|
|
580
594
|
document.removeEventListener("touchstart", listener);
|
|
581
595
|
};
|
|
582
596
|
// eslint-disable-next-line react-hooks/exhaustive-deps
|
|
583
|
-
},
|
|
597
|
+
}, __spreadArray([], refs, true));
|
|
584
598
|
};
|
|
585
599
|
|
|
586
600
|
var useOnClickOutside = function (ref, handler) {
|
|
@@ -692,6 +706,10 @@ var exhaustSwitchCase = function (_arg, fallback) {
|
|
|
692
706
|
return fallback;
|
|
693
707
|
};
|
|
694
708
|
|
|
709
|
+
var truthyKeysAsList = function (r) {
|
|
710
|
+
return Object.keys(r).filter(function (key) { return r[key]; });
|
|
711
|
+
};
|
|
712
|
+
|
|
695
713
|
var parseFloatElseUndefined = function (s) {
|
|
696
714
|
try {
|
|
697
715
|
var f = parseFloat(s);
|
|
@@ -745,6 +763,7 @@ exports.exhaustSwitchCaseElseThrow = exhaustSwitchCaseElseThrow;
|
|
|
745
763
|
exports.getDimensionObject = getDimensionObject;
|
|
746
764
|
exports.parseFloatElseUndefined = parseFloatElseUndefined;
|
|
747
765
|
exports.parseIntElseUndefined = parseIntElseUndefined;
|
|
766
|
+
exports.truthyKeysAsList = truthyKeysAsList;
|
|
748
767
|
exports.useArraySet = useArraySet;
|
|
749
768
|
exports.useBoolean = useBoolean;
|
|
750
769
|
exports.useDebounce = useDebounce;
|