react-crud-mobile 1.0.70 → 1.0.71
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/react-crud-mobile.cjs.development.js +6 -6
- 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 +6 -6
- package/dist/react-crud-mobile.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/elements/UIElement.tsx +4 -4
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("react"),n=e(t),i=require("react-crud-utils"),r=require("react/jsx-runtime"),s=e(require("@expo/vector-icons/Ionicons")),l=require("react-native"),a=require("@expo/vector-icons");function c(){return(c=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)({}).hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(null,arguments)}function o(e){var s=t.useState(i.Utils.nvl(e.scope,i.ScopeUtils.create(e)))[0],l=i.Utils.nvl(e.crud,s.crud),a=i.Utils.nvl(e.validateScope,"global"),u=i.Utils.nvl(e.part,"child");if(s.isInput())return r.jsx(r.Fragment,{});var d=function(e){var t=e.child;if(!t)return r.jsx(r.Fragment,{});if("string"==typeof t)return r.jsx(r.Fragment,{children:t});var n=t.type,u=c({},t.props);return delete u.children,"string"==typeof n?i.Utils.isEmpty(t.props.children)?r.jsx(n,c({},u)):r.jsx(n,c({},u,{children:r.jsx(o,c({transient:!0,validateScope:a},t.props,{scope:s,crud:l}))})):"function"==typeof n?r.jsx(n,c({validateScope:a},t.props,{parent:s,crud:l})):i.Utils.isEmpty(t.props.children)?r.jsx(r.Fragment,{}):r.jsx(o,c({validateScope:a},t.props,{scope:s,crud:l,transient:!0}))},p=function(){return r.jsx(r.Fragment,e.elements?{children:Object.entries(e.elements).map((function(e,t){return r.jsx(H,c({crud:l},e[1]))}))}:{children:n.Children.map(e.children,(function(e){return r.jsx(d,{child:e})}))})};return e.transient?r.jsx(p,{}):i.Utils.isEmpty(e.children)&&i.Utils.isEmpty(e.elements)?r.jsx(r.Fragment,{}):r.jsx(r.Fragment,{children:r.jsx("div",c({className:s.getStyleClass(u),style:s.getStyle(u)},e.childProps,{children:r.jsx(p,{})}))})}function u(e){var n,s=e.scope,l=i.Utils.nvl(null==(n=e.column)?void 0:n.props,{}),a=t.useState(new i.Scope(l,s,s.crud))[0];return r.jsx("td",{className:"ui-grid-col "+i.Utils.nvl(e.styleClass,"")+" "+a.getStyleClass("column"),style:a.getStyle("column"),colSpan:e.colspan,children:r.jsx(o,{scope:s,children:e.children})})}function d(e){var n,l=e.scope,a=e.value,c=e.rowIndex,o=l.original,u=t.useState(0),d=u[0],p=u[1],x=l.key("check",c,"s",d);return r.jsx(_.Button,{icon:(n=l.crudSearch,n&&(n.selecteds||(n.selecteds={}),i.Utils.nvl(o.itemValue,"id")),r.jsx(s,{})),click:{action:function(){var e=l.crudSearch;if(e){e.selecteds||(e.selecteds={});var t=i.Utils.nvl(o.itemValue,"id"),n=a[t];void 0!==n&&(void 0===e.selecteds[n]?e.selecteds[n]=a:delete e.selecteds[n])}p(++d)}}},x)}function p(e){var n=e.expansion,l=e.value,a=e.scope,p=e.index,x=a.original,j=i.CrudUtils.create("row",{index:p,row:!0,itemVar:a.original.itemVar,parent:a.crudSearch,data:l}),f=t.useState(!1),h=f[0],m=f[1],g=t.useState(new i.Scope(a.original,a,j))[0],y=function(){var e="ui-grid-row";return(e+=" ui-grid-row-")+(p%2==0?"even":"odd")},v=i.ComponentUtils.getChild(e,"Column"),b=v.length,S=function(){return r.jsxs(r.Fragment,{children:[!h&&r.jsx(s,{}),h&&r.jsx(s,{})]})},k=!i.Utils.isEmpty(n),C=x.multiple;return k&&b++,C&&b++,r.jsxs(r.Fragment,{children:[r.jsxs("tr",{className:y(),style:g.getStyle("row"),children:[k&&r.jsx(u,{scope:g,styleClass:"ui-click ui-icon-only ui-expansion",children:r.jsx(_.Button,{icon:r.jsx(S,{}),click:function(){m(!h)}})},"r"+p+"e"),C&&r.jsx(u,{scope:g,styleClass:"ui-click ui-icon-only ui-multiple",children:r.jsx(d,{scope:a,value:l,rowIndex:p},"check-"+p)},"r"+p+"c"),v.map((function(e,t){return r.jsx(u,{column:e,scope:g,children:e},"r"+p+"c"+t)}))]}),h&&r.jsx("tr",{className:y(),style:g.getStyle("row"),children:r.jsx(u,{scope:g,colspan:b,children:r.jsx(o,c({},e,{crud:j,children:n}))},"r"+p+"-expanded")})]})}function x(e){var n=e.scope,l=e.next,a=e.previous,o=e.first,u=e.size,d=e.last,p=e.position,x=t.useState([10,20,30,50,100,200,500])[0],j={crud:n.crudSearch,owner:n,variant:n.attr("variant","text")};return i.Utils.nvl(n.original.paginatorPosition,"bottom")!==p?r.jsx(r.Fragment,{}):r.jsxs(r.Fragment,{children:[r.jsx(_.Button,c({field:"first",space:0,rendered:!1!==o},j,{click:"first",icon:r.jsx(s,{})})),r.jsx(_.Button,c({field:"previous",space:0,rendered:!1!==a,click:"previous"},j,{icon:r.jsx(s,{})})),r.jsx(_.Select,c({field:"size",space:0,rendered:!1!==u,default:10},j,{data:x,change:"search"})),r.jsx(_.Button,c({field:"next",space:0,rendered:!1!==l},j,{click:"next",icon:r.jsx(s,{})})),r.jsx(_.Button,c({field:"last",space:0,rendered:!1!==d},j,{click:"last",icon:r.jsx(s,{})}))]})}function j(e){var t=e.scope;return r.jsx(r.Fragment,{children:r.jsxs(_.Output,{styleClass:"ui-grid-top",children:[r.jsxs(_.Output,{field:"search",position:"left",space:4,children:[r.jsx(_.Include,c({},e,{transient:!0,name:"top",position:"left"})),r.jsx(_.Text,{field:"query",space:0,label:"Pesquisar",placeholder:t.attr("placeholder","Pesquisar"),children:r.jsx(_.Define,{name:"right",children:r.jsx(_.Button,{field:"search",icon:r.jsx(s,{}),space:0,variant:"text",owner:t,click:"search"})})})]}),r.jsxs(_.Output,{position:"right",space:8,children:[r.jsx(_.Include,c({},e,{transient:!0,name:"top",position:"right"})),r.jsx(x,{scope:t,last:!1,first:!1,position:"top"})]})]})})}function f(e){return r.jsx(r.Fragment,{})}function h(e){var t=e.scope,n=e.children;return r.jsx("div",{className:"ui-grid-bottom",children:r.jsxs("div",{className:"ui-grid-bottom-inner",children:[r.jsx(_.Include,c({},e,{transient:!0,name:"bottomLeft"})),r.jsx(x,{scope:t,position:"bottom",children:n}),r.jsx(_.Include,c({},e,{transient:!0,name:"bottomRight"}))]})})}function m(e){return r.jsx(l.TouchableOpacity,{onPress:function(){l.Linking.openURL("https://reactnative.dev/")},children:r.jsx(l.Text,{style:g.link,children:"Clique aqui para acessar o React Native"})})}var g={link:{}};function y(e){var t=e.scope,n=t.original,s=i.Utils.nvl(n.labelPos,"outside"),l=i.Utils.nvl(e.position,"outside");if(s!=l)return r.jsx(r.Fragment,{});var a=function(){return t.is("type","list","grid")?r.jsx("div","string"==typeof n.icon?{className:"ui-label-icon",children:r.jsx(m,{className:t.getIcon()})}:{className:"ui-label-icon",children:n.icon}):r.jsx(r.Fragment,{})},o=t.getLabel();return r.jsxs("div",{className:"ui-label ui-label-"+l,children:[r.jsxs("div",{className:"ui-label-left",children:[r.jsx(_.Include,c({},e,{transient:!0,name:"label",position:"left"})),r.jsx(a,{}),o&&r.jsx("div",{className:"ui-label-value",children:o})]}),r.jsx("div",{className:"ui-label-right",children:r.jsx(_.Include,c({},e,{transient:!0,name:"label",position:"right"}))})]})}function v(e){var n=e.scope,s=n.getItems(),l=i.ComponentUtils.getDefine(e,"expansion");return r.jsxs("div",{className:n.getStyleClass("inner"),style:n.getStyle("inner"),children:[r.jsx(y,c({},e,{scope:n,position:"outside"})),r.jsxs("div",{className:n.getStyleClass("child"),style:n.getStyle("child"),children:[r.jsx(y,c({},e,{scope:n,position:"inside"})),r.jsxs("div",{className:"ui-data",children:[r.jsx(j,c({},e,{scope:n})),r.jsx(f,{scope:n}),r.jsx("div",{className:"ui-grid-data",children:r.jsx("table",{className:"ui-grid ui-table",children:r.jsx("tbody",{children:s.map((function(i,r){return t.createElement(p,c({},e,{expansion:l,key:"r"+r,scope:n,value:i,index:r}))}))})})})]}),r.jsx(h,c({},e,{scope:n}))]})]})}function b(e){if(!1===e.rendered)return r.jsx(r.Fragment,{});var t=i.ComponentUtils.getDefine(e,e.name,e.position);return i.Utils.isEmpty(t)&&(t=e.default),i.Utils.isEmpty(t)?r.jsx(r.Fragment,{children:t}):r.jsx((function(t){var n=e.tag;return i.Utils.isEmpty(n)?r.jsx(r.Fragment,{children:t.children}):r.jsx(n,c({},t,{children:t.children}))}),c({},e.tagProps,{children:r.jsx(o,c({transient:!0},e,{scope:e.scope,crud:e.crud,part:e.name,children:t}))}))}function S(e){var t=e.scope;return r.jsxs("div",{className:t.getStyleClass("inner"),style:t.getStyle("inner"),children:[r.jsx(y,c({},e,{scope:t})),r.jsx(o,c({},e,{scope:t})),r.jsx("div",{className:t.getStyleClass("bottom"),style:t.getStyle("bottom"),children:r.jsx(b,c({},e,{scope:t,name:"bottom"}))})]})}function k(e){var l=e.scope,a=t.useState(0),u=a[0],d=a[1],p=l.original,x=l.getItems(),j=0,f=[],h=t.useState(null),m=h[0],g=h[1],y=function(e,t){void 0===t&&(t=!0),e&&l.execute({event:{validate:t,validateScope:p.validateScope,action:function(){l.changeValue(e.data),m=e,d(u=e.index),g(e)}}})},v=function(e){var t,n="ui-tabs-item ui-click";return(null==(t=m)?void 0:t.index)===e.index&&(n+=" ui-tab-selected"),n},b=function(e,t){var n=c({},e.props);t||(t=l.crud.data);var r=i.CrudUtils.create("tabs",{data:t,changed:t,parent:l.crud}),s=i.Utils.resolve(n,r);!1!==s.rendered&&f.push(c({},s,{child:e,element:s,original:n,index:j++,data:t}))};n.Children.map(e.children,(function(e,t){if(i.Utils.isEmpty(x))b(e,{});else for(var n in x)b(e,x[n])})),m||y(f[u],!1);var S=function(e){y(f[u+e])},k="stepper"===p.layout;return r.jsx("div",{className:l.getStyleClass("inner"),style:l.getStyle("inner"),children:r.jsxs("div",{className:"ui-tabs-content",children:[r.jsx("div",{className:"ui-tabs-items",children:f.map((function(e,t){return r.jsxs("div",{className:v(e),onClick:function(){y(e)},children:[k&&r.jsx("div",{className:"ui-tab-item-divisor"}),r.jsxs("div",{className:"ui-tab-item-inner",children:[k&&r.jsx("div",{className:"ui-step-line"}),r.jsx("div",{className:"ui-tab-item-label",children:k?e.index+1:e.label})]})]},i.Utils.key(p.id,"tab",t))}))}),m&&r.jsxs(r.Fragment,{children:[k&&r.jsx("div",{className:"ui-tabs-label",children:m.label}),r.jsx("div",{className:"ui-tabs-area",children:r.jsx(o,c({},e,{scope:l,children:m.child}))}),"stepper"===p.layout&&r.jsxs("div",{className:"ui-tabs-actions",children:[r.jsx(_.Output,{space:6,layout:"left",children:r.jsx(_.Include,c({},e,{transient:!0,name:"left",default:r.jsx(_.Button,{rendered:u>0,icon:r.jsx(s,{}),click:function(){S(-1)}})}))}),r.jsx(_.Output,{space:6,layout:"right",children:r.jsx(_.Include,c({},e,{transient:!0,name:"right",default:r.jsx(_.Button,{rendered:u<f.length-1,icon:r.jsx(s,{}),click:function(){S(1)}})}))})]})]})]})})}function C(e){var t=e.scope;return t.getItems(),i.Utils.asList(t.original.columns),r.jsx("div",{className:"ui-chart-data"})}function U(e){return r.jsx(l.TouchableOpacity,{onPress:function(){l.Linking.openURL("https://reactnative.dev/")},children:r.jsx(l.Text,{style:N.link,children:"Clique aqui para acessar o React Native"})})}var N={link:{}};function w(e){return r.jsx(r.Fragment,{children:r.jsx(U,c({},e.defaultsInput,e.defaultsUI))})}function I(e){var n,s=e.scope,l=e.index,a=i.CrudUtils.create("row",{index:l,row:!0,itemVar:s.original.itemVar,parent:s.crudSearch,data:e.value}),u=t.useState(new i.Scope(s.original,s,a))[0];return r.jsx("div",{className:(n=u.getStyleClass("row"),n+=" ui-repeat-row-",n+=l%2==0?"even":"odd"),style:u.getStyle("row"),children:r.jsx(o,c({transient:!0},e,{crud:a,children:e.children}))})}function T(e){var n=e.scope,i=n.getItems();return r.jsx("div",{className:n.getStyleClass("inner"),style:n.getStyle("inner"),children:i.map((function(i,r){return t.createElement(I,c({},e,{key:"r"+r,scope:n,value:i,index:r}))}))})}function F(e){return r.jsx(l.TouchableOpacity,{onPress:function(){l.Linking.openURL("https://reactnative.dev/")},children:r.jsx(l.Text,{style:L.link,children:"Clique aqui para acessar o React Native"})})}var L={link:{}};function q(e){var t=e.scope.original,n=t.color,i=t.label,s=t.icon;n||(n="#55a46f");var o={text:c({color:"#ffffff",lineHeight:30,fontWeight:"500",textAlign:"center"},t.textStyle),inner:c({flex:1,flexDirection:"row",flexWrap:"wrap",textAlign:"center",alignItems:"center",margin:"auto"},t.textStyle),icon:{color:"#fff",fontSize:18,paddingRight:10},button:c({padding:5,alignItems:"center",paddingLeft:10,paddingRight:10,minWidth:200,margin:5,textAlign:"center",verticalAling:"middle",lineHeight:30,borderRadius:20,backgroundColor:n,color:"#ffffff"},t.buttonStyle)};return r.jsx(l.TouchableHighlight,{underlayColor:"transparent",onPress:function(e){"function"==typeof t.click&&t.click(e)},style:o.button,children:r.jsxs(l.View,{style:o.inner,children:[s&&r.jsx(r.Fragment,{children:r.jsx(a.Ionicons,{size:30,style:o.icon,name:s})}),r.jsx(l.Text,{style:o.text,children:i})]})})}function R(e){return r.jsx(l.TouchableOpacity,{onPress:function(){l.Linking.openURL("https://reactnative.dev/")},children:r.jsx(l.Text,{style:V.link,children:"Clique aqui para acessar o React Native"})})}var V={link:{}};function P(e){return r.jsx(l.TouchableOpacity,{onPress:function(){l.Linking.openURL("https://reactnative.dev/")},children:r.jsx(l.Text,{style:O.link,children:"Clique aqui para acessar o React Native"})})}var O={link:{}};function E(e){return r.jsx(l.TouchableOpacity,{onPress:function(){l.Linking.openURL("https://reactnative.dev/")},children:r.jsx(l.Text,{style:D.link,children:"Clique aqui para acessar o React Native"})})}var D={link:{}};function B(e){return r.jsx(l.TouchableOpacity,{onPress:function(){l.Linking.openURL("https://reactnative.dev/")},children:r.jsx(l.Text,{style:W.link,children:"Clique aqui para acessar o React Native"})})}var W={link:{}};function z(e){var n=e.scope,s=i.Utils.nvl(n.getValue(),""),a=n.getLabel(),c=n.getPart("placeholder",null,a),o=t.useState(s),u=o[1];return r.jsx(l.TextInput,{style:A.input,onChangeText:function(e){n.changeValue(e),u(e)},value:o[0],placeholder:c})}var A=l.StyleSheet.create({input:{borderRadius:20,padding:10,paddingLeft:20,paddingRight:20,height:40,borderWidth:1,width:"100%"}});function H(e){var n=t.useState(i.ScopeUtils.create(e))[0],s=t.useState(0),a=s[0],u=s[1],d=t.useState(null),p=d[0],x=d[1],j=n.getOptions(),f=i.Utils.nvl(e.crud,n.crud),h=n.original,g=h.type,b=t.useRef(null);n.update=function(){u(++a)};var U={list:v,grid:v,label:y,card:S,repeat:T,tabs:k,chart:C},N=function(){return U[g]?r.jsx(U[g],c({crud:f},e,{scope:n})):r.jsx(r.Fragment,{})},I=function(){var e=h.custom;return e?r.jsx(H,"string"==typeof e?{element:{value:e,type:"dummy"},crud:f}:c({type:e.type,tag:e.type},e.props,{crud:f})):r.jsx(r.Fragment,{})};if(n.is("type","dummy"))return r.jsx(r.Fragment,{children:n.getDisplayValue()});var L=function(e){var t=e.target.value;n.isType("integer","int","number")?t=parseInt(t):n.isType("decimal")&&(t=parseFloat(t)),n.isType("select","complete")&&(t=n.getSelectedItem(t)),n.changeValue(t),n.update()},V=function(e){n.call("click")},O={label:n.getLabel(),value:n.getValue(),onChange:L};n.isType("password")&&(O.type="password");var D=function(e){var t=i.Utils.nvl(e,"root");return c({},G[t],n.getStyle(e))},W=D("element"),A={required:n.isRequired(),size:"small",scope:n,crud:f,style:W,placeholder:n.attr("placeholder","Digite aqui")};if(!n.isRendered()||n.is("type","define"))return r.jsx(r.Fragment,{});n.error=function(e){p=e,x(e)},t.useEffect((function(){n.ready||(n.ready=!0,n.call("load"),n.isType("list","repeat")?n.search():h.list&&n.call("list"),n.start())}));var M=function(){return"string"==typeof h.icon?r.jsx(m,{children:n.getIcon()}):r.jsx(r.Fragment,{children:h.icon})};if(n.open=function(e){l.Linking.openURL(e.url)},n.isType("dialog")){var _=h.name;if(!f.dialogs[_]){var K={config:c({},h),component:function(t){return r.jsx(o,c({},e,{scope:n,crud:f}))}};f.dialogs[_]=K}return r.jsx(r.Fragment,{})}return t.useLayoutEffect((function(){if(null!=b&&b.current&&n.is("type","card","list","tabs","stepper")){var e=null==b?void 0:b.current;if(e){var t=i.HtmlUtils.getBGColor(e);e.classList.add("rgb(255, 255, 255)"===t?"ui-dark":"ui-light")}}})),r.jsx(r.Fragment,{children:r.jsx(l.View,{ref:b,style:D(),children:r.jsx(l.TouchableWithoutFeedback,{onPress:l.Keyboard.dismiss,accessible:!1,children:r.jsxs(r.Fragment,{children:[void 0!==h.label&&(console.log(h.label),!0)&&r.jsx(l.Text,{style:D("label"),children:n.getLabel()}),!(!(n.isInput()||i.Utils.isEmpty(e.children)&&i.Utils.isEmpty(e.elements))||U[g])&&r.jsxs(r.Fragment,{children:[r.jsxs(l.View,{style:D("inner"),children:[n.is("type","button")&&r.jsxs(q,c({},A,{onClick:V,variant:n.attr("variant","outlined"),children:[h.icon&&r.jsx(M,{}),h.label&&r.jsx(l.Text,{style:n.getPart("label","button"),children:n.getLabel()})]})),n.is("type","icon")&&r.jsx(m,c({},A,{onClick:V,variant:n.attr("variant","outlined"),children:n.getDisplayValue()})),n.is("type","link")&&r.jsxs(F,c({},A,{onClick:V,variant:n.attr("variant","outlined"),children:[h.icon&&r.jsx(M,{}),h.label&&r.jsx(l.Text,{style:n.getPart("label","link"),children:n.getLabel()})]})),n.is("type","text","number","phone","postalCode","money","password","email")&&r.jsx(z,c({},O,A,{InputProps:c({},h.inputProps)})),n.is("type","complete","autocomplete")&&r.jsx(w,{scope:n,defaultsInput:O,defaultsUI:A}),n.is("type","checkbox","boolean","switch")&&r.jsx(P,c({checked:!0===n.getValue()},O,{onChange:function(){var e=n.getValue();L({target:{value:!(!0===e)}})}})),n.is("type","select")&&r.jsxs(R,c({},O,A,{value:n.getSelectedValue(),children:[r.jsx(E,{value:"",children:"Selecione"}),j.map((function(e,t){return r.jsx(E,{value:e.value,children:e.label},"i"+t)}))]})),n.is("type","radio")&&r.jsx(B,c({},O,A,{row:!0,children:j.map((function(e,t){return r.jsx(E,{control:r.jsx(B,c({},A)),label:e.label,value:e.value},"i"+t)}))})),n.is("type","custom")&&r.jsx(I,{}),n.is("type","column")&&r.jsxs(r.Fragment,{children:[n.is("format","img")&&r.jsx(l.Image,{source:n.getDisplayValue()}),n.is("format","icon")&&r.jsx(m,{className:n.getDisplayValue()}),!n.is("format","icon","img")&&r.jsx(l.Text,{children:n.getDisplayValue()})]}),n.is("type","output")&&r.jsx(l.Text,{children:n.getDisplayValue()})]}),p&&r.jsx(l.View,{style:D("error"),children:p})]}),r.jsx(N,{}),!n.is("type","card","tabs","grid","list","define","repeat")&&r.jsx(o,c({},e,{scope:n,crud:f}))]})})})})}var G=l.StyleSheet.create({root:{flex:1,gap:10,flexDirection:"column",flexWrap:"wrap",width:"100%",alignItems:"flex-start"},label:{width:"100%",fontWeight:600},inner:{width:"100%"}}),M=["type"],_={Grid:function(e){return r.jsx(H,c({},e,{type:"list"}))},Repeat:function(e){return r.jsx(H,c({},e,{type:"repeat"}))},Define:function(e){return r.jsx(H,c({},e,{type:"define"}))},Include:function(e){return r.jsx(b,c({},e))},Column:function(e){var t=function(e,t){if(null==e)return{};var n={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(-1!==t.indexOf(i))continue;n[i]=e[i]}return n}(e,M);return r.jsx(H,c({},t,{type:"column"}))},Input:function(e){return r.jsx(H,c({},e))},Text:function(e){return r.jsx(H,c({},e,{type:"text"}))},Email:function(e){return r.jsx(H,c({},e,{type:"email"}))},Button:function(e){return r.jsx(H,c({},e,{type:"button"}))},Link:function(e){return r.jsx(H,c({},e,{type:"link"}))},Icon:function(e){return r.jsx(H,c({},e,{type:"icon"}))},Output:function(e){return r.jsx(H,c({},e,{type:"output"}))},Form:function(e){return r.jsx(H,c({},e,{type:"form"}))},Crud:function(e){return r.jsx(H,c({},e,{type:"crud"}))},View:function(e){return r.jsx(H,c({},e,{type:"view",transient:!0}))},Bottom:function(e){return r.jsx(H,c({},e,{type:"bottom"}))},Dialog:function(e){return r.jsx(H,c({},e,{type:"dialog"}))},Content:function(e){return r.jsx(H,c({},e,{type:"content"}))},Top:function(e){return r.jsx(H,c({},e,{type:"top"}))},Card:function(e){return r.jsx(H,c({},e,{type:"card"}))},Tab:function(e){return r.jsx(H,c({},e,{type:"tab"}))},Tabs:function(e){return r.jsx(H,c({},e,{type:"tabs"}))},Step:function(e){return r.jsx(H,c({},e,{type:"tab",layout:"step"}))},Stepper:function(e){return r.jsx(H,c({},e,{type:"tabs",layout:"stepper"}))},Money:function(e){return r.jsx(H,c({},e,{type:"money"}))},Chart:function(e){return r.jsx(H,c({},e,{type:"chart"}))},Password:function(e){return r.jsx(H,c({},e,{type:"password"}))},Complete:function(e){return r.jsx(H,c({},e,{type:"complete"}))},Checkbox:function(e){return r.jsx(H,c({},e,{type:"checkbox"}))},Radio:function(e){return r.jsx(H,c({},e,{type:"radio"}))},Select:function(e){return r.jsx(H,c({},e,{type:"select"}))},Entity:function(e){return r.jsx(H,c({},e,{type:"entity"}))},Element:function(e){return r.jsx(H,c({},e,{type:"element"}))}};exports.UI=_;
|
|
1
|
+
"use strict";function e(e){return e&&"object"==typeof e&&"default"in e?e.default:e}Object.defineProperty(exports,"__esModule",{value:!0});var t=require("react"),n=e(t),i=require("react-crud-utils"),r=require("react/jsx-runtime"),s=e(require("@expo/vector-icons/Ionicons")),l=require("react-native"),a=require("@expo/vector-icons");function c(){return(c=Object.assign?Object.assign.bind():function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var i in n)({}).hasOwnProperty.call(n,i)&&(e[i]=n[i])}return e}).apply(null,arguments)}function o(e){var s=t.useState(i.Utils.nvl(e.scope,i.ScopeUtils.create(e)))[0],l=i.Utils.nvl(e.crud,s.crud),a=i.Utils.nvl(e.validateScope,"global"),u=i.Utils.nvl(e.part,"child");if(s.isInput())return r.jsx(r.Fragment,{});var d=function(e){var t=e.child;if(!t)return r.jsx(r.Fragment,{});if("string"==typeof t)return r.jsx(r.Fragment,{children:t});var n=t.type,u=c({},t.props);return delete u.children,"string"==typeof n?i.Utils.isEmpty(t.props.children)?r.jsx(n,c({},u)):r.jsx(n,c({},u,{children:r.jsx(o,c({transient:!0,validateScope:a},t.props,{scope:s,crud:l}))})):"function"==typeof n?r.jsx(n,c({validateScope:a},t.props,{parent:s,crud:l})):i.Utils.isEmpty(t.props.children)?r.jsx(r.Fragment,{}):r.jsx(o,c({validateScope:a},t.props,{scope:s,crud:l,transient:!0}))},p=function(){return r.jsx(r.Fragment,e.elements?{children:Object.entries(e.elements).map((function(e,t){return r.jsx(H,c({crud:l},e[1]))}))}:{children:n.Children.map(e.children,(function(e){return r.jsx(d,{child:e})}))})};return e.transient?r.jsx(p,{}):i.Utils.isEmpty(e.children)&&i.Utils.isEmpty(e.elements)?r.jsx(r.Fragment,{}):r.jsx(r.Fragment,{children:r.jsx("div",c({className:s.getStyleClass(u),style:s.getStyle(u)},e.childProps,{children:r.jsx(p,{})}))})}function u(e){var n,s=e.scope,l=i.Utils.nvl(null==(n=e.column)?void 0:n.props,{}),a=t.useState(new i.Scope(l,s,s.crud))[0];return r.jsx("td",{className:"ui-grid-col "+i.Utils.nvl(e.styleClass,"")+" "+a.getStyleClass("column"),style:a.getStyle("column"),colSpan:e.colspan,children:r.jsx(o,{scope:s,children:e.children})})}function d(e){var n,l=e.scope,a=e.value,c=e.rowIndex,o=l.original,u=t.useState(0),d=u[0],p=u[1],x=l.key("check",c,"s",d);return r.jsx(_.Button,{icon:(n=l.crudSearch,n&&(n.selecteds||(n.selecteds={}),i.Utils.nvl(o.itemValue,"id")),r.jsx(s,{})),click:{action:function(){var e=l.crudSearch;if(e){e.selecteds||(e.selecteds={});var t=i.Utils.nvl(o.itemValue,"id"),n=a[t];void 0!==n&&(void 0===e.selecteds[n]?e.selecteds[n]=a:delete e.selecteds[n])}p(++d)}}},x)}function p(e){var n=e.expansion,l=e.value,a=e.scope,p=e.index,x=a.original,j=i.CrudUtils.create("row",{index:p,row:!0,itemVar:a.original.itemVar,parent:a.crudSearch,data:l}),f=t.useState(!1),h=f[0],m=f[1],g=t.useState(new i.Scope(a.original,a,j))[0],y=function(){var e="ui-grid-row";return(e+=" ui-grid-row-")+(p%2==0?"even":"odd")},v=i.ComponentUtils.getChild(e,"Column"),b=v.length,S=function(){return r.jsxs(r.Fragment,{children:[!h&&r.jsx(s,{}),h&&r.jsx(s,{})]})},k=!i.Utils.isEmpty(n),C=x.multiple;return k&&b++,C&&b++,r.jsxs(r.Fragment,{children:[r.jsxs("tr",{className:y(),style:g.getStyle("row"),children:[k&&r.jsx(u,{scope:g,styleClass:"ui-click ui-icon-only ui-expansion",children:r.jsx(_.Button,{icon:r.jsx(S,{}),click:function(){m(!h)}})},"r"+p+"e"),C&&r.jsx(u,{scope:g,styleClass:"ui-click ui-icon-only ui-multiple",children:r.jsx(d,{scope:a,value:l,rowIndex:p},"check-"+p)},"r"+p+"c"),v.map((function(e,t){return r.jsx(u,{column:e,scope:g,children:e},"r"+p+"c"+t)}))]}),h&&r.jsx("tr",{className:y(),style:g.getStyle("row"),children:r.jsx(u,{scope:g,colspan:b,children:r.jsx(o,c({},e,{crud:j,children:n}))},"r"+p+"-expanded")})]})}function x(e){var n=e.scope,l=e.next,a=e.previous,o=e.first,u=e.size,d=e.last,p=e.position,x=t.useState([10,20,30,50,100,200,500])[0],j={crud:n.crudSearch,owner:n,variant:n.attr("variant","text")};return i.Utils.nvl(n.original.paginatorPosition,"bottom")!==p?r.jsx(r.Fragment,{}):r.jsxs(r.Fragment,{children:[r.jsx(_.Button,c({field:"first",space:0,rendered:!1!==o},j,{click:"first",icon:r.jsx(s,{})})),r.jsx(_.Button,c({field:"previous",space:0,rendered:!1!==a,click:"previous"},j,{icon:r.jsx(s,{})})),r.jsx(_.Select,c({field:"size",space:0,rendered:!1!==u,default:10},j,{data:x,change:"search"})),r.jsx(_.Button,c({field:"next",space:0,rendered:!1!==l},j,{click:"next",icon:r.jsx(s,{})})),r.jsx(_.Button,c({field:"last",space:0,rendered:!1!==d},j,{click:"last",icon:r.jsx(s,{})}))]})}function j(e){var t=e.scope;return r.jsx(r.Fragment,{children:r.jsxs(_.Output,{styleClass:"ui-grid-top",children:[r.jsxs(_.Output,{field:"search",position:"left",space:4,children:[r.jsx(_.Include,c({},e,{transient:!0,name:"top",position:"left"})),r.jsx(_.Text,{field:"query",space:0,label:"Pesquisar",placeholder:t.attr("placeholder","Pesquisar"),children:r.jsx(_.Define,{name:"right",children:r.jsx(_.Button,{field:"search",icon:r.jsx(s,{}),space:0,variant:"text",owner:t,click:"search"})})})]}),r.jsxs(_.Output,{position:"right",space:8,children:[r.jsx(_.Include,c({},e,{transient:!0,name:"top",position:"right"})),r.jsx(x,{scope:t,last:!1,first:!1,position:"top"})]})]})})}function f(e){return r.jsx(r.Fragment,{})}function h(e){var t=e.scope,n=e.children;return r.jsx("div",{className:"ui-grid-bottom",children:r.jsxs("div",{className:"ui-grid-bottom-inner",children:[r.jsx(_.Include,c({},e,{transient:!0,name:"bottomLeft"})),r.jsx(x,{scope:t,position:"bottom",children:n}),r.jsx(_.Include,c({},e,{transient:!0,name:"bottomRight"}))]})})}function m(e){return r.jsx(l.TouchableOpacity,{onPress:function(){l.Linking.openURL("https://reactnative.dev/")},children:r.jsx(l.Text,{style:g.link,children:"Clique aqui para acessar o React Native"})})}var g={link:{}};function y(e){var t=e.scope,n=t.original,s=i.Utils.nvl(n.labelPos,"outside"),l=i.Utils.nvl(e.position,"outside");if(s!=l)return r.jsx(r.Fragment,{});var a=function(){return t.is("type","list","grid")?r.jsx("div","string"==typeof n.icon?{className:"ui-label-icon",children:r.jsx(m,{className:t.getIcon()})}:{className:"ui-label-icon",children:n.icon}):r.jsx(r.Fragment,{})},o=t.getLabel();return r.jsxs("div",{className:"ui-label ui-label-"+l,children:[r.jsxs("div",{className:"ui-label-left",children:[r.jsx(_.Include,c({},e,{transient:!0,name:"label",position:"left"})),r.jsx(a,{}),o&&r.jsx("div",{className:"ui-label-value",children:o})]}),r.jsx("div",{className:"ui-label-right",children:r.jsx(_.Include,c({},e,{transient:!0,name:"label",position:"right"}))})]})}function v(e){var n=e.scope,s=n.getItems(),l=i.ComponentUtils.getDefine(e,"expansion");return r.jsxs("div",{className:n.getStyleClass("inner"),style:n.getStyle("inner"),children:[r.jsx(y,c({},e,{scope:n,position:"outside"})),r.jsxs("div",{className:n.getStyleClass("child"),style:n.getStyle("child"),children:[r.jsx(y,c({},e,{scope:n,position:"inside"})),r.jsxs("div",{className:"ui-data",children:[r.jsx(j,c({},e,{scope:n})),r.jsx(f,{scope:n}),r.jsx("div",{className:"ui-grid-data",children:r.jsx("table",{className:"ui-grid ui-table",children:r.jsx("tbody",{children:s.map((function(i,r){return t.createElement(p,c({},e,{expansion:l,key:"r"+r,scope:n,value:i,index:r}))}))})})})]}),r.jsx(h,c({},e,{scope:n}))]})]})}function b(e){if(!1===e.rendered)return r.jsx(r.Fragment,{});var t=i.ComponentUtils.getDefine(e,e.name,e.position);return i.Utils.isEmpty(t)&&(t=e.default),i.Utils.isEmpty(t)?r.jsx(r.Fragment,{children:t}):r.jsx((function(t){var n=e.tag;return i.Utils.isEmpty(n)?r.jsx(r.Fragment,{children:t.children}):r.jsx(n,c({},t,{children:t.children}))}),c({},e.tagProps,{children:r.jsx(o,c({transient:!0},e,{scope:e.scope,crud:e.crud,part:e.name,children:t}))}))}function S(e){var t=e.scope;return r.jsxs("div",{className:t.getStyleClass("inner"),style:t.getStyle("inner"),children:[r.jsx(y,c({},e,{scope:t})),r.jsx(o,c({},e,{scope:t})),r.jsx("div",{className:t.getStyleClass("bottom"),style:t.getStyle("bottom"),children:r.jsx(b,c({},e,{scope:t,name:"bottom"}))})]})}function k(e){var l=e.scope,a=t.useState(0),u=a[0],d=a[1],p=l.original,x=l.getItems(),j=0,f=[],h=t.useState(null),m=h[0],g=h[1],y=function(e,t){void 0===t&&(t=!0),e&&l.execute({event:{validate:t,validateScope:p.validateScope,action:function(){l.changeValue(e.data),m=e,d(u=e.index),g(e)}}})},v=function(e){var t,n="ui-tabs-item ui-click";return(null==(t=m)?void 0:t.index)===e.index&&(n+=" ui-tab-selected"),n},b=function(e,t){var n=c({},e.props);t||(t=l.crud.data);var r=i.CrudUtils.create("tabs",{data:t,changed:t,parent:l.crud}),s=i.Utils.resolve(n,r);!1!==s.rendered&&f.push(c({},s,{child:e,element:s,original:n,index:j++,data:t}))};n.Children.map(e.children,(function(e,t){if(i.Utils.isEmpty(x))b(e,{});else for(var n in x)b(e,x[n])})),m||y(f[u],!1);var S=function(e){y(f[u+e])},k="stepper"===p.layout;return r.jsx("div",{className:l.getStyleClass("inner"),style:l.getStyle("inner"),children:r.jsxs("div",{className:"ui-tabs-content",children:[r.jsx("div",{className:"ui-tabs-items",children:f.map((function(e,t){return r.jsxs("div",{className:v(e),onClick:function(){y(e)},children:[k&&r.jsx("div",{className:"ui-tab-item-divisor"}),r.jsxs("div",{className:"ui-tab-item-inner",children:[k&&r.jsx("div",{className:"ui-step-line"}),r.jsx("div",{className:"ui-tab-item-label",children:k?e.index+1:e.label})]})]},i.Utils.key(p.id,"tab",t))}))}),m&&r.jsxs(r.Fragment,{children:[k&&r.jsx("div",{className:"ui-tabs-label",children:m.label}),r.jsx("div",{className:"ui-tabs-area",children:r.jsx(o,c({},e,{scope:l,children:m.child}))}),"stepper"===p.layout&&r.jsxs("div",{className:"ui-tabs-actions",children:[r.jsx(_.Output,{space:6,layout:"left",children:r.jsx(_.Include,c({},e,{transient:!0,name:"left",default:r.jsx(_.Button,{rendered:u>0,icon:r.jsx(s,{}),click:function(){S(-1)}})}))}),r.jsx(_.Output,{space:6,layout:"right",children:r.jsx(_.Include,c({},e,{transient:!0,name:"right",default:r.jsx(_.Button,{rendered:u<f.length-1,icon:r.jsx(s,{}),click:function(){S(1)}})}))})]})]})]})})}function C(e){var t=e.scope;return t.getItems(),i.Utils.asList(t.original.columns),r.jsx("div",{className:"ui-chart-data"})}function U(e){return r.jsx(l.TouchableOpacity,{onPress:function(){l.Linking.openURL("https://reactnative.dev/")},children:r.jsx(l.Text,{style:N.link,children:"Clique aqui para acessar o React Native"})})}var N={link:{}};function w(e){return r.jsx(r.Fragment,{children:r.jsx(U,c({},e.defaultsInput,e.defaultsUI))})}function I(e){var n,s=e.scope,l=e.index,a=i.CrudUtils.create("row",{index:l,row:!0,itemVar:s.original.itemVar,parent:s.crudSearch,data:e.value}),u=t.useState(new i.Scope(s.original,s,a))[0];return r.jsx("div",{className:(n=u.getStyleClass("row"),n+=" ui-repeat-row-",n+=l%2==0?"even":"odd"),style:u.getStyle("row"),children:r.jsx(o,c({transient:!0},e,{crud:a,children:e.children}))})}function T(e){var n=e.scope,i=n.getItems();return r.jsx("div",{className:n.getStyleClass("inner"),style:n.getStyle("inner"),children:i.map((function(i,r){return t.createElement(I,c({},e,{key:"r"+r,scope:n,value:i,index:r}))}))})}function F(e){return r.jsx(l.TouchableOpacity,{onPress:function(){l.Linking.openURL("https://reactnative.dev/")},children:r.jsx(l.Text,{style:L.link,children:"Clique aqui para acessar o React Native"})})}var L={link:{}};function q(e){var t=e.scope.original,n=t.color,i=t.label,s=t.icon;n||(n="#55a46f");var o={text:c({color:"#ffffff",lineHeight:30,fontWeight:"500",textAlign:"center"},t.textStyle),inner:c({flex:1,flexDirection:"row",flexWrap:"wrap",textAlign:"center",alignItems:"center",margin:"auto"},t.textStyle),icon:{color:"#fff",fontSize:18,paddingRight:10},button:c({padding:5,alignItems:"center",paddingLeft:10,paddingRight:10,minWidth:200,margin:5,textAlign:"center",verticalAling:"middle",lineHeight:30,borderRadius:20,backgroundColor:n,color:"#ffffff"},t.buttonStyle)};return r.jsx(l.TouchableHighlight,{underlayColor:"transparent",onPress:function(e){"function"==typeof t.click&&t.click(e)},style:o.button,children:r.jsxs(l.View,{style:o.inner,children:[s&&r.jsx(r.Fragment,{children:r.jsx(a.Ionicons,{size:30,style:o.icon,name:s})}),r.jsx(l.Text,{style:o.text,children:i})]})})}function R(e){return r.jsx(l.TouchableOpacity,{onPress:function(){l.Linking.openURL("https://reactnative.dev/")},children:r.jsx(l.Text,{style:V.link,children:"Clique aqui para acessar o React Native"})})}var V={link:{}};function P(e){return r.jsx(l.TouchableOpacity,{onPress:function(){l.Linking.openURL("https://reactnative.dev/")},children:r.jsx(l.Text,{style:O.link,children:"Clique aqui para acessar o React Native"})})}var O={link:{}};function E(e){return r.jsx(l.TouchableOpacity,{onPress:function(){l.Linking.openURL("https://reactnative.dev/")},children:r.jsx(l.Text,{style:D.link,children:"Clique aqui para acessar o React Native"})})}var D={link:{}};function B(e){return r.jsx(l.TouchableOpacity,{onPress:function(){l.Linking.openURL("https://reactnative.dev/")},children:r.jsx(l.Text,{style:W.link,children:"Clique aqui para acessar o React Native"})})}var W={link:{}};function z(e){var n=e.scope,s=i.Utils.nvl(n.getValue(),""),a=n.getLabel(),c=n.getPart("placeholder",null,a),o=t.useState(s),u=o[1];return r.jsx(l.TextInput,{style:A.input,onChangeText:function(e){n.changeValue(e),u(e)},value:o[0],placeholder:c})}var A=l.StyleSheet.create({input:{borderRadius:20,padding:10,paddingLeft:20,paddingRight:20,height:40,borderWidth:1,width:"100%"}});function H(e){var n=t.useState(i.ScopeUtils.create(e))[0],s=t.useState(0),a=s[0],u=s[1],d=t.useState(null),p=d[0],x=d[1],j=n.getOptions(),f=i.Utils.nvl(e.crud,n.crud),h=n.original,g=h.type,b=t.useRef(null);n.update=function(){u(++a)};var U={list:v,grid:v,label:y,card:S,repeat:T,tabs:k,chart:C},N=function(){return U[g]?r.jsx(U[g],c({crud:f},e,{scope:n})):r.jsx(r.Fragment,{})},I=function(){var e=h.custom;return e?r.jsx(H,"string"==typeof e?{element:{value:e,type:"dummy"},crud:f}:c({type:e.type,tag:e.type},e.props,{crud:f})):r.jsx(r.Fragment,{})};if(n.is("type","dummy"))return r.jsx(r.Fragment,{children:n.getDisplayValue()});var L=function(e){var t=e.target.value;n.isType("integer","int","number")?t=parseInt(t):n.isType("decimal")&&(t=parseFloat(t)),n.isType("select","complete")&&(t=n.getSelectedItem(t)),n.changeValue(t),n.update()},V=function(e){n.call("click")},O={label:n.getLabel(),value:n.getValue(),onChange:L};n.isType("password")&&(O.type="password");var D=function(e){var t=i.Utils.nvl(e,"root");return c({},G[t],n.getStyle(e))},W=D("element"),A={required:n.isRequired(),size:"small",scope:n,crud:f,style:W,placeholder:n.attr("placeholder","Digite aqui")};if(!n.isRendered()||n.is("type","define"))return r.jsx(r.Fragment,{});n.error=function(e){p=e,x(e)},t.useEffect((function(){n.ready||(n.ready=!0,n.call("load"),n.isType("list","repeat")?n.search():h.list&&n.call("list"),n.start())}));var M=function(){return"string"==typeof h.icon?r.jsx(m,{children:n.getIcon()}):r.jsx(r.Fragment,{children:h.icon})};if(n.open=function(e){l.Linking.openURL(e.url)},n.isType("dialog")){var _=h.name;if(!f.dialogs[_]){var K={config:c({},h),component:function(t){return r.jsx(o,c({},e,{scope:n,crud:f}))}};f.dialogs[_]=K}return r.jsx(r.Fragment,{})}return t.useLayoutEffect((function(){if(null!=b&&b.current&&n.is("type","card","list","tabs","stepper")){var e=null==b?void 0:b.current;if(e){var t=i.HtmlUtils.getBGColor(e);e.classList.add("rgb(255, 255, 255)"===t?"ui-dark":"ui-light")}}})),r.jsx(r.Fragment,{children:r.jsx(l.TouchableWithoutFeedback,{onPress:l.Keyboard.dismiss,accessible:!1,children:r.jsx(l.View,{ref:b,style:D(),children:r.jsxs(r.Fragment,{children:[void 0!==h.label&&(console.log(h.label),!0)&&r.jsx(l.Text,{style:D("label"),children:n.getLabel()}),!(!(n.isInput()||i.Utils.isEmpty(e.children)&&i.Utils.isEmpty(e.elements))||U[g])&&r.jsxs(r.Fragment,{children:[r.jsxs(l.View,{style:D("inner"),children:[n.is("type","button")&&r.jsxs(q,c({},A,{onClick:V,variant:n.attr("variant","outlined"),children:[h.icon&&r.jsx(M,{}),h.label&&r.jsx(l.Text,{style:n.getPart("label","button"),children:n.getLabel()})]})),n.is("type","icon")&&r.jsx(m,c({},A,{onClick:V,variant:n.attr("variant","outlined"),children:n.getDisplayValue()})),n.is("type","link")&&r.jsxs(F,c({},A,{onClick:V,variant:n.attr("variant","outlined"),children:[h.icon&&r.jsx(M,{}),h.label&&r.jsx(l.Text,{style:n.getPart("label","link"),children:n.getLabel()})]})),n.is("type","text","number","phone","postalCode","money","password","email")&&r.jsx(z,c({},O,A,{InputProps:c({},h.inputProps)})),n.is("type","complete","autocomplete")&&r.jsx(w,{scope:n,defaultsInput:O,defaultsUI:A}),n.is("type","checkbox","boolean","switch")&&r.jsx(P,c({checked:!0===n.getValue()},O,{onChange:function(){var e=n.getValue();L({target:{value:!(!0===e)}})}})),n.is("type","select")&&r.jsxs(R,c({},O,A,{value:n.getSelectedValue(),children:[r.jsx(E,{value:"",children:"Selecione"}),j.map((function(e,t){return r.jsx(E,{value:e.value,children:e.label},"i"+t)}))]})),n.is("type","radio")&&r.jsx(B,c({},O,A,{row:!0,children:j.map((function(e,t){return r.jsx(E,{control:r.jsx(B,c({},A)),label:e.label,value:e.value},"i"+t)}))})),n.is("type","custom")&&r.jsx(I,{}),n.is("type","column")&&r.jsxs(r.Fragment,{children:[n.is("format","img")&&r.jsx(l.Image,{source:n.getDisplayValue()}),n.is("format","icon")&&r.jsx(m,{className:n.getDisplayValue()}),!n.is("format","icon","img")&&r.jsx(l.Text,{children:n.getDisplayValue()})]}),n.is("type","output")&&r.jsx(l.Text,{children:n.getDisplayValue()})]}),p&&r.jsx(l.View,{style:D("error"),children:p})]}),r.jsx(N,{}),!n.is("type","card","tabs","grid","list","define","repeat")&&r.jsx(o,c({},e,{scope:n,crud:f}))]})})})})}var G=l.StyleSheet.create({root:{flex:1,gap:10,flexDirection:"column",flexWrap:"wrap",width:"100%",alignItems:"flex-start"},label:{width:"100%",fontWeight:600},inner:{width:"100%"}}),M=["type"],_={Grid:function(e){return r.jsx(H,c({},e,{type:"list"}))},Repeat:function(e){return r.jsx(H,c({},e,{type:"repeat"}))},Define:function(e){return r.jsx(H,c({},e,{type:"define"}))},Include:function(e){return r.jsx(b,c({},e))},Column:function(e){var t=function(e,t){if(null==e)return{};var n={};for(var i in e)if({}.hasOwnProperty.call(e,i)){if(-1!==t.indexOf(i))continue;n[i]=e[i]}return n}(e,M);return r.jsx(H,c({},t,{type:"column"}))},Input:function(e){return r.jsx(H,c({},e))},Text:function(e){return r.jsx(H,c({},e,{type:"text"}))},Email:function(e){return r.jsx(H,c({},e,{type:"email"}))},Button:function(e){return r.jsx(H,c({},e,{type:"button"}))},Link:function(e){return r.jsx(H,c({},e,{type:"link"}))},Icon:function(e){return r.jsx(H,c({},e,{type:"icon"}))},Output:function(e){return r.jsx(H,c({},e,{type:"output"}))},Form:function(e){return r.jsx(H,c({},e,{type:"form"}))},Crud:function(e){return r.jsx(H,c({},e,{type:"crud"}))},View:function(e){return r.jsx(H,c({},e,{type:"view",transient:!0}))},Bottom:function(e){return r.jsx(H,c({},e,{type:"bottom"}))},Dialog:function(e){return r.jsx(H,c({},e,{type:"dialog"}))},Content:function(e){return r.jsx(H,c({},e,{type:"content"}))},Top:function(e){return r.jsx(H,c({},e,{type:"top"}))},Card:function(e){return r.jsx(H,c({},e,{type:"card"}))},Tab:function(e){return r.jsx(H,c({},e,{type:"tab"}))},Tabs:function(e){return r.jsx(H,c({},e,{type:"tabs"}))},Step:function(e){return r.jsx(H,c({},e,{type:"tab",layout:"step"}))},Stepper:function(e){return r.jsx(H,c({},e,{type:"tabs",layout:"stepper"}))},Money:function(e){return r.jsx(H,c({},e,{type:"money"}))},Chart:function(e){return r.jsx(H,c({},e,{type:"chart"}))},Password:function(e){return r.jsx(H,c({},e,{type:"password"}))},Complete:function(e){return r.jsx(H,c({},e,{type:"complete"}))},Checkbox:function(e){return r.jsx(H,c({},e,{type:"checkbox"}))},Radio:function(e){return r.jsx(H,c({},e,{type:"radio"}))},Select:function(e){return r.jsx(H,c({},e,{type:"select"}))},Entity:function(e){return r.jsx(H,c({},e,{type:"entity"}))},Element:function(e){return r.jsx(H,c({},e,{type:"element"}))}};exports.UI=_;
|
|
2
2
|
//# sourceMappingURL=react-crud-mobile.cjs.production.min.js.map
|
|
@@ -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 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 { Ionicons } from '@expo/vector-icons';\r\nimport { ChildType } from 'react-crud-utils';\r\nimport { Text, TouchableHighlight, View } from 'react-native';\r\n\r\nexport default function Button(props: ChildType) {\r\n let scope = props.scope;\r\n let element = scope.original;\r\n\r\n let color = element.color;\r\n let label = element.label;\r\n let icon = element.icon;\r\n\r\n if (!color) color = '#55a46f';\r\n\r\n const styles: any = {\r\n text: {\r\n color: '#ffffff',\r\n lineHeight: 30,\r\n fontWeight: '500',\r\n textAlign: 'center',\r\n ...element.textStyle,\r\n },\r\n inner: {\r\n flex: 1,\r\n flexDirection: 'row',\r\n flexWrap: 'wrap',\r\n textAlign: 'center',\r\n alignItems: 'center',\r\n margin: 'auto',\r\n ...element.textStyle,\r\n },\r\n icon: {\r\n color: '#fff',\r\n fontSize: 18,\r\n paddingRight: 10,\r\n },\r\n button: {\r\n padding: 5,\r\n alignItems: 'center',\r\n paddingLeft: 10,\r\n paddingRight: 10,\r\n minWidth: 200,\r\n margin: 5,\r\n textAlign: 'center',\r\n verticalAling: 'middle',\r\n lineHeight: 30,\r\n borderRadius: 20,\r\n backgroundColor: color,\r\n color: '#ffffff',\r\n ...element.buttonStyle,\r\n },\r\n };\r\n\r\n const onClick = (e: any) => {\r\n if (typeof element.click === 'function') {\r\n element.click(e);\r\n }\r\n };\r\n\r\n return (\r\n <TouchableHighlight\r\n underlayColor={'transparent'}\r\n onPress={onClick}\r\n style={styles.button}\r\n >\r\n <View style={styles.inner}>\r\n {icon && (\r\n <>\r\n <Ionicons size={30} style={styles.icon} name={icon} />\r\n </>\r\n )}\r\n <Text style={styles.text}>{label}</Text>\r\n </View>\r\n </TouchableHighlight>\r\n );\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 { useState } from 'react';\nimport { ChildType, Utils } from 'react-crud-utils';\nimport { StyleSheet, TextInput } from 'react-native';\n\nexport default function Input(props: ChildType) {\n let scope = props.scope;\n let initial = Utils.nvl(scope.getValue(), '');\n\n let label = scope.getLabel();\n let placeholder = scope.getPart('placeholder', null, label);\n\n const [value, setValue] = useState(initial);\n\n let onChange = v => {\n scope.changeValue(v);\n\n setValue(v);\n };\n\n return (\n <TextInput\n style={styles.input}\n onChangeText={onChange}\n value={value}\n placeholder={placeholder}\n />\n );\n}\n\nconst styles = StyleSheet.create({\n input: {\n borderRadius: 20,\n padding: 10,\n paddingLeft: 20,\n paddingRight: 20,\n height: 40,\n borderWidth: 1,\n width: '100%',\n },\n});\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 {\n Image,\n Linking,\n StyleSheet,\n Text,\n Keyboard,\n TouchableWithoutFeedback,\n View,\n} 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 const getStyle = (part?: string) => {\n let key = Utils.nvl(part, 'root');\n let def = styles[key];\n\n return { ...def, ...scope.getStyle(part) };\n };\n\n let elStyle = getStyle('element');\n\n let defaultsUI: any = {\n required: scope.isRequired(),\n size: 'small',\n scope,\n crud,\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 isShowLabel = () => {\n if (typeof original.label !== 'undefined') {\n console.log(original.label);\n return true;\n }\n\n return false;\n };\n\n const isShowInner = () => {\n if (hasChildren() || hasCustomRoute()) {\n return false;\n }\n return true;\n };\n\n return (\n <>\n <View ref={ref} style={getStyle()}>\n <TouchableWithoutFeedback onPress={Keyboard.dismiss} accessible={false}>\n <>\n {isShowLabel() && (\n <Text style={getStyle('label')}>{scope.getLabel()}</Text>\n )}\n {isShowInner() && (\n <>\n <View style={getStyle('inner')}>\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 <Text style={scope.getPart('label', 'button')}>\n {scope.getLabel()}\n </Text>\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 <Text style={scope.getPart('label', 'link')}>\n {scope.getLabel()}\n </Text>\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 <Image source={scope.getDisplayValue()} />\n )}\n {scope.is('format', 'icon') && (\n <Icon className={scope.getDisplayValue()} />\n )}\n {!scope.is('format', 'icon', 'img') && (\n <Text>{scope.getDisplayValue()}</Text>\n )}\n </>\n )}\n {scope.is('type', 'output') && (\n <Text>{scope.getDisplayValue()}</Text>\n )}\n </View>\n {error && <View style={getStyle('error')}>{error}</View>}\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 </>\n </TouchableWithoutFeedback>\n </View>\n </>\n );\n}\n\nconst styles = StyleSheet.create({\n root: {\n flex: 1,\n gap: 10,\n flexDirection: 'column',\n flexWrap: 'wrap',\n width: '100%',\n alignItems: 'flex-start',\n },\n label: { width: '100%', fontWeight: 600 },\n inner: { width: '100%' },\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","_jsx","_Fragment","Paint","_ref","child","children","Custom","type","pps","_extends","isEmpty","transient","parent","Draw","elements","Object","entries","map","t","k","UIElement","React","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","_jsxs","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","_createElement","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","onClick","id","ElChart","asList","columns","AutoComplete","UIComplete","defaultsInput","defaultsUI","ElRepeatRow","ElRepeat","Link","color","text","lineHeight","fontWeight","textAlign","textStyle","inner","flex","flexDirection","flexWrap","alignItems","margin","fontSize","paddingRight","button","padding","paddingLeft","minWidth","verticalAling","borderRadius","backgroundColor","buttonStyle","TouchableHighlight","underlayColor","e","View","Switch","Option","Radio","Input","initial","getValue","getPart","setValue","TextInput","input","onChangeText","v","StyleSheet","height","borderWidth","width","_useState3","error","setError","options","getOptions","ref","useRef","update","router","list","grid","card","repeat","chart","CurrentRouter","c","custom","getDisplayValue","onChange","val","target","isType","parseInt","parseFloat","getSelectedItem","call","elStyle","required","isRequired","isRendered","msg","useEffect","ready","search","start","open","args","url","dialogs","dlg","config","useLayoutEffect","current","el","bg","HtmlUtils","getBGColor","classList","add","TouchableWithoutFeedback","Keyboard","dismiss","accessible","console","log","InputProps","inputProps","checked","getSelectedValue","control","Image","source","root","gap","Grid","Repeat","Column","_objectWithoutPropertiesLoose","_excluded","Email","Form","Crud","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 { Ionicons } from '@expo/vector-icons';\r\nimport { ChildType } from 'react-crud-utils';\r\nimport { Text, TouchableHighlight, View } from 'react-native';\r\n\r\nexport default function Button(props: ChildType) {\r\n let scope = props.scope;\r\n let element = scope.original;\r\n\r\n let color = element.color;\r\n let label = element.label;\r\n let icon = element.icon;\r\n\r\n if (!color) color = '#55a46f';\r\n\r\n const styles: any = {\r\n text: {\r\n color: '#ffffff',\r\n lineHeight: 30,\r\n fontWeight: '500',\r\n textAlign: 'center',\r\n ...element.textStyle,\r\n },\r\n inner: {\r\n flex: 1,\r\n flexDirection: 'row',\r\n flexWrap: 'wrap',\r\n textAlign: 'center',\r\n alignItems: 'center',\r\n margin: 'auto',\r\n ...element.textStyle,\r\n },\r\n icon: {\r\n color: '#fff',\r\n fontSize: 18,\r\n paddingRight: 10,\r\n },\r\n button: {\r\n padding: 5,\r\n alignItems: 'center',\r\n paddingLeft: 10,\r\n paddingRight: 10,\r\n minWidth: 200,\r\n margin: 5,\r\n textAlign: 'center',\r\n verticalAling: 'middle',\r\n lineHeight: 30,\r\n borderRadius: 20,\r\n backgroundColor: color,\r\n color: '#ffffff',\r\n ...element.buttonStyle,\r\n },\r\n };\r\n\r\n const onClick = (e: any) => {\r\n if (typeof element.click === 'function') {\r\n element.click(e);\r\n }\r\n };\r\n\r\n return (\r\n <TouchableHighlight\r\n underlayColor={'transparent'}\r\n onPress={onClick}\r\n style={styles.button}\r\n >\r\n <View style={styles.inner}>\r\n {icon && (\r\n <>\r\n <Ionicons size={30} style={styles.icon} name={icon} />\r\n </>\r\n )}\r\n <Text style={styles.text}>{label}</Text>\r\n </View>\r\n </TouchableHighlight>\r\n );\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 { useState } from 'react';\nimport { ChildType, Utils } from 'react-crud-utils';\nimport { StyleSheet, TextInput } from 'react-native';\n\nexport default function Input(props: ChildType) {\n let scope = props.scope;\n let initial = Utils.nvl(scope.getValue(), '');\n\n let label = scope.getLabel();\n let placeholder = scope.getPart('placeholder', null, label);\n\n const [value, setValue] = useState(initial);\n\n let onChange = v => {\n scope.changeValue(v);\n\n setValue(v);\n };\n\n return (\n <TextInput\n style={styles.input}\n onChangeText={onChange}\n value={value}\n placeholder={placeholder}\n />\n );\n}\n\nconst styles = StyleSheet.create({\n input: {\n borderRadius: 20,\n padding: 10,\n paddingLeft: 20,\n paddingRight: 20,\n height: 40,\n borderWidth: 1,\n width: '100%',\n },\n});\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 {\n Image,\n Linking,\n StyleSheet,\n Text,\n Keyboard,\n TouchableWithoutFeedback,\n View,\n} 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 const getStyle = (part?: string) => {\n let key = Utils.nvl(part, 'root');\n let def = styles[key];\n\n return { ...def, ...scope.getStyle(part) };\n };\n\n let elStyle = getStyle('element');\n\n let defaultsUI: any = {\n required: scope.isRequired(),\n size: 'small',\n scope,\n crud,\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 isShowLabel = () => {\n if (typeof original.label !== 'undefined') {\n console.log(original.label);\n return true;\n }\n\n return false;\n };\n\n const isShowInner = () => {\n if (hasChildren() || hasCustomRoute()) {\n return false;\n }\n return true;\n };\n\n return (\n <>\n <TouchableWithoutFeedback onPress={Keyboard.dismiss} accessible={false}>\n <View ref={ref} style={getStyle()}>\n <>\n {isShowLabel() && (\n <Text style={getStyle('label')}>{scope.getLabel()}</Text>\n )}\n {isShowInner() && (\n <>\n <View style={getStyle('inner')}>\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 <Text style={scope.getPart('label', 'button')}>\n {scope.getLabel()}\n </Text>\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 <Text style={scope.getPart('label', 'link')}>\n {scope.getLabel()}\n </Text>\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 <Image source={scope.getDisplayValue()} />\n )}\n {scope.is('format', 'icon') && (\n <Icon className={scope.getDisplayValue()} />\n )}\n {!scope.is('format', 'icon', 'img') && (\n <Text>{scope.getDisplayValue()}</Text>\n )}\n </>\n )}\n {scope.is('type', 'output') && (\n <Text>{scope.getDisplayValue()}</Text>\n )}\n </View>\n {error && <View style={getStyle('error')}>{error}</View>}\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 </>\n </View>\n </TouchableWithoutFeedback>\n </>\n );\n}\n\nconst styles = StyleSheet.create({\n root: {\n flex: 1,\n gap: 10,\n flexDirection: 'column',\n flexWrap: 'wrap',\n width: '100%',\n alignItems: 'flex-start',\n },\n label: { width: '100%', fontWeight: 600 },\n inner: { width: '100%' },\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","_jsx","_Fragment","Paint","_ref","child","children","Custom","type","pps","_extends","isEmpty","transient","parent","Draw","elements","Object","entries","map","t","k","UIElement","React","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","_jsxs","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","_createElement","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","onClick","id","ElChart","asList","columns","AutoComplete","UIComplete","defaultsInput","defaultsUI","ElRepeatRow","ElRepeat","Link","color","text","lineHeight","fontWeight","textAlign","textStyle","inner","flex","flexDirection","flexWrap","alignItems","margin","fontSize","paddingRight","button","padding","paddingLeft","minWidth","verticalAling","borderRadius","backgroundColor","buttonStyle","TouchableHighlight","underlayColor","e","View","Switch","Option","Radio","Input","initial","getValue","getPart","setValue","TextInput","input","onChangeText","v","StyleSheet","height","borderWidth","width","_useState3","error","setError","options","getOptions","ref","useRef","update","router","list","grid","card","repeat","chart","CurrentRouter","c","custom","getDisplayValue","onChange","val","target","isType","parseInt","parseFloat","getSelectedItem","call","elStyle","required","isRequired","isRendered","msg","useEffect","ready","search","start","open","args","url","dialogs","dlg","config","useLayoutEffect","current","el","bg","HtmlUtils","getBGColor","classList","add","TouchableWithoutFeedback","Keyboard","dismiss","accessible","console","log","InputProps","inputProps","checked","getSelectedValue","control","Image","source","root","gap","Grid","Repeat","Column","_objectWithoutPropertiesLoose","_excluded","Email","Form","Crud","Bottom","Dialog","Content","Top","Card","Tab","Tabs","Step","Stepper","Money","Chart","Password","Complete","Checkbox","Entity","Element"],"mappings":"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"}
|
|
@@ -1192,12 +1192,12 @@ function UIElement(props) {
|
|
|
1192
1192
|
return true;
|
|
1193
1193
|
};
|
|
1194
1194
|
return /*#__PURE__*/jsx(Fragment, {
|
|
1195
|
-
children: /*#__PURE__*/jsx(
|
|
1196
|
-
|
|
1197
|
-
|
|
1198
|
-
children: /*#__PURE__*/jsx(
|
|
1199
|
-
|
|
1200
|
-
|
|
1195
|
+
children: /*#__PURE__*/jsx(TouchableWithoutFeedback, {
|
|
1196
|
+
onPress: Keyboard.dismiss,
|
|
1197
|
+
accessible: false,
|
|
1198
|
+
children: /*#__PURE__*/jsx(View, {
|
|
1199
|
+
ref: ref,
|
|
1200
|
+
style: getStyle(),
|
|
1201
1201
|
children: /*#__PURE__*/jsxs(Fragment, {
|
|
1202
1202
|
children: [isShowLabel() && /*#__PURE__*/jsx(Text, {
|
|
1203
1203
|
style: getStyle('label'),
|