@salla.sa/twilight-components 2.11.49 → 2.11.51

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (75) hide show
  1. package/dist/cjs/index-1d2b3370.js +4 -0
  2. package/dist/cjs/loader.cjs.js +1 -1
  3. package/dist/cjs/salla-add-product-button.cjs.entry.js +4 -13
  4. package/dist/cjs/salla-button_36.cjs.entry.js +138 -37
  5. package/dist/cjs/salla-comment-form.cjs.entry.js +43 -0
  6. package/dist/cjs/salla-product-options.cjs.entry.js +8 -6
  7. package/dist/cjs/twilight.cjs.js +1 -1
  8. package/dist/collection/collection-manifest.json +1 -0
  9. package/dist/collection/components/salla-add-product-button/salla-add-product-button.js +4 -13
  10. package/dist/collection/components/salla-cart-summary/salla-cart-summary.js +26 -3
  11. package/dist/collection/components/salla-count-down/salla-count-down.css +0 -0
  12. package/dist/collection/components/salla-count-down/salla-count-down.js +253 -0
  13. package/dist/collection/components/salla-datetime-picker/salla-datetime-picker.js +1 -1
  14. package/dist/collection/components/salla-file-upload/salla-file-upload.js +4 -1
  15. package/dist/collection/components/salla-gifting/salla-gifting.js +26 -2
  16. package/dist/collection/components/salla-login-modal/salla-login-modal.js +4 -3
  17. package/dist/collection/components/salla-map/salla-map.js +1 -1
  18. package/dist/collection/components/salla-modal/salla-modal.js +10 -0
  19. package/dist/collection/components/salla-product-options/salla-product-options.js +25 -7
  20. package/dist/collection/components/salla-quick-order/salla-quick-order.js +39 -8
  21. package/dist/collection/components/salla-scopes/salla-scopes.js +1 -1
  22. package/dist/components/index.d.ts +1 -0
  23. package/dist/components/index.js +1 -0
  24. package/dist/components/salla-add-product-button.js +4 -13
  25. package/dist/components/salla-cart-summary.js +4 -1
  26. package/dist/components/salla-count-down.d.ts +11 -0
  27. package/dist/components/salla-count-down.js +122 -0
  28. package/dist/components/salla-file-upload2.js +3 -0
  29. package/dist/components/salla-gifting.js +10 -2
  30. package/dist/components/salla-login-modal.js +4 -3
  31. package/dist/components/salla-map2.js +1 -1
  32. package/dist/components/salla-modal2.js +10 -0
  33. package/dist/components/salla-product-options.js +9 -6
  34. package/dist/components/salla-quick-order.js +39 -8
  35. package/dist/components/salla-scopes.js +1 -1
  36. package/dist/esm/index-f1d446ac.js +4 -0
  37. package/dist/esm/loader.js +1 -1
  38. package/dist/esm/salla-add-product-button.entry.js +4 -13
  39. package/dist/esm/salla-button_36.entry.js +138 -37
  40. package/dist/esm/salla-comment-form.entry.js +39 -0
  41. package/dist/esm/salla-product-options.entry.js +8 -6
  42. package/dist/esm/twilight.js +1 -1
  43. package/dist/esm-es5/index-f1d446ac.js +1 -1
  44. package/dist/esm-es5/loader.js +1 -1
  45. package/dist/esm-es5/salla-add-product-button.entry.js +2 -2
  46. package/dist/esm-es5/salla-button_36.entry.js +5 -5
  47. package/dist/esm-es5/salla-comment-form.entry.js +4 -0
  48. package/dist/esm-es5/salla-product-options.entry.js +2 -2
  49. package/dist/esm-es5/twilight.js +1 -1
  50. package/dist/twilight/p-02294ce9.system.entry.js +4 -0
  51. package/dist/twilight/p-0e3e1ff4.entry.js +4 -0
  52. package/dist/twilight/p-7d966812.entry.js +4 -0
  53. package/dist/twilight/p-91ed573c.system.entry.js +53 -0
  54. package/dist/twilight/p-9fda3312.system.js +1 -1
  55. package/dist/twilight/p-b540cfc6.system.entry.js +4 -0
  56. package/dist/twilight/p-cdb6aa9e.entry.js +4 -0
  57. package/dist/twilight/p-d9579b04.system.entry.js +4 -0
  58. package/dist/twilight/p-fb73867f.entry.js +36 -0
  59. package/dist/twilight/twilight.esm.js +1 -1
  60. package/dist/types/components/salla-add-product-button/salla-add-product-button.d.ts +0 -1
  61. package/dist/types/components/salla-cart-summary/salla-cart-summary.d.ts +5 -0
  62. package/dist/types/components/salla-count-down/salla-count-down.d.ts +53 -0
  63. package/dist/types/components/salla-file-upload/salla-file-upload.d.ts +3 -0
  64. package/dist/types/components/salla-gifting/salla-gifting.d.ts +5 -0
  65. package/dist/types/components/salla-modal/salla-modal.d.ts +1 -0
  66. package/dist/types/components/salla-product-options/salla-product-options.d.ts +7 -0
  67. package/dist/types/components/salla-quick-order/salla-quick-order.d.ts +5 -1
  68. package/dist/types/components.d.ts +99 -0
  69. package/package.json +3 -3
  70. package/dist/twilight/p-14fd987d.system.entry.js +0 -53
  71. package/dist/twilight/p-1bbf7223.entry.js +0 -4
  72. package/dist/twilight/p-3c98b71d.entry.js +0 -4
  73. package/dist/twilight/p-85c55961.system.entry.js +0 -4
  74. package/dist/twilight/p-99cb7643.system.entry.js +0 -4
  75. package/dist/twilight/p-d2c63efe.entry.js +0 -36
