PluginProbe
Booktics – Appointment Booking Calendar for Service Businesses / 1.0.21
Booktics – Appointment Booking Calendar for Service Businesses v1.0.21
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 / 5787.js

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

1 lines 5.8 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([[5787],{55787:(e,t,a)=>{a.r(t),a.d(t,{default:()=>b});var o=a(51609),c=a(47143),r=a(86087),n=a(47767),l=a(90803),i=a(40309),s=a(22564),d=a(56580),g=a(88802),y=a(4581),u=a(27723);const{PlusOutlined:p}=window?.booktics?.libraryIcons||{},m=({selectedRowKeys:e,setSelectedRowKeys:t})=>{const a=(0,n.Zp)(),{getCategories:c,categoryBulkDelete:r}=(0,l.A)();return(0,o.createElement)(s.SecondaryMenu,{selectedView:"table",filteredTopMenu:(0,o.createElement)(o.Fragment,null,e.length?(0,o.createElement)(s.BulkDelete,{selectedRowKeys:e,setSelectedRowKeys:t,deleteApi:r}):(0,o.createElement)("div",null,(0,o.createElement)(y.A,{searchFunc:c})),(0,o.createElement)(s.Can,null,(0,o.createElement)(s.PrimaryButton,{text:(0,u.__)("New Category","booktics"),icon:(0,o.createElement)(p,null),onClick:()=>a("/category/create")})))})};var C=a(46714);const{DeleteOutlined:h}=window?.booktics?.libraryIcons||{},k=({record:e})=>{const{deleteCategory:t,duplicateCategory:a}=(0,l.A)(),c=(0,r.useCallback)(async()=>{await a(e.id)},[a,e.id]),n=(0,r.useCallback)(()=>{window.wp?.hooks?.doAction("delete_confirmation",{title:(0,u.__)("Are you sure you want to delete the service","booktics"),onOk:()=>t(e.id)})},[t,e.id]),i=(0,r.useMemo)(()=>[{key:"clone",label:(0,o.createElement)(s.Flex,{gap:6},(0,o.createElement)(C.CopyIcon,null)," ",(0,u.__)("Clone","booktics")),onClick:c},{key:"delete",danger:!0,label:(0,o.createElement)(s.Flex,{gap:6},(0,o.createElement)(h,null)," ",(0,u.__)("Delete","booktics")),onClick:n}],[c,n]);return(0,o.createElement)(s.Dropdown,{menu:{items:i},placement:"bottomRight",arrow:!1,trigger:"hover"},(0,o.createElement)(s.IconButton,{icon:(0,o.createElement)(C.ThreeDotIcon,null)}))},E=({record:e})=>{const t=(0,n.Zp)();return(0,o.createElement)(s.Flex,{gap:8},(0,o.createElement)(s.Can,null,(0,o.createElement)(s.IconButton,{icon:(0,o.createElement)(C.EditIcon,null),onClick:()=>t(`/category/update/${e.id}`)}),(0,o.createElement)(k,{record:e})))},w=[{title:(0,u.__)("Categories","booktics"),dataIndex:"name",key:"name",fixed:"left",render:(e,t)=>(0,o.createElement)(s.Title,{level:5,text:t.name})},{title:(0,u.__)("Service","booktics"),dataIndex:"service",key:"service",render:(e,t)=>(0,o.createElement)("span",null,t?.services?.length)},{title:(0,u.__)("Description","booktics"),dataIndex:"description",key:"description",render:(e,t)=>(0,o.createElement)(s.Description,{text:t.description})},{title:(0,u.__)("Action","booktics"),dataIndex:"action",key:"action",width:"150px",fixed:"right",render:(e,t)=>(0,o.createElement)(E,{record:t})}],b=()=>{const e=(0,n.Zp)(),[t,a]=(0,r.useState)([]),{getCategories:y}=(0,l.A)(),{resetCategory:p}=(0,c.useDispatch)(i?.category),{categoryList:C,searchQuery:h,total:k}=(0,c.useSelect)(e=>e(i.category).getCategoryState(),[]),{isQueried:E}=(0,d.useSearchEmptyState)(h),{isAdmin:b}=(0,d.useUserRole)(),S={selectedRowKeys:t,onChange:e=>a(e)};if((0,r.useEffect)(()=>{C||y()},[h]),!C)return(0,o.createElement)(s.RowSkeleton,null);if(!E&&0===C.length)return(0,o.createElement)(s.EmptyScreen,{addButtonText:(0,u.__)("Add Category","booktics"),onAddButtonClick:()=>e("/category/create")});const f=b?w:w.filter(e=>"action"!==e.key);return(0,o.createElement)(o.Fragment,null,(0,o.createElement)(m,{selectedRowKeys:t,setSelectedRowKeys:a}),E&&0===C.length?(0,o.createElement)(s.SearchNotFoundScreen,{searchQuery:h?.search||"",onClear:()=>p()}):(0,o.createElement)(s.Table,{total:k,current:h.paged,pageSize:h.per_page||k,dataSource:C,pageSizeOptions:g.pagination.pageSizeOptions,columns:f,scroll:{x:1e3},rowSelection:!!b&&S,onPaginationChange:(e,t)=>{y({paged:e,per_page:t})}}))}},90803:(e,t,a)=>{a.d(t,{A:()=>l});var o=a(47143),c=a(47767),r=a(11534),n=a(40309);const l=()=>{const{setCategoryState:e}=(0,o.useDispatch)(n?.category),{id:t}=(0,c.g)(),a=(0,c.Zp)(),{categoryList:l=[],categoryIds:i,total:s,selectedServices:d,searchQuery:g}=(0,o.useSelect)(n?.category).getCategoryState();return{getCategories:async(t={})=>{t?.resetFilter&&(t={search:"",paged:"",per_page:""});const a={...g,...t};try{const t=await r.A.category.allCategories(a);t.success&&e({categoryList:t?.data?.items,total:t?.data?.total,searchQuery:a})}catch(e){console.error("Error fetching services:",e)}finally{return e({isFiltering:!1}),{complete:!0}}},addCategory:async(t,o=!0)=>{const c={...t,services:d};try{e({editLoading:!0});const t=await r.A.category.createCategory(c);t.success&&e({categoryList:[t?.data,...l],total:s+1,visibleModal:!1,categoryIds:[...i,t.data.id]}),e({editLoading:!1,visibleModal:!1}),o&&a("/services/category")}catch(t){console.log(t),e({editLoading:!1,visibleModal:!1})}finally{e({editLoading:!1,visibleModal:!1})}},getSingleCategory:async()=>{try{const a=await r.A.category.singleCategory(t);a.success&&e({singleCategory:{...a?.data}})}catch(e){console.log(e)}},editCategory:async o=>{const c={...o,services:d,category_id:t};try{e({editLoading:!0});const o=await r.A.category.updateCategory(t,c);if(o.success){const t=l?.map(e=>e?.id===o?.data?.id?o?.data:e);e({categoryList:t}),a("/services/category")}e({editLoading:!1})}catch(t){console.log(t),e({editLoading:!1})}finally{e({editLoading:!1})}},categoryBulkDelete:async(t=[])=>{try{if((await r.A.category.bulkDeleteCategory({ids:t})).success){const a=l.filter(e=>!t.includes(e.id));e({categoryList:a})}}catch(e){console.log(e)}},duplicateCategory:async t=>{try{e({isFiltering:!0});const a=await(r.A?.category?.cloneCategory(t));if(a?.success){const o=[...l],c=o.findIndex(e=>e.id===t);-1!==c?o.splice(c+1,0,a.data):o.push(a.data),e({categoryList:o,total:o.length})}}catch(e){console.error("Error duplicating category:",e)}finally{e({isFiltering:!1})}},deleteCategory:async t=>{try{if((await r.A.category.deleteSingleCategory(t)).success){const a=l.filter(e=>e.id!==t);e({categoryList:a,total:s-1})}}catch(e){console.log(e)}}}}}}]);