UNPKG

@vimeo/iris

Version:
113 lines (106 loc) 6.88 kB
'use strict'; Object.defineProperty(exports, '__esModule', { value: true }); var tslib_es6 = require('../../tslib.es6-3ec409b7.js'); var React = require('react'); var polished = require('polished'); var _deprecated_FeatureTour_FeatureTourPanelContent = require('./FeatureTourPanelContent.js'); var _deprecated_FeatureTour_Dot = require('./Dot.js'); var components_PopOver_PopOver = require('../../components/PopOver/PopOver.js'); var color_colors = require('../../color/colors.js'); var utils_HOCs_withIris = require('../../utils/HOCs/withIris.js'); var utils_events_onClose = require('../../utils/events/onClose.js'); require('styled-components'); require('../../components/Button/Button.js'); require('../../components/Button/Button.style.js'); require('../../components/Button/Button.config.js'); require('../../components/Button/FeaturedIcon.js'); require('../../themes/index.js'); require('../../tokens/core.js'); require('../../tokens/color/index.js'); require('../../tokens/color/background/background.js'); require('../../tokens/util/readToken.js'); require('../../tokens/util/clamp.js'); require('../../tokens/color/format/format.js'); require('../../tokens/color/format/primary.js'); require('../../tokens/color/format/secondary.js'); require('../../tokens/color/format/tertiary.js'); require('../../tokens/color/rainbow/rainbow.js'); require('../../tokens/color/rainbow/conic/index.js'); require('../../tokens/color/rainbow/conic/sm.js'); require('../../tokens/color/rainbow/conic/xl.js'); require('../../tokens/color/rainbow/linear/index.js'); require('../../tokens/color/rainbow/linear/sm.js'); require('../../tokens/color/rainbow/linear/xl.js'); require('../../tokens/color/livestream/livestream.js'); require('../../tokens/color/status/status.js'); require('../../tokens/color/status/caution.js'); require('../../tokens/color/status/negative.js'); require('../../tokens/color/status/positive.js'); require('../../tokens/color/stroke/stroke.js'); require('../../tokens/color/surface/surface.js'); require('../../tokens/color/text/text.js'); require('../../tokens/util/round.js'); require('../../tokens/color/upsell/upsell.js'); require('../../tokens/color/upsell/sm.js'); require('../../tokens/color/upsell/xl.js'); require('../../tokens/color/upsell/new.js'); require('../../tokens/edge/edge.js'); require('../../tokens/space/space.js'); require('../../tokens/typography/index.js'); require('../../tokens/typography/size/size.js'); require('../../components/LoaderCircular/LoaderCircular.js'); require('../../components/LoaderCircular/LoaderCircular.style.js'); require('../../utils/hooks/useDeprecate.js'); require('../../utils/general/mergeReactRefs.js'); require('../../utils/css.js'); require('../../icons/ui/DismissX.js'); require('../../typography/Header/Header.js'); require('../../typography/Header/Header.style.js'); require('../../typography/typography.js'); require('../../typography/Text/Text.js'); require('../../typography/Text/Text.style.js'); require('../../typography/Text/EditableText.js'); require('../../utils/hooks/useLayoutStyles.js'); require('../../utils/DOM/geometry.js'); require('../../typography/Paragraph/Paragraph.js'); require('../../typography/Paragraph/Paragraph.style.js'); require('../../components/PopOver/PopOver.style.js'); require('../../components/PopOver/PopOver.error.js'); require('../../utils/hooks/usePortal_DEPRECATED/usePortal_DEPRECATED.js'); require('react-dom'); require('../../utils/hooks/usePortal_DEPRECATED/usePortal_DEPRECATED.style.js'); require('../../utils/hooks/usePortal_DEPRECATED/useMountAnimations.js'); require('../../utils/hooks/useIsomorphicEffect.js'); require('../../utils/DOM/getComputedStyles.js'); require('../../utils/DOM/animate.js'); require('../../utils/events/onEvent.js'); require('../../utils/hooks/usePortal_DEPRECATED/coordinates.js'); require('../../utils/hooks/usePortal_DEPRECATED/Anchor.js'); require('../../utils/hooks/useOutsideClick.js'); require('../../utils/DOM/SSR.js'); require('../../utils/DOM/createPortalOutlet.js'); require('../../utils/DOM/createElement.js'); function _interopDefaultLegacy (e) { return e && typeof e === 'object' && 'default' in e ? e : { 'default': e }; } var React__default = /*#__PURE__*/_interopDefaultLegacy(React); var BLUE = polished.adjustHue(30, polished.setSaturation(0.9, color_colors.blue(600))); var FeatureTourPanel = utils_HOCs_withIris.withIris(FeatureTourPanelComponent); function FeatureTourPanelComponent(_a) { var actionArea = _a.actionArea, _b = _a.attach, attach = _b === void 0 ? 'right' : _b, _c = _a.beaconDelayIndex, beaconDelayIndex = _c === void 0 ? 0 : _c, beaconA11yText = _a.beaconA11yText, children = _a.children, _d = _a.color, color = _d === void 0 ? BLUE : _d, contextualInfo = _a.contextualInfo, dismissButtonA11yLabel = _a.dismissButtonA11yLabel, dismissButtonProps = _a.dismissButtonProps, _e = _a.dotZIndex, dotZIndex = _e === void 0 ? 1 : _e; _a.forwardRef; var headerText = _a.headerText; _a.isOpen; var onOpen = _a.onOpen, onClose = _a.onClose; _a.shouldHideOnClose; _a.shouldRefocusTriggerOnClose; _a.wrapperClass; var _h = _a.size, size = _h === void 0 ? 'md' : _h, style = _a.style, props = tslib_es6.__rest(_a, ["actionArea", "attach", "beaconDelayIndex", "beaconA11yText", "children", "color", "contextualInfo", "dismissButtonA11yLabel", "dismissButtonProps", "dotZIndex", "forwardRef", "headerText", "isOpen", "onOpen", "onClose", "shouldHideOnClose", "shouldRefocusTriggerOnClose", "wrapperClass", "size", "style"]); var _j = tslib_es6.__read(React.useState('active'), 2), mode = _j[0], setMode = _j[1]; var _k = utils_events_onClose.useClose(onClose), reject = _k.reject, complete = _k.complete; function doOpen(e) { setMode('open'); onOpen && onOpen(e); } var doClose = function (event) { event.preventDefault(); setMode('inactive'); if (reject) reject(event); if (complete) complete(event); }; return (React__default["default"].createElement(components_PopOver_PopOver.PopOver, { onClose: doClose, onOpen: doOpen, attach: attach, style: { background: 'transparent' }, content: React__default["default"].createElement(_deprecated_FeatureTour_FeatureTourPanelContent.FeatureTourPanelContent, tslib_es6.__assign({ actionArea: actionArea, children: children, color: color, contextualInfo: contextualInfo, dismissButtonA11yLabel: dismissButtonA11yLabel, dismissButtonProps: dismissButtonProps, headerText: headerText, onClose: doClose, size: size }, props)) }, React__default["default"].createElement(_deprecated_FeatureTour_Dot.Dot, { style: tslib_es6.__assign({ zIndex: dotZIndex }, style), beaconA11yText: beaconA11yText, beaconDelayIndex: beaconDelayIndex, mode: mode, color: color, clear: function () { return setMode('inactive'); } }))); } exports.FeatureTourPanel = FeatureTourPanel;