@@ -1,4 +0,0 @@
1
- /*!
2
- * Crafted with ❤ by Salla
3
- */
4
- import{r as t,c as i,h as o,H as e,g as s}from"./p-7dc66c07.js";import{C as n}from"./p-ccd78636.js";var a,l;!function(t){t.COLOR="color",t.DATE="date",t.DATETIME="datetime",t.DONATION="donation",t.IMAGE="image",t.MULTIPLE_OPTIONS="multiple-options",t.NUMBER="number",t.SINGLE_OPTION="single-option",t.SPLITTER="splitter",t.TEXT="text",t.TEXTAREA="textarea",t.THUMBNAIL="thumbnail",t.TIME="time",t.RADIO="radio",t.CHECKBOX="checkbox",t.MAP="map",t.FILE="file",t.COLOR_PICKER="color_picker"}(a||(a={})),function(t){t.Sar="SAR"}(l||(l={}));const r=class{constructor(o){if(t(this,o),this.changed=i(this,"changed",7),this.fileTypes={pdf:"application/pdf",png:"image/png",jpg:"image/jpeg",word:"application/doc,application/ms-doc,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document",exl:"application/excel,application/vnd.ms-excel,application/x-excel,application/x-msexcel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",txt:"text/plain"},this.outOfStockText=salla.lang.get("pages.products.out_of_stock"),this.donationAmount=salla.lang.get("pages.products.donation_amount"),this.selectedOptions=[],this.outSkus=[],this.productId=salla.config.get("page.id"),this.canDisabled=!salla.config.get("store.settings.products.notify_options_availability"),salla.lang.onLoaded((()=>{this.outOfStockText=salla.lang.get("pages.products.out_of_stock"),this.donationAmount=salla.lang.get("pages.products.donation_amount")})),this.options)try{return void this.setOptionsData(JSON.parse(this.options))}catch(t){salla.log("Bad json passed via options prop")}Array.isArray(this.optionsData)||(salla.log("Options is not an array[] ---\x3e ",this.optionsData),this.setOptionsData([])),this.productId&&!salla.url.is_page("cart")&&salla.api.product.getDetails(this.productId,["options"]).then((t=>this.setOptionsData(t.data.options)))}setOptionsData(t){var i,o;this.optionsData=t;let e=this;null===(o=null===(i=this.optionsData[0])||void 0===i?void 0:i.details)||void 0===o||o.forEach((function(t){Object.entries(t.skus_availability||{}).filter((t=>!t[1])).map((t=>e.outSkus.push(Number(t[0]))))}))}async getSelectedOptionsData(){let t={};return this.host.getElementSallaData().forEach((function(i,o){o.startsWith("options[")&&(t[o.replace("options[","").replace("]","")]=i)})),t}async getSelectedOptions(){return this.selectedOptions}async getOption(t){return this.optionsData.find((i=>i.id===t))}changedHandler(t,i){let o={event:t,option:i,detail:null};if(i.details){let e=i.details.find((i=>Number(i.id)===Number(t.target.value)));o.detail=e}const e=this.selectedOptions.findIndex((t=>t.option_id===o.option.id));e>-1?this.selectedOptions[e]=Object.assign(Object.assign({},o.detail),{option_id:o.option.id}):this.selectedOptions.push(Object.assign(Object.assign({},o.detail),{option_id:o.option.id})),this.setSelectedSkus(),this.handleRequiredMultipleOptions(i),this.changed.emit(o),salla.event.emit("product-options::change",o)}setSelectedSkus(){this.selectedSkus=this.selectedOptions.map((t=>Object.keys(t.skus_availability||{}))).reduce(((t,i)=>t.filter((t=>i.includes(t))))).map((t=>Number(t)))}handleRequiredMultipleOptions(t){if(t.type!==a.MULTIPLE_OPTIONS||!t.required)return;const i=this.host.querySelector(`[data-option-id="${t.id}"]`),o=i.querySelectorAll("input:checked").length;i.querySelectorAll("input").forEach((t=>t.toggleAttribute("required",!o)))}getLatLng(t,i){return t?t.split(",")["lat"==i?0:1]:""}getDisplayForType(t){return this[`${t.type}Option`]?this[`${t.type}Option`](t):t.type===a.COLOR_PICKER?this.colorPickerOption(t):t.type===a.MULTIPLE_OPTIONS?this.multipleOptions(t):t.type===a.SINGLE_OPTION?this.singleOption(t):(salla.log(`Couldn't find options type(${t.type})😢`),"")}getOptionShownWhen(t){return t.visibility_condition?{"data-show-when":`options[${t.visibility_condition.option}] ${t.visibility_condition.operator} ${t.visibility_condition.value}`}:{}}componentWillLoad(){return salla.api.cart.getCurrentCartId()}render(){var t;if(0!=(null===(t=this.optionsData)||void 0===t?void 0:t.length))return o(e,{class:"s-product-options-wrapper"},o("salla-conditional-fields",null,this.optionsData.map((t=>o("div",Object.assign({class:"s-product-options-option-container"+(t.visibility_condition?" hidden":""),"data-option-id":t.id},this.getOptionShownWhen(t)),"splitter"==t.name?this.splitterOption():o("div",{class:"s-product-options-option"},o("label",{htmlFor:"options["+t.id+"]",class:"s-product-options-option-label"},o("b",null,t.name,t.required&&o("span",null," * ")," "),o("small",null,t.placeholder)),o("div",{class:"s-product-options-option-content"},this.getDisplayForType(t))))))))}donationOption(t,i){return o("div",{class:"s-product-options-donation-wrapper"},t.donation?o("div",{class:"s-product-options-donation-progress"},o("salla-progress-bar",{donation:t.donation})):"",o("div",{class:"s-product-options-donation-input-group"},o("input",{type:"text",id:"donating-amount",name:"donating_amount",class:"s-form-control",value:t.value,required:!0,placeholder:t.placeholder,onInput:t=>salla.helpers.inputDigitsOnly(t.target),onBlur:i=>this.changedHandler(i,t)}),o("span",{class:"s-product-options-donation-amount-currency"},salla.config.currency(salla.config.get("user.currency_code")).symbol)))}fileUploader(t,i=null){return o("salla-file-upload",Object.assign({},i||{},{"payload-name":"file",value:t.value,"instant-upload":!0,name:`options[${t.id}]`,required:t.required,height:"120px",url:salla.cart.api.getUploadImageEndpoint(),"form-data":{cart_item_id:this.productId,product_id:this.productId},class:{"s-product-options-image-input":!0,required:t.required}}),o("div",{class:"s-product-options-filepond-placeholder"},o("span",{class:"s-product-options-filepond-placeholder-icon",innerHTML:i.accept&&i.accept.split(",").every((t=>t.includes("image")))?n:'\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>file-upload</title>\n<path d="M21.333 24c0.341 0 0.683-0.131 0.943-0.391 0.521-0.521 0.521-1.364 0-1.885l-5.333-5.333c-0.123-0.123-0.271-0.22-0.433-0.288-0.327-0.135-0.693-0.135-1.019 0-0.163 0.068-0.311 0.165-0.433 0.288l-5.333 5.333c-0.521 0.521-0.521 1.364 0 1.885s1.364 0.521 1.885 0l3.057-3.057v10.115c0 0.736 0.597 1.333 1.333 1.333s1.333-0.597 1.333-1.333v-10.115l3.057 3.057c0.26 0.26 0.601 0.391 0.943 0.391zM28.943 9.724l-9.333-9.333c-0.249-0.251-0.589-0.391-0.943-0.391h-12c-2.205 0-4 1.795-4 4v24c0 2.205 1.795 4 4 4h4c0.736 0 1.333-0.597 1.333-1.333s-0.597-1.333-1.333-1.333h-4c-0.735 0-1.333-0.599-1.333-1.333v-24c0-0.735 0.599-1.333 1.333-1.333h11.448l8.552 8.552v16.781c0 0.735-0.599 1.333-1.333 1.333h-4c-0.736 0-1.333 0.597-1.333 1.333s0.597 1.333 1.333 1.333h4c2.205 0 4-1.795 4-4v-17.333c0-0.353-0.14-0.693-0.391-0.943z"></path>\n</svg>\n'}),o("p",{class:"s-product-options-filepond-placeholder-text"},salla.lang.get("common.uploader.drag_and_drop")),o("span",{class:"filepond--label-action"},salla.lang.get("common.uploader.browse"))))}imageOption(t){return this.fileUploader(t,{accept:"image/png,image/jpeg,image/jpg,image/gif"})}fileOption(t){let i=t.details.map((t=>this.fileTypes[t.name])).filter(Boolean);return(null==i?void 0:i.length)?this.fileUploader(t,{accept:i.join(",")}):"File types not selected."}numberOption(t){return o("input",{type:"text",value:t.value,class:"s-form-control",required:t.required,name:`options[${t.id}]`,placeholder:t.placeholder,onBlur:i=>this.changedHandler(i,t),onInput:t=>salla.helpers.inputDigitsOnly(t.target)})}splitterOption(){return o("div",{class:"s-product-options-splitter"})}textOption(t){return o("div",{class:"s-product-options-text"},o("input",{type:"text",value:t.value,class:"s-form-control",required:t.required,name:`options[${t.id}]`,placeholder:t.placeholder,onInput:i=>this.changedHandler(i,t)}))}textareaOption(t){return o("div",{class:"s-product-options-textarea"},o("div",{class:"mt-1"},o("textarea",{rows:4,value:t.value,class:"s-form-control",required:t.required,id:`options[${t.id}]`,name:`options[${t.id}]`,placeholder:t.placeholder,onInput:i=>this.changedHandler(i,t)})))}mapOption(t){return o("salla-map",{zoom:15,lat:this.getLatLng(t.value,"lat"),lng:this.getLatLng(t.value,"lng"),name:`options[${t.id}]`,searchable:!0,required:t.required,onSelected:i=>this.changedHandler(i,t)})}colorPickerOption(t){return o("salla-color-picker",{onSubmitted:i=>this.changedHandler(i,t),name:`options[${t.id}]`,required:t.required,color:t.value||"#5dd5c4"})}timeOption(t){return o("salla-datetime-picker",{noCalendar:!0,enableTime:!0,dateFormat:"h:i K",value:t.value,placeholder:t.name,required:t.required,name:`options[${t.id}]`,class:"s-product-options-time-element",onPicked:i=>this.changedHandler(i,t)})}dateOption(t){return o("div",{class:"s-product-options-date-element"},o("salla-datetime-picker",{value:t.value,placeholder:t.name,required:t.required,minDate:new Date,name:`options[${t.id}]`,onPicked:i=>this.changedHandler(i,t)}))}datetimeOption(t){return o("div",{class:"s-product-options-datetime-element"},o("salla-datetime-picker",{enableTime:!0,value:t.value,dateFormat:"Y-m-d G:i:K",placeholder:t.name,required:t.required,name:`options[${t.id}]`,maxDate:t.to_date_time,minDate:t.from_date_time,onPicked:i=>this.changedHandler(i,t)}))}getOptionDetailName(t,i=!0,o){return o&&o==a.COLOR?t.name+(i&&this.isOptionDetailOut(t)?` <br/> <p> ${this.outOfStockText} </p>`:"")+(t.additional_price?` <p> (${salla.money(t.additional_price)}) </p>`:""):t.name+(i&&this.isOptionDetailOut(t)?` - ${this.outOfStockText}`:"")+(t.additional_price?` (${salla.money(t.additional_price)})`:"")}isOptionDetailOut(t){var i;if(t.is_out||!t.skus_availability||!(null===(i=this.selectedSkus)||void 0===i?void 0:i.length))return t.is_out;let o=this.selectedOptions.filter((i=>i.id==t.id)).length;if(o&&1==this.selectedOptions.length)return!1;if(o){let i=this.selectedSkus.filter((t=>this.outSkus.includes(t)));return Object.keys(t.skus_availability).some((t=>i.includes(Number(t))))}return!1}singleOption(t){return o("div",null,o("select",{name:`options[${t.id}]`,required:t.required,class:"s-form-control",onChange:i=>this.changedHandler(i,t)},o("option",{value:""},t.placeholder),null==t?void 0:t.details.map((t=>o("option",{value:t.id,disabled:this.canDisabled&&this.isOptionDetailOut(t),selected:t.is_selected},this.getOptionDetailName(t))))))}multipleOptions(t){return o("div",{class:{"s-product-options-multiple-options-wrapper":!0,required:t.required}},null==t?void 0:t.details.map((i=>o("div",null,o("input",{type:"checkbox",value:i.id,disabled:this.isOptionDetailOut(i),checked:i.is_selected,required:t.required,name:`options[${t.id}][]`,id:`field-${t.id}-${i.id}`,onChange:i=>this.changedHandler(i,t),"aria-describedby":`options[${t.id}]-description`}),o("label",{htmlFor:`field-${t.id}-${i.id}`},this.getOptionDetailName(i))))))}colorOption(t){return o("fieldset",{class:"s-product-options-colors-wrapper"},null==t?void 0:t.details.map((i=>o("div",{class:"s-product-options-colors-item"},o("input",{type:"radio",value:i.id,required:t.required,checked:i.is_selected,name:`options[${t.id}]`,disabled:this.canDisabled&&this.isOptionDetailOut(i),id:`color-${this.productId}-${t.id}-${i.id}`,onChange:i=>this.changedHandler(i,t)}),o("label",{htmlFor:`color-${this.productId}-${t.id}-${i.id}`},o("span",{style:{"background-color":i.color}}),o("div",{innerHTML:this.getOptionDetailName(i,!0,t.type)}))))))}thumbnailOption(t){return o("div",{class:"s-product-options-thumbnails-wrapper"},t.details.map((i=>o("div",null,o("input",{type:"radio",value:i.id,"data-itemid":i.id,required:t.required,checked:i.is_selected,name:`options[${t.id}]`,"data-img-id":i.option_value,disabled:this.canDisabled&&this.isOptionDetailOut(i),id:`option_${this.productId}-${t.id}_${i.id}`,onChange:i=>this.changedHandler(i,t)}),o("label",{htmlFor:`option_${this.productId}-${t.id}_${i.id}`,"data-img-id":i.option_value,class:"go-to-slide"},o("img",{"data-src":i.image,src:i.image,title:i.name,alt:i.name}),o("span",{innerHTML:'\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>check</title>\n<path d="M27.521 6.976c-0.569-0.472-1.407-0.393-1.879 0.171l-12.567 15.080-7.003-4.668c-0.615-0.411-1.441-0.244-1.849 0.369-0.409 0.612-0.244 1.441 0.369 1.849l8 5.333c0.227 0.149 0.484 0.223 0.739 0.223 0.384 0 0.763-0.165 1.027-0.48l13.333-16c0.471-0.565 0.393-1.407-0.171-1.877z"></path>\n</svg>\n',class:"s-product-options-thumbnails-icon"}),this.isOptionDetailOut(i)?[o("small",{class:"s-product-options-thumbnails-stock-badge"},this.outOfStockText),this.canDisabled?o("div",{class:"s-product-options-thumbnails-badge-overlay"}):""]:""),o("p",null,this.getOptionDetailName(i,!1)," ")))))}get host(){return s(this)}};r.style="";export{r as salla_product_options}
@@ -1,4 +0,0 @@
1
- /*!
2
- * Crafted with ❤ by Salla
3
- */
4
- import{r as t,c as i,h as s,H as o,g as a}from"./p-7dc66c07.js";const l=class{constructor(s){t(this,s),this.success=i(this,"success",7),this.failed=i(this,"failed",7),this.hostAttributes={},this.productStatus="sale",this.productType="product",this.selectedOptions=[]}getLabel(){return"sale"===this.productStatus?salla.lang.get("pages.cart.add_to_cart"):"donating"!==this.productType?salla.lang.get("pages.products.out_of_stock"):salla.lang.get("pages.products.donation_exceed")}addProductToCart(t){if("booking"===this.productType)return t.preventDefault(),this.addBookingProduct();if("submit"===this.hostAttributes.type)return!1;t.preventDefault();const i=Object.entries({id:this.productId,donating_amount:this.donatingAmount,quantity:this.quantity,endpoint:"quickAdd"}).reduce(((t,[i,s])=>s?(t[i]=s,t):t),{});return salla.cart.addItem(i).then((t=>{this.selectedOptions=[],this.success.emit(t)})).catch((t=>this.failed.emit(t)))}addBookingProduct(){return salla.config.isGuest()?(salla.auth.api.setAfterLoginEvent("booking::add",this.productId),void salla.event.dispatch("login::open")):salla.booking.add(this.productId).then((t=>this.success.emit(t))).catch((t=>this.failed.emit(t)))}getBtnAttributes(){for(let t=0;t<this.host.attributes.length;t++)["id","class"].includes(this.host.attributes[t].name)||(this.hostAttributes[this.host.attributes[t].name]=this.host.attributes[t].value);return this.hostAttributes}pushSelectedOption(t){const i=this.selectedOptions.findIndex((i=>i.option_id===t.option.id));i>-1?this.selectedOptions[i]=Object.assign(Object.assign({},t.detail),{option_id:t.option.id}):this.selectedOptions.push(Object.assign(Object.assign({},t.detail),{option_id:t.option.id})),this.hasOutOfStockOption=this.selectedOptions.some((t=>t.is_out))}componentWillLoad(){this.hasLabel=!!this.host.innerHTML.replace("\x3c!----\x3e","").trim()}render(){var t;return(null===(t=this.host.closest(".swiper-slide"))||void 0===t?void 0:t.classList.contains("swiper-slide-duplicate"))?"":s(o,null,this.hasSubscribedOptions?s("salla-product-availability",Object.assign({},this.getBtnAttributes(),{"is-subscribed":!0})):"out-and-notify"===this.productStatus&&this.channels||this.hasOutOfStockOption?s("salla-product-availability",Object.assign({},this.getBtnAttributes())):s("salla-button",Object.assign({color:"sale"===this.productStatus?"primary":"light",fill:"sale"===this.productStatus?"solid":"outline",ref:t=>this.btn=t,onClick:t=>this.addProductToCart(t),disabled:"sale"!==this.productStatus},this.getBtnAttributes(),{"loader-position":"center",type:"button"}),s("slot",null)))}componentDidLoad(){this.notifyOptionsAvailability&&salla.event.on("product-options::change",(t=>{["thumbnail","color","single-option"].includes(t.option.type)&&(this.pushSelectedOption(t),this.hasLabel=!1,this.subscribedOptions&&"null"!==this.subscribedOptions&&(this.hasSubscribedOptions=JSON.parse(this.subscribedOptions).filter((t=>t.every((t=>this.selectedOptions.some((i=>i.id===t)))))).length>0))}))}componentDidRender(){var t;this.hasLabel||(null===(t=this.btn)||void 0===t||t.setText(this.getLabel()),salla.lang.onLoaded((()=>{var t;return null===(t=this.btn)||void 0===t?void 0:t.setText(this.getLabel())})))}get host(){return a(this)}};l.style=":host{display:block}salla-add-product-button[width=wide]{width:100%}";export{l as salla_add_product_button}
@@ -1,4 +0,0 @@
1
- /*!
2
- * Crafted with ❤ by Salla
3
- */
4
- System.register(["./p-d9130020.system.js"],(function(t){"use strict";var i,e,s,n,o;return{setters:[function(t){i=t.r;e=t.c;s=t.h;n=t.H;o=t.g}],execute:function(){var r=":host{display:block}salla-add-product-button[width=wide]{width:100%}";var u=t("salla_add_product_button",function(){function t(t){i(this,t);this.success=e(this,"success",7);this.failed=e(this,"failed",7);this.hostAttributes={};this.productStatus="sale";this.productType="product";this.selectedOptions=[]}t.prototype.getLabel=function(){if(this.productStatus==="sale"){return salla.lang.get("pages.cart.add_to_cart")}if(this.productType!=="donating"){return salla.lang.get("pages.products.out_of_stock")}return salla.lang.get("pages.products.donation_exceed")};t.prototype.addProductToCart=function(t){var i=this;if(this.productType==="booking"){t.preventDefault();return this.addBookingProduct()}if(this.hostAttributes.type==="submit"){return false}t.preventDefault();var e=Object.entries({id:this.productId,donating_amount:this.donatingAmount,quantity:this.quantity,endpoint:"quickAdd"}).reduce((function(t,i){var e=i[0],s=i[1];return s?(t[e]=s,t):t}),{});return salla.cart.addItem(e).then((function(t){i.selectedOptions=[];i.success.emit(t)})).catch((function(t){return i.failed.emit(t)}))};t.prototype.addBookingProduct=function(){var t=this;if(salla.config.isGuest()){salla.auth.api.setAfterLoginEvent("booking::add",this.productId);salla.event.dispatch("login::open");return}return salla.booking.add(this.productId).then((function(i){return t.success.emit(i)})).catch((function(i){return t.failed.emit(i)}))};t.prototype.getBtnAttributes=function(){for(var t=0;t<this.host.attributes.length;t++){if(!["id","class"].includes(this.host.attributes[t].name)){this.hostAttributes[this.host.attributes[t].name]=this.host.attributes[t].value}}return this.hostAttributes};t.prototype.pushSelectedOption=function(t){var i=this.selectedOptions.findIndex((function(i){return i.option_id===t.option.id}));if(i>-1){this.selectedOptions[i]=Object.assign(Object.assign({},t.detail),{option_id:t.option.id})}else{this.selectedOptions.push(Object.assign(Object.assign({},t.detail),{option_id:t.option.id}))}this.hasOutOfStockOption=this.selectedOptions.some((function(t){return t.is_out}))};t.prototype.componentWillLoad=function(){this.hasLabel=!!this.host.innerHTML.replace("\x3c!----\x3e","").trim()};t.prototype.render=function(){var t=this;var i;if((i=this.host.closest(".swiper-slide"))===null||i===void 0?void 0:i.classList.contains("swiper-slide-duplicate")){return""}if(this.hasSubscribedOptions){return s(n,null,s("salla-product-availability",Object.assign({},this.getBtnAttributes(),{"is-subscribed":true})))}if(this.productStatus==="out-and-notify"&&this.channels||this.hasOutOfStockOption){return s(n,null,s("salla-product-availability",Object.assign({},this.getBtnAttributes())))}return s(n,null,s("salla-button",Object.assign({color:this.productStatus==="sale"?"primary":"light",fill:this.productStatus==="sale"?"solid":"outline",ref:function(i){return t.btn=i},onClick:function(i){return t.addProductToCart(i)},disabled:this.productStatus!=="sale"},this.getBtnAttributes(),{"loader-position":"center",type:"button"}),s("slot",null)))};t.prototype.componentDidLoad=function(){var t=this;if(!this.notifyOptionsAvailability){return}salla.event.on("product-options::change",(function(i){if(!["thumbnail","color","single-option"].includes(i.option.type)){return}t.pushSelectedOption(i);t.hasLabel=false;if(!t.subscribedOptions||t.subscribedOptions==="null"){return}t.hasSubscribedOptions=JSON.parse(t.subscribedOptions).filter((function(i){return i.every((function(i){return t.selectedOptions.some((function(t){return t.id===i}))}))})).length>0}))};t.prototype.componentDidRender=function(){var t=this;var i;if(this.hasLabel){return}(i=this.btn)===null||i===void 0?void 0:i.setText(this.getLabel());salla.lang.onLoaded((function(){var i;return(i=t.btn)===null||i===void 0?void 0:i.setText(t.getLabel())}))};Object.defineProperty(t.prototype,"host",{get:function(){return o(this)},enumerable:false,configurable:true});return t}());u.style=r}}}));
@@ -1,4 +0,0 @@
1
- var __awaiter=this&&this.__awaiter||function(t,e,n,i){function o(t){return t instanceof n?t:new n((function(e){e(t)}))}return new(n||(n=Promise))((function(n,a){function r(t){try{l(i.next(t))}catch(t){a(t)}}function s(t){try{l(i["throw"](t))}catch(t){a(t)}}function l(t){t.done?n(t.value):o(t.value).then(r,s)}l((i=i.apply(t,e||[])).next())}))};var __generator=this&&this.__generator||function(t,e){var n={label:0,sent:function(){if(a[0]&1)throw a[1];return a[1]},trys:[],ops:[]},i,o,a,r;return r={next:s(0),throw:s(1),return:s(2)},typeof Symbol==="function"&&(r[Symbol.iterator]=function(){return this}),r;function s(t){return function(e){return l([t,e])}}function l(r){if(i)throw new TypeError("Generator is already executing.");while(n)try{if(i=1,o&&(a=r[0]&2?o["return"]:r[0]?o["throw"]||((a=o["return"])&&a.call(o),0):o.next)&&!(a=a.call(o,r[1])).done)return a;if(o=0,a)r=[r[0]&2,a.value];switch(r[0]){case 0:case 1:a=r;break;case 4:n.label++;return{value:r[1],done:false};case 5:n.label++;o=r[1];r=[0];continue;case 7:r=n.ops.pop();n.trys.pop();continue;default:if(!(a=n.trys,a=a.length>0&&a[a.length-1])&&(r[0]===6||r[0]===2)){n=0;continue}if(r[0]===3&&(!a||r[1]>a[0]&&r[1]<a[3])){n.label=r[1];break}if(r[0]===6&&n.label<a[1]){n.label=a[1];a=r;break}if(a&&n.label<a[2]){n.label=a[2];n.ops.push(r);break}if(a[2])n.ops.pop();n.trys.pop();continue}r=e.call(t,n)}catch(t){r=[6,t];o=0}finally{i=a=0}if(r[0]&5)throw r[1];return{value:r[0]?r[1]:void 0,done:true}}};
2
- /*!
3
- * Crafted with ❤ by Salla
4
- */System.register(["./p-d9130020.system.js","./p-c328c14e.system.js"],(function(t){"use strict";var e,n,i,o,a,r;return{setters:[function(t){e=t.r;n=t.c;i=t.h;o=t.H;a=t.g},function(t){r=t.C}],execute:function(){var s;(function(t){t["COLOR"]="color";t["DATE"]="date";t["DATETIME"]="datetime";t["DONATION"]="donation";t["IMAGE"]="image";t["MULTIPLE_OPTIONS"]="multiple-options";t["NUMBER"]="number";t["SINGLE_OPTION"]="single-option";t["SPLITTER"]="splitter";t["TEXT"]="text";t["TEXTAREA"]="textarea";t["THUMBNAIL"]="thumbnail";t["TIME"]="time";t["RADIO"]="radio";t["CHECKBOX"]="checkbox";t["MAP"]="map";t["FILE"]="file";t["COLOR_PICKER"]="color_picker"})(s||(s={}));var l;(function(t){t["Sar"]="SAR"})(l||(l={}));var c='\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>check</title>\n<path d="M27.521 6.976c-0.569-0.472-1.407-0.393-1.879 0.171l-12.567 15.080-7.003-4.668c-0.615-0.411-1.441-0.244-1.849 0.369-0.409 0.612-0.244 1.441 0.369 1.849l8 5.333c0.227 0.149 0.484 0.223 0.739 0.223 0.384 0 0.763-0.165 1.027-0.48l13.333-16c0.471-0.565 0.393-1.407-0.171-1.877z"></path>\n</svg>\n';var p='\x3c!-- Generated by IcoMoon.io --\x3e\n<svg version="1.1" xmlns="http://www.w3.org/2000/svg" width="32" height="32" viewBox="0 0 32 32">\n<title>file-upload</title>\n<path d="M21.333 24c0.341 0 0.683-0.131 0.943-0.391 0.521-0.521 0.521-1.364 0-1.885l-5.333-5.333c-0.123-0.123-0.271-0.22-0.433-0.288-0.327-0.135-0.693-0.135-1.019 0-0.163 0.068-0.311 0.165-0.433 0.288l-5.333 5.333c-0.521 0.521-0.521 1.364 0 1.885s1.364 0.521 1.885 0l3.057-3.057v10.115c0 0.736 0.597 1.333 1.333 1.333s1.333-0.597 1.333-1.333v-10.115l3.057 3.057c0.26 0.26 0.601 0.391 0.943 0.391zM28.943 9.724l-9.333-9.333c-0.249-0.251-0.589-0.391-0.943-0.391h-12c-2.205 0-4 1.795-4 4v24c0 2.205 1.795 4 4 4h4c0.736 0 1.333-0.597 1.333-1.333s-0.597-1.333-1.333-1.333h-4c-0.735 0-1.333-0.599-1.333-1.333v-24c0-0.735 0.599-1.333 1.333-1.333h11.448l8.552 8.552v16.781c0 0.735-0.599 1.333-1.333 1.333h-4c-0.736 0-1.333 0.597-1.333 1.333s0.597 1.333 1.333 1.333h4c2.205 0 4-1.795 4-4v-17.333c0-0.353-0.14-0.693-0.391-0.943z"></path>\n</svg>\n';var u="";var d=t("salla_product_options",function(){function t(t){var i=this;e(this,t);this.changed=n(this,"changed",7);this.fileTypes={pdf:"application/pdf",png:"image/png",jpg:"image/jpeg",word:"application/doc,application/ms-doc,application/msword,application/vnd.openxmlformats-officedocument.wordprocessingml.document",exl:"application/excel,application/vnd.ms-excel,application/x-excel,application/x-msexcel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet",txt:"text/plain"};this.outOfStockText=salla.lang.get("pages.products.out_of_stock");this.donationAmount=salla.lang.get("pages.products.donation_amount");this.selectedOptions=[];this.outSkus=[];this.productId=salla.config.get("page.id");this.canDisabled=!salla.config.get("store.settings.products.notify_options_availability");salla.lang.onLoaded((function(){i.outOfStockText=salla.lang.get("pages.products.out_of_stock");i.donationAmount=salla.lang.get("pages.products.donation_amount")}));if(this.options){try{this.setOptionsData(JSON.parse(this.options));return}catch(t){salla.log("Bad json passed via options prop")}}if(!Array.isArray(this.optionsData)){salla.log("Options is not an array[] ---\x3e ",this.optionsData);this.setOptionsData([])}if(this.productId&&!salla.url.is_page("cart")){salla.api.product.getDetails(this.productId,["options"]).then((function(t){return i.setOptionsData(t.data.options)}))}}t.prototype.setOptionsData=function(t){var e,n;this.optionsData=t;var i=this;(n=(e=this.optionsData[0])===null||e===void 0?void 0:e.details)===null||n===void 0?void 0:n.forEach((function(t){Object.entries(t.skus_availability||{}).filter((function(t){return!t[1]})).map((function(t){return i.outSkus.push(Number(t[0]))}))}))};t.prototype.getSelectedOptionsData=function(){return __awaiter(this,void 0,void 0,(function(){var t,e;return __generator(this,(function(n){t={};e=this.host.getElementSallaData();e.forEach((function(e,n){n.startsWith("options[")&&(t[n.replace("options[","").replace("]","")]=e)}));return[2,t]}))}))};t.prototype.getSelectedOptions=function(){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(t){return[2,this.selectedOptions]}))}))};t.prototype.getOption=function(t){return __awaiter(this,void 0,void 0,(function(){return __generator(this,(function(e){return[2,this.optionsData.find((function(e){return e.id===t}))]}))}))};t.prototype.changedHandler=function(t,e){var n={event:t,option:e,detail:null};if(e.details){var i=e.details.find((function(e){return Number(e.id)===Number(t.target.value)}));n.detail=i}var o=this.selectedOptions.findIndex((function(t){return t.option_id===n.option.id}));o>-1?this.selectedOptions[o]=Object.assign(Object.assign({},n.detail),{option_id:n.option.id}):this.selectedOptions.push(Object.assign(Object.assign({},n.detail),{option_id:n.option.id}));this.setSelectedSkus();this.handleRequiredMultipleOptions(e);this.changed.emit(n);salla.event.emit("product-options::change",n)};t.prototype.setSelectedSkus=function(){this.selectedSkus=this.selectedOptions.map((function(t){return Object.keys(t.skus_availability||{})})).reduce((function(t,e){return t.filter((function(t){return e.includes(t)}))})).map((function(t){return Number(t)}))};t.prototype.handleRequiredMultipleOptions=function(t){if(t.type!==s.MULTIPLE_OPTIONS||!t.required){return}var e=this.host.querySelector('[data-option-id="'.concat(t.id,'"]'));var n=e.querySelectorAll("input:checked").length;e.querySelectorAll("input").forEach((function(t){return t.toggleAttribute("required",!n)}))};t.prototype.getLatLng=function(t,e){return t?t.split(",")[e=="lat"?0:1]:""};t.prototype.getDisplayForType=function(t){if(this["".concat(t.type,"Option")]){return this["".concat(t.type,"Option")](t)}if(t.type===s.COLOR_PICKER){return this.colorPickerOption(t)}if(t.type===s.MULTIPLE_OPTIONS){return this.multipleOptions(t)}if(t.type===s.SINGLE_OPTION){return this.singleOption(t)}salla.log("Couldn't find options type(".concat(t.type,")😢"));return""};t.prototype.getOptionShownWhen=function(t){return t.visibility_condition?{"data-show-when":"options[".concat(t.visibility_condition.option,"] ").concat(t.visibility_condition.operator," ").concat(t.visibility_condition.value)}:{}};t.prototype.componentWillLoad=function(){return salla.api.cart.getCurrentCartId()};t.prototype.render=function(){var t=this;var e;if(((e=this.optionsData)===null||e===void 0?void 0:e.length)==0){return}return i(o,{class:"s-product-options-wrapper"},i("salla-conditional-fields",null,this.optionsData.map((function(e){return i("div",Object.assign({class:"s-product-options-option-container".concat(e.visibility_condition?" hidden":""),"data-option-id":e.id},t.getOptionShownWhen(e)),e.name=="splitter"?t.splitterOption():i("div",{class:"s-product-options-option"},i("label",{htmlFor:"options["+e.id+"]",class:"s-product-options-option-label"},i("b",null,e.name,e.required&&i("span",null," * ")," "),i("small",null,e.placeholder)),i("div",{class:"s-product-options-option-content"},t.getDisplayForType(e))))}))))};t.prototype.donationOption=function(t,e){var n=this;return i("div",{class:"s-product-options-donation-wrapper"},t.donation?i("div",{class:"s-product-options-donation-progress"},i("salla-progress-bar",{donation:t.donation})):"",i("div",{class:"s-product-options-donation-input-group"},i("input",{type:"text",id:"donating-amount",name:"donating_amount",class:"s-form-control",value:t.value,required:true,placeholder:t.placeholder,onInput:function(t){return salla.helpers.inputDigitsOnly(t.target)},onBlur:function(e){return n.changedHandler(e,t)}}),i("span",{class:"s-product-options-donation-amount-currency"},salla.config.currency(salla.config.get("user.currency_code")).symbol)))};t.prototype.fileUploader=function(t,e){if(e===void 0){e=null}return i("salla-file-upload",Object.assign({},e||{},{"payload-name":"file",value:t.value,"instant-upload":true,name:"options[".concat(t.id,"]"),required:t.required,height:"120px",url:salla.cart.api.getUploadImageEndpoint(),"form-data":{cart_item_id:this.productId,product_id:this.productId},class:{"s-product-options-image-input":true,required:t.required}}),i("div",{class:"s-product-options-filepond-placeholder"},i("span",{class:"s-product-options-filepond-placeholder-icon",innerHTML:e.accept&&e.accept.split(",").every((function(t){return t.includes("image")}))?r:p}),i("p",{class:"s-product-options-filepond-placeholder-text"},salla.lang.get("common.uploader.drag_and_drop")),i("span",{class:"filepond--label-action"},salla.lang.get("common.uploader.browse"))))};t.prototype.imageOption=function(t){return this.fileUploader(t,{accept:"image/png,image/jpeg,image/jpg,image/gif"})};t.prototype.fileOption=function(t){var e=this;var n=t.details.map((function(t){return e.fileTypes[t.name]})).filter(Boolean);return(n===null||n===void 0?void 0:n.length)?this.fileUploader(t,{accept:n.join(",")}):"File types not selected."};t.prototype.numberOption=function(t){var e=this;return i("input",{type:"text",value:t.value,class:"s-form-control",required:t.required,name:"options[".concat(t.id,"]"),placeholder:t.placeholder,onBlur:function(n){return e.changedHandler(n,t)},onInput:function(t){return salla.helpers.inputDigitsOnly(t.target)}})};t.prototype.splitterOption=function(){return i("div",{class:"s-product-options-splitter"})};t.prototype.textOption=function(t){var e=this;return i("div",{class:"s-product-options-text"},i("input",{type:"text",value:t.value,class:"s-form-control",required:t.required,name:"options[".concat(t.id,"]"),placeholder:t.placeholder,onInput:function(n){return e.changedHandler(n,t)}}))};t.prototype.textareaOption=function(t){var e=this;return i("div",{class:"s-product-options-textarea"},i("div",{class:"mt-1"},i("textarea",{rows:4,value:t.value,class:"s-form-control",required:t.required,id:"options[".concat(t.id,"]"),name:"options[".concat(t.id,"]"),placeholder:t.placeholder,onInput:function(n){return e.changedHandler(n,t)}})))};t.prototype.mapOption=function(t){var e=this;return i("salla-map",{zoom:15,lat:this.getLatLng(t.value,"lat"),lng:this.getLatLng(t.value,"lng"),name:"options[".concat(t.id,"]"),searchable:true,required:t.required,onSelected:function(n){return e.changedHandler(n,t)}})};t.prototype.colorPickerOption=function(t){var e=this;return i("salla-color-picker",{onSubmitted:function(n){return e.changedHandler(n,t)},name:"options[".concat(t.id,"]"),required:t.required,color:t.value||"#5dd5c4"})};t.prototype.timeOption=function(t){var e=this;return i("salla-datetime-picker",{noCalendar:true,enableTime:true,dateFormat:"h:i K",value:t.value,placeholder:t.name,required:t.required,name:"options[".concat(t.id,"]"),class:"s-product-options-time-element",onPicked:function(n){return e.changedHandler(n,t)}})};t.prototype.dateOption=function(t){var e=this;return i("div",{class:"s-product-options-date-element"},i("salla-datetime-picker",{value:t.value,placeholder:t.name,required:t.required,minDate:new Date,name:"options[".concat(t.id,"]"),onPicked:function(n){return e.changedHandler(n,t)}}))};t.prototype.datetimeOption=function(t){var e=this;return i("div",{class:"s-product-options-datetime-element"},i("salla-datetime-picker",{enableTime:true,value:t.value,dateFormat:"Y-m-d G:i:K",placeholder:t.name,required:t.required,name:"options[".concat(t.id,"]"),maxDate:t.to_date_time,minDate:t.from_date_time,onPicked:function(n){return e.changedHandler(n,t)}}))};t.prototype.getOptionDetailName=function(t,e,n){if(e===void 0){e=true}if(n&&n==s.COLOR){return t.name+(e&&this.isOptionDetailOut(t)?" <br/> <p> ".concat(this.outOfStockText," </p>"):"")+(t.additional_price?" <p> (".concat(salla.money(t.additional_price),") </p>"):"")}return t.name+(e&&this.isOptionDetailOut(t)?" - ".concat(this.outOfStockText):"")+(t.additional_price?" (".concat(salla.money(t.additional_price),")"):"")};t.prototype.isOptionDetailOut=function(t){var e=this;var n;if(t.is_out||!t.skus_availability||!((n=this.selectedSkus)===null||n===void 0?void 0:n.length)){return t.is_out}var i=this.selectedOptions.filter((function(e){return e.id==t.id})).length;if(i&&this.selectedOptions.length==1){return false}if(i){var o=this.selectedSkus.filter((function(t){return e.outSkus.includes(t)}));return Object.keys(t.skus_availability).some((function(t){return o.includes(Number(t))}))}return false};t.prototype.singleOption=function(t){var e=this;return i("div",null,i("select",{name:"options[".concat(t.id,"]"),required:t.required,class:"s-form-control",onChange:function(n){return e.changedHandler(n,t)}},i("option",{value:""},t.placeholder),t===null||t===void 0?void 0:t.details.map((function(t){return i("option",{value:t.id,disabled:e.canDisabled&&e.isOptionDetailOut(t),selected:t.is_selected},e.getOptionDetailName(t))}))))};t.prototype.multipleOptions=function(t){var e=this;return i("div",{class:{"s-product-options-multiple-options-wrapper":true,required:t.required}},t===null||t===void 0?void 0:t.details.map((function(n){return i("div",null,i("input",{type:"checkbox",value:n.id,disabled:e.isOptionDetailOut(n),checked:n.is_selected,required:t.required,name:"options[".concat(t.id,"][]"),id:"field-".concat(t.id,"-").concat(n.id),onChange:function(n){return e.changedHandler(n,t)},"aria-describedby":"options[".concat(t.id,"]-description")}),i("label",{htmlFor:"field-".concat(t.id,"-").concat(n.id)},e.getOptionDetailName(n)))})))};t.prototype.colorOption=function(t){var e=this;return i("fieldset",{class:"s-product-options-colors-wrapper"},t===null||t===void 0?void 0:t.details.map((function(n){return i("div",{class:"s-product-options-colors-item"},i("input",{type:"radio",value:n.id,required:t.required,checked:n.is_selected,name:"options[".concat(t.id,"]"),disabled:e.canDisabled&&e.isOptionDetailOut(n),id:"color-".concat(e.productId,"-").concat(t.id,"-").concat(n.id),onChange:function(n){return e.changedHandler(n,t)}}),i("label",{htmlFor:"color-".concat(e.productId,"-").concat(t.id,"-").concat(n.id)},i("span",{style:{"background-color":n.color}}),i("div",{innerHTML:e.getOptionDetailName(n,true,t.type)})))})))};t.prototype.thumbnailOption=function(t){var e=this;return i("div",{class:"s-product-options-thumbnails-wrapper"},t.details.map((function(n){return i("div",null,i("input",{type:"radio",value:n.id,"data-itemid":n.id,required:t.required,checked:n.is_selected,name:"options[".concat(t.id,"]"),"data-img-id":n.option_value,disabled:e.canDisabled&&e.isOptionDetailOut(n),id:"option_".concat(e.productId,"-").concat(t.id,"_").concat(n.id),onChange:function(n){return e.changedHandler(n,t)}}),i("label",{htmlFor:"option_".concat(e.productId,"-").concat(t.id,"_").concat(n.id),"data-img-id":n.option_value,class:"go-to-slide"},i("img",{"data-src":n.image,src:n.image,title:n.name,alt:n.name}),i("span",{innerHTML:c,class:"s-product-options-thumbnails-icon"}),e.isOptionDetailOut(n)?[i("small",{class:"s-product-options-thumbnails-stock-badge"},e.outOfStockText),e.canDisabled?i("div",{class:"s-product-options-thumbnails-badge-overlay"}):""]:""),i("p",null,e.getOptionDetailName(n,false)," "))})))};Object.defineProperty(t.prototype,"host",{get:function(){return a(this)},enumerable:false,configurable:true});return t}());d.style=u}}}));