PluginProbe
Booktics – Appointment Booking Calendar for Service Businesses / 1.0.14
Booktics – Appointment Booking Calendar for Service Businesses v1.0.14
1.0.29 1.0.28 1.0.27 1.0.26 1.0.25 1.0.24 1.0.23 1.0.22 1.0.21 1.0.20 1.0.19 trunk 1.0.0 1.0.1 1.0.10 1.0.11 1.0.12 1.0.13 1.0.14 1.0.15 1.0.16 1.0.17 1.0.18 1.0.2 1.0.3 All 31 releases
booktics / assets / build / chunks / js / 1960.js

1960.js in Booktics – Appointment Booking Calendar for Service Businesses 1.0.14, at assets/build/chunks/js/1960.js

15 lines 12.7 KB
No matching file
Up and down to move Enter to open Esc to close
Raw Download Zip
1 "use strict";(globalThis.webpackChunkbooktics=globalThis.webpackChunkbooktics||[]).push([[1960],{50847:(e,t,o)=>{o.d(t,{$j:()=>r,Ic:()=>i,TQ:()=>s,yO:()=>c});var l=o(59e3),n=o(16784),a=o(22564);const r=(0,l.A)(a.Title)`
2 margin-block: 0px !important;
3 `,s=(0,l.A)(a.Divider)`
4 margin-block: 16px;
5 `,c=(0,l.A)(a.Text)`
6 margin: 0px !important;
7 font-weight: 500;
8 `,i=(0,l.A)(n.A)`
9 .ant-table-thead .ant-table-cell {
10 padding-left: 8px;
11 padding-block: 0px;
12 height: 48px;
13 background-color: #ECEEF2;
14 }
15 `},51960:(e,t,o)=>{o.r(t),o.d(t,{default:()=>U});var l=o(51609),n=o(47143),a=o(86087),r=o(48876),s=o(60742),c=o(40309),i=o(11534);const m=()=>{const{setCustomerState:e}=(0,n.useDispatch)(c?.customer),{customerList:t=[],singleCustomer:o,searchQuery:l,total:a}=(0,n.useSelect)(e=>e(c?.customer).getCustomerState(),[]),r=async(t={})=>{t?.resetFilter&&(t={customer_id:"",paged:"",per_page:""});const o={...l,...t};e({isFiltering:!0});try{const t=await i.A.customer.allCustomers(o);t.success&&e({customerList:t?.data.items||[],total:t.data.total,searchQuery:o})}catch(e){console.log(e)}finally{return e({isFiltering:!1}),{complete:!0}}};return{getAllCustomers:r,addCustomer:async o=>{const l={name:o.name,email:o.email,phone:o.phone};try{e({editLoading:!0});const o=await i.A.customer.createCustomer(l);o.success&&e({customerList:[o.data,...t],total:a+1,visibleModal:!1}),e({editLoading:!1})}catch(t){console.log(t),e({editLoading:!1})}finally{e({editLoading:!1})}},deleteSingleCustomer:async o=>{try{if((await i.A.customer.deleteSingleCustomer(o)).success){const l=t.filter(e=>e.id!==o);e({customerList:l,total:a-1})}}catch(e){console.log(e)}},getSingleCustomer:async t=>{try{const o=await i.A.customer.singleCustomer(t);o.success&&e({singleCustomer:o?.data})}catch(e){console.log(e)}},customerBulkDelete:async(o=[])=>{try{if((await i.A.customer.bulkDeleteCustomer({ids:o})).success){const l=t.filter(e=>!o.includes(e.id));e({customerList:l})}}catch(e){console.log(e)}},editCustomer:async l=>{if(o)try{e({editLoading:!0});const n=await i.A.customer.updateCustomer(o.id,l);if(n?.success){const o=t?.map(e=>e?.id===n?.data?.id?n?.data:e);e({customerList:o,visibleEditModal:!1,editLoading:!1})}}catch(t){console.error("Failed to update team member:",t),e({editLoading:!1,visibleEditModal:!1})}finally{e({editLoading:!1,visibleEditModal:!1})}},onPaginationChange:(e,t)=>{r({paged:e,per_page:t})}}};var u=o(22564),d=o(93524);const{__}=wp?.i18n||{},E=React.memo(()=>{const{isMobile:e}=(0,d.U)(),{visibleModal:t,editLoading:o}=(0,n.useSelect)(e=>e(c.customer).getCustomerState(),[]),{setCustomerState:a}=(0,n.useDispatch)(c.customer),{addCustomer:r}=m(),[i]=s.A.useForm();return(0,l.createElement)(u.Modal,{open:t,title:__("Add New customer","booktics"),width:e?350:650,onClose:()=>a({visibleModal:!1}),onCancel:()=>a({visibleModal:!1}),footer:(0,l.createElement)(u.Flex,{gap:8,justify:"flex-end"},(0,l.createElement)(u.SecondaryButton,{text:__("Close","booktics"),onClick:()=>a({visibleModal:!1})}),(0,l.createElement)(u.PrimaryButton,{text:__("Add customer","booktics"),onClick:i.submit,loading:o}))},(0,l.createElement)(s.A,{layout:"vertical",form:i,onFinish:r},(0,l.createElement)(u.Row,{gutter:[20]},(0,l.createElement)(u.Col,{xs:24,md:12},(0,l.createElement)(u.TextInput,{label:__("Full Name","booktics"),name:"name",placeholder:__("Enter Customer full name","booktics"),required:!0})),(0,l.createElement)(u.Col,{xs:24,md:12},(0,l.createElement)(u.EmailInput,{label:__("Email","booktics"),name:"email",required:!0,placeholder:__("Enter Email","booktics")})),(0,l.createElement)(u.Col,{xs:24},(0,l.createElement)(u.CountryPhoneInput,{name:"phone",label:__("Phone","booktics"),placeholder:__("Enter phone number","booktics")})))))});var g=o(46714);const{__:p}=wp?.i18n||{},{DeleteOutlined:b}=window?.booktics?.libraryIcons||{},k=({record:e})=>{const{setCustomerState:t}=(0,n.useDispatch)(c.customer),{deleteSingleCustomer:o,getSingleCustomer:r}=m(),s=(0,a.useCallback)(()=>{window.wp?.hooks?.doAction("delete_confirmation",{title:p("Are you sure you want to delete the customer","booktics"),onOk:()=>o(e.id)})},[o,e.id]),i=async()=>{await r(e.id),t({visibleReportModal:!0})},d=(0,a.useMemo)(()=>[{key:"report",label:(0,l.createElement)(u.Flex,{gap:6},(0,l.createElement)(g.ReportIcon,null)," ",p("Report","booktics")),onClick:i},{key:"delete",danger:!0,label:(0,l.createElement)(u.Flex,{gap:6},(0,l.createElement)(b,null)," ",p("Delete","booktics")),onClick:s}],[s,i]);return(0,l.createElement)(u.Flex,{gap:8},(0,l.createElement)(u.Tooltip,{title:p("Edit Customer","booktics")},(0,l.createElement)(u.IconButton,{icon:(0,l.createElement)(g.EditIcon,null),onClick:async()=>{await r(e.id),t({visibleEditModal:!0})}})),(0,l.createElement)(u.Dropdown,{menu:{items:d},placement:"bottomRight",arrow:!1,trigger:"hover"},(0,l.createElement)(u.IconButton,{icon:(0,l.createElement)(g.ThreeDotIcon,null)})))},C=({record:e})=>{const{data:t}=(0,n.useSelect)(e=>e(c.settings).getSettingsState(),[]);return(0,l.createElement)(u.Pricing,{settings:t,price:e.total_amount})},{__:y}=wp?.i18n||{},x=[{title:y("Customer","booktics"),dataIndex:"display_name",key:"display_name",fixed:"left",width:"200px",render:(e,t)=>(0,l.createElement)(u.Flex,{vertical:!0},(0,l.createElement)(u.Title,{text:t.display_name,level:5}),(0,l.createElement)(u.Description,{text:t?.email}))},{title:y("Total Bookings","booktics"),dataIndex:"total_booking",key:"total_booking",width:"150px",render:(e,t)=>(0,l.createElement)("span",null,t.total_booking)},{title:y("Total Amount","booktics"),dataIndex:"total_amount",key:"total_amount",width:"100px",render:(e,t)=>(0,l.createElement)(C,{record:t})},{title:y("Registered On","booktics"),dataIndex:"user_registered",key:"user_registered",width:"200px",render:(e,t)=>(0,l.createElement)("span",null,t.user_registered)},{title:y("Action","booktics"),dataIndex:"action",key:"action",fixed:"right",width:"160px",render:(e,t)=>(0,l.createElement)(k,{record:t})}];var h=o(56580),w=o(4581);const S=({selectedRowKeys:e,setSelectedRowKeys:t,m:o})=>{const{customerBulkDelete:n,getAllCustomers:a}=m();return(0,l.createElement)(l.Fragment,null,e.length?(0,l.createElement)(u.BulkDelete,{selectedRowKeys:e,setSelectedRowKeys:t,deleteApi:n}):(0,l.createElement)(u.Flex,{gap:6},(0,l.createElement)(w.A,{searchFunc:a})))},{__:_}=wp?.i18n||{},{PlusOutlined:v}=window?.booktics?.libraryIcons||{},f=({selectedRowKeys:e,setSelectedRowKeys:t})=>{const{setCustomerState:o}=(0,n.useDispatch)(c.customer);return(0,l.createElement)(u.SecondaryMenu,{selectedView:"table",filteredTopMenu:(0,l.createElement)(l.Fragment,null,(0,l.createElement)(S,{selectedRowKeys:e,setSelectedRowKeys:t}),(0,l.createElement)(u.PrimaryButton,{text:_("New Customer","booktics"),icon:(0,l.createElement)(v,null),onClick:()=>o({visibleModal:!0})}))})};var R=o(50847);const{__:A}=wp?.i18n||{},F=({singleCustomer:e})=>(0,l.createElement)("div",null,(0,l.createElement)(R.$j,{level:5,text:A("Customer Information","booktics")}),(0,l.createElement)(R.TQ,null),(0,l.createElement)(u.Row,{gutter:[16,16]},(0,l.createElement)(u.Col,{xs:24,md:12},(0,l.createElement)(R.$j,{level:5,text:A("Name","booktics")}),(0,l.createElement)(u.Text,{text:e.name})),(0,l.createElement)(u.Col,{xs:24,md:12},(0,l.createElement)(R.$j,{level:5,text:A("Registered On","booktics")}),(0,l.createElement)(u.Text,{text:e?.user_registered})),(0,l.createElement)(u.Col,{xs:24,md:12},(0,l.createElement)(R.$j,{level:5,text:A("Email","booktics")}),(0,l.createElement)(u.Text,{text:e?.email})),e?.phone&&(0,l.createElement)(u.Col,{xs:24,md:12},(0,l.createElement)(R.$j,{level:5,text:A("Phone","booktics")}),(0,l.createElement)(u.Text,{text:e?.phone})))),I=({price:e})=>{const{data:t}=(0,n.useSelect)(e=>e(c.settings).getSettingsState(),[]);return(0,l.createElement)(u.Pricing,{settings:t,price:e})},{__:M}=wp?.i18n||{},T=[{title:M("No","booktics"),dataIndex:"no",key:"no",render:(e,t,o)=>(0,l.createElement)("span",null,o+1)},{title:M("Date","booktics"),dataIndex:"date",key:"date",render:(e,t)=>(0,l.createElement)("span",null,t?.date)},{title:M("Total Service","booktics"),dataIndex:"total_booking",key:"total_booking",render:(e,t)=>(0,l.createElement)("span",null,t?.total_booking)},{title:M("Amount","booktics"),dataIndex:"total_amount",key:"total_amount",render:(e,t)=>(0,l.createElement)(I,{price:t?.total_amount})}],{__:D}=wp?.i18n||{},P=({singleCustomer:e})=>(0,l.createElement)("div",null,(0,l.createElement)(R.$j,{level:5,text:D("Service Summary","booktics")}),(0,l.createElement)(R.TQ,null),(0,l.createElement)(R.Ic,{columns:T,dataSource:e?.orders,pagination:!1})),{__:K}=wp?.i18n||{},L=()=>{const{singleCustomer:e}=(0,n.useSelect)(e=>e(c.customer).getCustomerState(),[]),{data:t}=(0,n.useSelect)(e=>e(c.settings).getSettingsState(),[]);return(0,l.createElement)("div",null,(0,l.createElement)(R.$j,{level:5,text:K("Payment Summary","booktics")}),(0,l.createElement)(R.TQ,null),(0,l.createElement)(u.Flex,{justify:"space-between"},(0,l.createElement)(R.yO,{text:K("Subtotal","booktics")}),(0,l.createElement)(u.Pricing,{settings:t,price:e?.total_amount})),(0,l.createElement)(R.TQ,null),(0,l.createElement)(u.Flex,{justify:"space-between"},(0,l.createElement)(R.$j,{level:5,text:K("Total","booktics")}),(0,l.createElement)(u.Pricing,{settings:t,price:e?.total_amount})))},j=React.memo(()=>{const{isMobile:e}=(0,d.U)(),{visibleReportModal:t,singleCustomer:o}=(0,n.useSelect)(e=>e(c.customer).getCustomerState(),[]),{setCustomerState:a}=(0,n.useDispatch)(c.customer),r=()=>a({visibleReportModal:!1});if(o)return(0,l.createElement)(u.Modal,{open:t,title:o?.display_name,width:e?350:720,onClose:r,onCancel:r},(0,l.createElement)(u.Flex,{vertical:!0,gap:30},(0,l.createElement)(F,{singleCustomer:o}),(0,l.createElement)(P,{singleCustomer:o}),(0,l.createElement)(L,{singleCustomer:o})))}),{__:B}=wp?.i18n||{},Q=({form:e})=>{const{editCustomer:t}=m();return(0,l.createElement)(s.A,{layout:"vertical",form:e,onFinish:t},(0,l.createElement)(u.Row,{gutter:[20]},(0,l.createElement)(u.Col,{xs:24,md:12},(0,l.createElement)(u.TextInput,{label:B("Full Name","booktics"),name:"name",placeholder:B("Enter Customer full name","booktics"),required:!0})),(0,l.createElement)(u.Col,{xs:24,md:12},(0,l.createElement)(u.EmailInput,{label:B("Email","booktics"),name:"email",disabled:!0,placeholder:B("Enter Email","booktics")})),(0,l.createElement)(u.Col,{xs:24},(0,l.createElement)(u.CountryPhoneInput,{name:"phone",label:B("Phone","booktics"),placeholder:B("Enter phone number","booktics")}))))},{__:N}=wp?.i18n||{},$=React.memo(()=>{const{isMobile:e}=(0,d.U)(),{visibleEditModal:t,editLoading:o,singleCustomer:a}=(0,n.useSelect)(e=>e(c.customer).getCustomerState(),[]),[r]=u.Form.useForm(),{setCustomerState:s}=(0,n.useDispatch)(c.customer),i=()=>{s({visibleEditModal:!1})};if(a)return r.setFieldsValue(a),(0,l.createElement)(u.Modal,{open:t,title:N("Update Customer","booktics"),width:e?350:650,onClose:i,onCancel:i,footer:(0,l.createElement)(u.Flex,{gap:8,justify:"flex-end"},(0,l.createElement)(u.SecondaryButton,{text:N("Close","booktics"),onClick:i}),(0,l.createElement)(u.PrimaryButton,{text:N("Update customer","booktics"),onClick:r.submit,loading:o}))},(0,l.createElement)(Q,{form:r}))}),{__:O}=wp?.i18n||{},U=()=>{const{setCustomerState:e,resetCustomer:t}=(0,n.useDispatch)(c.customer),{customerList:o,total:s,searchQuery:i}=(0,n.useSelect)(e=>e(c?.customer).getCustomerState(),[]),{getAllCustomers:d,onPaginationChange:g}=m(),{rowSelection:p,selectedRowKeys:b,setSelectedRowKeys:k}=(()=>{const[e,t]=(0,a.useState)([]);return{rowSelection:{selectedRowKeys:e,onChange:e=>t(e)},selectedRowKeys:e,setSelectedRowKeys:t}})(),{isQueried:C}=(0,h.useSearchEmptyState)(i);return(0,a.useEffect)(()=>{o||d()},[i]),o?C||0!==o.length?C&&0===o.length?(0,l.createElement)(l.Fragment,null,(0,l.createElement)(r.A,{title:O("Customers","booktics")}),(0,l.createElement)(u.ResponsiveContainer,null,(0,l.createElement)(f,{selectedRowKeys:b,setSelectedRowKeys:k}),(0,l.createElement)(u.SearchNotFoundScreen,{searchQuery:i?.search||"",onClear:()=>t()})),(0,l.createElement)(E,null)):(0,l.createElement)(l.Fragment,null,(0,l.createElement)(r.A,{title:O("Customers","booktics")}),(0,l.createElement)(u.ResponsiveContainer,null,(0,l.createElement)(f,{selectedRowKeys:b,setSelectedRowKeys:k}),(0,l.createElement)(u.Table,{total:s,pageSize:i.per_page||s,currentPage:i.paged,dataSource:o,columns:x,scroll:{x:1e3},rowSelection:p,onPaginationChange:g})),(0,l.createElement)(E,null),(0,l.createElement)(j,null),(0,l.createElement)($,null)):(0,l.createElement)(l.Fragment,null,(0,l.createElement)(r.A,{title:O("Customers","booktics")}),(0,l.createElement)(u.ResponsiveContainer,null,(0,l.createElement)(u.EmptyScreen,{description:O(" Add a new customer to get started.","booktics"),title:O("No Customers Found","booktics"),addButtonText:O("Add New Customer","booktics"),onAddButtonClick:()=>e({visibleModal:!0})})),(0,l.createElement)(E,null)):(0,l.createElement)(u.RowSkeleton,null)}}}]);