Commercial

Commercial

Office Cleaning

Expert office cleaning Prosper solutions that keep your workspace spotless and welcoming daily.

Janitorial services

Comprehensive janitorial care to maintain cleanliness, hygiene, and professionalism in every corner.

Airbnb Cleaning

Fast, detailed Airbnb cleaning ensuring five-star readiness for every guest’s arrival.

Events Clean Up

Thorough event clean up before and after, leaving venues flawless and stress-free.

parent.activateValidation({"message":"This field is required.","minLength":1,"maxLength":"","type":"none","required":false,"expression":"null"}, el) } /> <${validation.ErrorMessage} errors=${validation.errors} name="mf-listing-fname" as=${html``} />
parent.activateValidation({"message":"This field is required.","minLength":1,"maxLength":"","type":"none","required":false,"expression":"null"}, el)} /> <${validation.ErrorMessage} errors=${validation.errors} name="mf-telephone" as=${html``} />
parent.activateValidation({"message":"This field is required.","emailMessage":"Please enter a valid Email address","minLength":1,"maxLength":"","type":"none","required":false,"expression":"null"}, el)} /> <${validation.ErrorMessage} errors=${validation.errors} name="mf-email" as=${html``} />
<${props.Flatpickr} name="mf-date" className="mf-input mf-date-input mf-left-parent " placeholder="${ parent.decodeEntities(`Date`) } " options=${{"minDate":"","maxDate":"","dateFormat":"m-d-Y","enableTime":"","disable":[],"mode":"single","static":true,"disableMobile":true,"time_24hr":false}} value=${parent.getValue('mf-date')} onInput=${parent.handleDateTime} aria-invalid=${validation.errors['mf-date'] ? 'true' : 'false'} ref=${el => props.DateWidget( el, '', {"message":"This field is required.","required":false}, register, parent )} /> <${validation.ErrorMessage} errors=${validation.errors} name="mf-date" as=${html``} />
<${props.Flatpickr} name="mf-time" className="mf-input mf-date-input mf-time-input mf-left-parent " placeholder="${ parent.decodeEntities(`Time`) } " options=${{"enableTime":true,"dateFormat":"h:i K","noCalendar":true,"time_24hr":false,"static":true}} value=${parent.getValue('mf-time')} onInput=${parent.handleDateTime} aria-invalid=${validation.errors['mf-time'] ? 'true' : 'false'} ref=${ el => { if( el && el.node.nextSibling ) { if( el.props.value.trim().length ) { el.node.nextSibling.classList.add('value-found'); }else { el.node.nextSibling.classList.remove('value-found'); } } register({ name: "mf-time" }, parent.activateValidation({"message":"This field is required.","required":false})) } } /> <${validation.ErrorMessage} errors=${validation.errors} name="mf-time" as=${html``} />
<${props.Select} className=${"mf-input mf-input-select " + ( validation.errors['mf-select'] ? 'mf-invalid' : '' )} classNamePrefix="mf_select" name="mf-select" placeholder="${ parent.decodeEntities(`Select Service`) } " isSearchable=${false} options=${[{"label":"Item 1","value":"value-1","isDisabled":false},{"label":"Item 2","value":"value-2","isDisabled":false},{"label":"Item 3","value":"value-3","isDisabled":false}]} value=${parent.getValue("mf-select") ? [{"label":"Item 1","value":"value-1","isDisabled":false},{"label":"Item 2","value":"value-2","isDisabled":false},{"label":"Item 3","value":"value-3","isDisabled":false}].filter(item => item.value === parent.getValue("mf-select"))[0] : []} onChange=${(e)=> parent.handleSelect(e, "mf-select")} ref=${() => { register({ name: "mf-select" }, parent.activateValidation({"message":"This field is required.","minLength":1,"maxLength":"","type":"none","required":false})); if ( parent.getValue("mf-select") === '' && false ) { parent.setValue( 'mf-select', '', true ); parent.handleChange({ target: { name: 'mf-select', value: '' } }); } }} /> <${validation.ErrorMessage} errors=${validation.errors} name="mf-select" as=${html``} />