From 9a389b7bc7c5c5fea03aa81336c2c419b70a4fd2 Mon Sep 17 00:00:00 2001 From: Eleazar Resendez Date: Mon, 17 Jul 2023 16:25:40 -0600 Subject: [PATCH 01/10] Install default screens --- .../screens/default-display-screen.json | 246 ++++++++++ .../screens/default-form-screen.json | 430 ++++++++++++++++++ database/seeders/ScreenSystemSeeder.php | 38 +- 3 files changed, 708 insertions(+), 6 deletions(-) create mode 100644 database/processes/screens/default-display-screen.json create mode 100644 database/processes/screens/default-form-screen.json diff --git a/database/processes/screens/default-display-screen.json b/database/processes/screens/default-display-screen.json new file mode 100644 index 0000000000..7179de2ea1 --- /dev/null +++ b/database/processes/screens/default-display-screen.json @@ -0,0 +1,246 @@ +{ + "type": "screen_package", + "version": "2", + "screens": [ + { + "id": 85, + "uuid": "99ab9f4d-d19b-47df-8fa7-cf2e8f5e77a2", + "screen_category_id": "1", + "title": "Default Display Screen", + "description": "Default Display Screen", + "type": "DISPLAY", + "config": [ + { + "name": "Default Display Screen", + "items": [ + { + "label": "Image", + "config": { + "icon": "fas fa-image", + "name": "default-screens-illustration", + "event": "submit", + "image": "data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAARkAAAEZCAYAAACjEFEXAAAABmJLR0QA\/wD\/AP+gvaeTAAAaMklEQVR42u3de3hU5Z0HcIta7c1L3WrrbvexPrbVqs+2tbvbZ7f2eXYfW+1F21qprla33bZKhjsiKFYLiBWEtgJqgcwk3AMxhEtCuIQQEJBwCfcQcOa8JzeS857JnSSQy8x3\/zgDBDKZOZPM5Jwz8\/08z+\/p87Q14Jz5fXPOeztXXUVERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERENlZTg1sUiYdUDeMUHe8oErlColBoOKBKHBQSu4XEFiGxVOh4U0g8V1mHbwAYxk+PiMKHioanVQ0ZQqJCSGCA1So07FAkZgkdDzJ0iFIYgGFCw2OKxFoh0TmIYIlUmiKxQEj88CBwLT91ohShSDwuJI4lKFj6q1pFYmqVH7fzChAlKZ+GW4XEuiEOlyurS0hkCx0P8ooQJVfA3Cck6iwOmCtrZ0Ud\/otXx5nUJtxU2Yybe5fXi+v4yaTi45GG+4WE32YB07s+9Gn4b14pm4SHiutVHd9UNTyl6HhZaJgvJNYrEqVCQhUSTVGuZ7eQqFclTgiJTUKHW0i8pEo8zMflJFRdjU8JHSdtHDC9a1NFLe7hVRs6NTW4RdXxiJB4LfQo7RUSPYm4vkeqAsg+fB7zd7c1zyg+e2xq4dnlY9a3PDI8G1fzSjiYkHjbIQFz6beghvk1NbiFVy8Bdyl1uEPR8VshsVRIKENxTU\/VBjF7ZxueyKrH4yv61jOrGrpeKmjJG7G26Q5eIac9JjXiRiHR6rCQuVANqo4xnPoenFN+fE7oeELV4Ak96gzpdVQ0YPKmlrDhcmU9tboh+JedbRuVRtzIK+eUuxgdIx0aMJdKQ7mi48e8muZVaPiKqmOMkNiawDVQpmrzyS5TAdO7Zu1oO6doGA\/wMcoJj0rZjg+ZS7VZ0XA\/r2p43gb8kyIxQejYb6frlnP0fJ8QeWJlPZ5e3RAxaDL2d0BI7OMYnd1DRkNVEoUMhERASCyrlLiTV\/eqq1QdXwzdrX4Y+mxsd81OngnihXVNF8Nl\/p52HK8JQkjgYGUA6fs68OvsvoHzZFYDjlYHICRaVQ0\/49W2751Md5KFzMUFfarE+xV+fCnVrqlPw62KRJqiY3uiZoESMfCbc\/Q89oqesP\/7PtGD\/\/2gsU\/QLD5w7uIvF0XHb9nRNlMMXJOkAdO72hWJBd463JvkvyxuUyVeUCWKnBIssdbCko4+IfNG0dnL72J1DGdn2+kZ3YvrUiBkLlRQSGxTJJ6prcWnk+IXhI4HhY43Qwvggsl+DZeXnusTMtO2tV75\/zur1uNudre9fgPqKRQ0F4+bUCQyhYbHnBI4AIb5NNynSrwgJHKERHMqXTOfBozPb+4TMgtLOsKuDgfwCXa3fQZ+D6RgyPSuDqFjg9AxWkj8i13Ot\/E24AZF4iFV4nUhsSnVQqV3Ha4MYMqW1rAzUPvU8GM4qsTP2d12mX2QWJHiIXNlNakaNgodbwodv6qoxT3FwDWJ+vxP+fG5Cj++LSSeVSRmqRo2DvJQsKSoj+uCWHesE38qbMWvVoafyn5nV1ukn1HI7rbPncwfGCxRq1OV8IVmaxYrElNDx47+VpF4XJF4yOfHA71LqcO\/KhIPCR3DhYbfKRrGKxJThcRCVcPG0MbAZn62fR+L3CUdeDY78hqZ17e2wlcXeSmD2oSb2OF2mO7UcRe\/3Cw71Om6IF4qiLy9YPjKeizY2w6fFv3nVej4ETvcPoO\/gl9yltU1bVtrv+HyZFYD3t7RhtLKgOmfp0o8z+62S8jomMEvOcvKKjrdHTZcXOubsOLQOZw8E4z5Z6oaxrG7bULx42v8orOsrCmbW8IO7CrawH8mVwDb75HpI37ZWVZU+Zlgn3NkJha0QBnkz1U1fJedba+QeZZfeJYVdbwmiCdWXh4yG8u6Bvtz23iWsM0AuFqV8PFLz7LquIc\/5DZduovRBv0zF7Or7Tg2I+HiF55l9W7seOxTU\/z4Djvajqt\/VVxvw1eisFixlY5V7GZ7T2eP4heVNRRVWhnArOKzmFTQgvl72gc0TR2mdFXHF9nJNnYQuFZoKGcTsBJZx6oDfbYOjMtrjrZVwMybR3\/ALnbC2IyGn7IRWIksd5gDqB5fUY+t5QOeVQoKiV+ze501pb2FzcAKV2XVwK5TwIaDwJKdwNwCYHYe4N4OHFbN\/Yx3drWFDZncY50D2sCqaHiaXeswofdid7KpUjdIdp8C8kqBZR8C8wqAaTnAuCVAmrv\/Gr8UOOCL\/vO3lPd9DcpTqxpwuCoQ699V47vSnX03M50Nl7x1shrYexrYdBjI2gMsKARmrgMmLoscJNHqr\/nm\/nzPvg4MDy3Ceya7ARtOxHwXs0lI3MZOdTCvF9cpEmVsSGcHyZ7TwMZDwLJdwPxNwPQcYMKSwQVJpBqdAdOL6cpqgvhI6YE3tsV3tULiOR6xmSyDwDq+Z9f39bBCe39qwt+RvLIycUESrY5UJObwMCHxtrcBN7Azk++x6T02s9XHURpjHXYKkkhVXBb3z6BQ0fFVdmOy3s004sbQLaqtG7GqHvC3AM3tQHsn0NEJnO8y\/rOlA\/C3AlV++\/79vRGCxOW2Z5j0V7n74\/a5nFUlRvDRKDXWzvyPXZtTNgPnumDauU6gttG6IDmkAoXHnB8kkcqzPQ6fl4byZH8pH\/V9bCq0U7hU+mMLlyu1dgCqziBJRM3JG\/z+o2R4CR8NbO2MLQaBq+uBngAGraMTUGMNEQ0o8QL5pUBmMZC1G3h\/C\/DmWuCl5akRItHqj6sHcaKdxEw+HqXyY5NErtUBU6EDXT2Im5b2CHtsKo1BzA9KgHc3A1NzjCnaC800dnFyhcPEZcCs9UZ45h8C9nmNVbzFZcC8TeZ\/zqgMmHqjQJh6kV2W6nczfjxgdcg0tiHuhDSmgfNKjeXxM9cBE5Ym513Gi8uAmesBT7Hx77vPZzw2tp2P\/jmdrDH+eTN\/zuEYp7F58DddGpvRUWxlyHRHuYs512XMMDWcNersOSAQjPzPbDsee7M6ZXxl3BLjTux0rfFZxCOQR2VE\/3O3n4hpDGYGO4suUiWet3Kwtz\/dPcCZxstXu+4qNxoso9i4fe9PVX1y3rVMywH0lvjf+WXtMTGNvc\/0dV3GMRi6TGUzbrZq82RFPyETCBrjBot3GDMb4fbfvLjMGOjt7+4n2QJm\/BLjTi4RFBn9z3ebm8Y+wlkkCv\/IpGGHJYcdVRoDtVcqOGyu8Y5Vhm+arp7kC5n8Q0iY7h5gpGfQ09gtlRJ3spsofMhIzE70fpxd5cDa\/cZvxBm5wJjQTM6rq4Cahktf+DON0Y8guFClInzT+FuTL2TONCKh\/rg68p\/\/6qqoi+1+x06i\/sdlNDwVjzDx9VpKv\/xD47efmf04LrcRPHPyLp9SjvbP1LeGb5hDavKFTGd3YkMm2pT2KE\/EaexCdhFFC5l\/H8ijzpVrTkZlDF3TuYv6bxhPcfKFTGtHYkPGzODvofAn5fUoGu5nF1FE3jrcG+1RJ3cfsLDQuOOwetHaH1f333QtHcCYzOQLGVVPbMgUHR\/wNPYidhBFv5Opwx1CAgcVYONhYPFO49Fl8gr7NdvkFZGncc38RnZi7fMlNmSOVUb\/O6wp6burusKPL7GDKKrV+\/Ho9Bz7N9qkFZEHQE\/XRp8l4exSeHVNJnZjF\/XZlzSN3UNRTZ2Ka8YuRq0TVrpWN0TYs9RhzzuveFVmcWJDpjsQPaBnXz6N3VXlx+3sIIpqxCI87IjHBW\/\/DdLZDczekNw7oWetR8JFm8aesoqvj6UBcKXjSbs32Mz1QH\/blXoCse0odvJGyESL9jmOzACUuosh8312D5ny8ir80O4NdlhNvYHecGVmZ\/VQTGMrEmXsHDKtVOAlO+9AHpnR\/0K0A77UOjwq4dPYJ6L\/HYqOA0LDFHYOmQJgmNBx0s4DptNy+m+KN9emVshEGpeKh+NV0f8OOSVAhY5vsXvIFEXH\/wlprImx8\/my\/e3UdnlSK2TySxMbMsLEbuyFhWjjUQ5kLmCMV6NoQhqL75wWMu3nU++s3YwET2OXVZu6s6xi95ApQmL5henIgkPOe1wKBJN34V2kWbZEWncg+t9h7GLUsnvI9GPShbLzAGqkgd9Ue5vA+CXRjx4dqLbz4Q8HC1Pdzy\/Etewi6ldox3X7ZcvD64Z2B3Wsdbwq\/ONSMm6EjFYf18U\/YLp6Yltr5HLjLnYShVVZh28IiYZwu63\/lG3vR6b6s5cawltnLHFPxXcg\/W0jEIzT3UwQQPkZY2d9jIeuP8Juor5jMH58XZGo6e9Ih3c327\/BxmSaP9QqmWvVR7EFTXfA2AB5rNJ4k0PWHmBuwSAeNz0YzY6iy4TOi9EiHUK16iM2r5Nq9gbjMfLCi\/G6A4DWbPx3RaEgmbfJ2I8U9wHydMxjV1HvWaQfCInGaCfdFR1n4zqxXB5jX9MQr9ouYGeRMchrvFOpy8xxmkcrndFQ03OAP681f9g4KyHlZXeluGLgGqFhXqzn9k6wceP+Jf\/yE\/E6u42DnFJt1a9NitPYqcyn4VZFx\/aBvG3grbX2nV3qb63M1mNseivqhUx8ld2WghSJh4RE3UBfaZJeZM8v9J7T\/c+cBILGO4HY+EMcMun4MTsuxR6PFImpQiIwmPcmmVlWbkVV10eeol28g00\/1DUiHWPYealy91KLfxYSu+PxcrY9p+35hfZGWeW6ZCebfsgH4d2Yz+5LhYDR8LSQaIrX62RP19pzIHXNvsirVl\/PZtMPeXmwmR2YzOFiHNOwLBHvrX4ly54rfSv94UOmuIwNb1H52InJPbhbnYiAERL4a749v9QTlgI7yoBzXZdegbL+QOod92Cj6hmejU+yI5OIquJ6oWGukAgmKmCEBJZ9aO8v98jQClc2uQ2uxSJ8jZ2ZJCpqcY+QOJLIcLlQmw+zeVim6yfsziQgJJ678vyXRNZBhc3DMj3DNJYd6uTHoybcJDSsHqpwuVA+LTUPg2INaIbpXXaqUwNGw3cjnf2S6JqWwwZimaot7FYnPh5p+J2QOG9VwAgJvLeVDcQyVQo71kFCWwNmWhkuF+qDvWwgFqexk8rpWvyDKlFkh4ARkgvcWDGNy3ydHWz36WkNXxESXrsEjJDmXvLFYqW5gRGL8FN2sY1563CvlQO8kWoiF7yxzE1jj2cn23WA14+vRzvc28qauY4NxDJxJ+PGe+xmG\/LpuEtI1No1YIQEPNvZQCxTdzJb2dE2U12Nz9ttDCZcbTjIBmKZKpVdbbNpaiGxze4BIySw9zQbiGWqAqPn4Tp2t13GYXTMcELACGm8c5nHKLDM1PMLcTe72w5T1Tq+ZfYdSHYpHtDNMjku8yg73GIAhgmJo04KGCGBdwrYQCxTC\/ImsMutfkyS+LXTAkZIYPkuNhDLVL3PLrd+sFdxYshsOcoGYpmodBSy060di\/mREwNGSOCQygZimaoKdrqFFB1ZTg0ZRQJjF7OJWNGnsX+TievZ7dY9KrU5NWSEBN5YkzrNMirD+Pf1FAObjwD5pQwQ06+tzcA32PFW3MX48R0nB4yQwN+T9ACrF5cBc\/KA7L3ArnLj2NGunsvf6dR2nuERwwzTY+x4axbfjXR6yOSUOPvLPzoDmL7GeF\/2lqPAsUrjnU1mvbySAWLy3dgvsuOtmbp+2+khs\/Okc77oL68E3t8KrN0PlHiB2iYgGMSgzNvEADG5IG8BO94CqgaP00OmrMa+jzordgPbTxiPOp3dSIg1+xggJo982MaOt+ZO5gOnh4yQwKTl1g3EXvmo09yOIVXiZYCYrEp2vDV3MhnJEDKzN1jzqBMIwnJV9QwQs9PY47PxKXb9UIeMxF+TIWQyd8TvyzhxGfC3jcDqj4DdpwBVB853wba6egBXBkPE5Lux72XXD33ITEqGkBnIepHRGcCbuUZAbT1qHE7e1A7b6wkANQ3Afp9xVzV\/M+BigJgLmXT8jF0\/9GMyP0iGkIl1XOKQMJrV7hrbgONVxnhPRjEwI9cYB2JgDHiGaSK7fohVNuNmIRF0esh4NWBUDAdYlQp7hcm5LqDSb4Rl9l5gbgEwaQVDIQEL8hay6625mzmVDHczr602\/2XLK7UmTAJBwN9qzELlHwLSi4zZKRdP+BuqkClix1sTMnOSIWTmxrAo7e+FiQ+U9vPG+pjtJ4z1MnPyuJnTBlXFjrdma8GDyRAyWbvNf9leWx2\/MOkOGNPZJV5jIPb9rVzqb+MKchrbAgCuFhqqnB4y247FNACIcwOYlm5uNx51thw1FuBNX2Pfw8xdbuMM5HcKgJW7gcJjwNEKoMIPfLA3pVf+3seut2Yq+09OD5kjFbF92RTZf5h0dBqPOrvKjYHYOXnAuCX2DJIpWca6nhW7ga3HjM\/hTGPfHdtXmpaToiHjwS\/Y8Rao8uN2IdHp5JBRZGxBsKvceNSprjcedXJDa07s+qgTbrd2WfXAH\/M8xSk7jT2JHW8RReLvTr+bmZFr\/ss2drF915yY3a0dCBpT3wORV5qyj0uL2O0W8Z3Bl4XEOSeHzMJtzjyYajC7tdvPAw1nubEyhipmt3NsZsCVu9++x2ZOX2Osi8k\/ZDzq+FvjN8Plb419IFvIlL2TqWanW6isDJ9UJMqcGjK7yu3xqDO3wBgwLvEajzPdPYlfl1OhA7FsCtdbUncae+JSfIbdbuVjk4b7nHq4+KkzQ7dZcMJS4K11xkDs9hNA+RnjzF0rfVxr7v8XBJCbwoddjcrE\/ex06weBn3HqnqaXV8T\/UWdGrrFBcctRY8NiY5s9N1QGQ3c0vQeG61uBkzXAjjJjfcx7W4xp75TeKJmOx9nldggaDeOdGDJz8uL7qNPVA9vrvYVh5R5gUZGxDmY0d2z3V5PZ4fYKmoCTQmZJjAdY\/Xmt8Zu+\/bz9w6Sz2zhEa\/cpIwj\/ttE4ZIuhEXOls7ttpELiF0Ki2Skhs\/FwbF+43o8XdhEIArLZOPcmr9SYmn89m7u141hZ7Gy7TW3X4Q6ho9gJIbNfie0LV9NgbaCcPWcMWBedAJZ9CMxcB4zJZBAkdEzGg+nsavsOCP9yiKa4m4WEX0goikSZKnHwQik6tguJwoulY78qcVBoKBcSik\/DmVGZCJr9wu33Dd2xmbVNxoFZ+YeMFb2xnIHDik+NXYx2Vya+yG62MQCfUHU8oujIEhJnYwyPOiGxS5VYoWp4S5FwqRp+puj4nlqPu711+AKAYYP9O6a5cdjsl27dgfgHypW7td9ax0FYq2vMYmBeAVDixXp2scMW7\/kk\/kPVMFZomCcksoXEFqEhX5VYqUjMFBp+75P4z8pm3DxUf6+0dCwx++V7b8vAwyTcbu3xS9jQlq1\/8QCvrDQeOd3bjb1fxWXAIRVQtNAvOg357FwaNJcbE81+MadkmTuYqroB2Ndrt\/YrWWxq2wZJ5NrKDqFBG7EID8fyxe19sHjDWWPB3eYjxnEIb6zhGwKsDJIFhcAHJTEHSaTayQ6hQRvlwe2xfrFfXWVsFWCTWx8kPi2hkwp8JzbFaVzGDZ3NbPHL1DIuD5KsPcYxoEMQJJGKA78Ut5DZzkZP2SCJVMvZHRSfwV8P5jIEEhckmw4DB3y2DZJIx7TOYndQvO5kfs+AiE+QKHXOf2XOxdIxit1B8ZlhcuPfGB5XLKfvJ0j2ngY+TqYgiVCqxMPsDoqLiUvxmTQ3Ain4KlaMyjB2Z89YAyzaBmw7bmy29KVIkER8b3odvsDuoHg+MnmTOVDGLzUO1LqwKG1XeerckQywKtgVFN\/B33TkJkmgdKa5UZbmxtI0Nya73Hh00Xbcq+qYLCQqGR6mx2Pc7AqKd8hMdWCg1KZ5kJfmxkyXB8+NXIR7p07tf9PoQeBaoeNXQmIXgyRqyAxnV1B8B389+KWNw6QxzY3daR4sdLkx1uXB9wZ7ir6q45tCYqGQaGeo9KmzZTo+y66guBq5CF+zQZh0hR51sl3pmOpy49G0DNyZyH9vbx2+IHS8KSRaGC6hWSUNGewIirupUzEszY22IX3USUehy4O5Lg+eS0vHA6Pn4Tqr\/v2rq\/F5ITHdScenJmwRnh\/fYUdQYsZl3DiQgDBpTnPjYJobS11ujE3LwEMjl+AWu34Gp\/z4XGiQuCFFQ2YTO4ESJs2N2YN81DnqSsfyNDcmp3nwI1cGvuzUz8LbgBuEhleFRH0KBUyAdzGU2JDJwJ2hQdZogVLlcmNjmhsz09x4elQm7n9+Ia5Nxs+kTMdnU+jO5l12ASV+ADgD3x7hxrbQ+ExLmgd7XG4scLnhGunG98dl4qZU\/Fy8DbhBSLwmJBqTdAuBT2nEjewAIospjbhRaJgiJLQkCplzFX58m1eXyE6PUWX4pJB4Tug46fCA6VE1PMkrSmRTAIapEj8Pvdsq6LCA6RYSz\/IqEjmET8ddisTM0Mv2bL+qV9HwU141IgdSVVyvaHha1bAxdLdgt31J+ytqcQ+vFFEy3N1ouFXoGC0kPhISAYsDplmVmFQMXMMrQ5SEhMRtQsPvhcT6Id6Y2SQk3q6pse9KayKKM68X1wkdD4bW3mwTEm1xDpbzQmKrquM3tbX4ND9xohQH4OqKWtyjanhKkZipSKwVEodNLv7rFBJC6MgTOt4QGh7jUQ1EZFqZjs9W1+Mf1Xrc7fPjgQul1uNuIXEbPyEiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiKT\/h+KddUiiEEpOQAAAABJRU5ErkJggg==", + "label": "Image", + "value": null, + "variant": "primary", + "renderImage": false, + "customCssSelector": "illustration" + }, + "component": "FormImage", + "inspector": [ + { + "type": "FormInput", + "field": "name", + "config": { + "label": "Name", + "helper": "Image name" + } + }, + { + "type": "ImageUpload", + "field": "image", + "config": { + "label": "Upload", + "helper": "Upload image" + } + }, + { + "type": "ImageVariable", + "field": "imageName", + "config": { + "label": "Render from a variable name", + "helper": null + } + }, + { + "type": "FormInput", + "field": "height", + "config": { + "type": "number", + "label": "Height", + "helper": "Image height" + } + }, + { + "type": "FormInput", + "field": "width", + "config": { + "type": "number", + "label": "Width", + "helper": "image width" + } + }, + { + "type": "FormInput", + "field": "conditionalHide", + "config": { + "label": "Visibility Rule", + "helper": "This control is hidden until this expression is true" + } + }, + { + "type": "DeviceVisibility", + "field": "deviceVisibility", + "config": { + "label": "Device Visibility", + "helper": "This control is hidden until this expression is true" + } + }, + { + "type": "FormInput", + "field": "customFormatter", + "config": { + "label": "Custom Format String", + "helper": "Use the Mask Pattern format
Date ##\/##\/####
SSN ###-##-####
Phone (###) ###-####", + "validation": null + } + }, + { + "type": "FormInput", + "field": "customCssSelector", + "config": { + "label": "CSS Selector Name", + "helper": "Use this in your custom css rules", + "validation": "regex: [-?[_a-zA-Z]+[_-a-zA-Z0-9]*]" + } + }, + { + "type": "FormInput", + "field": "ariaLabel", + "config": { + "label": "Aria Label", + "helper": "Attribute designed to help assistive technology (e.g. screen readers) attach a label" + } + }, + { + "type": "FormInput", + "field": "tabindex", + "config": { + "label": "Tab Order", + "helper": "Order in which a user will move focus from one control to another by pressing the Tab key", + "validation": "regex: [0-9]*" + } + } + ], + "editor-control": "FormImage", + "editor-component": "FormImage" + }, + { + "label": "Rich Text", + "config": { + "icon": "fas fa-pencil-ruler", + "label": null, + "content": "

No screen assigned<\/h2>\n

This is a placeholder screen. Please assign a screen to this task.<\/p>", + "interactive": true, + "renderVarHtml": false + }, + "component": "FormHtmlViewer", + "inspector": [ + { + "type": "FormTextArea", + "field": "content", + "config": { + "rows": 5, + "label": "Content", + "value": null, + "helper": "The HTML text to display" + } + }, + { + "type": "FormCheckbox", + "field": "renderVarHtml", + "config": { + "label": "Render HTML from a Variable", + "value": null, + "helper": null + } + }, + { + "type": "FormInput", + "field": "conditionalHide", + "config": { + "label": "Visibility Rule", + "helper": "This control is hidden until this expression is true" + } + }, + { + "type": "DeviceVisibility", + "field": "deviceVisibility", + "config": { + "label": "Device Visibility", + "helper": "This control is hidden until this expression is true" + } + }, + { + "type": "FormInput", + "field": "customFormatter", + "config": { + "label": "Custom Format String", + "helper": "Use the Mask Pattern format
Date ##\/##\/####
SSN ###-##-####
Phone (###) ###-####", + "validation": null + } + }, + { + "type": "FormInput", + "field": "customCssSelector", + "config": { + "label": "CSS Selector Name", + "helper": "Use this in your custom css rules", + "validation": "regex: [-?[_a-zA-Z]+[_-a-zA-Z0-9]*]" + } + }, + { + "type": "FormInput", + "field": "ariaLabel", + "config": { + "label": "Aria Label", + "helper": "Attribute designed to help assistive technology (e.g. screen readers) attach a label" + } + }, + { + "type": "FormInput", + "field": "tabindex", + "config": { + "label": "Tab Order", + "helper": "Order in which a user will move focus from one control to another by pressing the Tab key", + "validation": "regex: [0-9]*" + } + } + ], + "editor-control": "FormHtmlEditor", + "editor-component": "FormHtmlEditor" + } + ] + } + ], + "computed": [], + "custom_css": "[selector='illustration'] {\n display: flex;\n justify-content: center;\n align-items: center;\n}", + "created_at": "2023-07-17T13:58:31-06:00", + "updated_at": "2023-07-17T14:01:48-06:00", + "status": "ACTIVE", + "key": "default-display-screen", + "watchers": [], + "translations": null, + "is_template": 0, + "asset_type": null, + "categories": [ + { + "id": 1, + "uuid": "990abaeb-7ffb-4065-a2a2-9cab61d9c01b", + "name": "Uncategorized", + "status": "ACTIVE", + "is_system": 0, + "created_at": "2023-04-28T14:27:27-06:00", + "updated_at": "2023-04-28T14:27:27-06:00", + "pivot": { + "assignable_id": 85, + "category_id": 1, + "category_type": "ProcessMaker\\Models\\ScreenCategory" + } + } + ] + } + ], + "screen_categories": [], + "scripts": [] +} \ No newline at end of file diff --git a/database/processes/screens/default-form-screen.json b/database/processes/screens/default-form-screen.json new file mode 100644 index 0000000000..7d910aae80 --- /dev/null +++ b/database/processes/screens/default-form-screen.json @@ -0,0 +1,430 @@ +{ + "type": "screen_package", + "version": "2", + "screens": [ + { + "id": 86, + "uuid": "99aba0ef-91ef-4a61-910e-947ba77b0da6", + "screen_category_id": "1", + "title": "Default Form Screen", + "description": "Default Form Screen", + "type": "FORM", + "config": [ + { + "name": "Default Form Screen", + "items": [ + { + "label": "Image", + "config": { + "icon": "fas fa-image", + "name": "default-screens-illustration", + "event": "submit", + "image": "data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAARkAAAEZCAYAAACjEFEXAAAABmJLR0QA\/wD\/AP+gvaeTAAAaMklEQVR42u3de3hU5Z0HcIta7c1L3WrrbvexPrbVqs+2tbvbZ7f2eXYfW+1F21qprla33bZKhjsiKFYLiBWEtgJqgcwk3AMxhEtCuIQQEJBwCfcQcOa8JzeS857JnSSQy8x3\/zgDBDKZOZPM5Jwz8\/08z+\/p87Q14Jz5fXPOeztXXUVERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERENlZTg1sUiYdUDeMUHe8oErlColBoOKBKHBQSu4XEFiGxVOh4U0g8V1mHbwAYxk+PiMKHioanVQ0ZQqJCSGCA1So07FAkZgkdDzJ0iFIYgGFCw2OKxFoh0TmIYIlUmiKxQEj88CBwLT91ohShSDwuJI4lKFj6q1pFYmqVH7fzChAlKZ+GW4XEuiEOlyurS0hkCx0P8ooQJVfA3Cck6iwOmCtrZ0Ud\/otXx5nUJtxU2Yybe5fXi+v4yaTi45GG+4WE32YB07s+9Gn4b14pm4SHiutVHd9UNTyl6HhZaJgvJNYrEqVCQhUSTVGuZ7eQqFclTgiJTUKHW0i8pEo8zMflJFRdjU8JHSdtHDC9a1NFLe7hVRs6NTW4RdXxiJB4LfQo7RUSPYm4vkeqAsg+fB7zd7c1zyg+e2xq4dnlY9a3PDI8G1fzSjiYkHjbIQFz6beghvk1NbiFVy8Bdyl1uEPR8VshsVRIKENxTU\/VBjF7ZxueyKrH4yv61jOrGrpeKmjJG7G26Q5eIac9JjXiRiHR6rCQuVANqo4xnPoenFN+fE7oeELV4Ak96gzpdVQ0YPKmlrDhcmU9tboh+JedbRuVRtzIK+eUuxgdIx0aMJdKQ7mi48e8muZVaPiKqmOMkNiawDVQpmrzyS5TAdO7Zu1oO6doGA\/wMcoJj0rZjg+ZS7VZ0XA\/r2p43gb8kyIxQejYb6frlnP0fJ8QeWJlPZ5e3RAxaDL2d0BI7OMYnd1DRkNVEoUMhERASCyrlLiTV\/eqq1QdXwzdrX4Y+mxsd81OngnihXVNF8Nl\/p52HK8JQkjgYGUA6fs68OvsvoHzZFYDjlYHICRaVQ0\/49W2751Md5KFzMUFfarE+xV+fCnVrqlPw62KRJqiY3uiZoESMfCbc\/Q89oqesP\/7PtGD\/\/2gsU\/QLD5w7uIvF0XHb9nRNlMMXJOkAdO72hWJBd463JvkvyxuUyVeUCWKnBIssdbCko4+IfNG0dnL72J1DGdn2+kZ3YvrUiBkLlRQSGxTJJ6prcWnk+IXhI4HhY43Qwvggsl+DZeXnusTMtO2tV75\/zur1uNudre9fgPqKRQ0F4+bUCQyhYbHnBI4AIb5NNynSrwgJHKERHMqXTOfBozPb+4TMgtLOsKuDgfwCXa3fQZ+D6RgyPSuDqFjg9AxWkj8i13Ot\/E24AZF4iFV4nUhsSnVQqV3Ha4MYMqW1rAzUPvU8GM4qsTP2d12mX2QWJHiIXNlNakaNgodbwodv6qoxT3FwDWJ+vxP+fG5Cj++LSSeVSRmqRo2DvJQsKSoj+uCWHesE38qbMWvVoafyn5nV1ukn1HI7rbPncwfGCxRq1OV8IVmaxYrElNDx47+VpF4XJF4yOfHA71LqcO\/KhIPCR3DhYbfKRrGKxJThcRCVcPG0MbAZn62fR+L3CUdeDY78hqZ17e2wlcXeSmD2oSb2OF2mO7UcRe\/3Cw71Om6IF4qiLy9YPjKeizY2w6fFv3nVej4ETvcPoO\/gl9yltU1bVtrv+HyZFYD3t7RhtLKgOmfp0o8z+62S8jomMEvOcvKKjrdHTZcXOubsOLQOZw8E4z5Z6oaxrG7bULx42v8orOsrCmbW8IO7CrawH8mVwDb75HpI37ZWVZU+Zlgn3NkJha0QBnkz1U1fJedba+QeZZfeJYVdbwmiCdWXh4yG8u6Bvtz23iWsM0AuFqV8PFLz7LquIc\/5DZduovRBv0zF7Or7Tg2I+HiF55l9W7seOxTU\/z4Djvajqt\/VVxvw1eisFixlY5V7GZ7T2eP4heVNRRVWhnArOKzmFTQgvl72gc0TR2mdFXHF9nJNnYQuFZoKGcTsBJZx6oDfbYOjMtrjrZVwMybR3\/ALnbC2IyGn7IRWIksd5gDqB5fUY+t5QOeVQoKiV+ze501pb2FzcAKV2XVwK5TwIaDwJKdwNwCYHYe4N4OHFbN\/Yx3drWFDZncY50D2sCqaHiaXeswofdid7KpUjdIdp8C8kqBZR8C8wqAaTnAuCVAmrv\/Gr8UOOCL\/vO3lPd9DcpTqxpwuCoQ699V47vSnX03M50Nl7x1shrYexrYdBjI2gMsKARmrgMmLoscJNHqr\/nm\/nzPvg4MDy3Ceya7ARtOxHwXs0lI3MZOdTCvF9cpEmVsSGcHyZ7TwMZDwLJdwPxNwPQcYMKSwQVJpBqdAdOL6cpqgvhI6YE3tsV3tULiOR6xmSyDwDq+Z9f39bBCe39qwt+RvLIycUESrY5UJObwMCHxtrcBN7Azk++x6T02s9XHURpjHXYKkkhVXBb3z6BQ0fFVdmOy3s004sbQLaqtG7GqHvC3AM3tQHsn0NEJnO8y\/rOlA\/C3AlV++\/79vRGCxOW2Z5j0V7n74\/a5nFUlRvDRKDXWzvyPXZtTNgPnumDauU6gttG6IDmkAoXHnB8kkcqzPQ6fl4byZH8pH\/V9bCq0U7hU+mMLlyu1dgCqziBJRM3JG\/z+o2R4CR8NbO2MLQaBq+uBngAGraMTUGMNEQ0o8QL5pUBmMZC1G3h\/C\/DmWuCl5akRItHqj6sHcaKdxEw+HqXyY5NErtUBU6EDXT2Im5b2CHtsKo1BzA9KgHc3A1NzjCnaC800dnFyhcPEZcCs9UZ45h8C9nmNVbzFZcC8TeZ\/zqgMmHqjQJh6kV2W6nczfjxgdcg0tiHuhDSmgfNKjeXxM9cBE5Ym513Gi8uAmesBT7Hx77vPZzw2tp2P\/jmdrDH+eTN\/zuEYp7F58DddGpvRUWxlyHRHuYs512XMMDWcNersOSAQjPzPbDsee7M6ZXxl3BLjTux0rfFZxCOQR2VE\/3O3n4hpDGYGO4suUiWet3Kwtz\/dPcCZxstXu+4qNxoso9i4fe9PVX1y3rVMywH0lvjf+WXtMTGNvc\/0dV3GMRi6TGUzbrZq82RFPyETCBrjBot3GDMb4fbfvLjMGOjt7+4n2QJm\/BLjTi4RFBn9z3ebm8Y+wlkkCv\/IpGGHJYcdVRoDtVcqOGyu8Y5Vhm+arp7kC5n8Q0iY7h5gpGfQ09gtlRJ3spsofMhIzE70fpxd5cDa\/cZvxBm5wJjQTM6rq4Cahktf+DON0Y8guFClInzT+FuTL2TONCKh\/rg68p\/\/6qqoi+1+x06i\/sdlNDwVjzDx9VpKv\/xD47efmf04LrcRPHPyLp9SjvbP1LeGb5hDavKFTGd3YkMm2pT2KE\/EaexCdhFFC5l\/H8ijzpVrTkZlDF3TuYv6bxhPcfKFTGtHYkPGzODvofAn5fUoGu5nF1FE3jrcG+1RJ3cfsLDQuOOwetHaH1f333QtHcCYzOQLGVVPbMgUHR\/wNPYidhBFv5Opwx1CAgcVYONhYPFO49Fl8gr7NdvkFZGncc38RnZi7fMlNmSOVUb\/O6wp6burusKPL7GDKKrV+\/Ho9Bz7N9qkFZEHQE\/XRp8l4exSeHVNJnZjF\/XZlzSN3UNRTZ2Ka8YuRq0TVrpWN0TYs9RhzzuveFVmcWJDpjsQPaBnXz6N3VXlx+3sIIpqxCI87IjHBW\/\/DdLZDczekNw7oWetR8JFm8aesoqvj6UBcKXjSbs32Mz1QH\/blXoCse0odvJGyESL9jmOzACUuosh8312D5ny8ir80O4NdlhNvYHecGVmZ\/VQTGMrEmXsHDKtVOAlO+9AHpnR\/0K0A77UOjwq4dPYJ6L\/HYqOA0LDFHYOmQJgmNBx0s4DptNy+m+KN9emVshEGpeKh+NV0f8OOSVAhY5vsXvIFEXH\/wlprImx8\/my\/e3UdnlSK2TySxMbMsLEbuyFhWjjUQ5kLmCMV6NoQhqL75wWMu3nU++s3YwET2OXVZu6s6xi95ApQmL5henIgkPOe1wKBJN34V2kWbZEWncg+t9h7GLUsnvI9GPShbLzAGqkgd9Ue5vA+CXRjx4dqLbz4Q8HC1Pdzy\/Etewi6ldox3X7ZcvD64Z2B3Wsdbwq\/ONSMm6EjFYf18U\/YLp6Yltr5HLjLnYShVVZh28IiYZwu63\/lG3vR6b6s5cawltnLHFPxXcg\/W0jEIzT3UwQQPkZY2d9jIeuP8Juor5jMH58XZGo6e9Ih3c327\/BxmSaP9QqmWvVR7EFTXfA2AB5rNJ4k0PWHmBuwSAeNz0YzY6iy4TOi9EiHUK16iM2r5Nq9gbjMfLCi\/G6A4DWbPx3RaEgmbfJ2I8U9wHydMxjV1HvWaQfCInGaCfdFR1n4zqxXB5jX9MQr9ouYGeRMchrvFOpy8xxmkcrndFQ03OAP681f9g4KyHlZXeluGLgGqFhXqzn9k6wceP+Jf\/yE\/E6u42DnFJt1a9NitPYqcyn4VZFx\/aBvG3grbX2nV3qb63M1mNseivqhUx8ld2WghSJh4RE3UBfaZJeZM8v9J7T\/c+cBILGO4HY+EMcMun4MTsuxR6PFImpQiIwmPcmmVlWbkVV10eeol28g00\/1DUiHWPYealy91KLfxYSu+PxcrY9p+35hfZGWeW6ZCebfsgH4d2Yz+5LhYDR8LSQaIrX62RP19pzIHXNvsirVl\/PZtMPeXmwmR2YzOFiHNOwLBHvrX4ly54rfSv94UOmuIwNb1H52InJPbhbnYiAERL4a749v9QTlgI7yoBzXZdegbL+QOod92Cj6hmejU+yI5OIquJ6oWGukAgmKmCEBJZ9aO8v98jQClc2uQ2uxSJ8jZ2ZJCpqcY+QOJLIcLlQmw+zeVim6yfsziQgJJ678vyXRNZBhc3DMj3DNJYd6uTHoybcJDSsHqpwuVA+LTUPg2INaIbpXXaqUwNGw3cjnf2S6JqWwwZimaot7FYnPh5p+J2QOG9VwAgJvLeVDcQyVQo71kFCWwNmWhkuF+qDvWwgFqexk8rpWvyDKlFkh4ARkgvcWDGNy3ydHWz36WkNXxESXrsEjJDmXvLFYqW5gRGL8FN2sY1563CvlQO8kWoiF7yxzE1jj2cn23WA14+vRzvc28qauY4NxDJxJ+PGe+xmG\/LpuEtI1No1YIQEPNvZQCxTdzJb2dE2U12Nz9ttDCZcbTjIBmKZKpVdbbNpaiGxze4BIySw9zQbiGWqAqPn4Tp2t13GYXTMcELACGm8c5nHKLDM1PMLcTe72w5T1Tq+ZfYdSHYpHtDNMjku8yg73GIAhgmJo04KGCGBdwrYQCxTC\/ImsMutfkyS+LXTAkZIYPkuNhDLVL3PLrd+sFdxYshsOcoGYpmodBSy060di\/mREwNGSOCQygZimaoKdrqFFB1ZTg0ZRQJjF7OJWNGnsX+TievZ7dY9KrU5NWSEBN5YkzrNMirD+Pf1FAObjwD5pQwQ06+tzcA32PFW3MX48R0nB4yQwN+T9ACrF5cBc\/KA7L3ArnLj2NGunsvf6dR2nuERwwzTY+x4axbfjXR6yOSUOPvLPzoDmL7GeF\/2lqPAsUrjnU1mvbySAWLy3dgvsuOtmbp+2+khs\/Okc77oL68E3t8KrN0PlHiB2iYgGMSgzNvEADG5IG8BO94CqgaP00OmrMa+jzordgPbTxiPOp3dSIg1+xggJo982MaOt+ZO5gOnh4yQwKTl1g3EXvmo09yOIVXiZYCYrEp2vDV3MhnJEDKzN1jzqBMIwnJV9QwQs9PY47PxKXb9UIeMxF+TIWQyd8TvyzhxGfC3jcDqj4DdpwBVB853wba6egBXBkPE5Lux72XXD33ITEqGkBnIepHRGcCbuUZAbT1qHE7e1A7b6wkANQ3Afp9xVzV\/M+BigJgLmXT8jF0\/9GMyP0iGkIl1XOKQMJrV7hrbgONVxnhPRjEwI9cYB2JgDHiGaSK7fohVNuNmIRF0esh4NWBUDAdYlQp7hcm5LqDSb4Rl9l5gbgEwaQVDIQEL8hay6625mzmVDHczr602\/2XLK7UmTAJBwN9qzELlHwLSi4zZKRdP+BuqkClix1sTMnOSIWTmxrAo7e+FiQ+U9vPG+pjtJ4z1MnPyuJnTBlXFjrdma8GDyRAyWbvNf9leWx2\/MOkOGNPZJV5jIPb9rVzqb+MKchrbAgCuFhqqnB4y247FNACIcwOYlm5uNx51thw1FuBNX2Pfw8xdbuMM5HcKgJW7gcJjwNEKoMIPfLA3pVf+3seut2Yq+09OD5kjFbF92RTZf5h0dBqPOrvKjYHYOXnAuCX2DJIpWca6nhW7ga3HjM\/hTGPfHdtXmpaToiHjwS\/Y8Rao8uN2IdHp5JBRZGxBsKvceNSprjcedXJDa07s+qgTbrd2WfXAH\/M8xSk7jT2JHW8RReLvTr+bmZFr\/ss2drF915yY3a0dCBpT3wORV5qyj0uL2O0W8Z3Bl4XEOSeHzMJtzjyYajC7tdvPAw1nubEyhipmt3NsZsCVu9++x2ZOX2Osi8k\/ZDzq+FvjN8Plb419IFvIlL2TqWanW6isDJ9UJMqcGjK7yu3xqDO3wBgwLvEajzPdPYlfl1OhA7FsCtdbUncae+JSfIbdbuVjk4b7nHq4+KkzQ7dZcMJS4K11xkDs9hNA+RnjzF0rfVxr7v8XBJCbwoddjcrE\/ex06weBn3HqnqaXV8T\/UWdGrrFBcctRY8NiY5s9N1QGQ3c0vQeG61uBkzXAjjJjfcx7W4xp75TeKJmOx9nldggaDeOdGDJz8uL7qNPVA9vrvYVh5R5gUZGxDmY0d2z3V5PZ4fYKmoCTQmZJjAdY\/Xmt8Zu+\/bz9w6Sz2zhEa\/cpIwj\/ttE4ZIuhEXOls7ttpELiF0Ki2Skhs\/FwbF+43o8XdhEIArLZOPcmr9SYmn89m7u141hZ7Gy7TW3X4Q6ho9gJIbNfie0LV9NgbaCcPWcMWBedAJZ9CMxcB4zJZBAkdEzGg+nsavsOCP9yiKa4m4WEX0goikSZKnHwQik6tguJwoulY78qcVBoKBcSik\/DmVGZCJr9wu33Dd2xmbVNxoFZ+YeMFb2xnIHDik+NXYx2Vya+yG62MQCfUHU8oujIEhJnYwyPOiGxS5VYoWp4S5FwqRp+puj4nlqPu711+AKAYYP9O6a5cdjsl27dgfgHypW7td9ax0FYq2vMYmBeAVDixXp2scMW7\/kk\/kPVMFZomCcksoXEFqEhX5VYqUjMFBp+75P4z8pm3DxUf6+0dCwx++V7b8vAwyTcbu3xS9jQlq1\/8QCvrDQeOd3bjb1fxWXAIRVQtNAvOg357FwaNJcbE81+MadkmTuYqroB2Ndrt\/YrWWxq2wZJ5NrKDqFBG7EID8fyxe19sHjDWWPB3eYjxnEIb6zhGwKsDJIFhcAHJTEHSaTayQ6hQRvlwe2xfrFfXWVsFWCTWx8kPi2hkwp8JzbFaVzGDZ3NbPHL1DIuD5KsPcYxoEMQJJGKA78Ut5DZzkZP2SCJVMvZHRSfwV8P5jIEEhckmw4DB3y2DZJIx7TOYndQvO5kfs+AiE+QKHXOf2XOxdIxit1B8ZlhcuPfGB5XLKfvJ0j2ngY+TqYgiVCqxMPsDoqLiUvxmTQ3Ain4KlaMyjB2Z89YAyzaBmw7bmy29KVIkER8b3odvsDuoHg+MnmTOVDGLzUO1LqwKG1XeerckQywKtgVFN\/B33TkJkmgdKa5UZbmxtI0Nya73Hh00Xbcq+qYLCQqGR6mx2Pc7AqKd8hMdWCg1KZ5kJfmxkyXB8+NXIR7p07tf9PoQeBaoeNXQmIXgyRqyAxnV1B8B389+KWNw6QxzY3daR4sdLkx1uXB9wZ7ir6q45tCYqGQaGeo9KmzZTo+y66guBq5CF+zQZh0hR51sl3pmOpy49G0DNyZyH9vbx2+IHS8KSRaGC6hWSUNGewIirupUzEszY22IX3USUehy4O5Lg+eS0vHA6Pn4Tqr\/v2rq\/F5ITHdScenJmwRnh\/fYUdQYsZl3DiQgDBpTnPjYJobS11ujE3LwEMjl+AWu34Gp\/z4XGiQuCFFQ2YTO4ESJs2N2YN81DnqSsfyNDcmp3nwI1cGvuzUz8LbgBuEhleFRH0KBUyAdzGU2JDJwJ2hQdZogVLlcmNjmhsz09x4elQm7n9+Ia5Nxs+kTMdnU+jO5l12ASV+ADgD3x7hxrbQ+ExLmgd7XG4scLnhGunG98dl4qZU\/Fy8DbhBSLwmJBqTdAuBT2nEjewAIospjbhRaJgiJLQkCplzFX58m1eXyE6PUWX4pJB4Tug46fCA6VE1PMkrSmRTAIapEj8Pvdsq6LCA6RYSz\/IqEjmET8ddisTM0Mv2bL+qV9HwU141IgdSVVyvaHha1bAxdLdgt31J+ytqcQ+vFFEy3N1ouFXoGC0kPhISAYsDplmVmFQMXMMrQ5SEhMRtQsPvhcT6Id6Y2SQk3q6pse9KayKKM68X1wkdD4bW3mwTEm1xDpbzQmKrquM3tbX4ND9xohQH4OqKWtyjanhKkZipSKwVEodNLv7rFBJC6MgTOt4QGh7jUQ1EZFqZjs9W1+Mf1Xrc7fPjgQul1uNuIXEbPyEiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiKT\/h+KddUiiEEpOQAAAABJRU5ErkJggg==", + "label": "Image", + "value": null, + "variant": "primary", + "renderImage": false, + "customCssSelector": "illustration" + }, + "component": "FormImage", + "inspector": [ + { + "type": "FormInput", + "field": "name", + "config": { + "label": "Name", + "helper": "Image name" + } + }, + { + "type": "ImageUpload", + "field": "image", + "config": { + "label": "Upload", + "helper": "Upload image" + } + }, + { + "type": "ImageVariable", + "field": "imageName", + "config": { + "label": "Render from a variable name", + "helper": null + } + }, + { + "type": "FormInput", + "field": "height", + "config": { + "type": "number", + "label": "Height", + "helper": "Image height" + } + }, + { + "type": "FormInput", + "field": "width", + "config": { + "type": "number", + "label": "Width", + "helper": "image width" + } + }, + { + "type": "FormInput", + "field": "conditionalHide", + "config": { + "label": "Visibility Rule", + "helper": "This control is hidden until this expression is true" + } + }, + { + "type": "DeviceVisibility", + "field": "deviceVisibility", + "config": { + "label": "Device Visibility", + "helper": "This control is hidden until this expression is true" + } + }, + { + "type": "FormInput", + "field": "customFormatter", + "config": { + "label": "Custom Format String", + "helper": "Use the Mask Pattern format
Date ##\/##\/####
SSN ###-##-####
Phone (###) ###-####", + "validation": null + } + }, + { + "type": "FormInput", + "field": "customCssSelector", + "config": { + "label": "CSS Selector Name", + "helper": "Use this in your custom css rules", + "validation": "regex: [-?[_a-zA-Z]+[_-a-zA-Z0-9]*]" + } + }, + { + "type": "FormInput", + "field": "ariaLabel", + "config": { + "label": "Aria Label", + "helper": "Attribute designed to help assistive technology (e.g. screen readers) attach a label" + } + }, + { + "type": "FormInput", + "field": "tabindex", + "config": { + "label": "Tab Order", + "helper": "Order in which a user will move focus from one control to another by pressing the Tab key", + "validation": "regex: [0-9]*" + } + } + ], + "editor-control": "FormImage", + "editor-component": "FormImage" + }, + { + "label": "Rich Text", + "config": { + "icon": "fas fa-pencil-ruler", + "label": null, + "content": "

No screen assigned<\/h2>\n

This is a placeholder screen. Please assign a screen to this task.<\/p>", + "interactive": true, + "renderVarHtml": false + }, + "component": "FormHtmlViewer", + "inspector": [ + { + "type": "FormTextArea", + "field": "content", + "config": { + "rows": 5, + "label": "Content", + "value": null, + "helper": "The HTML text to display" + } + }, + { + "type": "FormCheckbox", + "field": "renderVarHtml", + "config": { + "label": "Render HTML from a Variable", + "value": null, + "helper": null + } + }, + { + "type": "FormInput", + "field": "conditionalHide", + "config": { + "label": "Visibility Rule", + "helper": "This control is hidden until this expression is true" + } + }, + { + "type": "DeviceVisibility", + "field": "deviceVisibility", + "config": { + "label": "Device Visibility", + "helper": "This control is hidden until this expression is true" + } + }, + { + "type": "FormInput", + "field": "customFormatter", + "config": { + "label": "Custom Format String", + "helper": "Use the Mask Pattern format
Date ##\/##\/####
SSN ###-##-####
Phone (###) ###-####", + "validation": null + } + }, + { + "type": "FormInput", + "field": "customCssSelector", + "config": { + "label": "CSS Selector Name", + "helper": "Use this in your custom css rules", + "validation": "regex: [-?[_a-zA-Z]+[_-a-zA-Z0-9]*]" + } + }, + { + "type": "FormInput", + "field": "ariaLabel", + "config": { + "label": "Aria Label", + "helper": "Attribute designed to help assistive technology (e.g. screen readers) attach a label" + } + }, + { + "type": "FormInput", + "field": "tabindex", + "config": { + "label": "Tab Order", + "helper": "Order in which a user will move focus from one control to another by pressing the Tab key", + "validation": "regex: [0-9]*" + } + } + ], + "editor-control": "FormHtmlEditor", + "editor-component": "FormHtmlEditor" + }, + { + "label": "Submit Button", + "config": { + "icon": "fas fa-share-square", + "name": null, + "event": "submit", + "label": "Continue", + "tooltip": [], + "variant": "primary", + "fieldValue": null, + "defaultSubmit": true, + "customCssSelector": "submit" + }, + "component": "FormButton", + "inspector": [ + { + "type": "FormInput", + "field": "label", + "config": { + "label": "Label", + "helper": "The label describes the button's text" + } + }, + { + "type": "FormInput", + "field": "name", + "config": { + "name": "Variable Name", + "label": "Variable Name", + "helper": "A variable name is a symbolic name to reference information.", + "validation": "regex:\/^(?:[A-Za-z])(?:[0-9A-Z_.a-z])*(? Date ##\/##\/####
SSN ###-##-####
Phone (###) ###-####", + "validation": null + } + }, + { + "type": "FormInput", + "field": "customCssSelector", + "config": { + "label": "CSS Selector Name", + "helper": "Use this in your custom css rules", + "validation": "regex: [-?[_a-zA-Z]+[_-a-zA-Z0-9]*]" + } + }, + { + "type": "FormInput", + "field": "ariaLabel", + "config": { + "label": "Aria Label", + "helper": "Attribute designed to help assistive technology (e.g. screen readers) attach a label" + } + }, + { + "type": "FormInput", + "field": "tabindex", + "config": { + "label": "Tab Order", + "helper": "Order in which a user will move focus from one control to another by pressing the Tab key", + "validation": "regex: [0-9]*" + } + } + ], + "editor-control": "FormSubmit", + "editor-component": "FormButton" + } + ] + } + ], + "computed": [], + "custom_css": "[selector='illustration'],\n[selector='submit'] {\n display: flex;\n justify-content: center;\n align-items: center;\n}", + "created_at": "2023-07-17T14:03:05-06:00", + "updated_at": "2023-07-17T14:04:23-06:00", + "status": "ACTIVE", + "key": "default-form-screen", + "watchers": [], + "translations": null, + "is_template": 0, + "asset_type": null, + "categories": [ + { + "id": 1, + "uuid": "990abaeb-7ffb-4065-a2a2-9cab61d9c01b", + "name": "Uncategorized", + "status": "ACTIVE", + "is_system": 0, + "created_at": "2023-04-28T14:27:27-06:00", + "updated_at": "2023-04-28T14:27:27-06:00", + "pivot": { + "assignable_id": 86, + "category_id": 1, + "category_type": "ProcessMaker\\Models\\ScreenCategory" + } + } + ] + } + ], + "screen_categories": [], + "scripts": [] +} \ No newline at end of file diff --git a/database/seeders/ScreenSystemSeeder.php b/database/seeders/ScreenSystemSeeder.php index 7501cbd5f7..40f75a44b2 100644 --- a/database/seeders/ScreenSystemSeeder.php +++ b/database/seeders/ScreenSystemSeeder.php @@ -8,14 +8,42 @@ class ScreenSystemSeeder extends Seeder { + const SCREENS_PATH = 'processes/screens/'; + /** * Run the database seeds. - * - * @return void */ - public function run() + public function run(): void + { + $this->installInterstitial(); + $this->installScreen('default-display-screen'); + $this->installScreen('default-form-screen'); + } + + /** + * Install a screen. + */ + private function installScreen(string $key): Screen + { + $path = database_path(self::SCREENS_PATH . "{$key}.json"); + $json = json_decode(file_get_contents($path), true); + $screen = collect($json['screens'])->first(); + + // By default, the screen is initially installed as a system screen. + unset($screen['categories']); + $screen['screen_category_id'] = null; + + return Screen::updateOrCreate([ + 'key' => $screen['key'], + ], $screen); + } + + /** + * Install the interstitial screen. + */ + private function installInterstitial() { - $path = database_path('processes/screens/interstitial.json'); + $path = database_path(self::SCREENS_PATH . 'interstitial.json'); if (file_exists($path)) { $json = json_decode(file_get_contents($path)); $screen = Screen::where('title', $json[0]->name)->first(); @@ -40,8 +68,6 @@ public function run() ]); $screen->save(); } - - return $screen; } } } From 2f244de7ff9e20a4281d31efd7aa3741706ac223 Mon Sep 17 00:00:00 2001 From: Eleazar Resendez Date: Tue, 18 Jul 2023 11:55:33 -0600 Subject: [PATCH 02/10] Return the default screen --- ProcessMaker/Models/ProcessRequestToken.php | 18 ++++++++++-------- 1 file changed, 10 insertions(+), 8 deletions(-) diff --git a/ProcessMaker/Models/ProcessRequestToken.php b/ProcessMaker/Models/ProcessRequestToken.php index bede518863..641677c5b3 100644 --- a/ProcessMaker/Models/ProcessRequestToken.php +++ b/ProcessMaker/Models/ProcessRequestToken.php @@ -319,14 +319,20 @@ public function getBpmnDefinition() /** * Get the form assigned to the task. - * - * @return Screen */ - public function getScreen() + public function getScreen(): Screen { $definition = $this->getDefinition(); + $screenRef = $definition['screenRef'] ?? null; + $screen = Screen::find($screenRef); + + if ($screen === null) { + $isManualTask = $this->getBpmnDefinition()->localName === 'manualTask'; + $defaultScreen = $isManualTask ? 'default-display-screen' : 'default-form-screen'; + $screen = Screen::firstWhere('key', $defaultScreen); + } - return empty($definition['screenRef']) ? null : Screen::find($definition['screenRef']); + return $screen; } /** @@ -338,10 +344,6 @@ public function getScreenVersion() { $screen = $this->getScreen(); - if (!$screen) { - return null; - } - return $screen->versionFor($this->processRequest); } From 6e7f082634e5f1056c6e92b15b4b5385d6b00c84 Mon Sep 17 00:00:00 2001 From: Eleazar Resendez Date: Tue, 18 Jul 2023 12:33:55 -0600 Subject: [PATCH 03/10] Add figma tweaks --- database/processes/screens/default-display-screen.json | 6 +++--- database/processes/screens/default-form-screen.json | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/database/processes/screens/default-display-screen.json b/database/processes/screens/default-display-screen.json index 7179de2ea1..6c974ee4fe 100644 --- a/database/processes/screens/default-display-screen.json +++ b/database/processes/screens/default-display-screen.json @@ -19,7 +19,7 @@ "icon": "fas fa-image", "name": "default-screens-illustration", "event": "submit", - "image": "data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAARkAAAEZCAYAAACjEFEXAAAABmJLR0QA\/wD\/AP+gvaeTAAAaMklEQVR42u3de3hU5Z0HcIta7c1L3WrrbvexPrbVqs+2tbvbZ7f2eXYfW+1F21qprla33bZKhjsiKFYLiBWEtgJqgcwk3AMxhEtCuIQQEJBwCfcQcOa8JzeS857JnSSQy8x3\/zgDBDKZOZPM5Jwz8\/08z+\/p87Q14Jz5fXPOeztXXUVERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERENlZTg1sUiYdUDeMUHe8oErlColBoOKBKHBQSu4XEFiGxVOh4U0g8V1mHbwAYxk+PiMKHioanVQ0ZQqJCSGCA1So07FAkZgkdDzJ0iFIYgGFCw2OKxFoh0TmIYIlUmiKxQEj88CBwLT91ohShSDwuJI4lKFj6q1pFYmqVH7fzChAlKZ+GW4XEuiEOlyurS0hkCx0P8ooQJVfA3Cck6iwOmCtrZ0Ud\/otXx5nUJtxU2Yybe5fXi+v4yaTi45GG+4WE32YB07s+9Gn4b14pm4SHiutVHd9UNTyl6HhZaJgvJNYrEqVCQhUSTVGuZ7eQqFclTgiJTUKHW0i8pEo8zMflJFRdjU8JHSdtHDC9a1NFLe7hVRs6NTW4RdXxiJB4LfQo7RUSPYm4vkeqAsg+fB7zd7c1zyg+e2xq4dnlY9a3PDI8G1fzSjiYkHjbIQFz6beghvk1NbiFVy8Bdyl1uEPR8VshsVRIKENxTU\/VBjF7ZxueyKrH4yv61jOrGrpeKmjJG7G26Q5eIac9JjXiRiHR6rCQuVANqo4xnPoenFN+fE7oeELV4Ak96gzpdVQ0YPKmlrDhcmU9tboh+JedbRuVRtzIK+eUuxgdIx0aMJdKQ7mi48e8muZVaPiKqmOMkNiawDVQpmrzyS5TAdO7Zu1oO6doGA\/wMcoJj0rZjg+ZS7VZ0XA\/r2p43gb8kyIxQejYb6frlnP0fJ8QeWJlPZ5e3RAxaDL2d0BI7OMYnd1DRkNVEoUMhERASCyrlLiTV\/eqq1QdXwzdrX4Y+mxsd81OngnihXVNF8Nl\/p52HK8JQkjgYGUA6fs68OvsvoHzZFYDjlYHICRaVQ0\/49W2751Md5KFzMUFfarE+xV+fCnVrqlPw62KRJqiY3uiZoESMfCbc\/Q89oqesP\/7PtGD\/\/2gsU\/QLD5w7uIvF0XHb9nRNlMMXJOkAdO72hWJBd463JvkvyxuUyVeUCWKnBIssdbCko4+IfNG0dnL72J1DGdn2+kZ3YvrUiBkLlRQSGxTJJ6prcWnk+IXhI4HhY43Qwvggsl+DZeXnusTMtO2tV75\/zur1uNudre9fgPqKRQ0F4+bUCQyhYbHnBI4AIb5NNynSrwgJHKERHMqXTOfBozPb+4TMgtLOsKuDgfwCXa3fQZ+D6RgyPSuDqFjg9AxWkj8i13Ot\/E24AZF4iFV4nUhsSnVQqV3Ha4MYMqW1rAzUPvU8GM4qsTP2d12mX2QWJHiIXNlNakaNgodbwodv6qoxT3FwDWJ+vxP+fG5Cj++LSSeVSRmqRo2DvJQsKSoj+uCWHesE38qbMWvVoafyn5nV1ukn1HI7rbPncwfGCxRq1OV8IVmaxYrElNDx47+VpF4XJF4yOfHA71LqcO\/KhIPCR3DhYbfKRrGKxJThcRCVcPG0MbAZn62fR+L3CUdeDY78hqZ17e2wlcXeSmD2oSb2OF2mO7UcRe\/3Cw71Om6IF4qiLy9YPjKeizY2w6fFv3nVej4ETvcPoO\/gl9yltU1bVtrv+HyZFYD3t7RhtLKgOmfp0o8z+62S8jomMEvOcvKKjrdHTZcXOubsOLQOZw8E4z5Z6oaxrG7bULx42v8orOsrCmbW8IO7CrawH8mVwDb75HpI37ZWVZU+Zlgn3NkJha0QBnkz1U1fJedba+QeZZfeJYVdbwmiCdWXh4yG8u6Bvtz23iWsM0AuFqV8PFLz7LquIc\/5DZduovRBv0zF7Or7Tg2I+HiF55l9W7seOxTU\/z4Djvajqt\/VVxvw1eisFixlY5V7GZ7T2eP4heVNRRVWhnArOKzmFTQgvl72gc0TR2mdFXHF9nJNnYQuFZoKGcTsBJZx6oDfbYOjMtrjrZVwMybR3\/ALnbC2IyGn7IRWIksd5gDqB5fUY+t5QOeVQoKiV+ze501pb2FzcAKV2XVwK5TwIaDwJKdwNwCYHYe4N4OHFbN\/Yx3drWFDZncY50D2sCqaHiaXeswofdid7KpUjdIdp8C8kqBZR8C8wqAaTnAuCVAmrv\/Gr8UOOCL\/vO3lPd9DcpTqxpwuCoQ699V47vSnX03M50Nl7x1shrYexrYdBjI2gMsKARmrgMmLoscJNHqr\/nm\/nzPvg4MDy3Ceya7ARtOxHwXs0lI3MZOdTCvF9cpEmVsSGcHyZ7TwMZDwLJdwPxNwPQcYMKSwQVJpBqdAdOL6cpqgvhI6YE3tsV3tULiOR6xmSyDwDq+Z9f39bBCe39qwt+RvLIycUESrY5UJObwMCHxtrcBN7Azk++x6T02s9XHURpjHXYKkkhVXBb3z6BQ0fFVdmOy3s004sbQLaqtG7GqHvC3AM3tQHsn0NEJnO8y\/rOlA\/C3AlV++\/79vRGCxOW2Z5j0V7n74\/a5nFUlRvDRKDXWzvyPXZtTNgPnumDauU6gttG6IDmkAoXHnB8kkcqzPQ6fl4byZH8pH\/V9bCq0U7hU+mMLlyu1dgCqziBJRM3JG\/z+o2R4CR8NbO2MLQaBq+uBngAGraMTUGMNEQ0o8QL5pUBmMZC1G3h\/C\/DmWuCl5akRItHqj6sHcaKdxEw+HqXyY5NErtUBU6EDXT2Im5b2CHtsKo1BzA9KgHc3A1NzjCnaC800dnFyhcPEZcCs9UZ45h8C9nmNVbzFZcC8TeZ\/zqgMmHqjQJh6kV2W6nczfjxgdcg0tiHuhDSmgfNKjeXxM9cBE5Ym513Gi8uAmesBT7Hx77vPZzw2tp2P\/jmdrDH+eTN\/zuEYp7F58DddGpvRUWxlyHRHuYs512XMMDWcNersOSAQjPzPbDsee7M6ZXxl3BLjTux0rfFZxCOQR2VE\/3O3n4hpDGYGO4suUiWet3Kwtz\/dPcCZxstXu+4qNxoso9i4fe9PVX1y3rVMywH0lvjf+WXtMTGNvc\/0dV3GMRi6TGUzbrZq82RFPyETCBrjBot3GDMb4fbfvLjMGOjt7+4n2QJm\/BLjTi4RFBn9z3ebm8Y+wlkkCv\/IpGGHJYcdVRoDtVcqOGyu8Y5Vhm+arp7kC5n8Q0iY7h5gpGfQ09gtlRJ3spsofMhIzE70fpxd5cDa\/cZvxBm5wJjQTM6rq4Cahktf+DON0Y8guFClInzT+FuTL2TONCKh\/rg68p\/\/6qqoi+1+x06i\/sdlNDwVjzDx9VpKv\/xD47efmf04LrcRPHPyLp9SjvbP1LeGb5hDavKFTGd3YkMm2pT2KE\/EaexCdhFFC5l\/H8ijzpVrTkZlDF3TuYv6bxhPcfKFTGtHYkPGzODvofAn5fUoGu5nF1FE3jrcG+1RJ3cfsLDQuOOwetHaH1f333QtHcCYzOQLGVVPbMgUHR\/wNPYidhBFv5Opwx1CAgcVYONhYPFO49Fl8gr7NdvkFZGncc38RnZi7fMlNmSOVUb\/O6wp6burusKPL7GDKKrV+\/Ho9Bz7N9qkFZEHQE\/XRp8l4exSeHVNJnZjF\/XZlzSN3UNRTZ2Ka8YuRq0TVrpWN0TYs9RhzzuveFVmcWJDpjsQPaBnXz6N3VXlx+3sIIpqxCI87IjHBW\/\/DdLZDczekNw7oWetR8JFm8aesoqvj6UBcKXjSbs32Mz1QH\/blXoCse0odvJGyESL9jmOzACUuosh8312D5ny8ir80O4NdlhNvYHecGVmZ\/VQTGMrEmXsHDKtVOAlO+9AHpnR\/0K0A77UOjwq4dPYJ6L\/HYqOA0LDFHYOmQJgmNBx0s4DptNy+m+KN9emVshEGpeKh+NV0f8OOSVAhY5vsXvIFEXH\/wlprImx8\/my\/e3UdnlSK2TySxMbMsLEbuyFhWjjUQ5kLmCMV6NoQhqL75wWMu3nU++s3YwET2OXVZu6s6xi95ApQmL5henIgkPOe1wKBJN34V2kWbZEWncg+t9h7GLUsnvI9GPShbLzAGqkgd9Ue5vA+CXRjx4dqLbz4Q8HC1Pdzy\/Etewi6ldox3X7ZcvD64Z2B3Wsdbwq\/ONSMm6EjFYf18U\/YLp6Yltr5HLjLnYShVVZh28IiYZwu63\/lG3vR6b6s5cawltnLHFPxXcg\/W0jEIzT3UwQQPkZY2d9jIeuP8Juor5jMH58XZGo6e9Ih3c327\/BxmSaP9QqmWvVR7EFTXfA2AB5rNJ4k0PWHmBuwSAeNz0YzY6iy4TOi9EiHUK16iM2r5Nq9gbjMfLCi\/G6A4DWbPx3RaEgmbfJ2I8U9wHydMxjV1HvWaQfCInGaCfdFR1n4zqxXB5jX9MQr9ouYGeRMchrvFOpy8xxmkcrndFQ03OAP681f9g4KyHlZXeluGLgGqFhXqzn9k6wceP+Jf\/yE\/E6u42DnFJt1a9NitPYqcyn4VZFx\/aBvG3grbX2nV3qb63M1mNseivqhUx8ld2WghSJh4RE3UBfaZJeZM8v9J7T\/c+cBILGO4HY+EMcMun4MTsuxR6PFImpQiIwmPcmmVlWbkVV10eeol28g00\/1DUiHWPYealy91KLfxYSu+PxcrY9p+35hfZGWeW6ZCebfsgH4d2Yz+5LhYDR8LSQaIrX62RP19pzIHXNvsirVl\/PZtMPeXmwmR2YzOFiHNOwLBHvrX4ly54rfSv94UOmuIwNb1H52InJPbhbnYiAERL4a749v9QTlgI7yoBzXZdegbL+QOod92Cj6hmejU+yI5OIquJ6oWGukAgmKmCEBJZ9aO8v98jQClc2uQ2uxSJ8jZ2ZJCpqcY+QOJLIcLlQmw+zeVim6yfsziQgJJ678vyXRNZBhc3DMj3DNJYd6uTHoybcJDSsHqpwuVA+LTUPg2INaIbpXXaqUwNGw3cjnf2S6JqWwwZimaot7FYnPh5p+J2QOG9VwAgJvLeVDcQyVQo71kFCWwNmWhkuF+qDvWwgFqexk8rpWvyDKlFkh4ARkgvcWDGNy3ydHWz36WkNXxESXrsEjJDmXvLFYqW5gRGL8FN2sY1563CvlQO8kWoiF7yxzE1jj2cn23WA14+vRzvc28qauY4NxDJxJ+PGe+xmG\/LpuEtI1No1YIQEPNvZQCxTdzJb2dE2U12Nz9ttDCZcbTjIBmKZKpVdbbNpaiGxze4BIySw9zQbiGWqAqPn4Tp2t13GYXTMcELACGm8c5nHKLDM1PMLcTe72w5T1Tq+ZfYdSHYpHtDNMjku8yg73GIAhgmJo04KGCGBdwrYQCxTC\/ImsMutfkyS+LXTAkZIYPkuNhDLVL3PLrd+sFdxYshsOcoGYpmodBSy060di\/mREwNGSOCQygZimaoKdrqFFB1ZTg0ZRQJjF7OJWNGnsX+TievZ7dY9KrU5NWSEBN5YkzrNMirD+Pf1FAObjwD5pQwQ06+tzcA32PFW3MX48R0nB4yQwN+T9ACrF5cBc\/KA7L3ArnLj2NGunsvf6dR2nuERwwzTY+x4axbfjXR6yOSUOPvLPzoDmL7GeF\/2lqPAsUrjnU1mvbySAWLy3dgvsuOtmbp+2+khs\/Okc77oL68E3t8KrN0PlHiB2iYgGMSgzNvEADG5IG8BO94CqgaP00OmrMa+jzordgPbTxiPOp3dSIg1+xggJo982MaOt+ZO5gOnh4yQwKTl1g3EXvmo09yOIVXiZYCYrEp2vDV3MhnJEDKzN1jzqBMIwnJV9QwQs9PY47PxKXb9UIeMxF+TIWQyd8TvyzhxGfC3jcDqj4DdpwBVB853wba6egBXBkPE5Lux72XXD33ITEqGkBnIepHRGcCbuUZAbT1qHE7e1A7b6wkANQ3Afp9xVzV\/M+BigJgLmXT8jF0\/9GMyP0iGkIl1XOKQMJrV7hrbgONVxnhPRjEwI9cYB2JgDHiGaSK7fohVNuNmIRF0esh4NWBUDAdYlQp7hcm5LqDSb4Rl9l5gbgEwaQVDIQEL8hay6625mzmVDHczr602\/2XLK7UmTAJBwN9qzELlHwLSi4zZKRdP+BuqkClix1sTMnOSIWTmxrAo7e+FiQ+U9vPG+pjtJ4z1MnPyuJnTBlXFjrdma8GDyRAyWbvNf9leWx2\/MOkOGNPZJV5jIPb9rVzqb+MKchrbAgCuFhqqnB4y247FNACIcwOYlm5uNx51thw1FuBNX2Pfw8xdbuMM5HcKgJW7gcJjwNEKoMIPfLA3pVf+3seut2Yq+09OD5kjFbF92RTZf5h0dBqPOrvKjYHYOXnAuCX2DJIpWca6nhW7ga3HjM\/hTGPfHdtXmpaToiHjwS\/Y8Rao8uN2IdHp5JBRZGxBsKvceNSprjcedXJDa07s+qgTbrd2WfXAH\/M8xSk7jT2JHW8RReLvTr+bmZFr\/ss2drF915yY3a0dCBpT3wORV5qyj0uL2O0W8Z3Bl4XEOSeHzMJtzjyYajC7tdvPAw1nubEyhipmt3NsZsCVu9++x2ZOX2Osi8k\/ZDzq+FvjN8Plb419IFvIlL2TqWanW6isDJ9UJMqcGjK7yu3xqDO3wBgwLvEajzPdPYlfl1OhA7FsCtdbUncae+JSfIbdbuVjk4b7nHq4+KkzQ7dZcMJS4K11xkDs9hNA+RnjzF0rfVxr7v8XBJCbwoddjcrE\/ex06weBn3HqnqaXV8T\/UWdGrrFBcctRY8NiY5s9N1QGQ3c0vQeG61uBkzXAjjJjfcx7W4xp75TeKJmOx9nldggaDeOdGDJz8uL7qNPVA9vrvYVh5R5gUZGxDmY0d2z3V5PZ4fYKmoCTQmZJjAdY\/Xmt8Zu+\/bz9w6Sz2zhEa\/cpIwj\/ttE4ZIuhEXOls7ttpELiF0Ki2Skhs\/FwbF+43o8XdhEIArLZOPcmr9SYmn89m7u141hZ7Gy7TW3X4Q6ho9gJIbNfie0LV9NgbaCcPWcMWBedAJZ9CMxcB4zJZBAkdEzGg+nsavsOCP9yiKa4m4WEX0goikSZKnHwQik6tguJwoulY78qcVBoKBcSik\/DmVGZCJr9wu33Dd2xmbVNxoFZ+YeMFb2xnIHDik+NXYx2Vya+yG62MQCfUHU8oujIEhJnYwyPOiGxS5VYoWp4S5FwqRp+puj4nlqPu711+AKAYYP9O6a5cdjsl27dgfgHypW7td9ax0FYq2vMYmBeAVDixXp2scMW7\/kk\/kPVMFZomCcksoXEFqEhX5VYqUjMFBp+75P4z8pm3DxUf6+0dCwx++V7b8vAwyTcbu3xS9jQlq1\/8QCvrDQeOd3bjb1fxWXAIRVQtNAvOg357FwaNJcbE81+MadkmTuYqroB2Ndrt\/YrWWxq2wZJ5NrKDqFBG7EID8fyxe19sHjDWWPB3eYjxnEIb6zhGwKsDJIFhcAHJTEHSaTayQ6hQRvlwe2xfrFfXWVsFWCTWx8kPi2hkwp8JzbFaVzGDZ3NbPHL1DIuD5KsPcYxoEMQJJGKA78Ut5DZzkZP2SCJVMvZHRSfwV8P5jIEEhckmw4DB3y2DZJIx7TOYndQvO5kfs+AiE+QKHXOf2XOxdIxit1B8ZlhcuPfGB5XLKfvJ0j2ngY+TqYgiVCqxMPsDoqLiUvxmTQ3Ain4KlaMyjB2Z89YAyzaBmw7bmy29KVIkER8b3odvsDuoHg+MnmTOVDGLzUO1LqwKG1XeerckQywKtgVFN\/B33TkJkmgdKa5UZbmxtI0Nya73Hh00Xbcq+qYLCQqGR6mx2Pc7AqKd8hMdWCg1KZ5kJfmxkyXB8+NXIR7p07tf9PoQeBaoeNXQmIXgyRqyAxnV1B8B389+KWNw6QxzY3daR4sdLkx1uXB9wZ7ir6q45tCYqGQaGeo9KmzZTo+y66guBq5CF+zQZh0hR51sl3pmOpy49G0DNyZyH9vbx2+IHS8KSRaGC6hWSUNGewIirupUzEszY22IX3USUehy4O5Lg+eS0vHA6Pn4Tqr\/v2rq\/F5ITHdScenJmwRnh\/fYUdQYsZl3DiQgDBpTnPjYJobS11ujE3LwEMjl+AWu34Gp\/z4XGiQuCFFQ2YTO4ESJs2N2YN81DnqSsfyNDcmp3nwI1cGvuzUz8LbgBuEhleFRH0KBUyAdzGU2JDJwJ2hQdZogVLlcmNjmhsz09x4elQm7n9+Ia5Nxs+kTMdnU+jO5l12ASV+ADgD3x7hxrbQ+ExLmgd7XG4scLnhGunG98dl4qZU\/Fy8DbhBSLwmJBqTdAuBT2nEjewAIospjbhRaJgiJLQkCplzFX58m1eXyE6PUWX4pJB4Tug46fCA6VE1PMkrSmRTAIapEj8Pvdsq6LCA6RYSz\/IqEjmET8ddisTM0Mv2bL+qV9HwU141IgdSVVyvaHha1bAxdLdgt31J+ytqcQ+vFFEy3N1ouFXoGC0kPhISAYsDplmVmFQMXMMrQ5SEhMRtQsPvhcT6Id6Y2SQk3q6pse9KayKKM68X1wkdD4bW3mwTEm1xDpbzQmKrquM3tbX4ND9xohQH4OqKWtyjanhKkZipSKwVEodNLv7rFBJC6MgTOt4QGh7jUQ1EZFqZjs9W1+Mf1Xrc7fPjgQul1uNuIXEbPyEiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiKT\/h+KddUiiEEpOQAAAABJRU5ErkJggg==", + "image": "data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAARkAAADxCAYAAAD\/cMNMAAAABGdBTUEAALGPC\/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAUGVYSWZNTQAqAAAACAACARIAAwAAAAEAAQAAh2kABAAAAAEAAAAmAAAAAAADoAEAAwAAAAEAAQAAoAIABAAAAAEAAAEZoAMABAAAAAEAAADxAAAAAL3Yg78AAAIyaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA2LjAuMCI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4yNTE8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI4MTwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgolpJBIAAAn9ElEQVR4Ae2dCZgc1Xmu\/+rZtY22WSSEZkYamd0GG+EFx4AFwU5M4iWWMU5sTBJzDYYb23GexImfKMmNb+ybS+IQsCEY3yfE3At4v8ZmkZGNHTAGIaPRBtJohAZJs2gbbSPN0iff3zMt9fR0VVd3V3XX8h09pa6p7Zx6T9VX5\/znP+eIMJAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZBAEAlYQUxUJdL02mtmwakauSRh5MJkQtrFyFLAmY3fuZYllhE5iXQdx9IvlvRi+8tVSXlhaatssywrWYk0M04SCAOB2IpMSlSq5dqEyNXGkncis9qKzLCjEJwXcY3nIEY\/7GiS\/6ToFEmSp0WSQKxExhiT6OmX90AQPo4b\/y3kaK0PudqPUs\/3cP3vHGyWdZda1qgPcfCSJBAaArERme5+837c7BrkzEVlzJ19EJx7axJy79Ima28Z42VUJBAYApEXmR19pjlhyb0g\/rsVpK6lme\/BlnPnsmbr5xVMB6MmgbITiLTIQGAuhMA8CaqtZSdrH+HTiaSsaV9krbM\/hHuCSqDnkJmLZ2rKezMyKCdWrLBOBTXNlU7XFFiVToyX8Xf3mYtgiH0K11zo5XU9vNbPk0bWdLZamkaGChPo6TH1MlPOlaScq62LaC88C1KyFNXdJXhJ5iN5cycXu5SOYccQju3DOb04d4+2QOLvjVUJ6YpzdTmSItPbaxpG62Q9Mvk8uyciQNsfS4zLZ9oXW1sDlKZIJ0VbFkdrZaUxshI3+iYsF2DpwFKFxdNw5FRSXjkwKv3Hx4aGRs3usTHZePBE8j\/2nZrz5COrrXFPIwvoxSIpMjv7zZfB+3MBZZ4rWWMQxK\/VjsmaJUusA7kO4LbiCfTsM+3JKrkKzk5X4SqXY1lW\/NXcnTkybuT\/bz8hz+09KckcXlQNVdbo4jnVjx89lbzta++bt8vdVcN5VOREpvugaUSjcS+yY3YIs+Qgqnh\/c6BJvsqm7+Jzb9ugmV1r5FpUed496QPVXvzVCj8TJSS5d8MR2X4wv\/dCbbVlVrbW\/fi9F828Yfl8a6jw2IJ\/RuREZueAuRWlgn8NPnqHFBrZZhLy2eXN1o8cjuKuDAK7+kwHmF2HF\/w92HwFFj98oDJitF\/V6pGKTCHhzWfVn\/y9c2d+flmL\/AucOSNVjaouBEQojjWpBywUSbVNpCXnomj\/KKp9j+Ol+dzyVqvL9tgY79h+wCxJjMlqlP6uhxF9JT4ugQjHRqfXj9AiJbVVlpwcy53I5\/acrG+akbjDshqu37XX3BglG130SjJ9Zjcs+2cH4mnzJhH6xD4Ii+Rft7VYO725ZHiv0jNgWvGafgCC8iHchdpX0DMkWEGF5CvPD8ng8XFRcbmirUGuxDKzxpKDJ5Oyoe+U\/OzVYTkxOlVwanDw598+V2bXJo7iI\/MHHa3W94N1Z8WlJnoi02+0Ihy9EprIKDLrPishf9feZO0rLrvDeZY6VKK08gF8PD6Il+8duAvPW4G8JqOG302DI3LW7GppmTk9uSpAd68\/IkdHppZ6fud1M+UdS+s1OUnYk\/4IVeZveJ22cl8vUiKzzpjqtgHJb20rN2Vv4zuB798DaLG4c8Uia7O3lw7O1VBVbMHD+V6kaDXu9wr8Tn9Tg5PcolLyZM+wPN59Ysq5l7TWyUcunJXeloSwXg8v8UfSG8L4G6kv\/pIdeBDnhDEbCkrzDLx8N8PB6xN4EZ\/CC\/iNhnH57uLF1tSntaBLVv7g1AdiUN6KlLwLdqh34fcS3FukPoLZlLX6lB2S2jR1JiRQLby\/Z7\/p6lhobTuzOVxrkRIZde3GizeILGgKVzYUlVp9Qlfhv1Unq+QoOoB+G1WJ79YnZW0YBEd7xHf3y\/mwhV6O1+oaGZCrcT+NSmL6q6dboxVgqJb1+6b3RGidNe2VnGXG5V7wugKtTlMUKCxEIpefO\/vM83hKLw1LBviQzmHc\/1pc90l8BZ\/uaJauIIxvg5agOWgJugxW2rfhTdESiy4pUfGBQaAvOQTj7yPbjsu2\/SNT0qlG4s+9da40zZheM8Su93W0WN+bckJI\/oicyPT0m2\/iIb4hJPzLkczD+P49Ax+SXyOyl\/Cid\/Usku1XWZb2tfE8qCMczJYrYDO6APlwoY40CAOmuu23eR5ZiC44hqLLlsFR2dB\/Srbid2xqtSh1J2rwVcOvTVi7rMW6xmZfoDdHTmRQkvljfMl1aAcGewIjyPjepCW7IUC7IQa7IAaH0TFwCKUf9To9AlE6lHk6JCmBf41o5ZmHToRzcM4ccG7EdRbhGkuw3oZtS3BOLEsnmawy17Va9NNdw\/Kz3cNyPKvJOvO4C5tq5aMXzZaEfYN80qqVBR3zrMOZ54VhfVoFMAyJdkojXpR1eGEYnAnA616WQxyW62H6pUFpIzWQcfq0aaMWpx9+ZavHpg+cPDfjT65OEhiFwty34ah0H7Jv8IRNSlZ1NMjVHTNSPjUO8BLoLqNVzB87HBPIXZETmc5maweMvz2g3RFI4kxUbAj8v83HbAVGHe\/etKguJTDz6tMK7owGNaxQOplGTmRS2WTJgyj2\/6VzlnEvCfhHoOfwmLzUP9Wwq7G1zqqSy8+ul0ta6qS+OrM86CItRma4OCpwh0RSZFD0\/3dUBSgygXvc4pOgn\/RMd1tSw+51K2YK7FpFhZTNrKgzK3uSu3JaZdNYcOzLm6xXcNKzBZ\/IE0jAAwKn0HfplSw7zLJ5NXIdWo6KFRhNFoZtDeXAZpEUmcnn5KsePC+8BAkUTCDV0Tqr8eEqdJAssgCTjv\/42FHZkP4jTL+RFRk4oT2ITO0OU2YwrdEgoN0Frr9glixomHCq01LMuQtqSr25b4V1sPISxbVUbv6eD1f7W3CDd\/kbC69OAvYEtDe2jiNTYkAnDLkMZoAXSrxORU6PbElGaSZOyP346asIWUZKAiDggcCoU9LDYRUYfQhKltigP0kYjvNTaM6+M+jpZPrCT+AQ+iSt3XlCDgwn5ezGalnV3lB4M\/V0DIMwFr++o9kK7ccy8iLzgjE18\/tlI+T03On5xy0k4A2BYxh86n89e3hK14Glc6rlU5c2OnUVyBe5ugr\/NvosPZnvwCDvj3R1ScHrqP8w9IdpepQgPy9Mmw2BX+05NUVg9LDdR8Zk52HViaKCtk\/dFHaB0TuPpDNedpZiIO4foqvBE9j+m9n7+DcJDMMx9+BxkUPHsOD3MJYRzBcwDx2i39SBHp8u\/GxzDR6uZI85dIp0ID+CLgQfx3P7oMMxodkVC5HR3EBftc+iu8h6rFZsqozQPBURTKgKiQpIWkRSggKnXP37lENhY\/NrGDfkbSIL8szidd7CWnl698kp5NTo2zG34FesH053H47SXOmRt8lk5jpKM3+Lv7+QuY3r0SFwEkIyBOE4PLmk1iEi+4+KHJ8+CJ3rG1\/RisGGV+Y\/fB2GdHgMY\/ai1Voa4CvzofNniQ7hUEB4DMfeiCpSfwHnBP7QWInM9u2mLjFHXsRNnx\/4nGECcxJQITmkIgLx0CrO4YwqzrBDiSTnxVxurIbl8k9+C02xLt6WYVSPhjD\/dRNmKCjAPUZnn\/hzOJA+ENYhNp1QusDmdHr49nUPmLej8+TPkPLIG73DlzsTKdbqi4pIdokkXUqpxH3dfDVG6WrwPGZIpnxlvFr+x4oFVmFTTnqeFP8uWHCF0b+klOfKmMfmF6g2fQ2x3VKeGBlLLgJjmG5oCEKiVRkVk3TVppJCkiud6W1qu\/FYZNZitIBb8DxuT8cR1d\/YiYxmpKmRz2OUsfdhdVGQM7YaXV8a0OWlBrmkixY7dbBpHdJxFK0fIxildxi2Bn1hgxjGkS4tkeQSEhUTbaMNS1CRaVvoSWqPIQs\/194s90SxapSLUCxFZvl8a6i7z3wWdexANhHOrMNXE82m9Q596k6X3NHqkbJT4CU46ZNNIteDk96mQnIUjSoHUCJRMckskYRNSNL3lOtXW6NKDka2wSj8e1GelC8XI\/04xjag2vQkbv7qoADAhG3SjGG4ncTFKa1Hh\/Gy42XIMRC+02l598VFSJxALG8Ref9lTkfk2WfJQ\/VjclMY5sTKcycF745lSSZNCdWOT6P68RL+rrgRuAZVo0XzMBdrCSmZjeKNVrH6MZ59IVURbXJNlURgehzEoiKn1YN0K84xlFTiHtRuVGwA3i8ta5K\/iEv1KJtTrEWms9XahOEgvo\/inNpnKhbUztIytzSBSSe+AW4Z8zGVspZocgUVDN2nVRsVo\/1YPwBhSdt1avFEqK0nKkGrnk2YurgZSxNKiU2oXuo9qmh07RbZusfdnaptSW1hmlcFhj9d3mL97wLPidThsRYZzUmM0\/H3mP6joiKj9hctyXgV9HoqJGkR6R+CmEBIBrCo56tTCKPAzJgUkrSYaJUzJSoQFhUZu3Dl+RMi8\/V1IifyOOulq4yNp41hdlc9sx2uEp\/uaLX++cyWeK4VrssR5IThINahfnFlpW7t7AUT1Ry7+NWgq74j+qBr0C+xvlhOX9WfbBL59nMTx7v9Xx8GfKwDH+pQnbv8HJHXLxVZjCrmLExZWUroGRC549EzfO2u9cG3iLQ32e3N2m7J3y9rtv4qa2ss\/4x9SUZzHV+c\/4uX68pKPAFqg1E7Sq4whmZqLX2k+9ZoK5KWUPpQMlEj7zvOwwxtMEjmCq8ronE+DALTimrlJ6+ZqALluu9itsHTNiVaT291PlurTOJOZP6jo4ndV9I0KTIgkaiTR8ZPpQa2KqijSRpiKb92L7bW\/3\/xssirgxP2kz7YT7L732jnvb9bDV+aHKnWqkPUghqkP3XthM3J63u7rFMkn8hoNwYX4aX6cbk5rkbeXHzwHWVom2sdQj3h2UqQOAIDpC7Z4fGXRB5Gip7bgdHQ+6cLjB6vdoQdNuOlldJKlZ2WoPy96iJ\/BEbvbymqrE7VTz0mVZLRFftwBIXS98exmdoeSUzGk3ECcHqfJc9j\/YrTf3u8olUebdHRJVXlQclEq0KjaMnR1iCtApw1fyLSvYdEntjoLgHq+ZsrqCNc1MIl7f7dkVZZ52mrHPLHLmizvmMw8pm2Vmun4zEx3Mnq0mSmwy6zXiedLzUkYZzVhzElJnhg1X6iD66Tn8VB2Fm++F0YMSEyWiXQKlK6SdkpPZpcO1f33gNOZ4Zz30I0P\/sZtEXKSWS0r5VDM\/baZa3W1\/1MX1ivTZE5k3M9Z1bdreXyOdGm4nQrkLurTByltpk9Bws5Q+SNHfaDKW3YVdi1wnC0lga1Zc2voHYsJ78ZdVo8AoP7XLgIZIVxeFl\/Jmsb\/5wk4GOWhYsxZv07Zjf+R7qqo96wqQUlE\/2tpE+JjtS2+q25GeuL8NKu3PvCvFWrmerV7FfQkky+oHaZHCJzP4bK7Mp3blz3U2Qmcx4gjmtpQqsu\/ZNioqUSFRN9aYMUdMiB299l\/8L9aMNEL+0gpdmLtKgNy7WfShERummR046SWWk4lkjIXxcRXWxOochMZvWveuWil3eL7INBNshBv+S3v9veT+SVfWj63hbkOyg+bSr4fgY3IpPdwoQP0x3tTRaoM9gRoMiAzJo1pvqZLXJPJas\/dhmUuV09XW9DCUa9XHMFLXHdv27COJlrf9i3DcKI7mdYiOqSNmOrcdcuHJzaajdak5B77I7l9gkC9JMBh77FsgoCsyjoD8WH3yayZH7uVKpA3rs2eFW73KktbqtWl\/wMOpavNmM7hSnN2JZ8Z2mTtdfpeO6DcBNC6us1N+gc2ppEVnbmTqW2Zt0DgdmJPjhRDn6LjLLLZ\/xNDcQF3pPh7vQKf+0JUGTAZs5sgftbsMO1r7efuPyRXzo3vQb7ztynTj2cs7tWuD\/b3ZH57DLqBzWE4TJQo9qCDpBPu7tqvI+iyCD\/P3iZvMEDPzzfniS0Xsj5S3Jf\/oXu\/H1ucp8Zzq1+G391mIh8QVuY4Lz5zXzHcf8EgdiLjDEmgXr4x\/30vyj1YdMivJ0T2hMx884Y8Nn4m6+6pHmpdhkI\/49Lzde4nB97kdk5KDei7HtevmJyJR8Iu4GXtBWkUC\/hSt6HF3H7XZKxY52ZdnQ9OA4b2a8zt3HdnkCsRab7oGlEsfeLikebL8MWdHwZrwcNDzoDv42\/+UYOVD7oj3aQQzm4f1JiLTKYe+kuoGpRXM0+d75znyXTj7QzdtZjHJl8wxNMv1q4t\/gtMtv78vOBVzj9y\/JjOn1EbEUG09XeBAofSZMIcnVJX6xcjoIqMDoMZ5yCjlvs5CxXCgsVczfe0siLpk\/cgykCGVwRiKXI9PSZN6OadGcmofkzvZktIPOaXq1rs6l2F8gO2qSbHpoze19U\/9bxjnUQL6+Djsuj3tJ2pcas+Kox\/kxb1jb+aUMgdiLz6j5zPsaN+RF4TOmwb4HEgjzenjYMy7L5O7+aGOxKI9MXQkfEu\/vJaHaEzAf00Re9s0XBdi7b4LP75R8U7Gtk4xqZL\/Xx2x+ruuXOQXMOBoN6ArWMnM75WmXyu85f7COmY\/x+4aGJqVPU2OtmUKti4wr6eVqqexgOiKsxewCmGnYVlFe6V73msbZSaXP4awdFipm8Dh+qFYj4MVeRx\/yg2IjM9n3mAknKT\/BMpgy9ufI9DC1MdsNt5rqfKG\/72RaR3v0i77pY5JzFE+KrQqIj26UF5LSYQFDUgc5TW04yJTJRRuzZvcVCZDDn9TUghnKA2PRfnuCpswsyhIeA9tW6+4mJ0ozO2DAMG5VWf8oSLGF1ySXoyNtkevrNJ8DiUSyOAqO8wlCS0erBorkiOiGcDv3AMGGfUSN42QRmArpWlxhcEHBZo3VxpYAdss6Y6rZ+uUMsua2QpP0ratnDaMEIYuhsFfmD3zgzYJU2az+JbgU6El7cnPICkD9j4+My496b4W3F4EggkiWZHX2meemgPFGowCipoPrL6MyJOrFZZvq0P9NvXyLy3pWOecyd\/hCotmql3Z9LR+uqkROZ7n5zNZzUXoIfzFXFZFVQq0xXX2TfSXLVhf5NelYMw9icM0bjr5u8jozIaPUIArMG9b\/HceOoWBQXMksKxV3Bn7N0hkO7oJ6\/K4q+Y7urcns+AsBO428+SNgfidal7r1mqTUgD+J+Lndxz46HBFVk1NPVKbj1F3G6BvcVRgDiTuOvC2ShL8l095kbrCp5CfdassAoL52lMIgv7Mbd9rmprSp+uNrbx8g9SmDSIY8w8hAIrcjoMA3wf3kAgvBN3CPMot6EGsyJ3Dilw4E31y31Kup8thvOZ7mC7vN7nJVc8cZ+m2F1yc0zEEqRUeMuGg434QZ\/381NFnpMEJ3y1NP3KxiLTQUlXXXSKVB+8ILIt+Biz1ARAu0ffNjADZDBiQBsV+EJPT2m3jTIlyabpn1L+3++LPLMK8HlooZeHUtGHdAYKksgkZRz7vqEFeCnpbJ8NPbQlGR27TXnmRnySwjM7Ui3bwKjUIJYktF0pYP2waHApGlU9jeZoPE3Xw6EQmRge\/loskpQMZA35LshL\/YH1VfGi3vjNbwlgK8dm7HzIA10E3bPITPXnEpNA7o6z314unsuBrBSAzB7PHuKNZIXYwtT\/mwNbEkGo9e9JTkC464lZRUYRaY2jwXskZ3\/6eER2iuTvjJ5noNAiszOPvOH+EL8FO\/6WXnS79tuVpl8Qxu1C7O6lCdHAyUyk10D\/gGll\/uQ7ooOkR3k2Qvy5Cl3l5dAG5uxnYEHxibz8l6zsHZAHkLDyTudk1yevSzJlIdzBGKpWnhUOnAfcHxgyEUgECWZXX2mA4bWZ4MiMArKzXSluYByW\/wImHHaZZxyveIio2PvjlvycyQyUHVbHc7RzZSlTnC5Lx4EMC82jb8OWV1RkdHZA6oSqcG9K2bgdWCT6izptJ\/7SEAJYPzyQH0gg5YrFROZHQOmE7mzDkBsZw+oNKygDvtQaS6MfyoBvEQsyUxFMuWviohMb6+ZnzCC7n6yaEpqAvYHRSZgGRLQ5MCWSJFxyJuyi4w2U4\/WysNIU+CLmEHvw+SQr9xVXgJLb\/sXU1GXi\/LebmGxlV1k2gZlDZK4qrBkVuboBZhRUr1\/GUggD4HEqbpUM3aew+K5u6wis2vAXAI37D8LC+pq0NF+TAwkkI9AdRWrTHaMyiYyxpgEhij4P0hIjV1igriddpkg5krw0sSOkvZ5UjaR6RmQG5CM19snJZh7dMxfBhLIS4BDcdoiKovIqLEXKfgb21QEeAdLMgHOnCAljb2xbXOjLCLTMSjXIAXLbFMR4B0UmQBnTpCSxulRbHOjLCKDMbA\/apuCgO\/QmQt0OlgGEshD4Owbv2Hq8xwTy92+vz5aVcLEa9eFla62YKtdZu+hsN5BYelGNw9paRRZPB+D+cwTGcMX4tENhV0jpkcn6kyqtI75JBgyCfguMkv3y8WIMNQNwVEVmRlwH1uEGauWLpz4XQRR0XUdejQdjmNGBIpMmobzL7zYO3EERSYLk+8ig4nv35wVZ+j+DLtdRv19mlA60fm0VUhUWNqaROY05M8K7YmuVcahE\/mPjfsRJklfmVzPgO8iA+e7tlwRh2lbmERGBSG7ZNIKgSll6t3FECaKTP4nlnNj52bku8igJLMAjkqhDkEcJS9d1UmXTFRYzkZJxQ8j9Vmwz2zdE+osLEviOeRDbsy+iwwEBj2Awh0a4KM8G+0GR0+W\/z7UENucVdVRQSnnfN0qMgz5CeBbuiL\/UfE7wneRQUnmaNhLMvpYaJXJb5HJVdXRlp5Kd9LU6hKDKwJLPv2wafin1RZmKWdIE\/BdZDDzwOF0ZGH+1SrTzgFv7kCNqVo60JdXf3VRY2wdSkxBDK1Im4USFQybDM4EEiOHU83Ym50Pi9de\/0VGpC8KSIsZW0ZbdfQFTfucpIQFgjIXxtkgh3GISR8+DeobtOegyGtYdIxJBhcErFQzNkUmA5XvIoNRwzZkxBfa1UKNv3\/8TvQGRbua2lSCHA4dnxCStKDorwqMCg1D4QTYG3s6M99FpqpOXhg\/hYZslLinRx+eLTptbRXuYFzvxEXQw4IkMCdHRQaGRPZBQHbvx6+WUrAcpfXARW66P4QiM52V7yLTNtc6tLPfvIKoz5kefXi2qMDMmyWy\/6i7NGuJ4I0d7o718iiM2SMHj02IyO4DE78qLFo6MS4F0sv0xPBanTG8Z8db9l1kJmP\/IX5DLTJ6H1plcisyKTvG5M379XMCLv+nSyYQES2d9EJYRsb8ipHXzUuAQz5MQ1QekbHk+6gwfXZa7CHboPNjb3OZ5r1qLPUojME+MnjkTDUnLSz0wvUIsLeXYTN2Fs+yiExHkzzT0y+9sMqcnRV\/qP4spHvBAVSr1A5SX2CztApHymYyWTLRKk8\/1rUaFLSgRjatQioXndY3\/duI7rDP7xB5Kp5tLNbwEVkONJuCll+VSk9ZRMayrPGefvN1vCdrKnWjXsRbSAuTaoLaZZY15455eGRiv1Zx0iUTrWKdgjAFKaiQ6GDqKQFpPCMk+rcumT22M9PdBq\/kLXsmbEGZ22OxPjGAFUVmMrPLIjIaF1pa\/g3F\/s9jFbNMhzPMRq9ldZhzKwRaZdIuAH0QEm3JSTcTq+9JEKs6uXprawvZ+UuKy68l6EulBue4BQz5sCJu9+x0v2UTmaVN1t7ufnM\/voz\/zSlBQd6nX3UdW0ZFwk341nMiDz0bTJ+TXF0YcvXW1mqaVt9ULAsNWoWKY4AJrTOO9213z2UTGU2AGZMvWtVyI1ZDO0yhVhHcikwQWnlK7a2t\/aZUWLVZfD7sL4UEZRXHAGQsyWRkfFlFpvMsqxe2mX8Is20mqC+OVmu0t7b2gUqNcIeqiv6qQJQaVKhOwIZUqCE7riUZPN8syWQ8dGUVGY33xH75n\/ULZTXU\/vyMdIRmtZg+TF7fnFZ1TosJqjG6rp0tMYuhb0HF6tVBVJua3LtuzwptebU0jHi2z\/rTfzcz\/\/GjFjptMJRdZC64wBrZ0Wc+hJHafgn8oRv7V0syeIhS\/ST8fnwaYCLX+FRE1CaiJRMdmEp7cVci6JCd2\/ehLrAof+zauvYLt05F+S8XtiOsk+Op3thdYUu4H+ktu8joTXS2WptgBL4ZL+sD+FPf2dAEHXlOx8Yd8rDPj1Z1Ur21ISKZQ0DMC6AEd0JgtESjgqNBDcOHYK8ZgLOg9o1Sp0FdV7uVdr6Ma0iOpewyFBk8ABURGX3wlrdY3+zuM80o0dwRtgdR\/WWKFZlcVR0todj5mwSFTWYXhj6IyRN4fdTHZz8ERT2SGaYSYEfJMzwqJjKahOWt1j9BaHSQ63\/EnwEfFOEMNLXLdPef+TvfmlZx3rsSX39UedSIGuSgLWJpf570r5ZKdGoUhoIIdBZ0dIQPrqjIKFcVml39Zhc+ht\/An2gfCX5YWGAqb7j8TPUiKHen1RwthaiAZDoKagdQ9tb2JJcKbPD3JM5AXqTiIqNU2lus7\/bsMxtMFYTGyJWBJJWRqEKbsf1s9clIlu3qMQyAflpMVFSwaCllFLNDMvhDAKXz7f5cOXxXDYTIKLaORdYu\/FwFg\/AH8Pu3sAb73cQNy4JoT6Ej+KifRF3ttCk3ackRDIB+5hW0pBF\/J\/CFnwkzde38mVJfVSWLxsfdGa31hVaDrt9BR7NTo2tmf6iU3QSlE4byEUDjwIlRI3eXL8ZgxxQYkUljgkH428aY7+walGvxznwML\/d7sK+Qomcfjt8BkdqNUtFuCEYv+pLsSSbkQCIh+8dG5UBnqxxAp82SzJWfvM9sQDwXp9Pt9Ksi43XI7q2tnSy1rxSNsF6Tdn+9GrxNnegQe9kKWfuWFZY+hwwgEDiR0VyBAKBwIY\/psnmzqa1bKJdWGVmJjctRdmjF9kYIyCiKpEegFLtx9A6IydaaOtmiI\/Fhv\/\/ByEakxZXIaPWk2JCrt7ZeT71vGcpPQEdI1I6y2kqorYwL8PnTXur6dyO245lUJyof3SLLf8+lxhhIkcm8KXXew9\/PTC6Zuyq6joepS5XQTXAjMloCSc0QAAFRQ2zabnI4xr4mbtj6cYwrIXGKGFVqp91x2xd4kQlqhiST0qVzEbkJ6pT2Ys+ZMX+1s+Hp5mEIilZz+mEh4gwBbmh6c0ymkGhJRAeK164TU0okxUcVcEeF4m+smDMpMsVQwzloMepyO3OBRnHfUxO9mLX6owuD\/wSchES9tn2cmZOV2Yzs1RokQ5EEYPwdwKlNRZ7O0zwgAGO+zEFHTC2BpG0jWiLRkonPQuKU+h8sa7F+1+mAOO1jSaa03N6E068q7RI8Ox+BgAqJU7LpNJBBhyKTAaPQ1ZTx11BkCuWW6\/hcQqLT+WqpRAcr97Fqkys5JW1DgwBGN2ZIE6DIpEkU8QvnvK4iTovtKU5CAgdHcWtIDzpAfHx6g57GcqaPIlMCbXyxNtKoNRWgCkVjlo1ESyS6LIBfiQ5WHvUAvy12KcjIZIpMBoxCV2fVyubjI6KewzF4dTLoQFm15UbnlFLx0GE\/l7Wg9QylkZSxNV40MsBMrMLn6cVpG2O8gR\/iEjMfLUz61eos8TKBPb0ebmXq1aqDaumv2khasB6HEkmRmfIqWpbaizw3kqexJFNitqJo3IUBiqIgMuq9g3kfZT2Wzfj6bLl4mey85kJ5D2xPt2DbUiwM+QhYsjbfIXHbT5EpPcc34hLvK\/0yZb3CPvS7Wo8+NpthpNxijcv6pr2ydc2anJ1GN79gzB3zB3GPRm5DKt9e1pSGL7LHw5dkf1NMkSmRL3p3d6W6c5Z4HZ9OR6cF2QJB2Yw06u\/6GTWyodBR9C+1LPVgfViXngFzMUo2n8T672OBRYYhg8AxjBfy44y\/uQoCFJkSH4OqcemC0FQ6qAiobei0mJiEbP7qTdZOrxPW0Wz9Gte8efs+81cYU+dPULr5FP5GuxEDhPyRC1os9ExjyCRAw28mjSLW16wxif4lgqGiyja9y75UNSeBkgnsJyYpm6uHZdOdt1sVGYW3t9fMH62F2IjcjgXtTPENEPaVy5usF+JLIPedU2Rycylo6y33mefhM3NpQSflP1hH7lND7BZk0notmSSqZMNdH7MO5D+1\/EdsGzSz62AgRlXqzxB7GcYBLP895onxMbQqvTvPMbHczeqSB9kOgfkpLlOsyGhVZ+tkK1UX7CYbYYzddPdNVqi8Rs9tsrS\/zpe2HzBfrRqFgdiST+PvBVjiEJL4CHwhDjdazD2yJFMMtaxzPnm\/WQaXPC0mz8valf1nL4DrYFfaHWEjbBpdIyOy7d6bU4bV7GND\/ffmATMLVuFbY1KyuQulGLVNMeQgQJHJAaWYTbfeb96IQae+DKBvwfk6xPgmLZ1gXbsebMLkbRv\/+ePW4WKuHeZzULKZUzUm\/x33oCWbfCIcultF3nYna+RNy+dbQ6FLfJkSTJEpE+i4R9N90DRiINVbIb5qIEYnhEiEk+j0eXl7k8VuBA7ZSZFxgMNd3hPQgeEbFsr1EJs\/RyvZed7HULYrjqOk+pGOVuuhssUY0ogoMiHNuLAnG9PeJHYNyO\/APnUr7mUVljA9i2NI702wwzwQ9nwoR\/rDlLHl4ME4KkBgx4DpRKngj\/Aw\/iGiX1iBJBQS5TEYsz+M6ZV\/WMhJcT6WIhPn3A\/Yvff0mPpkg7wfDtQfQafT30TyguViYcnziTH5WPtia2vA0AU6ORSZQGdPfBO3o880w6j6IdhtPgwKb8ZSyc4bQ3hRvrirWe64yrK0qsRQAAGKTAGweGhlCOzsNy0Qm+tgtbkOKbgaS7k6ZqrLwb\/VjsqXliwJpqd1ZXKksFgpMoXx4tEVJrB9u6mrapTLIDpXIilXYFG\/JIzJ51nQPmBPw+v6wboxeXjxYuuEZ1eO6YUoMjHN+KjcNlqpql7dJ6+DW\/8bMB\/6xbivc\/BQt+O3DUs+5z8dqGsPSkib8ftreG0\/P5yQpy5oZk9q8PAsUGQ8Q8kLBY2Adm2Yk5BGGFFmY7bP06UdjE983IzLITRB9wctzUwPCZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACbgm8F9xXHZnxUOAVgAAAABJRU5ErkJggg==", "label": "Image", "value": null, "variant": "primary", @@ -130,7 +130,7 @@ "config": { "icon": "fas fa-pencil-ruler", "label": null, - "content": "

No screen assigned<\/h2>\n

This is a placeholder screen. Please assign a screen to this task.<\/p>", + "content": "

No screen assigned<\/h2>\n

This is a placeholder screen. Please assign a screen to this task.<\/p>", "interactive": true, "renderVarHtml": false }, @@ -216,7 +216,7 @@ "computed": [], "custom_css": "[selector='illustration'] {\n display: flex;\n justify-content: center;\n align-items: center;\n}", "created_at": "2023-07-17T13:58:31-06:00", - "updated_at": "2023-07-17T14:01:48-06:00", + "updated_at": "2023-07-18T12:26:07-06:00", "status": "ACTIVE", "key": "default-display-screen", "watchers": [], diff --git a/database/processes/screens/default-form-screen.json b/database/processes/screens/default-form-screen.json index 7d910aae80..1eb8082313 100644 --- a/database/processes/screens/default-form-screen.json +++ b/database/processes/screens/default-form-screen.json @@ -19,7 +19,7 @@ "icon": "fas fa-image", "name": "default-screens-illustration", "event": "submit", - "image": "data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAARkAAAEZCAYAAACjEFEXAAAABmJLR0QA\/wD\/AP+gvaeTAAAaMklEQVR42u3de3hU5Z0HcIta7c1L3WrrbvexPrbVqs+2tbvbZ7f2eXYfW+1F21qprla33bZKhjsiKFYLiBWEtgJqgcwk3AMxhEtCuIQQEJBwCfcQcOa8JzeS857JnSSQy8x3\/zgDBDKZOZPM5Jwz8\/08z+\/p87Q14Jz5fXPOeztXXUVERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERERENlZTg1sUiYdUDeMUHe8oErlColBoOKBKHBQSu4XEFiGxVOh4U0g8V1mHbwAYxk+PiMKHioanVQ0ZQqJCSGCA1So07FAkZgkdDzJ0iFIYgGFCw2OKxFoh0TmIYIlUmiKxQEj88CBwLT91ohShSDwuJI4lKFj6q1pFYmqVH7fzChAlKZ+GW4XEuiEOlyurS0hkCx0P8ooQJVfA3Cck6iwOmCtrZ0Ud\/otXx5nUJtxU2Yybe5fXi+v4yaTi45GG+4WE32YB07s+9Gn4b14pm4SHiutVHd9UNTyl6HhZaJgvJNYrEqVCQhUSTVGuZ7eQqFclTgiJTUKHW0i8pEo8zMflJFRdjU8JHSdtHDC9a1NFLe7hVRs6NTW4RdXxiJB4LfQo7RUSPYm4vkeqAsg+fB7zd7c1zyg+e2xq4dnlY9a3PDI8G1fzSjiYkHjbIQFz6beghvk1NbiFVy8Bdyl1uEPR8VshsVRIKENxTU\/VBjF7ZxueyKrH4yv61jOrGrpeKmjJG7G26Q5eIac9JjXiRiHR6rCQuVANqo4xnPoenFN+fE7oeELV4Ak96gzpdVQ0YPKmlrDhcmU9tboh+JedbRuVRtzIK+eUuxgdIx0aMJdKQ7mi48e8muZVaPiKqmOMkNiawDVQpmrzyS5TAdO7Zu1oO6doGA\/wMcoJj0rZjg+ZS7VZ0XA\/r2p43gb8kyIxQejYb6frlnP0fJ8QeWJlPZ5e3RAxaDL2d0BI7OMYnd1DRkNVEoUMhERASCyrlLiTV\/eqq1QdXwzdrX4Y+mxsd81OngnihXVNF8Nl\/p52HK8JQkjgYGUA6fs68OvsvoHzZFYDjlYHICRaVQ0\/49W2751Md5KFzMUFfarE+xV+fCnVrqlPw62KRJqiY3uiZoESMfCbc\/Q89oqesP\/7PtGD\/\/2gsU\/QLD5w7uIvF0XHb9nRNlMMXJOkAdO72hWJBd463JvkvyxuUyVeUCWKnBIssdbCko4+IfNG0dnL72J1DGdn2+kZ3YvrUiBkLlRQSGxTJJ6prcWnk+IXhI4HhY43Qwvggsl+DZeXnusTMtO2tV75\/zur1uNudre9fgPqKRQ0F4+bUCQyhYbHnBI4AIb5NNynSrwgJHKERHMqXTOfBozPb+4TMgtLOsKuDgfwCXa3fQZ+D6RgyPSuDqFjg9AxWkj8i13Ot\/E24AZF4iFV4nUhsSnVQqV3Ha4MYMqW1rAzUPvU8GM4qsTP2d12mX2QWJHiIXNlNakaNgodbwodv6qoxT3FwDWJ+vxP+fG5Cj++LSSeVSRmqRo2DvJQsKSoj+uCWHesE38qbMWvVoafyn5nV1ukn1HI7rbPncwfGCxRq1OV8IVmaxYrElNDx47+VpF4XJF4yOfHA71LqcO\/KhIPCR3DhYbfKRrGKxJThcRCVcPG0MbAZn62fR+L3CUdeDY78hqZ17e2wlcXeSmD2oSb2OF2mO7UcRe\/3Cw71Om6IF4qiLy9YPjKeizY2w6fFv3nVej4ETvcPoO\/gl9yltU1bVtrv+HyZFYD3t7RhtLKgOmfp0o8z+62S8jomMEvOcvKKjrdHTZcXOubsOLQOZw8E4z5Z6oaxrG7bULx42v8orOsrCmbW8IO7CrawH8mVwDb75HpI37ZWVZU+Zlgn3NkJha0QBnkz1U1fJedba+QeZZfeJYVdbwmiCdWXh4yG8u6Bvtz23iWsM0AuFqV8PFLz7LquIc\/5DZduovRBv0zF7Or7Tg2I+HiF55l9W7seOxTU\/z4Djvajqt\/VVxvw1eisFixlY5V7GZ7T2eP4heVNRRVWhnArOKzmFTQgvl72gc0TR2mdFXHF9nJNnYQuFZoKGcTsBJZx6oDfbYOjMtrjrZVwMybR3\/ALnbC2IyGn7IRWIksd5gDqB5fUY+t5QOeVQoKiV+ze501pb2FzcAKV2XVwK5TwIaDwJKdwNwCYHYe4N4OHFbN\/Yx3drWFDZncY50D2sCqaHiaXeswofdid7KpUjdIdp8C8kqBZR8C8wqAaTnAuCVAmrv\/Gr8UOOCL\/vO3lPd9DcpTqxpwuCoQ699V47vSnX03M50Nl7x1shrYexrYdBjI2gMsKARmrgMmLoscJNHqr\/nm\/nzPvg4MDy3Ceya7ARtOxHwXs0lI3MZOdTCvF9cpEmVsSGcHyZ7TwMZDwLJdwPxNwPQcYMKSwQVJpBqdAdOL6cpqgvhI6YE3tsV3tULiOR6xmSyDwDq+Z9f39bBCe39qwt+RvLIycUESrY5UJObwMCHxtrcBN7Azk++x6T02s9XHURpjHXYKkkhVXBb3z6BQ0fFVdmOy3s004sbQLaqtG7GqHvC3AM3tQHsn0NEJnO8y\/rOlA\/C3AlV++\/79vRGCxOW2Z5j0V7n74\/a5nFUlRvDRKDXWzvyPXZtTNgPnumDauU6gttG6IDmkAoXHnB8kkcqzPQ6fl4byZH8pH\/V9bCq0U7hU+mMLlyu1dgCqziBJRM3JG\/z+o2R4CR8NbO2MLQaBq+uBngAGraMTUGMNEQ0o8QL5pUBmMZC1G3h\/C\/DmWuCl5akRItHqj6sHcaKdxEw+HqXyY5NErtUBU6EDXT2Im5b2CHtsKo1BzA9KgHc3A1NzjCnaC800dnFyhcPEZcCs9UZ45h8C9nmNVbzFZcC8TeZ\/zqgMmHqjQJh6kV2W6nczfjxgdcg0tiHuhDSmgfNKjeXxM9cBE5Ym513Gi8uAmesBT7Hx77vPZzw2tp2P\/jmdrDH+eTN\/zuEYp7F58DddGpvRUWxlyHRHuYs512XMMDWcNersOSAQjPzPbDsee7M6ZXxl3BLjTux0rfFZxCOQR2VE\/3O3n4hpDGYGO4suUiWet3Kwtz\/dPcCZxstXu+4qNxoso9i4fe9PVX1y3rVMywH0lvjf+WXtMTGNvc\/0dV3GMRi6TGUzbrZq82RFPyETCBrjBot3GDMb4fbfvLjMGOjt7+4n2QJm\/BLjTi4RFBn9z3ebm8Y+wlkkCv\/IpGGHJYcdVRoDtVcqOGyu8Y5Vhm+arp7kC5n8Q0iY7h5gpGfQ09gtlRJ3spsofMhIzE70fpxd5cDa\/cZvxBm5wJjQTM6rq4Cahktf+DON0Y8guFClInzT+FuTL2TONCKh\/rg68p\/\/6qqoi+1+x06i\/sdlNDwVjzDx9VpKv\/xD47efmf04LrcRPHPyLp9SjvbP1LeGb5hDavKFTGd3YkMm2pT2KE\/EaexCdhFFC5l\/H8ijzpVrTkZlDF3TuYv6bxhPcfKFTGtHYkPGzODvofAn5fUoGu5nF1FE3jrcG+1RJ3cfsLDQuOOwetHaH1f333QtHcCYzOQLGVVPbMgUHR\/wNPYidhBFv5Opwx1CAgcVYONhYPFO49Fl8gr7NdvkFZGncc38RnZi7fMlNmSOVUb\/O6wp6burusKPL7GDKKrV+\/Ho9Bz7N9qkFZEHQE\/XRp8l4exSeHVNJnZjF\/XZlzSN3UNRTZ2Ka8YuRq0TVrpWN0TYs9RhzzuveFVmcWJDpjsQPaBnXz6N3VXlx+3sIIpqxCI87IjHBW\/\/DdLZDczekNw7oWetR8JFm8aesoqvj6UBcKXjSbs32Mz1QH\/blXoCse0odvJGyESL9jmOzACUuosh8312D5ny8ir80O4NdlhNvYHecGVmZ\/VQTGMrEmXsHDKtVOAlO+9AHpnR\/0K0A77UOjwq4dPYJ6L\/HYqOA0LDFHYOmQJgmNBx0s4DptNy+m+KN9emVshEGpeKh+NV0f8OOSVAhY5vsXvIFEXH\/wlprImx8\/my\/e3UdnlSK2TySxMbMsLEbuyFhWjjUQ5kLmCMV6NoQhqL75wWMu3nU++s3YwET2OXVZu6s6xi95ApQmL5henIgkPOe1wKBJN34V2kWbZEWncg+t9h7GLUsnvI9GPShbLzAGqkgd9Ue5vA+CXRjx4dqLbz4Q8HC1Pdzy\/Etewi6ldox3X7ZcvD64Z2B3Wsdbwq\/ONSMm6EjFYf18U\/YLp6Yltr5HLjLnYShVVZh28IiYZwu63\/lG3vR6b6s5cawltnLHFPxXcg\/W0jEIzT3UwQQPkZY2d9jIeuP8Juor5jMH58XZGo6e9Ih3c327\/BxmSaP9QqmWvVR7EFTXfA2AB5rNJ4k0PWHmBuwSAeNz0YzY6iy4TOi9EiHUK16iM2r5Nq9gbjMfLCi\/G6A4DWbPx3RaEgmbfJ2I8U9wHydMxjV1HvWaQfCInGaCfdFR1n4zqxXB5jX9MQr9ouYGeRMchrvFOpy8xxmkcrndFQ03OAP681f9g4KyHlZXeluGLgGqFhXqzn9k6wceP+Jf\/yE\/E6u42DnFJt1a9NitPYqcyn4VZFx\/aBvG3grbX2nV3qb63M1mNseivqhUx8ld2WghSJh4RE3UBfaZJeZM8v9J7T\/c+cBILGO4HY+EMcMun4MTsuxR6PFImpQiIwmPcmmVlWbkVV10eeol28g00\/1DUiHWPYealy91KLfxYSu+PxcrY9p+35hfZGWeW6ZCebfsgH4d2Yz+5LhYDR8LSQaIrX62RP19pzIHXNvsirVl\/PZtMPeXmwmR2YzOFiHNOwLBHvrX4ly54rfSv94UOmuIwNb1H52InJPbhbnYiAERL4a749v9QTlgI7yoBzXZdegbL+QOod92Cj6hmejU+yI5OIquJ6oWGukAgmKmCEBJZ9aO8v98jQClc2uQ2uxSJ8jZ2ZJCpqcY+QOJLIcLlQmw+zeVim6yfsziQgJJ678vyXRNZBhc3DMj3DNJYd6uTHoybcJDSsHqpwuVA+LTUPg2INaIbpXXaqUwNGw3cjnf2S6JqWwwZimaot7FYnPh5p+J2QOG9VwAgJvLeVDcQyVQo71kFCWwNmWhkuF+qDvWwgFqexk8rpWvyDKlFkh4ARkgvcWDGNy3ydHWz36WkNXxESXrsEjJDmXvLFYqW5gRGL8FN2sY1563CvlQO8kWoiF7yxzE1jj2cn23WA14+vRzvc28qauY4NxDJxJ+PGe+xmG\/LpuEtI1No1YIQEPNvZQCxTdzJb2dE2U12Nz9ttDCZcbTjIBmKZKpVdbbNpaiGxze4BIySw9zQbiGWqAqPn4Tp2t13GYXTMcELACGm8c5nHKLDM1PMLcTe72w5T1Tq+ZfYdSHYpHtDNMjku8yg73GIAhgmJo04KGCGBdwrYQCxTC\/ImsMutfkyS+LXTAkZIYPkuNhDLVL3PLrd+sFdxYshsOcoGYpmodBSy060di\/mREwNGSOCQygZimaoKdrqFFB1ZTg0ZRQJjF7OJWNGnsX+TievZ7dY9KrU5NWSEBN5YkzrNMirD+Pf1FAObjwD5pQwQ06+tzcA32PFW3MX48R0nB4yQwN+T9ACrF5cBc\/KA7L3ArnLj2NGunsvf6dR2nuERwwzTY+x4axbfjXR6yOSUOPvLPzoDmL7GeF\/2lqPAsUrjnU1mvbySAWLy3dgvsuOtmbp+2+khs\/Okc77oL68E3t8KrN0PlHiB2iYgGMSgzNvEADG5IG8BO94CqgaP00OmrMa+jzordgPbTxiPOp3dSIg1+xggJo982MaOt+ZO5gOnh4yQwKTl1g3EXvmo09yOIVXiZYCYrEp2vDV3MhnJEDKzN1jzqBMIwnJV9QwQs9PY47PxKXb9UIeMxF+TIWQyd8TvyzhxGfC3jcDqj4DdpwBVB853wba6egBXBkPE5Lux72XXD33ITEqGkBnIepHRGcCbuUZAbT1qHE7e1A7b6wkANQ3Afp9xVzV\/M+BigJgLmXT8jF0\/9GMyP0iGkIl1XOKQMJrV7hrbgONVxnhPRjEwI9cYB2JgDHiGaSK7fohVNuNmIRF0esh4NWBUDAdYlQp7hcm5LqDSb4Rl9l5gbgEwaQVDIQEL8hay6625mzmVDHczr602\/2XLK7UmTAJBwN9qzELlHwLSi4zZKRdP+BuqkClix1sTMnOSIWTmxrAo7e+FiQ+U9vPG+pjtJ4z1MnPyuJnTBlXFjrdma8GDyRAyWbvNf9leWx2\/MOkOGNPZJV5jIPb9rVzqb+MKchrbAgCuFhqqnB4y247FNACIcwOYlm5uNx51thw1FuBNX2Pfw8xdbuMM5HcKgJW7gcJjwNEKoMIPfLA3pVf+3seut2Yq+09OD5kjFbF92RTZf5h0dBqPOrvKjYHYOXnAuCX2DJIpWca6nhW7ga3HjM\/hTGPfHdtXmpaToiHjwS\/Y8Rao8uN2IdHp5JBRZGxBsKvceNSprjcedXJDa07s+qgTbrd2WfXAH\/M8xSk7jT2JHW8RReLvTr+bmZFr\/ss2drF915yY3a0dCBpT3wORV5qyj0uL2O0W8Z3Bl4XEOSeHzMJtzjyYajC7tdvPAw1nubEyhipmt3NsZsCVu9++x2ZOX2Osi8k\/ZDzq+FvjN8Plb419IFvIlL2TqWanW6isDJ9UJMqcGjK7yu3xqDO3wBgwLvEajzPdPYlfl1OhA7FsCtdbUncae+JSfIbdbuVjk4b7nHq4+KkzQ7dZcMJS4K11xkDs9hNA+RnjzF0rfVxr7v8XBJCbwoddjcrE\/ex06weBn3HqnqaXV8T\/UWdGrrFBcctRY8NiY5s9N1QGQ3c0vQeG61uBkzXAjjJjfcx7W4xp75TeKJmOx9nldggaDeOdGDJz8uL7qNPVA9vrvYVh5R5gUZGxDmY0d2z3V5PZ4fYKmoCTQmZJjAdY\/Xmt8Zu+\/bz9w6Sz2zhEa\/cpIwj\/ttE4ZIuhEXOls7ttpELiF0Ki2Skhs\/FwbF+43o8XdhEIArLZOPcmr9SYmn89m7u141hZ7Gy7TW3X4Q6ho9gJIbNfie0LV9NgbaCcPWcMWBedAJZ9CMxcB4zJZBAkdEzGg+nsavsOCP9yiKa4m4WEX0goikSZKnHwQik6tguJwoulY78qcVBoKBcSik\/DmVGZCJr9wu33Dd2xmbVNxoFZ+YeMFb2xnIHDik+NXYx2Vya+yG62MQCfUHU8oujIEhJnYwyPOiGxS5VYoWp4S5FwqRp+puj4nlqPu711+AKAYYP9O6a5cdjsl27dgfgHypW7td9ax0FYq2vMYmBeAVDixXp2scMW7\/kk\/kPVMFZomCcksoXEFqEhX5VYqUjMFBp+75P4z8pm3DxUf6+0dCwx++V7b8vAwyTcbu3xS9jQlq1\/8QCvrDQeOd3bjb1fxWXAIRVQtNAvOg357FwaNJcbE81+MadkmTuYqroB2Ndrt\/YrWWxq2wZJ5NrKDqFBG7EID8fyxe19sHjDWWPB3eYjxnEIb6zhGwKsDJIFhcAHJTEHSaTayQ6hQRvlwe2xfrFfXWVsFWCTWx8kPi2hkwp8JzbFaVzGDZ3NbPHL1DIuD5KsPcYxoEMQJJGKA78Ut5DZzkZP2SCJVMvZHRSfwV8P5jIEEhckmw4DB3y2DZJIx7TOYndQvO5kfs+AiE+QKHXOf2XOxdIxit1B8ZlhcuPfGB5XLKfvJ0j2ngY+TqYgiVCqxMPsDoqLiUvxmTQ3Ain4KlaMyjB2Z89YAyzaBmw7bmy29KVIkER8b3odvsDuoHg+MnmTOVDGLzUO1LqwKG1XeerckQywKtgVFN\/B33TkJkmgdKa5UZbmxtI0Nya73Hh00Xbcq+qYLCQqGR6mx2Pc7AqKd8hMdWCg1KZ5kJfmxkyXB8+NXIR7p07tf9PoQeBaoeNXQmIXgyRqyAxnV1B8B389+KWNw6QxzY3daR4sdLkx1uXB9wZ7ir6q45tCYqGQaGeo9KmzZTo+y66guBq5CF+zQZh0hR51sl3pmOpy49G0DNyZyH9vbx2+IHS8KSRaGC6hWSUNGewIirupUzEszY22IX3USUehy4O5Lg+eS0vHA6Pn4Tqr\/v2rq\/F5ITHdScenJmwRnh\/fYUdQYsZl3DiQgDBpTnPjYJobS11ujE3LwEMjl+AWu34Gp\/z4XGiQuCFFQ2YTO4ESJs2N2YN81DnqSsfyNDcmp3nwI1cGvuzUz8LbgBuEhleFRH0KBUyAdzGU2JDJwJ2hQdZogVLlcmNjmhsz09x4elQm7n9+Ia5Nxs+kTMdnU+jO5l12ASV+ADgD3x7hxrbQ+ExLmgd7XG4scLnhGunG98dl4qZU\/Fy8DbhBSLwmJBqTdAuBT2nEjewAIospjbhRaJgiJLQkCplzFX58m1eXyE6PUWX4pJB4Tug46fCA6VE1PMkrSmRTAIapEj8Pvdsq6LCA6RYSz\/IqEjmET8ddisTM0Mv2bL+qV9HwU141IgdSVVyvaHha1bAxdLdgt31J+ytqcQ+vFFEy3N1ouFXoGC0kPhISAYsDplmVmFQMXMMrQ5SEhMRtQsPvhcT6Id6Y2SQk3q6pse9KayKKM68X1wkdD4bW3mwTEm1xDpbzQmKrquM3tbX4ND9xohQH4OqKWtyjanhKkZipSKwVEodNLv7rFBJC6MgTOt4QGh7jUQ1EZFqZjs9W1+Mf1Xrc7fPjgQul1uNuIXEbPyEiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiIiKT\/h+KddUiiEEpOQAAAABJRU5ErkJggg==", + "image": "data:image\/png;base64,iVBORw0KGgoAAAANSUhEUgAAARkAAADxCAYAAAD\/cMNMAAAABGdBTUEAALGPC\/xhBQAAACBjSFJNAAB6JgAAgIQAAPoAAACA6AAAdTAAAOpgAAA6mAAAF3CculE8AAAAUGVYSWZNTQAqAAAACAACARIAAwAAAAEAAQAAh2kABAAAAAEAAAAmAAAAAAADoAEAAwAAAAEAAQAAoAIABAAAAAEAAAEZoAMABAAAAAEAAADxAAAAAL3Yg78AAAIyaVRYdFhNTDpjb20uYWRvYmUueG1wAAAAAAA8eDp4bXBtZXRhIHhtbG5zOng9ImFkb2JlOm5zOm1ldGEvIiB4OnhtcHRrPSJYTVAgQ29yZSA2LjAuMCI+CiAgIDxyZGY6UkRGIHhtbG5zOnJkZj0iaHR0cDovL3d3dy53My5vcmcvMTk5OS8wMi8yMi1yZGYtc3ludGF4LW5zIyI+CiAgICAgIDxyZGY6RGVzY3JpcHRpb24gcmRmOmFib3V0PSIiCiAgICAgICAgICAgIHhtbG5zOmV4aWY9Imh0dHA6Ly9ucy5hZG9iZS5jb20vZXhpZi8xLjAvIgogICAgICAgICAgICB4bWxuczp0aWZmPSJodHRwOi8vbnMuYWRvYmUuY29tL3RpZmYvMS4wLyI+CiAgICAgICAgIDxleGlmOlBpeGVsWURpbWVuc2lvbj4yNTE8L2V4aWY6UGl4ZWxZRGltZW5zaW9uPgogICAgICAgICA8ZXhpZjpDb2xvclNwYWNlPjE8L2V4aWY6Q29sb3JTcGFjZT4KICAgICAgICAgPGV4aWY6UGl4ZWxYRGltZW5zaW9uPjI4MTwvZXhpZjpQaXhlbFhEaW1lbnNpb24+CiAgICAgICAgIDx0aWZmOk9yaWVudGF0aW9uPjE8L3RpZmY6T3JpZW50YXRpb24+CiAgICAgIDwvcmRmOkRlc2NyaXB0aW9uPgogICA8L3JkZjpSREY+CjwveDp4bXBtZXRhPgolpJBIAAAn9ElEQVR4Ae2dCZgc1Xmu\/+rZtY22WSSEZkYamd0GG+EFx4AFwU5M4iWWMU5sTBJzDYYb23GexImfKMmNb+ybS+IQsCEY3yfE3At4v8ZmkZGNHTAGIaPRBtJohAZJs2gbbSPN0iff3zMt9fR0VVd3V3XX8h09pa6p7Zx6T9VX5\/znP+eIMJAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZBAEAlYQUxUJdL02mtmwakauSRh5MJkQtrFyFLAmY3fuZYllhE5iXQdx9IvlvRi+8tVSXlhaatssywrWYk0M04SCAOB2IpMSlSq5dqEyNXGkncis9qKzLCjEJwXcY3nIEY\/7GiS\/6ToFEmSp0WSQKxExhiT6OmX90AQPo4b\/y3kaK0PudqPUs\/3cP3vHGyWdZda1qgPcfCSJBAaArERme5+837c7BrkzEVlzJ19EJx7axJy79Ima28Z42VUJBAYApEXmR19pjlhyb0g\/rsVpK6lme\/BlnPnsmbr5xVMB6MmgbITiLTIQGAuhMA8CaqtZSdrH+HTiaSsaV9krbM\/hHuCSqDnkJmLZ2rKezMyKCdWrLBOBTXNlU7XFFiVToyX8Xf3mYtgiH0K11zo5XU9vNbPk0bWdLZamkaGChPo6TH1MlPOlaScq62LaC88C1KyFNXdJXhJ5iN5cycXu5SOYccQju3DOb04d4+2QOLvjVUJ6YpzdTmSItPbaxpG62Q9Mvk8uyciQNsfS4zLZ9oXW1sDlKZIJ0VbFkdrZaUxshI3+iYsF2DpwFKFxdNw5FRSXjkwKv3Hx4aGRs3usTHZePBE8j\/2nZrz5COrrXFPIwvoxSIpMjv7zZfB+3MBZZ4rWWMQxK\/VjsmaJUusA7kO4LbiCfTsM+3JKrkKzk5X4SqXY1lW\/NXcnTkybuT\/bz8hz+09KckcXlQNVdbo4jnVjx89lbzta++bt8vdVcN5VOREpvugaUSjcS+yY3YIs+Qgqnh\/c6BJvsqm7+Jzb9ugmV1r5FpUed496QPVXvzVCj8TJSS5d8MR2X4wv\/dCbbVlVrbW\/fi9F828Yfl8a6jw2IJ\/RuREZueAuRWlgn8NPnqHFBrZZhLy2eXN1o8cjuKuDAK7+kwHmF2HF\/w92HwFFj98oDJitF\/V6pGKTCHhzWfVn\/y9c2d+flmL\/AucOSNVjaouBEQojjWpBywUSbVNpCXnomj\/KKp9j+Ol+dzyVqvL9tgY79h+wCxJjMlqlP6uhxF9JT4ugQjHRqfXj9AiJbVVlpwcy53I5\/acrG+akbjDshqu37XX3BglG130SjJ9Zjcs+2cH4mnzJhH6xD4Ii+Rft7VYO725ZHiv0jNgWvGafgCC8iHchdpX0DMkWEGF5CvPD8ng8XFRcbmirUGuxDKzxpKDJ5Oyoe+U\/OzVYTkxOlVwanDw598+V2bXJo7iI\/MHHa3W94N1Z8WlJnoi02+0Ihy9EprIKDLrPishf9feZO0rLrvDeZY6VKK08gF8PD6Il+8duAvPW4G8JqOG302DI3LW7GppmTk9uSpAd68\/IkdHppZ6fud1M+UdS+s1OUnYk\/4IVeZveJ22cl8vUiKzzpjqtgHJb20rN2Vv4zuB798DaLG4c8Uia7O3lw7O1VBVbMHD+V6kaDXu9wr8Tn9Tg5PcolLyZM+wPN59Ysq5l7TWyUcunJXeloSwXg8v8UfSG8L4G6kv\/pIdeBDnhDEbCkrzDLx8N8PB6xN4EZ\/CC\/iNhnH57uLF1tSntaBLVv7g1AdiUN6KlLwLdqh34fcS3FukPoLZlLX6lB2S2jR1JiRQLby\/Z7\/p6lhobTuzOVxrkRIZde3GizeILGgKVzYUlVp9Qlfhv1Unq+QoOoB+G1WJ79YnZW0YBEd7xHf3y\/mwhV6O1+oaGZCrcT+NSmL6q6dboxVgqJb1+6b3RGidNe2VnGXG5V7wugKtTlMUKCxEIpefO\/vM83hKLw1LBviQzmHc\/1pc90l8BZ\/uaJauIIxvg5agOWgJugxW2rfhTdESiy4pUfGBQaAvOQTj7yPbjsu2\/SNT0qlG4s+9da40zZheM8Su93W0WN+bckJI\/oicyPT0m2\/iIb4hJPzLkczD+P49Ax+SXyOyl\/Cid\/Usku1XWZb2tfE8qCMczJYrYDO6APlwoY40CAOmuu23eR5ZiC44hqLLlsFR2dB\/Srbid2xqtSh1J2rwVcOvTVi7rMW6xmZfoDdHTmRQkvljfMl1aAcGewIjyPjepCW7IUC7IQa7IAaH0TFwCKUf9To9AlE6lHk6JCmBf41o5ZmHToRzcM4ccG7EdRbhGkuw3oZtS3BOLEsnmawy17Va9NNdw\/Kz3cNyPKvJOvO4C5tq5aMXzZaEfYN80qqVBR3zrMOZ54VhfVoFMAyJdkojXpR1eGEYnAnA616WQxyW62H6pUFpIzWQcfq0aaMWpx9+ZavHpg+cPDfjT65OEhiFwty34ah0H7Jv8IRNSlZ1NMjVHTNSPjUO8BLoLqNVzB87HBPIXZETmc5maweMvz2g3RFI4kxUbAj8v83HbAVGHe\/etKguJTDz6tMK7owGNaxQOplGTmRS2WTJgyj2\/6VzlnEvCfhHoOfwmLzUP9Wwq7G1zqqSy8+ul0ta6qS+OrM86CItRma4OCpwh0RSZFD0\/3dUBSgygXvc4pOgn\/RMd1tSw+51K2YK7FpFhZTNrKgzK3uSu3JaZdNYcOzLm6xXcNKzBZ\/IE0jAAwKn0HfplSw7zLJ5NXIdWo6KFRhNFoZtDeXAZpEUmcnn5KsePC+8BAkUTCDV0Tqr8eEqdJAssgCTjv\/42FHZkP4jTL+RFRk4oT2ITO0OU2YwrdEgoN0Frr9glixomHCq01LMuQtqSr25b4V1sPISxbVUbv6eD1f7W3CDd\/kbC69OAvYEtDe2jiNTYkAnDLkMZoAXSrxORU6PbElGaSZOyP346asIWUZKAiDggcCoU9LDYRUYfQhKltigP0kYjvNTaM6+M+jpZPrCT+AQ+iSt3XlCDgwn5ezGalnV3lB4M\/V0DIMwFr++o9kK7ccy8iLzgjE18\/tlI+T03On5xy0k4A2BYxh86n89e3hK14Glc6rlU5c2OnUVyBe5ugr\/NvosPZnvwCDvj3R1ScHrqP8w9IdpepQgPy9Mmw2BX+05NUVg9LDdR8Zk52HViaKCtk\/dFHaB0TuPpDNedpZiIO4foqvBE9j+m9n7+DcJDMMx9+BxkUPHsOD3MJYRzBcwDx2i39SBHp8u\/GxzDR6uZI85dIp0ID+CLgQfx3P7oMMxodkVC5HR3EBftc+iu8h6rFZsqozQPBURTKgKiQpIWkRSggKnXP37lENhY\/NrGDfkbSIL8szidd7CWnl698kp5NTo2zG34FesH053H47SXOmRt8lk5jpKM3+Lv7+QuY3r0SFwEkIyBOE4PLmk1iEi+4+KHJ8+CJ3rG1\/RisGGV+Y\/fB2GdHgMY\/ai1Voa4CvzofNniQ7hUEB4DMfeiCpSfwHnBP7QWInM9u2mLjFHXsRNnx\/4nGECcxJQITmkIgLx0CrO4YwqzrBDiSTnxVxurIbl8k9+C02xLt6WYVSPhjD\/dRNmKCjAPUZnn\/hzOJA+ENYhNp1QusDmdHr49nUPmLej8+TPkPLIG73DlzsTKdbqi4pIdokkXUqpxH3dfDVG6WrwPGZIpnxlvFr+x4oFVmFTTnqeFP8uWHCF0b+klOfKmMfmF6g2fQ2x3VKeGBlLLgJjmG5oCEKiVRkVk3TVppJCkiud6W1qu\/FYZNZitIBb8DxuT8cR1d\/YiYxmpKmRz2OUsfdhdVGQM7YaXV8a0OWlBrmkixY7dbBpHdJxFK0fIxildxi2Bn1hgxjGkS4tkeQSEhUTbaMNS1CRaVvoSWqPIQs\/194s90SxapSLUCxFZvl8a6i7z3wWdexANhHOrMNXE82m9Q596k6X3NHqkbJT4CU46ZNNIteDk96mQnIUjSoHUCJRMckskYRNSNL3lOtXW6NKDka2wSj8e1GelC8XI\/04xjag2vQkbv7qoADAhG3SjGG4ncTFKa1Hh\/Gy42XIMRC+02l598VFSJxALG8Ref9lTkfk2WfJQ\/VjclMY5sTKcycF745lSSZNCdWOT6P68RL+rrgRuAZVo0XzMBdrCSmZjeKNVrH6MZ59IVURbXJNlURgehzEoiKn1YN0K84xlFTiHtRuVGwA3i8ta5K\/iEv1KJtTrEWms9XahOEgvo\/inNpnKhbUztIytzSBSSe+AW4Z8zGVspZocgUVDN2nVRsVo\/1YPwBhSdt1avFEqK0nKkGrnk2YurgZSxNKiU2oXuo9qmh07RbZusfdnaptSW1hmlcFhj9d3mL97wLPidThsRYZzUmM0\/H3mP6joiKj9hctyXgV9HoqJGkR6R+CmEBIBrCo56tTCKPAzJgUkrSYaJUzJSoQFhUZu3Dl+RMi8\/V1IifyOOulq4yNp41hdlc9sx2uEp\/uaLX++cyWeK4VrssR5IThINahfnFlpW7t7AUT1Ry7+NWgq74j+qBr0C+xvlhOX9WfbBL59nMTx7v9Xx8GfKwDH+pQnbv8HJHXLxVZjCrmLExZWUroGRC549EzfO2u9cG3iLQ32e3N2m7J3y9rtv4qa2ss\/4x9SUZzHV+c\/4uX68pKPAFqg1E7Sq4whmZqLX2k+9ZoK5KWUPpQMlEj7zvOwwxtMEjmCq8ronE+DALTimrlJ6+ZqALluu9itsHTNiVaT291PlurTOJOZP6jo4ndV9I0KTIgkaiTR8ZPpQa2KqijSRpiKb92L7bW\/3\/xssirgxP2kz7YT7L732jnvb9bDV+aHKnWqkPUghqkP3XthM3J63u7rFMkn8hoNwYX4aX6cbk5rkbeXHzwHWVom2sdQj3h2UqQOAIDpC7Z4fGXRB5Gip7bgdHQ+6cLjB6vdoQdNuOlldJKlZ2WoPy96iJ\/BEbvbymqrE7VTz0mVZLRFftwBIXS98exmdoeSUzGk3ECcHqfJc9j\/YrTf3u8olUebdHRJVXlQclEq0KjaMnR1iCtApw1fyLSvYdEntjoLgHq+ZsrqCNc1MIl7f7dkVZZ52mrHPLHLmizvmMw8pm2Vmun4zEx3Mnq0mSmwy6zXiedLzUkYZzVhzElJnhg1X6iD66Tn8VB2Fm++F0YMSEyWiXQKlK6SdkpPZpcO1f33gNOZ4Zz30I0P\/sZtEXKSWS0r5VDM\/baZa3W1\/1MX1ivTZE5k3M9Z1bdreXyOdGm4nQrkLurTByltpk9Bws5Q+SNHfaDKW3YVdi1wnC0lga1Zc2voHYsJ78ZdVo8AoP7XLgIZIVxeFl\/Jmsb\/5wk4GOWhYsxZv07Zjf+R7qqo96wqQUlE\/2tpE+JjtS2+q25GeuL8NKu3PvCvFWrmerV7FfQkky+oHaZHCJzP4bK7Mp3blz3U2Qmcx4gjmtpQqsu\/ZNioqUSFRN9aYMUdMiB299l\/8L9aMNEL+0gpdmLtKgNy7WfShERummR046SWWk4lkjIXxcRXWxOochMZvWveuWil3eL7INBNshBv+S3v9veT+SVfWj63hbkOyg+bSr4fgY3IpPdwoQP0x3tTRaoM9gRoMiAzJo1pvqZLXJPJas\/dhmUuV09XW9DCUa9XHMFLXHdv27COJlrf9i3DcKI7mdYiOqSNmOrcdcuHJzaajdak5B77I7l9gkC9JMBh77FsgoCsyjoD8WH3yayZH7uVKpA3rs2eFW73KktbqtWl\/wMOpavNmM7hSnN2JZ8Z2mTtdfpeO6DcBNC6us1N+gc2ppEVnbmTqW2Zt0DgdmJPjhRDn6LjLLLZ\/xNDcQF3pPh7vQKf+0JUGTAZs5sgftbsMO1r7efuPyRXzo3vQb7ztynTj2cs7tWuD\/b3ZH57DLqBzWE4TJQo9qCDpBPu7tqvI+iyCD\/P3iZvMEDPzzfniS0Xsj5S3Jf\/oXu\/H1ucp8Zzq1+G391mIh8QVuY4Lz5zXzHcf8EgdiLjDEmgXr4x\/30vyj1YdMivJ0T2hMx884Y8Nn4m6+6pHmpdhkI\/49Lzde4nB97kdk5KDei7HtevmJyJR8Iu4GXtBWkUC\/hSt6HF3H7XZKxY52ZdnQ9OA4b2a8zt3HdnkCsRab7oGlEsfeLikebL8MWdHwZrwcNDzoDv42\/+UYOVD7oj3aQQzm4f1JiLTKYe+kuoGpRXM0+d75znyXTj7QzdtZjHJl8wxNMv1q4t\/gtMtv78vOBVzj9y\/JjOn1EbEUG09XeBAofSZMIcnVJX6xcjoIqMDoMZ5yCjlvs5CxXCgsVczfe0siLpk\/cgykCGVwRiKXI9PSZN6OadGcmofkzvZktIPOaXq1rs6l2F8gO2qSbHpoze19U\/9bxjnUQL6+Djsuj3tJ2pcas+Kox\/kxb1jb+aUMgdiLz6j5zPsaN+RF4TOmwb4HEgjzenjYMy7L5O7+aGOxKI9MXQkfEu\/vJaHaEzAf00Re9s0XBdi7b4LP75R8U7Gtk4xqZL\/Xx2x+ruuXOQXMOBoN6ArWMnM75WmXyu85f7COmY\/x+4aGJqVPU2OtmUKti4wr6eVqqexgOiKsxewCmGnYVlFe6V73msbZSaXP4awdFipm8Dh+qFYj4MVeRx\/yg2IjM9n3mAknKT\/BMpgy9ufI9DC1MdsNt5rqfKG\/72RaR3v0i77pY5JzFE+KrQqIj26UF5LSYQFDUgc5TW04yJTJRRuzZvcVCZDDn9TUghnKA2PRfnuCpswsyhIeA9tW6+4mJ0ozO2DAMG5VWf8oSLGF1ySXoyNtkevrNJ8DiUSyOAqO8wlCS0erBorkiOiGcDv3AMGGfUSN42QRmArpWlxhcEHBZo3VxpYAdss6Y6rZ+uUMsua2QpP0ratnDaMEIYuhsFfmD3zgzYJU2az+JbgU6El7cnPICkD9j4+My496b4W3F4EggkiWZHX2meemgPFGowCipoPrL6MyJOrFZZvq0P9NvXyLy3pWOecyd\/hCotmql3Z9LR+uqkROZ7n5zNZzUXoIfzFXFZFVQq0xXX2TfSXLVhf5NelYMw9icM0bjr5u8jozIaPUIArMG9b\/HceOoWBQXMksKxV3Bn7N0hkO7oJ6\/K4q+Y7urcns+AsBO428+SNgfidal7r1mqTUgD+J+Lndxz46HBFVk1NPVKbj1F3G6BvcVRgDiTuOvC2ShL8l095kbrCp5CfdassAoL52lMIgv7Mbd9rmprSp+uNrbx8g9SmDSIY8w8hAIrcjoMA3wf3kAgvBN3CPMot6EGsyJ3Dilw4E31y31Kup8thvOZ7mC7vN7nJVc8cZ+m2F1yc0zEEqRUeMuGg434QZ\/381NFnpMEJ3y1NP3KxiLTQUlXXXSKVB+8ILIt+Biz1ARAu0ffNjADZDBiQBsV+EJPT2m3jTIlyabpn1L+3++LPLMK8HlooZeHUtGHdAYKksgkZRz7vqEFeCnpbJ8NPbQlGR27TXnmRnySwjM7Ui3bwKjUIJYktF0pYP2waHApGlU9jeZoPE3Xw6EQmRge\/loskpQMZA35LshL\/YH1VfGi3vjNbwlgK8dm7HzIA10E3bPITPXnEpNA7o6z314unsuBrBSAzB7PHuKNZIXYwtT\/mwNbEkGo9e9JTkC464lZRUYRaY2jwXskZ3\/6eER2iuTvjJ5noNAiszOPvOH+EL8FO\/6WXnS79tuVpl8Qxu1C7O6lCdHAyUyk10D\/gGll\/uQ7ooOkR3k2Qvy5Cl3l5dAG5uxnYEHxibz8l6zsHZAHkLDyTudk1yevSzJlIdzBGKpWnhUOnAfcHxgyEUgECWZXX2mA4bWZ4MiMArKzXSluYByW\/wImHHaZZxyveIio2PvjlvycyQyUHVbHc7RzZSlTnC5Lx4EMC82jb8OWV1RkdHZA6oSqcG9K2bgdWCT6izptJ\/7SEAJYPzyQH0gg5YrFROZHQOmE7mzDkBsZw+oNKygDvtQaS6MfyoBvEQsyUxFMuWviohMb6+ZnzCC7n6yaEpqAvYHRSZgGRLQ5MCWSJFxyJuyi4w2U4\/WysNIU+CLmEHvw+SQr9xVXgJLb\/sXU1GXi\/LebmGxlV1k2gZlDZK4qrBkVuboBZhRUr1\/GUggD4HEqbpUM3aew+K5u6wis2vAXAI37D8LC+pq0NF+TAwkkI9AdRWrTHaMyiYyxpgEhij4P0hIjV1igriddpkg5krw0sSOkvZ5UjaR6RmQG5CM19snJZh7dMxfBhLIS4BDcdoiKovIqLEXKfgb21QEeAdLMgHOnCAljb2xbXOjLCLTMSjXIAXLbFMR4B0UmQBnTpCSxulRbHOjLCKDMbA\/apuCgO\/QmQt0OlgGEshD4Owbv2Hq8xwTy92+vz5aVcLEa9eFla62YKtdZu+hsN5BYelGNw9paRRZPB+D+cwTGcMX4tENhV0jpkcn6kyqtI75JBgyCfguMkv3y8WIMNQNwVEVmRlwH1uEGauWLpz4XQRR0XUdejQdjmNGBIpMmobzL7zYO3EERSYLk+8ig4nv35wVZ+j+DLtdRv19mlA60fm0VUhUWNqaROY05M8K7YmuVcahE\/mPjfsRJklfmVzPgO8iA+e7tlwRh2lbmERGBSG7ZNIKgSll6t3FECaKTP4nlnNj52bku8igJLMAjkqhDkEcJS9d1UmXTFRYzkZJxQ8j9Vmwz2zdE+osLEviOeRDbsy+iwwEBj2Awh0a4KM8G+0GR0+W\/z7UENucVdVRQSnnfN0qMgz5CeBbuiL\/UfE7wneRQUnmaNhLMvpYaJXJb5HJVdXRlp5Kd9LU6hKDKwJLPv2wafin1RZmKWdIE\/BdZDDzwOF0ZGH+1SrTzgFv7kCNqVo60JdXf3VRY2wdSkxBDK1Im4USFQybDM4EEiOHU83Ym50Pi9de\/0VGpC8KSIsZW0ZbdfQFTfucpIQFgjIXxtkgh3GISR8+DeobtOegyGtYdIxJBhcErFQzNkUmA5XvIoNRwzZkxBfa1UKNv3\/8TvQGRbua2lSCHA4dnxCStKDorwqMCg1D4QTYG3s6M99FpqpOXhg\/hYZslLinRx+eLTptbRXuYFzvxEXQw4IkMCdHRQaGRPZBQHbvx6+WUrAcpfXARW66P4QiM52V7yLTNtc6tLPfvIKoz5kefXi2qMDMmyWy\/6i7NGuJ4I0d7o718iiM2SMHj02IyO4DE78qLFo6MS4F0sv0xPBanTG8Z8db9l1kJmP\/IX5DLTJ6H1plcisyKTvG5M379XMCLv+nSyYQES2d9EJYRsb8ipHXzUuAQz5MQ1QekbHk+6gwfXZa7CHboPNjb3OZ5r1qLPUojME+MnjkTDUnLSz0wvUIsLeXYTN2Fs+yiExHkzzT0y+9sMqcnRV\/qP4spHvBAVSr1A5SX2CztApHymYyWTLRKk8\/1rUaFLSgRjatQioXndY3\/duI7rDP7xB5Kp5tLNbwEVkONJuCll+VSk9ZRMayrPGefvN1vCdrKnWjXsRbSAuTaoLaZZY15455eGRiv1Zx0iUTrWKdgjAFKaiQ6GDqKQFpPCMk+rcumT22M9PdBq\/kLXsmbEGZ22OxPjGAFUVmMrPLIjIaF1pa\/g3F\/s9jFbNMhzPMRq9ldZhzKwRaZdIuAH0QEm3JSTcTq+9JEKs6uXprawvZ+UuKy68l6EulBue4BQz5sCJu9+x0v2UTmaVN1t7ufnM\/voz\/zSlBQd6nX3UdW0ZFwk341nMiDz0bTJ+TXF0YcvXW1mqaVt9ULAsNWoWKY4AJrTOO9213z2UTGU2AGZMvWtVyI1ZDO0yhVhHcikwQWnlK7a2t\/aZUWLVZfD7sL4UEZRXHAGQsyWRkfFlFpvMsqxe2mX8Is20mqC+OVmu0t7b2gUqNcIeqiv6qQJQaVKhOwIZUqCE7riUZPN8syWQ8dGUVGY33xH75n\/ULZTXU\/vyMdIRmtZg+TF7fnFZ1TosJqjG6rp0tMYuhb0HF6tVBVJua3LtuzwptebU0jHi2z\/rTfzcz\/\/GjFjptMJRdZC64wBrZ0Wc+hJHafgn8oRv7V0syeIhS\/ST8fnwaYCLX+FRE1CaiJRMdmEp7cVci6JCd2\/ehLrAof+zauvYLt05F+S8XtiOsk+Op3thdYUu4H+ktu8joTXS2WptgBL4ZL+sD+FPf2dAEHXlOx8Yd8rDPj1Z1Ur21ISKZQ0DMC6AEd0JgtESjgqNBDcOHYK8ZgLOg9o1Sp0FdV7uVdr6Ma0iOpewyFBk8ABURGX3wlrdY3+zuM80o0dwRtgdR\/WWKFZlcVR0todj5mwSFTWYXhj6IyRN4fdTHZz8ERT2SGaYSYEfJMzwqJjKahOWt1j9BaHSQ63\/EnwEfFOEMNLXLdPef+TvfmlZx3rsSX39UedSIGuSgLWJpf570r5ZKdGoUhoIIdBZ0dIQPrqjIKFcVml39Zhc+ht\/An2gfCX5YWGAqb7j8TPUiKHen1RwthaiAZDoKagdQ9tb2JJcKbPD3JM5AXqTiIqNU2lus7\/bsMxtMFYTGyJWBJJWRqEKbsf1s9clIlu3qMQyAflpMVFSwaCllFLNDMvhDAKXz7f5cOXxXDYTIKLaORdYu\/FwFg\/AH8Pu3sAb73cQNy4JoT6Ej+KifRF3ttCk3ackRDIB+5hW0pBF\/J\/CFnwkzde38mVJfVSWLxsfdGa31hVaDrt9BR7NTo2tmf6iU3QSlE4byEUDjwIlRI3eXL8ZgxxQYkUljgkH428aY7+walGvxznwML\/d7sK+Qomcfjt8BkdqNUtFuCEYv+pLsSSbkQCIh+8dG5UBnqxxAp82SzJWfvM9sQDwXp9Pt9Ksi43XI7q2tnSy1rxSNsF6Tdn+9GrxNnegQe9kKWfuWFZY+hwwgEDiR0VyBAKBwIY\/psnmzqa1bKJdWGVmJjctRdmjF9kYIyCiKpEegFLtx9A6IydaaOtmiI\/Fhv\/\/ByEakxZXIaPWk2JCrt7ZeT71vGcpPQEdI1I6y2kqorYwL8PnTXur6dyO245lUJyof3SLLf8+lxhhIkcm8KXXew9\/PTC6Zuyq6joepS5XQTXAjMloCSc0QAAFRQ2zabnI4xr4mbtj6cYwrIXGKGFVqp91x2xd4kQlqhiST0qVzEbkJ6pT2Ys+ZMX+1s+Hp5mEIilZz+mEh4gwBbmh6c0ymkGhJRAeK164TU0okxUcVcEeF4m+smDMpMsVQwzloMepyO3OBRnHfUxO9mLX6owuD\/wSchES9tn2cmZOV2Yzs1RokQ5EEYPwdwKlNRZ7O0zwgAGO+zEFHTC2BpG0jWiLRkonPQuKU+h8sa7F+1+mAOO1jSaa03N6E068q7RI8Ox+BgAqJU7LpNJBBhyKTAaPQ1ZTx11BkCuWW6\/hcQqLT+WqpRAcr97Fqkys5JW1DgwBGN2ZIE6DIpEkU8QvnvK4iTovtKU5CAgdHcWtIDzpAfHx6g57GcqaPIlMCbXyxNtKoNRWgCkVjlo1ESyS6LIBfiQ5WHvUAvy12KcjIZIpMBoxCV2fVyubjI6KewzF4dTLoQFm15UbnlFLx0GE\/l7Wg9QylkZSxNV40MsBMrMLn6cVpG2O8gR\/iEjMfLUz61eos8TKBPb0ebmXq1aqDaumv2khasB6HEkmRmfIqWpbaizw3kqexJFNitqJo3IUBiqIgMuq9g3kfZT2Wzfj6bLl4mey85kJ5D2xPt2DbUiwM+QhYsjbfIXHbT5EpPcc34hLvK\/0yZb3CPvS7Wo8+NpthpNxijcv6pr2ydc2anJ1GN79gzB3zB3GPRm5DKt9e1pSGL7LHw5dkf1NMkSmRL3p3d6W6c5Z4HZ9OR6cF2QJB2Yw06u\/6GTWyodBR9C+1LPVgfViXngFzMUo2n8T672OBRYYhg8AxjBfy44y\/uQoCFJkSH4OqcemC0FQ6qAiobei0mJiEbP7qTdZOrxPW0Wz9Gte8efs+81cYU+dPULr5FP5GuxEDhPyRC1os9ExjyCRAw28mjSLW16wxif4lgqGiyja9y75UNSeBkgnsJyYpm6uHZdOdt1sVGYW3t9fMH62F2IjcjgXtTPENEPaVy5usF+JLIPedU2Rycylo6y33mefhM3NpQSflP1hH7lND7BZk0notmSSqZMNdH7MO5D+1\/EdsGzSz62AgRlXqzxB7GcYBLP895onxMbQqvTvPMbHczeqSB9kOgfkpLlOsyGhVZ+tkK1UX7CYbYYzddPdNVqi8Rs9tsrS\/zpe2HzBfrRqFgdiST+PvBVjiEJL4CHwhDjdazD2yJFMMtaxzPnm\/WQaXPC0mz8valf1nL4DrYFfaHWEjbBpdIyOy7d6bU4bV7GND\/ffmATMLVuFbY1KyuQulGLVNMeQgQJHJAaWYTbfeb96IQae+DKBvwfk6xPgmLZ1gXbsebMLkbRv\/+ePW4WKuHeZzULKZUzUm\/x33oCWbfCIcultF3nYna+RNy+dbQ6FLfJkSTJEpE+i4R9N90DRiINVbIb5qIEYnhEiEk+j0eXl7k8VuBA7ZSZFxgMNd3hPQgeEbFsr1EJs\/RyvZed7HULYrjqOk+pGOVuuhssUY0ogoMiHNuLAnG9PeJHYNyO\/APnUr7mUVljA9i2NI702wwzwQ9nwoR\/rDlLHl4ME4KkBgx4DpRKngj\/Aw\/iGiX1iBJBQS5TEYsz+M6ZV\/WMhJcT6WIhPn3A\/Yvff0mPpkg7wfDtQfQafT30TyguViYcnziTH5WPtia2vA0AU6ORSZQGdPfBO3o880w6j6IdhtPgwKb8ZSyc4bQ3hRvrirWe64yrK0qsRQAAGKTAGweGhlCOzsNy0Qm+tgtbkOKbgaS7k6ZqrLwb\/VjsqXliwJpqd1ZXKksFgpMoXx4tEVJrB9u6mrapTLIDpXIilXYFG\/JIzJ51nQPmBPw+v6wboxeXjxYuuEZ1eO6YUoMjHN+KjcNlqpql7dJ6+DW\/8bMB\/6xbivc\/BQt+O3DUs+5z8dqGsPSkib8ftreG0\/P5yQpy5oZk9q8PAsUGQ8Q8kLBY2Adm2Yk5BGGFFmY7bP06UdjE983IzLITRB9wctzUwPCZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACZAACbgm8F9xXHZnxUOAVgAAAABJRU5ErkJggg==", "label": "Image", "value": null, "variant": "primary", @@ -130,7 +130,7 @@ "config": { "icon": "fas fa-pencil-ruler", "label": null, - "content": "

No screen assigned<\/h2>\n

This is a placeholder screen. Please assign a screen to this task.<\/p>", + "content": "

No screen assigned<\/h2>\n

This is a placeholder screen. Please assign a screen to this task.<\/p>", "interactive": true, "renderVarHtml": false }, @@ -400,7 +400,7 @@ "computed": [], "custom_css": "[selector='illustration'],\n[selector='submit'] {\n display: flex;\n justify-content: center;\n align-items: center;\n}", "created_at": "2023-07-17T14:03:05-06:00", - "updated_at": "2023-07-17T14:04:23-06:00", + "updated_at": "2023-07-18T12:26:49-06:00", "status": "ACTIVE", "key": "default-form-screen", "watchers": [], From 3833c63d0d5724227cdb9af6db0ec92e9dee20a4 Mon Sep 17 00:00:00 2001 From: Eleazar Resendez Date: Tue, 18 Jul 2023 16:38:36 -0600 Subject: [PATCH 04/10] Set default screen for nested screens --- ProcessMaker/Http/Resources/ScreenVersion.php | 24 +++++++++++++++++-- 1 file changed, 22 insertions(+), 2 deletions(-) diff --git a/ProcessMaker/Http/Resources/ScreenVersion.php b/ProcessMaker/Http/Resources/ScreenVersion.php index 45c9335b6a..282d21feda 100644 --- a/ProcessMaker/Http/Resources/ScreenVersion.php +++ b/ProcessMaker/Http/Resources/ScreenVersion.php @@ -2,9 +2,8 @@ namespace ProcessMaker\Http\Resources; -use ProcessMaker\Models\Process; +use Illuminate\Support\Arr; use ProcessMaker\Models\Screen; -use ProcessMaker\ProcessTranslations\ProcessTranslation; use ProcessMaker\ProcessTranslations\ScreenTranslation; class ScreenVersion extends ApiResource @@ -24,6 +23,7 @@ public function toArray($request) $task = null; if (in_array('nested', $include)) { + $this->setDefaultScreenForNestedScreens($screenVersion); $task = $request->route('task'); $processRequest = null; if ($task) { @@ -54,4 +54,24 @@ public function toArray($request) return $screenVersion; } + + /** + * Set the default screen for nested screens when no screen has been selected. + */ + private function setDefaultScreenForNestedScreens(array &$screenVersion): void + { + $defaultScreen = Screen::firstWhere('key', 'default-form-screen'); + $configArray = $screenVersion['config']; + foreach ($configArray as $key => $config) { + foreach ($config['items'] as $itemKey => $item) { + if (isset($item['component']) && $item['component'] === 'FormNestedScreen') { + $path = "{$key}.items.{$itemKey}.config.screen"; + if (!Arr::has($configArray, $path)) { + Arr::set($configArray, $path, $defaultScreen->id); + } + } + } + } + $screenVersion['config'] = $configArray; + } } From 4d30ef935861f5a57f862fa8b593c4dc76bc1bc1 Mon Sep 17 00:00:00 2001 From: Eleazar Resendez Date: Tue, 18 Jul 2023 17:17:38 -0600 Subject: [PATCH 05/10] Add upgrade script for default screens --- ...8_168972_add_default_screens_for_tasks.php | 23 +++++++++++++++++++ 1 file changed, 23 insertions(+) create mode 100644 upgrades/2023_07_18_168972_add_default_screens_for_tasks.php diff --git a/upgrades/2023_07_18_168972_add_default_screens_for_tasks.php b/upgrades/2023_07_18_168972_add_default_screens_for_tasks.php new file mode 100644 index 0000000000..05562c7379 --- /dev/null +++ b/upgrades/2023_07_18_168972_add_default_screens_for_tasks.php @@ -0,0 +1,23 @@ + 'ScreenSystemSeeder']); + } + + /** + * Reverse the migrations. + */ + public function down(): void + { + // + } +} From afeb404a191b5fda6d83dc4e92e3c0f22e95fce7 Mon Sep 17 00:00:00 2001 From: Eleazar Resendez Date: Wed, 19 Jul 2023 09:05:16 -0600 Subject: [PATCH 06/10] Optimize screen id retrieval to reduce memory load --- ProcessMaker/Http/Resources/ScreenVersion.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ProcessMaker/Http/Resources/ScreenVersion.php b/ProcessMaker/Http/Resources/ScreenVersion.php index 282d21feda..cada12a20f 100644 --- a/ProcessMaker/Http/Resources/ScreenVersion.php +++ b/ProcessMaker/Http/Resources/ScreenVersion.php @@ -60,14 +60,14 @@ public function toArray($request) */ private function setDefaultScreenForNestedScreens(array &$screenVersion): void { - $defaultScreen = Screen::firstWhere('key', 'default-form-screen'); $configArray = $screenVersion['config']; foreach ($configArray as $key => $config) { foreach ($config['items'] as $itemKey => $item) { if (isset($item['component']) && $item['component'] === 'FormNestedScreen') { $path = "{$key}.items.{$itemKey}.config.screen"; if (!Arr::has($configArray, $path)) { - Arr::set($configArray, $path, $defaultScreen->id); + $defaultScreenId = Screen::where('key', 'default-form-screen')->value('id'); + Arr::set($configArray, $path, $defaultScreenId); } } } From 3f9bf042bfa3c093e976cabe2d40391a60904d66 Mon Sep 17 00:00:00 2001 From: Eleazar Resendez Date: Wed, 19 Jul 2023 11:02:24 -0600 Subject: [PATCH 07/10] Show default screen when the nested screen is not found --- ProcessMaker/Http/Resources/ScreenVersion.php | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) diff --git a/ProcessMaker/Http/Resources/ScreenVersion.php b/ProcessMaker/Http/Resources/ScreenVersion.php index cada12a20f..006b49a807 100644 --- a/ProcessMaker/Http/Resources/ScreenVersion.php +++ b/ProcessMaker/Http/Resources/ScreenVersion.php @@ -32,8 +32,10 @@ public function toArray($request) $nested = []; foreach ($this->parent->nestedScreenIds($processRequest) as $id) { - $nestedScreen = Screen::findOrFail($id); - $nested[] = $nestedScreen->versionFor($processRequest)->toArray(); + $nestedScreen = Screen::find($id); + if ($nestedScreen) { + $nested[] = $nestedScreen->versionFor($processRequest)->toArray(); + } } $screenVersion['nested'] = $nested; } @@ -64,9 +66,10 @@ private function setDefaultScreenForNestedScreens(array &$screenVersion): void foreach ($configArray as $key => $config) { foreach ($config['items'] as $itemKey => $item) { if (isset($item['component']) && $item['component'] === 'FormNestedScreen') { - $path = "{$key}.items.{$itemKey}.config.screen"; - if (!Arr::has($configArray, $path)) { + $configScreen = $item['config']['screen'] ?? null; + if (Screen::where('id', $configScreen)->doesntExist()) { $defaultScreenId = Screen::where('key', 'default-form-screen')->value('id'); + $path = "{$key}.items.{$itemKey}.config.screen"; Arr::set($configArray, $path, $defaultScreenId); } } From a6c4a831c5253de6a8499b548208e6a9717bed3d Mon Sep 17 00:00:00 2001 From: Eleazar Resendez Date: Thu, 20 Jul 2023 17:33:07 -0600 Subject: [PATCH 08/10] Install default screens in testing env --- ProcessMaker/Models/ProcessRequestToken.php | 2 +- database/processes/screens/default-display-screen.json | 1 - database/processes/screens/default-form-screen.json | 1 - tests/bootstrap.php | 3 ++- 4 files changed, 3 insertions(+), 4 deletions(-) diff --git a/ProcessMaker/Models/ProcessRequestToken.php b/ProcessMaker/Models/ProcessRequestToken.php index 641677c5b3..3797c805a5 100644 --- a/ProcessMaker/Models/ProcessRequestToken.php +++ b/ProcessMaker/Models/ProcessRequestToken.php @@ -327,7 +327,7 @@ public function getScreen(): Screen $screen = Screen::find($screenRef); if ($screen === null) { - $isManualTask = $this->getBpmnDefinition()->localName === 'manualTask'; + $isManualTask = $this->getBpmnDefinition()?->localName === 'manualTask'; $defaultScreen = $isManualTask ? 'default-display-screen' : 'default-form-screen'; $screen = Screen::firstWhere('key', $defaultScreen); } diff --git a/database/processes/screens/default-display-screen.json b/database/processes/screens/default-display-screen.json index 6c974ee4fe..8cd2ec1730 100644 --- a/database/processes/screens/default-display-screen.json +++ b/database/processes/screens/default-display-screen.json @@ -222,7 +222,6 @@ "watchers": [], "translations": null, "is_template": 0, - "asset_type": null, "categories": [ { "id": 1, diff --git a/database/processes/screens/default-form-screen.json b/database/processes/screens/default-form-screen.json index 1eb8082313..61b66b7cb9 100644 --- a/database/processes/screens/default-form-screen.json +++ b/database/processes/screens/default-form-screen.json @@ -406,7 +406,6 @@ "watchers": [], "translations": null, "is_template": 0, - "asset_type": null, "categories": [ { "id": 1, diff --git a/tests/bootstrap.php b/tests/bootstrap.php index dc72efebb8..7b776a28e7 100644 --- a/tests/bootstrap.php +++ b/tests/bootstrap.php @@ -16,7 +16,7 @@ // Cache with new config so we don't overwrite our local development database Artisan::call('config:cache', ['--env' => 'testing']); -//Ensure storage directory is linked +// Ensure storage directory is linked Artisan::call('storage:link', []); if (env('RUN_MSSQL_TESTS')) { @@ -95,6 +95,7 @@ Artisan::call('db:wipe', ['--database' => \DB::connection()->getName()]); Artisan::call('migrate:fresh', []); Artisan::call('db:seed', ['--class' => 'AnonymousUserSeeder']); + Artisan::call('db:seed', ['--class' => 'ScreenSystemSeeder']); \Illuminate\Foundation\Testing\RefreshDatabaseState::$migrated = true; From 87d3567083367e9e8f296f0bb3cfa62b74a4f76b Mon Sep 17 00:00:00 2001 From: Eleazar Resendez Date: Fri, 21 Jul 2023 11:02:45 -0600 Subject: [PATCH 09/10] Fix unit tests --- ProcessMaker/Models/ProcessRequestToken.php | 6 +++++- tests/bootstrap.php | 1 - 2 files changed, 5 insertions(+), 2 deletions(-) diff --git a/ProcessMaker/Models/ProcessRequestToken.php b/ProcessMaker/Models/ProcessRequestToken.php index 56547592b8..ae4fc1527d 100644 --- a/ProcessMaker/Models/ProcessRequestToken.php +++ b/ProcessMaker/Models/ProcessRequestToken.php @@ -321,7 +321,7 @@ public function getBpmnDefinition() /** * Get the form assigned to the task. */ - public function getScreen(): Screen + public function getScreen(): ?Screen { $definition = $this->getDefinition(); $screenRef = $definition['screenRef'] ?? null; @@ -345,6 +345,10 @@ public function getScreenVersion() { $screen = $this->getScreen(); + if ($screen === null) { + return null; + } + return $screen->versionFor($this->processRequest); } diff --git a/tests/bootstrap.php b/tests/bootstrap.php index 7b776a28e7..586fd87c58 100644 --- a/tests/bootstrap.php +++ b/tests/bootstrap.php @@ -95,7 +95,6 @@ Artisan::call('db:wipe', ['--database' => \DB::connection()->getName()]); Artisan::call('migrate:fresh', []); Artisan::call('db:seed', ['--class' => 'AnonymousUserSeeder']); - Artisan::call('db:seed', ['--class' => 'ScreenSystemSeeder']); \Illuminate\Foundation\Testing\RefreshDatabaseState::$migrated = true; From c1e5dc46983e6e6726ff096deddc3569ad9a0670 Mon Sep 17 00:00:00 2001 From: Eleazar Resendez Date: Fri, 21 Jul 2023 12:18:33 -0600 Subject: [PATCH 10/10] Fix unit tests --- ProcessMaker/Models/ProcessRequestToken.php | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/ProcessMaker/Models/ProcessRequestToken.php b/ProcessMaker/Models/ProcessRequestToken.php index ae4fc1527d..0913bc05bc 100644 --- a/ProcessMaker/Models/ProcessRequestToken.php +++ b/ProcessMaker/Models/ProcessRequestToken.php @@ -9,7 +9,6 @@ use Illuminate\Support\Facades\Notification; use Laravel\Scout\Searchable; use Log; -use ProcessMaker\Facades\WorkflowManager; use ProcessMaker\Facades\WorkflowUserManager; use ProcessMaker\Nayra\Bpmn\TokenTrait; use ProcessMaker\Nayra\Contracts\Bpmn\ActivityInterface; @@ -328,7 +327,14 @@ public function getScreen(): ?Screen $screen = Screen::find($screenRef); if ($screen === null) { - $isManualTask = $this->getBpmnDefinition()?->localName === 'manualTask'; + // Attempt to retrieve the localName property from the bpmnDefinition object. + // It uses a try-catch block to handle any exceptions that might occur, for example in test environments. + try { + $localName = $this->getBpmnDefinition()->localName; + } catch (\Throwable $t) { + $localName = null; + } + $isManualTask = $localName === 'manualTask'; $defaultScreen = $isManualTask ? 'default-display-screen' : 'default-form-screen'; $screen = Screen::firstWhere('key', $defaultScreen); }