@overmap-ai/blocks 0.0.1-alpha.30 → 0.0.1-alpha.32
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/Theme/DefaultTheme.d.ts +6 -4
- package/dist/Theme/index.d.ts +1 -1
- package/dist/blocks.js +4 -1
- package/dist/blocks.js.map +1 -1
- package/dist/blocks.umd.cjs +2 -2
- package/dist/blocks.umd.cjs.map +1 -1
- package/package.json +1 -1
|
@@ -1,4 +1,6 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import {
|
|
3
|
-
export
|
|
4
|
-
|
|
1
|
+
import { ThemeOptions } from "@radix-ui/themes";
|
|
2
|
+
import { ReactNode } from "react";
|
|
3
|
+
export interface ThemeProps extends Partial<ThemeOptions> {
|
|
4
|
+
children: ReactNode;
|
|
5
|
+
}
|
|
6
|
+
export declare const DefaultTheme: import("react").MemoExoticComponent<import("react").ForwardRefExoticComponent<ThemeProps & import("react").RefAttributes<HTMLDivElement>>>;
|
package/dist/Theme/index.d.ts
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
export * from "./DefaultTheme
|
|
1
|
+
export * from "./DefaultTheme";
|
|
2
2
|
export { Theme } from "@radix-ui/themes";
|
package/dist/blocks.js
CHANGED
|
@@ -441,7 +441,10 @@ const de = {
|
|
|
441
441
|
] }) });
|
|
442
442
|
});
|
|
443
443
|
const eo = w(
|
|
444
|
-
S((i, r) =>
|
|
444
|
+
S((i, r) => {
|
|
445
|
+
const { panelBackground: t = "solid", ...n } = i;
|
|
446
|
+
return /* @__PURE__ */ o(oe, { panelBackground: t, ref: r, ...n });
|
|
447
|
+
})
|
|
445
448
|
);
|
|
446
449
|
export {
|
|
447
450
|
io as AccessibleIcon,
|
package/dist/blocks.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blocks.js","sources":["../node_modules/classnames/index.js","../src/Buttons/constants.ts","../src/utils.ts","../src/constants.ts","../src/Buttons/Button.tsx","../src/Buttons/IconButton.tsx","../src/ButtonGroup/ButtonGroup.tsx","../src/Dialogs/Dialog/DialogContent.tsx","../src/Dialogs/Dialog/Dialog.tsx","../src/Dialogs/AlertDialog/AlertDialogContent.tsx","../src/Dialogs/AlertDialog/AlertDialog.tsx","../src/Dialogs/AlertDialog/context.tsx","../src/Dialogs/AlertDialog/hooks.ts","../src/Select/Select.tsx","../src/Input/Input.tsx","../src/Popover/Popover.tsx","../src/ToggleGroup/ToggleGroup.tsx","../src/Toast/Toast.tsx","../src/Toast/ToastContext.tsx","../src/Theme/DefaultTheme.tsx"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import { ButtonHoverEffect } from \"./typings.ts\"\nimport styles from \"./Button.module.sass\"\n\nexport const hoverEffectClassNameMapping: Record<ButtonHoverEffect, string | undefined> = {\n\tspin90Clockwise: styles.hoverSpin90Clockwise,\n\tspin180Clockwise: styles.hoverSpin180Clockwise,\n\tspin360Clockwise: styles.hoverSpin360Clockwise,\n}\n","import { Responsive, useThemeContext } from \"@radix-ui/themes\"\nimport { ThemeProps } from \"Theme\"\nimport { Severity } from \"typings\"\n\n// applyResponsiveMapping is a helper function used to map the keys of a Radix Responsive type that can be understood\n// by a Radix component or primitive. The point of this is to leverage our own custom prop names and values while still\n// using Radix's built in Responsiveness functionality.\n/**\n * Returns an object with mapped key values or a single mapped value\n * @param value an object or string\n * @param mapping a Record mapping the object values of param value\n */\nexport function applyResponsiveMapping<T extends string, K>(value: Responsive<T>, mapping: Record<T, K>) {\n\tif (typeof value === \"object\") {\n\t\tif (!(\"initial\" in value)) {\n\t\t\t// Responsive objects require an 'initial' property to be set that acts as a default\n\t\t\tthrow new Error(\"Expected initial property to be set in Responsive object\")\n\t\t}\n\t\treturn Object.fromEntries(Object.entries(value).map(([key, _value]) => [key, mapping[_value]]))\n\t} else {\n\t\treturn mapping[value]\n\t}\n}\n\nconst nonThemeSeverityMapping = {\n\tsuccess: \"green\",\n\tdanger: \"red\",\n\tinfo: \"gray\",\n} as const\n\nexport type AccentColor = NonNullable<ThemeProps[\"accentColor\"]>\n\n/** Performs theme-sensitive mapping of a severity to radix color */\nexport const useSeverityColor = (severity: Severity): AccentColor => {\n\tconst theme = useThemeContext()\n\tif (severity === \"primary\") return theme.accentColor\n\n\treturn nonThemeSeverityMapping[severity]\n}\n","import { Size } from \"./typings.ts\"\n\n// Mappings\nexport const SizeMapping: Record<Size, \"1\" | \"2\" | \"3\"> = {\n\tsmall: \"1\",\n\tmedium: \"2\",\n\tlarge: \"3\",\n}\n","import React, { FC, forwardRef } from \"react\"\nimport { ButtonProps } from \"./typings.ts\"\nimport styles from \"./Button.module.sass\"\nimport classNames from \"classnames\"\nimport { Button as RadixButton } from \"@radix-ui/themes\"\nimport { hoverEffectClassNameMapping } from \"./constants.ts\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\n\nconst _Button = forwardRef(function Button(\n\t{ className, fluid, size = \"medium\", severity = \"primary\", hoverEffects, type = \"button\", ...rest }: ButtonProps,\n\tref: React.Ref<HTMLButtonElement>,\n) {\n\tconst color = useSeverityColor(severity)\n\tconst hoverEffectClasses =\n\t\thoverEffects?.map((hoverEffect) => {\n\t\t\treturn hoverEffectClassNameMapping[hoverEffect]\n\t\t}) || []\n\n\treturn (\n\t\t<RadixButton\n\t\t\tref={ref}\n\t\t\tclassName={classNames(className, hoverEffectClasses, {\n\t\t\t\t[styles.fluid!]: fluid,\n\t\t\t})}\n\t\t\tcolor={color}\n\t\t\tsize={applyResponsiveMapping(size, SizeMapping)}\n\t\t\ttype={type}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\n\n// using FC so storybook correctly displays the component props\nconst Button: FC<ButtonProps> = React.memo(_Button)\n\nexport default Button\n","import React, { FC, forwardRef } from \"react\"\nimport { ButtonProps } from \"./typings.ts\"\nimport classNames from \"classnames\"\nimport { IconButton as RadixIconButton } from \"@radix-ui/themes\"\nimport { hoverEffectClassNameMapping } from \"./constants.ts\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\n\nimport styles from \"./Button.module.sass\"\n\ninterface IconButtonProps extends Omit<ButtonProps, \"fluid\"> {\n\t\"aria-label\": string\n}\n\nconst _Button = forwardRef(function Button(\n\t{\n\t\tclassName,\n\t\tchildren,\n\t\tsize = \"medium\",\n\t\tseverity = \"primary\",\n\t\thoverEffects,\n\t\ttype = \"button\",\n\t\t...rest\n\t}: IconButtonProps,\n\tref: React.Ref<HTMLButtonElement>,\n) {\n\tconst color = useSeverityColor(severity)\n\tconst hoverEffectClasses =\n\t\thoverEffects?.map((hoverEffect) => {\n\t\t\treturn hoverEffectClassNameMapping[hoverEffect]\n\t\t}) || []\n\n\treturn (\n\t\t<RadixIconButton\n\t\t\tclassName={classNames(className, hoverEffectClasses, styles.default)}\n\t\t\tref={ref}\n\t\t\tcolor={color}\n\t\t\tsize={applyResponsiveMapping(size, SizeMapping)}\n\t\t\ttype={type}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children}\n\t\t</RadixIconButton>\n\t)\n})\n\n// using FC so storybook correctly displays the component props\n/** The `IconButton` is a `Button` variant specifically designed for single icons. */\nconst IconButton: FC<IconButtonProps> = React.memo(_Button)\n\nexport default IconButton\n","import { FC, forwardRef, memo, Ref, cloneElement } from \"react\"\nimport { Flex } from \"@radix-ui/themes\"\nimport classNames from \"classnames\"\nimport { ButtonGroupProps } from \"./typings.ts\"\n\nimport styles from \"./ButtonGroup.module.sass\"\nimport { Size } from \"../typings.ts\"\nimport { applyResponsiveMapping } from \"../utils.ts\"\nimport { Button, IconButton } from \"../Buttons\"\n\nconst GhostVariantSizeToGapMapping: Record<\"row\" | \"column\", Record<Size, ButtonGroupProps[\"gap\"]>> = {\n\trow: { small: \"4\", medium: \"4\", large: \"5\" },\n\tcolumn: { small: \"2\", medium: \"3\", large: \"4\" },\n}\n\nconst _ButtonGroup = forwardRef(function ButtonGroup(\n\t{\n\t\tclassName,\n\t\tmerged = false,\n\t\tchildren,\n\t\tgap = \"2\",\n\t\tdirection = \"row\",\n\t\tseverity = \"primary\",\n\t\tsize = \"medium\",\n\t\tvariant = \"solid\",\n\t\thoverEffects,\n\t\t...rest\n\t}: ButtonGroupProps,\n\tref: Ref<HTMLDivElement>,\n) {\n\treturn (\n\t\t<Flex\n\t\t\tclassName={classNames(\"overmap-button-group\", className, {\n\t\t\t\t[styles.merged!]: merged,\n\t\t\t})}\n\t\t\tref={ref}\n\t\t\tgap={\n\t\t\t\tmerged\n\t\t\t\t\t? variant === \"ghost\"\n\t\t\t\t\t\t? applyResponsiveMapping(size, GhostVariantSizeToGapMapping[direction])\n\t\t\t\t\t\t: \"0\"\n\t\t\t\t\t: gap\n\t\t\t}\n\t\t\tdirection={direction}\n\t\t\tdata-direction={direction}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children.map((child, index) => {\n\t\t\t\tif (child.type === Button || child.type === IconButton) {\n\t\t\t\t\treturn cloneElement(child, { key: index, size, severity, variant, hoverEffects })\n\t\t\t\t} else {\n\t\t\t\t\treturn child\n\t\t\t\t}\n\t\t\t})}\n\t\t</Flex>\n\t)\n})\n\n/** The ButtonGroup Component is a user interface element that groups multiple buttons together for improved user\n * interaction and visual clarity. It is commonly used to present related actions or options in a compact and organized\n * manner. The ButtonGroup supports all props of the RadixUI Flex layout component besides MarginProps,\n * further documentation for the Flex layout component can be found here https://www.radix-ui.com/themes/docs/components/flex */\nexport const ButtonGroup: FC<ButtonGroupProps> = memo(_ButtonGroup)\n","import { memo } from \"react\"\nimport { Dialog, Flex, IconButton } from \"@radix-ui/themes\"\nimport { Cross1Icon } from \"@radix-ui/react-icons\"\nimport { DialogContentProps } from \"./typings\"\n\nexport const DialogContent = memo(function DialogContent(props: DialogContentProps) {\n\tconst { title, description, content, closeDialog } = props\n\treturn (\n\t\t<Flex direction=\"column\" gap=\"2\">\n\t\t\t<Flex direction=\"column\" gap=\"1\">\n\t\t\t\t<Flex justify=\"between\">\n\t\t\t\t\t<Dialog.Title mb=\"0\">{title}</Dialog.Title>\n\t\t\t\t\t<Dialog.Close>\n\t\t\t\t\t\t<IconButton color=\"gray\" variant=\"ghost\" aria-label=\"Close\">\n\t\t\t\t\t\t\t<Cross1Icon />\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</Dialog.Close>\n\t\t\t\t</Flex>\n\t\t\t\t<Dialog.Description>{description}</Dialog.Description>\n\t\t\t</Flex>\n\t\t\t{content(closeDialog)}\n\t\t</Flex>\n\t)\n})\n","import { memo, useState, useCallback } from \"react\"\nimport { Dialog as RadixDialog } from \"@radix-ui/themes\"\nimport { DialogContent } from \"./DialogContent\"\nimport { CloseDialogWithOptions, DialogProps } from \"./typings\"\n\n/**\n * Display or collect information in a modal. Unlike the `AlertDialog`, the `Dialog`'s can be nested\n * and close when clicking outside of the dialog content.\n */\nexport const Dialog = memo(function Dialog(props: DialogProps) {\n\tconst { children, size, onOpen, onCloseInterrupt, ...contentProps } = props\n\tconst [open, setOpen] = useState(false)\n\n\tconst handleOpenChange = useCallback(\n\t\t(next: boolean) => {\n\t\t\tif (next && onOpen) {\n\t\t\t\tonOpen()\n\t\t\t} else if (!next && onCloseInterrupt) {\n\t\t\t\t// closes the dialog, bypassing the checks in `handleOpenChange`\n\t\t\t\tconst confirmClose = () => setOpen(false)\n\n\t\t\t\t// if onCloseInterrupt is passed, bypass the standard close behavior and require\n\t\t\t\t// the passed `confirmClose` to close the dialog\n\t\t\t\treturn onCloseInterrupt(confirmClose)\n\t\t\t}\n\n\t\t\tsetOpen(next)\n\t\t},\n\t\t[onOpen, onCloseInterrupt],\n\t)\n\n\tconst closeDialog = useCallback<CloseDialogWithOptions>(\n\t\t(options) => {\n\t\t\tif (options?.force) {\n\t\t\t\t// bypass the checks in the `handleOpenChange` function\n\t\t\t\treturn setOpen(false)\n\t\t\t}\n\n\t\t\thandleOpenChange(false)\n\t\t},\n\t\t[handleOpenChange],\n\t)\n\n\treturn (\n\t\t<RadixDialog.Root open={open} onOpenChange={handleOpenChange}>\n\t\t\t<RadixDialog.Content size={size}>\n\t\t\t\t<DialogContent closeDialog={closeDialog} {...contentProps} />\n\t\t\t</RadixDialog.Content>\n\n\t\t\t{children(RadixDialog.Trigger)}\n\t\t</RadixDialog.Root>\n\t)\n})\n","import { AlertDialog, Flex } from \"@radix-ui/themes\"\nimport { AlertDialogStandardContent } from \"./typings\"\nimport { Button } from \"../../Buttons\"\n\n// remove the margin-bottom from the title so that Flex works as expected\nexport const Title: typeof AlertDialog.Title = ((props) => (\n\t<AlertDialog.Title mb=\"0\" {...props} />\n)) as typeof AlertDialog.Title\n\nexport const AlertDialogContent = (props: AlertDialogStandardContent) => {\n\tconst { title, description, actionText = \"Confirm\", cancelText = \"Cancel\", onAction, onCancel, severity } = props\n\treturn (\n\t\t<Flex direction=\"column\" gap=\"2\">\n\t\t\t<Flex direction=\"column\" gap=\"1\">\n\t\t\t\t<Title>{title}</Title>\n\t\t\t\t<AlertDialog.Description>{description}</AlertDialog.Description>\n\t\t\t</Flex>\n\n\t\t\t<Flex gap=\"3\" mt=\"4\" justify=\"end\">\n\t\t\t\t<AlertDialog.Cancel>\n\t\t\t\t\t<Button variant=\"soft\" severity=\"info\" onClick={onCancel}>\n\t\t\t\t\t\t{cancelText}\n\t\t\t\t\t</Button>\n\t\t\t\t</AlertDialog.Cancel>\n\t\t\t\t<AlertDialog.Action>\n\t\t\t\t\t<Button variant=\"solid\" severity={severity} onClick={onAction}>\n\t\t\t\t\t\t{actionText}\n\t\t\t\t\t</Button>\n\t\t\t\t</AlertDialog.Action>\n\t\t\t</Flex>\n\t\t</Flex>\n\t)\n}\n","import { memo, useMemo } from \"react\"\nimport { AlertDialog as RadixAlertDialog } from \"@radix-ui/themes\"\nimport { AlertDialogContentHelpers, AlertDialogProps } from \"./typings\"\nimport { AlertDialogContent, Title } from \"./AlertDialogContent\"\n\n/**\n * The AlertDialog is used to confirm an action or prompt the user for a decision.\n * Unlike the Dialog, the AlertDialog is not dismissible by clicking outside of the dialog, nor can it be nested.\n *\n * To use, place the `AlertDialogProvider` at the root of your app and use the `useAlertDialog` hook to open the dialog.\n *\n * To set the content of the dialog, use the `content` prop or pass values for the `title`, `description`, and `onAction` props.\n */\nexport const AlertDialog = memo(function AlertDialog(props: AlertDialogProps) {\n\tconst { open, setOpen, children, ...contentProps } = props\n\n\tconst helpers: AlertDialogContentHelpers = useMemo(() => {\n\t\treturn {\n\t\t\tclose: () => setOpen(false),\n\t\t\tTitle,\n\t\t\tDescription: RadixAlertDialog.Description,\n\t\t}\n\t}, [setOpen])\n\n\treturn (\n\t\t<RadixAlertDialog.Root open={open} onOpenChange={setOpen}>\n\t\t\t<RadixAlertDialog.Content>\n\t\t\t\t{\"content\" in contentProps ? contentProps.content(helpers) : <AlertDialogContent {...contentProps} />}\n\t\t\t</RadixAlertDialog.Content>\n\t\t\t{children}\n\t\t</RadixAlertDialog.Root>\n\t)\n})\n","import { createContext, memo, useState, useCallback } from \"react\"\nimport { AlertDialogContextType, AlertDialogOptions } from \"./typings\"\nimport { AlertDialog } from \"./AlertDialog\"\n\ninterface AlertDialogProviderProps {\n\tchildren: React.ReactNode\n}\n\nexport const AlertDialogContent = createContext<AlertDialogContextType>(() => {\n\tthrow new Error(\"No AlertDialogProvider found\")\n})\n\nconst initialState: AlertDialogOptions = {\n\tcontent: () => null,\n}\n\nexport const AlertDialogProvider = memo(function AlertDialogProvider({ children }: AlertDialogProviderProps) {\n\tconst [open, setOpen] = useState(false)\n\tconst [state, setState] = useState<AlertDialogOptions>(initialState)\n\n\tconst openDialog = useCallback<AlertDialogContextType>(\n\t\t(options) => {\n\t\t\tif (open) throw new Error(\"AlertDialog is already open\")\n\n\t\t\tsetState(options)\n\t\t\tsetOpen(true)\n\t\t},\n\t\t[open],\n\t)\n\n\treturn (\n\t\t<AlertDialog open={open} setOpen={setOpen} {...state}>\n\t\t\t<AlertDialogContent.Provider value={openDialog}>{children}</AlertDialogContent.Provider>\n\t\t</AlertDialog>\n\t)\n})\n","import { useContext } from \"react\"\nimport { AlertDialogContent } from \"./context\"\n\nexport const useAlertDialog = () => {\n\treturn useContext(AlertDialogContent)\n}\n","import React, { FC, forwardRef, useMemo } from \"react\"\nimport { Select as RadixSelect } from \"@radix-ui/themes\"\nimport classNames from \"classnames\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\nimport { SelectItemProps, SelectProps } from \"./typings.ts\"\n\nimport styles from \"./Select.module.sass\"\n\nconst _Select = forwardRef(function Select(\n\t{\n\t\tclassName,\n\t\tfluid,\n\t\tsize = \"medium\",\n\t\tvariant = \"surface\",\n\t\tseverity = \"primary\",\n\t\tplaceholder = \"Select\",\n\t\tside,\n\t\titems = [],\n\t\tvalue,\n\t\t...rest\n\t}: SelectProps,\n\tref: React.Ref<HTMLButtonElement>,\n) {\n\tconst mappedSize = useMemo(() => {\n\t\treturn applyResponsiveMapping(size, SizeMapping)\n\t}, [size])\n\tconst color = useSeverityColor(severity)\n\n\t// TODO: extend functionality to support grouping of items\n\t// TODO: remove key change based on value once placeholder issue it fixed in radix-ui/themes\n\treturn (\n\t\t<RadixSelect.Root size={mappedSize} {...rest} key={value === undefined ? 1 : 0} value={value}>\n\t\t\t<RadixSelect.Trigger\n\t\t\t\tclassName={classNames(className, {\n\t\t\t\t\t[styles.fluid!]: fluid,\n\t\t\t\t})}\n\t\t\t\tref={ref}\n\t\t\t\tvariant={variant}\n\t\t\t\tplaceholder={placeholder}\n\t\t\t\tcolor={color}\n\t\t\t/>\n\t\t\t<RadixSelect.Content\n\t\t\t\tside={side}\n\t\t\t\tposition=\"popper\"\n\t\t\t\tvariant={variant !== \"surface\" ? \"soft\" : \"solid\"}\n\t\t\t\tcolor={color}\n\t\t\t>\n\t\t\t\t{items.map(({ label, value, ...rest }: SelectItemProps) => (\n\t\t\t\t\t<RadixSelect.Item key={value} value={value} {...rest}>\n\t\t\t\t\t\t{label}\n\t\t\t\t\t</RadixSelect.Item>\n\t\t\t\t))}\n\t\t\t</RadixSelect.Content>\n\t\t</RadixSelect.Root>\n\t)\n})\nexport const Select: FC<SelectProps> = React.memo(_Select)\n","import React, { FC, forwardRef, useMemo } from \"react\"\nimport { Text, TextField as RadixTextField } from \"@radix-ui/themes\"\nimport classNames from \"classnames\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\nimport { InputProps } from \"./typings.ts\"\n\nimport styles from \"./Input.module.sass\"\n\nconst _Input = forwardRef(function Input(\n\t{\n\t\tclassName,\n\t\tleftIcon,\n\t\trightIcon,\n\t\tsize = \"medium\",\n\t\tshowInputLength,\n\t\tvalue,\n\t\tvariant,\n\t\tseverity = \"primary\",\n\t\t...rest\n\t}: InputProps,\n\tref: React.Ref<HTMLInputElement>,\n) {\n\tconst computedSize = useMemo(() => {\n\t\treturn applyResponsiveMapping(size, SizeMapping)\n\t}, [size])\n\n\tconst color = useSeverityColor(severity)\n\n\tconst displayInputLength = showInputLength || (showInputLength === undefined && rest.maxLength !== undefined)\n\tconst valueAsString = value !== undefined ? value.toString() : undefined\n\n\treturn (\n\t\t<RadixTextField.Root\n\t\t\tclassName={classNames({\n\t\t\t\t[styles.accommodateCharCount!]: displayInputLength,\n\t\t\t})}\n\t\t\tsize={computedSize}\n\t\t\tvariant={variant}\n\t\t\tcolor={color}\n\t\t>\n\t\t\t<RadixTextField.Slot>{leftIcon}</RadixTextField.Slot>\n\t\t\t<RadixTextField.Input\n\t\t\t\tclassName={classNames(styles.default, className, {\n\t\t\t\t\t[styles.noLeftIcon!]: !leftIcon,\n\t\t\t\t\t[styles.noRightIcon!]: !rightIcon,\n\t\t\t\t})}\n\t\t\t\tref={ref}\n\t\t\t\tsize={computedSize}\n\t\t\t\tvariant={variant}\n\t\t\t\tcolor={color}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t\t<RadixTextField.Slot>{rightIcon}</RadixTextField.Slot>\n\t\t\t{displayInputLength && (\n\t\t\t\t<Text as=\"p\" className={styles.charCount} size=\"1\" color=\"gray\">\n\t\t\t\t\t{rest.maxLength !== undefined\n\t\t\t\t\t\t? `${valueAsString?.length}/${rest.maxLength}`\n\t\t\t\t\t\t: `${valueAsString?.length}`}\n\t\t\t\t</Text>\n\t\t\t)}\n\t\t</RadixTextField.Root>\n\t)\n})\nexport const Input: FC<InputProps> = React.memo(_Input)\n","import React, { forwardRef, FC } from \"react\"\nimport { Popover as RadixPopover } from \"@radix-ui/themes\"\nimport { PopoverProps } from \"./typings.ts\"\n\nconst _Popover = forwardRef(function Popover(\n\t{ defaultOpen = false, modal = false, content, children, ...rest }: PopoverProps,\n\tref: React.Ref<HTMLDivElement>,\n) {\n\treturn (\n\t\t<RadixPopover.Root defaultOpen={defaultOpen} modal={modal}>\n\t\t\t<RadixPopover.Trigger>{children}</RadixPopover.Trigger>\n\t\t\t<RadixPopover.Content ref={ref} {...rest}>\n\t\t\t\t{content(RadixPopover.Close)}\n\t\t\t</RadixPopover.Content>\n\t\t</RadixPopover.Root>\n\t)\n})\nexport const Popover: FC<PopoverProps> = React.memo(_Popover)\n","import { FC, forwardRef, memo, Ref } from \"react\"\nimport { Item, Root } from \"@radix-ui/react-toggle-group\"\nimport { ToggleGroupItemProps, ToggleGroupSingleProps } from \"./typings.ts\"\nimport { IconButton } from \"../Buttons\"\nimport classNames from \"classnames\"\nimport { ButtonGroup } from \"../ButtonGroup\"\n\nconst _ToggleGroup = forwardRef(function ToggleGroup(\n\t{\n\t\tclassName,\n\t\titems,\n\t\torientation = \"horizontal\",\n\t\tmerged = true,\n\t\tvalue,\n\t\tseverity,\n\t\tgap,\n\t\tsize,\n\t\t...rest\n\t}: ToggleGroupSingleProps,\n\tref: Ref<HTMLDivElement>,\n) {\n\treturn (\n\t\t<Root\n\t\t\tclassName={classNames(\"overmap-toggle-group\", className)}\n\t\t\tref={ref}\n\t\t\tvalue={value}\n\t\t\torientation={orientation}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<ButtonGroup\n\t\t\t\twidth=\"min-content\"\n\t\t\t\theight=\"min-content\"\n\t\t\t\tmerged={merged}\n\t\t\t\tdirection={orientation === \"vertical\" ? \"column\" : \"row\"}\n\t\t\t\tgap={gap}\n\t\t\t>\n\t\t\t\t{items.map(({ children, ...rest }: ToggleGroupItemProps) => (\n\t\t\t\t\t<Item asChild {...rest} key={rest.value}>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\tclassName={classNames(\"overmap-toggle-group-button\")}\n\t\t\t\t\t\t\taria-label={rest.value}\n\t\t\t\t\t\t\tseverity={severity}\n\t\t\t\t\t\t\tvariant={rest.value === value ? \"solid\" : \"soft\"}\n\t\t\t\t\t\t\tsize={size}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</Item>\n\t\t\t\t))}\n\t\t\t</ButtonGroup>\n\t\t</Root>\n\t)\n})\n\n/** The Toggle Group Component is a user interface element that allows users to select a single option from a set of\n * mutually exclusive choices. It is commonly used in situations where users need to make a single selection from a\n * predefined list of options. This component is built using the ButtonGroup and IconButton components in combination\n * with the Radix Toggle Group primitive found here https://www.radix-ui.com/primitives/docs/components/toggle-group */\nexport const ToggleGroup: FC<ToggleGroupSingleProps> = memo(_ToggleGroup)\n","import { FC, forwardRef, memo, Ref, useCallback } from \"react\"\nimport * as RadixToast from \"@radix-ui/react-toast\"\nimport { Callout, Flex } from \"@radix-ui/themes\"\nimport { Cross2Icon, InfoCircledIcon } from \"@radix-ui/react-icons\"\nimport classNames from \"classnames\"\nimport { IconButton } from \"../Buttons\"\nimport { ToastProps, ToastProviderProps } from \"./typings.ts\"\nimport { useSeverityColor } from \"../utils.ts\"\n\nimport styles from \"./Toast.module.sass\"\n\nconst _Toast = forwardRef(function Toast(\n\t{ title, description, icon, severity = \"primary\", size, onClose, ...rest }: ToastProps,\n\tref: Ref<HTMLLIElement>,\n) {\n\tconst color = useSeverityColor(severity)\n\tconst handleOpenChange = useCallback(\n\t\t(open: boolean) => {\n\t\t\tif (!open && onClose) onClose()\n\t\t},\n\t\t[onClose],\n\t)\n\n\treturn (\n\t\t<RadixToast.Root asChild ref={ref} {...rest} onOpenChange={handleOpenChange}>\n\t\t\t<Callout.Root\n\t\t\t\tclassName={classNames(\"overmap-toast\", styles.wrapper)}\n\t\t\t\tvariant=\"surface\"\n\t\t\t\tcolor={color}\n\t\t\t\tsize={size}\n\t\t\t>\n\t\t\t\t<Flex width=\"100%\" align=\"center\" gap=\"4\" justify=\"between\">\n\t\t\t\t\t<Flex align=\"center\" gap=\"4\">\n\t\t\t\t\t\t<Callout.Icon>{icon || <InfoCircledIcon />}</Callout.Icon>\n\t\t\t\t\t\t<Flex direction=\"column\" gap=\"0\">\n\t\t\t\t\t\t\t<RadixToast.Title asChild>\n\t\t\t\t\t\t\t\t<Callout.Text weight=\"bold\">{title}</Callout.Text>\n\t\t\t\t\t\t\t</RadixToast.Title>\n\t\t\t\t\t\t\t<RadixToast.Description asChild>\n\t\t\t\t\t\t\t\t<Callout.Text weight=\"light\">{description}</Callout.Text>\n\t\t\t\t\t\t\t</RadixToast.Description>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</Flex>\n\t\t\t\t\t<RadixToast.Close asChild>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\tclassName={styles.closeButton}\n\t\t\t\t\t\t\taria-label=\"Close\"\n\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tseverity={severity}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Cross2Icon />\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</RadixToast.Close>\n\t\t\t\t</Flex>\n\t\t\t</Callout.Root>\n\t\t</RadixToast.Root>\n\t)\n})\n\nexport const ToastProvider: FC<ToastProviderProps> = memo(function ToastProvider({\n\tchildren,\n\t...rest\n}: ToastProviderProps) {\n\treturn (\n\t\t<RadixToast.Provider swipeDirection=\"right\" swipeThreshold={75} {...rest}>\n\t\t\t{children}\n\t\t</RadixToast.Provider>\n\t)\n})\n\nexport const Toast: FC<ToastProps> = memo(_Toast)\nexport const ToastViewport: FC<RadixToast.ToastViewportProps> = RadixToast.Viewport\n","import { memo, createContext, useState, useCallback, FC } from \"react\"\nimport { IToastContext, SimpleToastMessage, ToastContextProviderProps, ToastProps } from \"./typings.ts\"\nimport { Toast, ToastProvider, ToastViewport } from \"./Toast.tsx\"\n\nexport const ToastContext = createContext({} as IToastContext)\n\nexport const ToastContextProvider: FC<ToastContextProviderProps> = memo(function ToastContextProvider({\n\tchildren,\n\t// Use this class to change where the viewport for the toasts should be\n\tviewportClass,\n\thotkey,\n\t// Default duration value for all Toasts\n\tduration = 10000,\n\t...rest\n}: ToastContextProviderProps) {\n\tconst [toasts, setToasts] = useState<ToastProps[]>([])\n\n\tconst showToast = useCallback((toastProps: ToastProps) => {\n\t\tsetToasts((prevToasts) => [...prevToasts, toastProps])\n\t}, [])\n\n\tconst showPrimary = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"primary\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst showSuccess = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"success\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst showError = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"danger\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst showInfo = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"info\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst deleteToastAtIndex = useCallback(\n\t\t(index: number) => {\n\t\t\tconst tempToasts = [...toasts]\n\t\t\ttempToasts.splice(index, 1)\n\t\t\tsetToasts(() => tempToasts)\n\t\t},\n\t\t[toasts],\n\t)\n\n\tconst toastContextValue = {\n\t\tshowToast,\n\t\tshowPrimary,\n\t\tshowSuccess,\n\t\tshowError,\n\t\tshowInfo,\n\t}\n\n\treturn (\n\t\t<ToastContext.Provider value={toastContextValue}>\n\t\t\t<ToastProvider duration={duration} {...rest}>\n\t\t\t\t<ToastViewport className={viewportClass} hotkey={hotkey} />\n\t\t\t\t{toasts.map((toastProps, index) => (\n\t\t\t\t\t<Toast key={index} {...toastProps} onClose={() => deleteToastAtIndex(index)} />\n\t\t\t\t))}\n\t\t\t\t{children}\n\t\t\t</ToastProvider>\n\t\t</ToastContext.Provider>\n\t)\n})\n","import { Theme } from \"@radix-ui/themes\"\nimport { ComponentProps, forwardRef, memo } from \"react\"\n// css file contains updates to the default radix tokens\nimport \"./DefaultTheme.css\"\n\nexport type ThemeProps = ComponentProps<typeof Theme>\n\nexport const DefaultTheme = memo(\n\tforwardRef<HTMLDivElement>((props: ThemeProps, ref) => {\n\t\treturn <Theme panelBackground=\"solid\" ref={ref} {...props} />\n\t}),\n)\n"],"names":["hasOwn","classNames","classes","i","arg","argType","inner","key","module","hoverEffectClassNameMapping","styles","applyResponsiveMapping","value","mapping","_value","nonThemeSeverityMapping","useSeverityColor","severity","theme","useThemeContext","SizeMapping","_Button","forwardRef","className","fluid","size","hoverEffects","type","rest","ref","color","hoverEffectClasses","hoverEffect","jsx","RadixButton","Button","React","children","RadixIconButton","IconButton","GhostVariantSizeToGapMapping","_ButtonGroup","merged","gap","direction","variant","Flex","child","index","cloneElement","ButtonGroup","memo","DialogContent","props","title","description","content","closeDialog","jsxs","Dialog","Cross1Icon","onOpen","onCloseInterrupt","contentProps","open","setOpen","useState","handleOpenChange","useCallback","next","options","RadixDialog","Title","AlertDialog","AlertDialogContent","actionText","cancelText","onAction","onCancel","helpers","useMemo","RadixAlertDialog","createContext","initialState","AlertDialogProvider","state","setState","openDialog","useAlertDialog","useContext","_Select","placeholder","side","items","mappedSize","createElement","RadixSelect","label","Select","_Input","leftIcon","rightIcon","showInputLength","computedSize","displayInputLength","valueAsString","RadixTextField","Text","Input","_Popover","defaultOpen","modal","RadixPopover","Popover","_ToggleGroup","orientation","Root","Item","ToggleGroup","_Toast","icon","onClose","RadixToast","Callout","InfoCircledIcon","Cross2Icon","ToastProvider","Toast","ToastViewport","ToastContext","ToastContextProvider","viewportClass","hotkey","duration","toasts","setToasts","showToast","toastProps","prevToasts","showPrimary","simpleMessage","showSuccess","showError","showInfo","deleteToastAtIndex","tempToasts","toastContextValue","DefaultTheme","Theme"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"blocks.js","sources":["../node_modules/classnames/index.js","../src/Buttons/constants.ts","../src/utils.ts","../src/constants.ts","../src/Buttons/Button.tsx","../src/Buttons/IconButton.tsx","../src/ButtonGroup/ButtonGroup.tsx","../src/Dialogs/Dialog/DialogContent.tsx","../src/Dialogs/Dialog/Dialog.tsx","../src/Dialogs/AlertDialog/AlertDialogContent.tsx","../src/Dialogs/AlertDialog/AlertDialog.tsx","../src/Dialogs/AlertDialog/context.tsx","../src/Dialogs/AlertDialog/hooks.ts","../src/Select/Select.tsx","../src/Input/Input.tsx","../src/Popover/Popover.tsx","../src/ToggleGroup/ToggleGroup.tsx","../src/Toast/Toast.tsx","../src/Toast/ToastContext.tsx","../src/Theme/DefaultTheme.tsx"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import { ButtonHoverEffect } from \"./typings.ts\"\nimport styles from \"./Button.module.sass\"\n\nexport const hoverEffectClassNameMapping: Record<ButtonHoverEffect, string | undefined> = {\n\tspin90Clockwise: styles.hoverSpin90Clockwise,\n\tspin180Clockwise: styles.hoverSpin180Clockwise,\n\tspin360Clockwise: styles.hoverSpin360Clockwise,\n}\n","import { Responsive, useThemeContext } from \"@radix-ui/themes\"\nimport { ThemeProps } from \"Theme\"\nimport { Severity } from \"typings\"\n\n// applyResponsiveMapping is a helper function used to map the keys of a Radix Responsive type that can be understood\n// by a Radix component or primitive. The point of this is to leverage our own custom prop names and values while still\n// using Radix's built in Responsiveness functionality.\n/**\n * Returns an object with mapped key values or a single mapped value\n * @param value an object or string\n * @param mapping a Record mapping the object values of param value\n */\nexport function applyResponsiveMapping<T extends string, K>(value: Responsive<T>, mapping: Record<T, K>) {\n\tif (typeof value === \"object\") {\n\t\tif (!(\"initial\" in value)) {\n\t\t\t// Responsive objects require an 'initial' property to be set that acts as a default\n\t\t\tthrow new Error(\"Expected initial property to be set in Responsive object\")\n\t\t}\n\t\treturn Object.fromEntries(Object.entries(value).map(([key, _value]) => [key, mapping[_value]]))\n\t} else {\n\t\treturn mapping[value]\n\t}\n}\n\nconst nonThemeSeverityMapping = {\n\tsuccess: \"green\",\n\tdanger: \"red\",\n\tinfo: \"gray\",\n} as const\n\nexport type AccentColor = NonNullable<ThemeProps[\"accentColor\"]>\n\n/** Performs theme-sensitive mapping of a severity to radix color */\nexport const useSeverityColor = (severity: Severity): AccentColor => {\n\tconst theme = useThemeContext()\n\tif (severity === \"primary\") return theme.accentColor\n\n\treturn nonThemeSeverityMapping[severity]\n}\n","import { Size } from \"./typings.ts\"\n\n// Mappings\nexport const SizeMapping: Record<Size, \"1\" | \"2\" | \"3\"> = {\n\tsmall: \"1\",\n\tmedium: \"2\",\n\tlarge: \"3\",\n}\n","import React, { FC, forwardRef } from \"react\"\nimport { ButtonProps } from \"./typings.ts\"\nimport styles from \"./Button.module.sass\"\nimport classNames from \"classnames\"\nimport { Button as RadixButton } from \"@radix-ui/themes\"\nimport { hoverEffectClassNameMapping } from \"./constants.ts\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\n\nconst _Button = forwardRef(function Button(\n\t{ className, fluid, size = \"medium\", severity = \"primary\", hoverEffects, type = \"button\", ...rest }: ButtonProps,\n\tref: React.Ref<HTMLButtonElement>,\n) {\n\tconst color = useSeverityColor(severity)\n\tconst hoverEffectClasses =\n\t\thoverEffects?.map((hoverEffect) => {\n\t\t\treturn hoverEffectClassNameMapping[hoverEffect]\n\t\t}) || []\n\n\treturn (\n\t\t<RadixButton\n\t\t\tref={ref}\n\t\t\tclassName={classNames(className, hoverEffectClasses, {\n\t\t\t\t[styles.fluid!]: fluid,\n\t\t\t})}\n\t\t\tcolor={color}\n\t\t\tsize={applyResponsiveMapping(size, SizeMapping)}\n\t\t\ttype={type}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\n\n// using FC so storybook correctly displays the component props\nconst Button: FC<ButtonProps> = React.memo(_Button)\n\nexport default Button\n","import React, { FC, forwardRef } from \"react\"\nimport { ButtonProps } from \"./typings.ts\"\nimport classNames from \"classnames\"\nimport { IconButton as RadixIconButton } from \"@radix-ui/themes\"\nimport { hoverEffectClassNameMapping } from \"./constants.ts\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\n\nimport styles from \"./Button.module.sass\"\n\ninterface IconButtonProps extends Omit<ButtonProps, \"fluid\"> {\n\t\"aria-label\": string\n}\n\nconst _Button = forwardRef(function Button(\n\t{\n\t\tclassName,\n\t\tchildren,\n\t\tsize = \"medium\",\n\t\tseverity = \"primary\",\n\t\thoverEffects,\n\t\ttype = \"button\",\n\t\t...rest\n\t}: IconButtonProps,\n\tref: React.Ref<HTMLButtonElement>,\n) {\n\tconst color = useSeverityColor(severity)\n\tconst hoverEffectClasses =\n\t\thoverEffects?.map((hoverEffect) => {\n\t\t\treturn hoverEffectClassNameMapping[hoverEffect]\n\t\t}) || []\n\n\treturn (\n\t\t<RadixIconButton\n\t\t\tclassName={classNames(className, hoverEffectClasses, styles.default)}\n\t\t\tref={ref}\n\t\t\tcolor={color}\n\t\t\tsize={applyResponsiveMapping(size, SizeMapping)}\n\t\t\ttype={type}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children}\n\t\t</RadixIconButton>\n\t)\n})\n\n// using FC so storybook correctly displays the component props\n/** The `IconButton` is a `Button` variant specifically designed for single icons. */\nconst IconButton: FC<IconButtonProps> = React.memo(_Button)\n\nexport default IconButton\n","import { FC, forwardRef, memo, Ref, cloneElement } from \"react\"\nimport { Flex } from \"@radix-ui/themes\"\nimport classNames from \"classnames\"\nimport { ButtonGroupProps } from \"./typings.ts\"\n\nimport styles from \"./ButtonGroup.module.sass\"\nimport { Size } from \"../typings.ts\"\nimport { applyResponsiveMapping } from \"../utils.ts\"\nimport { Button, IconButton } from \"../Buttons\"\n\nconst GhostVariantSizeToGapMapping: Record<\"row\" | \"column\", Record<Size, ButtonGroupProps[\"gap\"]>> = {\n\trow: { small: \"4\", medium: \"4\", large: \"5\" },\n\tcolumn: { small: \"2\", medium: \"3\", large: \"4\" },\n}\n\nconst _ButtonGroup = forwardRef(function ButtonGroup(\n\t{\n\t\tclassName,\n\t\tmerged = false,\n\t\tchildren,\n\t\tgap = \"2\",\n\t\tdirection = \"row\",\n\t\tseverity = \"primary\",\n\t\tsize = \"medium\",\n\t\tvariant = \"solid\",\n\t\thoverEffects,\n\t\t...rest\n\t}: ButtonGroupProps,\n\tref: Ref<HTMLDivElement>,\n) {\n\treturn (\n\t\t<Flex\n\t\t\tclassName={classNames(\"overmap-button-group\", className, {\n\t\t\t\t[styles.merged!]: merged,\n\t\t\t})}\n\t\t\tref={ref}\n\t\t\tgap={\n\t\t\t\tmerged\n\t\t\t\t\t? variant === \"ghost\"\n\t\t\t\t\t\t? applyResponsiveMapping(size, GhostVariantSizeToGapMapping[direction])\n\t\t\t\t\t\t: \"0\"\n\t\t\t\t\t: gap\n\t\t\t}\n\t\t\tdirection={direction}\n\t\t\tdata-direction={direction}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children.map((child, index) => {\n\t\t\t\tif (child.type === Button || child.type === IconButton) {\n\t\t\t\t\treturn cloneElement(child, { key: index, size, severity, variant, hoverEffects })\n\t\t\t\t} else {\n\t\t\t\t\treturn child\n\t\t\t\t}\n\t\t\t})}\n\t\t</Flex>\n\t)\n})\n\n/** The ButtonGroup Component is a user interface element that groups multiple buttons together for improved user\n * interaction and visual clarity. It is commonly used to present related actions or options in a compact and organized\n * manner. The ButtonGroup supports all props of the RadixUI Flex layout component besides MarginProps,\n * further documentation for the Flex layout component can be found here https://www.radix-ui.com/themes/docs/components/flex */\nexport const ButtonGroup: FC<ButtonGroupProps> = memo(_ButtonGroup)\n","import { memo } from \"react\"\nimport { Dialog, Flex, IconButton } from \"@radix-ui/themes\"\nimport { Cross1Icon } from \"@radix-ui/react-icons\"\nimport { DialogContentProps } from \"./typings\"\n\nexport const DialogContent = memo(function DialogContent(props: DialogContentProps) {\n\tconst { title, description, content, closeDialog } = props\n\treturn (\n\t\t<Flex direction=\"column\" gap=\"2\">\n\t\t\t<Flex direction=\"column\" gap=\"1\">\n\t\t\t\t<Flex justify=\"between\">\n\t\t\t\t\t<Dialog.Title mb=\"0\">{title}</Dialog.Title>\n\t\t\t\t\t<Dialog.Close>\n\t\t\t\t\t\t<IconButton color=\"gray\" variant=\"ghost\" aria-label=\"Close\">\n\t\t\t\t\t\t\t<Cross1Icon />\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</Dialog.Close>\n\t\t\t\t</Flex>\n\t\t\t\t<Dialog.Description>{description}</Dialog.Description>\n\t\t\t</Flex>\n\t\t\t{content(closeDialog)}\n\t\t</Flex>\n\t)\n})\n","import { memo, useState, useCallback } from \"react\"\nimport { Dialog as RadixDialog } from \"@radix-ui/themes\"\nimport { DialogContent } from \"./DialogContent\"\nimport { CloseDialogWithOptions, DialogProps } from \"./typings\"\n\n/**\n * Display or collect information in a modal. Unlike the `AlertDialog`, the `Dialog`'s can be nested\n * and close when clicking outside of the dialog content.\n */\nexport const Dialog = memo(function Dialog(props: DialogProps) {\n\tconst { children, size, onOpen, onCloseInterrupt, ...contentProps } = props\n\tconst [open, setOpen] = useState(false)\n\n\tconst handleOpenChange = useCallback(\n\t\t(next: boolean) => {\n\t\t\tif (next && onOpen) {\n\t\t\t\tonOpen()\n\t\t\t} else if (!next && onCloseInterrupt) {\n\t\t\t\t// closes the dialog, bypassing the checks in `handleOpenChange`\n\t\t\t\tconst confirmClose = () => setOpen(false)\n\n\t\t\t\t// if onCloseInterrupt is passed, bypass the standard close behavior and require\n\t\t\t\t// the passed `confirmClose` to close the dialog\n\t\t\t\treturn onCloseInterrupt(confirmClose)\n\t\t\t}\n\n\t\t\tsetOpen(next)\n\t\t},\n\t\t[onOpen, onCloseInterrupt],\n\t)\n\n\tconst closeDialog = useCallback<CloseDialogWithOptions>(\n\t\t(options) => {\n\t\t\tif (options?.force) {\n\t\t\t\t// bypass the checks in the `handleOpenChange` function\n\t\t\t\treturn setOpen(false)\n\t\t\t}\n\n\t\t\thandleOpenChange(false)\n\t\t},\n\t\t[handleOpenChange],\n\t)\n\n\treturn (\n\t\t<RadixDialog.Root open={open} onOpenChange={handleOpenChange}>\n\t\t\t<RadixDialog.Content size={size}>\n\t\t\t\t<DialogContent closeDialog={closeDialog} {...contentProps} />\n\t\t\t</RadixDialog.Content>\n\n\t\t\t{children(RadixDialog.Trigger)}\n\t\t</RadixDialog.Root>\n\t)\n})\n","import { AlertDialog, Flex } from \"@radix-ui/themes\"\nimport { AlertDialogStandardContent } from \"./typings\"\nimport { Button } from \"../../Buttons\"\n\n// remove the margin-bottom from the title so that Flex works as expected\nexport const Title: typeof AlertDialog.Title = ((props) => (\n\t<AlertDialog.Title mb=\"0\" {...props} />\n)) as typeof AlertDialog.Title\n\nexport const AlertDialogContent = (props: AlertDialogStandardContent) => {\n\tconst { title, description, actionText = \"Confirm\", cancelText = \"Cancel\", onAction, onCancel, severity } = props\n\treturn (\n\t\t<Flex direction=\"column\" gap=\"2\">\n\t\t\t<Flex direction=\"column\" gap=\"1\">\n\t\t\t\t<Title>{title}</Title>\n\t\t\t\t<AlertDialog.Description>{description}</AlertDialog.Description>\n\t\t\t</Flex>\n\n\t\t\t<Flex gap=\"3\" mt=\"4\" justify=\"end\">\n\t\t\t\t<AlertDialog.Cancel>\n\t\t\t\t\t<Button variant=\"soft\" severity=\"info\" onClick={onCancel}>\n\t\t\t\t\t\t{cancelText}\n\t\t\t\t\t</Button>\n\t\t\t\t</AlertDialog.Cancel>\n\t\t\t\t<AlertDialog.Action>\n\t\t\t\t\t<Button variant=\"solid\" severity={severity} onClick={onAction}>\n\t\t\t\t\t\t{actionText}\n\t\t\t\t\t</Button>\n\t\t\t\t</AlertDialog.Action>\n\t\t\t</Flex>\n\t\t</Flex>\n\t)\n}\n","import { memo, useMemo } from \"react\"\nimport { AlertDialog as RadixAlertDialog } from \"@radix-ui/themes\"\nimport { AlertDialogContentHelpers, AlertDialogProps } from \"./typings\"\nimport { AlertDialogContent, Title } from \"./AlertDialogContent\"\n\n/**\n * The AlertDialog is used to confirm an action or prompt the user for a decision.\n * Unlike the Dialog, the AlertDialog is not dismissible by clicking outside of the dialog, nor can it be nested.\n *\n * To use, place the `AlertDialogProvider` at the root of your app and use the `useAlertDialog` hook to open the dialog.\n *\n * To set the content of the dialog, use the `content` prop or pass values for the `title`, `description`, and `onAction` props.\n */\nexport const AlertDialog = memo(function AlertDialog(props: AlertDialogProps) {\n\tconst { open, setOpen, children, ...contentProps } = props\n\n\tconst helpers: AlertDialogContentHelpers = useMemo(() => {\n\t\treturn {\n\t\t\tclose: () => setOpen(false),\n\t\t\tTitle,\n\t\t\tDescription: RadixAlertDialog.Description,\n\t\t}\n\t}, [setOpen])\n\n\treturn (\n\t\t<RadixAlertDialog.Root open={open} onOpenChange={setOpen}>\n\t\t\t<RadixAlertDialog.Content>\n\t\t\t\t{\"content\" in contentProps ? contentProps.content(helpers) : <AlertDialogContent {...contentProps} />}\n\t\t\t</RadixAlertDialog.Content>\n\t\t\t{children}\n\t\t</RadixAlertDialog.Root>\n\t)\n})\n","import { createContext, memo, useState, useCallback } from \"react\"\nimport { AlertDialogContextType, AlertDialogOptions } from \"./typings\"\nimport { AlertDialog } from \"./AlertDialog\"\n\ninterface AlertDialogProviderProps {\n\tchildren: React.ReactNode\n}\n\nexport const AlertDialogContent = createContext<AlertDialogContextType>(() => {\n\tthrow new Error(\"No AlertDialogProvider found\")\n})\n\nconst initialState: AlertDialogOptions = {\n\tcontent: () => null,\n}\n\nexport const AlertDialogProvider = memo(function AlertDialogProvider({ children }: AlertDialogProviderProps) {\n\tconst [open, setOpen] = useState(false)\n\tconst [state, setState] = useState<AlertDialogOptions>(initialState)\n\n\tconst openDialog = useCallback<AlertDialogContextType>(\n\t\t(options) => {\n\t\t\tif (open) throw new Error(\"AlertDialog is already open\")\n\n\t\t\tsetState(options)\n\t\t\tsetOpen(true)\n\t\t},\n\t\t[open],\n\t)\n\n\treturn (\n\t\t<AlertDialog open={open} setOpen={setOpen} {...state}>\n\t\t\t<AlertDialogContent.Provider value={openDialog}>{children}</AlertDialogContent.Provider>\n\t\t</AlertDialog>\n\t)\n})\n","import { useContext } from \"react\"\nimport { AlertDialogContent } from \"./context\"\n\nexport const useAlertDialog = () => {\n\treturn useContext(AlertDialogContent)\n}\n","import React, { FC, forwardRef, useMemo } from \"react\"\nimport { Select as RadixSelect } from \"@radix-ui/themes\"\nimport classNames from \"classnames\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\nimport { SelectItemProps, SelectProps } from \"./typings.ts\"\n\nimport styles from \"./Select.module.sass\"\n\nconst _Select = forwardRef(function Select(\n\t{\n\t\tclassName,\n\t\tfluid,\n\t\tsize = \"medium\",\n\t\tvariant = \"surface\",\n\t\tseverity = \"primary\",\n\t\tplaceholder = \"Select\",\n\t\tside,\n\t\titems = [],\n\t\tvalue,\n\t\t...rest\n\t}: SelectProps,\n\tref: React.Ref<HTMLButtonElement>,\n) {\n\tconst mappedSize = useMemo(() => {\n\t\treturn applyResponsiveMapping(size, SizeMapping)\n\t}, [size])\n\tconst color = useSeverityColor(severity)\n\n\t// TODO: extend functionality to support grouping of items\n\t// TODO: remove key change based on value once placeholder issue it fixed in radix-ui/themes\n\treturn (\n\t\t<RadixSelect.Root size={mappedSize} {...rest} key={value === undefined ? 1 : 0} value={value}>\n\t\t\t<RadixSelect.Trigger\n\t\t\t\tclassName={classNames(className, {\n\t\t\t\t\t[styles.fluid!]: fluid,\n\t\t\t\t})}\n\t\t\t\tref={ref}\n\t\t\t\tvariant={variant}\n\t\t\t\tplaceholder={placeholder}\n\t\t\t\tcolor={color}\n\t\t\t/>\n\t\t\t<RadixSelect.Content\n\t\t\t\tside={side}\n\t\t\t\tposition=\"popper\"\n\t\t\t\tvariant={variant !== \"surface\" ? \"soft\" : \"solid\"}\n\t\t\t\tcolor={color}\n\t\t\t>\n\t\t\t\t{items.map(({ label, value, ...rest }: SelectItemProps) => (\n\t\t\t\t\t<RadixSelect.Item key={value} value={value} {...rest}>\n\t\t\t\t\t\t{label}\n\t\t\t\t\t</RadixSelect.Item>\n\t\t\t\t))}\n\t\t\t</RadixSelect.Content>\n\t\t</RadixSelect.Root>\n\t)\n})\nexport const Select: FC<SelectProps> = React.memo(_Select)\n","import React, { FC, forwardRef, useMemo } from \"react\"\nimport { Text, TextField as RadixTextField } from \"@radix-ui/themes\"\nimport classNames from \"classnames\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\nimport { InputProps } from \"./typings.ts\"\n\nimport styles from \"./Input.module.sass\"\n\nconst _Input = forwardRef(function Input(\n\t{\n\t\tclassName,\n\t\tleftIcon,\n\t\trightIcon,\n\t\tsize = \"medium\",\n\t\tshowInputLength,\n\t\tvalue,\n\t\tvariant,\n\t\tseverity = \"primary\",\n\t\t...rest\n\t}: InputProps,\n\tref: React.Ref<HTMLInputElement>,\n) {\n\tconst computedSize = useMemo(() => {\n\t\treturn applyResponsiveMapping(size, SizeMapping)\n\t}, [size])\n\n\tconst color = useSeverityColor(severity)\n\n\tconst displayInputLength = showInputLength || (showInputLength === undefined && rest.maxLength !== undefined)\n\tconst valueAsString = value !== undefined ? value.toString() : undefined\n\n\treturn (\n\t\t<RadixTextField.Root\n\t\t\tclassName={classNames({\n\t\t\t\t[styles.accommodateCharCount!]: displayInputLength,\n\t\t\t})}\n\t\t\tsize={computedSize}\n\t\t\tvariant={variant}\n\t\t\tcolor={color}\n\t\t>\n\t\t\t<RadixTextField.Slot>{leftIcon}</RadixTextField.Slot>\n\t\t\t<RadixTextField.Input\n\t\t\t\tclassName={classNames(styles.default, className, {\n\t\t\t\t\t[styles.noLeftIcon!]: !leftIcon,\n\t\t\t\t\t[styles.noRightIcon!]: !rightIcon,\n\t\t\t\t})}\n\t\t\t\tref={ref}\n\t\t\t\tsize={computedSize}\n\t\t\t\tvariant={variant}\n\t\t\t\tcolor={color}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t\t<RadixTextField.Slot>{rightIcon}</RadixTextField.Slot>\n\t\t\t{displayInputLength && (\n\t\t\t\t<Text as=\"p\" className={styles.charCount} size=\"1\" color=\"gray\">\n\t\t\t\t\t{rest.maxLength !== undefined\n\t\t\t\t\t\t? `${valueAsString?.length}/${rest.maxLength}`\n\t\t\t\t\t\t: `${valueAsString?.length}`}\n\t\t\t\t</Text>\n\t\t\t)}\n\t\t</RadixTextField.Root>\n\t)\n})\nexport const Input: FC<InputProps> = React.memo(_Input)\n","import React, { forwardRef, FC } from \"react\"\nimport { Popover as RadixPopover } from \"@radix-ui/themes\"\nimport { PopoverProps } from \"./typings.ts\"\n\nconst _Popover = forwardRef(function Popover(\n\t{ defaultOpen = false, modal = false, content, children, ...rest }: PopoverProps,\n\tref: React.Ref<HTMLDivElement>,\n) {\n\treturn (\n\t\t<RadixPopover.Root defaultOpen={defaultOpen} modal={modal}>\n\t\t\t<RadixPopover.Trigger>{children}</RadixPopover.Trigger>\n\t\t\t<RadixPopover.Content ref={ref} {...rest}>\n\t\t\t\t{content(RadixPopover.Close)}\n\t\t\t</RadixPopover.Content>\n\t\t</RadixPopover.Root>\n\t)\n})\nexport const Popover: FC<PopoverProps> = React.memo(_Popover)\n","import { FC, forwardRef, memo, Ref } from \"react\"\nimport { Item, Root } from \"@radix-ui/react-toggle-group\"\nimport { ToggleGroupItemProps, ToggleGroupSingleProps } from \"./typings.ts\"\nimport { IconButton } from \"../Buttons\"\nimport classNames from \"classnames\"\nimport { ButtonGroup } from \"../ButtonGroup\"\n\nconst _ToggleGroup = forwardRef(function ToggleGroup(\n\t{\n\t\tclassName,\n\t\titems,\n\t\torientation = \"horizontal\",\n\t\tmerged = true,\n\t\tvalue,\n\t\tseverity,\n\t\tgap,\n\t\tsize,\n\t\t...rest\n\t}: ToggleGroupSingleProps,\n\tref: Ref<HTMLDivElement>,\n) {\n\treturn (\n\t\t<Root\n\t\t\tclassName={classNames(\"overmap-toggle-group\", className)}\n\t\t\tref={ref}\n\t\t\tvalue={value}\n\t\t\torientation={orientation}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<ButtonGroup\n\t\t\t\twidth=\"min-content\"\n\t\t\t\theight=\"min-content\"\n\t\t\t\tmerged={merged}\n\t\t\t\tdirection={orientation === \"vertical\" ? \"column\" : \"row\"}\n\t\t\t\tgap={gap}\n\t\t\t>\n\t\t\t\t{items.map(({ children, ...rest }: ToggleGroupItemProps) => (\n\t\t\t\t\t<Item asChild {...rest} key={rest.value}>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\tclassName={classNames(\"overmap-toggle-group-button\")}\n\t\t\t\t\t\t\taria-label={rest.value}\n\t\t\t\t\t\t\tseverity={severity}\n\t\t\t\t\t\t\tvariant={rest.value === value ? \"solid\" : \"soft\"}\n\t\t\t\t\t\t\tsize={size}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</Item>\n\t\t\t\t))}\n\t\t\t</ButtonGroup>\n\t\t</Root>\n\t)\n})\n\n/** The Toggle Group Component is a user interface element that allows users to select a single option from a set of\n * mutually exclusive choices. It is commonly used in situations where users need to make a single selection from a\n * predefined list of options. This component is built using the ButtonGroup and IconButton components in combination\n * with the Radix Toggle Group primitive found here https://www.radix-ui.com/primitives/docs/components/toggle-group */\nexport const ToggleGroup: FC<ToggleGroupSingleProps> = memo(_ToggleGroup)\n","import { FC, forwardRef, memo, Ref, useCallback } from \"react\"\nimport * as RadixToast from \"@radix-ui/react-toast\"\nimport { Callout, Flex } from \"@radix-ui/themes\"\nimport { Cross2Icon, InfoCircledIcon } from \"@radix-ui/react-icons\"\nimport classNames from \"classnames\"\nimport { IconButton } from \"../Buttons\"\nimport { ToastProps, ToastProviderProps } from \"./typings.ts\"\nimport { useSeverityColor } from \"../utils.ts\"\n\nimport styles from \"./Toast.module.sass\"\n\nconst _Toast = forwardRef(function Toast(\n\t{ title, description, icon, severity = \"primary\", size, onClose, ...rest }: ToastProps,\n\tref: Ref<HTMLLIElement>,\n) {\n\tconst color = useSeverityColor(severity)\n\tconst handleOpenChange = useCallback(\n\t\t(open: boolean) => {\n\t\t\tif (!open && onClose) onClose()\n\t\t},\n\t\t[onClose],\n\t)\n\n\treturn (\n\t\t<RadixToast.Root asChild ref={ref} {...rest} onOpenChange={handleOpenChange}>\n\t\t\t<Callout.Root\n\t\t\t\tclassName={classNames(\"overmap-toast\", styles.wrapper)}\n\t\t\t\tvariant=\"surface\"\n\t\t\t\tcolor={color}\n\t\t\t\tsize={size}\n\t\t\t>\n\t\t\t\t<Flex width=\"100%\" align=\"center\" gap=\"4\" justify=\"between\">\n\t\t\t\t\t<Flex align=\"center\" gap=\"4\">\n\t\t\t\t\t\t<Callout.Icon>{icon || <InfoCircledIcon />}</Callout.Icon>\n\t\t\t\t\t\t<Flex direction=\"column\" gap=\"0\">\n\t\t\t\t\t\t\t<RadixToast.Title asChild>\n\t\t\t\t\t\t\t\t<Callout.Text weight=\"bold\">{title}</Callout.Text>\n\t\t\t\t\t\t\t</RadixToast.Title>\n\t\t\t\t\t\t\t<RadixToast.Description asChild>\n\t\t\t\t\t\t\t\t<Callout.Text weight=\"light\">{description}</Callout.Text>\n\t\t\t\t\t\t\t</RadixToast.Description>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</Flex>\n\t\t\t\t\t<RadixToast.Close asChild>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\tclassName={styles.closeButton}\n\t\t\t\t\t\t\taria-label=\"Close\"\n\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tseverity={severity}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Cross2Icon />\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</RadixToast.Close>\n\t\t\t\t</Flex>\n\t\t\t</Callout.Root>\n\t\t</RadixToast.Root>\n\t)\n})\n\nexport const ToastProvider: FC<ToastProviderProps> = memo(function ToastProvider({\n\tchildren,\n\t...rest\n}: ToastProviderProps) {\n\treturn (\n\t\t<RadixToast.Provider swipeDirection=\"right\" swipeThreshold={75} {...rest}>\n\t\t\t{children}\n\t\t</RadixToast.Provider>\n\t)\n})\n\nexport const Toast: FC<ToastProps> = memo(_Toast)\nexport const ToastViewport: FC<RadixToast.ToastViewportProps> = RadixToast.Viewport\n","import { memo, createContext, useState, useCallback, FC } from \"react\"\nimport { IToastContext, SimpleToastMessage, ToastContextProviderProps, ToastProps } from \"./typings.ts\"\nimport { Toast, ToastProvider, ToastViewport } from \"./Toast.tsx\"\n\nexport const ToastContext = createContext({} as IToastContext)\n\nexport const ToastContextProvider: FC<ToastContextProviderProps> = memo(function ToastContextProvider({\n\tchildren,\n\t// Use this class to change where the viewport for the toasts should be\n\tviewportClass,\n\thotkey,\n\t// Default duration value for all Toasts\n\tduration = 10000,\n\t...rest\n}: ToastContextProviderProps) {\n\tconst [toasts, setToasts] = useState<ToastProps[]>([])\n\n\tconst showToast = useCallback((toastProps: ToastProps) => {\n\t\tsetToasts((prevToasts) => [...prevToasts, toastProps])\n\t}, [])\n\n\tconst showPrimary = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"primary\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst showSuccess = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"success\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst showError = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"danger\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst showInfo = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"info\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst deleteToastAtIndex = useCallback(\n\t\t(index: number) => {\n\t\t\tconst tempToasts = [...toasts]\n\t\t\ttempToasts.splice(index, 1)\n\t\t\tsetToasts(() => tempToasts)\n\t\t},\n\t\t[toasts],\n\t)\n\n\tconst toastContextValue = {\n\t\tshowToast,\n\t\tshowPrimary,\n\t\tshowSuccess,\n\t\tshowError,\n\t\tshowInfo,\n\t}\n\n\treturn (\n\t\t<ToastContext.Provider value={toastContextValue}>\n\t\t\t<ToastProvider duration={duration} {...rest}>\n\t\t\t\t<ToastViewport className={viewportClass} hotkey={hotkey} />\n\t\t\t\t{toasts.map((toastProps, index) => (\n\t\t\t\t\t<Toast key={index} {...toastProps} onClose={() => deleteToastAtIndex(index)} />\n\t\t\t\t))}\n\t\t\t\t{children}\n\t\t\t</ToastProvider>\n\t\t</ToastContext.Provider>\n\t)\n})\n","import { Theme, ThemeOptions } from \"@radix-ui/themes\"\nimport { forwardRef, memo, ReactNode } from \"react\"\n// css file contains updates to the default radix tokens\nimport \"./DefaultTheme.css\"\n\nexport interface ThemeProps extends Partial<ThemeOptions> {\n\tchildren: ReactNode\n}\n\nexport const DefaultTheme = memo(\n\tforwardRef<HTMLDivElement, ThemeProps>((props, ref) => {\n\t\tconst { panelBackground = \"solid\", ...rest } = props\n\t\treturn <Theme panelBackground={panelBackground} ref={ref} {...rest} />\n\t}),\n)\n"],"names":["hasOwn","classNames","classes","i","arg","argType","inner","key","module","hoverEffectClassNameMapping","styles","applyResponsiveMapping","value","mapping","_value","nonThemeSeverityMapping","useSeverityColor","severity","theme","useThemeContext","SizeMapping","_Button","forwardRef","className","fluid","size","hoverEffects","type","rest","ref","color","hoverEffectClasses","hoverEffect","jsx","RadixButton","Button","React","children","RadixIconButton","IconButton","GhostVariantSizeToGapMapping","_ButtonGroup","merged","gap","direction","variant","Flex","child","index","cloneElement","ButtonGroup","memo","DialogContent","props","title","description","content","closeDialog","jsxs","Dialog","Cross1Icon","onOpen","onCloseInterrupt","contentProps","open","setOpen","useState","handleOpenChange","useCallback","next","options","RadixDialog","Title","AlertDialog","AlertDialogContent","actionText","cancelText","onAction","onCancel","helpers","useMemo","RadixAlertDialog","createContext","initialState","AlertDialogProvider","state","setState","openDialog","useAlertDialog","useContext","_Select","placeholder","side","items","mappedSize","createElement","RadixSelect","label","Select","_Input","leftIcon","rightIcon","showInputLength","computedSize","displayInputLength","valueAsString","RadixTextField","Text","Input","_Popover","defaultOpen","modal","RadixPopover","Popover","_ToggleGroup","orientation","Root","Item","ToggleGroup","_Toast","icon","onClose","RadixToast","Callout","InfoCircledIcon","Cross2Icon","ToastProvider","Toast","ToastViewport","ToastContext","ToastContextProvider","viewportClass","hotkey","duration","toasts","setToasts","showToast","toastProps","prevToasts","showPrimary","simpleMessage","showSuccess","showError","showInfo","deleteToastAtIndex","tempToasts","toastContextValue","DefaultTheme","panelBackground","Theme"],"mappings":"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","x_google_ignoreList":[0]}
|
package/dist/blocks.umd.cjs
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
(function(o,j){typeof exports=="object"&&typeof module<"u"?j(exports,require("@radix-ui/colors"),require("@radix-ui/react-icons"),require("@radix-ui/themes"),require("react/jsx-runtime"),require("react"),require("@radix-ui/react-toggle-group"),require("@radix-ui/react-toast")):typeof define=="function"&&define.amd?define(["exports","@radix-ui/colors","@radix-ui/react-icons","@radix-ui/themes","react/jsx-runtime","react","@radix-ui/react-toggle-group","@radix-ui/react-toast"],j):(o=typeof globalThis<"u"?globalThis:o||self,j(o.blocks={},o.colors,o.reactIcons,o.themes,o.jsxRuntime,o.React,o.reactToggleGroup,o.RadixToast))})(this,function(o,j,h,e,r,
|
|
1
|
+
(function(o,j){typeof exports=="object"&&typeof module<"u"?j(exports,require("@radix-ui/colors"),require("@radix-ui/react-icons"),require("@radix-ui/themes"),require("react/jsx-runtime"),require("react"),require("@radix-ui/react-toggle-group"),require("@radix-ui/react-toast")):typeof define=="function"&&define.amd?define(["exports","@radix-ui/colors","@radix-ui/react-icons","@radix-ui/themes","react/jsx-runtime","react","@radix-ui/react-toggle-group","@radix-ui/react-toast"],j):(o=typeof globalThis<"u"?globalThis:o||self,j(o.blocks={},o.colors,o.reactIcons,o.themes,o.jsxRuntime,o.React,o.reactToggleGroup,o.RadixToast))})(this,function(o,j,h,e,r,i,F,x){"use strict";function K(n){const a=Object.create(null,{[Symbol.toStringTag]:{value:"Module"}});if(n){for(const l in n)if(l!=="default"){const c=Object.getOwnPropertyDescriptor(n,l);Object.defineProperty(a,l,c.get?c:{enumerable:!0,get:()=>n[l]})}}return a.default=n,Object.freeze(a)}const T=K(x),S={fluid:"_fluid_r73gr_1",hoverSpin90Clockwise:"_hoverSpin90Clockwise_r73gr_15",hoverSpin180Clockwise:"_hoverSpin180Clockwise_r73gr_25",hoverSpin360Clockwise:"_hoverSpin360Clockwise_r73gr_35"};function Q(n){return n&&n.__esModule&&Object.prototype.hasOwnProperty.call(n,"default")?n.default:n}var N={exports:{}};/*!
|
|
2
2
|
Copyright (c) 2018 Jed Watson.
|
|
3
3
|
Licensed under the MIT License (MIT), see
|
|
4
4
|
http://jedwatson.github.io/classnames
|
|
5
|
-
*/(function(n){(function(){var a={}.hasOwnProperty;function i(){for(var c=[],u=0;u<arguments.length;u++){var t=arguments[u];if(t){var d=typeof t;if(d==="string"||d==="number")c.push(t);else if(Array.isArray(t)){if(t.length){var f=i.apply(null,t);f&&c.push(f)}}else if(d==="object"){if(t.toString!==Object.prototype.toString&&!t.toString.toString().includes("[native code]")){c.push(t.toString());continue}for(var s in t)a.call(t,s)&&t[s]&&c.push(s)}}}return c.join(" ")}n.exports?(i.default=i,n.exports=i):window.classNames=i})()})(N);var J=N.exports;const v=Q(J),M={spin90Clockwise:S.hoverSpin90Clockwise,spin180Clockwise:S.hoverSpin180Clockwise,spin360Clockwise:S.hoverSpin360Clockwise};function m(n,a){if(typeof n=="object"){if(!("initial"in n))throw new Error("Expected initial property to be set in Responsive object");return Object.fromEntries(Object.entries(n).map(([i,c])=>[i,a[c]]))}else return a[n]}const U={success:"green",danger:"red",info:"gray"},_=n=>{const a=e.useThemeContext();return n==="primary"?a.accentColor:U[n]},k={small:"1",medium:"2",large:"3"},W=l.forwardRef(function({className:a,fluid:i,size:c="medium",severity:u="primary",hoverEffects:t,type:d="button",...f},s){const g=_(u),b=(t==null?void 0:t.map(p=>M[p]))||[];return r.jsx(e.Button,{ref:s,className:v(a,b,{[S.fluid]:i}),color:g,size:m(c,k),type:d,...f})}),A=l.memo(W),X=l.forwardRef(function({className:a,children:i,size:c="medium",severity:u="primary",hoverEffects:t,type:d="button",...f},s){const g=_(u),b=(t==null?void 0:t.map(p=>M[p]))||[];return r.jsx(e.IconButton,{className:v(a,b,S.default),ref:s,color:g,size:m(c,k),type:d,...f,children:i})}),I=l.memo(X),Y={merged:"_merged_f4366_1"},Z={row:{small:"4",medium:"4",large:"5"},column:{small:"2",medium:"3",large:"4"}},R=l.forwardRef(function({className:a,merged:i=!1,children:c,gap:u="2",direction:t="row",severity:d="primary",size:f="medium",variant:s="solid",hoverEffects:g,...b},p){return r.jsx(e.Flex,{className:v("overmap-button-group",a,{[Y.merged]:i}),ref:p,gap:i?s==="ghost"?m(f,Z[t]):"0":u,direction:t,"data-direction":t,...b,children:c.map((C,w)=>C.type===A||C.type===I?l.cloneElement(C,{key:w,size:f,severity:d,variant:s,hoverEffects:g}):C)})}),G=l.memo(R),ee=l.memo(function(a){const{title:i,description:c,content:u,closeDialog:t}=a;return r.jsxs(e.Flex,{direction:"column",gap:"2",children:[r.jsxs(e.Flex,{direction:"column",gap:"1",children:[r.jsxs(e.Flex,{justify:"between",children:[r.jsx(e.Dialog.Title,{mb:"0",children:i}),r.jsx(e.Dialog.Close,{children:r.jsx(e.IconButton,{color:"gray",variant:"ghost","aria-label":"Close",children:r.jsx(h.Cross1Icon,{})})})]}),r.jsx(e.Dialog.Description,{children:c})]}),u(t)]})}),oe=l.memo(function(a){const{children:i,size:c,onOpen:u,onCloseInterrupt:t,...d}=a,[f,s]=l.useState(!1),g=l.useCallback(p=>{if(p&&u)u();else if(!p&&t)return t(()=>s(!1));s(p)},[u,t]),b=l.useCallback(p=>{if(p!=null&&p.force)return s(!1);g(!1)},[g]);return r.jsxs(e.Dialog.Root,{open:f,onOpenChange:g,children:[r.jsx(e.Dialog.Content,{size:c,children:r.jsx(ee,{closeDialog:b,...d})}),i(e.Dialog.Trigger)]})}),$=n=>r.jsx(e.AlertDialog.Title,{mb:"0",...n}),re=n=>{const{title:a,description:i,actionText:c="Confirm",cancelText:u="Cancel",onAction:t,onCancel:d,severity:f}=n;return r.jsxs(e.Flex,{direction:"column",gap:"2",children:[r.jsxs(e.Flex,{direction:"column",gap:"1",children:[r.jsx($,{children:a}),r.jsx(e.AlertDialog.Description,{children:i})]}),r.jsxs(e.Flex,{gap:"3",mt:"4",justify:"end",children:[r.jsx(e.AlertDialog.Cancel,{children:r.jsx(A,{variant:"soft",severity:"info",onClick:d,children:u})}),r.jsx(e.AlertDialog.Action,{children:r.jsx(A,{variant:"solid",severity:f,onClick:t,children:c})})]})]})},z=l.memo(function(a){const{open:i,setOpen:c,children:u,...t}=a,d=l.useMemo(()=>({close:()=>c(!1),Title:$,Description:e.AlertDialog.Description}),[c]);return r.jsxs(e.AlertDialog.Root,{open:i,onOpenChange:c,children:[r.jsx(e.AlertDialog.Content,{children:"content"in t?t.content(d):r.jsx(re,{...t})}),u]})}),B=l.createContext(()=>{throw new Error("No AlertDialogProvider found")}),ne={content:()=>null},te=l.memo(function({children:a}){const[i,c]=l.useState(!1),[u,t]=l.useState(ne),d=l.useCallback(f=>{if(i)throw new Error("AlertDialog is already open");t(f),c(!0)},[i]);return r.jsx(z,{open:i,setOpen:c,...u,children:r.jsx(B.Provider,{value:d,children:a})})}),le=()=>l.useContext(B),ie={fluid:"_fluid_7n1wr_1"},ce=l.forwardRef(function({className:a,fluid:i,size:c="medium",variant:u="surface",severity:t="primary",placeholder:d="Select",side:f,items:s=[],value:g,...b},p){const C=l.useMemo(()=>m(c,k),[c]),w=_(t);return l.createElement(e.Select.Root,{size:C,...b,key:g===void 0?1:0,value:g},r.jsx(e.Select.Trigger,{className:v(a,{[ie.fluid]:i}),ref:p,variant:u,placeholder:d,color:w}),r.jsx(e.Select.Content,{side:f,position:"popper",variant:u!=="surface"?"soft":"solid",color:w,children:s.map(({label:P,value:y,...O})=>r.jsx(e.Select.Item,{value:y,...O,children:P},y))}))}),ae=l.memo(ce),D={accommodateCharCount:"_accommodateCharCount_fni4k_1",default:"_default_fni4k_5",noLeftIcon:"_noLeftIcon_fni4k_9",noRightIcon:"_noRightIcon_fni4k_13",charCount:"_charCount_fni4k_17"},ue=l.forwardRef(function({className:a,leftIcon:i,rightIcon:c,size:u="medium",showInputLength:t,value:d,variant:f,severity:s="primary",...g},b){const p=l.useMemo(()=>m(u,k),[u]),C=_(s),w=t||t===void 0&&g.maxLength!==void 0,P=d!==void 0?d.toString():void 0;return r.jsxs(e.TextField.Root,{className:v({[D.accommodateCharCount]:w}),size:p,variant:f,color:C,children:[r.jsx(e.TextField.Slot,{children:i}),r.jsx(e.TextField.Input,{className:v(D.default,a,{[D.noLeftIcon]:!i,[D.noRightIcon]:!c}),ref:b,size:p,variant:f,color:C,...g}),r.jsx(e.TextField.Slot,{children:c}),w&&r.jsx(e.Text,{as:"p",className:D.charCount,size:"1",color:"gray",children:g.maxLength!==void 0?`${P==null?void 0:P.length}/${g.maxLength}`:`${P==null?void 0:P.length}`})]})}),de=l.memo(ue),se=l.forwardRef(function({defaultOpen:a=!1,modal:i=!1,content:c,children:u,...t},d){return r.jsxs(e.Popover.Root,{defaultOpen:a,modal:i,children:[r.jsx(e.Popover.Trigger,{children:u}),r.jsx(e.Popover.Content,{ref:d,...t,children:c(e.Popover.Close)})]})}),fe=l.memo(se),pe=l.forwardRef(function({className:a,items:i,orientation:c="horizontal",merged:u=!0,value:t,severity:d,gap:f,size:s,...g},b){return r.jsx(F.Root,{className:v("overmap-toggle-group",a),ref:b,value:t,orientation:c,...g,children:r.jsx(G,{width:"min-content",height:"min-content",merged:u,direction:c==="vertical"?"column":"row",gap:f,children:i.map(({children:p,...C})=>l.createElement(F.Item,{asChild:!0,...C,key:C.value},r.jsx(I,{className:v("overmap-toggle-group-button"),"aria-label":C.value,severity:d,variant:C.value===t?"solid":"soft",size:s,children:p})))})})}),ge=l.memo(pe),E={wrapper:"_wrapper_o13vb_1",slideRight:"_slideRight_o13vb_1"},be=l.forwardRef(function({title:a,description:i,icon:c,severity:u="primary",size:t,onClose:d,...f},s){const g=_(u),b=l.useCallback(p=>{!p&&d&&d()},[d]);return r.jsx(T.Root,{asChild:!0,ref:s,...f,onOpenChange:b,children:r.jsx(e.Callout.Root,{className:v("overmap-toast",E.wrapper),variant:"surface",color:g,size:t,children:r.jsxs(e.Flex,{width:"100%",align:"center",gap:"4",justify:"between",children:[r.jsxs(e.Flex,{align:"center",gap:"4",children:[r.jsx(e.Callout.Icon,{children:c||r.jsx(h.InfoCircledIcon,{})}),r.jsxs(e.Flex,{direction:"column",gap:"0",children:[r.jsx(T.Title,{asChild:!0,children:r.jsx(e.Callout.Text,{weight:"bold",children:a})}),r.jsx(T.Description,{asChild:!0,children:r.jsx(e.Callout.Text,{weight:"light",children:i})})]})]}),r.jsx(T.Close,{asChild:!0,children:r.jsx(I,{className:E.closeButton,"aria-label":"Close",variant:"ghost",size:"small",severity:u,children:r.jsx(h.Cross2Icon,{})})})]})})})}),L=l.memo(function({children:a,...i}){return r.jsx(T.Provider,{swipeDirection:"right",swipeThreshold:75,...i,children:a})}),q=l.memo(be),V=T.Viewport,H=l.createContext({}),Ce=l.memo(function({children:a,viewportClass:i,hotkey:c,duration:u=1e4,...t}){const[d,f]=l.useState([]),s=l.useCallback(y=>{f(O=>[...O,y])},[]),g=l.useCallback(y=>{s({severity:"primary",...y})},[s]),b=l.useCallback(y=>{s({severity:"success",...y})},[s]),p=l.useCallback(y=>{s({severity:"danger",...y})},[s]),C=l.useCallback(y=>{s({severity:"info",...y})},[s]),w=l.useCallback(y=>{const O=[...d];O.splice(y,1),f(()=>O)},[d]),P={showToast:s,showPrimary:g,showSuccess:b,showError:p,showInfo:C};return r.jsx(H.Provider,{value:P,children:r.jsxs(L,{duration:u,...t,children:[r.jsx(V,{className:i,hotkey:c}),d.map((y,O)=>r.jsx(q,{...y,onClose:()=>w(O)},O)),a]})})}),Ae="",ye=l.memo(l.forwardRef((n,a)=>r.jsx(e.Theme,{panelBackground:"solid",ref:a,...n})));Object.defineProperty(o,"AccessibleIcon",{enumerable:!0,get:()=>e.AccessibleIcon}),Object.defineProperty(o,"AspectRatio",{enumerable:!0,get:()=>e.AspectRatio}),Object.defineProperty(o,"Avatar",{enumerable:!0,get:()=>e.Avatar}),Object.defineProperty(o,"Badge",{enumerable:!0,get:()=>e.Badge}),Object.defineProperty(o,"Blockquote",{enumerable:!0,get:()=>e.Blockquote}),Object.defineProperty(o,"Box",{enumerable:!0,get:()=>e.Box}),Object.defineProperty(o,"Callout",{enumerable:!0,get:()=>e.Callout}),Object.defineProperty(o,"Card",{enumerable:!0,get:()=>e.Card}),Object.defineProperty(o,"Checkbox",{enumerable:!0,get:()=>e.Checkbox}),Object.defineProperty(o,"Code",{enumerable:!0,get:()=>e.Code}),Object.defineProperty(o,"Container",{enumerable:!0,get:()=>e.Container}),Object.defineProperty(o,"ContextMenu",{enumerable:!0,get:()=>e.ContextMenu}),Object.defineProperty(o,"DropdownMenu",{enumerable:!0,get:()=>e.DropdownMenu}),Object.defineProperty(o,"Em",{enumerable:!0,get:()=>e.Em}),Object.defineProperty(o,"Flex",{enumerable:!0,get:()=>e.Flex}),Object.defineProperty(o,"Grid",{enumerable:!0,get:()=>e.Grid}),Object.defineProperty(o,"Heading",{enumerable:!0,get:()=>e.Heading}),Object.defineProperty(o,"HoverCard",{enumerable:!0,get:()=>e.HoverCard}),Object.defineProperty(o,"Inset",{enumerable:!0,get:()=>e.Inset}),Object.defineProperty(o,"Kbd",{enumerable:!0,get:()=>e.Kbd}),Object.defineProperty(o,"Link",{enumerable:!0,get:()=>e.Link}),Object.defineProperty(o,"Portal",{enumerable:!0,get:()=>e.Portal}),Object.defineProperty(o,"Quote",{enumerable:!0,get:()=>e.Quote}),Object.defineProperty(o,"RadioGroup",{enumerable:!0,get:()=>e.RadioGroup}),Object.defineProperty(o,"ScrollArea",{enumerable:!0,get:()=>e.ScrollArea}),Object.defineProperty(o,"Section",{enumerable:!0,get:()=>e.Section}),Object.defineProperty(o,"Separator",{enumerable:!0,get:()=>e.Separator}),Object.defineProperty(o,"Slider",{enumerable:!0,get:()=>e.Slider}),Object.defineProperty(o,"Slot",{enumerable:!0,get:()=>e.Slot}),Object.defineProperty(o,"Strong",{enumerable:!0,get:()=>e.Strong}),Object.defineProperty(o,"Switch",{enumerable:!0,get:()=>e.Switch}),Object.defineProperty(o,"Table",{enumerable:!0,get:()=>e.Table}),Object.defineProperty(o,"Tabs",{enumerable:!0,get:()=>e.Tabs}),Object.defineProperty(o,"Text",{enumerable:!0,get:()=>e.Text}),Object.defineProperty(o,"TextArea",{enumerable:!0,get:()=>e.TextArea}),Object.defineProperty(o,"TextField",{enumerable:!0,get:()=>e.TextField}),Object.defineProperty(o,"Theme",{enumerable:!0,get:()=>e.Theme}),Object.defineProperty(o,"Tooltip",{enumerable:!0,get:()=>e.Tooltip}),Object.defineProperty(o,"VisuallyHidden",{enumerable:!0,get:()=>e.VisuallyHidden}),o.AlertDialog=z,o.AlertDialogContent=B,o.AlertDialogProvider=te,o.Button=A,o.ButtonGroup=G,o.DefaultTheme=ye,o.Dialog=oe,o.IconButton=I,o.Input=de,o.Popover=fe,o.Select=ae,o.Toast=q,o.ToastContext=H,o.ToastContextProvider=Ce,o.ToastProvider=L,o.ToastViewport=V,o.ToggleGroup=ge,o.useAlertDialog=le,Object.keys(j).forEach(n=>{n!=="default"&&!Object.prototype.hasOwnProperty.call(o,n)&&Object.defineProperty(o,n,{enumerable:!0,get:()=>j[n]})}),Object.keys(h).forEach(n=>{n!=="default"&&!Object.prototype.hasOwnProperty.call(o,n)&&Object.defineProperty(o,n,{enumerable:!0,get:()=>h[n]})}),Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});
|
|
5
|
+
*/(function(n){(function(){var a={}.hasOwnProperty;function l(){for(var c=[],u=0;u<arguments.length;u++){var t=arguments[u];if(t){var d=typeof t;if(d==="string"||d==="number")c.push(t);else if(Array.isArray(t)){if(t.length){var f=l.apply(null,t);f&&c.push(f)}}else if(d==="object"){if(t.toString!==Object.prototype.toString&&!t.toString.toString().includes("[native code]")){c.push(t.toString());continue}for(var s in t)a.call(t,s)&&t[s]&&c.push(s)}}}return c.join(" ")}n.exports?(l.default=l,n.exports=l):window.classNames=l})()})(N);var J=N.exports;const v=Q(J),M={spin90Clockwise:S.hoverSpin90Clockwise,spin180Clockwise:S.hoverSpin180Clockwise,spin360Clockwise:S.hoverSpin360Clockwise};function m(n,a){if(typeof n=="object"){if(!("initial"in n))throw new Error("Expected initial property to be set in Responsive object");return Object.fromEntries(Object.entries(n).map(([l,c])=>[l,a[c]]))}else return a[n]}const U={success:"green",danger:"red",info:"gray"},_=n=>{const a=e.useThemeContext();return n==="primary"?a.accentColor:U[n]},k={small:"1",medium:"2",large:"3"},W=i.forwardRef(function({className:a,fluid:l,size:c="medium",severity:u="primary",hoverEffects:t,type:d="button",...f},s){const g=_(u),b=(t==null?void 0:t.map(p=>M[p]))||[];return r.jsx(e.Button,{ref:s,className:v(a,b,{[S.fluid]:l}),color:g,size:m(c,k),type:d,...f})}),A=i.memo(W),X=i.forwardRef(function({className:a,children:l,size:c="medium",severity:u="primary",hoverEffects:t,type:d="button",...f},s){const g=_(u),b=(t==null?void 0:t.map(p=>M[p]))||[];return r.jsx(e.IconButton,{className:v(a,b,S.default),ref:s,color:g,size:m(c,k),type:d,...f,children:l})}),I=i.memo(X),Y={merged:"_merged_f4366_1"},Z={row:{small:"4",medium:"4",large:"5"},column:{small:"2",medium:"3",large:"4"}},R=i.forwardRef(function({className:a,merged:l=!1,children:c,gap:u="2",direction:t="row",severity:d="primary",size:f="medium",variant:s="solid",hoverEffects:g,...b},p){return r.jsx(e.Flex,{className:v("overmap-button-group",a,{[Y.merged]:l}),ref:p,gap:l?s==="ghost"?m(f,Z[t]):"0":u,direction:t,"data-direction":t,...b,children:c.map((C,w)=>C.type===A||C.type===I?i.cloneElement(C,{key:w,size:f,severity:d,variant:s,hoverEffects:g}):C)})}),G=i.memo(R),ee=i.memo(function(a){const{title:l,description:c,content:u,closeDialog:t}=a;return r.jsxs(e.Flex,{direction:"column",gap:"2",children:[r.jsxs(e.Flex,{direction:"column",gap:"1",children:[r.jsxs(e.Flex,{justify:"between",children:[r.jsx(e.Dialog.Title,{mb:"0",children:l}),r.jsx(e.Dialog.Close,{children:r.jsx(e.IconButton,{color:"gray",variant:"ghost","aria-label":"Close",children:r.jsx(h.Cross1Icon,{})})})]}),r.jsx(e.Dialog.Description,{children:c})]}),u(t)]})}),oe=i.memo(function(a){const{children:l,size:c,onOpen:u,onCloseInterrupt:t,...d}=a,[f,s]=i.useState(!1),g=i.useCallback(p=>{if(p&&u)u();else if(!p&&t)return t(()=>s(!1));s(p)},[u,t]),b=i.useCallback(p=>{if(p!=null&&p.force)return s(!1);g(!1)},[g]);return r.jsxs(e.Dialog.Root,{open:f,onOpenChange:g,children:[r.jsx(e.Dialog.Content,{size:c,children:r.jsx(ee,{closeDialog:b,...d})}),l(e.Dialog.Trigger)]})}),$=n=>r.jsx(e.AlertDialog.Title,{mb:"0",...n}),re=n=>{const{title:a,description:l,actionText:c="Confirm",cancelText:u="Cancel",onAction:t,onCancel:d,severity:f}=n;return r.jsxs(e.Flex,{direction:"column",gap:"2",children:[r.jsxs(e.Flex,{direction:"column",gap:"1",children:[r.jsx($,{children:a}),r.jsx(e.AlertDialog.Description,{children:l})]}),r.jsxs(e.Flex,{gap:"3",mt:"4",justify:"end",children:[r.jsx(e.AlertDialog.Cancel,{children:r.jsx(A,{variant:"soft",severity:"info",onClick:d,children:u})}),r.jsx(e.AlertDialog.Action,{children:r.jsx(A,{variant:"solid",severity:f,onClick:t,children:c})})]})]})},z=i.memo(function(a){const{open:l,setOpen:c,children:u,...t}=a,d=i.useMemo(()=>({close:()=>c(!1),Title:$,Description:e.AlertDialog.Description}),[c]);return r.jsxs(e.AlertDialog.Root,{open:l,onOpenChange:c,children:[r.jsx(e.AlertDialog.Content,{children:"content"in t?t.content(d):r.jsx(re,{...t})}),u]})}),B=i.createContext(()=>{throw new Error("No AlertDialogProvider found")}),ne={content:()=>null},te=i.memo(function({children:a}){const[l,c]=i.useState(!1),[u,t]=i.useState(ne),d=i.useCallback(f=>{if(l)throw new Error("AlertDialog is already open");t(f),c(!0)},[l]);return r.jsx(z,{open:l,setOpen:c,...u,children:r.jsx(B.Provider,{value:d,children:a})})}),le=()=>i.useContext(B),ie={fluid:"_fluid_7n1wr_1"},ce=i.forwardRef(function({className:a,fluid:l,size:c="medium",variant:u="surface",severity:t="primary",placeholder:d="Select",side:f,items:s=[],value:g,...b},p){const C=i.useMemo(()=>m(c,k),[c]),w=_(t);return i.createElement(e.Select.Root,{size:C,...b,key:g===void 0?1:0,value:g},r.jsx(e.Select.Trigger,{className:v(a,{[ie.fluid]:l}),ref:p,variant:u,placeholder:d,color:w}),r.jsx(e.Select.Content,{side:f,position:"popper",variant:u!=="surface"?"soft":"solid",color:w,children:s.map(({label:P,value:y,...O})=>r.jsx(e.Select.Item,{value:y,...O,children:P},y))}))}),ae=i.memo(ce),D={accommodateCharCount:"_accommodateCharCount_fni4k_1",default:"_default_fni4k_5",noLeftIcon:"_noLeftIcon_fni4k_9",noRightIcon:"_noRightIcon_fni4k_13",charCount:"_charCount_fni4k_17"},ue=i.forwardRef(function({className:a,leftIcon:l,rightIcon:c,size:u="medium",showInputLength:t,value:d,variant:f,severity:s="primary",...g},b){const p=i.useMemo(()=>m(u,k),[u]),C=_(s),w=t||t===void 0&&g.maxLength!==void 0,P=d!==void 0?d.toString():void 0;return r.jsxs(e.TextField.Root,{className:v({[D.accommodateCharCount]:w}),size:p,variant:f,color:C,children:[r.jsx(e.TextField.Slot,{children:l}),r.jsx(e.TextField.Input,{className:v(D.default,a,{[D.noLeftIcon]:!l,[D.noRightIcon]:!c}),ref:b,size:p,variant:f,color:C,...g}),r.jsx(e.TextField.Slot,{children:c}),w&&r.jsx(e.Text,{as:"p",className:D.charCount,size:"1",color:"gray",children:g.maxLength!==void 0?`${P==null?void 0:P.length}/${g.maxLength}`:`${P==null?void 0:P.length}`})]})}),de=i.memo(ue),se=i.forwardRef(function({defaultOpen:a=!1,modal:l=!1,content:c,children:u,...t},d){return r.jsxs(e.Popover.Root,{defaultOpen:a,modal:l,children:[r.jsx(e.Popover.Trigger,{children:u}),r.jsx(e.Popover.Content,{ref:d,...t,children:c(e.Popover.Close)})]})}),fe=i.memo(se),pe=i.forwardRef(function({className:a,items:l,orientation:c="horizontal",merged:u=!0,value:t,severity:d,gap:f,size:s,...g},b){return r.jsx(F.Root,{className:v("overmap-toggle-group",a),ref:b,value:t,orientation:c,...g,children:r.jsx(G,{width:"min-content",height:"min-content",merged:u,direction:c==="vertical"?"column":"row",gap:f,children:l.map(({children:p,...C})=>i.createElement(F.Item,{asChild:!0,...C,key:C.value},r.jsx(I,{className:v("overmap-toggle-group-button"),"aria-label":C.value,severity:d,variant:C.value===t?"solid":"soft",size:s,children:p})))})})}),ge=i.memo(pe),E={wrapper:"_wrapper_o13vb_1",slideRight:"_slideRight_o13vb_1"},be=i.forwardRef(function({title:a,description:l,icon:c,severity:u="primary",size:t,onClose:d,...f},s){const g=_(u),b=i.useCallback(p=>{!p&&d&&d()},[d]);return r.jsx(T.Root,{asChild:!0,ref:s,...f,onOpenChange:b,children:r.jsx(e.Callout.Root,{className:v("overmap-toast",E.wrapper),variant:"surface",color:g,size:t,children:r.jsxs(e.Flex,{width:"100%",align:"center",gap:"4",justify:"between",children:[r.jsxs(e.Flex,{align:"center",gap:"4",children:[r.jsx(e.Callout.Icon,{children:c||r.jsx(h.InfoCircledIcon,{})}),r.jsxs(e.Flex,{direction:"column",gap:"0",children:[r.jsx(T.Title,{asChild:!0,children:r.jsx(e.Callout.Text,{weight:"bold",children:a})}),r.jsx(T.Description,{asChild:!0,children:r.jsx(e.Callout.Text,{weight:"light",children:l})})]})]}),r.jsx(T.Close,{asChild:!0,children:r.jsx(I,{className:E.closeButton,"aria-label":"Close",variant:"ghost",size:"small",severity:u,children:r.jsx(h.Cross2Icon,{})})})]})})})}),L=i.memo(function({children:a,...l}){return r.jsx(T.Provider,{swipeDirection:"right",swipeThreshold:75,...l,children:a})}),q=i.memo(be),V=T.Viewport,H=i.createContext({}),Ce=i.memo(function({children:a,viewportClass:l,hotkey:c,duration:u=1e4,...t}){const[d,f]=i.useState([]),s=i.useCallback(y=>{f(O=>[...O,y])},[]),g=i.useCallback(y=>{s({severity:"primary",...y})},[s]),b=i.useCallback(y=>{s({severity:"success",...y})},[s]),p=i.useCallback(y=>{s({severity:"danger",...y})},[s]),C=i.useCallback(y=>{s({severity:"info",...y})},[s]),w=i.useCallback(y=>{const O=[...d];O.splice(y,1),f(()=>O)},[d]),P={showToast:s,showPrimary:g,showSuccess:b,showError:p,showInfo:C};return r.jsx(H.Provider,{value:P,children:r.jsxs(L,{duration:u,...t,children:[r.jsx(V,{className:l,hotkey:c}),d.map((y,O)=>r.jsx(q,{...y,onClose:()=>w(O)},O)),a]})})}),Ae="",ye=i.memo(i.forwardRef((n,a)=>{const{panelBackground:l="solid",...c}=n;return r.jsx(e.Theme,{panelBackground:l,ref:a,...c})}));Object.defineProperty(o,"AccessibleIcon",{enumerable:!0,get:()=>e.AccessibleIcon}),Object.defineProperty(o,"AspectRatio",{enumerable:!0,get:()=>e.AspectRatio}),Object.defineProperty(o,"Avatar",{enumerable:!0,get:()=>e.Avatar}),Object.defineProperty(o,"Badge",{enumerable:!0,get:()=>e.Badge}),Object.defineProperty(o,"Blockquote",{enumerable:!0,get:()=>e.Blockquote}),Object.defineProperty(o,"Box",{enumerable:!0,get:()=>e.Box}),Object.defineProperty(o,"Callout",{enumerable:!0,get:()=>e.Callout}),Object.defineProperty(o,"Card",{enumerable:!0,get:()=>e.Card}),Object.defineProperty(o,"Checkbox",{enumerable:!0,get:()=>e.Checkbox}),Object.defineProperty(o,"Code",{enumerable:!0,get:()=>e.Code}),Object.defineProperty(o,"Container",{enumerable:!0,get:()=>e.Container}),Object.defineProperty(o,"ContextMenu",{enumerable:!0,get:()=>e.ContextMenu}),Object.defineProperty(o,"DropdownMenu",{enumerable:!0,get:()=>e.DropdownMenu}),Object.defineProperty(o,"Em",{enumerable:!0,get:()=>e.Em}),Object.defineProperty(o,"Flex",{enumerable:!0,get:()=>e.Flex}),Object.defineProperty(o,"Grid",{enumerable:!0,get:()=>e.Grid}),Object.defineProperty(o,"Heading",{enumerable:!0,get:()=>e.Heading}),Object.defineProperty(o,"HoverCard",{enumerable:!0,get:()=>e.HoverCard}),Object.defineProperty(o,"Inset",{enumerable:!0,get:()=>e.Inset}),Object.defineProperty(o,"Kbd",{enumerable:!0,get:()=>e.Kbd}),Object.defineProperty(o,"Link",{enumerable:!0,get:()=>e.Link}),Object.defineProperty(o,"Portal",{enumerable:!0,get:()=>e.Portal}),Object.defineProperty(o,"Quote",{enumerable:!0,get:()=>e.Quote}),Object.defineProperty(o,"RadioGroup",{enumerable:!0,get:()=>e.RadioGroup}),Object.defineProperty(o,"ScrollArea",{enumerable:!0,get:()=>e.ScrollArea}),Object.defineProperty(o,"Section",{enumerable:!0,get:()=>e.Section}),Object.defineProperty(o,"Separator",{enumerable:!0,get:()=>e.Separator}),Object.defineProperty(o,"Slider",{enumerable:!0,get:()=>e.Slider}),Object.defineProperty(o,"Slot",{enumerable:!0,get:()=>e.Slot}),Object.defineProperty(o,"Strong",{enumerable:!0,get:()=>e.Strong}),Object.defineProperty(o,"Switch",{enumerable:!0,get:()=>e.Switch}),Object.defineProperty(o,"Table",{enumerable:!0,get:()=>e.Table}),Object.defineProperty(o,"Tabs",{enumerable:!0,get:()=>e.Tabs}),Object.defineProperty(o,"Text",{enumerable:!0,get:()=>e.Text}),Object.defineProperty(o,"TextArea",{enumerable:!0,get:()=>e.TextArea}),Object.defineProperty(o,"TextField",{enumerable:!0,get:()=>e.TextField}),Object.defineProperty(o,"Theme",{enumerable:!0,get:()=>e.Theme}),Object.defineProperty(o,"Tooltip",{enumerable:!0,get:()=>e.Tooltip}),Object.defineProperty(o,"VisuallyHidden",{enumerable:!0,get:()=>e.VisuallyHidden}),o.AlertDialog=z,o.AlertDialogContent=B,o.AlertDialogProvider=te,o.Button=A,o.ButtonGroup=G,o.DefaultTheme=ye,o.Dialog=oe,o.IconButton=I,o.Input=de,o.Popover=fe,o.Select=ae,o.Toast=q,o.ToastContext=H,o.ToastContextProvider=Ce,o.ToastProvider=L,o.ToastViewport=V,o.ToggleGroup=ge,o.useAlertDialog=le,Object.keys(j).forEach(n=>{n!=="default"&&!Object.prototype.hasOwnProperty.call(o,n)&&Object.defineProperty(o,n,{enumerable:!0,get:()=>j[n]})}),Object.keys(h).forEach(n=>{n!=="default"&&!Object.prototype.hasOwnProperty.call(o,n)&&Object.defineProperty(o,n,{enumerable:!0,get:()=>h[n]})}),Object.defineProperty(o,Symbol.toStringTag,{value:"Module"})});
|
|
6
6
|
//# sourceMappingURL=blocks.umd.cjs.map
|
package/dist/blocks.umd.cjs.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"blocks.umd.cjs","sources":["../node_modules/classnames/index.js","../src/Buttons/constants.ts","../src/utils.ts","../src/constants.ts","../src/Buttons/Button.tsx","../src/Buttons/IconButton.tsx","../src/ButtonGroup/ButtonGroup.tsx","../src/Dialogs/Dialog/DialogContent.tsx","../src/Dialogs/Dialog/Dialog.tsx","../src/Dialogs/AlertDialog/AlertDialogContent.tsx","../src/Dialogs/AlertDialog/AlertDialog.tsx","../src/Dialogs/AlertDialog/context.tsx","../src/Dialogs/AlertDialog/hooks.ts","../src/Select/Select.tsx","../src/Input/Input.tsx","../src/Popover/Popover.tsx","../src/ToggleGroup/ToggleGroup.tsx","../src/Toast/Toast.tsx","../src/Toast/ToastContext.tsx","../src/Theme/DefaultTheme.tsx"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import { ButtonHoverEffect } from \"./typings.ts\"\nimport styles from \"./Button.module.sass\"\n\nexport const hoverEffectClassNameMapping: Record<ButtonHoverEffect, string | undefined> = {\n\tspin90Clockwise: styles.hoverSpin90Clockwise,\n\tspin180Clockwise: styles.hoverSpin180Clockwise,\n\tspin360Clockwise: styles.hoverSpin360Clockwise,\n}\n","import { Responsive, useThemeContext } from \"@radix-ui/themes\"\nimport { ThemeProps } from \"Theme\"\nimport { Severity } from \"typings\"\n\n// applyResponsiveMapping is a helper function used to map the keys of a Radix Responsive type that can be understood\n// by a Radix component or primitive. The point of this is to leverage our own custom prop names and values while still\n// using Radix's built in Responsiveness functionality.\n/**\n * Returns an object with mapped key values or a single mapped value\n * @param value an object or string\n * @param mapping a Record mapping the object values of param value\n */\nexport function applyResponsiveMapping<T extends string, K>(value: Responsive<T>, mapping: Record<T, K>) {\n\tif (typeof value === \"object\") {\n\t\tif (!(\"initial\" in value)) {\n\t\t\t// Responsive objects require an 'initial' property to be set that acts as a default\n\t\t\tthrow new Error(\"Expected initial property to be set in Responsive object\")\n\t\t}\n\t\treturn Object.fromEntries(Object.entries(value).map(([key, _value]) => [key, mapping[_value]]))\n\t} else {\n\t\treturn mapping[value]\n\t}\n}\n\nconst nonThemeSeverityMapping = {\n\tsuccess: \"green\",\n\tdanger: \"red\",\n\tinfo: \"gray\",\n} as const\n\nexport type AccentColor = NonNullable<ThemeProps[\"accentColor\"]>\n\n/** Performs theme-sensitive mapping of a severity to radix color */\nexport const useSeverityColor = (severity: Severity): AccentColor => {\n\tconst theme = useThemeContext()\n\tif (severity === \"primary\") return theme.accentColor\n\n\treturn nonThemeSeverityMapping[severity]\n}\n","import { Size } from \"./typings.ts\"\n\n// Mappings\nexport const SizeMapping: Record<Size, \"1\" | \"2\" | \"3\"> = {\n\tsmall: \"1\",\n\tmedium: \"2\",\n\tlarge: \"3\",\n}\n","import React, { FC, forwardRef } from \"react\"\nimport { ButtonProps } from \"./typings.ts\"\nimport styles from \"./Button.module.sass\"\nimport classNames from \"classnames\"\nimport { Button as RadixButton } from \"@radix-ui/themes\"\nimport { hoverEffectClassNameMapping } from \"./constants.ts\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\n\nconst _Button = forwardRef(function Button(\n\t{ className, fluid, size = \"medium\", severity = \"primary\", hoverEffects, type = \"button\", ...rest }: ButtonProps,\n\tref: React.Ref<HTMLButtonElement>,\n) {\n\tconst color = useSeverityColor(severity)\n\tconst hoverEffectClasses =\n\t\thoverEffects?.map((hoverEffect) => {\n\t\t\treturn hoverEffectClassNameMapping[hoverEffect]\n\t\t}) || []\n\n\treturn (\n\t\t<RadixButton\n\t\t\tref={ref}\n\t\t\tclassName={classNames(className, hoverEffectClasses, {\n\t\t\t\t[styles.fluid!]: fluid,\n\t\t\t})}\n\t\t\tcolor={color}\n\t\t\tsize={applyResponsiveMapping(size, SizeMapping)}\n\t\t\ttype={type}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\n\n// using FC so storybook correctly displays the component props\nconst Button: FC<ButtonProps> = React.memo(_Button)\n\nexport default Button\n","import React, { FC, forwardRef } from \"react\"\nimport { ButtonProps } from \"./typings.ts\"\nimport classNames from \"classnames\"\nimport { IconButton as RadixIconButton } from \"@radix-ui/themes\"\nimport { hoverEffectClassNameMapping } from \"./constants.ts\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\n\nimport styles from \"./Button.module.sass\"\n\ninterface IconButtonProps extends Omit<ButtonProps, \"fluid\"> {\n\t\"aria-label\": string\n}\n\nconst _Button = forwardRef(function Button(\n\t{\n\t\tclassName,\n\t\tchildren,\n\t\tsize = \"medium\",\n\t\tseverity = \"primary\",\n\t\thoverEffects,\n\t\ttype = \"button\",\n\t\t...rest\n\t}: IconButtonProps,\n\tref: React.Ref<HTMLButtonElement>,\n) {\n\tconst color = useSeverityColor(severity)\n\tconst hoverEffectClasses =\n\t\thoverEffects?.map((hoverEffect) => {\n\t\t\treturn hoverEffectClassNameMapping[hoverEffect]\n\t\t}) || []\n\n\treturn (\n\t\t<RadixIconButton\n\t\t\tclassName={classNames(className, hoverEffectClasses, styles.default)}\n\t\t\tref={ref}\n\t\t\tcolor={color}\n\t\t\tsize={applyResponsiveMapping(size, SizeMapping)}\n\t\t\ttype={type}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children}\n\t\t</RadixIconButton>\n\t)\n})\n\n// using FC so storybook correctly displays the component props\n/** The `IconButton` is a `Button` variant specifically designed for single icons. */\nconst IconButton: FC<IconButtonProps> = React.memo(_Button)\n\nexport default IconButton\n","import { FC, forwardRef, memo, Ref, cloneElement } from \"react\"\nimport { Flex } from \"@radix-ui/themes\"\nimport classNames from \"classnames\"\nimport { ButtonGroupProps } from \"./typings.ts\"\n\nimport styles from \"./ButtonGroup.module.sass\"\nimport { Size } from \"../typings.ts\"\nimport { applyResponsiveMapping } from \"../utils.ts\"\nimport { Button, IconButton } from \"../Buttons\"\n\nconst GhostVariantSizeToGapMapping: Record<\"row\" | \"column\", Record<Size, ButtonGroupProps[\"gap\"]>> = {\n\trow: { small: \"4\", medium: \"4\", large: \"5\" },\n\tcolumn: { small: \"2\", medium: \"3\", large: \"4\" },\n}\n\nconst _ButtonGroup = forwardRef(function ButtonGroup(\n\t{\n\t\tclassName,\n\t\tmerged = false,\n\t\tchildren,\n\t\tgap = \"2\",\n\t\tdirection = \"row\",\n\t\tseverity = \"primary\",\n\t\tsize = \"medium\",\n\t\tvariant = \"solid\",\n\t\thoverEffects,\n\t\t...rest\n\t}: ButtonGroupProps,\n\tref: Ref<HTMLDivElement>,\n) {\n\treturn (\n\t\t<Flex\n\t\t\tclassName={classNames(\"overmap-button-group\", className, {\n\t\t\t\t[styles.merged!]: merged,\n\t\t\t})}\n\t\t\tref={ref}\n\t\t\tgap={\n\t\t\t\tmerged\n\t\t\t\t\t? variant === \"ghost\"\n\t\t\t\t\t\t? applyResponsiveMapping(size, GhostVariantSizeToGapMapping[direction])\n\t\t\t\t\t\t: \"0\"\n\t\t\t\t\t: gap\n\t\t\t}\n\t\t\tdirection={direction}\n\t\t\tdata-direction={direction}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children.map((child, index) => {\n\t\t\t\tif (child.type === Button || child.type === IconButton) {\n\t\t\t\t\treturn cloneElement(child, { key: index, size, severity, variant, hoverEffects })\n\t\t\t\t} else {\n\t\t\t\t\treturn child\n\t\t\t\t}\n\t\t\t})}\n\t\t</Flex>\n\t)\n})\n\n/** The ButtonGroup Component is a user interface element that groups multiple buttons together for improved user\n * interaction and visual clarity. It is commonly used to present related actions or options in a compact and organized\n * manner. The ButtonGroup supports all props of the RadixUI Flex layout component besides MarginProps,\n * further documentation for the Flex layout component can be found here https://www.radix-ui.com/themes/docs/components/flex */\nexport const ButtonGroup: FC<ButtonGroupProps> = memo(_ButtonGroup)\n","import { memo } from \"react\"\nimport { Dialog, Flex, IconButton } from \"@radix-ui/themes\"\nimport { Cross1Icon } from \"@radix-ui/react-icons\"\nimport { DialogContentProps } from \"./typings\"\n\nexport const DialogContent = memo(function DialogContent(props: DialogContentProps) {\n\tconst { title, description, content, closeDialog } = props\n\treturn (\n\t\t<Flex direction=\"column\" gap=\"2\">\n\t\t\t<Flex direction=\"column\" gap=\"1\">\n\t\t\t\t<Flex justify=\"between\">\n\t\t\t\t\t<Dialog.Title mb=\"0\">{title}</Dialog.Title>\n\t\t\t\t\t<Dialog.Close>\n\t\t\t\t\t\t<IconButton color=\"gray\" variant=\"ghost\" aria-label=\"Close\">\n\t\t\t\t\t\t\t<Cross1Icon />\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</Dialog.Close>\n\t\t\t\t</Flex>\n\t\t\t\t<Dialog.Description>{description}</Dialog.Description>\n\t\t\t</Flex>\n\t\t\t{content(closeDialog)}\n\t\t</Flex>\n\t)\n})\n","import { memo, useState, useCallback } from \"react\"\nimport { Dialog as RadixDialog } from \"@radix-ui/themes\"\nimport { DialogContent } from \"./DialogContent\"\nimport { CloseDialogWithOptions, DialogProps } from \"./typings\"\n\n/**\n * Display or collect information in a modal. Unlike the `AlertDialog`, the `Dialog`'s can be nested\n * and close when clicking outside of the dialog content.\n */\nexport const Dialog = memo(function Dialog(props: DialogProps) {\n\tconst { children, size, onOpen, onCloseInterrupt, ...contentProps } = props\n\tconst [open, setOpen] = useState(false)\n\n\tconst handleOpenChange = useCallback(\n\t\t(next: boolean) => {\n\t\t\tif (next && onOpen) {\n\t\t\t\tonOpen()\n\t\t\t} else if (!next && onCloseInterrupt) {\n\t\t\t\t// closes the dialog, bypassing the checks in `handleOpenChange`\n\t\t\t\tconst confirmClose = () => setOpen(false)\n\n\t\t\t\t// if onCloseInterrupt is passed, bypass the standard close behavior and require\n\t\t\t\t// the passed `confirmClose` to close the dialog\n\t\t\t\treturn onCloseInterrupt(confirmClose)\n\t\t\t}\n\n\t\t\tsetOpen(next)\n\t\t},\n\t\t[onOpen, onCloseInterrupt],\n\t)\n\n\tconst closeDialog = useCallback<CloseDialogWithOptions>(\n\t\t(options) => {\n\t\t\tif (options?.force) {\n\t\t\t\t// bypass the checks in the `handleOpenChange` function\n\t\t\t\treturn setOpen(false)\n\t\t\t}\n\n\t\t\thandleOpenChange(false)\n\t\t},\n\t\t[handleOpenChange],\n\t)\n\n\treturn (\n\t\t<RadixDialog.Root open={open} onOpenChange={handleOpenChange}>\n\t\t\t<RadixDialog.Content size={size}>\n\t\t\t\t<DialogContent closeDialog={closeDialog} {...contentProps} />\n\t\t\t</RadixDialog.Content>\n\n\t\t\t{children(RadixDialog.Trigger)}\n\t\t</RadixDialog.Root>\n\t)\n})\n","import { AlertDialog, Flex } from \"@radix-ui/themes\"\nimport { AlertDialogStandardContent } from \"./typings\"\nimport { Button } from \"../../Buttons\"\n\n// remove the margin-bottom from the title so that Flex works as expected\nexport const Title: typeof AlertDialog.Title = ((props) => (\n\t<AlertDialog.Title mb=\"0\" {...props} />\n)) as typeof AlertDialog.Title\n\nexport const AlertDialogContent = (props: AlertDialogStandardContent) => {\n\tconst { title, description, actionText = \"Confirm\", cancelText = \"Cancel\", onAction, onCancel, severity } = props\n\treturn (\n\t\t<Flex direction=\"column\" gap=\"2\">\n\t\t\t<Flex direction=\"column\" gap=\"1\">\n\t\t\t\t<Title>{title}</Title>\n\t\t\t\t<AlertDialog.Description>{description}</AlertDialog.Description>\n\t\t\t</Flex>\n\n\t\t\t<Flex gap=\"3\" mt=\"4\" justify=\"end\">\n\t\t\t\t<AlertDialog.Cancel>\n\t\t\t\t\t<Button variant=\"soft\" severity=\"info\" onClick={onCancel}>\n\t\t\t\t\t\t{cancelText}\n\t\t\t\t\t</Button>\n\t\t\t\t</AlertDialog.Cancel>\n\t\t\t\t<AlertDialog.Action>\n\t\t\t\t\t<Button variant=\"solid\" severity={severity} onClick={onAction}>\n\t\t\t\t\t\t{actionText}\n\t\t\t\t\t</Button>\n\t\t\t\t</AlertDialog.Action>\n\t\t\t</Flex>\n\t\t</Flex>\n\t)\n}\n","import { memo, useMemo } from \"react\"\nimport { AlertDialog as RadixAlertDialog } from \"@radix-ui/themes\"\nimport { AlertDialogContentHelpers, AlertDialogProps } from \"./typings\"\nimport { AlertDialogContent, Title } from \"./AlertDialogContent\"\n\n/**\n * The AlertDialog is used to confirm an action or prompt the user for a decision.\n * Unlike the Dialog, the AlertDialog is not dismissible by clicking outside of the dialog, nor can it be nested.\n *\n * To use, place the `AlertDialogProvider` at the root of your app and use the `useAlertDialog` hook to open the dialog.\n *\n * To set the content of the dialog, use the `content` prop or pass values for the `title`, `description`, and `onAction` props.\n */\nexport const AlertDialog = memo(function AlertDialog(props: AlertDialogProps) {\n\tconst { open, setOpen, children, ...contentProps } = props\n\n\tconst helpers: AlertDialogContentHelpers = useMemo(() => {\n\t\treturn {\n\t\t\tclose: () => setOpen(false),\n\t\t\tTitle,\n\t\t\tDescription: RadixAlertDialog.Description,\n\t\t}\n\t}, [setOpen])\n\n\treturn (\n\t\t<RadixAlertDialog.Root open={open} onOpenChange={setOpen}>\n\t\t\t<RadixAlertDialog.Content>\n\t\t\t\t{\"content\" in contentProps ? contentProps.content(helpers) : <AlertDialogContent {...contentProps} />}\n\t\t\t</RadixAlertDialog.Content>\n\t\t\t{children}\n\t\t</RadixAlertDialog.Root>\n\t)\n})\n","import { createContext, memo, useState, useCallback } from \"react\"\nimport { AlertDialogContextType, AlertDialogOptions } from \"./typings\"\nimport { AlertDialog } from \"./AlertDialog\"\n\ninterface AlertDialogProviderProps {\n\tchildren: React.ReactNode\n}\n\nexport const AlertDialogContent = createContext<AlertDialogContextType>(() => {\n\tthrow new Error(\"No AlertDialogProvider found\")\n})\n\nconst initialState: AlertDialogOptions = {\n\tcontent: () => null,\n}\n\nexport const AlertDialogProvider = memo(function AlertDialogProvider({ children }: AlertDialogProviderProps) {\n\tconst [open, setOpen] = useState(false)\n\tconst [state, setState] = useState<AlertDialogOptions>(initialState)\n\n\tconst openDialog = useCallback<AlertDialogContextType>(\n\t\t(options) => {\n\t\t\tif (open) throw new Error(\"AlertDialog is already open\")\n\n\t\t\tsetState(options)\n\t\t\tsetOpen(true)\n\t\t},\n\t\t[open],\n\t)\n\n\treturn (\n\t\t<AlertDialog open={open} setOpen={setOpen} {...state}>\n\t\t\t<AlertDialogContent.Provider value={openDialog}>{children}</AlertDialogContent.Provider>\n\t\t</AlertDialog>\n\t)\n})\n","import { useContext } from \"react\"\nimport { AlertDialogContent } from \"./context\"\n\nexport const useAlertDialog = () => {\n\treturn useContext(AlertDialogContent)\n}\n","import React, { FC, forwardRef, useMemo } from \"react\"\nimport { Select as RadixSelect } from \"@radix-ui/themes\"\nimport classNames from \"classnames\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\nimport { SelectItemProps, SelectProps } from \"./typings.ts\"\n\nimport styles from \"./Select.module.sass\"\n\nconst _Select = forwardRef(function Select(\n\t{\n\t\tclassName,\n\t\tfluid,\n\t\tsize = \"medium\",\n\t\tvariant = \"surface\",\n\t\tseverity = \"primary\",\n\t\tplaceholder = \"Select\",\n\t\tside,\n\t\titems = [],\n\t\tvalue,\n\t\t...rest\n\t}: SelectProps,\n\tref: React.Ref<HTMLButtonElement>,\n) {\n\tconst mappedSize = useMemo(() => {\n\t\treturn applyResponsiveMapping(size, SizeMapping)\n\t}, [size])\n\tconst color = useSeverityColor(severity)\n\n\t// TODO: extend functionality to support grouping of items\n\t// TODO: remove key change based on value once placeholder issue it fixed in radix-ui/themes\n\treturn (\n\t\t<RadixSelect.Root size={mappedSize} {...rest} key={value === undefined ? 1 : 0} value={value}>\n\t\t\t<RadixSelect.Trigger\n\t\t\t\tclassName={classNames(className, {\n\t\t\t\t\t[styles.fluid!]: fluid,\n\t\t\t\t})}\n\t\t\t\tref={ref}\n\t\t\t\tvariant={variant}\n\t\t\t\tplaceholder={placeholder}\n\t\t\t\tcolor={color}\n\t\t\t/>\n\t\t\t<RadixSelect.Content\n\t\t\t\tside={side}\n\t\t\t\tposition=\"popper\"\n\t\t\t\tvariant={variant !== \"surface\" ? \"soft\" : \"solid\"}\n\t\t\t\tcolor={color}\n\t\t\t>\n\t\t\t\t{items.map(({ label, value, ...rest }: SelectItemProps) => (\n\t\t\t\t\t<RadixSelect.Item key={value} value={value} {...rest}>\n\t\t\t\t\t\t{label}\n\t\t\t\t\t</RadixSelect.Item>\n\t\t\t\t))}\n\t\t\t</RadixSelect.Content>\n\t\t</RadixSelect.Root>\n\t)\n})\nexport const Select: FC<SelectProps> = React.memo(_Select)\n","import React, { FC, forwardRef, useMemo } from \"react\"\nimport { Text, TextField as RadixTextField } from \"@radix-ui/themes\"\nimport classNames from \"classnames\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\nimport { InputProps } from \"./typings.ts\"\n\nimport styles from \"./Input.module.sass\"\n\nconst _Input = forwardRef(function Input(\n\t{\n\t\tclassName,\n\t\tleftIcon,\n\t\trightIcon,\n\t\tsize = \"medium\",\n\t\tshowInputLength,\n\t\tvalue,\n\t\tvariant,\n\t\tseverity = \"primary\",\n\t\t...rest\n\t}: InputProps,\n\tref: React.Ref<HTMLInputElement>,\n) {\n\tconst computedSize = useMemo(() => {\n\t\treturn applyResponsiveMapping(size, SizeMapping)\n\t}, [size])\n\n\tconst color = useSeverityColor(severity)\n\n\tconst displayInputLength = showInputLength || (showInputLength === undefined && rest.maxLength !== undefined)\n\tconst valueAsString = value !== undefined ? value.toString() : undefined\n\n\treturn (\n\t\t<RadixTextField.Root\n\t\t\tclassName={classNames({\n\t\t\t\t[styles.accommodateCharCount!]: displayInputLength,\n\t\t\t})}\n\t\t\tsize={computedSize}\n\t\t\tvariant={variant}\n\t\t\tcolor={color}\n\t\t>\n\t\t\t<RadixTextField.Slot>{leftIcon}</RadixTextField.Slot>\n\t\t\t<RadixTextField.Input\n\t\t\t\tclassName={classNames(styles.default, className, {\n\t\t\t\t\t[styles.noLeftIcon!]: !leftIcon,\n\t\t\t\t\t[styles.noRightIcon!]: !rightIcon,\n\t\t\t\t})}\n\t\t\t\tref={ref}\n\t\t\t\tsize={computedSize}\n\t\t\t\tvariant={variant}\n\t\t\t\tcolor={color}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t\t<RadixTextField.Slot>{rightIcon}</RadixTextField.Slot>\n\t\t\t{displayInputLength && (\n\t\t\t\t<Text as=\"p\" className={styles.charCount} size=\"1\" color=\"gray\">\n\t\t\t\t\t{rest.maxLength !== undefined\n\t\t\t\t\t\t? `${valueAsString?.length}/${rest.maxLength}`\n\t\t\t\t\t\t: `${valueAsString?.length}`}\n\t\t\t\t</Text>\n\t\t\t)}\n\t\t</RadixTextField.Root>\n\t)\n})\nexport const Input: FC<InputProps> = React.memo(_Input)\n","import React, { forwardRef, FC } from \"react\"\nimport { Popover as RadixPopover } from \"@radix-ui/themes\"\nimport { PopoverProps } from \"./typings.ts\"\n\nconst _Popover = forwardRef(function Popover(\n\t{ defaultOpen = false, modal = false, content, children, ...rest }: PopoverProps,\n\tref: React.Ref<HTMLDivElement>,\n) {\n\treturn (\n\t\t<RadixPopover.Root defaultOpen={defaultOpen} modal={modal}>\n\t\t\t<RadixPopover.Trigger>{children}</RadixPopover.Trigger>\n\t\t\t<RadixPopover.Content ref={ref} {...rest}>\n\t\t\t\t{content(RadixPopover.Close)}\n\t\t\t</RadixPopover.Content>\n\t\t</RadixPopover.Root>\n\t)\n})\nexport const Popover: FC<PopoverProps> = React.memo(_Popover)\n","import { FC, forwardRef, memo, Ref } from \"react\"\nimport { Item, Root } from \"@radix-ui/react-toggle-group\"\nimport { ToggleGroupItemProps, ToggleGroupSingleProps } from \"./typings.ts\"\nimport { IconButton } from \"../Buttons\"\nimport classNames from \"classnames\"\nimport { ButtonGroup } from \"../ButtonGroup\"\n\nconst _ToggleGroup = forwardRef(function ToggleGroup(\n\t{\n\t\tclassName,\n\t\titems,\n\t\torientation = \"horizontal\",\n\t\tmerged = true,\n\t\tvalue,\n\t\tseverity,\n\t\tgap,\n\t\tsize,\n\t\t...rest\n\t}: ToggleGroupSingleProps,\n\tref: Ref<HTMLDivElement>,\n) {\n\treturn (\n\t\t<Root\n\t\t\tclassName={classNames(\"overmap-toggle-group\", className)}\n\t\t\tref={ref}\n\t\t\tvalue={value}\n\t\t\torientation={orientation}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<ButtonGroup\n\t\t\t\twidth=\"min-content\"\n\t\t\t\theight=\"min-content\"\n\t\t\t\tmerged={merged}\n\t\t\t\tdirection={orientation === \"vertical\" ? \"column\" : \"row\"}\n\t\t\t\tgap={gap}\n\t\t\t>\n\t\t\t\t{items.map(({ children, ...rest }: ToggleGroupItemProps) => (\n\t\t\t\t\t<Item asChild {...rest} key={rest.value}>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\tclassName={classNames(\"overmap-toggle-group-button\")}\n\t\t\t\t\t\t\taria-label={rest.value}\n\t\t\t\t\t\t\tseverity={severity}\n\t\t\t\t\t\t\tvariant={rest.value === value ? \"solid\" : \"soft\"}\n\t\t\t\t\t\t\tsize={size}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</Item>\n\t\t\t\t))}\n\t\t\t</ButtonGroup>\n\t\t</Root>\n\t)\n})\n\n/** The Toggle Group Component is a user interface element that allows users to select a single option from a set of\n * mutually exclusive choices. It is commonly used in situations where users need to make a single selection from a\n * predefined list of options. This component is built using the ButtonGroup and IconButton components in combination\n * with the Radix Toggle Group primitive found here https://www.radix-ui.com/primitives/docs/components/toggle-group */\nexport const ToggleGroup: FC<ToggleGroupSingleProps> = memo(_ToggleGroup)\n","import { FC, forwardRef, memo, Ref, useCallback } from \"react\"\nimport * as RadixToast from \"@radix-ui/react-toast\"\nimport { Callout, Flex } from \"@radix-ui/themes\"\nimport { Cross2Icon, InfoCircledIcon } from \"@radix-ui/react-icons\"\nimport classNames from \"classnames\"\nimport { IconButton } from \"../Buttons\"\nimport { ToastProps, ToastProviderProps } from \"./typings.ts\"\nimport { useSeverityColor } from \"../utils.ts\"\n\nimport styles from \"./Toast.module.sass\"\n\nconst _Toast = forwardRef(function Toast(\n\t{ title, description, icon, severity = \"primary\", size, onClose, ...rest }: ToastProps,\n\tref: Ref<HTMLLIElement>,\n) {\n\tconst color = useSeverityColor(severity)\n\tconst handleOpenChange = useCallback(\n\t\t(open: boolean) => {\n\t\t\tif (!open && onClose) onClose()\n\t\t},\n\t\t[onClose],\n\t)\n\n\treturn (\n\t\t<RadixToast.Root asChild ref={ref} {...rest} onOpenChange={handleOpenChange}>\n\t\t\t<Callout.Root\n\t\t\t\tclassName={classNames(\"overmap-toast\", styles.wrapper)}\n\t\t\t\tvariant=\"surface\"\n\t\t\t\tcolor={color}\n\t\t\t\tsize={size}\n\t\t\t>\n\t\t\t\t<Flex width=\"100%\" align=\"center\" gap=\"4\" justify=\"between\">\n\t\t\t\t\t<Flex align=\"center\" gap=\"4\">\n\t\t\t\t\t\t<Callout.Icon>{icon || <InfoCircledIcon />}</Callout.Icon>\n\t\t\t\t\t\t<Flex direction=\"column\" gap=\"0\">\n\t\t\t\t\t\t\t<RadixToast.Title asChild>\n\t\t\t\t\t\t\t\t<Callout.Text weight=\"bold\">{title}</Callout.Text>\n\t\t\t\t\t\t\t</RadixToast.Title>\n\t\t\t\t\t\t\t<RadixToast.Description asChild>\n\t\t\t\t\t\t\t\t<Callout.Text weight=\"light\">{description}</Callout.Text>\n\t\t\t\t\t\t\t</RadixToast.Description>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</Flex>\n\t\t\t\t\t<RadixToast.Close asChild>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\tclassName={styles.closeButton}\n\t\t\t\t\t\t\taria-label=\"Close\"\n\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tseverity={severity}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Cross2Icon />\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</RadixToast.Close>\n\t\t\t\t</Flex>\n\t\t\t</Callout.Root>\n\t\t</RadixToast.Root>\n\t)\n})\n\nexport const ToastProvider: FC<ToastProviderProps> = memo(function ToastProvider({\n\tchildren,\n\t...rest\n}: ToastProviderProps) {\n\treturn (\n\t\t<RadixToast.Provider swipeDirection=\"right\" swipeThreshold={75} {...rest}>\n\t\t\t{children}\n\t\t</RadixToast.Provider>\n\t)\n})\n\nexport const Toast: FC<ToastProps> = memo(_Toast)\nexport const ToastViewport: FC<RadixToast.ToastViewportProps> = RadixToast.Viewport\n","import { memo, createContext, useState, useCallback, FC } from \"react\"\nimport { IToastContext, SimpleToastMessage, ToastContextProviderProps, ToastProps } from \"./typings.ts\"\nimport { Toast, ToastProvider, ToastViewport } from \"./Toast.tsx\"\n\nexport const ToastContext = createContext({} as IToastContext)\n\nexport const ToastContextProvider: FC<ToastContextProviderProps> = memo(function ToastContextProvider({\n\tchildren,\n\t// Use this class to change where the viewport for the toasts should be\n\tviewportClass,\n\thotkey,\n\t// Default duration value for all Toasts\n\tduration = 10000,\n\t...rest\n}: ToastContextProviderProps) {\n\tconst [toasts, setToasts] = useState<ToastProps[]>([])\n\n\tconst showToast = useCallback((toastProps: ToastProps) => {\n\t\tsetToasts((prevToasts) => [...prevToasts, toastProps])\n\t}, [])\n\n\tconst showPrimary = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"primary\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst showSuccess = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"success\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst showError = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"danger\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst showInfo = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"info\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst deleteToastAtIndex = useCallback(\n\t\t(index: number) => {\n\t\t\tconst tempToasts = [...toasts]\n\t\t\ttempToasts.splice(index, 1)\n\t\t\tsetToasts(() => tempToasts)\n\t\t},\n\t\t[toasts],\n\t)\n\n\tconst toastContextValue = {\n\t\tshowToast,\n\t\tshowPrimary,\n\t\tshowSuccess,\n\t\tshowError,\n\t\tshowInfo,\n\t}\n\n\treturn (\n\t\t<ToastContext.Provider value={toastContextValue}>\n\t\t\t<ToastProvider duration={duration} {...rest}>\n\t\t\t\t<ToastViewport className={viewportClass} hotkey={hotkey} />\n\t\t\t\t{toasts.map((toastProps, index) => (\n\t\t\t\t\t<Toast key={index} {...toastProps} onClose={() => deleteToastAtIndex(index)} />\n\t\t\t\t))}\n\t\t\t\t{children}\n\t\t\t</ToastProvider>\n\t\t</ToastContext.Provider>\n\t)\n})\n","import { Theme } from \"@radix-ui/themes\"\nimport { ComponentProps, forwardRef, memo } from \"react\"\n// css file contains updates to the default radix tokens\nimport \"./DefaultTheme.css\"\n\nexport type ThemeProps = ComponentProps<typeof Theme>\n\nexport const DefaultTheme = memo(\n\tforwardRef<HTMLDivElement>((props: ThemeProps, ref) => {\n\t\treturn <Theme panelBackground=\"solid\" ref={ref} {...props} />\n\t}),\n)\n"],"names":["hasOwn","classNames","classes","i","arg","argType","inner","key","module","hoverEffectClassNameMapping","styles","applyResponsiveMapping","value","mapping","_value","nonThemeSeverityMapping","useSeverityColor","severity","theme","useThemeContext","SizeMapping","_Button","forwardRef","className","fluid","size","hoverEffects","type","rest","ref","color","hoverEffectClasses","hoverEffect","jsx","RadixButton","Button","React","children","RadixIconButton","IconButton","GhostVariantSizeToGapMapping","_ButtonGroup","merged","gap","direction","variant","Flex","child","index","cloneElement","ButtonGroup","memo","DialogContent","props","title","description","content","closeDialog","jsxs","Dialog","Cross1Icon","onOpen","onCloseInterrupt","contentProps","open","setOpen","useState","handleOpenChange","useCallback","next","options","RadixDialog","Title","AlertDialog","AlertDialogContent","actionText","cancelText","onAction","onCancel","helpers","useMemo","RadixAlertDialog","createContext","initialState","AlertDialogProvider","state","setState","openDialog","useAlertDialog","useContext","_Select","placeholder","side","items","mappedSize","createElement","RadixSelect","label","Select","_Input","leftIcon","rightIcon","showInputLength","computedSize","displayInputLength","valueAsString","RadixTextField","Text","Input","_Popover","defaultOpen","modal","RadixPopover","Popover","_ToggleGroup","orientation","Root","Item","ToggleGroup","_Toast","icon","onClose","RadixToast","Callout","InfoCircledIcon","Cross2Icon","ToastProvider","Toast","ToastViewport","ToastContext","ToastContextProvider","viewportClass","hotkey","duration","toasts","setToasts","showToast","toastProps","prevToasts","showPrimary","simpleMessage","showSuccess","showError","showInfo","deleteToastAtIndex","tempToasts","toastContextValue","DefaultTheme","Theme"],"mappings":"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","x_google_ignoreList":[0]}
|
|
1
|
+
{"version":3,"file":"blocks.umd.cjs","sources":["../node_modules/classnames/index.js","../src/Buttons/constants.ts","../src/utils.ts","../src/constants.ts","../src/Buttons/Button.tsx","../src/Buttons/IconButton.tsx","../src/ButtonGroup/ButtonGroup.tsx","../src/Dialogs/Dialog/DialogContent.tsx","../src/Dialogs/Dialog/Dialog.tsx","../src/Dialogs/AlertDialog/AlertDialogContent.tsx","../src/Dialogs/AlertDialog/AlertDialog.tsx","../src/Dialogs/AlertDialog/context.tsx","../src/Dialogs/AlertDialog/hooks.ts","../src/Select/Select.tsx","../src/Input/Input.tsx","../src/Popover/Popover.tsx","../src/ToggleGroup/ToggleGroup.tsx","../src/Toast/Toast.tsx","../src/Toast/ToastContext.tsx","../src/Theme/DefaultTheme.tsx"],"sourcesContent":["/*!\n\tCopyright (c) 2018 Jed Watson.\n\tLicensed under the MIT License (MIT), see\n\thttp://jedwatson.github.io/classnames\n*/\n/* global define */\n\n(function () {\n\t'use strict';\n\n\tvar hasOwn = {}.hasOwnProperty;\n\tvar nativeCodeString = '[native code]';\n\n\tfunction classNames() {\n\t\tvar classes = [];\n\n\t\tfor (var i = 0; i < arguments.length; i++) {\n\t\t\tvar arg = arguments[i];\n\t\t\tif (!arg) continue;\n\n\t\t\tvar argType = typeof arg;\n\n\t\t\tif (argType === 'string' || argType === 'number') {\n\t\t\t\tclasses.push(arg);\n\t\t\t} else if (Array.isArray(arg)) {\n\t\t\t\tif (arg.length) {\n\t\t\t\t\tvar inner = classNames.apply(null, arg);\n\t\t\t\t\tif (inner) {\n\t\t\t\t\t\tclasses.push(inner);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t} else if (argType === 'object') {\n\t\t\t\tif (arg.toString !== Object.prototype.toString && !arg.toString.toString().includes('[native code]')) {\n\t\t\t\t\tclasses.push(arg.toString());\n\t\t\t\t\tcontinue;\n\t\t\t\t}\n\n\t\t\t\tfor (var key in arg) {\n\t\t\t\t\tif (hasOwn.call(arg, key) && arg[key]) {\n\t\t\t\t\t\tclasses.push(key);\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}\n\t\t}\n\n\t\treturn classes.join(' ');\n\t}\n\n\tif (typeof module !== 'undefined' && module.exports) {\n\t\tclassNames.default = classNames;\n\t\tmodule.exports = classNames;\n\t} else if (typeof define === 'function' && typeof define.amd === 'object' && define.amd) {\n\t\t// register as 'classnames', consistent with npm package name\n\t\tdefine('classnames', [], function () {\n\t\t\treturn classNames;\n\t\t});\n\t} else {\n\t\twindow.classNames = classNames;\n\t}\n}());\n","import { ButtonHoverEffect } from \"./typings.ts\"\nimport styles from \"./Button.module.sass\"\n\nexport const hoverEffectClassNameMapping: Record<ButtonHoverEffect, string | undefined> = {\n\tspin90Clockwise: styles.hoverSpin90Clockwise,\n\tspin180Clockwise: styles.hoverSpin180Clockwise,\n\tspin360Clockwise: styles.hoverSpin360Clockwise,\n}\n","import { Responsive, useThemeContext } from \"@radix-ui/themes\"\nimport { ThemeProps } from \"Theme\"\nimport { Severity } from \"typings\"\n\n// applyResponsiveMapping is a helper function used to map the keys of a Radix Responsive type that can be understood\n// by a Radix component or primitive. The point of this is to leverage our own custom prop names and values while still\n// using Radix's built in Responsiveness functionality.\n/**\n * Returns an object with mapped key values or a single mapped value\n * @param value an object or string\n * @param mapping a Record mapping the object values of param value\n */\nexport function applyResponsiveMapping<T extends string, K>(value: Responsive<T>, mapping: Record<T, K>) {\n\tif (typeof value === \"object\") {\n\t\tif (!(\"initial\" in value)) {\n\t\t\t// Responsive objects require an 'initial' property to be set that acts as a default\n\t\t\tthrow new Error(\"Expected initial property to be set in Responsive object\")\n\t\t}\n\t\treturn Object.fromEntries(Object.entries(value).map(([key, _value]) => [key, mapping[_value]]))\n\t} else {\n\t\treturn mapping[value]\n\t}\n}\n\nconst nonThemeSeverityMapping = {\n\tsuccess: \"green\",\n\tdanger: \"red\",\n\tinfo: \"gray\",\n} as const\n\nexport type AccentColor = NonNullable<ThemeProps[\"accentColor\"]>\n\n/** Performs theme-sensitive mapping of a severity to radix color */\nexport const useSeverityColor = (severity: Severity): AccentColor => {\n\tconst theme = useThemeContext()\n\tif (severity === \"primary\") return theme.accentColor\n\n\treturn nonThemeSeverityMapping[severity]\n}\n","import { Size } from \"./typings.ts\"\n\n// Mappings\nexport const SizeMapping: Record<Size, \"1\" | \"2\" | \"3\"> = {\n\tsmall: \"1\",\n\tmedium: \"2\",\n\tlarge: \"3\",\n}\n","import React, { FC, forwardRef } from \"react\"\nimport { ButtonProps } from \"./typings.ts\"\nimport styles from \"./Button.module.sass\"\nimport classNames from \"classnames\"\nimport { Button as RadixButton } from \"@radix-ui/themes\"\nimport { hoverEffectClassNameMapping } from \"./constants.ts\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\n\nconst _Button = forwardRef(function Button(\n\t{ className, fluid, size = \"medium\", severity = \"primary\", hoverEffects, type = \"button\", ...rest }: ButtonProps,\n\tref: React.Ref<HTMLButtonElement>,\n) {\n\tconst color = useSeverityColor(severity)\n\tconst hoverEffectClasses =\n\t\thoverEffects?.map((hoverEffect) => {\n\t\t\treturn hoverEffectClassNameMapping[hoverEffect]\n\t\t}) || []\n\n\treturn (\n\t\t<RadixButton\n\t\t\tref={ref}\n\t\t\tclassName={classNames(className, hoverEffectClasses, {\n\t\t\t\t[styles.fluid!]: fluid,\n\t\t\t})}\n\t\t\tcolor={color}\n\t\t\tsize={applyResponsiveMapping(size, SizeMapping)}\n\t\t\ttype={type}\n\t\t\t{...rest}\n\t\t/>\n\t)\n})\n\n// using FC so storybook correctly displays the component props\nconst Button: FC<ButtonProps> = React.memo(_Button)\n\nexport default Button\n","import React, { FC, forwardRef } from \"react\"\nimport { ButtonProps } from \"./typings.ts\"\nimport classNames from \"classnames\"\nimport { IconButton as RadixIconButton } from \"@radix-ui/themes\"\nimport { hoverEffectClassNameMapping } from \"./constants.ts\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\n\nimport styles from \"./Button.module.sass\"\n\ninterface IconButtonProps extends Omit<ButtonProps, \"fluid\"> {\n\t\"aria-label\": string\n}\n\nconst _Button = forwardRef(function Button(\n\t{\n\t\tclassName,\n\t\tchildren,\n\t\tsize = \"medium\",\n\t\tseverity = \"primary\",\n\t\thoverEffects,\n\t\ttype = \"button\",\n\t\t...rest\n\t}: IconButtonProps,\n\tref: React.Ref<HTMLButtonElement>,\n) {\n\tconst color = useSeverityColor(severity)\n\tconst hoverEffectClasses =\n\t\thoverEffects?.map((hoverEffect) => {\n\t\t\treturn hoverEffectClassNameMapping[hoverEffect]\n\t\t}) || []\n\n\treturn (\n\t\t<RadixIconButton\n\t\t\tclassName={classNames(className, hoverEffectClasses, styles.default)}\n\t\t\tref={ref}\n\t\t\tcolor={color}\n\t\t\tsize={applyResponsiveMapping(size, SizeMapping)}\n\t\t\ttype={type}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children}\n\t\t</RadixIconButton>\n\t)\n})\n\n// using FC so storybook correctly displays the component props\n/** The `IconButton` is a `Button` variant specifically designed for single icons. */\nconst IconButton: FC<IconButtonProps> = React.memo(_Button)\n\nexport default IconButton\n","import { FC, forwardRef, memo, Ref, cloneElement } from \"react\"\nimport { Flex } from \"@radix-ui/themes\"\nimport classNames from \"classnames\"\nimport { ButtonGroupProps } from \"./typings.ts\"\n\nimport styles from \"./ButtonGroup.module.sass\"\nimport { Size } from \"../typings.ts\"\nimport { applyResponsiveMapping } from \"../utils.ts\"\nimport { Button, IconButton } from \"../Buttons\"\n\nconst GhostVariantSizeToGapMapping: Record<\"row\" | \"column\", Record<Size, ButtonGroupProps[\"gap\"]>> = {\n\trow: { small: \"4\", medium: \"4\", large: \"5\" },\n\tcolumn: { small: \"2\", medium: \"3\", large: \"4\" },\n}\n\nconst _ButtonGroup = forwardRef(function ButtonGroup(\n\t{\n\t\tclassName,\n\t\tmerged = false,\n\t\tchildren,\n\t\tgap = \"2\",\n\t\tdirection = \"row\",\n\t\tseverity = \"primary\",\n\t\tsize = \"medium\",\n\t\tvariant = \"solid\",\n\t\thoverEffects,\n\t\t...rest\n\t}: ButtonGroupProps,\n\tref: Ref<HTMLDivElement>,\n) {\n\treturn (\n\t\t<Flex\n\t\t\tclassName={classNames(\"overmap-button-group\", className, {\n\t\t\t\t[styles.merged!]: merged,\n\t\t\t})}\n\t\t\tref={ref}\n\t\t\tgap={\n\t\t\t\tmerged\n\t\t\t\t\t? variant === \"ghost\"\n\t\t\t\t\t\t? applyResponsiveMapping(size, GhostVariantSizeToGapMapping[direction])\n\t\t\t\t\t\t: \"0\"\n\t\t\t\t\t: gap\n\t\t\t}\n\t\t\tdirection={direction}\n\t\t\tdata-direction={direction}\n\t\t\t{...rest}\n\t\t>\n\t\t\t{children.map((child, index) => {\n\t\t\t\tif (child.type === Button || child.type === IconButton) {\n\t\t\t\t\treturn cloneElement(child, { key: index, size, severity, variant, hoverEffects })\n\t\t\t\t} else {\n\t\t\t\t\treturn child\n\t\t\t\t}\n\t\t\t})}\n\t\t</Flex>\n\t)\n})\n\n/** The ButtonGroup Component is a user interface element that groups multiple buttons together for improved user\n * interaction and visual clarity. It is commonly used to present related actions or options in a compact and organized\n * manner. The ButtonGroup supports all props of the RadixUI Flex layout component besides MarginProps,\n * further documentation for the Flex layout component can be found here https://www.radix-ui.com/themes/docs/components/flex */\nexport const ButtonGroup: FC<ButtonGroupProps> = memo(_ButtonGroup)\n","import { memo } from \"react\"\nimport { Dialog, Flex, IconButton } from \"@radix-ui/themes\"\nimport { Cross1Icon } from \"@radix-ui/react-icons\"\nimport { DialogContentProps } from \"./typings\"\n\nexport const DialogContent = memo(function DialogContent(props: DialogContentProps) {\n\tconst { title, description, content, closeDialog } = props\n\treturn (\n\t\t<Flex direction=\"column\" gap=\"2\">\n\t\t\t<Flex direction=\"column\" gap=\"1\">\n\t\t\t\t<Flex justify=\"between\">\n\t\t\t\t\t<Dialog.Title mb=\"0\">{title}</Dialog.Title>\n\t\t\t\t\t<Dialog.Close>\n\t\t\t\t\t\t<IconButton color=\"gray\" variant=\"ghost\" aria-label=\"Close\">\n\t\t\t\t\t\t\t<Cross1Icon />\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</Dialog.Close>\n\t\t\t\t</Flex>\n\t\t\t\t<Dialog.Description>{description}</Dialog.Description>\n\t\t\t</Flex>\n\t\t\t{content(closeDialog)}\n\t\t</Flex>\n\t)\n})\n","import { memo, useState, useCallback } from \"react\"\nimport { Dialog as RadixDialog } from \"@radix-ui/themes\"\nimport { DialogContent } from \"./DialogContent\"\nimport { CloseDialogWithOptions, DialogProps } from \"./typings\"\n\n/**\n * Display or collect information in a modal. Unlike the `AlertDialog`, the `Dialog`'s can be nested\n * and close when clicking outside of the dialog content.\n */\nexport const Dialog = memo(function Dialog(props: DialogProps) {\n\tconst { children, size, onOpen, onCloseInterrupt, ...contentProps } = props\n\tconst [open, setOpen] = useState(false)\n\n\tconst handleOpenChange = useCallback(\n\t\t(next: boolean) => {\n\t\t\tif (next && onOpen) {\n\t\t\t\tonOpen()\n\t\t\t} else if (!next && onCloseInterrupt) {\n\t\t\t\t// closes the dialog, bypassing the checks in `handleOpenChange`\n\t\t\t\tconst confirmClose = () => setOpen(false)\n\n\t\t\t\t// if onCloseInterrupt is passed, bypass the standard close behavior and require\n\t\t\t\t// the passed `confirmClose` to close the dialog\n\t\t\t\treturn onCloseInterrupt(confirmClose)\n\t\t\t}\n\n\t\t\tsetOpen(next)\n\t\t},\n\t\t[onOpen, onCloseInterrupt],\n\t)\n\n\tconst closeDialog = useCallback<CloseDialogWithOptions>(\n\t\t(options) => {\n\t\t\tif (options?.force) {\n\t\t\t\t// bypass the checks in the `handleOpenChange` function\n\t\t\t\treturn setOpen(false)\n\t\t\t}\n\n\t\t\thandleOpenChange(false)\n\t\t},\n\t\t[handleOpenChange],\n\t)\n\n\treturn (\n\t\t<RadixDialog.Root open={open} onOpenChange={handleOpenChange}>\n\t\t\t<RadixDialog.Content size={size}>\n\t\t\t\t<DialogContent closeDialog={closeDialog} {...contentProps} />\n\t\t\t</RadixDialog.Content>\n\n\t\t\t{children(RadixDialog.Trigger)}\n\t\t</RadixDialog.Root>\n\t)\n})\n","import { AlertDialog, Flex } from \"@radix-ui/themes\"\nimport { AlertDialogStandardContent } from \"./typings\"\nimport { Button } from \"../../Buttons\"\n\n// remove the margin-bottom from the title so that Flex works as expected\nexport const Title: typeof AlertDialog.Title = ((props) => (\n\t<AlertDialog.Title mb=\"0\" {...props} />\n)) as typeof AlertDialog.Title\n\nexport const AlertDialogContent = (props: AlertDialogStandardContent) => {\n\tconst { title, description, actionText = \"Confirm\", cancelText = \"Cancel\", onAction, onCancel, severity } = props\n\treturn (\n\t\t<Flex direction=\"column\" gap=\"2\">\n\t\t\t<Flex direction=\"column\" gap=\"1\">\n\t\t\t\t<Title>{title}</Title>\n\t\t\t\t<AlertDialog.Description>{description}</AlertDialog.Description>\n\t\t\t</Flex>\n\n\t\t\t<Flex gap=\"3\" mt=\"4\" justify=\"end\">\n\t\t\t\t<AlertDialog.Cancel>\n\t\t\t\t\t<Button variant=\"soft\" severity=\"info\" onClick={onCancel}>\n\t\t\t\t\t\t{cancelText}\n\t\t\t\t\t</Button>\n\t\t\t\t</AlertDialog.Cancel>\n\t\t\t\t<AlertDialog.Action>\n\t\t\t\t\t<Button variant=\"solid\" severity={severity} onClick={onAction}>\n\t\t\t\t\t\t{actionText}\n\t\t\t\t\t</Button>\n\t\t\t\t</AlertDialog.Action>\n\t\t\t</Flex>\n\t\t</Flex>\n\t)\n}\n","import { memo, useMemo } from \"react\"\nimport { AlertDialog as RadixAlertDialog } from \"@radix-ui/themes\"\nimport { AlertDialogContentHelpers, AlertDialogProps } from \"./typings\"\nimport { AlertDialogContent, Title } from \"./AlertDialogContent\"\n\n/**\n * The AlertDialog is used to confirm an action or prompt the user for a decision.\n * Unlike the Dialog, the AlertDialog is not dismissible by clicking outside of the dialog, nor can it be nested.\n *\n * To use, place the `AlertDialogProvider` at the root of your app and use the `useAlertDialog` hook to open the dialog.\n *\n * To set the content of the dialog, use the `content` prop or pass values for the `title`, `description`, and `onAction` props.\n */\nexport const AlertDialog = memo(function AlertDialog(props: AlertDialogProps) {\n\tconst { open, setOpen, children, ...contentProps } = props\n\n\tconst helpers: AlertDialogContentHelpers = useMemo(() => {\n\t\treturn {\n\t\t\tclose: () => setOpen(false),\n\t\t\tTitle,\n\t\t\tDescription: RadixAlertDialog.Description,\n\t\t}\n\t}, [setOpen])\n\n\treturn (\n\t\t<RadixAlertDialog.Root open={open} onOpenChange={setOpen}>\n\t\t\t<RadixAlertDialog.Content>\n\t\t\t\t{\"content\" in contentProps ? contentProps.content(helpers) : <AlertDialogContent {...contentProps} />}\n\t\t\t</RadixAlertDialog.Content>\n\t\t\t{children}\n\t\t</RadixAlertDialog.Root>\n\t)\n})\n","import { createContext, memo, useState, useCallback } from \"react\"\nimport { AlertDialogContextType, AlertDialogOptions } from \"./typings\"\nimport { AlertDialog } from \"./AlertDialog\"\n\ninterface AlertDialogProviderProps {\n\tchildren: React.ReactNode\n}\n\nexport const AlertDialogContent = createContext<AlertDialogContextType>(() => {\n\tthrow new Error(\"No AlertDialogProvider found\")\n})\n\nconst initialState: AlertDialogOptions = {\n\tcontent: () => null,\n}\n\nexport const AlertDialogProvider = memo(function AlertDialogProvider({ children }: AlertDialogProviderProps) {\n\tconst [open, setOpen] = useState(false)\n\tconst [state, setState] = useState<AlertDialogOptions>(initialState)\n\n\tconst openDialog = useCallback<AlertDialogContextType>(\n\t\t(options) => {\n\t\t\tif (open) throw new Error(\"AlertDialog is already open\")\n\n\t\t\tsetState(options)\n\t\t\tsetOpen(true)\n\t\t},\n\t\t[open],\n\t)\n\n\treturn (\n\t\t<AlertDialog open={open} setOpen={setOpen} {...state}>\n\t\t\t<AlertDialogContent.Provider value={openDialog}>{children}</AlertDialogContent.Provider>\n\t\t</AlertDialog>\n\t)\n})\n","import { useContext } from \"react\"\nimport { AlertDialogContent } from \"./context\"\n\nexport const useAlertDialog = () => {\n\treturn useContext(AlertDialogContent)\n}\n","import React, { FC, forwardRef, useMemo } from \"react\"\nimport { Select as RadixSelect } from \"@radix-ui/themes\"\nimport classNames from \"classnames\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\nimport { SelectItemProps, SelectProps } from \"./typings.ts\"\n\nimport styles from \"./Select.module.sass\"\n\nconst _Select = forwardRef(function Select(\n\t{\n\t\tclassName,\n\t\tfluid,\n\t\tsize = \"medium\",\n\t\tvariant = \"surface\",\n\t\tseverity = \"primary\",\n\t\tplaceholder = \"Select\",\n\t\tside,\n\t\titems = [],\n\t\tvalue,\n\t\t...rest\n\t}: SelectProps,\n\tref: React.Ref<HTMLButtonElement>,\n) {\n\tconst mappedSize = useMemo(() => {\n\t\treturn applyResponsiveMapping(size, SizeMapping)\n\t}, [size])\n\tconst color = useSeverityColor(severity)\n\n\t// TODO: extend functionality to support grouping of items\n\t// TODO: remove key change based on value once placeholder issue it fixed in radix-ui/themes\n\treturn (\n\t\t<RadixSelect.Root size={mappedSize} {...rest} key={value === undefined ? 1 : 0} value={value}>\n\t\t\t<RadixSelect.Trigger\n\t\t\t\tclassName={classNames(className, {\n\t\t\t\t\t[styles.fluid!]: fluid,\n\t\t\t\t})}\n\t\t\t\tref={ref}\n\t\t\t\tvariant={variant}\n\t\t\t\tplaceholder={placeholder}\n\t\t\t\tcolor={color}\n\t\t\t/>\n\t\t\t<RadixSelect.Content\n\t\t\t\tside={side}\n\t\t\t\tposition=\"popper\"\n\t\t\t\tvariant={variant !== \"surface\" ? \"soft\" : \"solid\"}\n\t\t\t\tcolor={color}\n\t\t\t>\n\t\t\t\t{items.map(({ label, value, ...rest }: SelectItemProps) => (\n\t\t\t\t\t<RadixSelect.Item key={value} value={value} {...rest}>\n\t\t\t\t\t\t{label}\n\t\t\t\t\t</RadixSelect.Item>\n\t\t\t\t))}\n\t\t\t</RadixSelect.Content>\n\t\t</RadixSelect.Root>\n\t)\n})\nexport const Select: FC<SelectProps> = React.memo(_Select)\n","import React, { FC, forwardRef, useMemo } from \"react\"\nimport { Text, TextField as RadixTextField } from \"@radix-ui/themes\"\nimport classNames from \"classnames\"\nimport { applyResponsiveMapping, useSeverityColor } from \"../utils.ts\"\nimport { SizeMapping } from \"../constants.ts\"\nimport { InputProps } from \"./typings.ts\"\n\nimport styles from \"./Input.module.sass\"\n\nconst _Input = forwardRef(function Input(\n\t{\n\t\tclassName,\n\t\tleftIcon,\n\t\trightIcon,\n\t\tsize = \"medium\",\n\t\tshowInputLength,\n\t\tvalue,\n\t\tvariant,\n\t\tseverity = \"primary\",\n\t\t...rest\n\t}: InputProps,\n\tref: React.Ref<HTMLInputElement>,\n) {\n\tconst computedSize = useMemo(() => {\n\t\treturn applyResponsiveMapping(size, SizeMapping)\n\t}, [size])\n\n\tconst color = useSeverityColor(severity)\n\n\tconst displayInputLength = showInputLength || (showInputLength === undefined && rest.maxLength !== undefined)\n\tconst valueAsString = value !== undefined ? value.toString() : undefined\n\n\treturn (\n\t\t<RadixTextField.Root\n\t\t\tclassName={classNames({\n\t\t\t\t[styles.accommodateCharCount!]: displayInputLength,\n\t\t\t})}\n\t\t\tsize={computedSize}\n\t\t\tvariant={variant}\n\t\t\tcolor={color}\n\t\t>\n\t\t\t<RadixTextField.Slot>{leftIcon}</RadixTextField.Slot>\n\t\t\t<RadixTextField.Input\n\t\t\t\tclassName={classNames(styles.default, className, {\n\t\t\t\t\t[styles.noLeftIcon!]: !leftIcon,\n\t\t\t\t\t[styles.noRightIcon!]: !rightIcon,\n\t\t\t\t})}\n\t\t\t\tref={ref}\n\t\t\t\tsize={computedSize}\n\t\t\t\tvariant={variant}\n\t\t\t\tcolor={color}\n\t\t\t\t{...rest}\n\t\t\t/>\n\t\t\t<RadixTextField.Slot>{rightIcon}</RadixTextField.Slot>\n\t\t\t{displayInputLength && (\n\t\t\t\t<Text as=\"p\" className={styles.charCount} size=\"1\" color=\"gray\">\n\t\t\t\t\t{rest.maxLength !== undefined\n\t\t\t\t\t\t? `${valueAsString?.length}/${rest.maxLength}`\n\t\t\t\t\t\t: `${valueAsString?.length}`}\n\t\t\t\t</Text>\n\t\t\t)}\n\t\t</RadixTextField.Root>\n\t)\n})\nexport const Input: FC<InputProps> = React.memo(_Input)\n","import React, { forwardRef, FC } from \"react\"\nimport { Popover as RadixPopover } from \"@radix-ui/themes\"\nimport { PopoverProps } from \"./typings.ts\"\n\nconst _Popover = forwardRef(function Popover(\n\t{ defaultOpen = false, modal = false, content, children, ...rest }: PopoverProps,\n\tref: React.Ref<HTMLDivElement>,\n) {\n\treturn (\n\t\t<RadixPopover.Root defaultOpen={defaultOpen} modal={modal}>\n\t\t\t<RadixPopover.Trigger>{children}</RadixPopover.Trigger>\n\t\t\t<RadixPopover.Content ref={ref} {...rest}>\n\t\t\t\t{content(RadixPopover.Close)}\n\t\t\t</RadixPopover.Content>\n\t\t</RadixPopover.Root>\n\t)\n})\nexport const Popover: FC<PopoverProps> = React.memo(_Popover)\n","import { FC, forwardRef, memo, Ref } from \"react\"\nimport { Item, Root } from \"@radix-ui/react-toggle-group\"\nimport { ToggleGroupItemProps, ToggleGroupSingleProps } from \"./typings.ts\"\nimport { IconButton } from \"../Buttons\"\nimport classNames from \"classnames\"\nimport { ButtonGroup } from \"../ButtonGroup\"\n\nconst _ToggleGroup = forwardRef(function ToggleGroup(\n\t{\n\t\tclassName,\n\t\titems,\n\t\torientation = \"horizontal\",\n\t\tmerged = true,\n\t\tvalue,\n\t\tseverity,\n\t\tgap,\n\t\tsize,\n\t\t...rest\n\t}: ToggleGroupSingleProps,\n\tref: Ref<HTMLDivElement>,\n) {\n\treturn (\n\t\t<Root\n\t\t\tclassName={classNames(\"overmap-toggle-group\", className)}\n\t\t\tref={ref}\n\t\t\tvalue={value}\n\t\t\torientation={orientation}\n\t\t\t{...rest}\n\t\t>\n\t\t\t<ButtonGroup\n\t\t\t\twidth=\"min-content\"\n\t\t\t\theight=\"min-content\"\n\t\t\t\tmerged={merged}\n\t\t\t\tdirection={orientation === \"vertical\" ? \"column\" : \"row\"}\n\t\t\t\tgap={gap}\n\t\t\t>\n\t\t\t\t{items.map(({ children, ...rest }: ToggleGroupItemProps) => (\n\t\t\t\t\t<Item asChild {...rest} key={rest.value}>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\tclassName={classNames(\"overmap-toggle-group-button\")}\n\t\t\t\t\t\t\taria-label={rest.value}\n\t\t\t\t\t\t\tseverity={severity}\n\t\t\t\t\t\t\tvariant={rest.value === value ? \"solid\" : \"soft\"}\n\t\t\t\t\t\t\tsize={size}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t{children}\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</Item>\n\t\t\t\t))}\n\t\t\t</ButtonGroup>\n\t\t</Root>\n\t)\n})\n\n/** The Toggle Group Component is a user interface element that allows users to select a single option from a set of\n * mutually exclusive choices. It is commonly used in situations where users need to make a single selection from a\n * predefined list of options. This component is built using the ButtonGroup and IconButton components in combination\n * with the Radix Toggle Group primitive found here https://www.radix-ui.com/primitives/docs/components/toggle-group */\nexport const ToggleGroup: FC<ToggleGroupSingleProps> = memo(_ToggleGroup)\n","import { FC, forwardRef, memo, Ref, useCallback } from \"react\"\nimport * as RadixToast from \"@radix-ui/react-toast\"\nimport { Callout, Flex } from \"@radix-ui/themes\"\nimport { Cross2Icon, InfoCircledIcon } from \"@radix-ui/react-icons\"\nimport classNames from \"classnames\"\nimport { IconButton } from \"../Buttons\"\nimport { ToastProps, ToastProviderProps } from \"./typings.ts\"\nimport { useSeverityColor } from \"../utils.ts\"\n\nimport styles from \"./Toast.module.sass\"\n\nconst _Toast = forwardRef(function Toast(\n\t{ title, description, icon, severity = \"primary\", size, onClose, ...rest }: ToastProps,\n\tref: Ref<HTMLLIElement>,\n) {\n\tconst color = useSeverityColor(severity)\n\tconst handleOpenChange = useCallback(\n\t\t(open: boolean) => {\n\t\t\tif (!open && onClose) onClose()\n\t\t},\n\t\t[onClose],\n\t)\n\n\treturn (\n\t\t<RadixToast.Root asChild ref={ref} {...rest} onOpenChange={handleOpenChange}>\n\t\t\t<Callout.Root\n\t\t\t\tclassName={classNames(\"overmap-toast\", styles.wrapper)}\n\t\t\t\tvariant=\"surface\"\n\t\t\t\tcolor={color}\n\t\t\t\tsize={size}\n\t\t\t>\n\t\t\t\t<Flex width=\"100%\" align=\"center\" gap=\"4\" justify=\"between\">\n\t\t\t\t\t<Flex align=\"center\" gap=\"4\">\n\t\t\t\t\t\t<Callout.Icon>{icon || <InfoCircledIcon />}</Callout.Icon>\n\t\t\t\t\t\t<Flex direction=\"column\" gap=\"0\">\n\t\t\t\t\t\t\t<RadixToast.Title asChild>\n\t\t\t\t\t\t\t\t<Callout.Text weight=\"bold\">{title}</Callout.Text>\n\t\t\t\t\t\t\t</RadixToast.Title>\n\t\t\t\t\t\t\t<RadixToast.Description asChild>\n\t\t\t\t\t\t\t\t<Callout.Text weight=\"light\">{description}</Callout.Text>\n\t\t\t\t\t\t\t</RadixToast.Description>\n\t\t\t\t\t\t</Flex>\n\t\t\t\t\t</Flex>\n\t\t\t\t\t<RadixToast.Close asChild>\n\t\t\t\t\t\t<IconButton\n\t\t\t\t\t\t\tclassName={styles.closeButton}\n\t\t\t\t\t\t\taria-label=\"Close\"\n\t\t\t\t\t\t\tvariant=\"ghost\"\n\t\t\t\t\t\t\tsize=\"small\"\n\t\t\t\t\t\t\tseverity={severity}\n\t\t\t\t\t\t>\n\t\t\t\t\t\t\t<Cross2Icon />\n\t\t\t\t\t\t</IconButton>\n\t\t\t\t\t</RadixToast.Close>\n\t\t\t\t</Flex>\n\t\t\t</Callout.Root>\n\t\t</RadixToast.Root>\n\t)\n})\n\nexport const ToastProvider: FC<ToastProviderProps> = memo(function ToastProvider({\n\tchildren,\n\t...rest\n}: ToastProviderProps) {\n\treturn (\n\t\t<RadixToast.Provider swipeDirection=\"right\" swipeThreshold={75} {...rest}>\n\t\t\t{children}\n\t\t</RadixToast.Provider>\n\t)\n})\n\nexport const Toast: FC<ToastProps> = memo(_Toast)\nexport const ToastViewport: FC<RadixToast.ToastViewportProps> = RadixToast.Viewport\n","import { memo, createContext, useState, useCallback, FC } from \"react\"\nimport { IToastContext, SimpleToastMessage, ToastContextProviderProps, ToastProps } from \"./typings.ts\"\nimport { Toast, ToastProvider, ToastViewport } from \"./Toast.tsx\"\n\nexport const ToastContext = createContext({} as IToastContext)\n\nexport const ToastContextProvider: FC<ToastContextProviderProps> = memo(function ToastContextProvider({\n\tchildren,\n\t// Use this class to change where the viewport for the toasts should be\n\tviewportClass,\n\thotkey,\n\t// Default duration value for all Toasts\n\tduration = 10000,\n\t...rest\n}: ToastContextProviderProps) {\n\tconst [toasts, setToasts] = useState<ToastProps[]>([])\n\n\tconst showToast = useCallback((toastProps: ToastProps) => {\n\t\tsetToasts((prevToasts) => [...prevToasts, toastProps])\n\t}, [])\n\n\tconst showPrimary = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"primary\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst showSuccess = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"success\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst showError = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"danger\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst showInfo = useCallback(\n\t\t(simpleMessage: SimpleToastMessage) => {\n\t\t\tshowToast({ severity: \"info\", ...simpleMessage })\n\t\t},\n\t\t[showToast],\n\t)\n\n\tconst deleteToastAtIndex = useCallback(\n\t\t(index: number) => {\n\t\t\tconst tempToasts = [...toasts]\n\t\t\ttempToasts.splice(index, 1)\n\t\t\tsetToasts(() => tempToasts)\n\t\t},\n\t\t[toasts],\n\t)\n\n\tconst toastContextValue = {\n\t\tshowToast,\n\t\tshowPrimary,\n\t\tshowSuccess,\n\t\tshowError,\n\t\tshowInfo,\n\t}\n\n\treturn (\n\t\t<ToastContext.Provider value={toastContextValue}>\n\t\t\t<ToastProvider duration={duration} {...rest}>\n\t\t\t\t<ToastViewport className={viewportClass} hotkey={hotkey} />\n\t\t\t\t{toasts.map((toastProps, index) => (\n\t\t\t\t\t<Toast key={index} {...toastProps} onClose={() => deleteToastAtIndex(index)} />\n\t\t\t\t))}\n\t\t\t\t{children}\n\t\t\t</ToastProvider>\n\t\t</ToastContext.Provider>\n\t)\n})\n","import { Theme, ThemeOptions } from \"@radix-ui/themes\"\nimport { forwardRef, memo, ReactNode } from \"react\"\n// css file contains updates to the default radix tokens\nimport \"./DefaultTheme.css\"\n\nexport interface ThemeProps extends Partial<ThemeOptions> {\n\tchildren: ReactNode\n}\n\nexport const DefaultTheme = memo(\n\tforwardRef<HTMLDivElement, ThemeProps>((props, ref) => {\n\t\tconst { panelBackground = \"solid\", ...rest } = props\n\t\treturn <Theme panelBackground={panelBackground} ref={ref} {...rest} />\n\t}),\n)\n"],"names":["hasOwn","classNames","classes","i","arg","argType","inner","key","module","hoverEffectClassNameMapping","styles","applyResponsiveMapping","value","mapping","_value","nonThemeSeverityMapping","useSeverityColor","severity","theme","useThemeContext","SizeMapping","_Button","forwardRef","className","fluid","size","hoverEffects","type","rest","ref","color","hoverEffectClasses","hoverEffect","jsx","RadixButton","Button","React","children","RadixIconButton","IconButton","GhostVariantSizeToGapMapping","_ButtonGroup","merged","gap","direction","variant","Flex","child","index","cloneElement","ButtonGroup","memo","DialogContent","props","title","description","content","closeDialog","jsxs","Dialog","Cross1Icon","onOpen","onCloseInterrupt","contentProps","open","setOpen","useState","handleOpenChange","useCallback","next","options","RadixDialog","Title","AlertDialog","AlertDialogContent","actionText","cancelText","onAction","onCancel","helpers","useMemo","RadixAlertDialog","createContext","initialState","AlertDialogProvider","state","setState","openDialog","useAlertDialog","useContext","_Select","placeholder","side","items","mappedSize","createElement","RadixSelect","label","Select","_Input","leftIcon","rightIcon","showInputLength","computedSize","displayInputLength","valueAsString","RadixTextField","Text","Input","_Popover","defaultOpen","modal","RadixPopover","Popover","_ToggleGroup","orientation","Root","Item","ToggleGroup","_Toast","icon","onClose","RadixToast","Callout","InfoCircledIcon","Cross2Icon","ToastProvider","Toast","ToastViewport","ToastContext","ToastContextProvider","viewportClass","hotkey","duration","toasts","setToasts","showToast","toastProps","prevToasts","showPrimary","simpleMessage","showSuccess","showError","showInfo","deleteToastAtIndex","tempToasts","toastContextValue","DefaultTheme","panelBackground","Theme"],"mappings":"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","x_google_ignoreList":[0]}
|