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.
- package/dist/elements/UIComplete.d.ts +2 -2
- package/dist/elements/card/ElCard.d.ts +2 -2
- package/dist/elements/core/AutoComplete.d.ts +2 -2
- package/dist/elements/core/Button.d.ts +2 -2
- package/dist/elements/core/Icon.d.ts +2 -2
- package/dist/elements/core/Input.d.ts +2 -2
- package/dist/elements/core/Link.d.ts +2 -2
- package/dist/elements/core/Option.d.ts +2 -2
- package/dist/elements/core/Radio.d.ts +2 -2
- package/dist/elements/core/Select.d.ts +2 -2
- package/dist/elements/core/Switch.d.ts +2 -2
- package/dist/elements/grid/ElGrid.d.ts +2 -2
- package/dist/elements/grid/ElGridTop.d.ts +2 -2
- package/dist/react-crud-mobile.cjs.development.js +46 -46
- package/dist/react-crud-mobile.cjs.development.js.map +1 -1
- package/dist/react-crud-mobile.cjs.production.min.js +1 -1
- package/dist/react-crud-mobile.cjs.production.min.js.map +1 -1
- package/dist/react-crud-mobile.esm.js +46 -46
- package/dist/react-crud-mobile.esm.js.map +1 -1
- package/package.json +9 -8
- package/src/elements/UIComplete.tsx +0 -1
- package/src/elements/card/ElCard.tsx +0 -1
- package/src/elements/core/AutoComplete.tsx +0 -1
- package/src/elements/core/Button.tsx +0 -1
- package/src/elements/core/Icon.tsx +0 -1
- package/src/elements/core/Input.tsx +0 -1
- package/src/elements/core/Link.tsx +0 -1
- package/src/elements/core/Option.tsx +0 -1
- package/src/elements/core/Radio.tsx +0 -1
- package/src/elements/core/Select.tsx +0 -1
- package/src/elements/core/Switch.tsx +0 -1
- package/src/elements/grid/ElGrid.tsx +0 -2
- 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":"4eAewBA,EAAWC,GACjC,IAAKC,EAASC,WAASC,QAAMC,IAAIJ,EAAMC,MAAOI,aAAWC,OAAON,QAC5DO,EAAOJ,QAAMC,IAAIJ,EAAMO,KAAMN,EAAMM,MACnCC,EAAgBL,QAAMC,IAAIJ,EAAMQ,cAAe,UAC/CC,EAAON,QAAMC,IAAIJ,EAAMU,KAAM,SAEjC,GAAIT,EAAMU,UACR,OAAOC,EAAAC,cAAAD,EAAAE,eAGT,IAAIC,EAAQ,SAAHC,OAAMC,EAAKD,EAALC,MACb,IAAKA,EACH,OAAOL,EAAAC,cAAAD,EAAAE,eAET,GAAqB,iBAAVG,EACT,OAAOL,EAAAC,cAAAD,EAAAE,cAAGG,GAGZ,IAAIC,EAASD,EAAME,KACfC,EAAGC,KAAQJ,EAAMjB,OAIrB,cAFOoB,EAAIE,SAEW,iBAAXJ,EACLf,QAAMoB,QAAQN,EAAMjB,MAAMsB,UACrBV,EAAAC,cAACK,EAAWE,GAGnBR,EAAAC,cAACK,EAAWE,EACVR,EAAAC,cAACd,EAAUsB,GACTG,aACAhB,cAAeA,GACXS,EAAMjB,OACVC,MAAOA,EACPM,KAAMA,MAIe,mBAAXW,EAEdN,EAAAC,cAACK,EAAMG,GACLb,cAAeA,GACXS,EAAMjB,OACVyB,OAAQxB,EACRM,KAAMA,KAKPJ,QAAMoB,QAAQN,EAAMjB,MAAMsB,UAWxBV,EAAAC,cAAAD,EAAAE,eATHF,EAAAC,cAACd,EAAUsB,GACTb,cAAeA,GACXS,EAAMjB,OACVC,MAAOA,EACPM,KAAMA,EACNiB,iBAOFE,EAAO,WACX,OAEId,EAAAC,cAAAD,EAAAE,cAFAd,EAAM2B,SAGHC,OAAOC,QAAQ7B,EAAM2B,UAAUG,KAAI,SAACC,EAAQC,GAC3C,OAAOpB,EAAAC,cAACoB,EAASZ,GAACd,KAAMA,GAAUwB,EAAE,QAOvCnB,EAAMsB,SAASJ,IAAI9B,EAAMsB,UAAU,SAACL,GACnC,OAAOL,EAAAC,cAACE,GAAME,MAAOA,SAM7B,OAAIjB,YACKY,EAAAC,cAACa,QAGNvB,QAAMoB,QAAQvB,EAAMsB,WAAanB,QAAMoB,QAAQvB,EAAM2B,UAChDf,EAAAC,cAAAD,EAAAE,eAIPF,EAAAC,cAAAD,EAAAE,cACEF,EAAAC,oBAAAQ,GACEc,UAAWlC,EAAMmC,cAAc3B,GAC/B4B,MAAOpC,EAAMqC,SAAS7B,IAClBT,EAAMuC,YAEV3B,EAAAC,cAACa,mBCpGec,EAAaxC,SAC/BC,EAAQD,EAAMC,MACdwC,EAAMtC,QAAMC,WAAGsC,EAAC1C,EAAM2C,eAAND,EAAc1C,MAAO,IACpC4C,EAAY1C,WAAS,IAAI2C,QAAMJ,EAAKxC,EAAOA,EAAMM,UAOtD,OACEK,EAAAC,oBACEsB,UAJK,eAFGhC,QAAMC,IAAIJ,EAAM8C,WAAY,IAER,IAAMF,EAASR,cAAc,UAKzDC,MAAOO,EAASN,SAAS,UACzBS,QAAS/C,EAAMgD,SAEfpC,EAAAC,cAACd,GAAWE,MAAOA,GAAQD,EAAMsB,oBCvBf2B,EAAWjC,OAmC3BkC,EAnC8BjD,EAAKe,EAALf,MAAOkD,EAAKnC,EAALmC,MAAOC,EAAQpC,EAARoC,SAC9CC,EAAWpD,EAAMoD,SACrBC,EAAwBpD,WAAS,GAA5BqD,EAAKD,KAAEE,EAAQF,KAChBG,EAAMxD,EAAMwD,IAAI,QAASL,EAAU,IAAKG,GAmD5C,OACE3C,MAAAC,cAAC6C,EAAGC,QACFF,IAAKA,EACLG,MAtBEV,EAAKjD,EAAM4D,WAEXX,IACGA,EAAGY,YACNZ,EAAGY,UAAY,IAGD3D,QAAMC,IAAIiD,EAASU,UAAW,OAbvCnD,MAAAC,cAACmD,SA6BRC,MAAO,CAAEC,OArDD,WACV,IAAIhB,EAAKjD,EAAM4D,WAEf,GAAIX,EAAI,CACDA,EAAGY,YACNZ,EAAGY,UAAY,IAGjB,IAAIC,EAAY5D,QAAMC,IAAIiD,EAASU,UAAW,MAC1CN,EAAMN,EAAMY,QAEG,IAARN,SACwB,IAAtBP,EAAGY,UAAUL,GACtBP,EAAGY,UAAUL,GAAON,SAEbD,EAAGY,UAAUL,IAI1BD,IAAWD,gBCdSY,EAAUnE,GAChC,IAAIoE,EAAYpE,EAAMoE,UAClBjB,EAAQnD,EAAMmD,MACdlD,EAAQD,EAAMC,MACdsD,EAAQvD,EAAMuD,MACdF,EAAqBpD,EAAMoD,SAE3BgB,EAAMC,YAAUhE,OAAO,MAAO,CAChCiD,MAAAA,EACAc,KAAK,EACLE,QAAStE,EAAMoD,SAASkB,QACxB9C,OAAQxB,EAAM4D,WACdW,KAAMrB,IAGRG,EAA8BpD,YAAS,GAAlCuE,EAAQnB,KAAEoB,EAAWpB,KACrBqB,EAAYzE,WAAS,IAAI2C,QAAM5C,EAAMoD,SAAUpD,EAAOoE,OAEvDO,EAAmB,WACrB,IAAIC,EAAI,cASR,OAPAA,GAAQ,kBAEJtB,EAAQ,GAAK,EACP,OAEA,QAKRuB,EAAOC,iBAAeC,SAAShF,EAAO,UACtCgD,EAAU8B,EAAKG,OAEfC,EAAkB,WACpB,OACEtE,EAAAC,cAAAD,EAAAE,eACI2D,GAAY7D,EAAAC,cAACmD,QACdS,GAAY7D,EAAAC,cAACmD,UAShBmB,GAAgBhF,QAAMoB,QAAQ6C,GAC9BgB,EAAW/B,EAAS+B,SAKxB,OAHID,GAAcnC,IACdoC,GAAUpC,IAGZpC,EAAAC,cAAAD,EAAAE,cACEF,EAAAC,oBAAIsB,UAAWyC,IAAoBvC,MAAOsC,EAASrC,SAAS,QACzD6C,GACCvE,EAAAC,cAAC2B,GACCiB,IAAK,IAAMF,EAAQ,IACnBtD,MAAO0E,EACP7B,WAAW,sCAEXlC,EAAAC,cAAC6C,EAAGC,QACFC,KAAMhD,EAAAC,cAACqE,QACPjB,MArBM,WAChBS,GAAaD,OAwBRW,GACCxE,EAAAC,cAAC2B,GACCiB,IAAK,IAAMF,EAAQ,IACnBtD,MAAO0E,EACP7B,WAAW,qCAEXlC,EAAAC,cAACoC,GACCQ,IAAK,SAAWF,EAChBtD,MAAOA,EACPkD,MAAOA,EACPC,SAAUG,KAIfuB,EAAKhD,KAAI,SAACW,EAAU4C,GAAS,OAC5BzE,EAAAC,cAAC2B,GACCG,OAAQF,EACRgB,IAAK,IAAMF,EAAQ,IAAM8B,EACzBpF,MAAO0E,GAENlC,OAINgC,GACC7D,EAAAC,oBAAIsB,UAAWyC,IAAoBvC,MAAOsC,EAASrC,SAAS,QAC1D1B,EAAAC,cAAC2B,GACCiB,IAAK,IAAMF,EAAQ,YACnBtD,MAAO0E,EACP3B,QAASA,GAETpC,EAAAC,cAACd,EAAUsB,KAAKrB,GAAOO,KAAM8D,IAC1BD,eCrGSkB,EAAetE,OACrCf,EAAKe,EAALf,MACAsF,EAAIvE,EAAJuE,KACAC,EAAQxE,EAARwE,SACAC,EAAKzE,EAALyE,MACAC,EAAI1E,EAAJ0E,KACAC,EAAI3E,EAAJ2E,KACAC,EAAQ5E,EAAR4E,SAEKC,EAAS3F,WAAS,CAAC,GAAI,GAAI,GAAI,GAAI,IAAK,IAAK,SAC9C4F,EAAW,CACbvF,KAAMN,EAAM4D,WACZkC,MAAO9F,EACP+F,QAAS/F,EAAMgG,KAAK,UAAW,SAKjC,OAFwB9F,QAAMC,IAAIH,EAAMoD,SAAS6C,kBAAmB,YAE1CN,EACjBhF,EAAAC,cAAAD,EAAAE,eAIPF,EAAAC,cAAAD,EAAAE,cACEF,EAAAC,cAAC6C,EAAGC,OAAMtC,GACR8E,MAAM,QACNC,MAAO,EACPC,UAAoB,IAAVZ,GACNK,GACJ7B,MAAM,QACNL,KAAMhD,EAAAC,cAACmD,WAETpD,EAAAC,cAAC6C,EAAGC,OAAMtC,GACR8E,MAAM,WACNC,MAAO,EACPC,UAAuB,IAAbb,EACVvB,MAAM,YACF6B,GACJlC,KAAMhD,EAAAC,cAACmD,WAETpD,EAAAC,cAAC6C,EAAG4C,OAAMjF,GACR8E,MAAM,OACNC,MAAO,EACPC,UAAmB,IAATX,EACVa,QAAS,IACLT,GACJtB,KAAMqB,EACNW,OAAO,YAET5F,EAAAC,cAAC6C,EAAGC,OAAMtC,GACR8E,MAAM,OACNC,MAAO,EACPC,UAAmB,IAATd,GACNO,GACJ7B,MAAM,OACNL,KAAMhD,EAAAC,cAACmD,WAETpD,EAAAC,cAAC6C,EAAGC,OAAMtC,GACR8E,MAAM,OACNC,MAAO,EACPC,UAAmB,IAATV,GACNG,GACJ7B,MAAM,OACNL,KAAMhD,EAAAC,cAACmD,qBCxESyC,EAAUzG,GAChC,IAAIC,EAAQD,EAAMC,MAElB,OACEW,MAAAC,cAAAD,MAAAE,cACEF,MAAAC,cAAC6C,EAAGgD,QAAO5D,WAAW,eACpBlC,MAAAC,cAAC6C,EAAGgD,QAAOP,MAAM,SAASP,SAAS,OAAOQ,MAAO,GAC/CxF,MAAAC,cAAC6C,EAAGiD,QAAOtF,KAAKrB,GAAOwB,aAAUf,KAAK,MAAMmF,SAAS,UACrDhF,MAAAC,cAAC6C,EAAGkD,MACFT,MAAM,QACNC,MAAO,EACPS,MAAM,YACNC,YAAa7G,EAAMgG,KAAK,cAAe,cAEvCrF,MAAAC,cAAC6C,EAAGqD,QAAOtG,KAAK,SACdG,MAAAC,cAAC6C,EAAGC,QACFwC,MAAM,SACNvC,KAAMhD,MAAAC,cAACmD,QACPoC,MAAO,EACPJ,QAAQ,OACRD,MAAO9F,EACPgE,MAAO,cAKfrD,MAAAC,cAAC6C,EAAGgD,QAAOd,SAAS,QAAQQ,MAAO,GACjCxF,MAAAC,cAAC6C,EAAGiD,QAAOtF,KAAKrB,GAAOwB,aAAUf,KAAK,MAAMmF,SAAS,WACrDhF,MAAAC,cAACyE,GACCrF,MAAOA,EACP0F,MAAM,EACNF,OAAO,EACPG,SAAS,oBCnCGoB,EAAahH,GACnC,OAAOY,MAAAC,cAAAD,MAAAE,wBCEemG,EAAYjH,GAClC,IAAIC,EAAQD,EAAMC,MACdqB,EAAWtB,EAAMsB,SAErB,OACEV,EAAAC,qBAAKsB,UAAU,kBACbvB,EAAAC,qBAAKsB,UAAU,wBACbvB,EAAAC,cAAC6C,EAAGiD,QAAOtF,KAAKrB,GAAOwB,aAAUf,KAAK,gBACtCG,EAAAC,cAACyE,GAAgBrF,MAAOA,EAAO2F,SAAS,UACrCtE,GAEHV,EAAAC,cAAC6C,EAAGiD,QAAOtF,KAAKrB,GAAOwB,aAAUf,KAAK,4BCdtByG,EAAKlH,GAK3B,OACEY,MAAAC,cAACsG,oBAAiBC,QALA,WAClBC,UAAQC,QAAQ,8BAKd1G,MAAAC,cAAC+F,QAAKvE,MAAOkF,EAAOC,MAAM,4CAKhC,IAAMD,EAAS,CACbC,KAAM,aCPgBC,EAAQzH,GAC9B,IAAIC,EAAQD,EAAMC,MACdoD,EAAWpD,EAAMoD,SAGjBqE,EAAQvH,QAAMC,IAAIiD,EAASsE,SAFd,WAGbC,EAAQzH,QAAMC,IAAIJ,EAAM4F,SAHX,WAKjB,GAAI8B,GAASE,EACX,OAAOhH,EAAAC,cAAAD,EAAAE,eAGT,IAAM+G,EAAa,WACjB,OAAK5H,EAAM6H,GAAG,OAAQ,OAAQ,QAM1BlH,EAAAC,qBAAKsB,UAAU,iBAFU,iBAAlBkB,EAASO,KAGdhD,EAAAC,cAACqG,GAAK/E,UAAWlC,EAAM8H,YAIU1E,EAASO,MAVvChD,EAAAC,cAAAD,EAAAE,gBAaP+F,EAAQ5G,EAAM+H,WAElB,OACEpH,EAAAC,qBAAKsB,UAAW,qBAAuByF,GACrChH,EAAAC,qBAAKsB,UAAU,iBACbvB,EAAAC,cAAC6C,EAAGiD,QAAOtF,KAAKrB,GAAOwB,aAAUf,KAAK,QAAQmF,SAAS,UACvDhF,EAAAC,cAACgH,QACAhB,GAASjG,EAAAC,qBAAKsB,UAAU,kBAAkB0E,IAE7CjG,EAAAC,qBAAKsB,UAAU,kBACbvB,EAAAC,cAAC6C,EAAGiD,QAAOtF,KAAKrB,GAAOwB,aAAUf,KAAK,QAAQmF,SAAS,sBCtCvCqC,EAAOjI,GAC7B,IAAIC,EAAeD,EAAMC,MACrBiI,EAAajI,EAAMkI,WACnB/D,EAAYW,iBAAeqD,UAAUpI,EAAO,aAEhD,OACEY,MAAAC,qBACEsB,UAAWlC,EAAMmC,cAAc,SAC/BC,MAAOpC,EAAMqC,SAAS,UAEtB1B,MAAAC,cAAC4G,EAAOpG,KAAKrB,GAAOC,MAAOA,EAAO2F,SAAS,aAC3ChF,MAAAC,qBACEsB,UAAWlC,EAAMmC,cAAc,SAC/BC,MAAOpC,EAAMqC,SAAS,UAEtB1B,MAAAC,cAAC4G,EAAOpG,KAAKrB,GAAOC,MAAOA,EAAO2F,SAAS,YAC3ChF,MAAAC,qBAAKsB,UAAU,WACbvB,MAAAC,cAAC4F,EAASpF,KAAKrB,GAAOC,MAAOA,KAC7BW,MAAAC,cAACmG,GAAa/G,MAAOA,IACrBW,MAAAC,qBAAKsB,UAAU,gBACbvB,MAAAC,uBAAOsB,UAAU,oBACfvB,MAAAC,2BACGqH,EAAMpG,KAAI,SAACuC,EAAUgB,GAAS,OAC7BzE,MAAAC,cAACsD,EAAS9C,KACJrB,GACJoE,UAAWA,EACXX,IAAK,IAAM4B,EACXpF,MAAOA,EACPkD,MAAOkB,EACPd,MAAO8B,YAOnBzE,MAAAC,cAACoG,EAAW5F,KAAKrB,GAAOC,MAAOA,gBCxCfoI,EAAUrI,GAChC,IAAuB,IAAnBA,EAAMqG,SACR,OAAOzF,MAAAC,cAAAD,MAAAE,eAGT,IAAIwH,EAAWvD,iBAAeqD,UAAUpI,EAAOA,EAAMS,KAAMT,EAAM4F,UAMjE,OAJIzF,QAAMoB,QAAQ+G,KAChBA,EAAWtI,WAGRG,QAAMoB,QAAQ+G,GAwBZ1H,MAAAC,cAAAD,MAAAE,cAAGwH,GAbN1H,MAAAC,eAVQ,SAAC0H,GACT,IAAIC,EAAWxI,EAAMyI,IAErB,OAAKtI,QAAMoB,QAAQiH,GAGZ5H,MAAAC,cAAAD,MAAAE,cAAGyH,EAAQjH,UAFTV,MAAAC,cAAC2H,EAAQD,EAAUA,EAAQjH,YAM3BtB,EAAM0I,SACb9H,MAAAC,cAACd,EAAUsB,GACTG,cACIxB,GACJC,MAAOD,EAAMC,MACbM,KAAMP,EAAMO,KACZG,KAAMV,EAAMS,OAEX6H,aC5BaK,EAAO3I,GAC7B,IAAIC,EAAQD,EAAMC,MAElB,OACEW,MAAAC,qBACEsB,UAAWlC,EAAMmC,cAAc,SAC/BC,MAAOpC,EAAMqC,SAAS,UAEtB1B,MAAAC,cAAC4G,EAAOpG,KAAKrB,GAAOC,MAAOA,KAC3BW,MAAAC,cAACd,EAAUsB,KAAKrB,GAAOC,MAAOA,KAE9BW,MAAAC,qBACEsB,UAAWlC,EAAMmC,cAAc,UAC/BC,MAAOpC,EAAMqC,SAAS,WAEtB1B,MAAAC,cAACwH,EAAShH,KAAKrB,GAAOC,MAAOA,EAAOQ,KAAK,uBCbzBmI,EAAO5I,GAC7B,IAAIC,EAAQD,EAAMC,MAClBqD,EAA6CpD,WAAS,GAAjD2I,EAAavF,KAAEwF,EAAgBxF,KAChCyF,EAAU9I,EAAMoD,SAChB6E,EAAQjI,EAAMkI,WACda,EAAU,EAEVC,EAAY,GAChBC,EAAmChJ,WAAS,MAAvCiJ,EAAQD,KAAEE,EAAWF,KAEpBG,EAAc,SAACC,EAAUC,YAAAA,IAAAA,GAAW,GACpCD,GACFrJ,EAAMuJ,QAAQ,CACZC,MAAO,CACLF,SAAAA,EACA/I,cAAeuI,EAAQvI,cACvB0D,OAAQ,WACNjE,EAAMyJ,YAAYJ,EAAI9E,MAEtB2E,EAAWG,EAGXR,EAFAD,EAAgBS,EAAI/F,OAGpB6F,EAAYE,QAOhBlH,EAAgB,SAACL,SACjB8C,EAAI,wBAKR,cAHI8E,EAAAR,UAAAQ,EAAUpG,SAAUxB,EAAEwB,QACxBsB,GAAQ,oBAEHA,GAGH+E,EAAS,SAAC3I,EAAY4I,GAC1B,IAAIxG,EAAQhC,KAAQJ,EAAMjB,OAErB6J,IACHA,EAAO5J,EAAMM,KAAKiE,MAGpB,IAAIsF,EAAUxF,YAAUhE,OAAO,OAAQ,CACrCkE,KAAMqF,EACNE,QAASF,EACTpI,OAAQxB,EAAMM,OAGZwI,EAAU5I,QAAM6J,QAAQ3G,EAAUyG,IAEb,IAArBf,EAAQ1C,UAIZ4C,EAAKgB,KAAI5I,KACJ0H,GACH9H,MAAAA,EACA8H,QAAAA,EACA1F,SAAAA,EACAE,MAAOyF,IACPxE,KAAMqF,MAIVjJ,EAAMsB,SAASJ,IAAI9B,EAAMsB,UAAU,SAACL,EAAOsC,GACzC,GAAIpD,QAAMoB,QAAQ2G,GAChB0B,EAAO3I,EAAO,SAEd,IAAK,IAAMoE,KAAK6C,EAGd0B,EAAO3I,EAFCiH,EAAM7C,OAOf8D,GACHE,EAAYJ,EAAKJ,IAAgB,GAGnC,IAAMqB,EAAM,SAAC7E,GAGXgE,EAFQJ,EAAKJ,EAAgBxD,KAa3B8E,EAA+B,YAAnBpB,EAAQqB,OAExB,OACExJ,EAAAC,qBACEsB,UAAWlC,EAAMmC,cAAc,SAC/BC,MAAOpC,EAAMqC,SAAS,UAEtB1B,EAAAC,qBAAKsB,UAAU,mBACbvB,EAAAC,qBAAKsB,UAAU,iBACZ8G,EAAKnH,KAAI,SAACC,EAAQsD,GAAS,OAC1BzE,EAAAC,qBACE4C,IAAKtD,QAAMsD,IAAIsF,EAAQsB,GAAI,MAAOhF,GAClClD,UAAWC,EAAcL,GACzBuI,QAAS,WACPjB,EAAYtH,KAGboI,GAAavJ,EAAAC,qBAAKsB,UAAU,wBAC7BvB,EAAAC,qBAAKsB,UAAU,qBACZgI,GAAavJ,EAAAC,qBAAKsB,UAAU,iBAC7BvB,EAAAC,qBAAKsB,UAAU,qBACZgI,EAAYpI,EAAEwB,MAAQ,EAAIxB,EAAE8E,aAMtCsC,GACCvI,EAAAC,cAAAD,EAAAE,cACGqJ,GAAavJ,EAAAC,qBAAKsB,UAAU,iBAAiBgH,EAAStC,OACvDjG,EAAAC,qBAAKsB,UAAU,gBACbvB,EAAAC,cAACd,EAAUsB,KAAKrB,GAAOC,MAAOA,IAC3BkJ,EAASlI,QAGM,YAAnB8H,EAAQqB,QACPxJ,EAAAC,qBAAKsB,UAAU,mBACbvB,EAAAC,cAAC6C,EAAGgD,QAAON,MAAO,EAAGgE,OAAO,QAC1BxJ,EAAAC,cAAC6C,EAAGiD,QAAOtF,KACLrB,GACJwB,aACAf,KAAK,OACL8F,QACE3F,EAAAC,cAAC6C,EAAGC,QACF0C,SAAUwC,EAAgB,EAC1BjF,KAAMhD,EAAAC,cAACmD,QACPC,MAtDL,WACfiG,GAAK,UA0DOtJ,EAAAC,cAAC6C,EAAGgD,QAAON,MAAO,EAAGgE,OAAO,SAC1BxJ,EAAAC,cAAC6C,EAAGiD,QAAOtF,KACLrB,GACJwB,aACAf,KAAK,QACL8F,QACE3F,EAAAC,cAAC6C,EAAGC,QACF0C,SAAUwC,EAAgBI,EAAKhE,OAAS,EACxCrB,KAAMhD,EAAAC,cAACmD,QACPC,MAhET,WACXiG,EAAI,uBCnGgBK,EAAQvK,GAC9B,IAAIC,EAAeD,EAAMC,MAIzB,OAHiBA,EAAMkI,WACThI,QAAMqK,OAAOvK,EAAMoD,SAASoH,SAEnC7J,EAAAC,qBAAKsB,UAAU,2BCNAuI,EAAa1K,GAKnC,OACEY,MAAAC,cAACsG,oBAAiBC,QALA,WAClBC,UAAQC,QAAQ,8BAKd1G,MAAAC,cAAC+F,QAAKvE,MAAOkF,EAAOC,MAAM,4CAKhC,IAAMD,EAAS,CACbC,KAAM,aCZgBmD,EAAU3J,GAKhC,OACEJ,MAAAC,cAAAD,MAAAE,cACEF,MAAAC,cAAC6J,EAAYrJ,KANJL,EAAb4J,cACU5J,EAAV6J,uBCDsBC,EAAY9K,GAClC,IAeM6E,EAdF5E,EAAQD,EAAMC,MACdsD,EAAQvD,EAAMuD,MAEdc,EAAMC,YAAUhE,OAAO,MAAO,CAChCiD,MAAAA,EACAc,KAAK,EACLE,QAAStE,EAAMoD,SAASkB,QACxB9C,OAAQxB,EAAM4D,WACdW,KATUxE,EAAMmD,QAYbwB,EAAYzE,WAAS,IAAI2C,QAAM5C,EAAMoD,SAAUpD,EAAOoE,OAe3D,OACEzD,EAAAC,qBAAKsB,WAbD0C,EAAIF,EAASvC,cAAc,OAE/ByC,GAAQ,kBAGNA,GADEtB,EAAQ,GAAK,EACP,OAEA,OAM0BlB,MAAOsC,EAASrC,SAAS,QAC3D1B,EAAAC,cAACd,EAAUsB,GAACG,cAAcxB,GAAOO,KAAM8D,IACpCrE,EAAMsB,oBChCSyJ,EAAS/K,GAC/B,IAAIC,EAAeD,EAAMC,MACrBiI,EAAajI,EAAMkI,WAEvB,OACEvH,MAAAC,qBACEsB,UAAWlC,EAAMmC,cAAc,SAC/BC,MAAOpC,EAAMqC,SAAS,UAErB4F,EAAMpG,KAAI,SAACuC,EAAUgB,GAAS,OAC7BzE,MAAAC,cAACiK,EAAWzJ,KACNrB,GACJyD,IAAK,IAAM4B,EACXpF,MAAOA,EACPkD,MAAOkB,EACPd,MAAO8B,kBChBO2F,EAAKhL,GAK3B,OACEY,MAAAC,cAACsG,oBAAiBC,QALA,WAClBC,UAAQC,QAAQ,8BAKd1G,MAAAC,cAAC+F,QAAKvE,MAAOkF,EAAOC,MAAM,4CAKhC,IAAMD,EAAS,CACbC,KAAM,aCbgB7D,EAAO3D,GAK7B,OACEY,MAAAC,cAACsG,oBAAiBC,QALA,WAClBC,UAAQC,QAAQ,8BAKd1G,MAAAC,cAAC+F,QAAKvE,MAAOkF,EAAOC,MAAM,4CAKhC,IAAMD,EAAS,CACbC,KAAM,aCbgBlB,EAAOtG,GAK7B,OACEY,MAAAC,cAACsG,oBAAiBC,QALA,WAClBC,UAAQC,QAAQ,8BAKd1G,MAAAC,cAAC+F,QAAKvE,MAAOkF,EAAOC,MAAM,4CAKhC,IAAMD,EAAS,CACbC,KAAM,aCbgByD,EAAOjL,GAK7B,OACEY,MAAAC,cAACsG,oBAAiBC,QALA,WAClBC,UAAQC,QAAQ,8BAKd1G,MAAAC,cAAC+F,QAAKvE,MAAOkF,EAAOC,MAAM,4CAKhC,IAAMD,EAAS,CACbC,KAAM,aCbgB0D,EAAOlL,GAK7B,OACEY,MAAAC,cAACsG,oBAAiBC,QALA,WAClBC,UAAQC,QAAQ,8BAKd1G,MAAAC,cAAC+F,QAAKvE,MAAOkF,EAAOC,MAAM,4CAKhC,IAAMD,EAAS,CACbC,KAAM,aCbgB2D,EAAMnL,GAK5B,OACEY,MAAAC,cAACsG,oBAAiBC,QALA,WAClBC,UAAQC,QAAQ,8BAKd1G,MAAAC,cAAC+F,QAAKvE,MAAOkF,EAAOC,MAAM,4CAKhC,IAAMD,EAAS,CACbC,KAAM,aCbgB4D,EAAMpL,GAK5B,OACEY,MAAAC,cAACsG,oBAAiBC,QALA,WAClBC,UAAQC,QAAQ,8BAKd1G,MAAAC,cAAC+F,QAAKvE,MAAOkF,EAAOC,MAAM,4CAKhC,IAAMD,EAAS,CACbC,KAAM,aCWgBvF,EAAUjC,GAChC,IAAKC,EAASC,WAASG,aAAWC,OAAON,OACzCkJ,EAAwBhJ,WAAS,GAA5BqD,EAAK2F,KAAE1F,EAAQ0F,KACpBmC,EAAsCnL,WAAS,MAA1CoL,EAAKD,KAAEE,EAAQF,KAChBG,EAAevL,EAAMwL,aACrBlL,EAAaJ,QAAMC,IAAIJ,EAAMO,KAAMN,EAAMM,MACzC8C,EAAWpD,EAAMoD,SACjBlC,EAAOkC,EAASlC,KAChBuK,EAAMC,SAAO,MAEjB1L,EAAM2L,OAAS,WACbpI,IAAWD,IAGb,IAAIsI,EAAc,CAChBC,KAAM7D,EACN8D,KAAM9D,EACNpB,MAAOY,EACPuE,KAAMrD,EACNsD,OAAQlB,EACR9B,KAAML,EACNsD,MAAO3B,GAGL4B,EAAgB,WAClB,OAAIN,EAAO1K,GAGFP,EAAAC,cAFGgL,EAAO1K,GAENE,GAACd,KAAMA,GAAUP,GAAOC,MAAOA,KAErCW,EAAAC,cAAAD,EAAAE,gBAGHI,EAAS,WACb,IAAIkL,EAAS/I,EAASgJ,OAEtB,OAAID,EAGExL,EAAAC,cAACoB,EAFY,iBAANmK,GAGLrD,QAAS,CAAE5F,MAAOiJ,EAAGjL,KAAM,SAC3BZ,KAAMA,GAMAc,GACRF,KAAMiL,EAAEjL,KACRsH,IAAK2D,EAAEjL,MACHiL,EAAEpM,OACNO,KAAMA,KAKLK,EAAAC,cAAAD,EAAAE,gBAGT,GAAIb,EAAM6H,GAAG,OAAQ,SACnB,OAAOlH,EAAAC,cAAAD,EAAAE,cAAGb,EAAMqM,mBAGlB,IAOIC,EAAW,SAACC,GACd,IAAIC,EAAMD,EAAEE,OAAOvJ,MAEflD,EAAM0M,OAAO,UAAW,MAAO,UACjCF,EAAMG,SAASH,GACNxM,EAAM0M,OAAO,aACtBF,EAAMI,WAAWJ,IAGfxM,EAAM0M,OAAO,SAAU,cACzBF,EAAMxM,EAAM6M,gBAAgBL,IAG9BxM,EAAMyJ,YAAY+C,GAClBxM,EAAM2L,UAGJtB,EAAU,SAACkC,GACbvM,EAAM8M,KAAK,UAGTnC,EAAqB,CACvB/D,MAAO5G,EAAM+H,WACb7E,MAAOlD,EAAM+M,WACbT,SAAUA,GAGRtM,EAAM0M,OAAO,cACf/B,EAAczJ,KAAO,YAGvB,IAAI8L,EAAUhN,EAAMqC,SAAS,WAEzBuI,EAAkB,CACpBqC,SAAUjN,EAAMkN,aAChBzH,KAAM,QACNrD,MAAO4K,EACPnG,YAAa7G,EAAMgG,KAAK,cAAe,gBAiBzC,IAAKhG,EAAMmN,cAAgBnN,EAAM6H,GAAG,OAAQ,UAC1C,OAAOlH,EAAAC,cAAAD,EAAAE,eAGTb,EAAMqL,MAAQ,SAAC+B,GACb/B,EAAQ+B,EACR9B,EAAS8B,IAGXC,aAAU,WACHrN,EAAMsN,QACTtN,EAAMsN,OAAQ,EAEdtN,EAAM8M,KAAK,QAEP9M,EAAM0M,OAAO,OAAQ,UACvB1M,EAAMuN,SACGnK,EAASyI,MAClB7L,EAAM8M,KAAK,QAEb9M,EAAMwN,YAIV,IAAM5F,EAAa,WACjB,MAA6B,iBAAlBxE,EAASO,KACXhD,EAAAC,cAACqG,OAAMjH,EAAM8H,WAEfnH,EAAAC,cAAAD,EAAAE,cAAGuC,EAASO,OAGf8J,EAAgB,SAACvM,GACrB,IAAIwM,gBAAqBxM,UAMzB,OALWlB,EAAM8H,YAGf4F,EAAOA,iBAAsBxM,WAExBwM,GAYT,GAJA1N,EAAM2N,KAAO,SAACC,GACZxG,UAAQC,QAAQuG,EAAKC,MAGnB7N,EAAM0M,OAAO,UAAW,CAC1B,IAAIlM,EAAO4C,EAAS5C,KAEpB,IAAKF,EAAKwN,QAAQtN,GAAO,CACvB,IAAIuN,EAAW,CAAEC,OAAM5M,KAAOgC,GAE9B2K,UAAgB,SAACH,GACf,OAAOjN,EAAAC,cAACd,EAAUsB,KAAKrB,GAAOC,MAAOA,EAAOM,KAAMA,OAGpDA,EAAKwN,QAAQtN,GAAQuN,EAEvB,OAAOpN,EAAAC,cAAAD,EAAAE,eA0BT,OAvBAoN,mBAAgB,WACd,SAAIxC,GAAAA,EAAKyC,SAAWlO,EAAM6H,GAAG,OAAQ,OAAQ,OAAQ,OAAQ,WAAY,CACvE,IAAIsG,QAAU1C,SAAAA,EAAKyC,QAEnB,GAAIC,EAAI,CACN,IAAIC,EAAKC,YAAUC,WAAWH,GAG5BA,EAAGI,UAAUC,IADJ,uBAAPJ,EACe,UAEA,iBAcvBzN,EAAAC,cAAAD,EAAAE,cACEF,EAAAC,qBACEsB,UAAW,SAAWlC,EAAMmC,gBAC5BsJ,IAAKA,EACLrJ,MAAOpC,EAAMqC,gBApGbrC,EAAMU,WAIFR,QAAMoB,QAAQvB,EAAMsB,WAAcnB,QAAMoB,QAAQvB,EAAM2B,YA6C1DkK,EAAO1K,KAsDLP,EAAAC,cAAAD,EAAAE,cACEF,EAAAC,qBACEsB,UAAWlC,EAAMmC,cAAc,SAC/BC,MAAOpC,EAAMqC,SAAS,UAErBrC,EAAM6H,GAAG,OAAQ,WAChBlH,EAAAC,cAAC8C,EAAMtC,KACDwJ,GACJP,QAASA,EACTtE,QAAS/F,EAAMgG,KAAK,UAAW,cAE9B5C,EAASO,MAAQhD,EAAAC,cAACgH,QAClBxE,EAASwD,OACRjG,EAAAC,sBAAMsB,UAAWuL,EAAc,WAC5BzN,EAAM+H,aAKd/H,EAAM6H,GAAG,OAAQ,SAChBlH,EAAAC,cAACqG,EAAI7F,KACCwJ,GACJP,QAASA,EACTtE,QAAS/F,EAAMgG,KAAK,UAAW,cAE9BhG,EAAMqM,mBAGVrM,EAAM6H,GAAG,OAAQ,SAChBlH,EAAAC,cAACmK,EAAI3J,KACCwJ,GACJP,QAASA,EACTtE,QAAS/F,EAAMgG,KAAK,UAAW,cAE9B5C,EAASO,MAAQhD,EAAAC,cAACgH,QAClBxE,EAASwD,OACRjG,EAAAC,sBAAMsB,UAAWuL,EAAc,SAC5BzN,EAAM+H,aAKd/H,EAAM6H,GACL,OACA,OACA,SACA,QACA,aACA,QACA,WACA,UAEAlH,EAAAC,cAACuK,EAAK/J,KACAuJ,EACAC,GACJ6D,WAAUrN,KAAOgC,EAASsL,eAG7B1O,EAAM6H,GAAG,OAAQ,WAAY,iBAC5BlH,EAAAC,cAAC8J,GACC1K,MAAOA,EACP2K,cAAeA,EACfC,WAAYA,IAGf5K,EAAM6H,GAAG,OAAQ,WAAY,UAAW,WACvClH,EAAAC,cAACoK,EAAM5J,GACLuN,SA9KD,IAFL3O,EAAM+M,YAiLIpC,GACJ2B,SAlOF,WACZ,IAAIsC,EAAI5O,EAAM+M,WAGdT,EAAS,CAAEG,OAAQ,CAAEvJ,SAFD,IAAN0L,UAmOH5O,EAAM6H,GAAG,OAAQ,WAChBlH,EAAAC,cAACyF,EAAMjF,KACDuJ,EACAC,GACJ1H,MAAOlD,EAAM6O,qBAEblO,EAAAC,cAACqK,GAAO/H,MAAO,IAAI,aAClBqI,EAAQ1J,KAAI,SAACuC,EAAUgB,GAAS,OAC/BzE,EAAAC,cAACqK,GAAOzH,IAAK,IAAM4B,EAAGlC,MAAOkB,EAAIlB,OAC9BkB,EAAIwC,WAKZ5G,EAAM6H,GAAG,OAAQ,UAChBlH,EAAAC,cAACsK,EAAK9J,KAAKuJ,EAAmBC,GAAYxG,SACvCmH,EAAQ1J,KAAI,SAACuC,EAAUgB,GAAS,OAC/BzE,EAAAC,cAACqK,GACCzH,IAAK,IAAM4B,EACX0J,QAASnO,EAAAC,cAACsK,EAAUN,GACpBhE,MAAOxC,EAAIwC,MACX1D,MAAOkB,EAAIlB,YAKlBlD,EAAM6H,GAAG,OAAQ,WAAalH,EAAAC,cAACK,QAC/BjB,EAAM6H,GAAG,OAAQ,WAChBlH,EAAAC,cAAAD,EAAAE,cACGb,EAAM6H,GAAG,SAAU,QAClBlH,EAAAC,qBAAKmO,IAAK/O,EAAMqM,oBAEjBrM,EAAM6H,GAAG,SAAU,SAClBlH,EAAAC,mBAAGsB,UAAWlC,EAAMqM,qBAEpBrM,EAAM6H,GAAG,SAAU,OAAQ,QAC3BlH,EAAAC,0BAAOZ,EAAMqM,oBAIlBrM,EAAM6H,GAAG,OAAQ,WAChBlH,EAAAC,0BAAOZ,EAAMqM,oBAGhBhB,GAAS1K,EAAAC,qBAAKsB,UAAU,YAAYmJ,IAGzC1K,EAAAC,cAACsL,SACClM,EAAM6H,GACN,OACA,OACA,OACA,OACA,OACA,SACA,WACGlH,EAAAC,cAACd,EAAUsB,KAAKrB,GAAOC,MAAOA,EAAOM,KAAMA,sBCzWlDmD,EAAK,CACTuL,KAAM,SAACjP,GAAe,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,WACtD+N,OAAQ,SAAClP,GAAe,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,aACxD4F,OAAQ,SAAC/G,GAAiB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,aAC1DwF,QAAS,SAAC3G,GAAiB,OAAKY,MAAAC,cAACwH,EAAcrI,IAC/CmP,OAAQ,SAAFnO,OAAyBhB,6IAAKoP,CAAApO,EAAAqO,GAAA,OAClCzO,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,aAE7BiK,MAAO,SAACpL,GAAgB,OAAKY,MAAAC,cAACoB,EAAcjC,IAC5C4G,KAAM,SAAC5G,GAAgB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,WACvDmO,MAAO,SAACtP,GAAgB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,YACxDwC,OAAQ,SAAC3D,GAAiB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,aAC1D6J,KAAM,SAAChL,GAAe,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,WACtD+F,KAAM,SAAClH,GAAiB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,WACxDuF,OAAQ,SAAC1G,GAAoB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,aAC7DoO,KAAM,SAACvP,GAAoB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,WAC3DqO,KAAM,SAACxP,GAAoB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,WAC3DsO,KAAM,SAACzP,GAAoB,OACzBY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,OAAOK,iBAEpCkO,OAAQ,SAAC1P,GAAoB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,aAC7DwO,OAAQ,SAAC3P,GAAoB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,aAC7DyO,QAAS,SAAC5P,GAAoB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,cAC9D0O,IAAK,SAAC7P,GAAoB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,UAC1D2O,KAAM,SAAC9P,GAAoB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,WAC3D4O,IAAK,SAAC/P,GAAoB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,UAC1D6O,KAAM,SAAChQ,GAAe,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,WACtD8O,KAAM,SAACjQ,GAAoB,OACzBY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,MAAMiJ,OAAO,WAE1C8F,QAAS,SAAClQ,GAAe,OACvBY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,OAAOiJ,OAAO,cAE3C+F,MAAO,SAACnQ,GAAgB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,YACxDiP,MAAO,SAACpQ,GAAgB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,YACxDkP,SAAU,SAACrQ,GAAgB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,eAC3DmP,SAAU,SAACtQ,GAAgB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,eAC3DoP,SAAU,SAACvQ,GAAgB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,eAC3DgK,MAAO,SAACnL,GAAoB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,YAC5DmF,OAAQ,SAACtG,GAAoB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,aAC7DqP,OAAQ,SAACxQ,GAAoB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK,aAC7DsP,QAAS,SAACzQ,GAAoB,OAAKY,MAAAC,cAACoB,EAASZ,KAAKrB,GAAOmB,KAAK"}
|
|
@@ -312,38 +312,38 @@ function ElGridPaginator(_ref) {
|
|
|
312
312
|
|
|
313
313
|
function ElGridTop(props) {
|
|
314
314
|
var scope = props.scope;
|
|
315
|
-
return /*#__PURE__*/React
|
|
315
|
+
return /*#__PURE__*/React.createElement(React.Fragment, null, /*#__PURE__*/React.createElement(UI.Output, {
|
|
316
316
|
styleClass: "ui-grid-top"
|
|
317
|
-
}, /*#__PURE__*/React
|
|
317
|
+
}, /*#__PURE__*/React.createElement(UI.Output, {
|
|
318
318
|
field: "search",
|
|
319
319
|
position: "left",
|
|
320
320
|
space: 4
|
|
321
|
-
}, /*#__PURE__*/React
|
|
321
|
+
}, /*#__PURE__*/React.createElement(UI.Include, _extends({}, props, {
|
|
322
322
|
"transient": true,
|
|
323
323
|
name: "top",
|
|
324
324
|
position: "left"
|
|
325
|
-
})), /*#__PURE__*/React
|
|
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
|
|
330
|
+
}, /*#__PURE__*/React.createElement(UI.Define, {
|
|
331
331
|
name: "right"
|
|
332
|
-
}, /*#__PURE__*/React
|
|
332
|
+
}, /*#__PURE__*/React.createElement(UI.Button, {
|
|
333
333
|
field: "search",
|
|
334
|
-
icon: /*#__PURE__*/React
|
|
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
|
|
339
|
+
})))), /*#__PURE__*/React.createElement(UI.Output, {
|
|
340
340
|
position: "right",
|
|
341
341
|
space: 8
|
|
342
|
-
}, /*#__PURE__*/React
|
|
342
|
+
}, /*#__PURE__*/React.createElement(UI.Include, _extends({}, props, {
|
|
343
343
|
"transient": true,
|
|
344
344
|
name: "top",
|
|
345
345
|
position: "right"
|
|
346
|
-
})), /*#__PURE__*/React
|
|
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
|
|
381
|
+
return /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
382
382
|
onPress: handlePress
|
|
383
|
-
}, /*#__PURE__*/React
|
|
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
|
|
439
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
440
440
|
className: scope.getStyleClass('inner'),
|
|
441
441
|
style: scope.getStyle('inner')
|
|
442
|
-
}, /*#__PURE__*/React
|
|
442
|
+
}, /*#__PURE__*/React.createElement(ElLabel, _extends({}, props, {
|
|
443
443
|
scope: scope,
|
|
444
444
|
position: "outside"
|
|
445
|
-
})), /*#__PURE__*/React
|
|
445
|
+
})), /*#__PURE__*/React.createElement("div", {
|
|
446
446
|
className: scope.getStyleClass('child'),
|
|
447
447
|
style: scope.getStyle('child')
|
|
448
|
-
}, /*#__PURE__*/React
|
|
448
|
+
}, /*#__PURE__*/React.createElement(ElLabel, _extends({}, props, {
|
|
449
449
|
scope: scope,
|
|
450
450
|
position: "inside"
|
|
451
|
-
})), /*#__PURE__*/React
|
|
451
|
+
})), /*#__PURE__*/React.createElement("div", {
|
|
452
452
|
className: "ui-data"
|
|
453
|
-
}, /*#__PURE__*/React
|
|
453
|
+
}, /*#__PURE__*/React.createElement(ElGridTop, _extends({}, props, {
|
|
454
454
|
scope: scope
|
|
455
|
-
})), /*#__PURE__*/React
|
|
455
|
+
})), /*#__PURE__*/React.createElement(ElGridFilter, {
|
|
456
456
|
scope: scope
|
|
457
|
-
}), /*#__PURE__*/React
|
|
457
|
+
}), /*#__PURE__*/React.createElement("div", {
|
|
458
458
|
className: "ui-grid-data"
|
|
459
|
-
}, /*#__PURE__*/React
|
|
459
|
+
}, /*#__PURE__*/React.createElement("table", {
|
|
460
460
|
className: "ui-grid ui-table"
|
|
461
|
-
}, /*#__PURE__*/React
|
|
462
|
-
return /*#__PURE__*/React
|
|
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
|
|
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
|
|
503
|
+
return /*#__PURE__*/React.createElement("div", {
|
|
504
504
|
className: scope.getStyleClass('inner'),
|
|
505
505
|
style: scope.getStyle('inner')
|
|
506
|
-
}, /*#__PURE__*/React
|
|
506
|
+
}, /*#__PURE__*/React.createElement(ElLabel, _extends({}, props, {
|
|
507
507
|
scope: scope
|
|
508
|
-
})), /*#__PURE__*/React
|
|
508
|
+
})), /*#__PURE__*/React.createElement(UIChildren, _extends({}, props, {
|
|
509
509
|
scope: scope
|
|
510
|
-
})), /*#__PURE__*/React
|
|
510
|
+
})), /*#__PURE__*/React.createElement("div", {
|
|
511
511
|
className: scope.getStyleClass('bottom'),
|
|
512
512
|
style: scope.getStyle('bottom')
|
|
513
|
-
}, /*#__PURE__*/React
|
|
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
|
|
674
|
+
return /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
675
675
|
onPress: handlePress
|
|
676
|
-
}, /*#__PURE__*/React
|
|
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
|
|
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
|
|
743
|
+
return /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
744
744
|
onPress: handlePress
|
|
745
|
-
}, /*#__PURE__*/React
|
|
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
|
|
757
|
+
return /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
758
758
|
onPress: handlePress
|
|
759
|
-
}, /*#__PURE__*/React
|
|
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
|
|
771
|
+
return /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
772
772
|
onPress: handlePress
|
|
773
|
-
}, /*#__PURE__*/React
|
|
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
|
|
785
|
+
return /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
786
786
|
onPress: handlePress
|
|
787
|
-
}, /*#__PURE__*/React
|
|
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
|
|
799
|
+
return /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
800
800
|
onPress: handlePress
|
|
801
|
-
}, /*#__PURE__*/React
|
|
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
|
|
813
|
+
return /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
814
814
|
onPress: handlePress
|
|
815
|
-
}, /*#__PURE__*/React
|
|
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
|
|
827
|
+
return /*#__PURE__*/React.createElement(TouchableOpacity, {
|
|
828
828
|
onPress: handlePress
|
|
829
|
-
}, /*#__PURE__*/React
|
|
829
|
+
}, /*#__PURE__*/React.createElement(Text, {
|
|
830
830
|
style: styles$8.link
|
|
831
831
|
}, "Clique aqui para acessar o React Native"));
|
|
832
832
|
}
|