{"version":3,"sources":["assets/images/trans_256x128.png","context/Functions.js","i18n/IntlProvider.js","i18n/index.js","assets/icon/icon_512.png","util/index.js","hooks/useFunctions.js","hooks/useRefs.js","hooks/useSource.js","hooks/useVisibility.js","hooks/useApi.js","hooks/useFirebase.js","hooks/useDialogs.js","context/reducers/Refs.js","context/reducers/Api.js","context/reducers/Firebase.js","context/reducers/Dialogs.js","assets lazy /^/.//.*$/ groupOptions: {} namespace object","components/Component.js","components/Group.js","components/Button.js","components/Modal.js","components/Lottie.js","components/Label.js","components/Input.js","components/Text.js","components/Image.js","components/Icon.js","components/Nav.js","dialogs/ErrorDialog.js","dialogs/Main_dialogDialog.js","dialogs/MissingDialog.js","dialogs/TermsDialog.js","dialogs/index.js","components/DoyoBadge.js","wrappers/FullscreenWrapper.js","pages/Contact_formView.js","App.js","reportWebVitals.js","serviceWorkerRegistration.js","util/defines.js","index.js","context/Api.js","context/Firebase.js","context/Dialogs.js","context/index.js","context/Refs.js"],"names":["modifiers","modifiersMap","json","length","lower","md5","text","tofile","trim","upper","urldecode","urlencode","operate","operand","operation","eval","FunctionsContext","createContext","FunctionsProvider","props","history","useHistory","useLocation","search","pathname","useEffect","replace","split","filter","entry","forEach","key","value","set","what","path","slice","viewKey","shift","viewValue","join","useApi","getFromApi","useDialogs","hideDialog","hide","showDialog","show","useFirebase","addToFirestore","deleteFromFirestore","getFromFirestore","updateFirestore","addToStorage","deleteFileFromStorage","getFileUrlFromStorage","getFolderChildrenFromStorage","uploadFileToStorage","useRefs","setRefs","refs","handlers","api","a","into","onsuccess","onSuccess","onerror","onError","options","method","parameters","strArr","provider","Promise","all","Object","keys","map","subkey","replaceRefs","newSubkey","doParse","reduce","param","values","then","setTimeout","functions","catch","error","this","replaceApi","str","order","limit","indexOf","console","replaceStorage","includes","replaceFirestore","isCollection","onlyParanthesis","reverse","mainKey","app","language","i18n","changeLanguage","popup","dialog","add","to","whatKeys","whatKey","whatValues","index","f","function","if","_if","rest","handleIf","bind","else","_else","is","is_not","less_than","more_than","_in","in","not_in","not_into","ends_with","starts_with","and","or","data","_what","undefined","Array","isArray","stringify","match","RegExp","get","replaceFilterRefs","condition","result","replaceOrderRefs","field","type","replaceLimitRefs","replaceRef","parenthesis","exp","resp","_key","substr","getFieldValue","isObject","e","strWithReplacedRefs","dataStr","Date","now","substring","replacedRef","parse","resolve","run","_functions","Provider","children","FunctionsConsumer","Consumer","i18next","use","LanguageDetector","init","resources","xx","es","en","fallbackLng","supportedLngs","nonExplicitSupportedLngs","load","defaultNS","fallbackNS","interpolation","escapeValue","detection","lookupLocalStorage","lookupQuerystring","caches","excludeCacheFor","wait","I18N","locale","prevProps","newLocale","I18nextProvider","React","PureComponent","kebabToCamel","kebab","toUpperCase","isNaN","isFinite","sort","b","acc","getLanguage","navigator","getUnique","arr","attribute","i","final","getValueFromPath","obj","current","isDate","d","isEmpty","o","getAmountFormat","amount","decimals","thousands","toFixed","parseFloat","lang","Intl","NumberFormat","format","getStringAsFile","signatures","JVBERi0","R0lGODdh","R0lGODlh","iVBORw0KGgo","mime","s","byteCharacters","atob","n","u8arr","Uint8Array","charCodeAt","File","getCurrencyFormat","currency","minimumFractionDigits","min_decimals","formatter","style","getDateFormat","date","dateOptions","DateTimeFormat","startsWith","isNumber","getLocationParams","params","push","useFunctions","context","useContext","RefsContext","useSource","getKeys","mainRef","ref","_value","useState","setValue","vars","setVars","_refs","_vars","_equals","mounted","useVisibility","ifProp","id","isVisible","isVisibleProp","setVisible","element","visible","isElementVisible","ApiContext","FirebaseContext","DialogsContext","REFS","INITIAL_STATE","cookie","Cookies","menu","property","SET","RefsReducer","draft","action","payload","entries","JSON","API","GET","ApiReducer","FIREBASE","firestore","storage","last","DELETE","LAST_ID","LAST_URL","STORAGE_GET","FirebaseReducer","firestoreObj1","_clone","firestoreObj2","draftFirestore","_merge","firestoreDeleted","_delete","storageObj1","storageObj2","draftStorage","url","DIALOGS","dialogs","SHOW","HIDE","DialogsReducer","isShown","webpackAsyncContext","req","__webpack_require__","Error","code","ids","t","module","exports","Component","__listId__","className","component","Cmp","itemData","itemDataSrc","onClick","conditionVisible","displayName","Group","container","direction","tag","Tag","Container","child","src","Button","BootstrapButton","Modal","onHide","BootstrapModal","Body","Footer","Header","Title","Lottie","autoplay","animationData","loop","speed","Label","BootstrapLabel","FormCheck","checked","Form","Check","valueField","FormControl","floating","label","as","Control","Wrapper","FloatingLabel","htmlFor","placeholder","Input","onBlur","onChange","onKeyDown","mainProps","defaultValue","changing","useRef","srcValue","inputProps","dateValue","Number","getTime","toISOString","handleBlur","elementValue","window","URL","createObjectURL","event","currentTarget","multiple","Checkbox","Color","maxProp","max","minProp","min","stepProp","step","valueProp","maxDate","minDate","valueDate","Email","Password","Radio","Range","Select","sourceChildren","dataSrc","mapSrc","sourceData","labelPath","valuePath","labelValue","valueValue","disabled","Switch","Text","TextArea","childrenProps","subtext","plain","textToShow","formatOptions","parseInt","dateFromText","parseHtml","converter","showdown","Converter","tables","makeHtml","Image","fallbackProp","fallback","srcProp","dataValue","setDataValue","hasError","setHasError","default","encodeURI","Icon","size","setPath","icons","ReactIcon","ItemBadge","srcBadge","elementBadge","badge","Badge","pill","bg","Nav","directionClass","BootstrapNav","Item","badgeFilter","drop","href","icon","image","isDropDownChild","title","NavDropdown","handleClick","ItemIcon","regexp","isActive","location","Link","ErrorDialog","useTranslation","error_buttons_positiveOnClick","variant","Main_dialogDialog","main_dialog_buttons_positiveOnClick","main_dialog_buttons_negativeOnClick","MissingDialog","missing_buttons_positiveOnClick","TermsDialog","terms_buttons_positiveOnClick","terms_buttons_negativeOnClick","Dialogs","DoyoBadge","fetch","host","config","ads","enabled","target","width","height","viewBox","version","xmlns","transform","fill","FullscreenWrapper","Contact_formView","contact_formOnLoaded","templateSlogan1672161128713OnClick","Helmet","trans_256x128","name","autoComplete","complete_anim","App","content","exact","reportWebVitals","onPerfEntry","Function","getCLS","getFID","getFCP","getLCP","getTTFB","isLocalhost","Boolean","hostname","registerValidSW","swUrl","serviceWorker","register","registration","onupdatefound","installingWorker","installing","onstatechange","state","controller","log","onUpdate","cacheNames","cacheName","delete","reload","String","prototype","localeIncludes","searchString","sensitivity","position","locales","stringLength","searchStringLength","lengthDiff","localeCompare","normalizeMap","á","à","â","ä","é","è","ê","ë","í","ì","î","ï","ó","ò","ô","ö","ú","ù","û","ü","normalize","toLowerCase","encodeUrl","encodeURIComponent","decodeUrl","decodeURIComponent","toFile","toMd5","toString","toJson","defineProperty","enumerable","p","valueOf","constructor","rhs","properObject","hasOwnProperty","diff","lhs","l","r","deletedValues","difference","obj1","splice","value1","obj2","uniqueAttr","value2","item","find","Set","_move","oldIndex","newIndex","k","toW3CString","getFullYear","getMonth","g","getDate","h","getHours","c","getMinutes","j","getSeconds","getTimezoneOffset","Math","abs","floor","initializeDefines","ReactDOM","render","IntlProvider","firebaseConfig","firebase","document","getElementById","process","origin","addEventListener","headers","response","contentType","status","ready","unregister","checkValidServiceWorker","serviceWorkerRegistration","ApiProvider","useImmerReducer","dispatch","body","Authorization","firestoreCondition","less_equal_than","more_equal_than","FirestoreCollectionData","_ref","useFirestoreCollectionData","_data","__data","NO_ID_FIELD","FirestoreDocData","useFirestoreDocData","pop","FirestoreData","_type","Firestore","FirebaseProvider","useFirebaseApp","setRef","getFirestore","addDoc","collection","docRef","doc","setDoc","merge","deleteDoc","updateDoc","deleteField","getCollectionFromFirestore","query","_query","explicitOrderBy","filters","queryKey","some","_queryKey","getDocumentFromFirestore","oField","oType","_str","getFilter","where","_filter","_order","orderBy","_limit","queryRef","replacedOrStr","getDocs","docsRef","replacedStr","docs","getDoc","getStorage","storageRef","snapshots","fullPath","files","parentRef","parent","deleteObject","listAll","prefixes","items","folders","itemRef","getDownloadURL","metadata","uploadBytes","uploadTask","sdk","DialogsProvider","ContextProviders","Refs","Functions","refTypes","refType","rt","regExp","RefsProvider"],"mappings":"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","file":"static/js/main.ea754f37.chunk.js","sourcesContent":["export default \"data:image/png;base64,ewogImlkIjogImltYWdlcy90cmFuc18yNTZ4MTI4LnBuZyIsCiAiYmxvYiI6IHt9LAogInVybCI6ICJibG9iOmh0dHBzOi8vZG95by50ZWNoLzY2N2U3YjQwLTJhYzQtNDNmMy04NmVmLTM4MTE5OWNkNjFmZiIKfQ==\"","import React, { createContext, useEffect } from 'react';\nimport { useHistory, useLocation } from 'react-router-dom';\nimport { useRefs, useApi, useDialogs, useFirebase } from '../hooks';\nimport { i18n } from '../i18n';\nimport { getFieldValue, isObject, parse } from '../util';\nimport Cookies from 'js-cookie';\n// Custom imports:\nimport { useFirestore } from 'reactfire';\n\nexport const modifiers = [\n '\\\\.\\\\+\\\\d+',\n '\\\\.\\\\-\\\\d+',\n '\\\\.\\\\*\\\\d+',\n '\\\\.\\\\/\\\\d+',\n '\\\\.\\\\d+\\\\-\\\\d+',\n '\\\\.\\\\d+',\n '\\\\.text',\n '\\\\.tofile',\n '\\\\.json',\n '\\\\.length',\n '\\\\.lower',\n '\\\\.md5',\n '\\\\.trim',\n '\\\\.upper',\n '\\\\.urldecode',\n '\\\\.urlencode',\n];\n\nexport const modifiersMap = {\n json: '.toJson()',\n length: '.length',\n lower: '.toLowerCase()',\n md5: '.toMd5()',\n text: '.toString()',\n tofile: '.toFile()',\n trim: '.trim()',\n upper: '.toUpperCase()',\n urldecode: '.decodeUrl()',\n urlencode: '.encodeUrl()',\n};\n\nfunction operate(operand, operation) {\n return eval(`operand${operation}`);\n}\n\nexport const FunctionsContext = createContext({});\n\nexport const FunctionsProvider = (props) => {\n const history = useHistory();\n const { search, pathname } = useLocation();\n\n \n useEffect(() => {\n search\n .replace('?', '')\n .split('&')\n .filter((entry) => entry)\n .forEach((entry) => {\n const [key, value] = entry.split('=');\n set({what:`@property.${key}`,value})\n });\n const path = pathname.split('/').slice(1);\n const viewKey = path.shift();\n const viewValue = path.join('/');\n viewValue &&\n set({what:`@property.${viewKey}`,viewValue})\n }, []);\n\n\n // Custom consts:\n\tconst { getFromApi } = useApi();\n\tconst { hide: hideDialog, show: showDialog } = useDialogs();\n\tconst {addToFirestore,deleteFromFirestore,getFromFirestore,updateFirestore,addToStorage,deleteFileFromStorage,getFileUrlFromStorage,getFolderChildrenFromStorage,uploadFileToStorage} = useFirebase();\n\n\n let { setRefs, ...refs } = useRefs();\n\n const handlers = {\n // Custom functions:\n api: async function ({\n api,\n into,\n onsuccess: onSuccess = [],\n onerror: onError = [],\n }, options = {}) {\n try {\n let { method, ...parameters } = api;\n const strArr = method.replace('@api.','').split('.');\n const provider = strArr.shift();\n method = strArr.join('.');\n\n // Replace refs on params\n parameters = await Promise.all(\n Object.keys(parameters).map(async (key) => {\n\n // If it's an object, try to replace all values\n if (typeof parameters[key] === 'object') {\n let value = await Promise.all(\n Object.keys(parameters[key]).map(async (subkey) => {\n const newSubkey = await this.replaceRefs(subkey, options);\n const value = await this.replaceRefs(parameters[key][subkey], {...options, doParse: false });\n return { [newSubkey]: value };\n })\n );\n value = value.reduce((value, param) => ({...value, [Object.keys(param)[0]]: Object.values(param)[0]}), {});\n parameters[key] = value;\n return { [key]: value };\n }\n\n const value = await this.replaceRefs(parameters[key], {...options, doParse: false });\n return { [key]: value };\n })\n );\n parameters = parameters.reduce((parameters, param) => ({...parameters, [Object.keys(param)[0]]: Object.values(param)[0]}), {})\n \n\n getFromApi({ provider, method, parameters })\n .then((value) => {\n if( !(into === null || typeof into === 'undefined') ){\n this.set({ what: into, value });\n }\n setTimeout(() => this.functions(onSuccess, options), 0);\n })\n .catch((error) => {\n setTimeout(() => this.functions(onError, options), 0);\n });\n\n return false;\n } catch (error) {\n return await this.functions(onError, options);\n }\n },\n replaceApi: async function ({ str, filter, order, limit }) {\n if (str.indexOf('@api.') !== 0) {\n return str;\n }\n try {\n const strArr = str.replace('@api.','').split('.');\n const provider = strArr.shift();\n const method = strArr.join('.');\n return await getFromApi({ provider, method });\n } catch (error) {\n console.error(error);\n return null;\n }\n },\n replaceStorage: async function ({ str }) {\n if (str.indexOf('@firebase.storage.') !== 0) {\n return str;\n }\n try {\n if (str.replace('@firebase.storage.', '').includes('.')) {\n return await getFileUrlFromStorage(str);\n }\n return await getFolderChildrenFromStorage(str);\n } catch (error) {\n return null;\n }\n },\n replaceFirestore: async function ({ str, filter, isCollection, order, limit }) {\n if (str.indexOf('@firebase.firestore.') !== 0) {\n return str;\n }\n try {\n return await getFromFirestore(str, { filter, isCollection, order, limit });\n } catch (error) {\n console.error(error);\n return null;\n }\n },\n set: async function ({ what, value }, options) {\n what = await this.replaceRefs(what, { ...options, onlyParanthesis: true });\n value = await this.replaceRefs(value, options);\n \n \n if (false) {}\n // Custom set:\n else if (what.indexOf('@firebase.storage.') === 0) {\n return await uploadFileToStorage({ what, value });\n }\n else if (what.indexOf('@firebase.firestore.') === 0) {\n return await updateFirestore({ what, value });\n }\n\n\n value = what\n .replace('@', '')\n .split('.')\n .reverse()\n .reduce((value, key) => ({ [key]: value }), value);\n const mainKey = Object.keys(value)[0];\n if (value?.app?.language) {\n i18n.changeLanguage(value.app?.language);\n }\n refs = {\n ...refs,\n [mainKey]: {\n ...refs[mainKey],\n ...value[mainKey],\n },\n };\n setRefs({ ...value });\n },\n popup: async function ({ dialog }, options) {\n dialog = await this.replaceRefs(dialog, options);\n showDialog(dialog);\n },\n hide: async function ({ dialog }, options) {\n dialog = await this.replaceRefs(dialog, options);\n hideDialog(dialog);\n },\n add: async function ({\n what = '',\n key = '',\n to = '',\n onsuccess: onSuccess = [],\n onerror: onError = [],\n }, options = {}) {\n try {\n if (typeof what === 'string') {\n what = await this.replaceRefs(what, options);\n }\n key = await this.replaceRefs(key, options);\n to = await this.replaceRefs(to, { ...options, onlyParanthesis: true });\n const whatKeys = Object.keys(what);\n const whatValues = await Promise.all(\n whatKeys.map((whatKey) => this.replaceRefs(what[whatKey], options))\n );\n what = whatKeys.reduce(\n (what, whatKey, index) => ({ ...what, [whatKey]: whatValues[index] }),\n {}\n );\n if (false) {\n }\n // Custom add: \n else if (to.indexOf('@firebase.storage.') === 0) {\n return await addToStorage({ key, to, what });\n } \n else if (to.indexOf('@firebase.firestore.') === 0) {\n addToFirestore({ key, to, what });\n }\n } catch (error) {\n return await this.functions(onError, options);\n }\n return await this.functions(onSuccess, options);\n },\n\n functions: async function (functions = [], options) {\n for (const entry of functions) {\n const { function: f, if: _if = true, ...rest } = entry;\n const handleIf = await this.if(_if, options);\n if (_if === true || handleIf) {\n if (f === 'abort') {\n return;\n }\n await (this[f].bind(this) || (() => {}))(rest, options);\n } else {\n const { else: _else = [] } = _if;\n _else.length && (await this.functions(_else, options));\n }\n }\n },\n\n if: async function (\n {\n what,\n is,\n is_not,\n less_than,\n more_than,\n in: _in,\n not_in,\n includes,\n not_into,\n ends_with,\n starts_with,\n and,\n or,\n } = {},\n { data } = {}\n ) {\n let _what = await this.replaceRefs(what, { data });\n is =\n typeof is !== 'undefined'\n ? await this.replaceRefs(is, { data })\n : undefined;\n is_not =\n typeof is_not !== 'undefined'\n ? await this.replaceRefs(is_not, { data })\n : undefined;\n less_than =\n typeof less_than !== 'undefined'\n ? await this.replaceRefs(less_than, { data })\n : undefined;\n more_than =\n typeof more_than !== 'undefined'\n ? await this.replaceRefs(more_than, { data })\n : undefined;\n _in =\n typeof _in !== 'undefined'\n ? await this.replaceRefs(_in, { data })\n : undefined;\n includes =\n typeof includes !== 'undefined'\n ? await this.replaceRefs(includes, { data })\n : undefined;\n not_in =\n typeof not_in !== 'undefined'\n ? await this.replaceRefs(not_in, { data })\n : undefined;\n not_into =\n typeof not_into !== 'undefined'\n ? await this.replaceRefs(not_into, { data })\n : undefined;\n ends_with =\n typeof ends_with !== 'undefined'\n ? await this.replaceRefs(ends_with, { data })\n : undefined;\n starts_with =\n typeof starts_with !== 'undefined'\n ? await this.replaceRefs(starts_with, { data })\n : undefined;\n return (\n (((typeof is !== 'undefined' && _what === is) ||\n (typeof is_not !== 'undefined' && _what !== is_not) ||\n (typeof less_than !== 'undefined' && _what < less_than) ||\n (typeof more_than !== 'undefined' && _what > more_than) ||\n (typeof _in !== 'undefined' && (Array.isArray(_in) ? _in.includes(_what) : (_in.stringify?.() || `${_in}`).includes(_what))) ||\n (typeof includes !== 'undefined' &&\n `${_what}`.match(new RegExp(`${includes}`)) !== null) ||\n (typeof not_in !== 'undefined' && !(\n (typeof not_in === 'string' && not_in.includes(what)) ||\n (Array.isArray(not_in) && not_in.includes(what)) ||\n (typeof not_in === 'object' && Object.values(not_in).includes(what))\n )) ||\n (typeof not_into !== 'undefined' &&\n `${_what}`.match(new RegExp(`${not_into}`)) === null) ||\n (typeof starts_with !== 'undefined' &&\n `${_what}`.match(new RegExp(`^${starts_with}`)) !== null) ||\n (typeof ends_with !== 'undefined' &&\n `${_what}`.match(new RegExp(`${ends_with}$`)) !== null)) &&\n (typeof and === 'undefined' || (await this.if(and, { data })))) ||\n (typeof or !== 'undefined' && (await this.if(or, { data })))\n );\n },\n\n get: async function (\n { what, filter, isCollection, order, limit },\n { data } = {}\n ) {\n const replaceFilterRefs = async (filter) => {\n let { what, and, or, ...condition } = filter;\n what = await this.replaceRefs(what, { data });\n let value = Object.values(condition)[0];\n value = await this.replaceRefs(value, { data });\n condition = Object.keys(condition)[0];\n let result = { ...filter, what, [condition]: value };\n if (and) {\n and = await replaceFilterRefs(and);\n result = { ...result, and };\n }\n if (or) {\n or = await replaceFilterRefs(or);\n result = { ...result, or };\n }\n return result;\n };\n const replaceOrderRefs = async (order) => {\n let { field, type } = order;\n field = await this.replaceRefs(field, { data });\n type = await this.replaceRefs(type, { data });\n return { field, type };\n };\n const replaceLimitRefs = async (limit) => {\n limit = await this.replaceRefs(limit, { data });\n return limit;\n };\n filter = filter && (await replaceFilterRefs(filter));\n order = order && (await replaceOrderRefs(order));\n limit = limit && (await replaceLimitRefs(limit));\n const value = await this.replaceRefs(what, {\n data,\n filter,\n isCollection,\n order,\n limit,\n });\n return value;\n },\n\n replaceRef: function (str, parenthesis, type, key) {\n const exp = new RegExp(`(${modifiers.join('|')})(\\\\.|$)[^.]*`);\n return key.split('.').reduce(\n function (resp, _key) {\n let operation = (`.${_key}`.match(exp)?.[0] || '').substr(1);\n key = operation ? key.replace(`.${operation}`, '') : key;\n if( type === 'field' ){\n return getFieldValue( str, key, resp);\n }\n if (operation) {\n let operand =\n typeof resp?.[_key] !== 'undefined' ? resp[_key] : resp;\n operand = typeof operand !== 'undefined' ? operand : '';\n if (operation.match(/^\\d+-\\d+$/)) {\n operation = `.substring(${operation.replace('-', ',')})`;\n } else if (operation.match(/^\\d+$/)) {\n operation = `.charAt(${operation})`;\n } else if (operation.match(/^[+\\-*/]+/)) {\n operand = operand || 0;\n }\n operation = modifiersMap[operation] || operation;\n try {\n operand = isObject(operand) ? Object.values(operand) : operand;\n return operate(operand, operation);\n } catch (e) {\n }\n }\n return typeof resp?.[_key] === 'object'\n ? resp?.[_key]\n : typeof resp?.[_key] === 'undefined'\n ? null\n : typeof resp[_key] === 'function'\n ? resp[_key]()\n : resp[_key];\n },\n { ...refs[type] }\n );\n },\n\n replaceRefs: async function (\n str,\n { data, filter, isCollection, order, limit, onlyParanthesis = false, doParse = true } = {}\n ) {\n refs.field = data;\n if (typeof str !== 'string') {\n return str;\n }\n\n let strWithReplacedRefs = '';\n if (data) {\n let dataStr = `${str}`.replace(\n /(^@|\\(@)(field)\\.([^)]+)\\)?/g,\n this.replaceRef.bind(this)\n );\n if (dataStr.match(/\\[object/)) {\n strWithReplacedRefs = data[str];\n } else {\n str = dataStr;\n }\n }\n\n if (str.indexOf('@app.timestamp') === 0) {\n return Date.now();\n }\n\n if (str.indexOf('@window.') === 0) {\n return eval(str.substring(1));\n }\n\n if (false) {\n }\n // Custom replaceRefs:\n else if (!onlyParanthesis && str.indexOf('@api.') === 0) {\n str = `${str}`.replace(\n /(\\(@)([^.]+)\\.([^)]+)\\)?/g,\n this.replaceRef.bind(this)\n );\n const exp = new RegExp(`(${modifiers.join('|')})(\\\\.|$)[^.]*`);\n let operation = (str.match(exp)?.[0] || '').substr(1);\n str = operation ? str.replace(`.${operation}`, '') : str;\n let resp = await this.replaceApi({\n str,\n filter,\n isCollection,\n order,\n limit,\n });\n if (operation) {\n let operand = typeof resp !== 'undefined' ? resp : '';\n if (operation.match(/^\\d+-\\d+$/)) {\n operation = `.substring(${operation.replace('-', ',')})`;\n } else if (operation.match(/^\\d+$/)) {\n operation = `.charAt(${operation})`;\n } else if (operation.match(/^[+\\-*/]+/)) {\n operand = operand || 0;\n }\n operation = modifiersMap[operation] || operation;\n try {\n operand = isObject(operand) ? Object.values(operand) : operand;\n return operate(operand, operation);\n } catch (e) {\n console.error(e);\n }\n }\n return resp;\n }\n else if (\n !onlyParanthesis &&\n str.indexOf('@firebase.storage.') === 0)\n {\n str = `${str}`.replace(\n /(\\(@)([^.]+)\\.([^)]+)\\)?/g,\n this.replaceRef.bind(this)\n );\n const exp = new RegExp(`(${modifiers.join('|')})(\\\\.|$)[^.]*`);\n let operation = (str.match(exp)?.[0] || '').substr(1);\n str = operation ? str.replace(`.${operation}`, '') : str;\n let resp = await this.replaceStorage({ str });\n if (operation) {\n let operand = typeof resp !== 'undefined' ? resp : '';\n if (operation.match(/^\\d+-\\d+$/)) {\n operation = `.substring(${operation.replace('-', ',')})`;\n } else if (operation.match(/^\\d+$/)) {\n operation = `.charAt(${operation})`;\n } else if (operation.match(/^[+\\-*/]+/)) {\n operand = operand || 0;\n }\n operation = modifiersMap[operation] || operation;\n try {\n operand = isObject(operand) ? Object.values(operand) : operand;\n return operate(operand, operation);\n } catch (e) {\n console.error(e);\n }\n }\n return resp;\n }\n else if (\n !onlyParanthesis &&\n str.indexOf('@firebase.firestore.') === 0\n ) {\n str = `${str}`.replace(\n /(\\(@)([^.]+)\\.([^)]+)\\)?/g,\n this.replaceRef.bind(this)\n );\n const exp = new RegExp(`(${modifiers.join('|')})(\\\\.|$)[^.]*`);\n let operation = (str.match(exp)?.[0] || '').substr(1);\n str = operation ? str.replace(`.${operation}`, '') : str;\n let resp = await this.replaceFirestore({ str, filter, isCollection, order, limit });\n if (operation) {\n let operand = typeof resp !== 'undefined' ? resp : '';\n if (operation.match(/^\\d+-\\d+$/)) {\n operation = `.substring(${operation.replace('-', ',')})`;\n } else if (operation.match(/^\\d+$/)) {\n operation = `.charAt(${operation})`;\n } else if (operation.match(/^[+\\-*/]+/)) {\n operand = operand || 0;\n }\n operation = modifiersMap[operation] || operation;\n try {\n operand = isObject(operand) ? Object.values(operand) : operand;\n return operate(operand, operation);\n } catch (e) {\n console.error(e);\n }\n }\n return resp;\n }\n\n strWithReplacedRefs = `${str}`.replace(\n onlyParanthesis\n ? /(\\(@)([^.]+)\\.([^)]+)\\)?/g\n : /(^@|\\(@)([^.]+)\\.([^)]+)\\)?/g,\n this.replaceRef.bind(this)\n );\n\n if( typeof strWithReplacedRefs !== 'string') {\n return strWithReplacedRefs;\n }\n\n if (strWithReplacedRefs.match(/\\[object/)) {\n const replacedRef = str\n .substring(1)\n .split('.')\n .reduce(\n (resp, key) => {\n if (!resp) {\n return resp;\n }\n return typeof resp?.[key] === 'undefined'\n ? null\n : typeof resp[key] === 'function'\n ? resp[key]()\n : resp[key];\n },\n { ...refs }\n );\n return replacedRef;\n }\n\n if( doParse ){\n strWithReplacedRefs = parse(strWithReplacedRefs);\n }\n return Promise.resolve(strWithReplacedRefs);\n },\n };\n\n const get = async (props, options) => {\n return await handlers.get?.(props, options);\n };\n\n const _if = async (props, options) => {\n return await handlers.if(props, options);\n };\n\n const set = async (props, options) => {\n return await handlers.set?.(props, options);\n };\n\n const run = async (_functions, options) => {\n return await handlers.functions(_functions, options);\n };\n\n return (\n \n {props.children}\n \n );\n};\n\nexport const FunctionsConsumer = FunctionsContext.Consumer;\nexport default FunctionsContext;\n","import React, { useEffect } from 'react';\nimport i18next from 'i18next';\nimport LanguageDetector from 'i18next-browser-languagedetector';\nimport { I18nextProvider } from 'react-i18next';\nimport { xx, es, en } from './locales';\n\ni18next.use(LanguageDetector).init({\n resources: {\n xx,\n\t\tes,\n\t\ten\n },\n fallbackLng: 'xx',\n supportedLngs: ['xx', 'es', 'en'],\n nonExplicitSupportedLngs: true,\n load: 'languageOnly',\n defaultNS: 'translation',\n fallbackNS: ['translation'],\n interpolation: {\n escapeValue: false,\n },\n detection: {\n order: ['querystring', 'localStorage', 'navigator'],\n\n lookupLocalStorage: 'language',\n lookupQuerystring: 'hl',\n\n caches: ['localStorage'],\n excludeCacheFor: ['cimode'],\n },\n wait: true,\n});\n\nclass I18N extends React.PureComponent {\n componentDidMount() {\n i18next.changeLanguage(this.props.locale);\n }\n\n componentDidUpdate(prevProps) {\n const { locale: newLocale } = this.props;\n const { locale: oldLocale } = prevProps;\n\n if (oldLocale !== newLocale) {\n i18next.changeLanguage(newLocale);\n }\n }\n\n render() {\n return (\n {this.props.children}\n );\n }\n}\n\nexport default I18N;\nexport { i18next };\n","import { i18next } from './IntlProvider';\n\nconst languages = [\n\t{\n\t\tcode: 'xx',\n\t\ttext: '',\n\t},\n\t{\n\t\tcode: 'es',\n\t\ttext: 'Español',\n\t},\n\t{\n\t\tcode: 'en',\n\t\ttext: 'English',\n\t},\n];\n\nexport { i18next as i18n, languages };\n","export default __webpack_public_path__ + \"static/media/icon_512.288aac9e.png\";","export const condition = (\n {\n what,\n is,\n is_not,\n less_than,\n more_than,\n in: _in,\n includes,\n not_in,\n not_into,\n ends_with,\n starts_with,\n and,\n or,\n case_sensitive = false,\n } = {},\n { data } = {}\n) => {\n what = what\n .replace('@', '')\n .split('.')\n .reverse()\n .reduce((value, key) => value[key], data);\n if (!case_sensitive) {\n what = `${what}`.normalize();\n typeof is !== 'undefined' && (is = `${is}`.normalize());\n typeof is_not !== 'undefined' && (is_not = `${is_not}`.normalize());\n typeof includes !== 'undefined' && (includes = `${includes}`.normalize());\n typeof not_into !== 'undefined' && (not_into = `${not_into}`.normalize());\n }\n return (\n (((typeof is !== 'undefined' && what === is) ||\n (typeof is_not !== 'undefined' && what !== is_not) ||\n (typeof less_than !== 'undefined' && what < less_than) ||\n (typeof more_than !== 'undefined' && what > more_than) ||\n (typeof _in !== 'undefined' && (Array.isArray(_in) ? _in.includes(what) : (_in.stringify?.() || `${_in}`).includes(what))) ||\n (typeof includes !== 'undefined' && what.includes(includes)) ||\n (not_in === null ) ||\n (typeof not_in !== 'undefined' && !(\n (typeof not_in === 'string' && not_in.includes(what)) ||\n (Array.isArray(not_in) && not_in.includes(what)) ||\n (typeof not_in === 'object' && Object.values(not_in).includes(what)))) ||\n (typeof not_into !== 'undefined' && !not_into.includes(what)) ||\n (typeof starts_with !== 'undefined' &&\n what.match(new RegExp(`^${starts_with}`)) !== null) ||\n (typeof ends_with !== 'undefined' &&\n what.match(new RegExp(`${ends_with}$`)) !== null)) &&\n (typeof and === 'undefined' ||\n condition({ ...and, case_sensitive }, { data }))) ||\n (typeof or !== 'undefined' &&\n condition({ ...or, case_sensitive }, { data }))\n );\n};\n\nexport const kebabToCamel = (kebab) => {\n return kebab.replace(/-./g, (str) => str.toUpperCase()[1]);\n};\n\nexport const getFieldValue = ( str, field, data ) => {\n // Comprueba si 'data' es un objeto y si tiene la propiedad 'field'.\n if (typeof data === 'object' && data !== null && field in data) {\n return data[field];\n }else if (typeof data === 'object' && data !== null && field === 'index') {\n return data['INDEX'];\n } \n // Si 'data' no es un objeto y se está intentando reemplazar '@field.value'.\n else if (field === 'value') {\n const isNumericKey = key => !isNaN(key) && isFinite(key);\n const concatenatedString = Object.keys(data)\n .filter(isNumericKey)\n .sort((a, b) => a - b) // Ordena las claves numéricamente\n .reduce((acc, key) => acc + data[key], \"\");\n return concatenatedString;\n }\n // Devuelve null si no se cumple ninguna de las condiciones anteriores.\n return null;\n};\n\nexport const getLanguage = () => {\n return navigator.language.split('-')[0];\n};\n\nexport const getUnique = (arr, attribute = 'id') => {\n return arr\n .map((e) => e[attribute])\n .map((e, i, final) => final.indexOf(e) === i && i)\n .filter((e) => arr[e])\n .map((e) => arr[e]);\n};\n\nexport const getValueFromPath = (obj, path) => {\n return path.split('.').reduce((current, key) => current ? current[key] : null, obj);\n}\n\nexport const isDate = (d) => d instanceof Date;\n\nexport const isEmpty = (o) => Object.keys(o).length === 0;\n\nexport const isObject = (o) => o !== null && typeof o === 'object';\n\nexport const isValidHex = (hex) =>\n hex.match(/^#([A-Fa-f0-9]{3,4}){1,2}$/) !== null;\n\nexport const getAmountFormat = (amount, options = {}) => {\n try {\n const { decimals = 0, thousands = true } = options;\n amount = amount.toFixed(decimals);\n if (!thousands) {\n return amount;\n }\n amount = parseFloat(amount);\n let lang = getLanguage();\n lang = lang.includes('es') ? 'de' : lang;\n return new Intl.NumberFormat(lang).format(amount);\n } catch (error) {\n return amount;\n }\n};\n\nexport const getStringAsFile = (value = {}) => {\n try{\n const signatures = {\n JVBERi0: \"application/pdf\",\n R0lGODdh: \"image/gif\",\n R0lGODlh: \"image/gif\",\n iVBORw0KGgo: \"image/png\",\n \"/9j/\": \"image/jpg\"\n };\n\n var mime = null;\n for (var s in signatures) {\n if (value.indexOf(s) === 0) {\n mime = signatures[s];\n break;\n }\n }\n if( mime === null ){\n return value;\n }\n const byteCharacters = atob(value);\n // From Base64 to File object\n var n = byteCharacters.length;\n var u8arr = new Uint8Array(n);\n while(n--){\n u8arr[n] = byteCharacters.charCodeAt(n);\n }\n return new File([u8arr], 'file.'+mime.split('/')[1], {type:mime});\n }catch(e){\n return value;\n }\n};\n\nexport const getCurrencyFormat = (amount, options = {}) => {\n try {\n let {\n currency = 'EUR',\n lang = 'local',\n min_decimals: minimumFractionDigits,\n } = options;\n if (lang === 'local') {\n lang = getLanguage();\n }\n lang = lang.includes('es') ? 'de' : lang;\n const formatter = new Intl.NumberFormat(lang, {\n style: 'currency',\n currency,\n minimumFractionDigits,\n // These options are needed to round to whole numbers if that's what you want.\n // minimumFractionDigits: 0, // (this suffices for whole numbers, but will print 2500.10 as $2,500.1)\n // maximumFractionDigits: 0, // (causes 2500.99 to be printed as $2,501)\n });\n return formatter.format(amount);\n } catch (error) {\n return amount;\n }\n};\n\nexport const getDateFormat = (date, options = {}) => {\n try {\n let { lang = 'local', ...dateOptions } = options;\n if (lang === 'local') {\n lang = getLanguage();\n }\n return new Intl.DateTimeFormat(lang, dateOptions).format(date);\n } catch (error) {\n return date;\n }\n};\n\nexport const parse = (what) => {\n if (typeof what === 'undefined') {\n return null;\n }\n\n // This IF avoids that input texts transform +3 to 3\n if (typeof what === 'string' && what.startsWith('+')) {\n return what;\n }\n\n if (isObject(what) || typeof what === 'number') {\n return what;\n }\n let _what = `${what}`;\n const isNumber = _what !== '' && !_what.match(/^0\\d/) && !isNaN(_what);\n _what = isNumber ? parseFloat(_what) : _what;\n _what = _what === 'null' ? null : _what;\n _what = _what === 'true' ? true : _what;\n _what = _what === 'false' ? false : _what;\n return _what;\n};\n\nexport const getLocationParams = ( search, pathname ) => {\n const params = [];\n search\n .replace('?', '')\n .split('&')\n .filter((entry) => entry)\n .forEach((entry) => {\n const [key, value] = entry.split('=');\n params.push({function: 'set', what:`@property.${key}`,value: value})\n });\n \n return params;\n};","import { useContext } from 'react';\nimport { FunctionsContext } from '../context';\n\nexport function useFunctions() {\n const context = useContext(FunctionsContext);\n return { ...context };\n}\n","import { useContext } from 'react';\nimport { RefsContext } from '../context';\n\nexport function useRefs() {\n const context = useContext(RefsContext);\n return { ...context };\n}\n","import { useEffect, useState } from 'react';\nimport { useFunctions, useRefs } from '.';\nimport { getKeys } from '../context/Refs';\nimport { parse } from '../util';\n\nexport function useSource(\n what,\n { data, filter, isCollection, order, limit } = {}\n) {\n const { get } = useFunctions();\n const refs = useRefs();\n const keys = getKeys(what);\n const { [keys[0]]: mainRef = {} } = refs;\n const { [keys[1]]: ref } = mainRef;\n const _value = keys.length\n ? keys.reduce((resp, key) => resp?.[key], refs)\n : what;\n const [value, setValue] = useState(parse(_value));\n const [vars, setVars] = useState([]);\n\n useEffect(() => {\n (async () => {\n let _refs = `${what}`.match(/(\\(@)([^.]+)\\.([^)]+)\\)?/g) || [];\n const _vars = await Promise.all(\n _refs.map(async (ref) => {\n return await get({ what: ref }, { data });\n })\n );\n if (!vars._equals(_vars)) {\n setVars(_vars);\n }\n })();\n }, [what, refs]);\n\n useEffect(() => {\n let mounted = true;\n (async () => {\n if (what) {\n const value = await get(\n { what, filter, isCollection, order, limit },\n { data }\n );\n mounted && setValue(value);\n }\n })();\n return () => {\n mounted = false;\n };\n }, [what, ref, data, filter, order, limit, vars]);\n\n return { value };\n}\n\nexport default useSource;\n","import { useEffect, useState } from 'react';\nimport { useFunctions, useRefs } from '.';\nimport { getKeys } from '../context/Refs';\n\nexport function useVisibility(\n ifProp,\n { data, id, isVisible: isVisibleProp = true } = {}\n) {\n const { if: condition } = useFunctions();\n const refs = useRefs();\n const [isVisible, setVisible] = useState(isVisibleProp);\n const { what } = ifProp || {};\n const keys = getKeys(what);\n const { [keys[0]]: mainRef = {} } = refs;\n const { [keys[1]]: ref } = mainRef;\n const { visible: isElementVisible = isVisible } = refs.element?.[id] || {};\n\n useEffect(() => {\n let mounted = true;\n (async () => {\n const isVisible = ifProp\n ? await condition(ifProp, { data })\n : isElementVisible;\n mounted && setVisible(isVisible);\n })();\n return () => {\n mounted = false;\n };\n }, [data, ifProp, ref, isElementVisible]);\n\n return isVisible;\n}\n","import { useContext } from 'react';\nimport { ApiContext } from '../context';\n\nexport function useApi() {\n const context = useContext(ApiContext);\n return { ...context };\n}\n","import { useContext } from 'react';\nimport { FirebaseContext } from '../context';\n\nexport function useFirebase() {\n const context = useContext(FirebaseContext);\n return { ...context };\n}\n","import { useContext } from 'react';\nimport { DialogsContext } from '../context';\n\nexport function useDialogs() {\n const context = useContext(DialogsContext);\n return { ...context };\n}\n","import Cookies from 'js-cookie';\nimport { i18n } from '../../i18n';\nimport { isObject } from '../../util';\n\nexport const REFS = {\n INITIAL_STATE: {\n app: {\n language: i18n.language,\n },\n cookie: Cookies.get(),\n element: {},\n menu: {},\n property: {},\n },\n\n SET: 'REFS_SET',\n};\n\nexport const RefsReducer = (draft, action) => {\n const { payload, type } = action;\n switch (type) {\n case REFS.SET:\n Object.entries(payload.refs.cookie || {}).forEach(([key, value]) =>\n Cookies.set(key, isObject(key) ? JSON.stringify(value) : value)\n );\n draft.app = {\n ...draft.app,\n ...(payload.refs.app || {}),\n };\n draft.cookie = {\n ...draft.cookie,\n ...(payload.refs.cookie || {}),\n };\n draft.element = {\n ...draft.element,\n ...(payload.refs.element || {}),\n };\n draft.menu = {\n ...draft.menu,\n ...(payload.refs.menu || {}),\n };\n draft.property = {\n ...draft.property,\n ...(payload.refs.property || {}),\n };\n break;\n\n default:\n return draft;\n }\n};\n","export const API = {\n INITIAL_STATE: {},\n GET:'GET_FROM_API'\n};\n\nexport const ApiReducer = (draft, action) => {\n const { payload, type } = action;\n switch (type) {\n \n case API.GET:\n draft[payload.key] = payload.value;\n break;\n \n default:\n return draft;\n }\n};\n","// Custom imports:\n\nexport const FIREBASE = {\n INITIAL_STATE: {\n // Custom states:\n\t\tfirestore: {},\n\t\tstorage: {},\n\t\tlast: {},\n },\n // Custom consts:\n\t\tDELETE: 'FIREBASE_DELETE',\n\t\tSET: 'FIREBASE_SET',\n\t\tGET: 'FIREBASE_GET',\n\t\tLAST_ID: 'FIREBASE_LAST_ID',\n\t\tLAST_URL: 'FIREBASE_STORAGE_LAST_URL',\n\t\tSTORAGE_GET: 'FIREBASE_STORAGE_GET',\n};\n\nexport const FirebaseReducer = (draft, action) => {\n const { payload, type } = action;\n switch (type) {\n // Custom case:\n\n case FIREBASE.LAST_ID:\n draft.last = {\n ...draft.last,\n id: payload.id,\n };\n break;\n case FIREBASE.GET:\n const firestoreObj1 = draft.firestore._clone();\n const firestoreObj2 = { ...(payload.data || {}) };\n let draftFirestore = firestoreObj1._clone();\n draftFirestore = draftFirestore._merge(firestoreObj2);\n if (!firestoreObj1._equals(draftFirestore)) {\n draft.firestore = draftFirestore;\n }\n break;\n case FIREBASE.DELETE:\n let firestoreDeleted = draft.firestore._clone();\n firestoreDeleted = firestoreDeleted._delete(payload.keys.join('.'));\n draft.firestore = firestoreDeleted;\n break;\n case FIREBASE.STORAGE_GET:\n const storageObj1 = draft.storage._clone();\n const storageObj2 = { ...(payload.data || {}) };\n let draftStorage = storageObj1._clone();\n draftStorage = draftStorage._merge(storageObj2, 'path');\n if (!storageObj1._equals(draftStorage)) {\n draft.storage = draftStorage;\n }\n break;\n\n case FIREBASE.LAST_URL:\n draft.last = {\n ...draft.last,\n url: payload.url,\n };\n break;\n \n default:\n return draft;\n }\n};\n","export const DIALOGS = {\n INITIAL_STATE: {\n dialogs: {},\n },\n\n SHOW: 'DIALOGS_SHOW',\n HIDE: 'DIALOGS_HIDE',\n};\n\nexport const DialogsReducer = (draft, action) => {\n const { payload, type } = action;\n switch (type) {\n case DIALOGS.SHOW:\n draft.dialogs = {\n ...draft.dialogs,\n [payload.dialog]: { isShown: true },\n };\n break;\n case DIALOGS.HIDE:\n draft.dialogs = {\n ...draft.dialogs,\n [payload.dialog]: { isShown: false },\n };\n break;\n\n default:\n return draft;\n }\n};\n","var map = {\n\t\"./animations/complete_anim\": [\n\t\t115,\n\t\t3\n\t],\n\t\"./animations/complete_anim.json\": [\n\t\t115,\n\t\t3\n\t],\n\t\"./fonts/HurmeGeometricSans3Black.otf\": [\n\t\t281,\n\t\t9,\n\t\t5\n\t],\n\t\"./fonts/Nunito-VariableFont_wght.ttf\": [\n\t\t282,\n\t\t9,\n\t\t6\n\t],\n\t\"./fonts/Renner.ttf\": [\n\t\t283,\n\t\t9,\n\t\t7\n\t],\n\t\"./fonts/RussoOne-Regular.ttf\": [\n\t\t284,\n\t\t9,\n\t\t8\n\t],\n\t\"./icon/icon_512.png\": [\n\t\t154,\n\t\t9\n\t],\n\t\"./images/trans_256x128.png\": [\n\t\t102,\n\t\t9\n\t]\n};\nfunction webpackAsyncContext(req) {\n\tif(!__webpack_require__.o(map, req)) {\n\t\treturn Promise.resolve().then(function() {\n\t\t\tvar e = new Error(\"Cannot find module '\" + req + \"'\");\n\t\t\te.code = 'MODULE_NOT_FOUND';\n\t\t\tthrow e;\n\t\t});\n\t}\n\n\tvar ids = map[req], id = ids[0];\n\treturn Promise.all(ids.slice(2).map(__webpack_require__.e)).then(function() {\n\t\treturn __webpack_require__.t(id, ids[1])\n\t});\n}\nwebpackAsyncContext.keys = function webpackAsyncContextKeys() {\n\treturn Object.keys(map);\n};\nwebpackAsyncContext.id = 271;\nmodule.exports = webpackAsyncContext;","import React from 'react';\nimport { useVisibility } from '../hooks';\n\nexport const Component = ({\n __listId__,\n children,\n className = '',\n component: Cmp = 'div',\n itemData: data,\n itemDataSrc,\n if: condition,\n visible: isVisible = true,\n ...props\n}) => {\n const { id, onClick } = props;\n const conditionVisible = useVisibility(condition, { data, id, isVisible });\n className = `${className} ${onClick ? 'cursor-pointer' : ''}`.trim();\n\n if (!conditionVisible) {\n return null;\n }\n\n if (onClick) {\n props.onClick = () => onClick({ data })\n }\n\n return (\n \n {children}\n \n );\n};\n\nComponent.displayName = 'Component';\nexport default Component;\n","import React from 'react';\nimport Container from 'react-bootstrap/Container';\nimport Component from './Component';\n\nexport const Group = ({\n container = false,\n children,\n className = '',\n direction = 'vertical',\n tag: Tag = 'div',\n ...props\n}) => {\n const { itemData } = props;\n children = Array.isArray(children) ? children : [children];\n Tag = container ? Container : Tag;\n return (\n \n {itemData\n ? children\n .filter((child) => child)\n .map(({ props, ...child }) => ({\n ...child,\n props: {\n ...props,\n itemData,\n itemDataSrc: props?.src ? itemData[props?.src] : props?.src,\n },\n }))\n : children}\n \n );\n};\n\nGroup.displayName = 'Group';\nexport default Group;\n","import React from 'react';\nimport parse from 'html-react-parser';\nimport BootstrapButton from 'react-bootstrap/Button';\nimport Component from './Component';\n\nexport const Button = ({ children, className, ...props }) => {\n className = `opacity-100 ${className}`;\n return (\n \n {parse(children)}\n \n );\n};\n\nButton.displayName = 'Button';\nexport default Button;\n","import React from 'react';\nimport BootstrapModal from 'react-bootstrap/Modal';\nimport { Component } from '.';\nimport { useDialogs } from '../hooks';\n\nexport const Modal = ({ children, ...props }) => {\n const { dialogs = {}, hide } = useDialogs();\n const { [props.id]: dialog = {} } = dialogs;\n const { isShown = false } = dialog;\n\n const handleHide = () => {\n hide(props.id);\n };\n\n return (\n \n {children}\n \n );\n};\n\nModal.Body = BootstrapModal.Body;\nModal.Footer = BootstrapModal.Footer;\nModal.Header = BootstrapModal.Header;\nModal.Title = BootstrapModal.Title;\n\nModal.displayName = 'Modal';\nexport default Modal;\n","import React from 'react';\nimport ReactLottie from 'react-lottie';\nimport Component from './Component';\n\nexport const Lottie = ({\n autoplay = true,\n className = '',\n src: animationData,\n loop = true,\n speed = 1,\n ...props\n}) => {\n const options = {\n animationData,\n autoplay,\n loop,\n speed,\n };\n return (\n \n \n \n );\n};\n\nLottie.displayName = 'Lottie';\nexport default Lottie;\n","import React from 'react';\nimport BootstrapLabel from 'react-bootstrap/FormLabel';\nimport { Component } from '.';\n\nexport const Label = ({ children, className = '', ...props }) => {\n return (\n \n {children}\n \n );\n};\n\nLabel.displayName = 'Label';\nexport default Label;\n","import React, { useEffect, useRef, useState } from 'react';\nimport FloatingLabel from 'react-bootstrap/FloatingLabel';\nimport Form from 'react-bootstrap/Form';\nimport Component from './Component';\nimport Label from './Label';\nimport { useFunctions, useSource } from '../hooks';\nimport { getFieldValue, getValueFromPath, parse } from '../util';\n\nconst InputCheckbox = (props) => {\n return ;\n};\nconst InputSwitch = (props) => {\n return ;\n};\nconst InputRadio = (props) => {\n return ;\n};\nconst FormCheck = (props) => {\n return (\n \n );\n};\n\nconst InputColor = ({ className, label, ...props }) => {\n if (!label) {\n return (\n \n );\n }\n return (\n
\n {label && }\n \n
\n );\n};\n\nconst InputDate = ({\n className,\n label,\n max: maxProp,\n min: minProp,\n step: stepProp,\n value: valueProp,\n ...props\n}) => {\n const { itemData: data } = props;\n let { value: max } = useSource(maxProp, { data });\n let { value: min } = useSource(minProp, { data });\n let { value: step } = useSource(stepProp, { data });\n let { value } = useSource(valueProp, { data });\n\n if (max) {\n const maxDate = new Date(max);\n if( !Number.isNaN( maxDate.getTime() ) ){\n max = maxDate.toISOString().replace(/T.*/, '');\n }\n \n }\n if (min) {\n const minDate = new Date(min);\n if( !Number.isNaN( minDate.getTime() ) ){\n min = minDate.toISOString().replace(/T.*/, '');\n }\n }\n if (value) {\n const valueDate = new Date(value);\n if( !Number.isNaN( valueDate.getTime() ) ){\n value = valueDate.toISOString().replace(/T.*/, '');\n }\n }\n\n if (!label) {\n return (\n \n );\n }\n return (\n
\n {label && }\n \n
\n );\n};\n\nconst InputFile = ({ className, label, ...props }) => {\n if (!label) {\n return (\n \n );\n }\n return (\n
\n {label && }\n \n
\n );\n};\n\nconst InputRange = ({ className, label, ...props }) => {\n if (!label) {\n return (\n \n );\n }\n return (\n
\n {label && }\n \n
\n );\n};\n\nconst InputSelect = ({\n children,\n className,\n dataSrc,\n filter,\n floating,\n label,\n limit,\n mapSrc,\n options,\n order,\n ...props\n}) => {\n const { id, itemData: data } = props;\n const { value: sourceData } = useSource(dataSrc, {\n data,\n filter,\n isCollection: true,\n order,\n limit,\n });\n\n let sourceChildren;\n if (sourceData) {\n const labelPath = mapSrc?.label || 'label';\n const valuePath = mapSrc?.value || 'value';\n sourceChildren = Object.values(sourceData).map((data, index) => {\n const labelValue = getValueFromPath(data, labelPath);\n const valueValue = getValueFromPath(data, valuePath);\n \n return (\n \n {labelValue || ''}\n \n );\n });\n children = Array.isArray(children) ? children : [children];\n children = [...children, ...sourceChildren];\n }\n\n if (!label) {\n return (\n \n {children}\n \n );\n }\n const Wrapper = floating ? FloatingLabel : 'div';\n return (\n \n {label && !floating && }\n \n {children}\n \n \n );\n};\n\nconst InputEmail = (props) => {\n return ;\n};\nconst InputNumber = (props) => {\n return ;\n};\nconst InputPassword = (props) => {\n return ;\n};\nconst TextArea = (props) => {\n return ;\n};\nconst FormControl = ({ className = '', floating, label, ...props }) => {\n if (props.as === 'textarea') {\n className = `${className} flex-grow-1`.trim();\n }\n if (!label) {\n return (\n \n );\n }\n const Wrapper = floating ? FloatingLabel : 'div';\n return (\n \n {label && !floating && }\n \n \n );\n};\n\nexport const Input = ({\n component = Form.Control,\n onBlur,\n onChange,\n onKeyDown,\n valueField = 'value',\n src,\n ...mainProps\n}) => {\n let { itemData: data, [valueField]: defaultValue, ...props } = mainProps;\n\n if (typeof defaultValue === 'string') {\n defaultValue = defaultValue?.replace(\n /\\(?@field\\.([^)]*)\\)?/g,\n (str, field) => getFieldValue( str, field, data )\n );\n }\n const changing = useRef(false);\n const { set } = useFunctions();\n const { id } = props;\n let { value: srcValue = defaultValue } = useSource(src, { data });\n if (srcValue === null) {\n srcValue = defaultValue;\n }\n const [value, setValue] = useState(srcValue);\n const inputProps = {\n ...props,\n [valueField]: value !== src ? value : defaultValue,\n };\n\n if (props.type === 'date' && value) {\n const dateValue = new Date(value);\n if( !Number.isNaN( dateValue.getTime() ) ){\n inputProps.value = new Date(value).toISOString().split('T')[0];\n }\n }\n\n const handleBlur = async () => {\n onBlur?.({ data });\n };\n\n const handleChange = (event) => {\n const { currentTarget } = event;\n let { [valueField]: value } = currentTarget;\n const { multiple, type } = props;\n if (type === 'date') {\n value = new Date(value).getTime();\n }\n if (type === 'file' && !multiple) {\n value = value[0];\n }\n value = type === 'number' ? parse(value) : value;\n\n setValue(value);\n };\n\n const handleKeyDown = (event) => {\n if (event.key === 'Enter') {\n onKeyDown?.({data})\n }\n };\n\n useEffect(() => {\n return () => set({ what: `@element.${id}`, value: null });\n }, []);\n\n useEffect(() => {\n if (value === srcValue || value._equals(srcValue)) {\n return;\n }\n (async () => {\n const elementValue = {\n [valueField]: value,\n };\n if (valueField === 'files') {\n elementValue.url = window.URL.createObjectURL(value);\n }\n await set({\n what: `@element.${id}`,\n value: elementValue,\n });\n if (src) {\n await set({ what: src, value }, { data });\n }\n onChange?.({ data });\n })();\n }, [value]);\n\n useEffect(() => {\n setValue(srcValue);\n }, [srcValue]);\n\n useEffect(() => {\n if (!changing.current) {\n return;\n }\n onChange?.({ data });\n changing.current = false;\n }, [changing, srcValue]);\n\n return (\n \n );\n};\n\nInput.Checkbox = InputCheckbox;\nInput.Color = InputColor;\nInput.Date = InputDate;\nInput.Email = InputEmail;\nInput.File = InputFile;\nInput.Number = InputNumber;\nInput.Password = InputPassword;\nInput.Radio = InputRadio;\nInput.Range = InputRange;\nInput.Select = InputSelect;\nInput.Switch = InputSwitch;\nInput.Text = FormControl;\nInput.TextArea = TextArea;\n\nInput.displayName = 'Input';\nexport default Input;\n","import React from 'react';\nimport parseHtml from 'html-react-parser';\nimport showdown from 'showdown';\nimport { Component } from '.';\nimport { useSource } from '../hooks';\nimport {\n getAmountFormat,\n getCurrencyFormat,\n getDateFormat,\n getFieldValue,\n isObject,\n} from '../util';\n\nexport const Text = ({\n children: childrenProps = '',\n className = '',\n format = {},\n itemDataSrc,\n src,\n tag: Tag = 'div',\n ...props\n}) => {\n let text = childrenProps;\n const { id, itemData: data } = props;\n const { value } = useSource(src, { data });\n text = `${text}`?.replace(\n /\\(?@field\\.([^)]*)\\)?/g,\n (str, field) => getFieldValue( str, field, data )\n );\n let children =\n text\n .match(/\\((?:[^)(]+|\\((?:[^)(]+|\\([^)(]*\\))*\\))*\\)/gm)\n ?.reduce((children, entry, i) => {\n const src = entry.substring(1, entry.length - 1);\n const index = text.indexOf(src);\n const subtext = text.substring(0, index - 1);\n const plain = index > 0 ? [subtext] : [];\n text = text.substr(index + src.length + 1);\n return [\n ...children,\n ...plain,\n ,\n ];\n }, []) || [];\n if (text) {\n children = [...children, text];\n }\n\n let textToShow = children;\n if (src) {\n textToShow =\n (isObject(itemDataSrc) && `${JSON.stringify(itemDataSrc)}`) ||\n (typeof itemDataSrc !== 'undefined' &&\n itemDataSrc !== null &&\n `${`${itemDataSrc}`.replace(\n /\\(@field\\.([^)]*)\\)/g,\n (str, field) => getFieldValue( str, field, data )\n )}`) ||\n (isObject(value) && `${JSON.stringify(value)}`) ||\n (typeof value !== 'undefined' &&\n value !== null &&\n value !== src &&\n `${`${value}`.replace(\n /\\(?@field\\.([^)]*)\\)?/g,\n (str, field) => getFieldValue( str, field, data )\n )}`);\n }\n\n const { type, ...formatOptions } = format;\n if (type) {\n textToShow = Array.isArray(textToShow) ? textToShow : [textToShow];\n textToShow = textToShow.map((text) => {\n \n if (type === 'amount') {\n text = parseInt(text);\n return getAmountFormat(text, formatOptions);\n } else if (type === 'currency') {\n text = parseInt(text);\n return getCurrencyFormat(text, formatOptions);\n } else if (type === 'date') {\n if (!isNaN(text)) {\n text = parseInt(text);\n }\n const dateFromText = new Date(text);\n return `${getDateFormat(dateFromText, formatOptions)}`;\n } else if (type === 'html') {\n text = parseHtml(`${text}`);\n } else if (type === 'markdown' && typeof text === 'string' ){\n const converter = new showdown.Converter({tables: true});\n text = parseHtml(converter.makeHtml(text));\n }\n\n return text;\n });\n }\n\n return (\n \n {textToShow}\n \n );\n};\n\nText.displayName = 'Text';\nexport default Text;\n","import React, { useEffect, useState } from 'react';\nimport Component from './Component';\nimport { useSource } from '../hooks';\nimport { getFieldValue } from '../util';\n\nexport const Image = ({\n className = '',\n itemDataSrc,\n fallback: fallbackProp,\n src: srcProp,\n tag: Tag = 'img',\n ...props\n}) => {\n const { itemData: data } = props;\n const [dataValue, setDataValue] = useState();\n if (itemDataSrc?.[0] === '@') {\n srcProp = itemDataSrc;\n }\n let { value: fallback = fallbackProp } = useSource(fallbackProp, { data });\n const { value } = useSource(srcProp, { data });\n const [hasError, setHasError] = useState(false);\n\n useEffect(() => {\n let mounted = true;\n (async () => {\n try {\n const { default: url } = await import(\n `../assets/${itemDataSrc || value}`\n );\n mounted && setDataValue(url);\n } catch (e) {}\n })();\n return () => {\n mounted = false;\n };\n }, [itemDataSrc, value]);\n\n useEffect(() => {\n setHasError(false);\n }, [value]);\n\n fallback =\n fallback &&\n encodeURI(\n fallback.replace(/\\(@field\\.([^)]*)\\)/g, (str, field) => getFieldValue( str, field, data ))\n );\n let src =\n dataValue ||\n (itemDataSrc?.match?.(/^(@|data:image\\/|(blob:)?http|\\/static\\/)/) &&\n itemDataSrc) ||\n (value?.match?.(/^(@|data:image\\/|(blob:)?http|\\/static\\/)/) && value) ||\n (srcProp?.match?.(/^(data:image\\/|(blob:)?http|\\/static\\/)/) && srcProp) ||\n fallback;\n\n if (hasError) {\n src = fallback;\n }\n\n if (src?.match(/^@/)) {\n return (\n \n );\n }\n\n return (\n {\n if (fallback && e.currentTarget.src !== fallback) {\n setHasError(true);\n }\n }}\n />\n );\n};\n\nImage.displayName = 'Image';\nexport default Image;\n","import React, { useEffect, useState } from 'react';\nimport ReactIcon from '@mdi/react';\nimport { Component } from '.';\nimport { kebabToCamel } from '../util';\n\nexport const Icon = ({ className = '', size = 1, src, ...props }) => {\n const [path, setPath] = useState();\n\n useEffect(() => {\n let mounted = true;\n import('@mdi/js').then((icons) => {\n mounted && setPath(icons[kebabToCamel(`mdi-${src}`)]);\n });\n return () => {\n mounted = false;\n };\n }, [src]);\n\n if (!path) {\n return null;\n }\n return (\n \n );\n};\n\nIcon.displayName = 'Icon';\nexport default Icon;\n\n/*\nProp PropTypes Default Details\n---------------------------------------------------------\npath string\t required\t SVG path data. Usually from @mdi/js\ntitle string, null\t null\t A11y {title}\ndescription string, null\t null\t A11y {desc}\nsize number, string\tnull\t {size * 1.5}rem, '1em', '24px'\nhorizontal bool\t false\t Flip Horizontal\nvertical bool\t false\t Flip Vertical\nrotate number\t 0\t \n degrees 0 to 360\ncolor string\t currentColor\tCSS color values, such as rgb(), rgba(), #000 etc\nspin bool, number\t false\t true = 2s, {spin}s\n*/\n","import React from 'react';\nimport Badge from 'react-bootstrap/Badge';\nimport BootstrapNav from 'react-bootstrap/Nav';\nimport NavDropdown from 'react-bootstrap/NavDropdown';\nimport Component from './Component';\nimport Icon from './Icon';\nimport Image from './Image';\nimport { useFunctions, useSource } from '../hooks';\n\nconst ItemBadge = ({ filter, path, src }) => {\n const { value: srcBadge } = useSource(src, {\n filter,\n });\n const { value: elementValue } = useSource(path);\n let { badge: elementBadge } = elementValue || {};\n elementBadge = elementBadge || 0;\n const badge = srcBadge || elementBadge;\n if (!badge) {\n return null;\n }\n return (\n \n {badge}\n \n );\n};\n\nconst NavItem = ({\n badge,\n badgeFilter,\n children,\n onClick,\n drop = 'bottom',\n href = '',\n icon = '',\n id,\n image = '',\n isDropDownChild = false,\n path,\n title,\n type,\n ...props\n}) => {\n const { set } = useFunctions();\n if (children) {\n children = Array.isArray(children) ? children : [children];\n return (\n \n {children.map((child) => ({\n ...child,\n props: {\n ...child.props,\n drop: 'end',\n isDropDownChild: true,\n },\n }))}\n \n );\n }\n\n const handleClick = async () => {\n await set({ what: badge || `@menu.${path}.${id}.badge`, value: 0 });\n onClick?.();\n };\n\n const Item = isDropDownChild ? NavDropdown.Item : BootstrapNav.Item;\n const ItemIcon = image ? Image : Icon;\n const regexp = new RegExp(`^/(${href})$`);\n const isActive = href && window.location.pathname.match(regexp);\n\n return (\n \n {isDropDownChild ? (\n <>\n {(icon || image) && }\n {title}\n \n \n ) : (\n \n {(icon || image) && }\n {title}\n \n \n )}\n \n );\n};\n\nexport const Nav = ({ children = [], className, direction, id, ...props }) => {\n const directionClass = direction === 'vertical' ? 'flex-column' : '';\n children = Array.isArray(children) ? children : [children];\n return (\n \n {children?.map((child) => {\n const { props } = child;\n return { ...child, props: { ...props, path: id } };\n })}\n \n );\n};\n\nNav.Item = NavItem;\n\nNav.displayName = 'Nav';\nexport default Nav;\n","import React from 'react';\nimport { useDialogs } from '../hooks';\nimport { useFunctions } from '../hooks';\n\n// Custom imports:\nimport { Modal, Text, Button } from '../components';\nimport { useTranslation } from 'react-i18next';\n\nconst ErrorDialog = () => {\n const { run } = useFunctions();\n // Custom exports:\n\tconst { t } = useTranslation();\n\n // Custom functions:\n\tconst error_buttons_positiveOnClick = async (options) => {\n\t\trun([{\"function\":\"hide\",\"dialog\":\"error\"}], options)\n\t}\n\n return (\n \n \n\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{t('error.title')}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t('error.text1738167790545')}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t('error.error_buttons_positive')}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\n \n );\n};\n\nexport default ErrorDialog;\n","import React from 'react';\nimport { useDialogs } from '../hooks';\nimport { useFunctions } from '../hooks';\n\n// Custom imports:\nimport { Modal, Text, Group, Button } from '../components';\nimport { useTranslation } from 'react-i18next';\n\nconst Main_dialogDialog = () => {\n const { run } = useFunctions();\n // Custom exports:\n\tconst { t } = useTranslation();\n\n // Custom functions:\n\tconst main_dialog_buttons_positiveOnClick = async (options) => {\n\t\trun([{\"id\":\"popup1739231816466\",\"function\":\"popup\",\"dialog\":\"terms\"},{\"function\":\"hide\",\"dialog\":\"main_dialog\"}], options)\n\t}\n\tconst main_dialog_buttons_negativeOnClick = async (options) => {\n\t\trun([{\"function\":\"hide\",\"dialog\":\"main_dialog\"}], options)\n\t}\n\n return (\n \n \n\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{t('main_dialog.title')}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t('main_dialog.verifyInstructions')}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.text1738167310935')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.text1738167339100')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.labelLastName')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.valueLastName')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.labelEmail')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.valueEmail')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.labelPhone')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.valuePhone')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.labelLicensePlate')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.valueLicensePlate')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.labelVehicleType')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.valueLicensePlate1738167673775')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.labelDate')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.valueDate')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.labelTime')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.valueTime')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.labelTime1738167712060')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('main_dialog.valueTime1738167712060')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t('main_dialog.main_dialog_buttons_negative')}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t('main_dialog.main_dialog_buttons_positive')}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\n \n );\n};\n\nexport default Main_dialogDialog;\n","import React from 'react';\nimport { useDialogs } from '../hooks';\nimport { useFunctions } from '../hooks';\n\n// Custom imports:\nimport { Modal, Text, Button } from '../components';\nimport { useTranslation } from 'react-i18next';\n\nconst MissingDialog = () => {\n const { run } = useFunctions();\n // Custom exports:\n\tconst { t } = useTranslation();\n\n // Custom functions:\n\tconst missing_buttons_positiveOnClick = async (options) => {\n\t\trun([{\"function\":\"hide\",\"dialog\":\"missing\"}], options)\n\t}\n\n return (\n \n \n\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{t('missing.title')}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t('missing.text1738166643450')}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t('missing.missing_buttons_positive')}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\n \n );\n};\n\nexport default MissingDialog;\n","import React from 'react';\nimport { useDialogs } from '../hooks';\nimport { useFunctions } from '../hooks';\n\n// Custom imports:\nimport { Modal, Group, Text, Button } from '../components';\nimport { useTranslation } from 'react-i18next';\n\nconst TermsDialog = () => {\n const { run } = useFunctions();\n // Custom exports:\n\tconst { t } = useTranslation();\n\n // Custom functions:\n\tconst terms_buttons_positiveOnClick = async (options) => {\n\t\trun([{\"id\":\"set1740049767621\",\"function\":\"set\",\"what\":\"@property.template_id\",\"value\":\"d-c0c2f870fc27452db5d6cc124c0492a0\"},{\"id\":\"set1740049784938\",\"function\":\"set\",\"what\":\"@property.template_id\",\"value\":\"@cookie.customer.template_id\",\"if\":{\"what\":\"@cookie.customer.template_id\",\"is_not\":null}},{\"id\":\"add1739231793149\",\"function\":\"add\",\"what\":{\"name\":\"@property.name\",\"last_name\":\"@property.last_name\",\"email\":\"@property.email\",\"date\":\"@property.date\",\"phone\":\"@property.phone\",\"license_plate\":\"@property.license_plate\",\"time\":\"@property.time\",\"vehicle_type\":\"@property.vehicle_type\",\"status\":\"PENDING\",\"notify_to\":\"@cookie.customer.notification_email\",\"purpose\":\"@property.message\",\"template_id\":\"@property.template_id\",\"list_id\":\"@cookie.customer.list_id\"},\"to\":\"@firebase.firestore.requests\",\"onsuccess\":[{\"id\":\"set1739231793149\",\"function\":\"set\",\"what\":\"@property.status\",\"value\":\"COMPLETE\"}],\"onerror\":[{\"id\":\"popup1739231793149\",\"function\":\"popup\",\"dialog\":\"error\"}]},{\"function\":\"hide\",\"dialog\":\"terms\"}], options)\n\t}\n\tconst terms_buttons_negativeOnClick = async (options) => {\n\t\trun([{\"function\":\"hide\",\"dialog\":\"terms\"}], options)\n\t}\n\n return (\n \n \n\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t{t('terms.title')}\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('terms.verifyInstructions1739231793149')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('terms.specificTermsText')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t('terms.termTitle_1')}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t('terms.termContent_1')}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t('terms.termTitle_2')}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t('terms.termContent_2')}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t('terms.termTitle_3')}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t('terms.termContent_3')}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t('terms.termTitle_4')}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t{t('terms.termContent_4')}\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t('terms.terms_buttons_negative')}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t('terms.terms_buttons_positive')}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\n \n );\n};\n\nexport default TermsDialog;\n","import React from 'react';\n\n// Custom imports:\nimport ErrorDialog from './ErrorDialog';\nimport Main_dialogDialog from './Main_dialogDialog';\nimport MissingDialog from './MissingDialog';\nimport TermsDialog from './TermsDialog';\n\n\n\nexport const Dialogs = () => {\n return (\n <>\n \n\t\t\t\n\t\t\t\n\t\t\t\n\t\t\t\n \n \n );\n};\n\nexport default Dialogs;\n","import React, { useEffect, useState } from 'react';\n\nexport const DoyoBadge = () => {\n const [visible, setVisible] = useState(false);\n\n useEffect(() => {\n (async () => {\n try {\n const { config = {} } = await (\n await fetch(\n `https://brain.doyo.tech/api/accounts/351570/config?host=${window.location.host}`\n )\n ).json();\n const { ads = {} } = config;\n const { enabled = true } = ads;\n setVisible(enabled);\n } catch (error) {\n setVisible(true);\n }\n })();\n }, []);\n\n if (!visible) {\n return null;\n }\n\n return (\n <>\n \n \n \n );\n};\nexport default DoyoBadge;\n","import React from 'react';\nimport { useTranslation } from 'react-i18next';\nimport { useFunctions } from '../hooks';\nimport DoyoBadge from '../components/DoyoBadge';\n\n// Custom imports:\nimport { Group } from '../components';\n\nexport const FullscreenWrapper = ({ children }) => {\n const { t } = useTranslation();\n const { run } = useFunctions();\n \n // Custom consts:\n\n // Custom functions:\n\n return (\n
\n \n\t\t\t\t{children}\n \n
\n );\n};\n","import React from 'react';\nimport { Container } from 'react-bootstrap';\nimport { Helmet } from 'react-helmet';\nimport { useFunctions, useRefs } from '../hooks';\nimport { FullscreenWrapper } from '../wrappers';\n\nimport { useLocation } from 'react-router-dom';\nimport { getLocationParams } from '../util';\n\n// Custom imports:\nimport { Group, Image, Text, Input, Lottie } from '../components';\nimport { useEffect } from 'react';\nimport complete_anim from '../assets/animations/complete_anim.json';\nimport trans_256x128 from '../assets/images/trans_256x128.png';\nimport { useTranslation } from 'react-i18next';\n\nexport const Contact_formView = () => {\n const { run } = useFunctions();\n const { search, pathname } = useLocation();\n\n\n // Custom exports:\n\tconst { t } = useTranslation();\n\n // Custom functions:\n\tconst contact_formParams = () => {\n\t\trun( getLocationParams( search, pathname ) )\n\t}\n\tuseEffect( contact_formParams, [])\n\tconst contact_formOnLoaded = async (options) => {\n\t\trun([{\"id\":\"set1736847857296\",\"function\":\"set\",\"what\":\"@property.status\",\"value\":\"FORM\"},{\"id\":\"set1736853032251\",\"function\":\"set\",\"what\":\"@cookie.customer\",\"value\":\"@firebase.firestore.customers.(@property.formID)\"},{\"id\":\"set1738173591987\",\"function\":\"set\",\"what\":\"@cookie.formID\",\"value\":\"@property.formID\"},{\"id\":\"set1738254612968\",\"function\":\"set\",\"what\":\"@property.vehicle_type\",\"value\":\"turism\"},{\"id\":\"set1739359449154\",\"function\":\"set\",\"what\":\"@property.time\",\"value\":\"0:00\"}], options)\n\t}\n\tuseEffect( contact_formOnLoaded, [])\n\tconst templateSlogan1672161128713OnClick = async (options) => {\n\t\trun([{\"id\":\"set1738166704713\",\"function\":\"set\",\"what\":\"@property.valid\",\"value\":true},{\"id\":\"set1738166719997\",\"function\":\"set\",\"what\":\"@property.valid\",\"value\":false,\"if\":{\"what\":\"@property.name\",\"is\":null}},{\"id\":\"set1738166775214\",\"function\":\"set\",\"what\":\"@property.valid\",\"value\":false,\"if\":{\"what\":\"@property.last_name\",\"is\":null}},{\"id\":\"set1738166783099\",\"function\":\"set\",\"what\":\"@property.valid\",\"value\":false,\"if\":{\"what\":\"@property.email\",\"is\":null}},{\"id\":\"set1738166817283\",\"function\":\"set\",\"what\":\"@property.valid\",\"value\":false,\"if\":{\"what\":\"@property.phone\",\"is\":null}},{\"id\":\"set1738166827650\",\"function\":\"set\",\"what\":\"@property.valid\",\"value\":false,\"if\":{\"what\":\"@property.date\",\"is\":null}},{\"id\":\"set1738166836649\",\"function\":\"set\",\"what\":\"@property.valid\",\"value\":false,\"if\":{\"what\":\"@property.time\",\"is\":null}},{\"id\":\"set1738166844349\",\"function\":\"set\",\"what\":\"@property.valid\",\"value\":false,\"if\":{\"what\":\"@property.license_plate\",\"is\":null}},{\"id\":\"set1738166853316\",\"function\":\"set\",\"what\":\"@property.valid\",\"value\":false,\"if\":{\"what\":\"@property.vehicle_type\",\"is\":null}},{\"id\":\"set1738166861500\",\"function\":\"set\",\"what\":\"@property.valid\",\"value\":false,\"if\":{\"what\":\"@property.message\",\"is\":null}},{\"id\":\"popup1738166875934\",\"function\":\"popup\",\"dialog\":\"missing\",\"if\":{\"what\":\"@property.valid\",\"is\":false}},{\"id\":\"popup1738166897735\",\"function\":\"popup\",\"dialog\":\"main_dialog\",\"if\":{\"what\":\"@property.valid\",\"is\":true}}], options)\n\t}\n\n return (\n <>\n \n\t\t\t\t{t('contact_form.title')}\n \n \n \n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('contact_form.templateSloganBig')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t{t('contact_form.formInstructions')}\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t('contact_form.templateSloganBig1738762553298')}\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t('contact_form.templateSlogan1738762553298')}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\t\t{t('contact_form.templateSlogan1672161128713')}\n\t\t\t\t\t\t\t\t\n\t\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t{t('contact_form.formInstructions1739294413589')}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n \n \n );\n};\n","import React from 'react';\nimport { Helmet } from 'react-helmet';\nimport { useTranslation } from 'react-i18next';\nimport { BrowserRouter as Router, Route, Switch } from 'react-router-dom';\nimport { ContextProviders } from './context';\n\n\n// Custom imports:\nimport Dialogs from './dialogs';\nimport { Contact_formView } from './pages';\n\n\nimport './styles/main.scss';\n\nfunction App() {\n const { t } = useTranslation();\n return (\n <>\n \n {t('title')}\n \n \n \n \n \n \n\t\t\t\t\t\t\n\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\n \n\n\t\t\t\t\t\n \n \n \n );\n}\n\nexport default App;\n","const reportWebVitals = (onPerfEntry) => {\n if (onPerfEntry && onPerfEntry instanceof Function) {\n import('web-vitals').then(({ getCLS, getFID, getFCP, getLCP, getTTFB }) => {\n getCLS(onPerfEntry);\n getFID(onPerfEntry);\n getFCP(onPerfEntry);\n getLCP(onPerfEntry);\n getTTFB(onPerfEntry);\n });\n }\n};\n\nexport default reportWebVitals;\n","// This optional code is used to register a service worker.\n// register() is not called by default.\n\n// This lets the app load faster on subsequent visits in production, and gives\n// it offline capabilities. However, it also means that developers (and users)\n// will only see deployed updates on subsequent visits to a page, after all the\n// existing tabs open on the page have been closed, since previously cached\n// resources are updated in the background.\n\n// To learn more about the benefits of this model and instructions on how to\n// opt-in, read https://cra.link/PWA\n\nconst isLocalhost = Boolean(\n window.location.hostname === 'localhost' ||\n // [::1] is the IPv6 localhost address.\n window.location.hostname === '[::1]' ||\n // 127.0.0.0/8 are considered localhost for IPv4.\n window.location.hostname.match(\n /^127(?:\\.(?:25[0-5]|2[0-4][0-9]|[01]?[0-9][0-9]?)){3}$/\n )\n );\n \n export function register(config) {\n if (process.env.NODE_ENV === 'production' && 'serviceWorker' in navigator) {\n // The URL constructor is available in all browsers that support SW.\n const publicUrl = new URL(process.env.PUBLIC_URL, window.location.href);\n if (publicUrl.origin !== window.location.origin) {\n // Our service worker won't work if PUBLIC_URL is on a different origin\n // from what our page is served on. This might happen if a CDN is used to\n // serve assets; see https://github.com/facebook/create-react-app/issues/2374\n return;\n }\n \n window.addEventListener('load', () => {\n const swUrl = `${process.env.PUBLIC_URL}/service-worker.js`;\n \n if (isLocalhost) {\n // This is running on localhost. Let's check if a service worker still exists or not.\n checkValidServiceWorker(swUrl, config);\n \n // Add some additional logging to localhost, pointing developers to the\n // service worker/PWA documentation.\n navigator.serviceWorker.ready.then(() => {\n console.log(\n 'This web app is being served cache-first by a service ' +\n 'worker. To learn more, visit https://cra.link/PWA'\n );\n });\n } else {\n // Is not localhost. Just register service worker\n registerValidSW(swUrl, config);\n }\n });\n }\n }\n \n function registerValidSW(swUrl, config) {\n navigator.serviceWorker\n .register(swUrl)\n .then((registration) => {\n registration.onupdatefound = () => {\n const installingWorker = registration.installing;\n if (installingWorker == null) {\n return;\n }\n installingWorker.onstatechange = () => {\n if (installingWorker.state === 'installed') {\n if (navigator.serviceWorker.controller) {\n // At this point, the updated precached content has been fetched,\n // but the previous service worker will still serve the older\n // content until all client tabs are closed.\n console.log(\n 'New content is available and will be used when all ' +\n 'tabs for this page are closed. See https://cra.link/PWA.'\n );\n \n // Execute callback\n if (config && config.onUpdate) {\n config.onUpdate(registration);\n }\n caches.keys().then(cacheNames => {\n cacheNames.forEach(cacheName => {\n caches.delete(cacheName);\n });\n });\n window.location.reload();\n } else {\n // At this point, everything has been precached.\n // It's the perfect time to display a\n // \"Content is cached for offline use.\" message.\n console.log('Content is cached for offline use.');\n \n // Execute callback\n if (config && config.onSuccess) {\n config.onSuccess(registration);\n }\n }\n }\n };\n };\n })\n .catch((error) => {\n console.error('Error during service worker registration:', error);\n });\n }\n \n function checkValidServiceWorker(swUrl, config) {\n // Check if the service worker can be found. If it can't reload the page.\n fetch(swUrl, {\n headers: { 'Service-Worker': 'script' },\n })\n .then((response) => {\n // Ensure service worker exists, and that we really are getting a JS file.\n const contentType = response.headers.get('content-type');\n if (\n response.status === 404 ||\n (contentType != null && contentType.indexOf('javascript') === -1)\n ) {\n // No service worker found. Probably a different app. Reload the page.\n navigator.serviceWorker.ready.then((registration) => {\n registration.unregister().then(() => {\n window.location.reload();\n });\n });\n } else {\n // Service worker found. Proceed as normal.\n registerValidSW(swUrl, config);\n }\n })\n .catch(() => {\n console.log(\n 'No internet connection found. App is running in offline mode.'\n );\n });\n }\n \n export function unregister() {\n if ('serviceWorker' in navigator) {\n navigator.serviceWorker.ready\n .then((registration) => {\n registration.unregister();\n })\n .catch((error) => {\n console.error(error.message);\n });\n }\n }\n ","import md5 from 'crypto-js/md5';\nimport { getUnique, isDate, isEmpty, isObject } from '.';\n\nexport const initializeDefines = () => {\n // eslint-disable-next-line\n String.prototype.localeIncludes = function (\n searchString,\n { position = 0, locales, ...options } = { sensitivity: 'base' }\n ) {\n searchString = searchString || '';\n const stringLength = this.length;\n const searchStringLength = searchString.length;\n const lengthDiff = stringLength - searchStringLength;\n for (let i = position; i <= lengthDiff; i++) {\n if (\n this.substring(i, i + searchStringLength).localeCompare(\n searchString,\n locales,\n options\n ) === 0\n ) {\n return true;\n }\n }\n return false;\n };\n\n const normalizeMap = {\n á: 'a',\n à: 'a',\n â: 'a',\n ä: 'a',\n é: 'e',\n è: 'e',\n ê: 'e',\n ë: 'e',\n í: 'i',\n ì: 'i',\n î: 'i',\n ï: 'i',\n ó: 'o',\n ò: 'o',\n ô: 'o',\n ö: 'o',\n ú: 'u',\n ù: 'u',\n û: 'u',\n ü: 'u',\n };\n // eslint-disable-next-line\n String.prototype.normalize = function () {\n return this.toLowerCase().replace(\n /[áàâäéèêëíìîïóòôöúùûü]/gi,\n (match) => normalizeMap[match]\n );\n };\n\n // eslint-disable-next-line\n String.prototype.encodeUrl = function () {\n return encodeURIComponent(this);\n };\n\n // eslint-disable-next-line\n String.prototype.decodeUrl = function () {\n return decodeURIComponent(this);\n };\n\n // eslint-disable-next-line\n String.prototype.toFile = function () {\n try{\n const signatures = {\n JVBERi0: \"application/pdf\",\n R0lGODdh: \"image/gif\",\n R0lGODlh: \"image/gif\",\n iVBORw0KGgo: \"image/png\",\n \"/9j/\": \"image/jpg\"\n };\n\n var mime = null;\n for (var s in signatures) {\n if (this.indexOf(s) === 0) {\n mime = signatures[s];\n break;\n }\n }\n if( mime === null ){\n return this;\n }\n const byteCharacters = atob(this);\n // From Base64 to File object\n var n = byteCharacters.length;\n var u8arr = new Uint8Array(n);\n while(n--){\n u8arr[n] = byteCharacters.charCodeAt(n);\n }\n return new File([u8arr], 'file.'+mime.split('/')[1], {type:mime});\n }catch(e){\n return this;\n }\n };\n\n // eslint-disable-next-line\n String.prototype.toMd5 = function () {\n return md5(this).toString();\n };\n\n // eslint-disable-next-line\n String.prototype.toJson = function () {\n return JSON.parse(this);\n };\n\n // eslint-disable-next-line\n Object.defineProperty(Object.prototype, '_equals', {\n enumerable: false,\n value: function (obj) {\n let p;\n if (this === obj) {\n return true;\n }\n\n // some checks for native types first\n\n // function and sring\n if (\n typeof this === 'function' ||\n typeof this === 'string' ||\n this instanceof String\n ) {\n if (\n typeof obj === 'function' ||\n typeof obj === 'string' ||\n obj instanceof String\n ) {\n return this.toString() === obj.toString();\n }\n return false;\n }\n\n // number\n if (this instanceof Number || typeof this === 'number') {\n if (obj instanceof Number || typeof obj === 'number') {\n return this.valueOf() === obj.valueOf();\n }\n return false;\n }\n\n // null._equals(null) and undefined._equals(undefined) do not inherit from the\n // Object.prototype so we can return false when they are passed as obj\n if (\n typeof this !== typeof obj ||\n obj === null ||\n typeof obj === 'undefined'\n ) {\n return false;\n }\n\n function sort(o) {\n const result = {};\n\n if (o === null || typeof o !== 'object') {\n return o;\n }\n\n Object.keys(o)\n .sort()\n .forEach(function (key) {\n result[key] = sort(o[key]);\n });\n\n return result;\n }\n\n if (typeof this === 'object') {\n if (Array.isArray(this)) {\n // check on arrays\n return JSON.stringify(this) === JSON.stringify(obj);\n } else {\n // anyway objects\n for (p in this) {\n if (typeof this[p] !== typeof obj[p]) {\n return false;\n }\n if ((this[p] === null) !== (obj[p] === null)) {\n return false;\n }\n switch (typeof this[p]) {\n case 'undefined':\n if (typeof obj[p] !== 'undefined') {\n return false;\n }\n break;\n case 'object':\n if (\n this[p] !== null &&\n obj[p] !== null &&\n (this[p].constructor.toString() !==\n obj[p].constructor.toString() ||\n !this[p]._equals(obj[p]))\n ) {\n return false;\n }\n break;\n case 'function':\n if (this[p].toString() !== obj[p].toString()) {\n return false;\n }\n break;\n default:\n if (this[p] !== obj[p]) {\n return false;\n }\n }\n }\n }\n }\n\n // at least check them with JSON\n return JSON.stringify(sort(this)) === JSON.stringify(sort(obj));\n },\n });\n\n // eslint-disable-next-line\n Object.defineProperty(Object.prototype, '_diff', {\n enumerable: false,\n value: function (rhs) {\n const lhs = this;\n const properObject = (o) =>\n isObject(o) && !o.hasOwnProperty ? { ...o } : o;\n\n const diff = (lhs, rhs) => {\n if (lhs === rhs) return {}; // equal return no diff\n\n if (!isObject(lhs) || !isObject(rhs)) return rhs; // return updated rhs\n\n const l = properObject(lhs);\n const r = properObject(rhs);\n\n const deletedValues = Object.keys(l).reduce((acc, key) => {\n // eslint-disable-next-line\n return r.hasOwnProperty(key) ? acc : { ...acc, [key]: undefined };\n }, {});\n\n if (isDate(l) || isDate(r)) {\n // eslint-disable-next-line\n if (l.valueOf() == r.valueOf()) return {};\n return r;\n }\n\n return Object.keys(r).reduce((acc, key) => {\n // eslint-disable-next-line\n if (!l.hasOwnProperty(key)) return { ...acc, [key]: r[key] }; // return added r key\n\n const difference = diff(l[key], r[key]);\n\n if (\n isObject(difference) &&\n isEmpty(difference) &&\n !isDate(difference)\n )\n return acc; // return no diff\n\n return { ...acc, [key]: difference }; // return updated key\n }, deletedValues);\n };\n return diff(lhs, rhs);\n },\n });\n\n // eslint-disable-next-line\n Object.defineProperty(Object.prototype, '_clone', {\n enumerable: false,\n value: function () {\n return JSON.parse(JSON.stringify(this));\n },\n });\n\n // eslint-disable-next-line\n Object.defineProperty(Object.prototype, '_delete', {\n enumerable: false,\n value: function (keys) {\n let obj1 = this;\n keys = `${keys}`.split('.');\n if (keys.length === 1) {\n if (Array.isArray(obj1)) {\n obj1.splice(parseInt(keys[0]), 1);\n } else {\n delete obj1[keys[0]];\n }\n return obj1;\n }\n return keys.reduce((result, key) => {\n keys.shift();\n const value1 = obj1[key];\n if (isObject(value1)) {\n result[key] = value1._delete(keys.join('.'));\n }\n return result;\n }, obj1);\n },\n });\n\n // eslint-disable-next-line\n Object.defineProperty(Object.prototype, '_merge', {\n enumerable: false,\n value: function (obj2, uniqueAttr = 'id') {\n let obj1 = this;\n if (obj1._equals({})) {\n obj1 = { ...obj1, ...obj2 };\n }\n return Object.keys(obj1).reduce((result, key) => {\n const value1 = obj1[key];\n const value2 = obj2[key];\n if (Array.isArray(value1) && Array.isArray(value2)) {\n if (isObject(value1[0]) && isObject(value2[0])) {\n result[key] = getUnique(\n [\n ...value1.map(\n (item) =>\n value2.find(\n ({ [uniqueAttr]: id = 0 }) => id === item[uniqueAttr]\n ) || item\n ),\n ...value2,\n ],\n uniqueAttr\n );\n } else {\n result[key] = [...new Set([...value1, ...value2])];\n }\n if (\n result[key].length ===\n result[key].filter(({ [uniqueAttr]: id }) => id).length\n ) {\n result[key] = getUnique(result[key], uniqueAttr);\n }\n } else if (isObject(value1) && isObject(value2)) {\n result[key] = value1._merge(value2);\n } else if (typeof value1 === typeof value2 || !value1) {\n result[key] = value2;\n } else if (!value2) {\n result[key] = value1;\n }\n return { ...obj2, ...result };\n }, obj1);\n },\n });\n\n // eslint-disable-next-line\n Array.prototype._move = function (oldIndex, newIndex) {\n // eslint-disable-next-line\n while (oldIndex < 0 || newIndex < 0) {\n oldIndex += this.length;\n }\n while (newIndex < 0) {\n newIndex += this.length;\n }\n if (newIndex >= this.length) {\n let k = newIndex - this.length;\n while (k-- + 1) {\n this.push(undefined);\n }\n }\n this.splice(newIndex, 0, this.splice(oldIndex, 1)[0]);\n };\n\n // eslint-disable-next-line\n Date.prototype.toW3CString = function () {\n const f = this.getFullYear();\n let e = this.getMonth();\n e++;\n if (e < 10) {\n e = '0' + e;\n }\n let g = this.getDate();\n if (g < 10) {\n g = '0' + g;\n }\n let h = this.getHours();\n if (h < 10) {\n h = '0' + h;\n }\n let c = this.getMinutes();\n if (c < 10) {\n c = '0' + c;\n }\n let j = this.getSeconds();\n if (j < 10) {\n j = '0' + j;\n }\n const d = -this.getTimezoneOffset();\n let b = Math.abs(Math.floor(d / 60));\n let i = Math.abs(d) - b * 60;\n if (b < 10) {\n b = '0' + b;\n }\n if (i < 10) {\n i = '0' + i;\n }\n let a = '+';\n if (d < 0) {\n a = '-';\n }\n return (\n f + '-' + e + '-' + g + 'T' + h + ':' + c + ':' + j + a + b + ':' + i\n );\n };\n};\n","import React from 'react';\nimport ReactDOM from 'react-dom';\nimport App from './App';\nimport IntlProvider from './i18n/IntlProvider';\nimport reportWebVitals from './reportWebVitals';\nimport * as serviceWorkerRegistration from './serviceWorkerRegistration';\nimport { initializeDefines } from './util/defines';\n\n// Custom imports:\nimport firebase from './config/firebase.json'\nimport { FirebaseAppProvider } from 'reactfire';\n\n\n\ninitializeDefines();\n\nReactDOM.render(\n\t\n\t\t\n\t\n, document.getElementById('root'));\n\n// If you want your app to work offline and load faster, you can change\n// unregister() to register() below. Note this comes with some pitfalls.\n// Learn more about service workers: https://cra.link/PWA\nserviceWorkerRegistration.register();\n\n// If you want to start measuring performance in your app, pass a function\n// to log results (for example: reportWebVitals(console.log))\n// or send to an analytics endpoint. Learn more: https://bit.ly/CRA-vitals\nreportWebVitals();\n","import React, { createContext, useEffect, useState } from 'react';\n\nimport { useImmerReducer } from 'use-immer';\nimport { parse } from '../util';\nimport { ApiReducer, API } from './reducers';\n\nexport const ApiContext = createContext({});\n\nexport const ApiProvider = (props) => {\n const [state, dispatch] = useImmerReducer(\n ApiReducer,\n API.INITIAL_STATE\n );\n\n const getFromApi = async ({ provider, method, parameters }) => {\n const response = await fetch(`https://api.doyo.tech`, {\n method: 'POST',\n body: JSON.stringify({\n provider,\n method,\n parameters,\n }),\n headers: {\n Authorization: 'Bearer 416|zLmUYZXTzIXRDykGTB3D4UQKOnu4vYzRIdwm4fh8',\n 'Content-Type': 'application/json'\n }\n });\n const { result } = await response.json();\n dispatch({ type: API.GET, payload: { key: `${provider}.${method}`, value: result } });\n return result;\n }\n\n return (\n \n {props.children}\n \n );\n};\n\nexport const ApiConsumer = ApiContext.Consumer;\nexport default ApiContext;\n","import React, { createContext, useEffect, useState } from 'react';\n// Custom imports:\nimport { addDoc, collection, deleteDoc, deleteField, doc, getDoc, getDocs, getFirestore, limit, orderBy, query, setDoc, updateDoc, where } from 'firebase/firestore';\nimport { deleteObject, getDownloadURL, getStorage, listAll, ref, uploadBytes } from 'firebase/storage';\n\nimport {\n useFirebaseApp,\n // reactfire imports:\n\tFirestoreProvider,\n\tuseFirestoreDocData,\n\tuseFirestoreCollectionData,\n\n} from 'reactfire';\n\nimport { useImmerReducer } from 'use-immer';\nimport { getStringAsFile, parse } from '../util';\nimport { FirebaseReducer, FIREBASE } from './reducers';\n\nexport const FirebaseContext = createContext({});\n\n// Custom code:\nconst firestoreCondition = {\n is: '==',\n is_not: '!=',\n less_equal_than: '<=',\n less_than: '<',\n more_equal_than: '>=',\n more_than: '>',\n includes: 'in',\n};\n\nconst FirestoreCollectionData = ({ dispatch, _key: key, _ref: ref }) => {\n const { status, data: _data } = useFirestoreCollectionData(ref);\n useEffect(() => {\n const __data = _data?.reduce((result, item) => {\n const { NO_ID_FIELD } = item;\n return {\n ...result,\n [NO_ID_FIELD]: item,\n };\n }, {});\n const data =\n _data &&\n key\n .split('.')\n .reverse()\n .reduce((result, key) => ({ [key]: result }), __data);\n dispatch({\n type: FIREBASE.GET,\n payload: { status, data },\n });\n }, [_data]);\n return null;\n};\n\nconst FirestoreDocData = ({ dispatch, _key: key, _ref: ref }) => {\n const { status, data: _data } = useFirestoreDocData(ref);\n useEffect(() => {\n const field = key.split('.').pop();\n const data =\n _data &&\n key\n .split('.')\n .reverse()\n .reduce((result, key) => ({ [key]: result }), _data[field] || _data);\n dispatch({\n type: FIREBASE.GET,\n payload: { status, data },\n });\n }, [_data]);\n return null;\n};\n\nconst FirestoreData = ({\n _key: key,\n _ref: ref,\n _type: type = 'document',\n dispatch,\n}) => {\n switch (type) {\n case 'collection':\n return (\n \n );\n case 'document':\n return ;\n default:\n return null;\n }\n};\n\nconst Firestore = ({ dispatch, refs }) => {\n return (\n <>\n {refs.map(({ key, type, ref }, i) => (\n \n ))}\n \n );\n};\n\n\n\nexport const FirebaseProvider = (props) => {\n const app = useFirebaseApp();\n const [state, dispatch] = useImmerReducer(\n FirebaseReducer,\n FIREBASE.INITIAL_STATE\n );\n \n // provider code:\n const [refs, setRef] = useState([]);\n const firestore = getFirestore(app);\n\n const addToFirestore = async ({ key, to, what }) => {\n let keys = to.replace('@firebase.firestore.', '').split('.');\n if (!key) {\n const docRef = await addDoc(collection(firestore, ...keys), what);\n dispatch({\n type: FIREBASE.LAST_ID,\n payload: { id: docRef.id },\n });\n return docRef;\n }\n keys = [...keys, key];\n const ref = doc(firestore, ...keys);\n const docRef = await setDoc(ref, what, { merge: true });\n dispatch({\n type: FIREBASE.LAST_ID,\n payload: { id: docRef.id },\n });\n return docRef;\n };\n\n const deleteFromFirestore = async (what) => {\n const keys = what.replace('@firebase.firestore.', '').split('.');\n try {\n const ref = doc(firestore, ...keys);\n await deleteDoc(ref);\n } catch (e) {\n const field = keys.pop();\n const ref = doc(firestore, ...keys);\n // Remove field from the document\n await updateDoc(ref, {\n [field]: deleteField(),\n });\n }\n dispatch({\n type: FIREBASE.DELETE,\n payload: { keys },\n });\n };\n \n const getCollectionFromFirestore = (key, options = []) => {\n const keys = key.split('.');\n const ref = query(collection(firestore, ...keys), ...options);\n const { _query = {} } = ref;\n const { explicitOrderBy, filters, limit } = _query;\n const queryKey = JSON.stringify({ explicitOrderBy, filters, limit });\n setRef((refs) => {\n if (\n refs.some(({ key: k, ref: { _query = {} } }) => {\n const { explicitOrderBy, filters, limit } = _query;\n const _queryKey = JSON.stringify({ explicitOrderBy, filters, limit });\n return key === k && _queryKey === queryKey;\n })\n ) {\n return refs;\n }\n return [...refs, { key, type: 'collection', ref }];\n });\n };\n\n const getDocumentFromFirestore = (key, options = []) => {\n const keys = key.split('.');\n let ref;\n try {\n ref = query(doc(firestore, ...keys), ...options);\n } catch (e) {\n keys.pop();\n ref = query(doc(firestore, ...keys), ...options);\n }\n const { _query = {} } = ref;\n const { explicitOrderBy, filters, limit } = _query;\n const queryKey = JSON.stringify({ explicitOrderBy, filters, limit });\n setRef((refs) => {\n if (\n refs.some(({ key: k, ref: { _query = {} } }) => {\n const { explicitOrderBy, filters, limit } = _query;\n const _queryKey = JSON.stringify({ explicitOrderBy, filters, limit });\n return key === k && _queryKey === queryKey;\n })\n ) {\n return refs;\n }\n return [...refs, { key, type: 'document', ref }];\n });\n };\n\n const getFromFirestore = async (\n str,\n { filter: f, isCollection, limit: l, order = {} } = {}\n ) => {\n const { field: oField, type: oType } = order;\n let _str = str.replace('@firebase.firestore.', '');\n\n const getFilter = ({ what, and, or, ...condition }) => {\n let filter = [];\n const value = Object.values(condition)[0];\n condition = Object.keys(condition)[0];\n condition = firestoreCondition[condition] || '==';\n filter = [...filter, where(what, condition, value)];\n if (and) {\n filter = [...filter, ...getFilter(and)];\n }\n return filter;\n };\n const _filter = f && getFilter(f);\n const _order = (oField || oType) && orderBy(oField, oType || 'asc');\n const _limit = l && limit(l);\n const options = [];\n _filter && options.push(..._filter);\n _order && options.push(_order);\n _limit && options.push(_limit);\n const keys = _str.split('.');\n let ref;\n let field = '';\n try {\n ref =\n keys.length === 1 || isCollection\n ? collection(firestore, ...keys)\n : doc(firestore, ...keys);\n } catch (e) {\n field = keys.pop();\n ref = doc(firestore, ...keys);\n }\n try {\n let queryRef = query(ref, ...options);\n let replacedStr;\n if (ref.type === 'collection') {\n let replacedOrStr = {};\n if (f?.or) {\n replacedOrStr = await getFromFirestore(str, {\n filter: f.or,\n order,\n limit: l,\n });\n }\n const docsRef = await getDocs(queryRef);\n replacedStr = {\n ...replacedOrStr,\n ...docsRef.docs\n .map(\n (docRef) => ({\n id: docRef.id,\n NO_ID_FIELD: docRef.id,\n ...docRef.data(),\n }),\n {}\n )\n .reduce((result, item) => {\n const { NO_ID_FIELD } = item;\n return {\n ...result,\n [NO_ID_FIELD]: item,\n };\n }, {}),\n };\n } else if (ref.type === 'document') {\n const docRef = await getDoc(queryRef);\n replacedStr = docRef.data();\n replacedStr = replacedStr && {\n id: docRef.id,\n NO_ID_FIELD: docRef.id,\n ...replacedStr,\n };\n }\n\n if (_str.split('.').length === 1 || isCollection) {\n getCollectionFromFirestore(_str, options);\n } else {\n getDocumentFromFirestore(_str, options);\n }\n\n replacedStr = field ? replacedStr[field] : replacedStr;\n replacedStr = parse(replacedStr);\n return replacedStr;\n } catch (error) {\n console.error(error);\n return null;\n }\n };\n\n const updateFirestore = async ({ what, value }) => {\n try {\n let keys = what.replace('@firebase.firestore.', '').split('.');\n let field = keys.pop();\n let docRef = doc(firestore, ...keys);\n if (docRef && field) {\n return await setDoc(docRef, { [field]: value }, { merge: true });\n }\n } catch (error) {\n console.error(error);\n return null;\n }\n };\n\n\n const storage = getStorage(app);\n\n const addToStorage = async ({ key, to, what }) => {\n const name = to.replace('@firebase.storage.', '');\n const storageRef = ref(storage, name);\n const snapshots = await Promise.all(\n Object.values(what).map((value, index) => {\n let { name } = value;\n name = key ? `${key}_${index}` : name;\n const what = `${to}/${name}`;\n return uploadFileToStorage({ what, value });\n })\n );\n const files = await Promise.all(\n snapshots.map(async ({ ref }) => {\n const { fullPath: path, name } = ref;\n const url = await getFileUrlFromStorage(`@firebase.storage.${path}`, {\n ref,\n });\n return { name, path, url };\n })\n );\n let data = { [storageRef.name]: files };\n let parentRef = storageRef.parent;\n while (parentRef.parent !== null) {\n data = {\n [parentRef.name]: data,\n };\n parentRef = parentRef.parent;\n }\n dispatch({\n type: FIREBASE.STORAGE_GET,\n payload: { data },\n });\n };\n\n const deleteFileFromStorage = async (str) => {\n const name = str.replace('@firebase.storage.', '');\n const storageRef = ref(storage, name);\n return deleteObject(storageRef);\n };\n\n const getFolderChildrenFromStorage = async (str) => {\n const name = str.replace('@firebase.storage.', '');\n const storageRef = ref(storage, name);\n const { prefixes, items } = await listAll(storageRef);\n const folders = await Promise.all(\n prefixes.map(async ({ fullPath: path, name }) => ({ path, name }))\n );\n const files = await Promise.all(\n items.map(async (itemRef) => {\n const { fullPath: path, name } = itemRef;\n const url = await getDownloadURL(itemRef);\n return { path, name, url };\n })\n );\n const response = [...folders, ...files];\n let data = { [storageRef.name]: response };\n let parentRef = storageRef.parent;\n while (parentRef.parent !== null) {\n data = {\n [parentRef.name]: data,\n };\n parentRef = parentRef.parent;\n }\n dispatch({\n type: FIREBASE.STORAGE_GET,\n payload: { data },\n });\n return response;\n };\n\n const getFileUrlFromStorage = async (str) => {\n const name = str.replace('@firebase.storage.', '');\n const storageRef = ref(storage, name);\n let url = null;\n try {\n url = await getDownloadURL(storageRef);\n } catch (error) {}\n return url;\n };\n\n const uploadFileToStorage = async ({ what, value }) => {\n if( typeof value === 'string' ){\n // If it's a valid base64 string, it will turn it into a file\n value = getStringAsFile( value );\n }\n const name = what.replace('@firebase.storage.', '');\n const storageRef = ref(storage, name);\n const metadata = { size: value.size };\n const uploadTask = await uploadBytes(storageRef, value, metadata);\n const url = await getDownloadURL(storageRef);\n dispatch({\n type: FIREBASE.LAST_URL,\n payload: { url },\n });\n return uploadTask;\n };\n\n return (\n \n {/* return code */}\n \n \n {props.children}\n \n \n );\n};\n\nexport const FirebaseConsumer = FirebaseContext.Consumer;\nexport default FirebaseContext;\n","import React, { createContext } from 'react';\nimport { useImmerReducer } from 'use-immer';\nimport { DialogsReducer, DIALOGS } from './reducers';\n\nexport const DialogsContext = createContext({});\n\nexport const DialogsProvider = (props) => {\n const [state, dispatch] = useImmerReducer(\n DialogsReducer,\n DIALOGS.INITIAL_STATE\n );\n\n const show = (dialog) => {\n dispatch({ type: DIALOGS.SHOW, payload: { dialog } });\n };\n\n const hide = (dialog) => {\n dispatch({ type: DIALOGS.HIDE, payload: { dialog } });\n };\n\n return (\n \n {props.children}\n \n );\n};\n\nexport const DialogsConsumer = DialogsContext.Consumer;\nexport default DialogsContext;\n","import React from 'react';\n\nimport { FunctionsProvider } from './Functions';\nimport { RefsProvider } from './Refs';\n// Custom imports:\nimport { ApiProvider } from './Api';\nimport { FirebaseProvider } from './Firebase';\nimport { DialogsProvider } from './Dialogs';\n\n\nexport const ContextProviders = ({ children }) => {\n // Custom code:\n return (\n \n\t\t\n\t\t\t\n\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\t\t\n\t\t\t\t\t\t\t<>{children}\n\t\t\t\t\t\t\n\t\t\t\t\t\n\t\t\t\t\n\t\t\t\n\t\t\n\n );\n};\n\n\nexport * from './Functions';\nexport * from './Refs';\n// Custom exports:\nexport * from './Api';\nexport * from './Firebase';\nexport * from './Dialogs';\n","import React, { createContext } from 'react';\nimport { useImmerReducer } from 'use-immer';\nimport { RefsReducer, REFS } from './reducers';\n\n// Custom imports:\nimport { useApi } from '../hooks';\nimport { useFirebase } from '../hooks';\n\n\nexport const refTypes = ['@api', '@firebase', '@cookie', '@element', '@menu', '@property'];\nexport const getKeys = (ref) => {\n if (!ref) {\n return [];\n }\n const refType =\n refTypes.find((rt) => {\n const regExp = new RegExp(`^${rt}`);\n return ref.match(regExp);\n }) || '';\n const mainKey = refType.split('.').pop().replace('@','');\n const keys = ref.replace(`${refType}.`, '').split('.')\n return [mainKey, ...keys];\n};\n\nexport const RefsContext = createContext({});\n\nexport const RefsProvider = (props) => {\n const [state, dispatch] = useImmerReducer(RefsReducer, REFS.INITIAL_STATE);\n // Custom consts:\n\n\tconst { api = {} } = useApi();\n\n\tconst { firebase = {} } = useFirebase();\n\n //Custom code:\n\n const setRefs = (refs) => {\n dispatch({ type: REFS.SET, payload: { refs } });\n };\n\n \n\n return (\n \n {props.children}\n \n );\n};\n\nexport const RefsConsumer = RefsContext.Consumer;\nexport default RefsContext;\n"],"sourceRoot":""}