react-crud-mobile 1.0.18 → 1.0.20

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (33) hide show
  1. package/dist/elements/UIComplete.d.ts +2 -2
  2. package/dist/elements/card/ElCard.d.ts +2 -2
  3. package/dist/elements/core/AutoComplete.d.ts +2 -2
  4. package/dist/elements/core/Button.d.ts +2 -2
  5. package/dist/elements/core/Icon.d.ts +2 -2
  6. package/dist/elements/core/Input.d.ts +2 -2
  7. package/dist/elements/core/Link.d.ts +2 -2
  8. package/dist/elements/core/Option.d.ts +2 -2
  9. package/dist/elements/core/Radio.d.ts +2 -2
  10. package/dist/elements/core/Select.d.ts +2 -2
  11. package/dist/elements/core/Switch.d.ts +2 -2
  12. package/dist/elements/grid/ElGrid.d.ts +2 -2
  13. package/dist/elements/grid/ElGridTop.d.ts +2 -2
  14. package/dist/react-crud-mobile.cjs.development.js +46 -46
  15. package/dist/react-crud-mobile.cjs.development.js.map +1 -1
  16. package/dist/react-crud-mobile.cjs.production.min.js +1 -1
  17. package/dist/react-crud-mobile.cjs.production.min.js.map +1 -1
  18. package/dist/react-crud-mobile.esm.js +46 -46
  19. package/dist/react-crud-mobile.esm.js.map +1 -1
  20. package/package.json +9 -8
  21. package/src/elements/UIComplete.tsx +0 -1
  22. package/src/elements/card/ElCard.tsx +0 -1
  23. package/src/elements/core/AutoComplete.tsx +0 -1
  24. package/src/elements/core/Button.tsx +0 -1
  25. package/src/elements/core/Icon.tsx +0 -1
  26. package/src/elements/core/Input.tsx +0 -1
  27. package/src/elements/core/Link.tsx +0 -1
  28. package/src/elements/core/Option.tsx +0 -1
  29. package/src/elements/core/Radio.tsx +0 -1
  30. package/src/elements/core/Select.tsx +0 -1
  31. package/src/elements/core/Switch.tsx +0 -1
  32. package/src/elements/grid/ElGrid.tsx +0 -2
  33. package/src/elements/grid/ElGridTop.tsx +0 -1
