armstrong-react
Advanced tools
Comparing version 0.3.4 to 0.3.5
import * as React from "react"; | ||
import { LayoutProps, DisplayProps, CenterContent, CenterBoth, Responsiveness } from "./../../utilities/uiHelpers"; | ||
import { LayoutProps, DisplayProps, CenterContent, CenterBoth, Responsiveness, MarginClass, PaddingClass } from "./../../utilities/uiHelpers"; | ||
export interface IGrid extends React.Props<Grid>, LayoutProps, DisplayProps, React.HTMLProps<Grid> { | ||
debugMode?: boolean; | ||
responsive?: Responsiveness; | ||
className?: string; | ||
className?: string | MarginClass | PaddingClass; | ||
armstrongClassName?: MarginClass; | ||
table?: boolean; | ||
@@ -8,0 +9,0 @@ } |
@@ -26,9 +26,6 @@ "use strict"; | ||
var responsiveClasses = uiHelpers_1.LayoutHelpers.HandleResponsivenessClasses(this.props.responsive); | ||
var layoutClasses = uiHelpers_1.LayoutHelpers.HandleLayoutClasses(this.props.margin, this.props.padding); | ||
var displayClasses = uiHelpers_1.LayoutHelpers.HandleDisplayClasses(this.props.background, this.props.foreground); | ||
var displayStyles = uiHelpers_1.LayoutHelpers.HandleDisplayStyles(this.props.background, this.props.foreground); | ||
var originalClassName = this.props.className; | ||
var attrs = _.omit(this.props, "className"); | ||
var classes = classBuilder_1.classNames(originalClassName, "grid", "fill-container", responsiveClasses, classBuilder_1.cd("grid-debug", this.props.debugMode), classBuilder_1.cd("table-grid", this.props.table), displayClasses, layoutClasses); | ||
return (React.createElement("div", __assign({}, attrs, this.props, {className: classes, style: displayStyles}))); | ||
var classes = classBuilder_1.classNames(originalClassName, "grid", "fill-container", responsiveClasses, classBuilder_1.cd("grid-debug", this.props.debugMode), classBuilder_1.cd("table-grid", this.props.table)); | ||
return (React.createElement("div", __assign({}, attrs, this.props, {className: classes}))); | ||
}; | ||
@@ -35,0 +32,0 @@ Grid.defaultProps = { |
@@ -5,7 +5,5 @@ import * as React from "react"; | ||
bodyId?: string; | ||
navClass?: string; | ||
} | ||
export interface IBurgerMenuState { | ||
menuOpen: boolean; | ||
} | ||
export declare class BurgerMenu extends React.Component<IBurgerMenuProps, IBurgerMenuState> { | ||
export declare class BurgerMenu extends React.Component<IBurgerMenuProps, {}> { | ||
static Icomoon: { | ||
@@ -1623,6 +1621,5 @@ accessibility: string; | ||
private menuId; | ||
isOpen: boolean; | ||
constructor(); | ||
toggleMenu(): void; | ||
openMenu(): void; | ||
closeMenu(): void; | ||
componentWillUnmount(): void; | ||
@@ -1632,5 +1629,5 @@ componentWillReceiveProps(newProps: any): void; | ||
renderToPortal(element: any): void; | ||
unmountPortalNode(): boolean; | ||
unmountPortalNode(): any; | ||
renderNav(children: any[]): JSX.Element; | ||
render(): JSX.Element; | ||
} |
@@ -15,21 +15,13 @@ "use strict"; | ||
_super.call(this); | ||
this.state = { menuOpen: false }; | ||
this.menuId = "burger-menu" + Math.random(); | ||
} | ||
BurgerMenu.prototype.toggleMenu = function () { | ||
if (!this.state.menuOpen) { | ||
this.openMenu(); | ||
if (!this.isOpen) { | ||
this.appNode.classList.add("menu-open"); | ||
} | ||
else { | ||
this.closeMenu(); | ||
this.appNode.classList.remove("menu-open"); | ||
} | ||
this.isOpen = !this.isOpen; | ||
}; | ||
BurgerMenu.prototype.openMenu = function () { | ||
this.setState({ menuOpen: true }); | ||
this.appNode.classList.add("menu-open"); | ||
}; | ||
BurgerMenu.prototype.closeMenu = function () { | ||
this.setState({ menuOpen: false }); | ||
this.appNode.classList.remove("menu-open"); | ||
}; | ||
BurgerMenu.prototype.componentWillUnmount = function () { | ||
@@ -49,2 +41,6 @@ this.unmountPortalNode(); | ||
this.portalNode = node = document.createElement('nav'); | ||
this.portalNode.classList.add('burger-menu'); | ||
if (this.props.navClass) { | ||
this.portalNode.classList.add(this.props.navClass); | ||
} | ||
node.id = this.menuId; | ||
@@ -71,5 +67,3 @@ this.appNode.insertBefore(node, this.appNode.firstChild); | ||
var _this = this; | ||
return (React.createElement("div", {className: "burger-menu-button", onClick: function () { return _this.toggleMenu(); }}, | ||
React.createElement(icon_1.Icon, {icon: this.props.buttonIcon}) | ||
)); | ||
return (React.createElement("button", {className: "burger-menu-button", onClick: function () { return _this.toggleMenu(); }}, this.props.buttonIcon && React.createElement(icon_1.Icon, {icon: this.props.buttonIcon}))); | ||
}; | ||
@@ -76,0 +70,0 @@ BurgerMenu.Icomoon = icons_1.Icons.Icomoon; |
@@ -9,2 +9,4 @@ import * as React from "react"; | ||
export declare type CenterBoth = "both"; | ||
export declare type MarginClass = "m-none" | "m-xxsmall" | "m-xsmall" | "m-small" | "m-medium" | "m-large" | "m-xlarge"; | ||
export declare type PaddingClass = "p-none" | "p-xxsmall" | "p-xsmall" | "p-small" | "p-medium" | "p-large" | "p-xlarge"; | ||
export interface CenterContent { | ||
@@ -11,0 +13,0 @@ vertical?: CenterContentVertical; |
{ | ||
"name": "armstrong-react", | ||
"version": "0.3.4", | ||
"version": "0.3.5", | ||
"description": "Rocketmakers Armstrong library of React components", | ||
@@ -5,0 +5,0 @@ "main": "./dist/index.js", |
Sorry, the diff of this file is not supported yet
378445
49
10825