UNPKG

@lonli-lokli/react-mosaic-component

Version:
73 lines (72 loc) 2.11 kB
// libs/react-mosaic-component/src/lib/MosaicZeroState.tsx import classNames from "classnames"; import { noop } from "lodash-es"; import React from "react"; import { MosaicContext } from "./contextTypes.mjs"; import { OptionalBlueprint } from "./util/OptionalBlueprint.mjs"; var MosaicZeroState = class extends React.PureComponent { static contextType = MosaicContext; render() { return /* @__PURE__ */ React.createElement( "div", { className: classNames( "mosaic-zero-state", OptionalBlueprint.getClasses( this.context.blueprintNamespace, "NON_IDEAL_STATE" ) ) }, /* @__PURE__ */ React.createElement( "div", { className: OptionalBlueprint.getClasses( this.context.blueprintNamespace, "NON_IDEAL_STATE_VISUAL" ) }, /* @__PURE__ */ React.createElement( OptionalBlueprint.Icon, { className: "default-zero-state-icon", size: "large", icon: "APPLICATIONS" } ) ), /* @__PURE__ */ React.createElement( "h4", { className: OptionalBlueprint.getClasses( this.context.blueprintNamespace, "HEADING" ) }, "No Windows Present" ), /* @__PURE__ */ React.createElement("div", null, this.props.createNode && /* @__PURE__ */ React.createElement( "button", { className: classNames( OptionalBlueprint.getClasses( this.context.blueprintNamespace, "BUTTON" ), OptionalBlueprint.getIconClass( this.context.blueprintNamespace, "ADD" ) ), onClick: this.replace }, "Add New Window" )) ); } replace = () => Promise.resolve(this.props.createNode()).then((node) => this.context.mosaicActions.replaceWith([], node)).catch(noop); // Swallow rejections (i.e. on user cancel) }; export { MosaicZeroState };