@@ -1 +1 @@
1
- {"version":3,"file":"react-crud-mobile.cjs.production.min.js","sources":["../src/elements/UIChildren.tsx","../src/elements/grid/ElGridColumn.tsx","../src/elements/grid/ElGridCheck.tsx","../src/elements/grid/ElGridRow.tsx","../src/elements/grid/ElGridPaginator.tsx","../src/elements/grid/ElGridTop.tsx","../src/elements/grid/ElGridFilter.tsx","../src/elements/grid/ElGridBotom.tsx","../src/elements/core/Icon.tsx","../src/elements/grid/ElLabel.tsx","../src/elements/grid/ElGrid.tsx","../src/elements/grid/ElInclude.tsx","../src/elements/card/ElCard.tsx","../src/elements/tabs/ElTabs.tsx","../src/elements/charts/ElChart.tsx","../src/elements/core/AutoComplete.tsx","../src/elements/UIComplete.tsx","../src/elements/grid/ElRepeatRow.tsx","../src/elements/grid/ElRepeat.tsx","../src/elements/core/Link.tsx","../src/elements/core/Button.tsx","../src/elements/core/Select.tsx","../src/elements/core/Switch.tsx","../src/elements/core/Option.tsx","../src/elements/core/Radio.tsx","../src/elements/core/Input.tsx","../src/elements/UIElement.tsx","../src/elements/UI.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport UIElement from \"./UIElement\";\nimport { Crud, Scope, ScopeUtils, Utils } from \"react-crud-utils\";\n\ninterface UIChildrenType {\n scope: Scope;\n crud?: Crud;\n validateScope?: String;\n children?: any;\n elements?: any;\n transient?: boolean;\n part?: string;\n childProps?: any;\n}\n\nexport default function UIChildren(props: UIChildrenType) {\n let [scope] = useState(Utils.nvl(props.scope, ScopeUtils.create(props)));\n let crud = Utils.nvl(props.crud, scope.crud);\n let validateScope = Utils.nvl(props.validateScope, \"global\");\n let name = Utils.nvl(props.part, \"child\");\n\n if (scope.isInput()) {\n return <></>;\n }\n\n let Paint = ({ child }: any) => {\n if (!child) {\n return <></>;\n }\n if (typeof child === \"string\") {\n return <>{child}</>;\n }\n\n let Custom = child.type;\n let pps = { ...child.props };\n\n delete pps.children;\n\n if (typeof Custom === \"string\") {\n if (Utils.isEmpty(child.props.children)) {\n return <Custom {...pps} />;\n }\n return (\n <Custom {...pps}>\n <UIChildren\n transient\n validateScope={validateScope}\n {...child.props}\n scope={scope}\n crud={crud}\n ></UIChildren>\n </Custom>\n );\n } else if (typeof Custom === \"function\") {\n return (\n <Custom\n validateScope={validateScope}\n {...child.props}\n parent={scope}\n crud={crud}\n ></Custom>\n );\n }\n\n if (!Utils.isEmpty(child.props.children)) {\n return (\n <UIChildren\n validateScope={validateScope}\n {...child.props}\n scope={scope}\n crud={crud}\n transient\n ></UIChildren>\n );\n }\n return <></>;\n };\n\n const Draw = () => {\n if (props.elements) {\n return (\n <>\n {Object.entries(props.elements).map((t: any, k) => {\n return <UIElement crud={crud} {...t[1]} />;\n })}\n </>\n );\n }\n return (\n <>\n {React.Children.map(props.children, (child) => {\n return <Paint child={child}></Paint>;\n })}\n </>\n );\n };\n\n if (props.transient) {\n return <Draw />;\n }\n\n if (Utils.isEmpty(props.children) && Utils.isEmpty(props.elements)) {\n return <></>;\n }\n\n return (\n <>\n <div\n className={scope.getStyleClass(name)}\n style={scope.getStyle(name)}\n {...props.childProps}\n >\n <Draw />\n </div>\n </>\n );\n}\n","import React, { useState } from \"react\";\nimport UIChildren from \"../UIChildren\";\nimport { Scope, Utils } from \"react-crud-utils\";\n\ninterface ElGridColumnType {\n scope: Scope;\n styleClass?: string;\n children?: any;\n colspan?: number;\n column?: any;\n}\n\nexport default function ElGridColumn(props: ElGridColumnType) {\n let scope = props.scope;\n let col = Utils.nvl(props.column?.props, {});\n let [colScope] = useState(new Scope(col, scope, scope.crud));\n\n let getStyleClass = () => {\n let def = Utils.nvl(props.styleClass, \"\");\n\n return \"ui-grid-col \" + def + \" \" + colScope.getStyleClass(\"column\");\n };\n return (\n <td\n className={getStyleClass()}\n style={colScope.getStyle(\"column\")}\n colSpan={props.colspan}\n >\n <UIChildren scope={scope}>{props.children}</UIChildren>\n </td>\n );\n}\n","import UI from '../UI';\nimport Ionicons from '@expo/vector-icons/Ionicons';\nimport { useState } from 'react';\nimport { GridRowType, Utils } from 'react-crud-utils';\n\nexport default function ElGridCheck({ scope, value, rowIndex }: GridRowType) {\n let original = scope.original;\n let [index, setIndex] = useState(0);\n let key = scope.key('check', rowIndex, 's', index);\n\n let check = () => {\n let cs = scope.crudSearch;\n\n if (cs) {\n if (!cs.selecteds) {\n cs.selecteds = {};\n }\n\n let itemValue = Utils.nvl(original.itemValue, 'id');\n let key = value[itemValue];\n\n if (typeof key !== 'undefined') {\n if (typeof cs.selecteds[key] === 'undefined') {\n cs.selecteds[key] = value;\n } else {\n delete cs.selecteds[key];\n }\n }\n }\n setIndex(++index);\n };\n\n let getCheckIcon = () => {\n if (isChecked()) {\n return <Ionicons />;\n }\n return <Ionicons />;\n };\n\n let isChecked = () => {\n let cs = scope.crudSearch;\n\n if (cs) {\n if (!cs.selecteds) {\n cs.selecteds = {};\n }\n\n let itemValue = Utils.nvl(original.itemValue, 'id');\n let key = value[itemValue];\n\n if (typeof key !== 'undefined') {\n if (typeof cs.selecteds[key] !== 'undefined') {\n return true;\n }\n }\n }\n return false;\n };\n\n return (\n <UI.Button\n key={key}\n icon={getCheckIcon()}\n click={{ action: check }}\n ></UI.Button>\n );\n}\n","import React, { useState } from 'react';\nimport ElGridColumn from './ElGridColumn';\nimport ElGridCheck from './ElGridCheck';\nimport Ionicons from '@expo/vector-icons/Ionicons';\nimport UI from '../UI';\nimport UIChildren from '../UIChildren';\nimport {\n ComponentUtils,\n CrudUtils,\n ListType,\n RowType,\n Scope,\n Utils,\n} from 'react-crud-utils';\n\nexport default function ElGridRow(props: RowType) {\n let expansion = props.expansion;\n let value = props.value;\n let scope = props.scope;\n let index = props.index;\n let original: ListType = scope.original;\n\n let row = CrudUtils.create('row', {\n index,\n row: true,\n itemVar: scope.original.itemVar,\n parent: scope.crudSearch,\n data: value,\n });\n\n let [expanded, setExpanded] = useState(false);\n let [rowScope] = useState(new Scope(scope.original, scope, row));\n\n let getRowStyleClass = () => {\n let s = 'ui-grid-row';\n\n s = s + ' ui-grid-row-';\n\n if (index % 2 == 0) {\n s = s + 'even';\n } else {\n s = s + 'odd';\n }\n return s;\n };\n\n let cols = ComponentUtils.getChild(props, 'Column');\n let colspan = cols.length;\n\n let ExpansionStatus = () => {\n return (\n <>\n {!expanded && <Ionicons />}\n {expanded && <Ionicons />}\n </>\n );\n };\n\n let onExpansion = () => {\n setExpanded(!expanded);\n };\n\n let hasExpansion = !Utils.isEmpty(expansion);\n let multiple = original.multiple;\n\n if (hasExpansion) colspan++;\n if (multiple) colspan++;\n\n return (\n <>\n <tr className={getRowStyleClass()} style={rowScope.getStyle('row')}>\n {hasExpansion && (\n <ElGridColumn\n key={'r' + index + 'e'}\n scope={rowScope}\n styleClass=\"ui-click ui-icon-only ui-expansion\"\n >\n <UI.Button\n icon={<ExpansionStatus />}\n click={onExpansion}\n ></UI.Button>\n </ElGridColumn>\n )}\n {multiple && (\n <ElGridColumn\n key={'r' + index + 'c'}\n scope={rowScope}\n styleClass=\"ui-click ui-icon-only ui-multiple\"\n >\n <ElGridCheck\n key={'check-' + index}\n scope={scope}\n value={value}\n rowIndex={index}\n />\n </ElGridColumn>\n )}\n {cols.map((col: any, i: number) => (\n <ElGridColumn\n column={col}\n key={'r' + index + 'c' + i}\n scope={rowScope}\n >\n {col}\n </ElGridColumn>\n ))}\n </tr>\n {expanded && (\n <tr className={getRowStyleClass()} style={rowScope.getStyle('row')}>\n <ElGridColumn\n key={'r' + index + '-expanded'}\n scope={rowScope}\n colspan={colspan}\n >\n <UIChildren {...props} crud={row}>\n {expansion}\n </UIChildren>\n </ElGridColumn>\n </tr>\n )}\n </>\n );\n}\n","import React, { useState } from 'react';\nimport UI from '../UI';\nimport { ChildType, Utils } from 'react-crud-utils';\nimport Ionicons from '@expo/vector-icons/Ionicons';\n\ninterface ElGridPaginatorType extends ChildType {\n next?: boolean;\n previous?: boolean;\n first?: boolean;\n size?: boolean;\n last?: boolean;\n position: string;\n}\n\nexport default function ElGridPaginator({\n scope,\n next,\n previous,\n first,\n size,\n last,\n position,\n}: ElGridPaginatorType) {\n let [sizes] = useState([10, 20, 30, 50, 100, 200, 500]);\n let defaults = {\n crud: scope.crudSearch,\n owner: scope,\n variant: scope.attr('variant', 'text'),\n };\n\n let paginatorPosition = Utils.nvl(scope.original.paginatorPosition, 'bottom');\n\n if (paginatorPosition !== position) {\n return <></>;\n }\n\n return (\n <>\n <UI.Button\n field=\"first\"\n space={0}\n rendered={first !== false}\n {...defaults}\n click=\"first\"\n icon={<Ionicons />}\n ></UI.Button>\n <UI.Button\n field=\"previous\"\n space={0}\n rendered={previous !== false}\n click=\"previous\"\n {...defaults}\n icon={<Ionicons />}\n ></UI.Button>\n <UI.Select\n field=\"size\"\n space={0}\n rendered={size !== false}\n default={10}\n {...defaults}\n data={sizes}\n change=\"search\"\n ></UI.Select>\n <UI.Button\n field=\"next\"\n space={0}\n rendered={next !== false}\n {...defaults}\n click=\"next\"\n icon={<Ionicons />}\n ></UI.Button>\n <UI.Button\n field=\"last\"\n space={0}\n rendered={last !== false}\n {...defaults}\n click=\"last\"\n icon={<Ionicons />}\n ></UI.Button>\n </>\n );\n}\n","import React from 'react';\nimport UI from '../UI';\nimport Ionicons from '@expo/vector-icons/Ionicons';\nimport ElGridPaginator from './ElGridPaginator';\nimport { ChildType } from 'react-crud-utils';\n\nexport default function ElGridTop(props: ChildType) {\n let scope = props.scope;\n\n return (\n <>\n <UI.Output styleClass=\"ui-grid-top\">\n <UI.Output field=\"search\" position=\"left\" space={4}>\n <UI.Include {...props} transient name=\"top\" position=\"left\" />\n <UI.Text\n field=\"query\"\n space={0}\n label=\"Pesquisar\"\n placeholder={scope.attr('placeholder', 'Pesquisar')}\n >\n <UI.Define name=\"right\">\n <UI.Button\n field=\"search\"\n icon={<Ionicons />}\n space={0}\n variant=\"text\"\n owner={scope}\n click={'search'}\n ></UI.Button>\n </UI.Define>\n </UI.Text>\n </UI.Output>\n <UI.Output position=\"right\" space={8}>\n <UI.Include {...props} transient name=\"top\" position=\"right\" />\n <ElGridPaginator\n scope={scope}\n last={false}\n first={false}\n position=\"top\"\n ></ElGridPaginator>\n </UI.Output>\n </UI.Output>\n </>\n );\n}\n","import { ChildType } from \"react-crud-utils\";\n\nexport default function ElGridFilter(props: ChildType) {\n return <></>;\n}\n","import React, { useState } from \"react\";\nimport ElGridPaginator from \"./ElGridPaginator\";\nimport UI from \"../UI\";\nimport { ChildType } from \"react-crud-utils\";\n\nexport default function ElGridBotom(props: ChildType) {\n let scope = props.scope;\n let children = props.children;\n\n return (\n <div className=\"ui-grid-bottom\">\n <div className=\"ui-grid-bottom-inner\">\n <UI.Include {...props} transient name=\"bottomLeft\" />\n <ElGridPaginator scope={scope} position=\"bottom\">\n {children}\n </ElGridPaginator>\n <UI.Include {...props} transient name=\"bottomRight\" />\n </div>\n </div>\n );\n}\n","import React from 'react';\r\nimport { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Icon(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import React from 'react';\nimport UI from '../UI';\nimport { ChildType, Utils } from 'react-crud-utils';\nimport Icon from '../core/Icon';\n\ninterface ElLabelType extends ChildType {\n position?: string;\n}\nexport default function ElLabel(props: ElLabelType) {\n let scope = props.scope;\n let original = scope.original;\n let defaultPos = 'outside';\n\n let elPos = Utils.nvl(original.labelPos, defaultPos);\n let lbPos = Utils.nvl(props.position, defaultPos);\n\n if (elPos != lbPos) {\n return <></>;\n }\n\n const CustomIcon = () => {\n if (!scope.is('type', 'list', 'grid')) {\n return <></>;\n }\n\n if (typeof original.icon === 'string') {\n return (\n <div className=\"ui-label-icon\">\n <Icon className={scope.getIcon()}></Icon>\n </div>\n );\n }\n return <div className=\"ui-label-icon\">{original.icon}</div>;\n };\n\n let label = scope.getLabel();\n\n return (\n <div className={'ui-label ui-label-' + lbPos}>\n <div className=\"ui-label-left\">\n <UI.Include {...props} transient name=\"label\" position=\"left\" />\n <CustomIcon />\n {label && <div className=\"ui-label-value\">{label}</div>}\n </div>\n <div className=\"ui-label-right\">\n <UI.Include {...props} transient name=\"label\" position=\"right\" />\n </div>\n </div>\n );\n}\n","import React from 'react';\n\nimport ElGridRow from './ElGridRow';\nimport ElGridTop from './ElGridTop';\nimport ElGridFilter from './ElGridFilter';\nimport ElGridBotom from './ElGridBotom';\nimport ElLabel from './ElLabel';\nimport { ChildType, ComponentUtils, Scope } from 'react-crud-utils';\n\nexport default function ElGrid(props: ChildType) {\n let scope: Scope = props.scope;\n let items: any = scope.getItems();\n let expansion = ComponentUtils.getDefine(props, 'expansion');\n\n return (\n <div\n className={scope.getStyleClass('inner')}\n style={scope.getStyle('inner')}\n >\n <ElLabel {...props} scope={scope} position=\"outside\"></ElLabel>\n <div\n className={scope.getStyleClass('child')}\n style={scope.getStyle('child')}\n >\n <ElLabel {...props} scope={scope} position=\"inside\"></ElLabel>\n <div className=\"ui-data\">\n <ElGridTop {...props} scope={scope}></ElGridTop>\n <ElGridFilter scope={scope}></ElGridFilter>\n <div className=\"ui-grid-data\">\n <table className=\"ui-grid ui-table\">\n <tbody>\n {items.map((row: any, i: number) => (\n <ElGridRow\n {...props}\n expansion={expansion}\n key={'r' + i}\n scope={scope}\n value={row}\n index={i}\n />\n ))}\n </tbody>\n </table>\n </div>\n </div>\n <ElGridBotom {...props} scope={scope} />\n </div>\n </div>\n );\n}\n","import UIChildren from \"../UIChildren\";\nimport { ComponentUtils, DefineType, Utils } from \"react-crud-utils\";\n\nexport default function ElInclude(props: DefineType) {\n if (props.rendered === false) {\n return <></>;\n }\n\n let includes = ComponentUtils.getDefine(props, props.name, props.position);\n\n if (Utils.isEmpty(includes)) {\n includes = props.default;\n }\n\n if (!Utils.isEmpty(includes)) {\n let Aux = (tagProp: any) => {\n let Tag: any = props.tag;\n\n if (!Utils.isEmpty(Tag)) {\n return <Tag {...tagProp}>{tagProp.children}</Tag>;\n }\n return <>{tagProp.children}</>;\n };\n\n return (\n <Aux {...props.tagProps}>\n <UIChildren\n transient\n {...props}\n scope={props.scope}\n crud={props.crud}\n part={props.name}\n >\n {includes}\n </UIChildren>\n </Aux>\n );\n }\n return <>{includes}</>;\n}\n","import React from 'react';\nimport UIChildren from '../UIChildren';\nimport ElLabel from '../grid/ElLabel';\nimport ElInclude from '../grid/ElInclude';\nimport { ChildType } from 'react-crud-utils';\n\nexport default function ElCard(props: ChildType) {\n let scope = props.scope;\n\n return (\n <div\n className={scope.getStyleClass('inner')}\n style={scope.getStyle('inner')}\n >\n <ElLabel {...props} scope={scope}></ElLabel>\n <UIChildren {...props} scope={scope} />\n\n <div\n className={scope.getStyleClass('bottom')}\n style={scope.getStyle('bottom')}\n >\n <ElInclude {...props} scope={scope} name=\"bottom\" />\n </div>\n </div>\n );\n}\n","import React, { useState, useEffect } from 'react';\nimport UIChildren from '../UIChildren';\nimport UI from '../UI';\n\nimport Ionicons from '@expo/vector-icons/Ionicons';\nimport { ChildType, CrudUtils, Utils } from 'react-crud-utils';\n\nexport default function ElTabs(props: ChildType) {\n let scope = props.scope;\n let [selectedIndex, setSelectedIndex]: any = useState(0);\n let element = scope.original;\n let items = scope.getItems();\n let counter = 0;\n\n let tabs: any = [];\n let [selected, setSelected]: any = useState(null);\n\n const onChangeTab = (tab: any, validate = true) => {\n if (tab) {\n scope.execute({\n event: {\n validate,\n validateScope: element.validateScope,\n action: () => {\n scope.changeValue(tab.data);\n\n selected = tab;\n selectedIndex = tab.index;\n\n setSelectedIndex(selectedIndex);\n setSelected(tab);\n },\n },\n });\n }\n };\n\n const getStyleClass = (t: any) => {\n let s = 'ui-tabs-item ui-click';\n\n if (selected?.index === t.index) {\n s = s + ' ui-tab-selected';\n }\n return s;\n };\n\n const addTab = (child: any, item: any) => {\n let original = { ...child.props };\n\n if (!item) {\n item = scope.crud.data;\n }\n\n let crudTab = CrudUtils.create('tabs', {\n data: item,\n changed: item,\n parent: scope.crud,\n });\n\n let element = Utils.resolve(original, crudTab);\n\n if (element.rendered === false) {\n return;\n }\n\n tabs.push({\n ...element,\n child,\n element,\n original,\n index: counter++,\n data: item,\n });\n };\n\n React.Children.map(props.children, (child, index) => {\n if (Utils.isEmpty(items)) {\n addTab(child, {});\n } else {\n for (const i in items) {\n let o = items[i];\n\n addTab(child, o);\n }\n }\n });\n\n if (!selected) {\n onChangeTab(tabs[selectedIndex], false);\n }\n\n const nav = (i: any) => {\n let t = tabs[selectedIndex + i];\n\n onChangeTab(t);\n };\n\n const previous = () => {\n nav(-1);\n };\n\n const next = () => {\n nav(1);\n };\n\n let isStepper = element.layout === 'stepper';\n\n return (\n <div\n className={scope.getStyleClass('inner')}\n style={scope.getStyle('inner')}\n >\n <div className=\"ui-tabs-content\">\n <div className=\"ui-tabs-items\">\n {tabs.map((t: any, i: number) => (\n <div\n key={Utils.key(element.id, 'tab', i)}\n className={getStyleClass(t)}\n onClick={() => {\n onChangeTab(t);\n }}\n >\n {isStepper && <div className=\"ui-tab-item-divisor\" />}\n <div className=\"ui-tab-item-inner\">\n {isStepper && <div className=\"ui-step-line\" />}\n <div className=\"ui-tab-item-label\">\n {isStepper ? t.index + 1 : t.label}\n </div>\n </div>\n </div>\n ))}\n </div>\n {selected && (\n <>\n {isStepper && <div className=\"ui-tabs-label\">{selected.label}</div>}\n <div className=\"ui-tabs-area\">\n <UIChildren {...props} scope={scope}>\n {selected.child}\n </UIChildren>\n </div>\n {element.layout === 'stepper' && (\n <div className=\"ui-tabs-actions\">\n <UI.Output space={6} layout=\"left\">\n <UI.Include\n {...props}\n transient\n name=\"left\"\n default={\n <UI.Button\n rendered={selectedIndex > 0}\n icon={<Ionicons />}\n click={previous}\n />\n }\n />\n </UI.Output>\n <UI.Output space={6} layout=\"right\">\n <UI.Include\n {...props}\n transient\n name=\"right\"\n default={\n <UI.Button\n rendered={selectedIndex < tabs.length - 1}\n icon={<Ionicons />}\n click={next}\n />\n }\n />\n </UI.Output>\n </div>\n )}\n </>\n )}\n </div>\n </div>\n );\n}\n","import React from \"react\";\nimport { ChildType, Scope, Utils } from \"react-crud-utils\";\n\nexport default function ElChart(props: ChildType) {\n let scope: Scope = props.scope;\n let items: any = scope.getItems();\n let columns = Utils.asList(scope.original.columns);\n\n return <div className=\"ui-chart-data\"></div>;\n}\n","import React from 'react';\r\nimport { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function AutoComplete(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import React from 'react';\nimport { ChildType } from 'react-crud-utils';\nimport AutoComplete from './core/AutoComplete';\n\nexport default function UIComplete({\n defaultsInput,\n defaultsUI,\n scope,\n}: ChildType) {\n return (\n <>\n <AutoComplete {...defaultsInput} {...defaultsUI} />\n </>\n );\n}\n","import React, { useState } from \"react\";\nimport UIChildren from \"../UIChildren\";\nimport { CrudUtils, RowType, Scope } from \"react-crud-utils\";\n\nexport default function ElRepeatRow(props: RowType) {\n let value = props.value;\n let scope = props.scope;\n let index = props.index;\n\n let row = CrudUtils.create(\"row\", {\n index,\n row: true,\n itemVar: scope.original.itemVar,\n parent: scope.crudSearch,\n data: value,\n });\n\n let [rowScope] = useState(new Scope(scope.original, scope, row));\n\n let getRowStyleClass = () => {\n let s = rowScope.getStyleClass(\"row\");\n\n s = s + \" ui-repeat-row-\";\n\n if (index % 2 == 0) {\n s = s + \"even\";\n } else {\n s = s + \"odd\";\n }\n return s;\n };\n\n return (\n <div className={getRowStyleClass()} style={rowScope.getStyle(\"row\")}>\n <UIChildren transient {...props} crud={row}>\n {props.children}\n </UIChildren>\n </div>\n );\n}\n","import ElRepeatRow from './ElRepeatRow';\nimport { ChildType, Scope } from 'react-crud-utils';\n\nexport default function ElRepeat(props: ChildType) {\n let scope: Scope = props.scope;\n let items: any = scope.getItems();\n\n return (\n <div\n className={scope.getStyleClass('inner')}\n style={scope.getStyle('inner')}\n >\n {items.map((row: any, i: number) => (\n <ElRepeatRow\n {...props}\n key={'r' + i}\n scope={scope}\n value={row}\n index={i}\n />\n ))}\n </div>\n );\n}\n","import React from 'react';\r\nimport { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Link(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import React from 'react';\r\nimport { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Button(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import React from 'react';\r\nimport { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Select(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import React from 'react';\r\nimport { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Switch(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import React from 'react';\r\nimport { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Option(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import React from 'react';\r\nimport { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Radio(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import React from 'react';\r\nimport { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Input(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import React, { useEffect, useLayoutEffect, useRef, useState } from 'react';\nimport ElGrid from './grid/ElGrid';\nimport ElCard from './card/ElCard';\nimport UIChildren from './UIChildren';\nimport ElTabs from './tabs/ElTabs';\nimport ElLabel from './grid/ElLabel';\nimport ElChart from './charts/ElChart';\nimport UIComplete from './UIComplete';\nimport ElRepeat from './grid/ElRepeat';\nimport {\n Crud,\n HtmlUtils,\n ScopeUtils,\n Utils,\n ElementType,\n} from 'react-crud-utils';\nimport Link from './core/Link';\nimport Icon from './core/Icon';\nimport Button from './core/Button';\nimport Select from './core/Select';\nimport Switch from './core/Switch';\nimport Option from './core/Option';\nimport Radio from './core/Radio';\nimport Input from './core/Input';\nimport { Linking } from 'react-native';\n\nexport default function UIElement(props: ElementType) {\n let [scope] = useState(ScopeUtils.create(props));\n let [index, setIndex] = useState(0);\n let [error, setError]: string | any = useState(null);\n let options: any = scope.getOptions();\n let crud: Crud = Utils.nvl(props.crud, scope.crud);\n let original = scope.original;\n let type = original.type;\n let ref = useRef(null);\n\n scope.update = () => {\n setIndex(++index);\n };\n\n let router: any = {\n list: ElGrid,\n grid: ElGrid,\n label: ElLabel,\n card: ElCard,\n repeat: ElRepeat,\n tabs: ElTabs,\n chart: ElChart,\n };\n\n let CurrentRouter = () => {\n if (router[type]) {\n let Aux = router[type];\n\n return <Aux crud={crud} {...props} scope={scope} />;\n }\n return <></>;\n };\n\n const Custom = () => {\n let c: any = original.custom;\n\n if (c) {\n if (typeof c === 'string') {\n return (\n <UIElement\n element={{ value: c, type: 'dummy' }}\n crud={crud}\n ></UIElement>\n );\n }\n\n return (\n <UIElement\n type={c.type}\n tag={c.type}\n {...c.props}\n crud={crud}\n ></UIElement>\n );\n }\n\n return <></>;\n };\n\n if (scope.is('type', 'dummy')) {\n return <>{scope.getDisplayValue()}</>;\n }\n\n let onCheck = () => {\n let v = scope.getValue();\n let check = !(v === true);\n\n onChange({ target: { value: check } });\n };\n\n let onChange = (e: any) => {\n let val = e.target.value;\n\n if (scope.isType('integer', 'int', 'number')) {\n val = parseInt(val);\n } else if (scope.isType('decimal')) {\n val = parseFloat(val);\n }\n\n if (scope.isType('select', 'complete')) {\n val = scope.getSelectedItem(val);\n }\n\n scope.changeValue(val);\n scope.update();\n };\n\n let onClick = (e: any) => {\n scope.call('click');\n };\n\n let defaultsInput: any = {\n label: scope.getLabel(),\n value: scope.getValue(),\n onChange: onChange,\n };\n\n if (scope.isType('password')) {\n defaultsInput.type = 'password';\n }\n\n let elStyle = scope.getStyle('element');\n\n let defaultsUI: any = {\n required: scope.isRequired(),\n size: 'small',\n style: elStyle,\n placeholder: scope.attr('placeholder', 'Digite aqui'),\n };\n\n let isChecked = () => {\n let v = scope.getValue();\n\n return v === true;\n };\n\n let hasChildren = () => {\n if (scope.isInput()) {\n return false;\n }\n\n return !Utils.isEmpty(props.children) || !Utils.isEmpty(props.elements);\n };\n\n if (!scope.isRendered() || scope.is('type', 'define')) {\n return <></>;\n }\n\n scope.error = (msg: string) => {\n error = msg;\n setError(msg);\n };\n\n useEffect(() => {\n if (!scope.ready) {\n scope.ready = true;\n\n scope.call('load');\n\n if (scope.isType('list', 'repeat')) {\n scope.search();\n } else if (original.list) {\n scope.call('list');\n }\n scope.start();\n }\n });\n\n const CustomIcon = () => {\n if (typeof original.icon === 'string') {\n return <Icon>{scope.getIcon()}</Icon>;\n }\n return <>{original.icon}</>;\n };\n\n const getLabelClass = (type: string) => {\n let clss = `ui-text ui-${type}-text`;\n let icon = scope.getIcon();\n\n if (icon) {\n clss = clss + ` ui-icon ui-${type}-icon`;\n }\n return clss;\n };\n\n let hasCustomRoute = () => {\n if (router[type]) return true;\n return false;\n };\n\n scope.open = (args: any) => {\n Linking.openURL(args.url);\n };\n\n if (scope.isType('dialog')) {\n let name = original.name;\n\n if (!crud.dialogs[name]) {\n let dlg: any = { config: { ...original } };\n\n dlg.component = (args: any) => {\n return <UIChildren {...props} scope={scope} crud={crud} />;\n };\n\n crud.dialogs[name] = dlg;\n }\n return <></>;\n }\n\n useLayoutEffect(() => {\n if (ref?.current && scope.is('type', 'card', 'list', 'tabs', 'stepper')) {\n let el: any = ref?.current;\n\n if (el) {\n let bg = HtmlUtils.getBGColor(el);\n\n if (bg === 'rgb(255, 255, 255)') {\n el.classList.add('ui-dark');\n } else {\n el.classList.add('ui-light');\n }\n }\n }\n });\n\n const isShowInner = () => {\n if (hasChildren() || hasCustomRoute()) {\n return false;\n }\n return true;\n };\n\n return (\n <>\n <div\n className={'ui-el ' + scope.getStyleClass()}\n ref={ref}\n style={scope.getStyle()}\n >\n {isShowInner() && (\n <>\n <div\n className={scope.getStyleClass('inner')}\n style={scope.getStyle('inner')}\n >\n {scope.is('type', 'button') && (\n <Button\n {...defaultsUI}\n onClick={onClick}\n variant={scope.attr('variant', 'outlined')}\n >\n {original.icon && <CustomIcon />}\n {original.label && (\n <span className={getLabelClass('button')}>\n {scope.getLabel()}\n </span>\n )}\n </Button>\n )}\n {scope.is('type', 'icon') && (\n <Icon\n {...defaultsUI}\n onClick={onClick}\n variant={scope.attr('variant', 'outlined')}\n >\n {scope.getDisplayValue()}\n </Icon>\n )}\n {scope.is('type', 'link') && (\n <Link\n {...defaultsUI}\n onClick={onClick}\n variant={scope.attr('variant', 'outlined')}\n >\n {original.icon && <CustomIcon />}\n {original.label && (\n <span className={getLabelClass('link')}>\n {scope.getLabel()}\n </span>\n )}\n </Link>\n )}\n {scope.is(\n 'type',\n 'text',\n 'number',\n 'phone',\n 'postalCode',\n 'money',\n 'password',\n 'email'\n ) && (\n <Input\n {...defaultsInput}\n {...defaultsUI}\n InputProps={{ ...original.inputProps }}\n />\n )}\n {scope.is('type', 'complete', 'autocomplete') && (\n <UIComplete\n scope={scope}\n defaultsInput={defaultsInput}\n defaultsUI={defaultsUI}\n />\n )}\n {scope.is('type', 'checkbox', 'boolean', 'switch') && (\n <Switch\n checked={isChecked()}\n {...defaultsInput}\n onChange={onCheck}\n />\n )}\n {scope.is('type', 'select') && (\n <Select\n {...defaultsInput}\n {...defaultsUI}\n value={scope.getSelectedValue()}\n >\n <Option value={''}>Selecione</Option>\n {options.map((row: any, i: number) => (\n <Option key={'i' + i} value={row.value}>\n {row.label}\n </Option>\n ))}\n </Select>\n )}\n {scope.is('type', 'radio') && (\n <Radio {...defaultsInput} {...defaultsUI} row>\n {options.map((row: any, i: number) => (\n <Option\n key={'i' + i}\n control={<Radio {...defaultsUI} />}\n label={row.label}\n value={row.value}\n />\n ))}\n </Radio>\n )}\n {scope.is('type', 'custom') && <Custom />}\n {scope.is('type', 'column') && (\n <>\n {scope.is('format', 'img') && (\n <img src={scope.getDisplayValue()} />\n )}\n {scope.is('format', 'icon') && (\n <i className={scope.getDisplayValue()} />\n )}\n {!scope.is('format', 'icon', 'img') && (\n <span>{scope.getDisplayValue()}</span>\n )}\n </>\n )}\n {scope.is('type', 'output') && (\n <span>{scope.getDisplayValue()}</span>\n )}\n </div>\n {error && <div className=\"ui-error\">{error}</div>}\n </>\n )}\n <CurrentRouter />\n {!scope.is(\n 'type',\n 'card',\n 'tabs',\n 'grid',\n 'list',\n 'define',\n 'repeat'\n ) && <UIChildren {...props} scope={scope} crud={crud} />}\n </div>\n </>\n );\n}\n","import { ListType } from \"react-crud-utils\";\nimport { UserType } from \"react-crud-utils\";\nimport { InputType } from \"react-crud-utils\";\nimport { ChartType } from \"react-crud-utils\";\nimport { ContainerType } from \"react-crud-utils\";\nimport { ListInputType } from \"react-crud-utils\";\nimport UIElement from \"./UIElement\";\nimport { TabsType } from \"react-crud-utils\";\nimport { DefineType } from \"react-crud-utils\";\nimport ElInclude from \"./grid/ElInclude\";\nimport { ButtonType } from \"react-crud-utils\";\nimport { LinkType } from \"react-crud-utils\";\n\nconst UI = {\n Grid: (props: ListType) => <UIElement {...props} type=\"list\" />,\n Repeat: (props: ListType) => <UIElement {...props} type=\"repeat\" />,\n Define: (props: DefineType) => <UIElement {...props} type=\"define\" />,\n Include: (props: DefineType) => <ElInclude {...props} />,\n Column: ({ type = \"column\", ...props }: UserType) => (\n <UIElement {...props} type=\"column\" />\n ),\n Input: (props: InputType) => <UIElement {...props} />,\n Text: (props: InputType) => <UIElement {...props} type=\"text\" />,\n Email: (props: InputType) => <UIElement {...props} type=\"email\" />,\n Button: (props: ButtonType) => <UIElement {...props} type=\"button\" />,\n Link: (props: LinkType) => <UIElement {...props} type=\"link\" />,\n Icon: (props: ButtonType) => <UIElement {...props} type=\"icon\" />,\n Output: (props: ContainerType) => <UIElement {...props} type=\"output\" />,\n Form: (props: ContainerType) => <UIElement {...props} type=\"form\" />,\n Crud: (props: ContainerType) => <UIElement {...props} type=\"crud\" />,\n View: (props: ContainerType) => (\n <UIElement {...props} type=\"view\" transient />\n ),\n Bottom: (props: ContainerType) => <UIElement {...props} type=\"bottom\" />,\n Dialog: (props: ContainerType) => <UIElement {...props} type=\"dialog\" />,\n Content: (props: ContainerType) => <UIElement {...props} type=\"content\" />,\n Top: (props: ContainerType) => <UIElement {...props} type=\"top\" />,\n Card: (props: ContainerType) => <UIElement {...props} type=\"card\" />,\n Tab: (props: ContainerType) => <UIElement {...props} type=\"tab\" />,\n Tabs: (props: TabsType) => <UIElement {...props} type=\"tabs\" />,\n Step: (props: ContainerType) => (\n <UIElement {...props} type=\"tab\" layout=\"step\" />\n ),\n Stepper: (props: TabsType) => (\n <UIElement {...props} type=\"tabs\" layout=\"stepper\" />\n ),\n Money: (props: InputType) => <UIElement {...props} type=\"money\" />,\n Chart: (props: ChartType) => <UIElement {...props} type=\"chart\" />,\n Password: (props: InputType) => <UIElement {...props} type=\"password\" />,\n Complete: (props: InputType) => <UIElement {...props} type=\"complete\" />,\n Checkbox: (props: InputType) => <UIElement {...props} type=\"checkbox\" />,\n Radio: (props: ListInputType) => <UIElement {...props} type=\"radio\" />,\n Select: (props: ListInputType) => <UIElement {...props} type=\"select\" />,\n Entity: (props: ListInputType) => <UIElement {...props} type=\"entity\" />,\n Element: (props: ListInputType) => <UIElement {...props} type=\"element\" />,\n};\nexport default UI;\n"],"names":["UIChildren","props","scope","useState","Utils","nvl","ScopeUtils","create","crud","validateScope","name","part","isInput","React","createElement","Fragment","Paint","_ref","child","Custom","type","pps","_extends","children","isEmpty","transient","parent","Draw","elements","Object","entries","map","t","k","UIElement","Children","className","getStyleClass","style","getStyle","childProps","ElGridColumn","col","_props$column","column","colScope","Scope","styleClass","colSpan","colspan","ElGridCheck","cs","value","rowIndex","original","_useState","index","setIndex","key","UI","Button","icon","crudSearch","selecteds","itemValue","Ionicons","click","action","ElGridRow","expansion","row","CrudUtils","itemVar","data","expanded","setExpanded","rowScope","getRowStyleClass","s","cols","ComponentUtils","getChild","length","ExpansionStatus","hasExpansion","multiple","i","ElGridPaginator","next","previous","first","size","last","position","sizes","defaults","owner","variant","attr","paginatorPosition","field","space","rendered","Select","default","change","ElGridTop","Output","Include","Text","label","placeholder","Define","ElGridFilter","ElGridBotom","Icon","TouchableOpacity","onPress","Linking","openURL","styles","link","ElLabel","elPos","labelPos","lbPos","CustomIcon","is","getIcon","getLabel","ElGrid","items","getItems","getDefine","ElInclude","includes","tagProp","Tag","tag","tagProps","ElCard","ElTabs","selectedIndex","setSelectedIndex","element","counter","tabs","_useState2","selected","setSelected","onChangeTab","tab","validate","execute","event","changeValue","_selected","addTab","item","crudTab","changed","resolve","push","nav","isStepper","layout","id","onClick","ElChart","asList","columns","AutoComplete","UIComplete","defaultsInput","defaultsUI","ElRepeatRow","ElRepeat","Link","Switch","Option","Radio","Input","_useState3","error","setError","options","getOptions","ref","useRef","update","router","list","grid","card","repeat","chart","CurrentRouter","c","custom","getDisplayValue","onChange","e","val","target","isType","parseInt","parseFloat","getSelectedItem","call","getValue","elStyle","required","isRequired","isRendered","msg","useEffect","ready","search","start","getLabelClass","clss","open","args","url","dialogs","dlg","config","useLayoutEffect","current","el","bg","HtmlUtils","getBGColor","classList","add","InputProps","inputProps","checked","v","getSelectedValue","control","src","Grid","Repeat","Column","_objectWithoutPropertiesLoose","_excluded","Email","Form","Crud","View","Bottom","Dialog","Content","Top","Card","Tab","Tabs","Step","Stepper","Money","Chart","Password","Complete","Checkbox","Entity","Element"],"mappings":"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"}
1
+ {"version":3,"file":"react-crud-mobile.cjs.production.min.js","sources":["../src/elements/UIChildren.tsx","../src/elements/grid/ElGridColumn.tsx","../src/elements/grid/ElGridCheck.tsx","../src/elements/grid/ElGridRow.tsx","../src/elements/grid/ElGridPaginator.tsx","../src/elements/grid/ElGridTop.tsx","../src/elements/grid/ElGridFilter.tsx","../src/elements/grid/ElGridBotom.tsx","../src/elements/core/Icon.tsx","../src/elements/grid/ElLabel.tsx","../src/elements/grid/ElGrid.tsx","../src/elements/grid/ElInclude.tsx","../src/elements/card/ElCard.tsx","../src/elements/tabs/ElTabs.tsx","../src/elements/charts/ElChart.tsx","../src/elements/core/AutoComplete.tsx","../src/elements/UIComplete.tsx","../src/elements/grid/ElRepeatRow.tsx","../src/elements/grid/ElRepeat.tsx","../src/elements/core/Link.tsx","../src/elements/core/Button.tsx","../src/elements/core/Select.tsx","../src/elements/core/Switch.tsx","../src/elements/core/Option.tsx","../src/elements/core/Radio.tsx","../src/elements/core/Input.tsx","../src/elements/UIElement.tsx","../src/elements/UI.tsx"],"sourcesContent":["import React, { useState } from \"react\";\nimport UIElement from \"./UIElement\";\nimport { Crud, Scope, ScopeUtils, Utils } from \"react-crud-utils\";\n\ninterface UIChildrenType {\n scope: Scope;\n crud?: Crud;\n validateScope?: String;\n children?: any;\n elements?: any;\n transient?: boolean;\n part?: string;\n childProps?: any;\n}\n\nexport default function UIChildren(props: UIChildrenType) {\n let [scope] = useState(Utils.nvl(props.scope, ScopeUtils.create(props)));\n let crud = Utils.nvl(props.crud, scope.crud);\n let validateScope = Utils.nvl(props.validateScope, \"global\");\n let name = Utils.nvl(props.part, \"child\");\n\n if (scope.isInput()) {\n return <></>;\n }\n\n let Paint = ({ child }: any) => {\n if (!child) {\n return <></>;\n }\n if (typeof child === \"string\") {\n return <>{child}</>;\n }\n\n let Custom = child.type;\n let pps = { ...child.props };\n\n delete pps.children;\n\n if (typeof Custom === \"string\") {\n if (Utils.isEmpty(child.props.children)) {\n return <Custom {...pps} />;\n }\n return (\n <Custom {...pps}>\n <UIChildren\n transient\n validateScope={validateScope}\n {...child.props}\n scope={scope}\n crud={crud}\n ></UIChildren>\n </Custom>\n );\n } else if (typeof Custom === \"function\") {\n return (\n <Custom\n validateScope={validateScope}\n {...child.props}\n parent={scope}\n crud={crud}\n ></Custom>\n );\n }\n\n if (!Utils.isEmpty(child.props.children)) {\n return (\n <UIChildren\n validateScope={validateScope}\n {...child.props}\n scope={scope}\n crud={crud}\n transient\n ></UIChildren>\n );\n }\n return <></>;\n };\n\n const Draw = () => {\n if (props.elements) {\n return (\n <>\n {Object.entries(props.elements).map((t: any, k) => {\n return <UIElement crud={crud} {...t[1]} />;\n })}\n </>\n );\n }\n return (\n <>\n {React.Children.map(props.children, (child) => {\n return <Paint child={child}></Paint>;\n })}\n </>\n );\n };\n\n if (props.transient) {\n return <Draw />;\n }\n\n if (Utils.isEmpty(props.children) && Utils.isEmpty(props.elements)) {\n return <></>;\n }\n\n return (\n <>\n <div\n className={scope.getStyleClass(name)}\n style={scope.getStyle(name)}\n {...props.childProps}\n >\n <Draw />\n </div>\n </>\n );\n}\n","import React, { useState } from \"react\";\nimport UIChildren from \"../UIChildren\";\nimport { Scope, Utils } from \"react-crud-utils\";\n\ninterface ElGridColumnType {\n scope: Scope;\n styleClass?: string;\n children?: any;\n colspan?: number;\n column?: any;\n}\n\nexport default function ElGridColumn(props: ElGridColumnType) {\n let scope = props.scope;\n let col = Utils.nvl(props.column?.props, {});\n let [colScope] = useState(new Scope(col, scope, scope.crud));\n\n let getStyleClass = () => {\n let def = Utils.nvl(props.styleClass, \"\");\n\n return \"ui-grid-col \" + def + \" \" + colScope.getStyleClass(\"column\");\n };\n return (\n <td\n className={getStyleClass()}\n style={colScope.getStyle(\"column\")}\n colSpan={props.colspan}\n >\n <UIChildren scope={scope}>{props.children}</UIChildren>\n </td>\n );\n}\n","import UI from '../UI';\nimport Ionicons from '@expo/vector-icons/Ionicons';\nimport { useState } from 'react';\nimport { GridRowType, Utils } from 'react-crud-utils';\n\nexport default function ElGridCheck({ scope, value, rowIndex }: GridRowType) {\n let original = scope.original;\n let [index, setIndex] = useState(0);\n let key = scope.key('check', rowIndex, 's', index);\n\n let check = () => {\n let cs = scope.crudSearch;\n\n if (cs) {\n if (!cs.selecteds) {\n cs.selecteds = {};\n }\n\n let itemValue = Utils.nvl(original.itemValue, 'id');\n let key = value[itemValue];\n\n if (typeof key !== 'undefined') {\n if (typeof cs.selecteds[key] === 'undefined') {\n cs.selecteds[key] = value;\n } else {\n delete cs.selecteds[key];\n }\n }\n }\n setIndex(++index);\n };\n\n let getCheckIcon = () => {\n if (isChecked()) {\n return <Ionicons />;\n }\n return <Ionicons />;\n };\n\n let isChecked = () => {\n let cs = scope.crudSearch;\n\n if (cs) {\n if (!cs.selecteds) {\n cs.selecteds = {};\n }\n\n let itemValue = Utils.nvl(original.itemValue, 'id');\n let key = value[itemValue];\n\n if (typeof key !== 'undefined') {\n if (typeof cs.selecteds[key] !== 'undefined') {\n return true;\n }\n }\n }\n return false;\n };\n\n return (\n <UI.Button\n key={key}\n icon={getCheckIcon()}\n click={{ action: check }}\n ></UI.Button>\n );\n}\n","import React, { useState } from 'react';\nimport ElGridColumn from './ElGridColumn';\nimport ElGridCheck from './ElGridCheck';\nimport Ionicons from '@expo/vector-icons/Ionicons';\nimport UI from '../UI';\nimport UIChildren from '../UIChildren';\nimport {\n ComponentUtils,\n CrudUtils,\n ListType,\n RowType,\n Scope,\n Utils,\n} from 'react-crud-utils';\n\nexport default function ElGridRow(props: RowType) {\n let expansion = props.expansion;\n let value = props.value;\n let scope = props.scope;\n let index = props.index;\n let original: ListType = scope.original;\n\n let row = CrudUtils.create('row', {\n index,\n row: true,\n itemVar: scope.original.itemVar,\n parent: scope.crudSearch,\n data: value,\n });\n\n let [expanded, setExpanded] = useState(false);\n let [rowScope] = useState(new Scope(scope.original, scope, row));\n\n let getRowStyleClass = () => {\n let s = 'ui-grid-row';\n\n s = s + ' ui-grid-row-';\n\n if (index % 2 == 0) {\n s = s + 'even';\n } else {\n s = s + 'odd';\n }\n return s;\n };\n\n let cols = ComponentUtils.getChild(props, 'Column');\n let colspan = cols.length;\n\n let ExpansionStatus = () => {\n return (\n <>\n {!expanded && <Ionicons />}\n {expanded && <Ionicons />}\n </>\n );\n };\n\n let onExpansion = () => {\n setExpanded(!expanded);\n };\n\n let hasExpansion = !Utils.isEmpty(expansion);\n let multiple = original.multiple;\n\n if (hasExpansion) colspan++;\n if (multiple) colspan++;\n\n return (\n <>\n <tr className={getRowStyleClass()} style={rowScope.getStyle('row')}>\n {hasExpansion && (\n <ElGridColumn\n key={'r' + index + 'e'}\n scope={rowScope}\n styleClass=\"ui-click ui-icon-only ui-expansion\"\n >\n <UI.Button\n icon={<ExpansionStatus />}\n click={onExpansion}\n ></UI.Button>\n </ElGridColumn>\n )}\n {multiple && (\n <ElGridColumn\n key={'r' + index + 'c'}\n scope={rowScope}\n styleClass=\"ui-click ui-icon-only ui-multiple\"\n >\n <ElGridCheck\n key={'check-' + index}\n scope={scope}\n value={value}\n rowIndex={index}\n />\n </ElGridColumn>\n )}\n {cols.map((col: any, i: number) => (\n <ElGridColumn\n column={col}\n key={'r' + index + 'c' + i}\n scope={rowScope}\n >\n {col}\n </ElGridColumn>\n ))}\n </tr>\n {expanded && (\n <tr className={getRowStyleClass()} style={rowScope.getStyle('row')}>\n <ElGridColumn\n key={'r' + index + '-expanded'}\n scope={rowScope}\n colspan={colspan}\n >\n <UIChildren {...props} crud={row}>\n {expansion}\n </UIChildren>\n </ElGridColumn>\n </tr>\n )}\n </>\n );\n}\n","import React, { useState } from 'react';\nimport UI from '../UI';\nimport { ChildType, Utils } from 'react-crud-utils';\nimport Ionicons from '@expo/vector-icons/Ionicons';\n\ninterface ElGridPaginatorType extends ChildType {\n next?: boolean;\n previous?: boolean;\n first?: boolean;\n size?: boolean;\n last?: boolean;\n position: string;\n}\n\nexport default function ElGridPaginator({\n scope,\n next,\n previous,\n first,\n size,\n last,\n position,\n}: ElGridPaginatorType) {\n let [sizes] = useState([10, 20, 30, 50, 100, 200, 500]);\n let defaults = {\n crud: scope.crudSearch,\n owner: scope,\n variant: scope.attr('variant', 'text'),\n };\n\n let paginatorPosition = Utils.nvl(scope.original.paginatorPosition, 'bottom');\n\n if (paginatorPosition !== position) {\n return <></>;\n }\n\n return (\n <>\n <UI.Button\n field=\"first\"\n space={0}\n rendered={first !== false}\n {...defaults}\n click=\"first\"\n icon={<Ionicons />}\n ></UI.Button>\n <UI.Button\n field=\"previous\"\n space={0}\n rendered={previous !== false}\n click=\"previous\"\n {...defaults}\n icon={<Ionicons />}\n ></UI.Button>\n <UI.Select\n field=\"size\"\n space={0}\n rendered={size !== false}\n default={10}\n {...defaults}\n data={sizes}\n change=\"search\"\n ></UI.Select>\n <UI.Button\n field=\"next\"\n space={0}\n rendered={next !== false}\n {...defaults}\n click=\"next\"\n icon={<Ionicons />}\n ></UI.Button>\n <UI.Button\n field=\"last\"\n space={0}\n rendered={last !== false}\n {...defaults}\n click=\"last\"\n icon={<Ionicons />}\n ></UI.Button>\n </>\n );\n}\n","import UI from '../UI';\nimport Ionicons from '@expo/vector-icons/Ionicons';\nimport ElGridPaginator from './ElGridPaginator';\nimport { ChildType } from 'react-crud-utils';\n\nexport default function ElGridTop(props: ChildType) {\n let scope = props.scope;\n\n return (\n <>\n <UI.Output styleClass=\"ui-grid-top\">\n <UI.Output field=\"search\" position=\"left\" space={4}>\n <UI.Include {...props} transient name=\"top\" position=\"left\" />\n <UI.Text\n field=\"query\"\n space={0}\n label=\"Pesquisar\"\n placeholder={scope.attr('placeholder', 'Pesquisar')}\n >\n <UI.Define name=\"right\">\n <UI.Button\n field=\"search\"\n icon={<Ionicons />}\n space={0}\n variant=\"text\"\n owner={scope}\n click={'search'}\n ></UI.Button>\n </UI.Define>\n </UI.Text>\n </UI.Output>\n <UI.Output position=\"right\" space={8}>\n <UI.Include {...props} transient name=\"top\" position=\"right\" />\n <ElGridPaginator\n scope={scope}\n last={false}\n first={false}\n position=\"top\"\n ></ElGridPaginator>\n </UI.Output>\n </UI.Output>\n </>\n );\n}\n","import { ChildType } from \"react-crud-utils\";\n\nexport default function ElGridFilter(props: ChildType) {\n return <></>;\n}\n","import React, { useState } from \"react\";\nimport ElGridPaginator from \"./ElGridPaginator\";\nimport UI from \"../UI\";\nimport { ChildType } from \"react-crud-utils\";\n\nexport default function ElGridBotom(props: ChildType) {\n let scope = props.scope;\n let children = props.children;\n\n return (\n <div className=\"ui-grid-bottom\">\n <div className=\"ui-grid-bottom-inner\">\n <UI.Include {...props} transient name=\"bottomLeft\" />\n <ElGridPaginator scope={scope} position=\"bottom\">\n {children}\n </ElGridPaginator>\n <UI.Include {...props} transient name=\"bottomRight\" />\n </div>\n </div>\n );\n}\n","import { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Icon(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import React from 'react';\nimport UI from '../UI';\nimport { ChildType, Utils } from 'react-crud-utils';\nimport Icon from '../core/Icon';\n\ninterface ElLabelType extends ChildType {\n position?: string;\n}\nexport default function ElLabel(props: ElLabelType) {\n let scope = props.scope;\n let original = scope.original;\n let defaultPos = 'outside';\n\n let elPos = Utils.nvl(original.labelPos, defaultPos);\n let lbPos = Utils.nvl(props.position, defaultPos);\n\n if (elPos != lbPos) {\n return <></>;\n }\n\n const CustomIcon = () => {\n if (!scope.is('type', 'list', 'grid')) {\n return <></>;\n }\n\n if (typeof original.icon === 'string') {\n return (\n <div className=\"ui-label-icon\">\n <Icon className={scope.getIcon()}></Icon>\n </div>\n );\n }\n return <div className=\"ui-label-icon\">{original.icon}</div>;\n };\n\n let label = scope.getLabel();\n\n return (\n <div className={'ui-label ui-label-' + lbPos}>\n <div className=\"ui-label-left\">\n <UI.Include {...props} transient name=\"label\" position=\"left\" />\n <CustomIcon />\n {label && <div className=\"ui-label-value\">{label}</div>}\n </div>\n <div className=\"ui-label-right\">\n <UI.Include {...props} transient name=\"label\" position=\"right\" />\n </div>\n </div>\n );\n}\n","import ElGridRow from './ElGridRow';\nimport ElGridTop from './ElGridTop';\nimport ElGridFilter from './ElGridFilter';\nimport ElGridBotom from './ElGridBotom';\nimport ElLabel from './ElLabel';\nimport { ChildType, ComponentUtils, Scope } from 'react-crud-utils';\n\nexport default function ElGrid(props: ChildType) {\n let scope: Scope = props.scope;\n let items: any = scope.getItems();\n let expansion = ComponentUtils.getDefine(props, 'expansion');\n\n return (\n <div\n className={scope.getStyleClass('inner')}\n style={scope.getStyle('inner')}\n >\n <ElLabel {...props} scope={scope} position=\"outside\"></ElLabel>\n <div\n className={scope.getStyleClass('child')}\n style={scope.getStyle('child')}\n >\n <ElLabel {...props} scope={scope} position=\"inside\"></ElLabel>\n <div className=\"ui-data\">\n <ElGridTop {...props} scope={scope}></ElGridTop>\n <ElGridFilter scope={scope}></ElGridFilter>\n <div className=\"ui-grid-data\">\n <table className=\"ui-grid ui-table\">\n <tbody>\n {items.map((row: any, i: number) => (\n <ElGridRow\n {...props}\n expansion={expansion}\n key={'r' + i}\n scope={scope}\n value={row}\n index={i}\n />\n ))}\n </tbody>\n </table>\n </div>\n </div>\n <ElGridBotom {...props} scope={scope} />\n </div>\n </div>\n );\n}\n","import UIChildren from \"../UIChildren\";\nimport { ComponentUtils, DefineType, Utils } from \"react-crud-utils\";\n\nexport default function ElInclude(props: DefineType) {\n if (props.rendered === false) {\n return <></>;\n }\n\n let includes = ComponentUtils.getDefine(props, props.name, props.position);\n\n if (Utils.isEmpty(includes)) {\n includes = props.default;\n }\n\n if (!Utils.isEmpty(includes)) {\n let Aux = (tagProp: any) => {\n let Tag: any = props.tag;\n\n if (!Utils.isEmpty(Tag)) {\n return <Tag {...tagProp}>{tagProp.children}</Tag>;\n }\n return <>{tagProp.children}</>;\n };\n\n return (\n <Aux {...props.tagProps}>\n <UIChildren\n transient\n {...props}\n scope={props.scope}\n crud={props.crud}\n part={props.name}\n >\n {includes}\n </UIChildren>\n </Aux>\n );\n }\n return <>{includes}</>;\n}\n","import UIChildren from '../UIChildren';\nimport ElLabel from '../grid/ElLabel';\nimport ElInclude from '../grid/ElInclude';\nimport { ChildType } from 'react-crud-utils';\n\nexport default function ElCard(props: ChildType) {\n let scope = props.scope;\n\n return (\n <div\n className={scope.getStyleClass('inner')}\n style={scope.getStyle('inner')}\n >\n <ElLabel {...props} scope={scope}></ElLabel>\n <UIChildren {...props} scope={scope} />\n\n <div\n className={scope.getStyleClass('bottom')}\n style={scope.getStyle('bottom')}\n >\n <ElInclude {...props} scope={scope} name=\"bottom\" />\n </div>\n </div>\n );\n}\n","import React, { useState, useEffect } from 'react';\nimport UIChildren from '../UIChildren';\nimport UI from '../UI';\n\nimport Ionicons from '@expo/vector-icons/Ionicons';\nimport { ChildType, CrudUtils, Utils } from 'react-crud-utils';\n\nexport default function ElTabs(props: ChildType) {\n let scope = props.scope;\n let [selectedIndex, setSelectedIndex]: any = useState(0);\n let element = scope.original;\n let items = scope.getItems();\n let counter = 0;\n\n let tabs: any = [];\n let [selected, setSelected]: any = useState(null);\n\n const onChangeTab = (tab: any, validate = true) => {\n if (tab) {\n scope.execute({\n event: {\n validate,\n validateScope: element.validateScope,\n action: () => {\n scope.changeValue(tab.data);\n\n selected = tab;\n selectedIndex = tab.index;\n\n setSelectedIndex(selectedIndex);\n setSelected(tab);\n },\n },\n });\n }\n };\n\n const getStyleClass = (t: any) => {\n let s = 'ui-tabs-item ui-click';\n\n if (selected?.index === t.index) {\n s = s + ' ui-tab-selected';\n }\n return s;\n };\n\n const addTab = (child: any, item: any) => {\n let original = { ...child.props };\n\n if (!item) {\n item = scope.crud.data;\n }\n\n let crudTab = CrudUtils.create('tabs', {\n data: item,\n changed: item,\n parent: scope.crud,\n });\n\n let element = Utils.resolve(original, crudTab);\n\n if (element.rendered === false) {\n return;\n }\n\n tabs.push({\n ...element,\n child,\n element,\n original,\n index: counter++,\n data: item,\n });\n };\n\n React.Children.map(props.children, (child, index) => {\n if (Utils.isEmpty(items)) {\n addTab(child, {});\n } else {\n for (const i in items) {\n let o = items[i];\n\n addTab(child, o);\n }\n }\n });\n\n if (!selected) {\n onChangeTab(tabs[selectedIndex], false);\n }\n\n const nav = (i: any) => {\n let t = tabs[selectedIndex + i];\n\n onChangeTab(t);\n };\n\n const previous = () => {\n nav(-1);\n };\n\n const next = () => {\n nav(1);\n };\n\n let isStepper = element.layout === 'stepper';\n\n return (\n <div\n className={scope.getStyleClass('inner')}\n style={scope.getStyle('inner')}\n >\n <div className=\"ui-tabs-content\">\n <div className=\"ui-tabs-items\">\n {tabs.map((t: any, i: number) => (\n <div\n key={Utils.key(element.id, 'tab', i)}\n className={getStyleClass(t)}\n onClick={() => {\n onChangeTab(t);\n }}\n >\n {isStepper && <div className=\"ui-tab-item-divisor\" />}\n <div className=\"ui-tab-item-inner\">\n {isStepper && <div className=\"ui-step-line\" />}\n <div className=\"ui-tab-item-label\">\n {isStepper ? t.index + 1 : t.label}\n </div>\n </div>\n </div>\n ))}\n </div>\n {selected && (\n <>\n {isStepper && <div className=\"ui-tabs-label\">{selected.label}</div>}\n <div className=\"ui-tabs-area\">\n <UIChildren {...props} scope={scope}>\n {selected.child}\n </UIChildren>\n </div>\n {element.layout === 'stepper' && (\n <div className=\"ui-tabs-actions\">\n <UI.Output space={6} layout=\"left\">\n <UI.Include\n {...props}\n transient\n name=\"left\"\n default={\n <UI.Button\n rendered={selectedIndex > 0}\n icon={<Ionicons />}\n click={previous}\n />\n }\n />\n </UI.Output>\n <UI.Output space={6} layout=\"right\">\n <UI.Include\n {...props}\n transient\n name=\"right\"\n default={\n <UI.Button\n rendered={selectedIndex < tabs.length - 1}\n icon={<Ionicons />}\n click={next}\n />\n }\n />\n </UI.Output>\n </div>\n )}\n </>\n )}\n </div>\n </div>\n );\n}\n","import React from \"react\";\nimport { ChildType, Scope, Utils } from \"react-crud-utils\";\n\nexport default function ElChart(props: ChildType) {\n let scope: Scope = props.scope;\n let items: any = scope.getItems();\n let columns = Utils.asList(scope.original.columns);\n\n return <div className=\"ui-chart-data\"></div>;\n}\n","import { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function AutoComplete(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import { ChildType } from 'react-crud-utils';\nimport AutoComplete from './core/AutoComplete';\n\nexport default function UIComplete({\n defaultsInput,\n defaultsUI,\n scope,\n}: ChildType) {\n return (\n <>\n <AutoComplete {...defaultsInput} {...defaultsUI} />\n </>\n );\n}\n","import React, { useState } from \"react\";\nimport UIChildren from \"../UIChildren\";\nimport { CrudUtils, RowType, Scope } from \"react-crud-utils\";\n\nexport default function ElRepeatRow(props: RowType) {\n let value = props.value;\n let scope = props.scope;\n let index = props.index;\n\n let row = CrudUtils.create(\"row\", {\n index,\n row: true,\n itemVar: scope.original.itemVar,\n parent: scope.crudSearch,\n data: value,\n });\n\n let [rowScope] = useState(new Scope(scope.original, scope, row));\n\n let getRowStyleClass = () => {\n let s = rowScope.getStyleClass(\"row\");\n\n s = s + \" ui-repeat-row-\";\n\n if (index % 2 == 0) {\n s = s + \"even\";\n } else {\n s = s + \"odd\";\n }\n return s;\n };\n\n return (\n <div className={getRowStyleClass()} style={rowScope.getStyle(\"row\")}>\n <UIChildren transient {...props} crud={row}>\n {props.children}\n </UIChildren>\n </div>\n );\n}\n","import ElRepeatRow from './ElRepeatRow';\nimport { ChildType, Scope } from 'react-crud-utils';\n\nexport default function ElRepeat(props: ChildType) {\n let scope: Scope = props.scope;\n let items: any = scope.getItems();\n\n return (\n <div\n className={scope.getStyleClass('inner')}\n style={scope.getStyle('inner')}\n >\n {items.map((row: any, i: number) => (\n <ElRepeatRow\n {...props}\n key={'r' + i}\n scope={scope}\n value={row}\n index={i}\n />\n ))}\n </div>\n );\n}\n","import { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Link(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Button(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Select(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Switch(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Option(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Radio(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import { Text, TouchableOpacity, Linking, StyleSheet } from 'react-native';\r\n\r\nexport default function Input(props: any) {\r\n const handlePress = () => {\r\n Linking.openURL('https://reactnative.dev/');\r\n };\r\n\r\n return (\r\n <TouchableOpacity onPress={handlePress}>\r\n <Text style={styles.link}>Clique aqui para acessar o React Native</Text>\r\n </TouchableOpacity>\r\n );\r\n}\r\n\r\nconst styles = {\r\n link: {},\r\n};\r\n","import React, { useEffect, useLayoutEffect, useRef, useState } from 'react';\nimport ElGrid from './grid/ElGrid';\nimport ElCard from './card/ElCard';\nimport UIChildren from './UIChildren';\nimport ElTabs from './tabs/ElTabs';\nimport ElLabel from './grid/ElLabel';\nimport ElChart from './charts/ElChart';\nimport UIComplete from './UIComplete';\nimport ElRepeat from './grid/ElRepeat';\nimport {\n Crud,\n HtmlUtils,\n ScopeUtils,\n Utils,\n ElementType,\n} from 'react-crud-utils';\nimport Link from './core/Link';\nimport Icon from './core/Icon';\nimport Button from './core/Button';\nimport Select from './core/Select';\nimport Switch from './core/Switch';\nimport Option from './core/Option';\nimport Radio from './core/Radio';\nimport Input from './core/Input';\nimport { Linking } from 'react-native';\n\nexport default function UIElement(props: ElementType) {\n let [scope] = useState(ScopeUtils.create(props));\n let [index, setIndex] = useState(0);\n let [error, setError]: string | any = useState(null);\n let options: any = scope.getOptions();\n let crud: Crud = Utils.nvl(props.crud, scope.crud);\n let original = scope.original;\n let type = original.type;\n let ref = useRef(null);\n\n scope.update = () => {\n setIndex(++index);\n };\n\n let router: any = {\n list: ElGrid,\n grid: ElGrid,\n label: ElLabel,\n card: ElCard,\n repeat: ElRepeat,\n tabs: ElTabs,\n chart: ElChart,\n };\n\n let CurrentRouter = () => {\n if (router[type]) {\n let Aux = router[type];\n\n return <Aux crud={crud} {...props} scope={scope} />;\n }\n return <></>;\n };\n\n const Custom = () => {\n let c: any = original.custom;\n\n if (c) {\n if (typeof c === 'string') {\n return (\n <UIElement\n element={{ value: c, type: 'dummy' }}\n crud={crud}\n ></UIElement>\n );\n }\n\n return (\n <UIElement\n type={c.type}\n tag={c.type}\n {...c.props}\n crud={crud}\n ></UIElement>\n );\n }\n\n return <></>;\n };\n\n if (scope.is('type', 'dummy')) {\n return <>{scope.getDisplayValue()}</>;\n }\n\n let onCheck = () => {\n let v = scope.getValue();\n let check = !(v === true);\n\n onChange({ target: { value: check } });\n };\n\n let onChange = (e: any) => {\n let val = e.target.value;\n\n if (scope.isType('integer', 'int', 'number')) {\n val = parseInt(val);\n } else if (scope.isType('decimal')) {\n val = parseFloat(val);\n }\n\n if (scope.isType('select', 'complete')) {\n val = scope.getSelectedItem(val);\n }\n\n scope.changeValue(val);\n scope.update();\n };\n\n let onClick = (e: any) => {\n scope.call('click');\n };\n\n let defaultsInput: any = {\n label: scope.getLabel(),\n value: scope.getValue(),\n onChange: onChange,\n };\n\n if (scope.isType('password')) {\n defaultsInput.type = 'password';\n }\n\n let elStyle = scope.getStyle('element');\n\n let defaultsUI: any = {\n required: scope.isRequired(),\n size: 'small',\n style: elStyle,\n placeholder: scope.attr('placeholder', 'Digite aqui'),\n };\n\n let isChecked = () => {\n let v = scope.getValue();\n\n return v === true;\n };\n\n let hasChildren = () => {\n if (scope.isInput()) {\n return false;\n }\n\n return !Utils.isEmpty(props.children) || !Utils.isEmpty(props.elements);\n };\n\n if (!scope.isRendered() || scope.is('type', 'define')) {\n return <></>;\n }\n\n scope.error = (msg: string) => {\n error = msg;\n setError(msg);\n };\n\n useEffect(() => {\n if (!scope.ready) {\n scope.ready = true;\n\n scope.call('load');\n\n if (scope.isType('list', 'repeat')) {\n scope.search();\n } else if (original.list) {\n scope.call('list');\n }\n scope.start();\n }\n });\n\n const CustomIcon = () => {\n if (typeof original.icon === 'string') {\n return <Icon>{scope.getIcon()}</Icon>;\n }\n return <>{original.icon}</>;\n };\n\n const getLabelClass = (type: string) => {\n let clss = `ui-text ui-${type}-text`;\n let icon = scope.getIcon();\n\n if (icon) {\n clss = clss + ` ui-icon ui-${type}-icon`;\n }\n return clss;\n };\n\n let hasCustomRoute = () => {\n if (router[type]) return true;\n return false;\n };\n\n scope.open = (args: any) => {\n Linking.openURL(args.url);\n };\n\n if (scope.isType('dialog')) {\n let name = original.name;\n\n if (!crud.dialogs[name]) {\n let dlg: any = { config: { ...original } };\n\n dlg.component = (args: any) => {\n return <UIChildren {...props} scope={scope} crud={crud} />;\n };\n\n crud.dialogs[name] = dlg;\n }\n return <></>;\n }\n\n useLayoutEffect(() => {\n if (ref?.current && scope.is('type', 'card', 'list', 'tabs', 'stepper')) {\n let el: any = ref?.current;\n\n if (el) {\n let bg = HtmlUtils.getBGColor(el);\n\n if (bg === 'rgb(255, 255, 255)') {\n el.classList.add('ui-dark');\n } else {\n el.classList.add('ui-light');\n }\n }\n }\n });\n\n const isShowInner = () => {\n if (hasChildren() || hasCustomRoute()) {\n return false;\n }\n return true;\n };\n\n return (\n <>\n <div\n className={'ui-el ' + scope.getStyleClass()}\n ref={ref}\n style={scope.getStyle()}\n >\n {isShowInner() && (\n <>\n <div\n className={scope.getStyleClass('inner')}\n style={scope.getStyle('inner')}\n >\n {scope.is('type', 'button') && (\n <Button\n {...defaultsUI}\n onClick={onClick}\n variant={scope.attr('variant', 'outlined')}\n >\n {original.icon && <CustomIcon />}\n {original.label && (\n <span className={getLabelClass('button')}>\n {scope.getLabel()}\n </span>\n )}\n </Button>\n )}\n {scope.is('type', 'icon') && (\n <Icon\n {...defaultsUI}\n onClick={onClick}\n variant={scope.attr('variant', 'outlined')}\n >\n {scope.getDisplayValue()}\n </Icon>\n )}\n {scope.is('type', 'link') && (\n <Link\n {...defaultsUI}\n onClick={onClick}\n variant={scope.attr('variant', 'outlined')}\n >\n {original.icon && <CustomIcon />}\n {original.label && (\n <span className={getLabelClass('link')}>\n {scope.getLabel()}\n </span>\n )}\n </Link>\n )}\n {scope.is(\n 'type',\n 'text',\n 'number',\n 'phone',\n 'postalCode',\n 'money',\n 'password',\n 'email'\n ) && (\n <Input\n {...defaultsInput}\n {...defaultsUI}\n InputProps={{ ...original.inputProps }}\n />\n )}\n {scope.is('type', 'complete', 'autocomplete') && (\n <UIComplete\n scope={scope}\n defaultsInput={defaultsInput}\n defaultsUI={defaultsUI}\n />\n )}\n {scope.is('type', 'checkbox', 'boolean', 'switch') && (\n <Switch\n checked={isChecked()}\n {...defaultsInput}\n onChange={onCheck}\n />\n )}\n {scope.is('type', 'select') && (\n <Select\n {...defaultsInput}\n {...defaultsUI}\n value={scope.getSelectedValue()}\n >\n <Option value={''}>Selecione</Option>\n {options.map((row: any, i: number) => (\n <Option key={'i' + i} value={row.value}>\n {row.label}\n </Option>\n ))}\n </Select>\n )}\n {scope.is('type', 'radio') && (\n <Radio {...defaultsInput} {...defaultsUI} row>\n {options.map((row: any, i: number) => (\n <Option\n key={'i' + i}\n control={<Radio {...defaultsUI} />}\n label={row.label}\n value={row.value}\n />\n ))}\n </Radio>\n )}\n {scope.is('type', 'custom') && <Custom />}\n {scope.is('type', 'column') && (\n <>\n {scope.is('format', 'img') && (\n <img src={scope.getDisplayValue()} />\n )}\n {scope.is('format', 'icon') && (\n <i className={scope.getDisplayValue()} />\n )}\n {!scope.is('format', 'icon', 'img') && (\n <span>{scope.getDisplayValue()}</span>\n )}\n </>\n )}\n {scope.is('type', 'output') && (\n <span>{scope.getDisplayValue()}</span>\n )}\n </div>\n {error && <div className=\"ui-error\">{error}</div>}\n </>\n )}\n <CurrentRouter />\n {!scope.is(\n 'type',\n 'card',\n 'tabs',\n 'grid',\n 'list',\n 'define',\n 'repeat'\n ) && <UIChildren {...props} scope={scope} crud={crud} />}\n </div>\n </>\n );\n}\n","import { ListType } from \"react-crud-utils\";\nimport { UserType } from \"react-crud-utils\";\nimport { InputType } from \"react-crud-utils\";\nimport { ChartType } from \"react-crud-utils\";\nimport { ContainerType } from \"react-crud-utils\";\nimport { ListInputType } from \"react-crud-utils\";\nimport UIElement from \"./UIElement\";\nimport { TabsType } from \"react-crud-utils\";\nimport { DefineType } from \"react-crud-utils\";\nimport ElInclude from \"./grid/ElInclude\";\nimport { ButtonType } from \"react-crud-utils\";\nimport { LinkType } from \"react-crud-utils\";\n\nconst UI = {\n Grid: (props: ListType) => <UIElement {...props} type=\"list\" />,\n Repeat: (props: ListType) => <UIElement {...props} type=\"repeat\" />,\n Define: (props: DefineType) => <UIElement {...props} type=\"define\" />,\n Include: (props: DefineType) => <ElInclude {...props} />,\n Column: ({ type = \"column\", ...props }: UserType) => (\n <UIElement {...props} type=\"column\" />\n ),\n Input: (props: InputType) => <UIElement {...props} />,\n Text: (props: InputType) => <UIElement {...props} type=\"text\" />,\n Email: (props: InputType) => <UIElement {...props} type=\"email\" />,\n Button: (props: ButtonType) => <UIElement {...props} type=\"button\" />,\n Link: (props: LinkType) => <UIElement {...props} type=\"link\" />,\n Icon: (props: ButtonType) => <UIElement {...props} type=\"icon\" />,\n Output: (props: ContainerType) => <UIElement {...props} type=\"output\" />,\n Form: (props: ContainerType) => <UIElement {...props} type=\"form\" />,\n Crud: (props: ContainerType) => <UIElement {...props} type=\"crud\" />,\n View: (props: ContainerType) => (\n <UIElement {...props} type=\"view\" transient />\n ),\n Bottom: (props: ContainerType) => <UIElement {...props} type=\"bottom\" />,\n Dialog: (props: ContainerType) => <UIElement {...props} type=\"dialog\" />,\n Content: (props: ContainerType) => <UIElement {...props} type=\"content\" />,\n Top: (props: ContainerType) => <UIElement {...props} type=\"top\" />,\n Card: (props: ContainerType) => <UIElement {...props} type=\"card\" />,\n Tab: (props: ContainerType) => <UIElement {...props} type=\"tab\" />,\n Tabs: (props: TabsType) => <UIElement {...props} type=\"tabs\" />,\n Step: (props: ContainerType) => (\n <UIElement {...props} type=\"tab\" layout=\"step\" />\n ),\n Stepper: (props: TabsType) => (\n <UIElement {...props} type=\"tabs\" layout=\"stepper\" />\n ),\n Money: (props: InputType) => <UIElement {...props} type=\"money\" />,\n Chart: (props: ChartType) => <UIElement {...props} type=\"chart\" />,\n Password: (props: InputType) => <UIElement {...props} type=\"password\" />,\n Complete: (props: InputType) => <UIElement {...props} type=\"complete\" />,\n Checkbox: (props: InputType) => <UIElement {...props} type=\"checkbox\" />,\n Radio: (props: ListInputType) => <UIElement {...props} type=\"radio\" />,\n Select: (props: ListInputType) => <UIElement {...props} type=\"select\" />,\n Entity: (props: ListInputType) => <UIElement {...props} type=\"entity\" />,\n Element: (props: ListInputType) => <UIElement {...props} type=\"element\" />,\n};\nexport default UI;\n"],"names":["UIChildren","props","scope","useState","Utils","nvl","ScopeUtils","create","crud","validateScope","name","part","isInput","React","createElement","Fragment","Paint","_ref","child","Custom","type","pps","_extends","children","isEmpty","transient","parent","Draw","elements","Object","entries","map","t","k","UIElement","Children","className","getStyleClass","style","getStyle","childProps","ElGridColumn","col","_props$column","column","colScope","Scope","styleClass","colSpan","colspan","ElGridCheck","cs","value","rowIndex","original","_useState","index","setIndex","key","UI","Button","icon","crudSearch","selecteds","itemValue","Ionicons","click","action","ElGridRow","expansion","row","CrudUtils","itemVar","data","expanded","setExpanded","rowScope","getRowStyleClass","s","cols","ComponentUtils","getChild","length","ExpansionStatus","hasExpansion","multiple","i","ElGridPaginator","next","previous","first","size","last","position","sizes","defaults","owner","variant","attr","paginatorPosition","field","space","rendered","Select","default","change","ElGridTop","Output","Include","Text","label","placeholder","Define","ElGridFilter","ElGridBotom","Icon","TouchableOpacity","onPress","Linking","openURL","styles","link","ElLabel","elPos","labelPos","lbPos","CustomIcon","is","getIcon","getLabel","ElGrid","items","getItems","getDefine","ElInclude","includes","tagProp","Tag","tag","tagProps","ElCard","ElTabs","selectedIndex","setSelectedIndex","element","counter","tabs","_useState2","selected","setSelected","onChangeTab","tab","validate","execute","event","changeValue","_selected","addTab","item","crudTab","changed","resolve","push","nav","isStepper","layout","id","onClick","ElChart","asList","columns","AutoComplete","UIComplete","defaultsInput","defaultsUI","ElRepeatRow","ElRepeat","Link","Switch","Option","Radio","Input","_useState3","error","setError","options","getOptions","ref","useRef","update","router","list","grid","card","repeat","chart","CurrentRouter","c","custom","getDisplayValue","onChange","e","val","target","isType","parseInt","parseFloat","getSelectedItem","call","getValue","elStyle","required","isRequired","isRendered","msg","useEffect","ready","search","start","getLabelClass","clss","open","args","url","dialogs","dlg","config","useLayoutEffect","current","el","bg","HtmlUtils","getBGColor","classList","add","InputProps","inputProps","checked","v","getSelectedValue","control","src","Grid","Repeat","Column","_objectWithoutPropertiesLoose","_excluded","Email","Form","Crud","View","Bottom","Dialog","Content","Top","Card","Tab","Tabs","Step","Stepper","Money","Chart","Password","Complete","Checkbox","Entity","Element"],"mappings":"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"}
@@ -312,38 +312,38 @@ function ElGridPaginator(_ref) {
312
312
 
313
313
  function ElGridTop(props) {
314
314
  var scope = props.scope;
315
- return /*#__PURE__*/React$1.createElement(React$1.Fragment, null, /*#__PURE__*/React$1.createElement(UI.Output, {
315
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(UI.Output, {
316
316
  styleClass: "ui-grid-top"
317
- }, /*#__PURE__*/React$1.createElement(UI.Output, {
317
+ }, /*#__PURE__*/React.createElement(UI.Output, {
318
318
  field: "search",
319
319
  position: "left",
320
320
  space: 4
321
- }, /*#__PURE__*/React$1.createElement(UI.Include, _extends({}, props, {
321
+ }, /*#__PURE__*/React.createElement(UI.Include, _extends({}, props, {
322
322
  "transient": true,
323
323
  name: "top",
324
324
  position: "left"
325
- })), /*#__PURE__*/React$1.createElement(UI.Text, {
325
+ })), /*#__PURE__*/React.createElement(UI.Text, {
326
326
  field: "query",
327
327
  space: 0,
328
328
  label: "Pesquisar",
329
329
  placeholder: scope.attr('placeholder', 'Pesquisar')
330
- }, /*#__PURE__*/React$1.createElement(UI.Define, {
330
+ }, /*#__PURE__*/React.createElement(UI.Define, {
331
331
  name: "right"
332
- }, /*#__PURE__*/React$1.createElement(UI.Button, {
332
+ }, /*#__PURE__*/React.createElement(UI.Button, {
333
333
  field: "search",
334
- icon: /*#__PURE__*/React$1.createElement(Ionicons, null),
334
+ icon: /*#__PURE__*/React.createElement(Ionicons, null),
335
335
  space: 0,
336
336
  variant: "text",
337
337
  owner: scope,
338
338
  click: 'search'
339
- })))), /*#__PURE__*/React$1.createElement(UI.Output, {
339
+ })))), /*#__PURE__*/React.createElement(UI.Output, {
340
340
  position: "right",
341
341
  space: 8
342
- }, /*#__PURE__*/React$1.createElement(UI.Include, _extends({}, props, {
342
+ }, /*#__PURE__*/React.createElement(UI.Include, _extends({}, props, {
343
343
  "transient": true,
344
344
  name: "top",
345
345
  position: "right"
346
- })), /*#__PURE__*/React$1.createElement(ElGridPaginator, {
346
+ })), /*#__PURE__*/React.createElement(ElGridPaginator, {
347
347
  scope: scope,
348
348
  last: false,
349
349
  first: false,
@@ -378,9 +378,9 @@ function Icon(props) {
378
378
  var handlePress = function handlePress() {
379
379
  Linking.openURL('https://reactnative.dev/');
380
380
  };
381
- return /*#__PURE__*/React$1.createElement(TouchableOpacity, {
381
+ return /*#__PURE__*/React.createElement(TouchableOpacity, {
382
382
  onPress: handlePress
383
- }, /*#__PURE__*/React$1.createElement(Text, {
383
+ }, /*#__PURE__*/React.createElement(Text, {
384
384
  style: styles.link
385
385
  }, "Clique aqui para acessar o React Native"));
386
386
  }
@@ -436,37 +436,37 @@ function ElGrid(props) {
436
436
  var scope = props.scope;
437
437
  var items = scope.getItems();
438
438
  var expansion = ComponentUtils.getDefine(props, 'expansion');
439
- return /*#__PURE__*/React$1.createElement("div", {
439
+ return /*#__PURE__*/React.createElement("div", {
440
440
  className: scope.getStyleClass('inner'),
441
441
  style: scope.getStyle('inner')
442
- }, /*#__PURE__*/React$1.createElement(ElLabel, _extends({}, props, {
442
+ }, /*#__PURE__*/React.createElement(ElLabel, _extends({}, props, {
443
443
  scope: scope,
444
444
  position: "outside"
445
- })), /*#__PURE__*/React$1.createElement("div", {
445
+ })), /*#__PURE__*/React.createElement("div", {
446
446
  className: scope.getStyleClass('child'),
447
447
  style: scope.getStyle('child')
448
- }, /*#__PURE__*/React$1.createElement(ElLabel, _extends({}, props, {
448
+ }, /*#__PURE__*/React.createElement(ElLabel, _extends({}, props, {
449
449
  scope: scope,
450
450
  position: "inside"
451
- })), /*#__PURE__*/React$1.createElement("div", {
451
+ })), /*#__PURE__*/React.createElement("div", {
452
452
  className: "ui-data"
453
- }, /*#__PURE__*/React$1.createElement(ElGridTop, _extends({}, props, {
453
+ }, /*#__PURE__*/React.createElement(ElGridTop, _extends({}, props, {
454
454
  scope: scope
455
- })), /*#__PURE__*/React$1.createElement(ElGridFilter, {
455
+ })), /*#__PURE__*/React.createElement(ElGridFilter, {
456
456
  scope: scope
457
- }), /*#__PURE__*/React$1.createElement("div", {
457
+ }), /*#__PURE__*/React.createElement("div", {
458
458
  className: "ui-grid-data"
459
- }, /*#__PURE__*/React$1.createElement("table", {
459
+ }, /*#__PURE__*/React.createElement("table", {
460
460
  className: "ui-grid ui-table"
461
- }, /*#__PURE__*/React$1.createElement("tbody", null, items.map(function (row, i) {
462
- return /*#__PURE__*/React$1.createElement(ElGridRow, _extends({}, props, {
461
+ }, /*#__PURE__*/React.createElement("tbody", null, items.map(function (row, i) {
462
+ return /*#__PURE__*/React.createElement(ElGridRow, _extends({}, props, {
463
463
  expansion: expansion,
464
464
  key: 'r' + i,
465
465
  scope: scope,
466
466
  value: row,
467
467
  index: i
468
468
  }));
469
- }))))), /*#__PURE__*/React$1.createElement(ElGridBotom, _extends({}, props, {
469
+ }))))), /*#__PURE__*/React.createElement(ElGridBotom, _extends({}, props, {
470
470
  scope: scope
471
471
  }))));
472
472
  }
@@ -500,17 +500,17 @@ function ElInclude(props) {
500
500
 
501
501
  function ElCard(props) {
502
502
  var scope = props.scope;
503
- return /*#__PURE__*/React$1.createElement("div", {
503
+ return /*#__PURE__*/React.createElement("div", {
504
504
  className: scope.getStyleClass('inner'),
505
505
  style: scope.getStyle('inner')
506
- }, /*#__PURE__*/React$1.createElement(ElLabel, _extends({}, props, {
506
+ }, /*#__PURE__*/React.createElement(ElLabel, _extends({}, props, {
507
507
  scope: scope
508
- })), /*#__PURE__*/React$1.createElement(UIChildren, _extends({}, props, {
508
+ })), /*#__PURE__*/React.createElement(UIChildren, _extends({}, props, {
509
509
  scope: scope
510
- })), /*#__PURE__*/React$1.createElement("div", {
510
+ })), /*#__PURE__*/React.createElement("div", {
511
511
  className: scope.getStyleClass('bottom'),
512
512
  style: scope.getStyle('bottom')
513
- }, /*#__PURE__*/React$1.createElement(ElInclude, _extends({}, props, {
513
+ }, /*#__PURE__*/React.createElement(ElInclude, _extends({}, props, {
514
514
  scope: scope,
515
515
  name: "bottom"
516
516
  }))));
@@ -671,9 +671,9 @@ function AutoComplete(props) {
671
671
  var handlePress = function handlePress() {
672
672
  Linking.openURL('https://reactnative.dev/');
673
673
  };
674
- return /*#__PURE__*/React$1.createElement(TouchableOpacity, {
674
+ return /*#__PURE__*/React.createElement(TouchableOpacity, {
675
675
  onPress: handlePress
676
- }, /*#__PURE__*/React$1.createElement(Text, {
676
+ }, /*#__PURE__*/React.createElement(Text, {
677
677
  style: styles$1.link
678
678
  }, "Clique aqui para acessar o React Native"));
679
679
  }
@@ -684,7 +684,7 @@ var styles$1 = {
684
684
  function UIComplete(_ref) {
685
685
  var defaultsInput = _ref.defaultsInput,
686
686
  defaultsUI = _ref.defaultsUI;
687
- return /*#__PURE__*/React$1.createElement(React$1.Fragment, null, /*#__PURE__*/React$1.createElement(AutoComplete, _extends({}, defaultsInput, defaultsUI)));
687
+ return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(AutoComplete, _extends({}, defaultsInput, defaultsUI)));
688
688
  }
689
689
 
690
690
  function ElRepeatRow(props) {
@@ -740,9 +740,9 @@ function Link(props) {
740
740
  var handlePress = function handlePress() {
741
741
  Linking.openURL('https://reactnative.dev/');
742
742
  };
743
- return /*#__PURE__*/React$1.createElement(TouchableOpacity, {
743
+ return /*#__PURE__*/React.createElement(TouchableOpacity, {
744
744
  onPress: handlePress
745
- }, /*#__PURE__*/React$1.createElement(Text, {
745
+ }, /*#__PURE__*/React.createElement(Text, {
746
746
  style: styles$2.link
747
747
  }, "Clique aqui para acessar o React Native"));
748
748
  }
@@ -754,9 +754,9 @@ function Button(props) {
754
754
  var handlePress = function handlePress() {
755
755
  Linking.openURL('https://reactnative.dev/');
756
756
  };
757
- return /*#__PURE__*/React$1.createElement(TouchableOpacity, {
757
+ return /*#__PURE__*/React.createElement(TouchableOpacity, {
758
758
  onPress: handlePress
759
- }, /*#__PURE__*/React$1.createElement(Text, {
759
+ }, /*#__PURE__*/React.createElement(Text, {
760
760
  style: styles$3.link
761
761
  }, "Clique aqui para acessar o React Native"));
762
762
  }
@@ -768,9 +768,9 @@ function Select(props) {
768
768
  var handlePress = function handlePress() {
769
769
  Linking.openURL('https://reactnative.dev/');
770
770
  };
771
- return /*#__PURE__*/React$1.createElement(TouchableOpacity, {
771
+ return /*#__PURE__*/React.createElement(TouchableOpacity, {
772
772
  onPress: handlePress
773
- }, /*#__PURE__*/React$1.createElement(Text, {
773
+ }, /*#__PURE__*/React.createElement(Text, {
774
774
  style: styles$4.link
775
775
  }, "Clique aqui para acessar o React Native"));
776
776
  }
@@ -782,9 +782,9 @@ function Switch(props) {
782
782
  var handlePress = function handlePress() {
783
783
  Linking.openURL('https://reactnative.dev/');
784
784
  };
785
- return /*#__PURE__*/React$1.createElement(TouchableOpacity, {
785
+ return /*#__PURE__*/React.createElement(TouchableOpacity, {
786
786
  onPress: handlePress
787
- }, /*#__PURE__*/React$1.createElement(Text, {
787
+ }, /*#__PURE__*/React.createElement(Text, {
788
788
  style: styles$5.link
789
789
  }, "Clique aqui para acessar o React Native"));
790
790
  }
@@ -796,9 +796,9 @@ function Option(props) {
796
796
  var handlePress = function handlePress() {
797
797
  Linking.openURL('https://reactnative.dev/');
798
798
  };
799
- return /*#__PURE__*/React$1.createElement(TouchableOpacity, {
799
+ return /*#__PURE__*/React.createElement(TouchableOpacity, {
800
800
  onPress: handlePress
801
- }, /*#__PURE__*/React$1.createElement(Text, {
801
+ }, /*#__PURE__*/React.createElement(Text, {
802
802
  style: styles$6.link
803
803
  }, "Clique aqui para acessar o React Native"));
804
804
  }
@@ -810,9 +810,9 @@ function Radio(props) {
810
810
  var handlePress = function handlePress() {
811
811
  Linking.openURL('https://reactnative.dev/');
812
812
  };
813
- return /*#__PURE__*/React$1.createElement(TouchableOpacity, {
813
+ return /*#__PURE__*/React.createElement(TouchableOpacity, {
814
814
  onPress: handlePress
815
- }, /*#__PURE__*/React$1.createElement(Text, {
815
+ }, /*#__PURE__*/React.createElement(Text, {
816
816
  style: styles$7.link
817
817
  }, "Clique aqui para acessar o React Native"));
818
818
  }
@@ -824,9 +824,9 @@ function Input(props) {
824
824
  var handlePress = function handlePress() {
825
825
  Linking.openURL('https://reactnative.dev/');
826
826
  };
827
- return /*#__PURE__*/React$1.createElement(TouchableOpacity, {
827
+ return /*#__PURE__*/React.createElement(TouchableOpacity, {
828
828
  onPress: handlePress
829
- }, /*#__PURE__*/React$1.createElement(Text, {
829
+ }, /*#__PURE__*/React.createElement(Text, {
830
830
  style: styles$8.link
831
831
  }, "Clique aqui para acessar o React Native"));
832
832
  }