import React from 'react';
import Types from '../../lib/Types';
import Module from '../../lib/Module';
import { Accordion as AccordionCtor } from 'native-base';
import { Actionsheet as ActionsheetCtor } from 'native-base';
import { Badge as BadgeCtor } from 'native-base';
import { Body as BodyCtor } from 'native-base';
import { Button as ButtonCtor } from 'native-base';
import { Card as CardCtor } from 'native-base';
import { CardItem as CardItemCtor } from 'native-base';
import { CheckBox as CheckboxCtor } from 'native-base';
import { Container as ContainerCtor } from 'native-base';
import { Content as ContentCtor } from 'native-base';
import { DatePicker as DatePickerCtor } from 'native-base';
import { DeckSwiper as DeckSwiperCtor } from 'native-base';
import { Fab as FabCtor } from 'native-base';
import { Footer as FooterCtor } from 'native-base';
import { FooterTab as FooterTabCtor } from 'native-base';
import { Form as FormCtor } from 'native-base';
import { Gravatar as GravatarCtor } from 'native-base';
import { H1 as H1Ctor } from 'native-base';
import { H2 as H2Ctor } from 'native-base';
import { H3 as H3Ctor } from 'native-base';
import { Header as HeaderCtor } from 'native-base';
import { IconNB as IconNBCtor } from 'native-base';
import { Input as InputCtor } from 'native-base';
import { InputGroup as InputGroupCtor } from 'native-base';
import { Item as ItemCtor } from 'native-base';
import { Label as LabelCtor } from 'native-base';
import { Left as LeftCtor } from 'native-base';
import { List as ListCtor } from 'native-base';
import { ListItem as ListItemCtor } from 'native-base';
import { PickerItem as PickerItemCtor } from 'native-base';
import { Radio as RadioCtor } from 'native-base';
import { Right as RightCtor } from 'native-base';
import { Root as RootCtor } from 'native-base';
import { Segment as SegmentCtor } from 'native-base';
import { Separator as SeparatorCtor } from 'native-base';
import { Spinner as SpinnerCtor } from 'native-base';
import { Subtitle as SubtitleCtor } from 'native-base';
import { SwipeRow as SwipeRowCtor } from 'native-base';
import { Switch as SwitchCtor } from 'native-base';
import { Tab as TabCtor } from 'native-base';
import { TabContainer as TabContainerCtor } from 'native-base';
import { TabHeading as TabHeadingCtor } from 'native-base';
import { Text as TextCtor } from 'native-base';
import { Textarea as TextareaCtor } from 'native-base';
import { Thumbnail as ThumbnailCtor } from 'native-base';
import { Title as TitleCtor } from 'native-base';
import { Toast as ToastCtor } from 'native-base';
import { ToastContainer as ToastContainerCtor } from 'native-base';
import { View as ViewCtor } from 'native-base';
export class Accordion extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Actionsheet extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Badge extends Module {
constructor(props) {
super(props);
}
display() {
let {
text,
icon,
style,
color,
...restProps
} = this.props;
return
{icon ? : null}
{text ? {text} : null}
}
}
export class Body extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Button extends Module {
constructor(props) {
super(props);
}
display() {
let {
text,
icon,
onPress,
...rest
} = this.props;
let run = () => {
this.createAction(onPress)
};
return
{icon ? : null}
{text ? {text} : null}
}
}
export class Card extends Module {
constructor(props) {
super(props);
this.CoreSystem = props.CoreSystem;
}
display() {
let {
header,
body,
footer,
bodyModules,
...rest
} = this.props;
let item = this.renderModule('Button','NativeBase');
console.log("ITEM : ", item);
return
{header ?
{header}
: null}
{body}
{this.moduleArray(bodyModules)}
{footer ?
{footer}
: null}
;
}
}
export class CardItem extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Checkbox extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Container extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Content extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class DatePicker extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class DeckSwiper extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Fab extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Footer extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class FooterTab extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Form extends Module {
constructor(props) {
super(props);
this.state = {};
}
submit() {
this.createAction(this.props.onSubmit);
}
change(item, value) {
this.setState({
[item]: value
});
}
display() {
let {
inputs,
button,
onSubmit,
...rest
} = this.props;
return [
{inputs ? inputs.map((item, index) => {
return
this.change(item && item.toLowerCase(), value)}/>
}) : null}
,
button ? this.submit()}>
{button}
: null
]
}
}
export class Gravatar extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class H1 extends Module {
constructor(props) {
super(props);
}
display() {
let {
content,
...rest
} = this.props;
return
{content}
}
}
export class H2 extends Module {
constructor(props) {
super(props);
}
display() {
let {
content,
...rest
} = this.props;
return
{content}
}
}
export class H3 extends Module {
constructor(props) {
super(props);
}
display() {
let {
content,
...rest
} = this.props;
return
{content}
}
}
export class Header extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class IconNB extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Input extends Module {
constructor(props) {
super(props);
}
display() {
let {
icon,
placeholder,
...rest
} = this.props;
return
{icon ? : null}
;
}
}
export class InputGroup extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Item extends Module {
constructor(props) {
super(props);
}
display() {
let {
placeholder,
mod,
...rest
} = this.props;
console.log("RENDERMOD:", mod);
return
{this.module(mod)}
;
}
}
export class Label extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Left extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class List extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class ListItem extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class PickerItem extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Radio extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Right extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Root extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Segment extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Separator extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Spinner extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Subtitle extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class SwipeRow extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Switch extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Tab extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class TabContainer extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class TabHeading extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Text extends Module {
constructor(props) {
super(props);
}
display() {
let {
content,
...rest
} = this.props
return
{content}
}
}
export class Textarea extends Module {
constructor(props) {
super(props);
}
display() {
let {
...rest
} = this.props;
return
}
}
export class Thumbnail extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Title extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class Toast extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class ToastContainer extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
export class View extends Module {
constructor(props) {
super(props);
}
display() {
return
}
}
Text.Inputs = {
uppercase: new Types.Bool().default(false),
content: new Types.Text().default("Hello world!")
}
Accordion.Inputs = {
}
Actionsheet.Inputs = {
}
Body.Inputs = {
}
Button.Inputs = {
text: new Types.Text().default("Press me"),
onPress: new Types.Action(),
block: new Types.Bool(),
primary: new Types.Bool(),
transparent: new Types.Bool(),
success: new Types.Bool(),
danger: new Types.Bool(),
warning: new Types.Bool(),
info: new Types.Bool(),
bordered: new Types.Bool(),
disabled: new Types.Bool(),
rounded: new Types.Bool(),
large: new Types.Bool(),
small: new Types.Bool(),
active: new Types.Bool()
}
Badge.Inputs = {
icon: new Types.Text(),
text: new Types.Text().require().default("1"),
color: new Types.Text().color().require().default("rgba(255,255,255,1)"),
primary: new Types.Bool(),
success: new Types.Bool(),
danger: new Types.Bool(),
warning: new Types.Bool(),
info: new Types.Bool()
}
Card.Inputs = {
header: new Types.Text().default("Header"),
body: new Types.Text().default("Lorem ipsum body bla la trapala"),
footer: new Types.Text().default("Add footer here"),
bodyModules: new Types.Array(new Types.Module()),
texts: new Types.Array(new Types.Text())
}
CardItem.Inputs = {
header: new Types.Bool(),
cardBody: new Types.Bool(),
footer: new Types.Bool(),
button: new Types.Bool()
}
Checkbox.Inputs = {
checked: new Types.Bool()
}
Container.Inputs = {
}
Content.Inputs = {
disableKBDismissScroll: new Types.Bool(),
keyboardShouldPersistTaps: new Types.Text(),
padder: new Types.Bool()
}
DatePicker.Inputs = {
}
DeckSwiper.Inputs = {
}
Fab.Inputs = {
}
Footer.Inputs = {
}
FooterTab.Inputs = {
}
Form.Inputs = {
inputs: new Types.Array(new Types.Text()),
button: new Types.Text().default('Submit'),
onSubmit: new Types.Action()
}
Gravatar.Inputs = {
email: new Types.Text().require(),
size: new Types.Real(),
circular: new Types.Bool(),
square: new Types.Bool()
}
H1.Inputs = {
...Text.Inputs
}
H2.Inputs = {
...Text.Inputs
}
H3.Inputs = {
...Text.Inputs
}
Header.Inputs = {
searchBar: new Types.Bool(),
rounded: new Types.Bool()
}
IconNB.Inputs = {
}
Item.Inputs = {
mod: new Types.Module(),
inlineLabel: new Types.Bool(),
floatingLabel: new Types.Bool(),
stackedLabel: new Types.Bool(),
fixedLabel: new Types.Bool(),
success: new Types.Bool(),
error: new Types.Bool()
}
Input.Inputs = {
icon: new Types.Text(),
placeholder: new Types.Text(),
...Item.Inputs
}
InputGroup.Inputs = {
regular: new Types.Bool(),
underline: new Types.Bool(),
rounded: new Types.Bool(),
success: new Types.Bool(),
error: new Types.Bool(),
disabled: new Types.Bool()
}
Label.Inputs = {
floatBack: new Types.Real()
}
Left.Inputs = {
}
List.Inputs = {
}
ListItem.Inputs = {
itemDivider: new Types.Bool(),
button: new Types.Bool()
}
PickerItem.Inputs = {
}
Radio.Inputs = {
selected: new Types.Bool(),
standardStyle: new Types.Bool()
}
Right.Inputs = {
}
Root.Inputs = {
}
Segment.Inputs = {
}
Separator.Inputs = {
}
Spinner.Inputs = {
color: new Types.Text(),
inverse: new Types.Bool()
}
Subtitle.Inputs = {
}
SwipeRow.Inputs = {
}
Switch.Inputs = {
}
Tab.Inputs = {
}
TabContainer.Inputs = {
}
TabHeading.Inputs = {
}
Textarea.Inputs = {
placeholder: new Types.Text(),
rowSpan: new Types.Real(),
bordered: new Types.Bool(),
underline: new Types.Bool()
}
Thumbnail.Inputs = {
square: new Types.Bool(),
circular: new Types.Bool(),
size: new Types.Real()
}
Title.Inputs = {
}
Toast.Inputs = {
}
ToastContainer.Inputs = {
}
View.Inputs = {
}
export default {
// Accordion,
// Actionsheet,
Badge,
// Body,
Button,
Card,
// CardItem,
Checkbox,
// Container,
// Content,
// DatePicker,
// DeckSwiper,
// Fab,
// Footer,
// FooterTab,
Form,
// Gravatar,
H1,
H2,
H3,
// Header,
IconNB,
Input,
// InputGroup,
// Item,
// Label,
// Left,
// List,
// ListItem,
// PickerItem,
Radio,
// Right,
// Root,
// Segment,
// Separator,
// Spinner,
// Subtitle,
// SwipeRow,
// Switch,
// Tab,
// TabContainer,
// TabHeading,
// Text,
// Textarea,
// Thumbnail,
// Title,
// Toast,
// ToastContainer,
// View
}