UNPKG

@atlaskit/checkbox

Version:

A checkbox is an input control that allows a user to select one or more options from a number of choices.

86 lines (84 loc) 2.96 kB
/* checkbox-icon.tsx generated by @compiled/babel-plugin v0.36.1 */ import * as React from 'react'; import { ax, ix } from "@compiled/react/runtime"; import { memo, useMemo } from 'react'; import PrimitiveSVGIcon from '@atlaskit/icon/svg'; import { fg } from '@atlaskit/platform-feature-flags'; function getIcon(isIndeterminate, isChecked) { if (isIndeterminate) { // eslint-disable-next-line @atlaskit/platform/no-preconditioning, @atlaskit/platform/ensure-feature-flag-prefix if (fg('platform-visual-refresh-icons') && fg('platform-icon-control-migration')) { return /*#__PURE__*/React.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M7.75 12.75H16.25V11.25H7.75V12.75Z", fill: "inherit" }); } else { return /*#__PURE__*/React.createElement("rect", { fill: "inherit", x: "8", y: "11", width: "8", height: "2", rx: "1" }); } } if (isChecked) { // eslint-disable-next-line @atlaskit/platform/no-preconditioning, @atlaskit/platform/ensure-feature-flag-prefix if (fg('platform-visual-refresh-icons') && fg('platform-icon-control-migration')) { return /*#__PURE__*/React.createElement("path", { fillRule: "evenodd", clipRule: "evenodd", d: "M16.3262 9.48011L15.1738 8.51984L10.75 13.8284L8.82616 11.5198L7.67383 12.4801L10.1738 15.4801C10.3163 15.6511 10.5274 15.75 10.75 15.75C10.9726 15.75 11.1837 15.6511 11.3262 15.4801L16.3262 9.48011Z", fill: "inherit" }); } else { return /*#__PURE__*/React.createElement("path", { d: "M9.707 11.293a1 1 0 1 0-1.414 1.414l2 2a1 1 0 0 0 1.414 0l4-4a1 1 0 1 0-1.414-1.414L11 12.586l-1.293-1.293z", fill: "inherit" }); } } // No icon return null; } /** * __Checkbox icon__ * * A checkbox icon is the visual representation of checkbox state, * which is shown instead of the native input. * * @internal */ const CheckboxIcon = /*#__PURE__*/memo(({ isIndeterminate, isChecked }) => { const icon = useMemo(() => getIcon(isIndeterminate, isChecked), [isIndeterminate, isChecked]); return /*#__PURE__*/React.createElement(PrimitiveSVGIcon, { label: "", primaryColor: "var(--checkbox-background-color)", secondaryColor: "var(--checkbox-tick-color)" }, /*#__PURE__*/React.createElement("g", { fillRule: "evenodd" }, // eslint-disable-next-line @atlaskit/platform/no-preconditioning, @atlaskit/platform/ensure-feature-flag-prefix fg('platform-visual-refresh-icons') && fg('platform-icon-control-migration') ? /*#__PURE__*/React.createElement("rect", { fill: "currentColor", x: "5.5", y: "5.5", width: "13", height: "13", rx: "1.5" }) : /*#__PURE__*/React.createElement("rect", { fill: "currentColor", x: "6", y: "6", width: "12", height: "12", rx: "2" }), icon)); }); export default CheckboxIcon;