{"config":{"dataTables":[{"tableName":"job_applications","read":false,"create":true,"update":false,"delete":false,"readCount":0,"createCount":1,"updateCount":0,"deleteCount":0}],"site":{}},"modules":[{"name":"SiteFooter","props":{},"schema":{"id":"footer_root","component":"div","className":"px-4 md:px-16 py-5 md:py-6 bg-gray-100 text-center","children":[{"id":"footer_text","component":"p","className":"text-xs md:text-sm text-gray-600","children":[{"id":"footer_text_1","component":"text","props":{"textContent":"Powered by "}},{"id":"footer_link_component","component":"a","props":{"href":"https://www.component.app/","target":"_blank"},"className":"text-[#1a661a] font-medium underline","children":[{"id":"footer_link_component_text","component":"text","props":{"textContent":"Component.app"}}]},{"id":"footer_text_2","component":"text","props":{"textContent":". Enjoy the nice kimbap and submit your feedback of the website "}},{"id":"footer_link_feedback","component":"a","props":{"href":"https://www.component.app/feedback/","target":"_blank"},"className":"text-[#1a661a] font-medium underline","children":[{"id":"footer_link_feedback_text","component":"text","props":{"textContent":"here"}}]}]}]}}],"pages":[{"id":"659e9f9ca3","path":"/","meta":{},"name":"Home","state":{},"methods":{},"lifecycles":{"onMounted":"","onBeforeUnmount":""},"schema":{"id":"a42bc73f7f","component":"div","className":"min-h-screen bg-white font-sans","children":[{"id":"hero_section","component":"div","className":"w-full","children":[{"id":"hero_img","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/a28bd8beb736c09d67bb5ac739dc7d94.png","alt":"Ayo Kimbap Hero"},"className":"w-full block"}]},{"id":"about_section","component":"div","className":"relative overflow-hidden h-[480px] md:h-[560px]","style":"min-height: 480px;\nmax-height: 700px;","children":[{"id":"about_bg","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/3b39f5a9da5ccfdc8643c0d8fae7c4e6.png","alt":"About background"},"className":"h-full object-cover block w-full p-0 m-0 text-left object-[30%_center]","style":{"minHeight":"480px","height":"100%","maxHeight":"700px"}},{"id":"about_overlay","component":"div","className":"absolute inset-0","style":{"background":"rgba(0,0,0,0.45)"}},{"id":"about_content","component":"div","className":"absolute inset-0 z-10 text-white text-center flex flex-col justify-end px-6 md:px-16 items-center bottom-20","children":[{"id":"about_heading","component":"h2","className":"text-2xl md:text-4xl font-bold mb-4","children":[{"id":"413a0cf086","component":"text","props":{"textContent":"About Us"}}]},{"id":"about_body","component":"p","className":"text-base md:text-lg leading-relaxed max-w-sm md:max-w-2xl mx-auto","children":[{"id":"2d3bd51cbf","component":"text","props":{"textContent":"Ayó Kimbap brings a fresh, healthy twist to original Korean kimbap — crafted for Singapore's local taste. \"real. fresh & tasty\""}}]}]}]},{"id":"menu_section","component":"div","className":"px-4 md:px-16 py-6 md:py-12 text-white text-center bg-[#1a661a]","style":{"background":"#1a661a"},"children":[{"id":"menu_heading","component":"h2","className":"text-2xl md:text-3xl font-bold mb-4 md:mb-6","children":[{"id":"19f39b8d14","component":"text","props":{"textContent":"Popular Menu Items"}}]},{"id":"menu_grid","component":"div","className":"grid grid-cols-2 md:grid-cols-4 gap-3 md:gap-5 mb-5 max-w-4xl mx-auto","children":[{"id":"menu_img1","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/f3471f73b9c3fc15bfa3453a5e8897f3.jpg","alt":"Menu item 1"},"className":"w-full h-52 md:h-64 object-cover rounded-lg"},{"id":"menu_img2","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/40efb8dc9cf68a5b0985e1f602cd0096.jpg","alt":"Menu item 2"},"className":"w-full h-52 md:h-64 object-cover rounded-lg"},{"id":"menu_img3","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/2fbeccc0d94843d3094aa75da37c5dd4.jpg","alt":"Menu item 3"},"className":"w-full h-52 md:h-64 object-cover rounded-lg"},{"id":"menu_img4","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/33083c50b8cebb1777c5d5aa688c2d53.jpg","alt":"Menu item 4"},"className":"w-full h-52 md:h-64 object-cover rounded-lg"}]},{"id":"menu_video_wrap","component":"div","className":"relative w-full mb-5 min-h-60 max-w-3xl mx-auto","style":{"paddingTop":"56.25%"},"children":[{"id":"menu_iframe","component":"iframe","className":"absolute inset-0 w-full h-full rounded-lg","props":{"src":"https://www.youtube.com/embed/pSDDynQWZ2g?si=uDp8wKFDeMVEt0Vt","frameborder":"0","allow":"accelerometer; autoplay; clipboard-write; encrypted-media; gyroscope; picture-in-picture","allowfullscreen":true,"title":"Ayo Kimbap Video"}}]},{"id":"menu_btn_pickup","component":"a","props":{"href":"https://s3.iorderfrom.com/ayokimbap/store/home","target":"_blank"},"className":"block w-full md:w-auto md:inline-block md:px-10 py-3 rounded-lg font-bold text-center text-black mb-3 text-sm md:text-base bg-[#FFD700] max-w-md mx-auto md:mx-2","style":{"background":"#FFD700"},"children":[{"id":"7ffbd5a86c","component":"text","props":{"textContent":"Order Now (Self Pick-up)  在线点餐（自提）"}}]},{"id":"menu_btn_delivery","component":"a","props":{"href":"https://ayokimbap.oddle.me/en_SG","target":"_blank"},"className":"block w-full md:w-auto md:inline-block md:px-10 py-3 rounded-lg font-bold text-center text-black text-sm md:text-base bg-[#FFD700] max-w-md mx-auto md:mx-2","style":{"background":"#FFD700"},"children":[{"id":"5761dd6c20","component":"text","props":{"textContent":"Order Now (Delivery) 在线点餐（送货上门）"}}]}]},{"id":"gallery_section","component":"div","className":"px-4 md:px-16 py-6 md:py-12 bg-white text-center","children":[{"id":"gallery_heading","component":"h2","className":"text-2xl md:text-3xl font-bold mb-4 md:mb-6 text-[#1a661a]","style":{"color":"#1a661a"},"children":[{"id":"caf13c7f3b","component":"text","props":{"textContent":"Gallery - Star Vista Mall"}}]},{"id":"gallery_grid","component":"div","className":"grid grid-cols-2 md:grid-cols-4 gap-3 md:gap-5 max-w-5xl mx-auto","children":[{"id":"gal_img1","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/fccfd909f7e1e3b18d8cde926dfcb7c0.png","alt":"Gallery 1"},"className":"w-full h-40 md:h-56 object-cover rounded-lg"},{"id":"gal_img2","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/8c9eb0e6fab477630e1557b67758acb8.png","alt":"Gallery 2"},"className":"w-full h-40 md:h-56 object-cover rounded-lg"},{"id":"gal_img3","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/02f8d71292c6949d7be40c24e7d6cf2f.png","alt":"Gallery 3"},"className":"w-full h-40 md:h-56 object-cover rounded-lg"},{"id":"gal_img4","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/6c273fb8bdedab0517ac37f59f19403f.png","alt":"Gallery 4"},"className":"w-full h-40 md:h-56 object-cover rounded-lg"}]}]},{"id":"gallery2_section","component":"div","className":"px-4 md:px-16 py-6 md:py-12 bg-gray-50 text-center","children":[{"id":"gallery2_heading","component":"h2","className":"text-2xl md:text-3xl font-bold mb-4 md:mb-6 text-[#1a661a]","style":{"color":"#1a661a"},"children":[{"id":"gallery2_heading_text","component":"text","props":{"textContent":"Gallery - Jurong Point Mall"}}]},{"id":"gallery2_grid","component":"div","className":"grid grid-cols-2 md:grid-cols-4 gap-3 md:gap-5 max-w-5xl mx-auto","children":[{"id":"gal2_img1","component":"img","props":{"src":"https://d9ba37f1-0fe3-42fd-b520-0dda05185cb3-resources-prod.s3.ap-southeast-1.amazonaws.com/2026/05/22/9a4edf2eaacd5eb68e70392097e92b90.jpg","alt":"Store 2 Gallery 1"},"className":"w-full h-40 md:h-56 object-cover rounded-lg"},{"id":"gal2_img2","component":"img","props":{"src":"https://d9ba37f1-0fe3-42fd-b520-0dda05185cb3-resources-prod.s3.ap-southeast-1.amazonaws.com/2026/05/22/57d5fc811c42119b32d7b05c2888a29a.jpg","alt":"Store 2 Gallery 2"},"className":"w-full h-40 md:h-56 object-cover rounded-lg"},{"id":"gal2_img3","component":"img","props":{"src":"https://d9ba37f1-0fe3-42fd-b520-0dda05185cb3-resources-prod.s3.ap-southeast-1.amazonaws.com/2026/05/22/26161611e3faa216556efd063494d1bb.jpg","alt":"Store 2 Gallery 3"},"className":"w-full h-40 md:h-56 object-cover rounded-lg"},{"id":"gal2_img4","component":"img","props":{"src":"https://d9ba37f1-0fe3-42fd-b520-0dda05185cb3-resources-prod.s3.ap-southeast-1.amazonaws.com/2026/05/22/f25b5da8589a61519e0a34e8e3b89cfd.jpg","alt":"Store 2 Gallery 4"},"className":"w-full h-40 md:h-56 object-cover rounded-lg"}]}]},{"id":"promos_section","component":"div","className":"px-4 md:px-16 py-6 md:py-12 text-white text-center bg-[#1a661a]","style":{"background":"#1a661a"},"children":[{"id":"promos_heading","component":"h2","className":"text-2xl md:text-3xl font-bold mb-4 md:mb-6","children":[{"id":"64916e1162","component":"text","props":{"textContent":"Current Promotions"}}]},{"id":"promo_card1","component":"div","className":"bg-white rounded-xl shadow-md overflow-hidden mb-4 border-2 border-[#FFD700] text-left max-w-2xl mx-auto","children":[{"id":"promo_card1_text_block","component":"div","className":"px-4 pt-4 pb-2 text-center","children":[{"id":"promo_card1_title","component":"h3","className":"text-lg md:text-xl font-bold mb-2 text-[#E6A500]","children":[{"id":"6b0d2572a3","component":"text","props":{"textContent":"🎉 Student Meal"}}]},{"id":"promo_card1_line1","component":"p","className":"text-sm text-gray-700 mb-1","children":[{"id":"f58eb0af58","component":"text","props":{"textContent":"Mon-Fri: 1:30PM - 9:00PM"}}]},{"id":"promo_card1_line2","component":"p","className":"text-sm text-gray-700 mb-3","children":[{"id":"3e779b5c95","component":"text","props":{"textContent":"Sat & Sun: All Day"}}]}]},{"id":"promo_card1_img","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/313821b6305e3afd737fc4b7a53c1b50.png","alt":"Student Meal"},"className":"w-4/5 mx-auto rounded-lg object-cover block"},{"id":"promo_card1_many_more","component":"div","className":"px-4 py-4","children":[{"id":"promo_card2_title_inlined","component":"h3","className":"text-lg font-bold mb-2 text-[#E6A500] text-center","children":[{"id":"d11dab01b6","component":"text","props":{"textContent":"🎉 Many more..."}}]},{"id":"promo_card2_body_inlined","component":"p","className":"text-sm text-gray-700 text-center","children":[{"id":"ec2a5c1384","component":"text","props":{"textContent":"Please refer to on-site promotion in our different outlets, thank you!"}}]}]}]}]},{"id":"membership_section","component":"div","className":"px-4 md:px-16 py-6 md:py-12 bg-white text-center","children":[{"id":"membership_heading","component":"h2","className":"text-2xl md:text-3xl font-bold mb-4 md:mb-6 text-[#1a661a]","style":{"color":"#1a661a"},"children":[{"id":"49a2ecf73e","component":"text","props":{"textContent":"Membership Program"}}]},{"id":"membership_card","component":"div","className":"rounded-lg p-5 md:p-8 text-white text-left shadow-md bg-[#1a661a] max-w-2xl mx-auto","style":{"background":"#1a661a"},"children":[{"id":"membership_text1","component":"p","className":"font-bold text-base md:text-lg mb-3 text-[#FFD700]","style":{"color":"#FFD700"},"children":[{"id":"6fdcc864e9","component":"text","props":{"textContent":"Free Sign-up as Ayó Member! Enjoy Exclusive Privileges: 🎉"}}]},{"id":"membership_perk1","component":"p","className":"text-sm md:text-base mb-2","children":[{"id":"5b8435433b","component":"text","props":{"textContent":"1. Get 50 Ayó Points when sign-up"}}]},{"id":"membership_perk2","component":"p","className":"text-sm md:text-base mb-2","children":[{"id":"a4c6cca143","component":"text","props":{"textContent":"2. Redeem rewards : 100 Points=1 Kimbap"}}]},{"id":"membership_perk3","component":"p","className":"text-sm md:text-base mb-2","children":[{"id":"ecd27113d8","component":"text","props":{"textContent":"3.Refer friends: Earn 30 Ayó Points+8% cash-back (Ayó Coins) on his/her spend with no cap!"}}]},{"id":"membership_perk4","component":"p","className":"text-sm md:text-base mb-4","children":[{"id":"63ca2c8321","component":"text","props":{"textContent":"More perks coming soon..."}}]},{"id":"membership_btn","component":"a","props":{"href":"https://s3.iorderfrom.com/ayokimbap/store/register?accountcode=ayokimbap","target":"_blank"},"className":"block w-full md:w-64 mx-auto py-3 rounded-lg font-bold text-center text-black text-sm md:text-base bg-[#FFD700]","style":{"background":"#FFD700"},"children":[{"id":"1587b55351","component":"text","props":{"textContent":"Join Membership"}}]}]}]},{"id":"join_section","component":"div","className":"px-4 md:px-16 py-6 md:py-12 text-white text-center bg-[#1a661a]","style":{"background":"#1a661a"},"children":[{"id":"join_heading","component":"h2","className":"text-2xl md:text-3xl font-bold mb-4 md:mb-6","children":[{"id":"2c5e40b420","component":"text","props":{"textContent":"Join Our Team"}}]},{"id":"join_card","component":"div","className":"bg-white text-left rounded-lg shadow-md p-5 md:p-8 max-w-2xl mx-auto","children":[{"id":"join_card_title","component":"h3","className":"text-xl md:text-2xl font-bold mb-2 text-[#1a661a]","style":{"color":"#1a661a"},"children":[{"id":"b5430750e0","component":"text","props":{"textContent":"Now Hiring!"}}]},{"id":"join_card_body","component":"p","className":"text-sm md:text-base text-gray-700 mb-4","children":[{"id":"e749369943","component":"text","props":{"textContent":"We're looking for passionate team members to join our growing family. Positions available for kitchen staff and servers."}}]},{"id":"join_card_btn","component":"button","className":"w-full md:w-48 py-3 rounded-lg font-bold text-white text-sm md:text-base bg-[#1a661a] block mx-auto","style":{"background":"#1a661a"},"events":{"onClick":"() => $app.navigate('/hiring')"},"children":[{"id":"c959dabcc9","component":"text","props":{"textContent":"Apply Now"}}]}]}]},{"id":"franchise_section","component":"div","className":"px-4 md:px-16 py-6 md:py-12 bg-white text-center","children":[{"id":"franchise_heading","component":"h2","className":"text-2xl md:text-3xl font-bold mb-4 md:mb-6 text-[#1a661a]","style":{"color":"#1a661a"},"children":[{"id":"9abb2400a5","component":"text","props":{"textContent":"Franchise Opportunities"}}]},{"id":"franchise_card","component":"div","className":"rounded-lg p-5 md:p-8 bg-gray-50 shadow-sm text-gray-700 text-base md:text-lg max-w-2xl mx-auto","children":[{"id":"fb0c1eadfa","component":"text","props":{"textContent":"Franchise Opportunities Coming Soon 🚀"}}]}]},{"id":"contact_section","component":"div","className":"px-4 md:px-16 py-6 md:py-12 text-white bg-[#1a661a]","style":{"background":"#1a661a"},"children":[{"id":"contact_heading","component":"h2","className":"text-2xl md:text-3xl font-bold mb-4 md:mb-6 text-center","children":[{"id":"10dea77482","component":"text","props":{"textContent":"Contact Information"}}]},{"id":"contact_addr1","component":"div","className":"flex items-start gap-3 mb-3 text-left max-w-xl mx-auto md:text-base","children":[{"id":"contact_addr1_icon","component":"icon","props":{"size":18,"icon":"mdi:store"},"className":"text-[#FFD700] mt-0.5 shrink-0"},{"id":"contact_addr1_text","component":"span","className":"text-sm md:text-base","children":[{"id":"4204fca62c","component":"text","props":{"textContent":"MallSG 1 Jurong West Central 2 Jurong Point, #01-K2, Singapore 648886"}}]}]},{"id":"contact_addr2","component":"div","className":"flex items-start gap-3 mb-3 text-left max-w-xl mx-auto","children":[{"id":"contact_addr2_icon","component":"icon","props":{"size":18,"icon":"mdi:store"},"className":"text-[#FFD700] mt-0.5 shrink-0"},{"id":"contact_addr2_text","component":"span","className":"text-sm md:text-base","children":[{"id":"b2572a2c13","component":"text","props":{"textContent":"1 Vista Exchange Green, #02-05 The Star Vista, Singapore 138617"}}]}]},{"id":"contact_phone","component":"div","className":"flex items-center gap-3 mb-3 text-left max-w-xl mx-auto","children":[{"id":"contact_phone_icon","component":"icon","props":{"size":18,"icon":"mdi:phone"},"className":"text-[#FFD700] shrink-0"},{"id":"contact_phone_text","component":"span","className":"text-sm md:text-base font-medium","children":[{"id":"76344fc134","component":"text","props":{"textContent":"+65 8926 6111"}}]}]},{"id":"contact_email","component":"div","className":"flex items-center gap-3 mb-4 text-left max-w-xl mx-auto","children":[{"id":"contact_email_icon","component":"icon","props":{"size":18,"icon":"mdi:email"},"className":"text-[#FFD700] shrink-0"},{"id":"contact_email_text","component":"span","className":"text-sm md:text-base","children":[{"id":"f282bb6f6a","component":"text","props":{"textContent":"Ayo.kimbap@gmail.com"}}]}]},{"id":"contact_follow_heading","component":"p","className":"font-bold text-base md:text-lg mb-3 text-[#FFD700] text-center","style":{"color":"#FFD700"},"children":[{"id":"a65b17fe7a","component":"text","props":{"textContent":"Follow Us & Connect"}}]},{"id":"social_icons_row","component":"div","className":"flex justify-center gap-6 md:gap-10 mb-5","children":[{"id":"social_instagram","component":"a","props":{"href":"https://www.instagram.com/ayo_kimbap?igsh=MWJ5Z25wcjduM3hx&utm_source=qr","target":"_blank","title":"Instagram"},"className":"flex flex-col items-center gap-1","children":[{"id":"ig_img","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/ec16124424e9231e944993a322e87f77.png","alt":"Instagram"},"className":"w-12 h-12 md:w-16 md:h-16 rounded-xl object-cover"},{"id":"ig_label2","component":"span","className":"text-xs","children":[{"id":"7ff0b8db90","component":"text","props":{"textContent":"Instagram"}}]}]},{"id":"social_xhs","component":"a","props":{"href":"https://www.xiaohongshu.com/user/profile/67bca5e8000000000a03e281?xsec_token=YBi1KqZgVGMF9s6HPT4s3EWk3vZYDsoh6AtXVcLghjw2Q=&xsec_source=app_share&xhsshare=WeixinSession&appuid=67bca5e8000000000a03e281&apptime=1762330295&share_id=2aa10277d3954298b9192ba56a93884e","target":"_blank","title":"Xiaohongshu"},"className":"flex flex-col items-center gap-1","children":[{"id":"xhs_img","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/b4e038d81ee04230a095ba0484a4928f.png","alt":"小红书"},"className":"w-12 h-12 md:w-16 md:h-16 rounded-xl object-cover"},{"id":"xhs_label2","component":"span","className":"text-xs","children":[{"id":"fa39b2c47f","component":"text","props":{"textContent":"小红书"}}]}]},{"id":"social_tiktok","component":"a","props":{"href":"https://www.tiktok.com/@ayo.kimbap?_r=1&_t=ZS-918nJmPd4QU","target":"_blank","title":"TikTok"},"className":"flex flex-col items-center gap-1","children":[{"id":"tiktok_img","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/71196767fa488770ec972cd6b81fcf05.png","alt":"TikTok"},"className":"w-12 h-12 md:w-16 md:h-16 rounded-xl object-cover"},{"id":"tiktok_label2","component":"span","className":"text-xs","children":[{"id":"2ee6818176","component":"text","props":{"textContent":"TikTok"}}]}]},{"id":"social_whatsapp","component":"a","props":{"href":"https://wa.me/6589266111","target":"_blank","title":"WhatsApp"},"className":"flex flex-col items-center gap-1","children":[{"id":"wa_img","component":"img","props":{"src":"https://d9ba37f1-0fe3-42fd-b520-0dda05185cb3-resources-prod.s3.ap-southeast-1.amazonaws.com/2026/05/21/0aa5c9e5378a35d6d3f64745a082090c.jpeg","alt":"WhatsApp"},"className":"w-12 h-12 md:w-16 md:h-16 rounded-xl object-cover"},{"id":"wa_label2","component":"span","className":"text-xs","children":[{"id":"78b0991e68","component":"text","props":{"textContent":"WhatsApp"}}]}]}]},{"id":"contact_scan_label","component":"p","className":"text-sm mb-3 justify-center text-center","children":[{"id":"58fc6ebfd5","component":"text","props":{"textContent":"Scan WhatsApp QR code for instant ordering"}}]},{"id":"contact_qr_link","component":"a","props":{"href":"https://wa.me/6589266111","target":"_blank"},"className":"block text-left justify-center","children":[{"id":"contact_qr_img","component":"img","props":{"src":"https://componentplatform-resources-prod.s3.ap-southeast-1.amazonaws.com/2025/11/07/d156aa20171551a459e6c00b91bc635e.png","alt":"WhatsApp QR Code"},"className":"w-40 h-40 md:w-52 md:h-52 object-contain rounded-lg mx-auto justify-center"}]}]},{"id":"site_footer","component":"SiteFooter"}]}},{"id":"hiring_page","name":"Hiring","path":"hiring","state":{"fullName":"","email":"","phone":"","availableStart":"","experience":"","whyUs":"","resumeUrl":"","resumeFile":null,"submitting":false,"uploadingResume":false,"submitted":false,"errorMsg":""},"methods":{"handleResumeChange":{"params":["e"],"code":"const file = e.target.files?.[0]\nif (!file) return\nsetState({ uploadingResume: true, resumeFile: file })\ntry {\n  const url = await $app.uploadFile(file)\n  setState({ resumeUrl: url, uploadingResume: false })\n  $app.message.success('Resume uploaded successfully')\n} catch (err) {\n  setState({ uploadingResume: false, resumeFile: null })\n  $app.message.error('Resume upload failed. Please try again.')\n}"},"submitApplication":{"params":[],"code":"setState({ errorMsg: '' })\nif (!fullName.trim()) { $app.message.error('Full name is required'); return }\nif (!email.trim()) { $app.message.error('Email address is required'); return }\nconst emailRegex = /^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/\nif (!emailRegex.test(email.trim())) { $app.message.error('Please enter a valid email address'); return }\nif (!phone.trim()) { $app.message.error('Phone number is required'); return }\nif (!availableStart) { $app.message.error('Available start date is required'); return }\nif (!whyUs.trim()) { $app.message.error('Please tell us why you want to work here'); return }\n\nsetState({ submitting: true })\ntry {\n  const submissionDate = new Date().toISOString().slice(0, 10)\n  await $app.post('/create_items', {\n    tableName: 'job_applications',\n    items: [{\n      full_name: fullName.trim(),\n      email: email.trim(),\n      phone: phone.trim(),\n      available_start: availableStart,\n      experience: experience.trim(),\n      why_us: whyUs.trim(),\n      resume: resumeUrl || '',\n      submission_date: submissionDate,\n      status: 'pending'\n    }]\n  })\n\n  // Send notification email to HR team\n  const resume = resumeUrl\n  const resumeInfo = resume\n    ? `<p><strong>Resume:</strong> <a href=\"${resume}\" target=\"_blank\">View Resume</a></p>`\n    : '<p><strong>Resume:</strong> No resume uploaded</p>'\n\n  const htmlContent = `\n    <!DOCTYPE html>\n    <html>\n    <head>\n      <style>\n        body { font-family: Arial, sans-serif; line-height: 1.6; color: #333; }\n        .header { background-color: #1a661a; color: white; padding: 20px; text-align: center; }\n        .content { padding: 20px; }\n        .info-section { background-color: #f8f9fa; padding: 15px; margin: 10px 0; border-radius: 5px; }\n        .footer { background-color: #f1f1f1; padding: 10px; text-align: center; font-size: 12px; color: #666; }\n      </style>\n    </head>\n    <body>\n      <div class=\"header\">\n        <h1>New Job Application - Ayo Kimbap</h1>\n      </div>\n      <div class=\"content\">\n        <h2>New Employment Application Received</h2>\n        <p>A new job application has been submitted through the Ayo Kimbap hiring portal.</p>\n        \n        <div class=\"info-section\">\n          <h3>Candidate Information:</h3>\n          <p><strong>Full Name:</strong> ${fullName.trim()}</p>\n          <p><strong>Email:</strong> ${email.trim()}</p>\n          <p><strong>Phone:</strong> ${phone.trim()}</p>\n          <p><strong>Available Start Date:</strong> ${new Date(availableStart).toLocaleDateString()}</p>\n        </div>\n        \n        <div class=\"info-section\">\n          <h3>Application Details:</h3>\n          <p><strong>Previous Experience:</strong></p>\n          <p>${experience ? experience.trim() : 'No previous experience provided'}</p>\n          \n          <p><strong>Why they want to work at Ayo Kimbap:</strong></p>\n          <p>${whyUs.trim()}</p>\n          \n          ${resumeInfo}\n          ${resume ? `<p>If you can't download resume, please click this url: ${resume}</p>` : ''}\n        </div>\n        \n        <div class=\"info-section\">\n          <p><strong>Application Status:</strong> Pending Review</p>\n          <p><strong>Submitted On:</strong> ${new Date().toLocaleString()}</p>\n        </div>\n        \n        <p>Please review this application and contact the candidate within 2-3 business days.</p>\n      </div>\n      <div class=\"footer\">\n        <p>This email was automatically generated by the Ayo Kimbap Hiring System</p>\n      </div>\n    </body>\n    </html>\n  `\n\n  // pdfHtml: a simple cover page referencing the uploaded resume (not the form as PDF)\n  const pdfHtml = `\n    <!DOCTYPE html>\n    <html>\n    <head><style>body { font-family: Arial, sans-serif; padding: 40px; color: #333; } h1 { color: #1a661a; }</style></head>\n    <body>\n      <h1>Job Application Summary — Ayo Kimbap</h1>\n      <p><strong>Candidate:</strong> ${fullName.trim()}</p>\n      <p><strong>Email:</strong> ${email.trim()}</p>\n      <p><strong>Phone:</strong> ${phone.trim()}</p>\n      <p><strong>Available Start Date:</strong> ${new Date(availableStart).toLocaleDateString()}</p>\n      <p><strong>Submitted On:</strong> ${new Date().toLocaleString()}</p>\n      <hr/>\n      ${resume ? `<p><strong>Resume file uploaded by candidate:</strong></p><p><a href=\"${resume}\">${resume}</a></p>` : '<p><strong>Resume:</strong> No resume uploaded</p>'}\n    </body>\n    </html>\n  `\n\n  await $app.post('/pdf/send_pdf_html_to_email', {\n    email: 'ayo.kimbap@gmail.com',\n    subject: `New Job Application - ${fullName.trim()}`,\n    emailHtml: htmlContent,\n    pdfHtml: pdfHtml,\n    pdfFilename: `application_${fullName.trim().replace(/ /g, '_')}_${submissionDate}.pdf`\n  })\n\n  setState({ submitting: false, submitted: true, fullName: '', email: '', phone: '', availableStart: '', experience: '', whyUs: '', resumeUrl: '', resumeFile: null })\n  $app.message.success('Thank you for your application! We will review it within 2-3 business days and contact you soon.')\n} catch (err) {\n  setState({ submitting: false })\n  setState({ errorMsg: 'Failed to submit application. Please try again.' })\n}"}},"schema":{"id":"hiring_root","component":"div","className":"min-h-screen bg-gray-100 font-sans","children":[{"id":"hiring_header","component":"div","className":"w-full flex items-center justify-center text-white text-center bg-[#1a661a] p-6","style":{"background":"#1a661a","minHeight":"80px"},"children":[{"id":"hiring_header_text","component":"h1","className":"text-xl font-bold leading-tight","children":[{"id":"cc9a90e6b0","component":"text","props":{"textContent":"Join Our Team at Ayo Kimbap"}}]}]},{"id":"hiring_back_row","component":"div","className":"px-4 pt-4 pb-0 max-w-lg mx-auto","children":[{"id":"hiring_back_btn","component":"button","className":"text-sm font-medium flex items-center gap-1 text-[#1a661a]","style":{"color":"#1a661a"},"events":{"onClick":"() => $app.navigate('/')"},"children":[{"id":"back_icon","component":"icon","props":{"name":"ArrowLeft","size":16}},{"id":"3a0e0568fe","component":"text","props":{"textContent":"Back to Home"}}]}]},{"id":"hiring_main","component":"div","className":"max-w-lg mx-auto px-4 py-6 space-y-5","children":[{"id":"hiring_intro_card","component":"div","className":"bg-white rounded-lg shadow-sm p-5 text-center","children":[{"id":"hiring_intro_title","component":"h2","className":"text-xl font-bold mb-2 text-[#1a661a]","style":{"color":"#1a661a"},"children":[{"id":"03d5398255","component":"text","props":{"textContent":"Employment Application"}}]},{"id":"hiring_intro_body","component":"p","className":"text-sm text-gray-600","children":[{"id":"6082468b4d","component":"text","props":{"textContent":"We're excited to learn more about you! Please fill out the form below to apply for a position at our restaurant."}}]}]},{"id":"hiring_success_banner","component":"div","condition":"submitted","className":"bg-green-50 border border-green-300 rounded-lg p-4 text-center text-green-800 text-sm font-medium","children":[{"id":"774d07fddd","component":"text","props":{"textContent":"Thank you for your application! We will review it within 2-3 business days and contact you soon."}}]},{"id":"hiring_error_banner","component":"div","condition":"errorMsg","className":"bg-red-50 border border-red-300 rounded-lg p-4 text-center text-red-700 text-sm","children":[{"id":"1a72344406","component":"text","props":{"textContent":"{{ errorMsg }}"}}]},{"id":"hiring_form_card","component":"div","className":"bg-white rounded-lg shadow-sm p-5 space-y-4","children":[{"id":"field_name","component":"div","className":"flex flex-col gap-1","children":[{"id":"label_name","component":"label","className":"text-sm font-semibold text-gray-700","children":[{"id":"32201fadd4","component":"text","props":{"textContent":"Full Name "}},{"id":"req_name","component":"span","className":"text-red-500","children":[{"id":"a7140af3c9","component":"text","props":{"textContent":"*"}}]}]},{"id":"input_name","component":"input","model":"fullName","className":"border border-gray-300 rounded-lg px-3 py-2 text-sm w-full focus:outline-none focus:border-green-600","props":{"type":"text","placeholder":"Enter your full name"}}]},{"id":"field_email","component":"div","className":"flex flex-col gap-1","children":[{"id":"label_email","component":"label","className":"text-sm font-semibold text-gray-700","children":[{"id":"d2d408ebb5","component":"text","props":{"textContent":"Email Address "}},{"id":"req_email","component":"span","className":"text-red-500","children":[{"id":"ba6d2cba57","component":"text","props":{"textContent":"*"}}]}]},{"id":"input_email","component":"input","model":"email","className":"border border-gray-300 rounded-lg px-3 py-2 text-sm w-full focus:outline-none focus:border-green-600","props":{"type":"email","placeholder":"Enter your email address"}}]},{"id":"field_phone","component":"div","className":"flex flex-col gap-1","children":[{"id":"label_phone","component":"label","className":"text-sm font-semibold text-gray-700","children":[{"id":"dc1649e4a5","component":"text","props":{"textContent":"Phone Number "}},{"id":"req_phone","component":"span","className":"text-red-500","children":[{"id":"6a9546711c","component":"text","props":{"textContent":"*"}}]}]},{"id":"input_phone","component":"input","model":"phone","className":"border border-gray-300 rounded-lg px-3 py-2 text-sm w-full focus:outline-none focus:border-green-600","props":{"type":"text","placeholder":"Enter your phone number"}}]},{"id":"field_start","component":"div","className":"flex flex-col gap-1","children":[{"id":"label_start","component":"label","className":"text-sm font-semibold text-gray-700","children":[{"id":"d096f8e510","component":"text","props":{"textContent":"Available Start Date "}},{"id":"req_start","component":"span","className":"text-red-500","children":[{"id":"eedc11dfcd","component":"text","props":{"textContent":"*"}}]}]},{"id":"input_start","component":"input","model":"availableStart","className":"border border-gray-300 rounded-lg px-3 py-2 text-sm w-full focus:outline-none focus:border-green-600","props":{"type":"date","placeholder":"Select your available start date"}}]},{"id":"field_experience","component":"div","className":"flex flex-col gap-1","children":[{"id":"label_exp","component":"label","className":"text-sm font-semibold text-gray-700","children":[{"id":"6dd3a21485","component":"text","props":{"textContent":"Previous Experience "}},{"id":"opt_exp","component":"span","className":"text-gray-400 font-normal text-xs","children":[{"id":"aebb93f3d0","component":"text","props":{"textContent":"(optional)"}}]}]},{"id":"input_exp","component":"textarea","model":"experience","className":"border border-gray-300 rounded-lg px-3 py-2 text-sm w-full focus:outline-none focus:border-green-600 resize-none","props":{"rows":4,"placeholder":"Please describe your relevant work experience, especially in food service or hospitality..."}}]},{"id":"field_why","component":"div","className":"flex flex-col gap-1","children":[{"id":"label_why","component":"label","className":"text-sm font-semibold text-gray-700","children":[{"id":"b83233098f","component":"text","props":{"textContent":"Why Work Here? "}},{"id":"req_why","component":"span","className":"text-red-500","children":[{"id":"38d5425cd7","component":"text","props":{"textContent":"*"}}]}]},{"id":"input_why","component":"textarea","model":"whyUs","className":"border border-gray-300 rounded-lg px-3 py-2 text-sm w-full focus:outline-none focus:border-green-600 resize-none","props":{"rows":4,"placeholder":"Tell us why you want to work at Ayo Kimbap and what you can bring to our team..."}}]},{"id":"field_resume","component":"div","className":"flex flex-col gap-1","children":[{"id":"label_resume","component":"label","className":"text-sm font-semibold text-gray-700","children":[{"id":"c3c1acd071","component":"text","props":{"textContent":"Upload Resume "}},{"id":"opt_resume","component":"span","className":"text-gray-400 font-normal text-xs","children":[{"id":"c01c97f171","component":"text","props":{"textContent":"(optional)"}}]}]},{"id":"input_resume_wrap","component":"div","className":"relative","children":[{"id":"input_resume","component":"input","className":"border border-gray-300 rounded-lg px-3 py-2 text-sm w-full","props":{"type":"file","accept":".pdf,.doc,.docx"},"events":{"onChange":"(e) => handleResumeChange(e)"}},{"id":"resume_uploading_indicator","component":"div","condition":"uploadingResume","className":"text-xs text-green-700 mt-1","children":[{"id":"cfa765fcf3","component":"text","props":{"textContent":"Uploading..."}}]}]},{"id":"resume_uploaded_text","component":"div","condition":"resumeUrl","className":"text-xs text-green-700 mt-1","children":[{"id":"f538f9bc89","component":"text","props":{"textContent":"✅ Resume uploaded successfully"}}]},{"id":"resume_helper","component":"p","className":"text-xs text-gray-500 mt-1","children":[{"id":"05f3dbbdde","component":"text","props":{"textContent":"Accepted formats: PDF, DOC, DOCX (max 5MB)"}}]}]},{"id":"form_helper_note","component":"p","className":"text-xs text-gray-500 border-t border-gray-100 pt-3","children":[{"id":"0579039229","component":"text","props":{"textContent":"📋 Please ensure all required fields are completed. Accepted file formats for resume: PDF, DOC, DOCX (max 5MB)"}}]},{"id":"submit_btn","component":"button","className":"w-full py-3 rounded-lg font-bold text-white text-sm disabled:opacity-60 bg-[#1a661a]","style":{"background":"#1a661a"},"props":{"disabled":"{{ submitting }}"},"events":{"onClick":"() => submitApplication()"},"children":[{"id":"89ebac4362","component":"text","props":{"textContent":"{{ submitting ? 'Submitting...' : 'Submit Application' }}"}}]}]},{"id":"what_next_card","component":"div","className":"bg-white rounded-lg shadow-sm p-5","children":[{"id":"what_next_title","component":"h3","className":"text-base font-bold mb-3 text-[#1a661a] justify-start w-full text-center","style":{"color":"#1a661a"},"children":[{"id":"8cb23e6ea2","component":"text","props":{"textContent":"What Happens Next?"},"className":"justify-start text-center"}]},{"id":"what_next_body","component":"p","className":"text-sm text-gray-600 leading-relaxed","children":[{"id":"a38752c19d","component":"text","props":{"textContent":"After submitting your application, our hiring team will review it within 2-3 business days. If you're a good fit, we'll contact you to schedule an interview. Thank you for your interest in joining Ayo Kimbap!"}}]}]}]},{"id":"site_footer","component":"SiteFooter"}]}}],"features":{"authentication":{"isEnabled":false,"pages":{}},"permission":{"isEnabled":true},"pdf":{"isEnabled":true,"templates":[{"name":"","contentPage":"","headerfooter":{"isDisplay":true,"headerTemplate":"","footerTemplate":"<div style=\"font-size: 10px; width: 100%; text-align: center; padding: 10px;\">Page <span class=\"pageNumber\"></span> of <span class=\"totalPages\"></span></div>\""},"paper":{"size":"a4","landscape":"false","scale":1}}]},"chatbot":{"isEnabled":true,"ai":[{"componentId":"","assistantId":"","webhookVerifyToken":""}]},"oauth2":{"isEnabled":false},"stripePayment":{"isEnabled":true,"configurations":{"environments":"sandbox","defaultCurrency":"usd","accountCountry":"US","enabledScenarios":["one_time_custom","one_time_checkout","save_payment_method","subscriptions","refunds_disputes"],"allowedPaymentMethods":["card","google_pay","apple_pay","link","express_checkout"],"requireBillingAddress":false,"requireShippingAddress":false,"checkout":{"collectPhoneNumber":false,"allowPromotionCodes":false,"pageConfigs":{"requiredComponents":["stripe-elements","payment-form","order-summary"],"optionalComponents":["shipping-form","billing-form","promo-code"],"styling":{"theme":"light","primaryColor":"#0570de","borderRadius":"8px","fontSize":"16px"}}},"subscriptions":{"enableTrial":true,"defaultTrialDays":7,"allowMultipleSubscriptions":false,"prorateUpgrades":true,"sendInvoiceEmails":true,"pageConfigs":{"requiredComponents":["stripe-elements","payment-form","order-summary"],"optionalComponents":["shipping-form","billing-form","promo-code"],"styling":{"theme":"light","primaryColor":"#0570de","borderRadius":"8px","fontSize":"16px"}}},"security":{"savePaymentMethods":true},"business":{"statementDescriptor":"","receiptEmail":true,"enableRefunds":true,"refundPolicy":"full_refund_within_30_days"},"notifications":{"sendPaymentConfirmations":true,"sendInvoiceReminders":true,"sendFailedPaymentNotifications":true}}}},"accessibleApis":[],"favicon":{"s3Key":"app_b6eebe00-42fd-4b6a-8303-adb28b2c3521/favicon/favicon_1787725647054.zip","bucketName":"d9ba37f1-0fe3-42fd-b520-0dda05185cb3-resources-prod","uploadedAt":"2026-08-26T06:27:27.607Z","sourceFile":{"fileName":"favicon.ico","url":"https://d9ba37f1-0fe3-42fd-b520-0dda05185cb3-resources-prod.s3.ap-southeast-1.amazonaws.com/app_b6eebe00-42fd-4b6a-8303-adb28b2c3521/favicon/favicon.ico"},"faviconFiles":[{"fileName":"favicon.ico","url":"https://d9ba37f1-0fe3-42fd-b520-0dda05185cb3-resources-prod.s3.ap-southeast-1.amazonaws.com/app_b6eebe00-42fd-4b6a-8303-adb28b2c3521/favicon/favicon.ico"}]}}
