@synnaxlabs/pluto 0.21.5 → 0.21.6
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/{Keyboard-BqO4SYSr.js → Keyboard-DCHQVLbP.js} +2 -2
- package/dist/{Keyboard-BqO4SYSr.js.map → Keyboard-DCHQVLbP.js.map} +1 -1
- package/dist/{Keyboard-CsgjS96C.cjs → Keyboard-DD2KYOn6.cjs} +2 -2
- package/dist/{Keyboard-CsgjS96C.cjs.map → Keyboard-DD2KYOn6.cjs.map} +1 -1
- package/dist/{Link-BaPpY2rf.js → Link-D48KH--6.js} +2 -2
- package/dist/{Link-BaPpY2rf.js.map → Link-D48KH--6.js.map} +1 -1
- package/dist/{Link-B6B7MB7O.cjs → Link-DlYOVhHH.cjs} +2 -2
- package/dist/{Link-B6B7MB7O.cjs.map → Link-DlYOVhHH.cjs.map} +1 -1
- package/dist/{List-aJEsDHql.js → List-CUO-_-jL.js} +2 -2
- package/dist/{List-aJEsDHql.js.map → List-CUO-_-jL.js.map} +1 -1
- package/dist/{List-J5T88ynF.cjs → List-CUq1lENO.cjs} +2 -2
- package/dist/{List-J5T88ynF.cjs.map → List-CUq1lENO.cjs.map} +1 -1
- package/dist/{Toggle-CAW20E9V.cjs → Toggle-ClTExSi6.cjs} +4 -4
- package/dist/{Toggle-CAW20E9V.cjs.map → Toggle-ClTExSi6.cjs.map} +1 -1
- package/dist/{Toggle-DcOiWiHG.js → Toggle-DozaP3Tx.js} +4 -4
- package/dist/{Toggle-DcOiWiHG.js.map → Toggle-DozaP3Tx.js.map} +1 -1
- package/dist/button.cjs +1 -1
- package/dist/button.js +1 -1
- package/dist/color.cjs +1 -1
- package/dist/color.js +1 -1
- package/dist/dropdown.cjs +1 -1
- package/dist/dropdown.js +1 -1
- package/dist/{external-CPB95nWX.js → external-B0DCjEX5.js} +2 -2
- package/dist/{external-CPB95nWX.js.map → external-B0DCjEX5.js.map} +1 -1
- package/dist/{external-Brr6przd.js → external-BGyrJwT6.js} +2 -2
- package/dist/{external-Brr6przd.js.map → external-BGyrJwT6.js.map} +1 -1
- package/dist/{external-DL9-TJzC.cjs → external-BWNeNJEb.cjs} +4 -4
- package/dist/{external-DL9-TJzC.cjs.map → external-BWNeNJEb.cjs.map} +1 -1
- package/dist/{external-CtH30naU.js → external-BX1SuP7b.js} +2 -2
- package/dist/{external-CtH30naU.js.map → external-BX1SuP7b.js.map} +1 -1
- package/dist/{external-p8bRcctL.cjs → external-BbCvNSWY.cjs} +2 -2
- package/dist/{external-p8bRcctL.cjs.map → external-BbCvNSWY.cjs.map} +1 -1
- package/dist/{external-Drem1ngI.cjs → external-Br3dSWZy.cjs} +2 -2
- package/dist/{external-Drem1ngI.cjs.map → external-Br3dSWZy.cjs.map} +1 -1
- package/dist/{external-B6yW9yjs.js → external-Bw-gM1WS.js} +2 -2
- package/dist/external-Bw-gM1WS.js.map +1 -0
- package/dist/{external-CYRIymJR.cjs → external-CTg9-80v.cjs} +2 -2
- package/dist/{external-CYRIymJR.cjs.map → external-CTg9-80v.cjs.map} +1 -1
- package/dist/{external-CZli69bF.cjs → external-Cq-yOszj.cjs} +2 -2
- package/dist/{external-CZli69bF.cjs.map → external-Cq-yOszj.cjs.map} +1 -1
- package/dist/{external-axSECIuu.cjs → external-CsyhVOiV.cjs} +3 -3
- package/dist/{external-axSECIuu.cjs.map → external-CsyhVOiV.cjs.map} +1 -1
- package/dist/{external-Dpr-yBfa.cjs → external-DE-HpRm9.cjs} +3 -3
- package/dist/external-DE-HpRm9.cjs.map +1 -0
- package/dist/{external-yv4F8ndX.js → external-DGEGrIB8.js} +3 -3
- package/dist/{external-yv4F8ndX.js.map → external-DGEGrIB8.js.map} +1 -1
- package/dist/{external-Bn7V_LTL.js → external-DWisAHYJ.js} +3 -3
- package/dist/{external-Bn7V_LTL.js.map → external-DWisAHYJ.js.map} +1 -1
- package/dist/{external-Doprw1Uu.js → external-DX1JRejp.js} +4 -4
- package/dist/{external-Doprw1Uu.js.map → external-DX1JRejp.js.map} +1 -1
- package/dist/{external-wfv-EKsR.js → external-DrUfLzJs.js} +4 -4
- package/dist/{external-wfv-EKsR.js.map → external-DrUfLzJs.js.map} +1 -1
- package/dist/{external-B695Iunb.js → external-DwY1uz6Y.js} +2 -2
- package/dist/{external-B695Iunb.js.map → external-DwY1uz6Y.js.map} +1 -1
- package/dist/{external-D8uwkCSk.js → external-EIV24CTN.js} +3 -3
- package/dist/{external-D8uwkCSk.js.map → external-EIV24CTN.js.map} +1 -1
- package/dist/{external-DnojrP1p.cjs → external-JjFzMlTY.cjs} +3 -3
- package/dist/{external-DnojrP1p.cjs.map → external-JjFzMlTY.cjs.map} +1 -1
- package/dist/{external-BoNCimxR.cjs → external-VofAmo6_.cjs} +2 -2
- package/dist/external-VofAmo6_.cjs.map +1 -0
- package/dist/{external-kZAfJn1X.cjs → external-gzESdEqw.cjs} +3 -3
- package/dist/{external-kZAfJn1X.cjs.map → external-gzESdEqw.cjs.map} +1 -1
- package/dist/{external-CflFsngP.js → external-jVPC18yY.js} +3 -3
- package/dist/external-jVPC18yY.js.map +1 -0
- package/dist/{external-BGl-cQCe.cjs → external-rv9PfMM3.cjs} +4 -4
- package/dist/{external-BGl-cQCe.cjs.map → external-rv9PfMM3.cjs.map} +1 -1
- package/dist/header.cjs +1 -1
- package/dist/header.js +1 -1
- package/dist/index.cjs +21 -26
- package/dist/index.cjs.map +1 -1
- package/dist/index.js +29 -34
- package/dist/index.js.map +1 -1
- package/dist/input.cjs +1 -1
- package/dist/input.js +1 -1
- package/dist/list.cjs +1 -1
- package/dist/list.js +1 -1
- package/dist/menu.cjs +1 -1
- package/dist/menu.js +1 -1
- package/dist/src/form/Form.d.ts.map +1 -1
- package/dist/src/vis/lineplot/LinePlot.d.ts +1 -1
- package/dist/src/vis/lineplot/LinePlot.d.ts.map +1 -1
- package/dist/tabs.cjs +1 -1
- package/dist/tabs.js +1 -1
- package/dist/text.cjs +2 -2
- package/dist/text.js +2 -2
- package/dist/theming.cjs +2 -2
- package/dist/theming.js +2 -2
- package/dist/tree.cjs +1 -1
- package/dist/tree.js +1 -1
- package/dist/triggers.cjs +1 -1
- package/dist/triggers.js +1 -1
- package/package.json +5 -5
- package/dist/external-B6yW9yjs.js.map +0 -1
- package/dist/external-BoNCimxR.cjs.map +0 -1
- package/dist/external-CflFsngP.js.map +0 -1
- package/dist/external-Dpr-yBfa.cjs.map +0 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"external-BGl-cQCe.cjs","sources":["../src/select/List.tsx","../src/select/Button.tsx","../src/text/SelectLevel.tsx"],"sourcesContent":["// Copyright 2023 Synnax Labs, Inc.\n//\n// Use of this software is governed by the Business Source License included in the file\n// licenses/BSL.txt.\n//\n// As of the Change Date specified in that file, in accordance with the Business Source\n// License, use of this software will be governed by the Apache License, Version 2.0,\n// included in the file licenses/APL.txt.\n\nimport { type PropsWithChildren, type ReactElement } from \"react\";\n\nimport { type Key, type Keyed } from \"@synnaxlabs/x\";\n\nimport { CSS } from \"@/css\";\nimport { Dropdown } from \"@/dropdown\";\nimport { List as CoreList } from \"@/list\";\nimport { componentRenderProp } from \"@/util/renderProp\";\n\nexport interface SelectListProps<K extends Key = Key, E extends Keyed<K> = Keyed<K>>\n extends CoreList.SelectorProps<K, E>,\n Pick<Partial<CoreList.ColumnHeaderProps<K, E>>, \"columns\">,\n Omit<Dropdown.DialogProps, \"onChange\" | \"children\">,\n PropsWithChildren<{}> {\n data?: E[];\n emptyContent?: ReactElement;\n hideColumnHeader?: boolean;\n omit?: K[];\n}\n\nconst DEFAULT_COLUMNS: CoreList.ColumnSpec[] = [];\n\nexport const Core = <K extends Key, E extends Keyed<K>>({\n data,\n emptyContent,\n value,\n onChange,\n allowMultiple,\n allowNone,\n hideColumnHeader = false,\n children,\n columns = DEFAULT_COLUMNS,\n visible,\n replaceOnSingle,\n omit,\n ...props\n}: SelectListProps<K, E>): ReactElement => (\n <CoreList.List data={data} emptyContent={emptyContent} omit={omit}>\n <CoreList.Selector\n value={value}\n onChange={onChange}\n allowMultiple={allowMultiple}\n allowNone={allowNone}\n replaceOnSingle={replaceOnSingle}\n >\n <Dropdown.Dialog visible={visible} className={CSS.B(\"select\")} {...props}>\n {children}\n <CoreList.Hover disabled={!visible}>\n <CoreList.Column.Header hide={hideColumnHeader} columns={columns}>\n <CoreList.Core.Virtual itemHeight={CoreList.Column.itemHeight}>\n {componentRenderProp(CoreList.Column.Item)}\n </CoreList.Core.Virtual>\n </CoreList.Column.Header>\n </CoreList.Hover>\n </Dropdown.Dialog>\n </CoreList.Selector>\n </CoreList.List>\n);\n","// Copyright 2023 Synnax Labs, Inc.\n//\n// Use of this software is governed by the Business Source License included in the file\n// licenses/BSL.txt.\n//\n// As of the Change Date specified in that file, in accordance with the Business Source\n// License, use of this software will be governed by the Apache License, Version 2.0,\n// included in the file licenses/APL.txt.\n\nimport {\n useCallback,\n type ReactElement,\n useState,\n useEffect,\n type ReactNode,\n} from \"react\";\n\nimport { Icon } from \"@synnaxlabs/media\";\nimport { type Keyed, type Key } from \"@synnaxlabs/x\";\n\nimport { Align } from \"@/align\";\nimport { Button as CoreButton } from \"@/button\";\nimport { CSS } from \"@/css\";\nimport { Dropdown } from \"@/dropdown\";\nimport { type Input } from \"@/input\";\nimport { type List as CoreList } from \"@/list\";\nimport {\n type UseSelectProps,\n useSelect,\n type UseSelectOnChangeExtra,\n} from \"@/list/useSelect\";\nimport { Core } from \"@/select/List\";\nimport { componentRenderProp, type RenderProp } from \"@/util/renderProp\";\n\nimport \"@/select/Button.css\";\n\nexport interface ButtonOptionProps<K extends Key = Key, E extends Keyed<K> = Keyed<K>>\n extends Pick<CoreButton.ButtonProps, \"onClick\"> {\n key: K;\n selected: boolean;\n entry: E;\n title: E[keyof E];\n}\n\nexport type ButtonProps<K extends Key = Key, E extends Keyed<K> = Keyed<K>> = Omit<\n UseSelectProps<K, E>,\n \"data\"\n> &\n Omit<Align.PackProps, \"children\" | \"onChange\"> & {\n data: E[];\n children?: RenderProp<ButtonOptionProps<K, E>>;\n entryRenderKey?: keyof E;\n };\n\nexport const Button = <K extends Key = Key, E extends Keyed<K> = Keyed<K>>({\n children = defaultSelectButtonOption,\n value,\n onChange,\n entryRenderKey = \"key\",\n allowNone = false,\n allowMultiple = false,\n data,\n replaceOnSingle,\n ...props\n}: ButtonProps<K, E>): JSX.Element => {\n const { onSelect } = useSelect<K, E>({\n allowMultiple,\n allowNone,\n replaceOnSingle,\n data,\n value,\n onChange,\n } as const as UseSelectProps<K, E>);\n\n return (\n <Align.Pack {...props}>\n {data.map((e) => {\n return children({\n key: e.key,\n onClick: () => onSelect(e.key),\n selected: e.key === value,\n entry: e,\n title: e[entryRenderKey],\n });\n })}\n </Align.Pack>\n );\n};\n\nconst defaultSelectButtonOption = <K extends Key = Key, E extends Keyed<K> = Keyed<K>>({\n onClick,\n selected,\n title,\n}: ButtonOptionProps<K, E>): JSX.Element => (\n <CoreButton.Button onClick={onClick} variant={selected ? \"filled\" : \"outlined\"}>\n {title as ReactNode}\n </CoreButton.Button>\n);\n\nexport interface DropdownButtonButtonProps<K extends Key, E extends Keyed<K>>\n extends CoreButton.ButtonProps {\n selected: E | null;\n renderKey: keyof E;\n toggle: () => void;\n visible: boolean;\n}\n\nexport interface DropdownButtonProps<K extends Key, E extends Keyed<K>>\n extends Omit<Dropdown.DialogProps, \"onChange\" | \"visible\" | \"children\" | \"close\">,\n Input.Control<K>,\n Omit<CoreList.ListProps<K, E>, \"children\">,\n Pick<CoreButton.ButtonProps, \"disabled\"> {\n columns?: Array<CoreList.ColumnSpec<K, E>>;\n children?: RenderProp<DropdownButtonButtonProps<K, E>>;\n entryRenderKey?: keyof E;\n allowNone?: boolean;\n hideColumnHeader?: boolean;\n disabled?: boolean;\n omit?: K[];\n}\n\nexport const BaseButton = ({\n selected,\n renderKey,\n toggle,\n visible,\n children,\n ...props\n}: DropdownButtonButtonProps<any, any>): ReactElement => (\n <CoreButton.Button\n className={CSS.B(\"select-button\")}\n onClick={toggle}\n variant=\"outlined\"\n endIcon={<Icon.Caret.Left className={CSS.BE(\"select-button\", \"indicator\")} />}\n {...props}\n >\n {children ?? selected?.[renderKey]}\n </CoreButton.Button>\n);\n\nexport const defaultButton: RenderProp<DropdownButtonButtonProps<any, any>> =\n componentRenderProp(BaseButton);\n\nexport const DropdownButton = <K extends Key = Key, E extends Keyed<K> = Keyed<K>>({\n data,\n value,\n columns = [],\n children = defaultButton,\n entryRenderKey = \"key\",\n allowNone = false,\n onChange,\n disabled,\n hideColumnHeader = true,\n ...props\n}: DropdownButtonProps<K, E>): ReactElement => {\n const { close, visible, toggle } = Dropdown.use();\n const [selected, setSelected] = useState<E | null>(\n data?.find((e) => e.key === value) ?? null,\n );\n\n useEffect(() => {\n setSelected(data?.find((e) => e.key === value) ?? null);\n }, [data, value]);\n\n const handleChange: UseSelectProps<K, E>[\"onChange\"] = useCallback(\n (next: K, e: UseSelectOnChangeExtra<K, E>): void => {\n close();\n if (next == null) {\n setSelected(null);\n return onChange(value);\n }\n setSelected(e.entries[0]);\n onChange(next);\n },\n [onChange, value, close, setSelected],\n );\n\n return (\n <Core<K, E>\n {...props}\n close={close}\n data={data}\n visible={visible}\n value={[value]}\n onChange={handleChange}\n allowMultiple={false}\n allowNone={allowNone}\n columns={columns}\n hideColumnHeader={hideColumnHeader}\n >\n {children({\n selected,\n renderKey: entryRenderKey,\n toggle,\n visible,\n disabled,\n })}\n </Core>\n );\n};\n","// Copyright 2023 Synnax Labs, Inc.\n//\n// Use of this software is governed by the Business Source License included in the file\n// licenses/BSL.txt.\n//\n// As of the Change Date specified in that file, in accordance with the Business Source\n// License, use of this software will be governed by the Apache License, Version 2.0,\n// included in the file licenses/APL.txt.\n\nimport { type ReactElement } from \"react\";\n\nimport { Button as CoreButton } from \"@/button\";\nimport { Button, type ButtonOptionProps, type ButtonProps } from \"@/select/Button\";\nimport { type text } from \"@/text/core\";\n\ninterface Entry {\n key: text.Level;\n label: string;\n}\n\nexport interface SelectLevelProps\n extends Omit<ButtonProps<text.Level, Entry>, \"data\" | \"entryRenderKey\"> {}\n\nconst DATA: Entry[] = [\n {\n key: \"h2\",\n label: \"XL\",\n },\n {\n key: \"h3\",\n label: \"L\",\n },\n {\n key: \"h4\",\n label: \"M\",\n },\n {\n key: \"p\",\n label: \"S\",\n },\n {\n key: \"small\",\n label: \"XS\",\n },\n];\n\nconst defaultSelectDirectionButton = ({\n key,\n entry,\n onClick,\n selected,\n}: ButtonOptionProps<text.Level, Entry>): ReactElement => {\n return (\n <CoreButton.Button\n key={key}\n variant={selected ? \"filled\" : \"outlined\"}\n onClick={onClick}\n >\n {entry.label}\n </CoreButton.Button>\n );\n};\n\nexport const SelectLevel = ({\n children = defaultSelectDirectionButton,\n ...props\n}: SelectLevelProps): ReactElement => {\n return (\n <Button {...props} data={DATA}>\n {children}\n </Button>\n );\n};\n"],"names":["CoreList.List","jsx","CoreList.Selector","jsxs","Dropdown.Dialog","CSS","CoreList.Hover","CoreList.Column","CoreList.Core","componentRenderProp","useSelect","Align.Pack","CoreButton.Button","Icon","Dropdown.use","useState","useEffect","useCallback"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"external-rv9PfMM3.cjs","sources":["../src/select/List.tsx","../src/select/Button.tsx","../src/text/SelectLevel.tsx"],"sourcesContent":["// Copyright 2023 Synnax Labs, Inc.\n//\n// Use of this software is governed by the Business Source License included in the file\n// licenses/BSL.txt.\n//\n// As of the Change Date specified in that file, in accordance with the Business Source\n// License, use of this software will be governed by the Apache License, Version 2.0,\n// included in the file licenses/APL.txt.\n\nimport { type PropsWithChildren, type ReactElement } from \"react\";\n\nimport { type Key, type Keyed } from \"@synnaxlabs/x\";\n\nimport { CSS } from \"@/css\";\nimport { Dropdown } from \"@/dropdown\";\nimport { List as CoreList } from \"@/list\";\nimport { componentRenderProp } from \"@/util/renderProp\";\n\nexport interface SelectListProps<K extends Key = Key, E extends Keyed<K> = Keyed<K>>\n extends CoreList.SelectorProps<K, E>,\n Pick<Partial<CoreList.ColumnHeaderProps<K, E>>, \"columns\">,\n Omit<Dropdown.DialogProps, \"onChange\" | \"children\">,\n PropsWithChildren<{}> {\n data?: E[];\n emptyContent?: ReactElement;\n hideColumnHeader?: boolean;\n omit?: K[];\n}\n\nconst DEFAULT_COLUMNS: CoreList.ColumnSpec[] = [];\n\nexport const Core = <K extends Key, E extends Keyed<K>>({\n data,\n emptyContent,\n value,\n onChange,\n allowMultiple,\n allowNone,\n hideColumnHeader = false,\n children,\n columns = DEFAULT_COLUMNS,\n visible,\n replaceOnSingle,\n omit,\n ...props\n}: SelectListProps<K, E>): ReactElement => (\n <CoreList.List data={data} emptyContent={emptyContent} omit={omit}>\n <CoreList.Selector\n value={value}\n onChange={onChange}\n allowMultiple={allowMultiple}\n allowNone={allowNone}\n replaceOnSingle={replaceOnSingle}\n >\n <Dropdown.Dialog visible={visible} className={CSS.B(\"select\")} {...props}>\n {children}\n <CoreList.Hover disabled={!visible}>\n <CoreList.Column.Header hide={hideColumnHeader} columns={columns}>\n <CoreList.Core.Virtual itemHeight={CoreList.Column.itemHeight}>\n {componentRenderProp(CoreList.Column.Item)}\n </CoreList.Core.Virtual>\n </CoreList.Column.Header>\n </CoreList.Hover>\n </Dropdown.Dialog>\n </CoreList.Selector>\n </CoreList.List>\n);\n","// Copyright 2023 Synnax Labs, Inc.\n//\n// Use of this software is governed by the Business Source License included in the file\n// licenses/BSL.txt.\n//\n// As of the Change Date specified in that file, in accordance with the Business Source\n// License, use of this software will be governed by the Apache License, Version 2.0,\n// included in the file licenses/APL.txt.\n\nimport {\n useCallback,\n type ReactElement,\n useState,\n useEffect,\n type ReactNode,\n} from \"react\";\n\nimport { Icon } from \"@synnaxlabs/media\";\nimport { type Keyed, type Key } from \"@synnaxlabs/x\";\n\nimport { Align } from \"@/align\";\nimport { Button as CoreButton } from \"@/button\";\nimport { CSS } from \"@/css\";\nimport { Dropdown } from \"@/dropdown\";\nimport { type Input } from \"@/input\";\nimport { type List as CoreList } from \"@/list\";\nimport {\n type UseSelectProps,\n useSelect,\n type UseSelectOnChangeExtra,\n} from \"@/list/useSelect\";\nimport { Core } from \"@/select/List\";\nimport { componentRenderProp, type RenderProp } from \"@/util/renderProp\";\n\nimport \"@/select/Button.css\";\n\nexport interface ButtonOptionProps<K extends Key = Key, E extends Keyed<K> = Keyed<K>>\n extends Pick<CoreButton.ButtonProps, \"onClick\"> {\n key: K;\n selected: boolean;\n entry: E;\n title: E[keyof E];\n}\n\nexport type ButtonProps<K extends Key = Key, E extends Keyed<K> = Keyed<K>> = Omit<\n UseSelectProps<K, E>,\n \"data\"\n> &\n Omit<Align.PackProps, \"children\" | \"onChange\"> & {\n data: E[];\n children?: RenderProp<ButtonOptionProps<K, E>>;\n entryRenderKey?: keyof E;\n };\n\nexport const Button = <K extends Key = Key, E extends Keyed<K> = Keyed<K>>({\n children = defaultSelectButtonOption,\n value,\n onChange,\n entryRenderKey = \"key\",\n allowNone = false,\n allowMultiple = false,\n data,\n replaceOnSingle,\n ...props\n}: ButtonProps<K, E>): JSX.Element => {\n const { onSelect } = useSelect<K, E>({\n allowMultiple,\n allowNone,\n replaceOnSingle,\n data,\n value,\n onChange,\n } as const as UseSelectProps<K, E>);\n\n return (\n <Align.Pack {...props}>\n {data.map((e) => {\n return children({\n key: e.key,\n onClick: () => onSelect(e.key),\n selected: e.key === value,\n entry: e,\n title: e[entryRenderKey],\n });\n })}\n </Align.Pack>\n );\n};\n\nconst defaultSelectButtonOption = <K extends Key = Key, E extends Keyed<K> = Keyed<K>>({\n onClick,\n selected,\n title,\n}: ButtonOptionProps<K, E>): JSX.Element => (\n <CoreButton.Button onClick={onClick} variant={selected ? \"filled\" : \"outlined\"}>\n {title as ReactNode}\n </CoreButton.Button>\n);\n\nexport interface DropdownButtonButtonProps<K extends Key, E extends Keyed<K>>\n extends CoreButton.ButtonProps {\n selected: E | null;\n renderKey: keyof E;\n toggle: () => void;\n visible: boolean;\n}\n\nexport interface DropdownButtonProps<K extends Key, E extends Keyed<K>>\n extends Omit<Dropdown.DialogProps, \"onChange\" | \"visible\" | \"children\" | \"close\">,\n Input.Control<K>,\n Omit<CoreList.ListProps<K, E>, \"children\">,\n Pick<CoreButton.ButtonProps, \"disabled\"> {\n columns?: Array<CoreList.ColumnSpec<K, E>>;\n children?: RenderProp<DropdownButtonButtonProps<K, E>>;\n entryRenderKey?: keyof E;\n allowNone?: boolean;\n hideColumnHeader?: boolean;\n disabled?: boolean;\n omit?: K[];\n}\n\nexport const BaseButton = ({\n selected,\n renderKey,\n toggle,\n visible,\n children,\n ...props\n}: DropdownButtonButtonProps<any, any>): ReactElement => (\n <CoreButton.Button\n className={CSS.B(\"select-button\")}\n onClick={toggle}\n variant=\"outlined\"\n endIcon={<Icon.Caret.Left className={CSS.BE(\"select-button\", \"indicator\")} />}\n {...props}\n >\n {children ?? selected?.[renderKey]}\n </CoreButton.Button>\n);\n\nexport const defaultButton: RenderProp<DropdownButtonButtonProps<any, any>> =\n componentRenderProp(BaseButton);\n\nexport const DropdownButton = <K extends Key = Key, E extends Keyed<K> = Keyed<K>>({\n data,\n value,\n columns = [],\n children = defaultButton,\n entryRenderKey = \"key\",\n allowNone = false,\n onChange,\n disabled,\n hideColumnHeader = true,\n ...props\n}: DropdownButtonProps<K, E>): ReactElement => {\n const { close, visible, toggle } = Dropdown.use();\n const [selected, setSelected] = useState<E | null>(\n data?.find((e) => e.key === value) ?? null,\n );\n\n useEffect(() => {\n setSelected(data?.find((e) => e.key === value) ?? null);\n }, [data, value]);\n\n const handleChange: UseSelectProps<K, E>[\"onChange\"] = useCallback(\n (next: K, e: UseSelectOnChangeExtra<K, E>): void => {\n close();\n if (next == null) {\n setSelected(null);\n return onChange(value);\n }\n setSelected(e.entries[0]);\n onChange(next);\n },\n [onChange, value, close, setSelected],\n );\n\n return (\n <Core<K, E>\n {...props}\n close={close}\n data={data}\n visible={visible}\n value={[value]}\n onChange={handleChange}\n allowMultiple={false}\n allowNone={allowNone}\n columns={columns}\n hideColumnHeader={hideColumnHeader}\n >\n {children({\n selected,\n renderKey: entryRenderKey,\n toggle,\n visible,\n disabled,\n })}\n </Core>\n );\n};\n","// Copyright 2023 Synnax Labs, Inc.\n//\n// Use of this software is governed by the Business Source License included in the file\n// licenses/BSL.txt.\n//\n// As of the Change Date specified in that file, in accordance with the Business Source\n// License, use of this software will be governed by the Apache License, Version 2.0,\n// included in the file licenses/APL.txt.\n\nimport { type ReactElement } from \"react\";\n\nimport { Button as CoreButton } from \"@/button\";\nimport { Button, type ButtonOptionProps, type ButtonProps } from \"@/select/Button\";\nimport { type text } from \"@/text/core\";\n\ninterface Entry {\n key: text.Level;\n label: string;\n}\n\nexport interface SelectLevelProps\n extends Omit<ButtonProps<text.Level, Entry>, \"data\" | \"entryRenderKey\"> {}\n\nconst DATA: Entry[] = [\n {\n key: \"h2\",\n label: \"XL\",\n },\n {\n key: \"h3\",\n label: \"L\",\n },\n {\n key: \"h4\",\n label: \"M\",\n },\n {\n key: \"p\",\n label: \"S\",\n },\n {\n key: \"small\",\n label: \"XS\",\n },\n];\n\nconst defaultSelectDirectionButton = ({\n key,\n entry,\n onClick,\n selected,\n}: ButtonOptionProps<text.Level, Entry>): ReactElement => {\n return (\n <CoreButton.Button\n key={key}\n variant={selected ? \"filled\" : \"outlined\"}\n onClick={onClick}\n >\n {entry.label}\n </CoreButton.Button>\n );\n};\n\nexport const SelectLevel = ({\n children = defaultSelectDirectionButton,\n ...props\n}: SelectLevelProps): ReactElement => {\n return (\n <Button {...props} data={DATA}>\n {children}\n </Button>\n );\n};\n"],"names":["CoreList.List","jsx","CoreList.Selector","jsxs","Dropdown.Dialog","CSS","CoreList.Hover","CoreList.Column","CoreList.Core","componentRenderProp","useSelect","Align.Pack","CoreButton.Button","Icon","Dropdown.use","useState","useEffect","useCallback"],"mappings":"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"}
|
package/dist/header.cjs
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
3
|
-
const external = require("./external-
|
|
3
|
+
const external = require("./external-Br3dSWZy.cjs");
|
|
4
4
|
exports.Header = external.external;
|
|
5
5
|
//# sourceMappingURL=header.cjs.map
|
package/dist/header.js
CHANGED
package/dist/index.cjs
CHANGED
|
@@ -8,25 +8,25 @@ var __publicField = (obj, key, value2) => {
|
|
|
8
8
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
9
9
|
const jsxRuntime = require("./jsx-runtime-B3vWrP5x.cjs");
|
|
10
10
|
const React = require("react");
|
|
11
|
-
const Toggle$1 = require("./Toggle-
|
|
11
|
+
const Toggle$1 = require("./Toggle-ClTExSi6.cjs");
|
|
12
12
|
const css = require("./css-Pf9qxhQ4.cjs");
|
|
13
|
-
const external$l = require("./external-
|
|
13
|
+
const external$l = require("./external-Br3dSWZy.cjs");
|
|
14
14
|
const aggregator = require("./aggregator-Ca8xiVD2.cjs");
|
|
15
15
|
const Center$1 = require("./Center-5NJ61qfA.cjs");
|
|
16
16
|
const LinePlot$2 = require("./LinePlot-FmPnet-3.cjs");
|
|
17
|
-
const external$k = require("./external-
|
|
18
|
-
const external$t = require("./external-
|
|
19
|
-
const external$q = require("./external-
|
|
17
|
+
const external$k = require("./external-BbCvNSWY.cjs");
|
|
18
|
+
const external$t = require("./external-gzESdEqw.cjs");
|
|
19
|
+
const external$q = require("./external-rv9PfMM3.cjs");
|
|
20
20
|
const reactDom = require("react-dom");
|
|
21
|
-
const external$o = require("./external-
|
|
22
|
-
const external$n = require("./external-
|
|
21
|
+
const external$o = require("./external-CsyhVOiV.cjs");
|
|
22
|
+
const external$n = require("./external-JjFzMlTY.cjs");
|
|
23
23
|
const external$i = require("./external-D8dWmF4U.cjs");
|
|
24
|
-
const external$j = require("./external-
|
|
24
|
+
const external$j = require("./external-DE-HpRm9.cjs");
|
|
25
25
|
const color = require("./color-BVVyrgRF.cjs");
|
|
26
|
-
const external$m = require("./external-
|
|
27
|
-
const external$p = require("./external-
|
|
28
|
-
const external$r = require("./external-
|
|
29
|
-
const external$s = require("./external-
|
|
26
|
+
const external$m = require("./external-Cq-yOszj.cjs");
|
|
27
|
+
const external$p = require("./external-CTg9-80v.cjs");
|
|
28
|
+
const external$r = require("./external-VofAmo6_.cjs");
|
|
29
|
+
const external$s = require("./external-BWNeNJEb.cjs");
|
|
30
30
|
const Video = require("./Video-BGNx94bQ.cjs");
|
|
31
31
|
const zod = require("zod");
|
|
32
32
|
const Circle$1 = ({ variant, ...props }) => {
|
|
@@ -933,9 +933,9 @@ const LinePlot$1 = Toggle$1.wrap$1(
|
|
|
933
933
|
aetherKey,
|
|
934
934
|
style,
|
|
935
935
|
resizeDebounce: debounce = 0,
|
|
936
|
-
clearOverScan,
|
|
936
|
+
clearOverScan = css.q.ZERO,
|
|
937
937
|
children,
|
|
938
|
-
hold,
|
|
938
|
+
hold = false,
|
|
939
939
|
onHold,
|
|
940
940
|
...props
|
|
941
941
|
}) => {
|
|
@@ -6874,22 +6874,17 @@ const useFieldArray = ({
|
|
|
6874
6874
|
);
|
|
6875
6875
|
const remove = React.useCallback(
|
|
6876
6876
|
(index) => {
|
|
6877
|
-
const
|
|
6878
|
-
const indices = aggregator.A(index)
|
|
6879
|
-
|
|
6880
|
-
set({ path, value: copy });
|
|
6877
|
+
const val = get({ path, optional: false }).value;
|
|
6878
|
+
const indices = new Set(aggregator.A(index));
|
|
6879
|
+
set({ path, value: val.filter((_, i) => !indices.has(i)) });
|
|
6881
6880
|
},
|
|
6882
6881
|
[path, state, get]
|
|
6883
6882
|
);
|
|
6884
6883
|
const keepOnly = React.useCallback(
|
|
6885
|
-
(
|
|
6886
|
-
const
|
|
6887
|
-
const
|
|
6888
|
-
|
|
6889
|
-
if (!indicesArray.has(i))
|
|
6890
|
-
copy.splice(i, 1);
|
|
6891
|
-
});
|
|
6892
|
-
set({ path, value: copy });
|
|
6884
|
+
(index) => {
|
|
6885
|
+
const val = get({ path, optional: false }).value;
|
|
6886
|
+
const indices = new Set(aggregator.A(index));
|
|
6887
|
+
set({ path, value: val.filter((_, i) => indices.has(i)) });
|
|
6893
6888
|
},
|
|
6894
6889
|
[path, state, get]
|
|
6895
6890
|
);
|