UNPKG

@cimpress/react-components

Version:
94 lines 6.11 kB
"use strict"; var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) { if (k2 === undefined) k2 = k; var desc = Object.getOwnPropertyDescriptor(m, k); if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) { desc = { enumerable: true, get: function() { return m[k]; } }; } Object.defineProperty(o, k2, desc); }) : (function(o, m, k, k2) { if (k2 === undefined) k2 = k; o[k2] = m[k]; })); var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) { Object.defineProperty(o, "default", { enumerable: true, value: v }); }) : function(o, v) { o["default"] = v; }); var __importStar = (this && this.__importStar) || function (mod) { if (mod && mod.__esModule) return mod; var result = {}; if (mod != null) for (var k in mod) if (k !== "default" && Object.prototype.hasOwnProperty.call(mod, k)) __createBinding(result, mod, k); __setModuleDefault(result, mod); return result; }; Object.defineProperty(exports, "__esModule", { value: true }); const react_1 = __importStar(require("react")); const react_components_1 = require("@cimpress/react-components"); const TooltipDemo = () => { const [show, setShow] = (0, react_1.useState)(false); const [showPopover, setShowPopover] = (0, react_1.useState)(false); const [showPopoverStyle, setShowPopoverStyle] = (0, react_1.useState)(false); const [showPopoverIgnoredClass, setShowPopoverIgnoredClass] = (0, react_1.useState)(false); const onClickShow = () => { setShow(!show); }; const onClickOutside = () => { setShowPopover(false); }; const onPopoverClick = () => { setShowPopover(!showPopover); }; const onPopoverClickStyle = () => { setShowPopoverStyle(!showPopoverStyle); }; const onIgnoreClickOutside = () => { setShowPopoverIgnoredClass(false); }; const onIgnoreClick = () => { setShowPopoverIgnoredClass(!showPopoverIgnoredClass); }; const directions = ['top', 'bottom', 'left', 'right']; return (react_1.default.createElement(react_1.default.Fragment, null, react_1.default.createElement("div", { className: "col-md-12", style: { marginBottom: '15px' } }, directions.map(d => (react_1.default.createElement("span", { key: d }, react_1.default.createElement(react_components_1.Tooltip, { direction: d, contents: `Tooltip on ${d}` }, react_1.default.createElement("button", { className: "btn btn-primary" }, d)), ' '))), react_1.default.createElement(react_components_1.Tooltip, { direction: "top", contents: "custom enter", show: show }, react_1.default.createElement("button", { onClick: onClickShow, className: "btn btn-primary" }, "click")), ' ', react_1.default.createElement(react_components_1.Tooltip, { direction: "top", variant: "popover", contents: react_1.default.createElement("div", null, react_1.default.createElement("p", null, "This is a ", react_1.default.createElement("b", null, "popover"), " instead! Fancy!"), react_1.default.createElement("p", null, "It will close when you click outside.")), onClickOutside: onClickOutside, show: showPopover }, react_1.default.createElement("button", { onClick: onPopoverClick, className: "btn btn-primary" }, "Popover!")), ' ', react_1.default.createElement(react_components_1.Tooltip, { direction: "top", contents: react_1.default.createElement("div", null, react_1.default.createElement("p", null, "This tooltip has been restyled to be wide with large text!!")), tooltipInnerStyle: { maxWidth: '700px', fontSize: '20px' } }, react_1.default.createElement("button", { className: "btn btn-primary" }, "Style")), ' ', react_1.default.createElement(react_components_1.Tooltip, { contents: "This tooltip has a delay", delay: 1000 }, react_1.default.createElement("button", { className: "btn btn-primary" }, "Delayed"))), react_1.default.createElement("div", { className: "col-md-12", style: { marginBottom: '15px' } }, react_1.default.createElement(react_components_1.Tooltip, { outsideClickIgnoreClass: "ignore-this-class", direction: "top", variant: "popover", contents: react_1.default.createElement("div", null, react_1.default.createElement("p", null, "This is a ", react_1.default.createElement("b", null, "popover"), " instead! Fancy!"), react_1.default.createElement("p", null, "It will close when you click outside except elements with class 'ignore-this-class'.")), onClickOutside: onIgnoreClickOutside, show: showPopoverIgnoredClass }, react_1.default.createElement("button", { onClick: onIgnoreClick, className: "btn btn-primary" }, "Popover! with ignored class")), ' ', react_1.default.createElement("span", { className: "ignore-this-class", style: { border: '1px solid black', padding: '9px' } }, "Ignore click outside")), react_1.default.createElement("div", { className: "col-md-12", style: { marginBottom: '15px' } }, react_1.default.createElement(react_components_1.Tooltip, { style: { color: 'red' }, direction: "top", variant: "popover", contents: react_1.default.createElement("div", null, react_1.default.createElement("p", null, "This is a ", react_1.default.createElement("b", null, "popover"), " with custom styles on the parent!")), show: showPopoverStyle }, react_1.default.createElement("button", { onClick: onPopoverClickStyle, className: "btn btn-primary" }, "Popover!"))))); }; exports.default = TooltipDemo; //# sourceMappingURL=tooltip.js.map