@bikdotai/bik-component-library 0.0.454-beta.ppi-3 → 0.0.454-beta.ppi-5
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.
- package/dist/cjs/components/product-picker-v2/modal.js +1 -1
- package/dist/cjs/components/product-picker-v2/rearrangeScreen.js +1 -1
- package/dist/cjs/components/product-picker-v2/reducers.d.ts +1 -0
- package/dist/cjs/components/product-picker-v2/reducers.js +1 -1
- package/dist/cjs/components/product-picker-v2/searchScreen.d.ts +1 -1
- package/dist/cjs/components/product-picker-v2/searchScreen.js +1 -1
- package/dist/cjs/components/product-picker-v2/selectedScreen.js +1 -1
- package/dist/cjs/components/product-picker-v2/useFetchFbStatus.d.ts +1 -0
- package/dist/cjs/components/product-picker-v2/useFetchFbStatus.js +1 -1
- package/dist/esm/components/product-picker-v2/modal.js +1 -1
- package/dist/esm/components/product-picker-v2/rearrangeScreen.js +1 -1
- package/dist/esm/components/product-picker-v2/reducers.d.ts +1 -0
- package/dist/esm/components/product-picker-v2/reducers.js +1 -1
- package/dist/esm/components/product-picker-v2/searchScreen.d.ts +1 -1
- package/dist/esm/components/product-picker-v2/searchScreen.js +1 -1
- package/dist/esm/components/product-picker-v2/selectedScreen.js +1 -1
- package/dist/esm/components/product-picker-v2/useFetchFbStatus.d.ts +1 -0
- package/dist/esm/components/product-picker-v2/useFetchFbStatus.js +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("react/jsx-runtime"),c=require("../../assets/icons/search.svg.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e,t=require("react/jsx-runtime"),c=require("../../assets/icons/search.svg.js"),r=require("react"),o=require("../../constants/Theme.js"),s=require("../button/Button.js"),n=require("../input/Input.js"),i=require("../modals/styledModal.js"),l=require("../spinner/Spinner.js"),a=require("../tag/Tag.js"),d=require("./collectionScreen.js"),u=require("./productInfoOverlay.js"),h=require("./productScreen.js"),p=require("./rearrangeScreen.js"),S=require("./reducers.js"),C=require("./searchScreen.js"),x=require("./selectedScreen.js"),g=require("./style.js"),j=require("./type.js"),b=require("./useFetchFbStatus.js");exports.ScreenName=void 0,(e=exports.ScreenName||(exports.ScreenName={})).Collections="collections",e.RearrangeProducts="rearrange",e.SelectedProducts="view",e.SearchProducts="searchProducts",e.Products="products";exports.ProductPickerModal=e=>{const{storeId:m,selectedItems:f,onClose:y,visible:P,zIndex:v,exactLimit:F,limit:I,hideCollectionCheckbox:k,hideProductCheckbox:O,outOfStockAction:R=j.OUT_OF_STOCK_ACTION.BLUR,hideVariantCheckbox:T,selectProductsFromCustomCollection:q,hideSelectionCount:D,title:E,width:w,renderWithoutModal:N,onClickSave:A,pickerType:B,hideProductVariants:$=!1,startupScreen:M=exports.ScreenName.Collections,rearrangeEnabled:V,selectSingleItem:L=!1,showProductDetailInfoIcon:_}=e,[z,G]=r.useReducer(S.collectionsReducer,{}),[H,W]=r.useState([exports.ScreenName.Collections,exports.ScreenName.RearrangeProducts].includes(M)?M:exports.ScreenName.Collections),[K,U]=r.useState("grid"),[Y,J]=r.useState(""),[Q,X]=r.useState(""),[Z,ee]=r.useState(0),[te,ce]=r.useState(!1),[re,oe]=r.useState(0),[se,ne]=r.useState(""),[ie,le]=r.useState(!1),[ae,de]=r.useState(!1),[ue,he]=r.useReducer(S.searchReducer,{}),[pe,Se]=r.useReducer(S.selectedColectionsReducer,Object.keys(f).length>0?f:{}),Ce=r.useRef(null),[xe,ge]=r.useState(!1),[je,be]=r.useState();b.useFetchFbStatusForCollections(pe,m,Se,e.fbStatusFetcher,!1),r.useEffect((()=>{ce(!0),de(!0),e.collectionFetcher(Z,m).then((e=>{G({type:"fetched",data:(null==e?void 0:e.collections)||{}}),ce(!1),ee((e=>e+1)),de(!1)})).catch()}),[]),r.useEffect((()=>{let e=0;Object.keys(pe||[]).forEach((t=>{var c;Object.keys((null===(c=pe[t])||void 0===c?void 0:c.products)||[]).forEach((c=>{var r,o;Object.keys((null===(o=null===(r=pe[t].products)||void 0===r?void 0:r[c])||void 0===o?void 0:o.variants)||[]).forEach((()=>{e+=1}))}))})),oe(e)})),r.useEffect((()=>{Q&&(ce(!0),e.productFetcher(Q,m).then((e=>{Object.keys(e).length&&G({type:"productsFetched",data:{collectionId:Q,products:e}}),ce(!1)})).catch())}),[Q]),r.useEffect((()=>{const t=setTimeout((()=>{"rearrange"!==H&&(se.length?(le(!0),e.searchFetcher(m,se).then((e=>{he({type:"set",data:e}),W("searchProducts"),ce(!1),le(!1)}))):W("collections"))}),800);return()=>clearTimeout(t)}),[se]),r.useEffect((()=>{A&&(e.onAdd(pe,re),me())}),[A]),r.useEffect((()=>{L&&Object.keys(pe||{}).length&&re&&(e.onAdd(pe,re),me())}),[L,pe,re]);const me=()=>{Se({type:"reset",data:{}})},fe=t.jsxs(g.ContainerStyle,{children:[e.postHeader&&t.jsx("div",Object.assign({style:{padding:"0 24px"}},{children:e.postHeader})),!e.hideGlobalSearch&&t.jsx(t.Fragment,{children:("collections"===H||"searchProducts"===H)&&t.jsx("div",Object.assign({style:{padding:N?"8px 16px":"12px 24px",borderBottom:"1px solid #E0E0E0"}},{children:t.jsx(n.Input,{noKeyDownChange:!0,noErrorHint:!0,rightIcon:{icon:()=>ie?t.jsx(l.Spinner,{size:"small",color:o.COLORS.content.primary}):t.jsx(c.default,{})},id:"listInput",height:"24px",type:"text",value:se,onChangeText:e=>{e.length&&e.trim().length?ne(e):ne("")}})}))}),t.jsxs(g.ScrollContainerStyle,Object.assign({ref:Ce},{children:["collections"===H&&t.jsx(d.CollectionsScreen,{customCollectionRestriction:e.customCollectionRestriction,dataLoading:ae,collections:z,selectedCollectionsDispatch:Se,setCollectionId:J,setSelectedCollectionId:X,setScreen:W,selectedCollections:pe,collectionFetcher:e.collectionFetcher,storeId:m,collectionsDispatch:G,setSaveDisabled:ce,pagingControls:{curPage:Z,setCurPage:ee},hideCollectionCheckbox:k,renderWithoutModal:N,pickerType:B}),"products"===H&&Y&&t.jsx(S.CollectionIdContext.Provider,Object.assign({value:Y},{children:t.jsx(h.ProductsScreen,{hideInCollectionSearch:e.hideInCollectionSearch,customCollectionRestriction:e.customCollectionRestriction,productFetcher:e.productFetcher,setScreen:W,storeId:m,data:z[Y],collectionsDispatch:G,selectedCollectionsDispatch:Se,selectedData:pe,setSaveDisabled:ce,searchInCollectionFetcher:e.searchInCollectionFetcher,hideProductCheckbox:O,outOfStockAction:R,hideVariantCheckbox:T,selectProductsFromCustomCollection:q,renderWithoutModal:N,pickerType:B,hideProductVariants:$,fbStatusFetcher:e.fbStatusFetcher,onInfoIconClick:e=>{ge(!0),be(e)},showProductDetailInfoIcon:_})})),"view"===H&&t.jsx(x.SelectedScreen,{selectedCollections:pe||{},selectedCollectionsDispatch:Se,setScreen:W,collections:z,outOfStockAction:R,storeId:m,fbStatusFetcher:e.fbStatusFetcher}),"rearrange"===H&&t.jsx(p.RearrangeScreen,{selectedCollections:pe||{},selectedCollectionsDispatch:Se,setScreen:W,outOfStockAction:R,rearrangeViewType:"grid"===K?"list":"grid",scrollContainerRef:Ce,storeId:m,fbStatusFetcher:e.fbStatusFetcher}),"searchProducts"===H&&t.jsx(C.SearchScreen,{customCollectionRestriction:e.customCollectionRestriction,selectedCollections:pe||{},searchedCollections:ue||{},searchedCollectionsDispatch:he,selectedCollectionsDispatch:Se,setScreen:W,collections:z,onBackPress:()=>{ne(""),he({type:"set",data:{}})},pickerType:B,hideProductCheckbox:O,hideProductVariants:$,hideVariantCheckbox:T,storeId:m,fbStatusFetcher:e.fbStatusFetcher})]}))]});return t.jsx(t.Fragment,{children:N?fe:t.jsxs(i.StyledModal,Object.assign({zIndex:v,open:P,onClose:()=>{null==y||y(),me()},headingTitle:E||("collections"===H||"products"===H?"Select Products":"view"===H?"Selected Products":"searchProducts"===H?"Searched Products":"rearrange"===H?"Rearrange Products":void 0),footerShadow:!0,centralContainerStyles:{width:w||"600px"},headerRightCustomElement:"rearrange"===H?(console.log("ignore:",U),t.jsx(t.Fragment,{})):t.jsx(t.Fragment,{}),primaryButton:{buttonText:te?"Loading...":H===exports.ScreenName.RearrangeProducts?"Done":"Add",disabled:te||re<1||F&&re<F||!F&&I&&re>I||!1,onClick:()=>{e.onAdd(pe,re),me()}},footerLeftCustomElement:D?t.jsx(t.Fragment,{}):F&&re>F?t.jsx(a.Tag,{tagText:`You can only select ${F} products`,type:"negative"}):I&&re>I?t.jsx(a.Tag,{tagText:`You can only select ${I} products`,type:"negative"}):re>0?t.jsx(s.Button,{onClick:()=>{W(V?exports.ScreenName.RearrangeProducts:exports.ScreenName.SelectedProducts)},buttonText:F?`${re}/${F} products selected`:`${re} products selected`,buttonType:["rearrange","view"].includes(H)?"tertiaryGray":"tertiary",disabled:["rearrange","view"].includes(H)}):t.jsx(s.Button,{disabled:!0,buttonText:F?`${re}/${F} products selected`:`${re} products selected`,buttonType:"tertiaryGray"}),hideCrossButton:xe},{children:[fe,xe&&je?t.jsx(u.ProductInfoOverlay,{productData:je,outOfStockAction:R,onClose:()=>{ge(!1)}}):t.jsx(t.Fragment,{})]}))})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("../../assets/icons/arrow_left.svg.js"),r=require("react"),s=require("react-beautiful-dnd"),c=require("../../constants/Theme.js"),o=require("../icon-button/IconButton.js"),n=require("../TypographyStyle.js"),i=require("./emptyState.js"),a=require("./helpers/ProductHelper.js"),l=require("./style.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("../../assets/icons/arrow_left.svg.js"),r=require("react"),s=require("react-beautiful-dnd"),c=require("../../constants/Theme.js"),o=require("../icon-button/IconButton.js"),n=require("../TypographyStyle.js"),i=require("./emptyState.js"),a=require("./helpers/ProductHelper.js"),l=require("./style.js"),d=require("./useFetchFbStatus.js"),u=require("./variantComponents.js");exports.RearrangeScreen=p=>{const{selectedCollections:j,selectedCollectionsDispatch:S,setScreen:h,rearrangeViewType:y,outOfStockAction:f,scrollContainerRef:x,storeId:q,fbStatusFetcher:C}=p,[O,b]=r.useState(a.parseSelectedVariantsToArray(j));r.useEffect((()=>{var e;null===(e=null==x?void 0:x.current)||void 0===e||e.scrollTo({top:0}),d.fetchFbStatusCollection(j,q,S,C),b(a.parseSelectedVariantsToArray(j))}),[j]);return e.jsxs(s.DragDropContext,Object.assign({onDragEnd:e=>{if(!e.destination)return;const t=O,[r]=t.splice(e.source.index,1);t.splice(e.destination.index,0,r),t.forEach(((e,t)=>{e.displayOrder=t})),b(t)}},{children:[e.jsxs(l.SelectedScreenHeader,{children:[e.jsx(o.IconButton,{Icon:t.default,width:16,height:16,color:c.COLORS.content.secondary,onClick:()=>{h("collections")}}),e.jsx(n.BodyCaption,Object.assign({color:c.COLORS.content.secondary},{children:"All Products"}))]}),Object.keys(j).length>0?"list"===y?e.jsx(u.VariantsList,{selectedVariants:O,setSelectedVariants:b,selectedCollectionsDispatch:S,outOfStockAction:f}):e.jsx(u.VariantsGrid,{selectedVariants:O,setSelectedVariants:b,selectedCollectionsDispatch:S}):e.jsx(i.EmptyState,{title:"No Products Selected",subtitle:"Selected products will appear here"})]}))};
|
|
@@ -15,4 +15,5 @@ export interface CollectionsActions {
|
|
|
15
15
|
}
|
|
16
16
|
export declare function collectionsReducer(collections: Collection, action: CollectionsActions): any;
|
|
17
17
|
export declare function paginationReducer(collections: SelectedItems, action: SelectedCollectionsActions): SelectedItems;
|
|
18
|
+
export declare function searchReducer(collections: SelectedItems, action: SelectedCollectionsActions): SelectedItems;
|
|
18
19
|
export declare const CollectionIdContext: import("react").Context<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("lodash");const e=require("react").createContext("");exports.CollectionIdContext=e,exports.collectionsReducer=function(t,e){let o={};switch(e.type){case"fetched":return o=Object.assign({},e.data),o;case"productsFetched":return console.log("vj: productsFetched",{collections:t,action:e}),o=Object.assign({},t),o[e.data.collectionId].products=e.data.products,console.log("vj: collectionsCopy",{collectionsCopy:o}),o;case"paged":return console.log("vj: paged",{collections:t,action:e}),o=Object.assign(Object.assign({},t),e.data),o;case"productsPaged":return console.log("vj: pagedProducts",{collections:t,action:e}),o=Object.assign({},t),e.data.collectionId,o[e.data.collectionId].products=Object.assign(Object.assign({},o[e.data.collectionId].products),e.data.products),o;default:return{}}},exports.paginationReducer=function(t,e){let o={};switch(console.log("vj: selected Items",t),e.type){case"paginate":console.log("vj: paginate",e),o=Object.assign({},t);for(const t in e.data)if(Object.prototype.hasOwnProperty.call(e.data,t)){const a=e.data[t];if(Object.prototype.hasOwnProperty.call(o,t)){const e=o[t];o[t]=Object.assign(Object.assign({},e),{products:Object.assign(Object.assign({},e.products),a.products)})}else o[t]=a}return console.log("vj: collections copy",o),o;case"update":return console.log("vj: update",e),o=Object.assign({},t),console.log("vj: update collection",e),o;case"set":return o=Object.assign(Object.assign({},t),e.data),console.log("vj: update collection",e),o;case"filter":o={};for(const a in t)if(a in e.data){const c=Object.assign({},t[a]),s=e.data[a],d={};for(const t in c.products)if(t in s.products){const e=Object.assign({},c.products[t]),o=s.products[t],a={};for(const t in e.variants)t in o.variants&&(a[t]=Object.assign({},e.variants[t]));Object.keys(a).length>0&&(e.variants=a,d[t]=e)}Object.keys(d).length>0&&(c.products=d,o[a]=c)}return o;default:return t}},exports.selectedColectionsReducer=function(e,o){var a,c,s,d,n,l;let r={},i="",u="",p="";switch(console.log("vj: selected Items",e),o.type){case"selected":return console.log("vj: selectedColectionsReducer selected",o),r=t.cloneDeep(e),o.data.val.isSmartCollection&&(o.data.isRestricted&&(r={}),r.isCustom=!0),r[o.data.id]=o.data.val,r;case"unselected":return r=t.cloneDeep(e),(null==r?void 0:r.isCustom)&&(r.isCustom=!1),delete r[o.data.id],r;case"productUnselected":return r=t.cloneDeep(e),i=o.data.productId,u=o.data.collectionId,delete r[u].products[i],Object.keys(r[u].products).length||((null==r?void 0:r.isCustom)&&(r.isCustom=!1),delete r[u]),r;case"productSelected":return r=t.cloneDeep(e),i=o.data.productId,u=o.data.collectionId,(null===(a=o.data.catalogOnlyData)||void 0===a?void 0:a.isSmartCollection)&&(o.data.isRestricted&&(r={}),r.isCustom=!0),(null==r?void 0:r[u])||(r[u]=o.data.catalogOnlyData,r[u].products={}),r[u].products[i]=o.data.product,r;case"variantSelected":return r=t.cloneDeep(e),i=o.data.productId,u=o.data.collectionId,p=o.data.variantId,(null===(c=o.data.catalogOnlyData)||void 0===c?void 0:c.isSmartCollection)&&(o.data.isRestricted&&(r={}),r.isCustom=!0),(null==r?void 0:r[u])||(r[u]=o.data.catalogOnlyData,r[u].products={},r[u].products[i]=o.data.productOnlyData,r[u].products[i].variants={}),(null===(d=null===(s=null==r?void 0:r[u])||void 0===s?void 0:s.products)||void 0===d?void 0:d[i])||((null===(n=null==r?void 0:r[u])||void 0===n?void 0:n.products)||(r[u].products={}),r[u].products[i]=o.data.productOnlyData,r[u].products[i].variants={}),r[u].products[i].variants[p]=o.data.variant,r;case"variantUnselected":return r=t.cloneDeep(e),i=o.data.productId,u=o.data.collectionId,p=o.data.variantId,delete r[u].products[i].variants[p],Object.keys(r[u].products[i].variants).length||(delete r[u].products[i],Object.keys(r[u].products).length||((null===(l=r[u])||void 0===l?void 0:l.isSmartCollection)&&(r.isCustom=!1),delete r[u])),r;case"reset":return{};default:return e}};
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var t=require("lodash");const e=require("react").createContext("");exports.CollectionIdContext=e,exports.collectionsReducer=function(t,e){let o={};switch(e.type){case"fetched":return o=Object.assign({},e.data),o;case"productsFetched":return console.log("vj: productsFetched",{collections:t,action:e}),o=Object.assign({},t),o[e.data.collectionId].products=e.data.products,console.log("vj: collectionsCopy",{collectionsCopy:o}),o;case"paged":return console.log("vj: paged",{collections:t,action:e}),o=Object.assign(Object.assign({},t),e.data),o;case"productsPaged":return console.log("vj: pagedProducts",{collections:t,action:e}),o=Object.assign({},t),e.data.collectionId,o[e.data.collectionId].products=Object.assign(Object.assign({},o[e.data.collectionId].products),e.data.products),o;default:return{}}},exports.paginationReducer=function(t,e){let o={};switch(console.log("vj: selected Items",t),e.type){case"paginate":console.log("vj: paginate",e),o=Object.assign({},t);for(const t in e.data)if(Object.prototype.hasOwnProperty.call(e.data,t)){const a=e.data[t];if(Object.prototype.hasOwnProperty.call(o,t)){const e=o[t];o[t]=Object.assign(Object.assign({},e),{products:Object.assign(Object.assign({},e.products),a.products)})}else o[t]=a}return console.log("vj: collections copy",o),o;case"update":return console.log("vj: update",e),o=Object.assign({},t),console.log("vj: update collection",e),o;case"set":return o=Object.assign(Object.assign({},t),e.data),console.log("vj: update collection",e),o;case"filter":o={};for(const a in t)if(a in e.data){const c=Object.assign({},t[a]),s=e.data[a],d={};for(const t in c.products)if(t in s.products){const e=Object.assign({},c.products[t]),o=s.products[t],a={};for(const t in e.variants)t in o.variants&&(a[t]=Object.assign({},e.variants[t]));Object.keys(a).length>0&&(e.variants=a,d[t]=e)}Object.keys(d).length>0&&(c.products=d,o[a]=c)}return o;default:return t}},exports.searchReducer=function(t,e){return"set"===e.type?e.data:t},exports.selectedColectionsReducer=function(e,o){var a,c,s,d,n,l;let r={},i="",u="",p="";switch(console.log("vj: selected Items",e),o.type){case"selected":return console.log("vj: selectedColectionsReducer selected",o),r=t.cloneDeep(e),o.data.val.isSmartCollection&&(o.data.isRestricted&&(r={}),r.isCustom=!0),r[o.data.id]=o.data.val,r;case"unselected":return r=t.cloneDeep(e),(null==r?void 0:r.isCustom)&&(r.isCustom=!1),delete r[o.data.id],r;case"productUnselected":return r=t.cloneDeep(e),i=o.data.productId,u=o.data.collectionId,delete r[u].products[i],Object.keys(r[u].products).length||((null==r?void 0:r.isCustom)&&(r.isCustom=!1),delete r[u]),r;case"productSelected":return r=t.cloneDeep(e),i=o.data.productId,u=o.data.collectionId,(null===(a=o.data.catalogOnlyData)||void 0===a?void 0:a.isSmartCollection)&&(o.data.isRestricted&&(r={}),r.isCustom=!0),(null==r?void 0:r[u])||(r[u]=o.data.catalogOnlyData,r[u].products={}),r[u].products[i]=o.data.product,r;case"variantSelected":return r=t.cloneDeep(e),i=o.data.productId,u=o.data.collectionId,p=o.data.variantId,(null===(c=o.data.catalogOnlyData)||void 0===c?void 0:c.isSmartCollection)&&(o.data.isRestricted&&(r={}),r.isCustom=!0),(null==r?void 0:r[u])||(r[u]=o.data.catalogOnlyData,r[u].products={},r[u].products[i]=o.data.productOnlyData,r[u].products[i].variants={}),(null===(d=null===(s=null==r?void 0:r[u])||void 0===s?void 0:s.products)||void 0===d?void 0:d[i])||((null===(n=null==r?void 0:r[u])||void 0===n?void 0:n.products)||(r[u].products={}),r[u].products[i]=o.data.productOnlyData,r[u].products[i].variants={}),r[u].products[i].variants[p]=o.data.variant,r;case"variantUnselected":return r=t.cloneDeep(e),i=o.data.productId,u=o.data.collectionId,p=o.data.variantId,delete r[u].products[i].variants[p],Object.keys(r[u].products[i].variants).length||(delete r[u].products[i],Object.keys(r[u].products).length||((null===(l=r[u])||void 0===l?void 0:l.isSmartCollection)&&(r.isCustom=!1),delete r[u])),r;case"reset":return{};default:return e}};
|
|
@@ -5,7 +5,7 @@ interface SearchScreenInterface {
|
|
|
5
5
|
customCollectionRestriction?: boolean;
|
|
6
6
|
selectedCollections: SelectedItems;
|
|
7
7
|
searchedCollections: SelectedItems;
|
|
8
|
-
|
|
8
|
+
searchedCollectionsDispatch: React.Dispatch<SelectedCollectionsActions>;
|
|
9
9
|
selectedCollectionsDispatch: React.Dispatch<SelectedCollectionsActions>;
|
|
10
10
|
setScreen: React.Dispatch<React.SetStateAction<string>>;
|
|
11
11
|
collections: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("../../assets/icons/arrow_left.svg.js"),o=require("../icon-button/IconButton.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("../../assets/icons/arrow_left.svg.js"),o=require("react"),i=require("../icon-button/IconButton.js"),r=require("../TypographyStyle.js"),s=require("./emptyState.js"),c=require("./productScreen.js"),l=require("./style.js"),d=require("./useFetchFbStatus.js"),n=require("./utility.js");exports.SearchScreen=u=>{const{customCollectionRestriction:a,selectedCollections:v,searchedCollections:h,searchedCollectionsDispatch:p,selectedCollectionsDispatch:j,setScreen:y,collections:b,onBackPress:k,hideVariantCheckbox:x,pickerType:C,hideProductVariants:f,hideProductCheckbox:S,storeId:q,fbStatusFetcher:P}=u;o.useEffect((()=>{d.fetchFbStatusCollection(h,q,p,P)}),[h]);const O=(e,t)=>{var o,i,r,s,c,l,d,n,u;let a=0,h=0;return!!((null===(i=null===(o=null==v?void 0:v[e])||void 0===o?void 0:o.products)||void 0===i?void 0:i[t])&&(null===(l=Object.keys((null===(c=null===(s=null===(r=null==b?void 0:b[e])||void 0===r?void 0:r.products)||void 0===s?void 0:s[t])||void 0===c?void 0:c.variants)||[]))||void 0===l||l.forEach((()=>h++)),Object.keys((null===(u=null===(n=null===(d=null==v?void 0:v[e])||void 0===d?void 0:d.products)||void 0===n?void 0:n[t])||void 0===u?void 0:u.variants)||[]).forEach((()=>a++)),a>0&&h!==a))};return e.jsxs("div",{children:[e.jsxs(l.SelectedScreenHeader,{children:[e.jsx(i.IconButton,{Icon:t.default,onClick:()=>{y("collections"),k()}}),e.jsx(r.BodyCaption,{children:"Searched Products"})]}),e.jsx("div",{children:Object.keys(h).length?e.jsx(e.Fragment,{children:Object.keys(h).map((t=>{var o;return Object.keys((null===(o=null==h?void 0:h[t])||void 0===o?void 0:o.products)||[]).map((o=>{let i=!1;return(null==h?void 0:h.isCustom)&&(i=!0),e.jsx(c.ProductGroup,{collectionId:t,upliftAdditions:(e,o)=>((e,t,o)=>{const i=n.liftTheStateUp(o,h[e]);j({type:t,data:Object.assign(Object.assign({},i),{isRestricted:a})})})(t,e,o),productId:o,data:h[t].products[o],isProductPartiallyChecked:O(t,o),selectedData:v,selectedCollectionsDispatch:j,viewOnly:i,hideProductCheckbox:S,hideVariantCheckbox:x,hideProductVariants:f,pickerType:C},o)}))}))}):e.jsx(s.EmptyState,{title:"No search results found",subtitle:"We couldn’t find the product you were looking for."})})]})};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("../../assets/icons/arrow_left.svg.js"),r=require("react"),o=require("../icon-button/IconButton.js"),s=require("../TypographyStyle.js"),c=require("./emptyState.js"),
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});var e=require("react/jsx-runtime"),t=require("../../assets/icons/arrow_left.svg.js"),r=require("react"),o=require("../icon-button/IconButton.js"),s=require("../TypographyStyle.js"),c=require("./emptyState.js"),l=require("./productScreen.js"),n=require("./reducers.js"),i=require("./style.js"),u=require("./useFetchFbStatus.js"),d=require("./utility.js");exports.SelectedScreen=a=>{const{selectedCollections:v,selectedCollectionsDispatch:p,setScreen:j,collections:f,outOfStockAction:S,storeId:g,fbStatusFetcher:h}=a,y=r.useRef(0),b=r.useRef(null),[x,q]=r.useReducer(n.paginationReducer,{});r.useEffect((()=>{y.current=0;const e=d.paginateSelectedItems(v,10,0);q({type:"paginate",data:e}),u.fetchFbStatusCollection(e,g,q,h,"set"),y.current+=1}),[]),r.useEffect((()=>{q({type:"filter",data:v})}),[v]),r.useEffect((()=>{console.log("vj: observertarget",b.current);const e=new IntersectionObserver((e=>{if(console.log("vj: observertargetinside",e),e[0].isIntersecting&&(console.log("vj: nextPageRef",y.current),y.current>0)){const e=d.paginateSelectedItems(v,10,y.current);console.log("paginated inside observer target",{paginatedProducts:e,selectedCollections:v,curScreenData:x}),q({type:"paginate",data:e}),u.fetchFbStatusCollection(e,g,q,h,"update"),y.current+=1}}),{threshold:1});return b.current&&e.observe(b.current),()=>{b.current&&e.unobserve(b.current)}}),[b,v]);const C=(e,t)=>{var r,o,s,c,l,n,i,u,d;let a=0,p=0;return!!((null===(o=null===(r=null==v?void 0:v[e])||void 0===r?void 0:r.products)||void 0===o?void 0:o[t])&&(null===(n=Object.keys((null===(l=null===(c=null===(s=null==f?void 0:f[e])||void 0===s?void 0:s.products)||void 0===c?void 0:c[t])||void 0===l?void 0:l.variants)||[]))||void 0===n||n.forEach((()=>p++)),Object.keys((null===(d=null===(u=null===(i=null==v?void 0:v[e])||void 0===i?void 0:i.products)||void 0===u?void 0:u[t])||void 0===d?void 0:d.variants)||[]).forEach((()=>a++)),a>0&&p!==a))};return e.jsxs("div",{children:[e.jsxs(i.SelectedScreenHeader,{children:[e.jsx(o.IconButton,{Icon:t.default,onClick:()=>{j("collections")}}),e.jsx(s.BodyCaption,{children:"Selected Products"})]}),e.jsxs("div",{children:[Object.keys(x).length>0?e.jsx(e.Fragment,{children:Object.keys(x).map((t=>{var r;return Object.keys((null===(r=null==x?void 0:x[t])||void 0===r?void 0:r.products)||[]).map((r=>{let o=!1;return(null==x?void 0:x.isCustom)&&(o=!0),e.jsx(l.ProductGroup,{upliftAdditions:null,collectionId:t,productId:r,data:x[t].products[r],isProductPartiallyChecked:C(t,r),selectedData:v,selectedCollectionsDispatch:p,viewOnly:o,outOfStockAction:S},r)}))}))}):e.jsx(c.EmptyState,{title:"No Products Selected",subtitle:"Select products will appear here"}),e.jsx("div",{ref:b})]})]})};
|
|
@@ -3,3 +3,4 @@ import { SelectedCollectionsActions } from './reducers';
|
|
|
3
3
|
export declare const useFetchFbStatusForCollections: (data: SelectedItems, storeId: string, selectedCollectionsDispatch: React.Dispatch<SelectedCollectionsActions>, fbStatusFetcher?: ((storeId: string, variantIds: string[]) => FbStatusFetcherReturn) | undefined, autoFetch?: boolean, setSearchedCollections?: React.Dispatch<React.SetStateAction<SelectedItems | undefined>>) => {
|
|
4
4
|
fetchFbStatus: () => void;
|
|
5
5
|
};
|
|
6
|
+
export declare const fetchFbStatusCollection: (data: SelectedItems, storeId: string, dispatcher: any, fbStatusFetcher?: ((storeId: string, variantIds: string[]) => FbStatusFetcherReturn) | undefined, dispatchType?: string) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});exports.
|
|
1
|
+
"use strict";Object.defineProperty(exports,"__esModule",{value:!0});const o=(o,v,d)=>{Object.keys(o).forEach((v=>{var d,l;const i=null!==(l=null===(d=o[v])||void 0===d?void 0:d.products)&&void 0!==l?l:{};Object.keys(i).forEach((d=>{var l,i,t,n;const s=null!==(n=null===(t=null===(i=null===(l=o[v])||void 0===l?void 0:l.products)||void 0===i?void 0:i[d])||void 0===t?void 0:t.variants)&&void 0!==n?n:{};Object.keys(s).forEach((l=>{var i,t,n,s;const u=null===(s=null===(n=null===(t=null===(i=o[v])||void 0===i?void 0:i.products)||void 0===t?void 0:t[d])||void 0===n?void 0:n.variants)||void 0===s?void 0:s[l];u&&!u.fbStatus&&(u.fbStatus="APPROVED")}))}))})),v({type:d,data:o})};exports.fetchFbStatusCollection=function(v,d,l,i){let t=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"paged";i||o(v,l,t);const n=(o=>{const v=[];return Object.keys(o).forEach((d=>{var l,i;const t=null!==(i=null===(l=o[d])||void 0===l?void 0:l.products)&&void 0!==i?i:{};Object.keys(t).forEach((l=>{var i,t,n,s;const u=null!==(s=null===(n=null===(t=null===(i=o[d])||void 0===i?void 0:i.products)||void 0===t?void 0:t[l])||void 0===n?void 0:n.variants)&&void 0!==s?s:{};Object.keys(u).forEach((i=>{var t,n,s,u;const c=null===(u=null===(s=null===(n=null===(t=o[d])||void 0===t?void 0:t.products)||void 0===n?void 0:n[l])||void 0===s?void 0:s.variants)||void 0===u?void 0:u[i];(null==c?void 0:c.fbStatus)||v.push(i)}))}))})),v})(v);console.log("vj: variantids",n),n.length>0&&i&&i(d,n).then((o=>{const d=Object.assign({},v);Object.keys(d).forEach((v=>{var l,i;const t=null!==(i=null===(l=d[v])||void 0===l?void 0:l.products)&&void 0!==i?i:{};Object.keys(t).forEach((l=>{var i,t,n,s;const u=null!==(s=null===(n=null===(t=null===(i=d[v])||void 0===i?void 0:i.products)||void 0===t?void 0:t[l])||void 0===n?void 0:n.variants)&&void 0!==s?s:{};Object.keys(u).forEach((i=>{var t,n,s,u;const c=null===(u=null===(s=null===(n=null===(t=d[v])||void 0===t?void 0:t.products)||void 0===n?void 0:n[l])||void 0===s?void 0:s.variants)||void 0===u?void 0:u[i];c&&"REJECTED"===o[i]?c.fbStatus="REJECTED":c&&"APPROVED"===o[i]&&(c.fbStatus="APPROVED")}))}))})),console.log("updated data",d),l({type:t,data:d})})).catch((d=>{console.error("Error in fbStatusFetcher",d),o(v,l,t)}))},exports.useFetchFbStatusForCollections=function(o,v,d,l){let i=arguments.length>5?arguments[5]:void 0;const t=()=>{if(!l){const v=Object.assign({},o);Object.keys(v).forEach((o=>{var d,l;const i=null!==(l=null===(d=v[o])||void 0===d?void 0:d.products)&&void 0!==l?l:{};Object.keys(i).forEach((d=>{var l,i,t,n;const s=null!==(n=null===(t=null===(i=null===(l=v[o])||void 0===l?void 0:l.products)||void 0===i?void 0:i[d])||void 0===t?void 0:t.variants)&&void 0!==n?n:{};Object.keys(s).forEach((l=>{var i,t,n,s;const u=null===(s=null===(n=null===(t=null===(i=v[o])||void 0===i?void 0:i.products)||void 0===t?void 0:t[d])||void 0===n?void 0:n.variants)||void 0===s?void 0:s[l];u&&(u.fbStatus="APPROVED")}))}))})),i?i(v):d({type:"paged",data:v})}const t=(()=>{const v=[];return Object.keys(o).forEach((d=>{var l,i;const t=null!==(i=null===(l=o[d])||void 0===l?void 0:l.products)&&void 0!==i?i:{};Object.keys(t).forEach((l=>{var i,t,n,s;const u=null!==(s=null===(n=null===(t=null===(i=o[d])||void 0===i?void 0:i.products)||void 0===t?void 0:t[l])||void 0===n?void 0:n.variants)&&void 0!==s?s:{};Object.keys(u).forEach((i=>{var t,n,s,u;const c=null===(u=null===(s=null===(n=null===(t=o[d])||void 0===t?void 0:t.products)||void 0===n?void 0:n[l])||void 0===s?void 0:s.variants)||void 0===u?void 0:u[i];(null==c?void 0:c.fbStatus)||v.push(i)}))}))})),v})();console.log("vj: variantids",t),t.length>0&&l&&l(v,t).then((v=>{const l=Object.assign({},o);Object.keys(l).forEach((o=>{var d,i;const t=null!==(i=null===(d=l[o])||void 0===d?void 0:d.products)&&void 0!==i?i:{};Object.keys(t).forEach((d=>{var i,t,n,s;const u=null!==(s=null===(n=null===(t=null===(i=l[o])||void 0===i?void 0:i.products)||void 0===t?void 0:t[d])||void 0===n?void 0:n.variants)&&void 0!==s?s:{};Object.keys(u).forEach((i=>{var t,n,s,u;const c=null===(u=null===(s=null===(n=null===(t=l[o])||void 0===t?void 0:t.products)||void 0===n?void 0:n[d])||void 0===s?void 0:s.variants)||void 0===u?void 0:u[i];c&&"REJECTED"===v[i]?c.fbStatus="REJECTED":c&&"APPROVED"===v[i]&&(c.fbStatus="APPROVED")}))}))})),console.log("variantids",l),i?i(l):d({type:"paged",data:l})})).catch((v=>{const l=Object.assign({},o);Object.keys(l).forEach((o=>{var v,d;const i=null!==(d=null===(v=l[o])||void 0===v?void 0:v.products)&&void 0!==d?d:{};Object.keys(i).forEach((v=>{var d,i,t,n;const s=null!==(n=null===(t=null===(i=null===(d=l[o])||void 0===d?void 0:d.products)||void 0===i?void 0:i[v])||void 0===t?void 0:t.variants)&&void 0!==n?n:{};Object.keys(s).forEach((d=>{var i,t,n,s;const u=null===(s=null===(n=null===(t=null===(i=l[o])||void 0===i?void 0:i.products)||void 0===t?void 0:t[v])||void 0===n?void 0:n.variants)||void 0===s?void 0:s[d];u&&(u.fbStatus="APPROVED")}))}))})),console.log("vj: variantids",l),i?i(l):d({type:"paged",data:l})}))};return(!(arguments.length>4&&void 0!==arguments[4])||arguments[4])&&t(),{fetchFbStatus:t}};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import c from"../../assets/icons/search.svg.js";import{useReducer as r,useState as s,useRef as n,useEffect as i}from"react";import{COLORS as l}from"../../constants/Theme.js";import{Button as d}from"../button/Button.js";import{Input as a}from"../input/Input.js";import{StyledModal as u}from"../modals/styledModal.js";import{Spinner as h}from"../spinner/Spinner.js";import{Tag as p}from"../tag/Tag.js";import{CollectionsScreen as m}from"./collectionScreen.js";import{ProductInfoOverlay as C}from"./productInfoOverlay.js";import{ProductsScreen as g}from"./productScreen.js";import{RearrangeScreen as f}from"./rearrangeScreen.js";import{collectionsReducer as b,
|
|
1
|
+
import{jsxs as e,jsx as t,Fragment as o}from"react/jsx-runtime";import c from"../../assets/icons/search.svg.js";import{useReducer as r,useState as s,useRef as n,useEffect as i}from"react";import{COLORS as l}from"../../constants/Theme.js";import{Button as d}from"../button/Button.js";import{Input as a}from"../input/Input.js";import{StyledModal as u}from"../modals/styledModal.js";import{Spinner as h}from"../spinner/Spinner.js";import{Tag as p}from"../tag/Tag.js";import{CollectionsScreen as m}from"./collectionScreen.js";import{ProductInfoOverlay as C}from"./productInfoOverlay.js";import{ProductsScreen as g}from"./productScreen.js";import{RearrangeScreen as f}from"./rearrangeScreen.js";import{collectionsReducer as b,searchReducer as S,selectedColectionsReducer as y,CollectionIdContext as P}from"./reducers.js";import{SearchScreen as v}from"./searchScreen.js";import{SelectedScreen as j}from"./selectedScreen.js";import{ContainerStyle as k,ScrollContainerStyle as x}from"./style.js";import{OUT_OF_STOCK_ACTION as I}from"./type.js";import{useFetchFbStatusForCollections as F}from"./useFetchFbStatus.js";var T;!function(e){e.Collections="collections",e.RearrangeProducts="rearrange",e.SelectedProducts="view",e.SearchProducts="searchProducts",e.Products="products"}(T||(T={}));const O=O=>{const{storeId:D,selectedItems:R,onClose:w,visible:E,zIndex:A,exactLimit:$,limit:V,hideCollectionCheckbox:B,hideProductCheckbox:L,outOfStockAction:M=I.BLUR,hideVariantCheckbox:z,selectProductsFromCustomCollection:G,hideSelectionCount:H,title:W,width:Y,renderWithoutModal:K,onClickSave:U,pickerType:q,hideProductVariants:J=!1,startupScreen:N=T.Collections,rearrangeEnabled:Q,selectSingleItem:X=!1,showProductDetailInfoIcon:Z}=O,[_,ee]=r(b,{}),[te,oe]=s([T.Collections,T.RearrangeProducts].includes(N)?N:T.Collections),[ce,re]=s("grid"),[se,ne]=s(""),[ie,le]=s(""),[de,ae]=s(0),[ue,he]=s(!1),[pe,me]=s(0),[Ce,ge]=s(""),[fe,be]=s(!1),[Se,ye]=s(!1),[Pe,ve]=r(S,{}),[je,ke]=r(y,Object.keys(R).length>0?R:{}),xe=n(null),[Ie,Fe]=s(!1),[Te,Oe]=s();F(je,D,ke,O.fbStatusFetcher,!1),i((()=>{he(!0),ye(!0),O.collectionFetcher(de,D).then((e=>{ee({type:"fetched",data:(null==e?void 0:e.collections)||{}}),he(!1),ae((e=>e+1)),ye(!1)})).catch()}),[]),i((()=>{let e=0;Object.keys(je||[]).forEach((t=>{var o;Object.keys((null===(o=je[t])||void 0===o?void 0:o.products)||[]).forEach((o=>{var c,r;Object.keys((null===(r=null===(c=je[t].products)||void 0===c?void 0:c[o])||void 0===r?void 0:r.variants)||[]).forEach((()=>{e+=1}))}))})),me(e)})),i((()=>{ie&&(he(!0),O.productFetcher(ie,D).then((e=>{Object.keys(e).length&&ee({type:"productsFetched",data:{collectionId:ie,products:e}}),he(!1)})).catch())}),[ie]),i((()=>{const e=setTimeout((()=>{"rearrange"!==te&&(Ce.length?(be(!0),O.searchFetcher(D,Ce).then((e=>{ve({type:"set",data:e}),oe("searchProducts"),he(!1),be(!1)}))):oe("collections"))}),800);return()=>clearTimeout(e)}),[Ce]),i((()=>{U&&(O.onAdd(je,pe),De())}),[U]),i((()=>{X&&Object.keys(je||{}).length&&pe&&(O.onAdd(je,pe),De())}),[X,je,pe]);const De=()=>{ke({type:"reset",data:{}})},Re=e(k,{children:[O.postHeader&&t("div",Object.assign({style:{padding:"0 24px"}},{children:O.postHeader})),!O.hideGlobalSearch&&t(o,{children:("collections"===te||"searchProducts"===te)&&t("div",Object.assign({style:{padding:K?"8px 16px":"12px 24px",borderBottom:"1px solid #E0E0E0"}},{children:t(a,{noKeyDownChange:!0,noErrorHint:!0,rightIcon:{icon:()=>fe?t(h,{size:"small",color:l.content.primary}):t(c,{})},id:"listInput",height:"24px",type:"text",value:Ce,onChangeText:e=>{e.length&&e.trim().length?ge(e):ge("")}})}))}),e(x,Object.assign({ref:xe},{children:["collections"===te&&t(m,{customCollectionRestriction:O.customCollectionRestriction,dataLoading:Se,collections:_,selectedCollectionsDispatch:ke,setCollectionId:ne,setSelectedCollectionId:le,setScreen:oe,selectedCollections:je,collectionFetcher:O.collectionFetcher,storeId:D,collectionsDispatch:ee,setSaveDisabled:he,pagingControls:{curPage:de,setCurPage:ae},hideCollectionCheckbox:B,renderWithoutModal:K,pickerType:q}),"products"===te&&se&&t(P.Provider,Object.assign({value:se},{children:t(g,{hideInCollectionSearch:O.hideInCollectionSearch,customCollectionRestriction:O.customCollectionRestriction,productFetcher:O.productFetcher,setScreen:oe,storeId:D,data:_[se],collectionsDispatch:ee,selectedCollectionsDispatch:ke,selectedData:je,setSaveDisabled:he,searchInCollectionFetcher:O.searchInCollectionFetcher,hideProductCheckbox:L,outOfStockAction:M,hideVariantCheckbox:z,selectProductsFromCustomCollection:G,renderWithoutModal:K,pickerType:q,hideProductVariants:J,fbStatusFetcher:O.fbStatusFetcher,onInfoIconClick:e=>{Fe(!0),Oe(e)},showProductDetailInfoIcon:Z})})),"view"===te&&t(j,{selectedCollections:je||{},selectedCollectionsDispatch:ke,setScreen:oe,collections:_,outOfStockAction:M,storeId:D,fbStatusFetcher:O.fbStatusFetcher}),"rearrange"===te&&t(f,{selectedCollections:je||{},selectedCollectionsDispatch:ke,setScreen:oe,outOfStockAction:M,rearrangeViewType:"grid"===ce?"list":"grid",scrollContainerRef:xe,storeId:D,fbStatusFetcher:O.fbStatusFetcher}),"searchProducts"===te&&t(v,{customCollectionRestriction:O.customCollectionRestriction,selectedCollections:je||{},searchedCollections:Pe||{},searchedCollectionsDispatch:ve,selectedCollectionsDispatch:ke,setScreen:oe,collections:_,onBackPress:()=>{ge(""),ve({type:"set",data:{}})},pickerType:q,hideProductCheckbox:L,hideProductVariants:J,hideVariantCheckbox:z,storeId:D,fbStatusFetcher:O.fbStatusFetcher})]}))]});return t(o,{children:K?Re:e(u,Object.assign({zIndex:A,open:E,onClose:()=>{null==w||w(),De()},headingTitle:W||("collections"===te||"products"===te?"Select Products":"view"===te?"Selected Products":"searchProducts"===te?"Searched Products":"rearrange"===te?"Rearrange Products":void 0),footerShadow:!0,centralContainerStyles:{width:Y||"600px"},headerRightCustomElement:"rearrange"===te?(console.log("ignore:",re),t(o,{})):t(o,{}),primaryButton:{buttonText:ue?"Loading...":te===T.RearrangeProducts?"Done":"Add",disabled:ue||pe<1||$&&pe<$||!$&&V&&pe>V||!1,onClick:()=>{O.onAdd(je,pe),De()}},footerLeftCustomElement:H?t(o,{}):$&&pe>$?t(p,{tagText:`You can only select ${$} products`,type:"negative"}):V&&pe>V?t(p,{tagText:`You can only select ${V} products`,type:"negative"}):t(d,pe>0?{onClick:()=>{oe(Q?T.RearrangeProducts:T.SelectedProducts)},buttonText:$?`${pe}/${$} products selected`:`${pe} products selected`,buttonType:["rearrange","view"].includes(te)?"tertiaryGray":"tertiary",disabled:["rearrange","view"].includes(te)}:{disabled:!0,buttonText:$?`${pe}/${$} products selected`:`${pe} products selected`,buttonType:"tertiaryGray"}),hideCrossButton:Ie},{children:[Re,Ie&&Te?t(C,{productData:Te,outOfStockAction:M,onClose:()=>{Fe(!1)}}):t(o,{})]}))})};export{O as ProductPickerModal,T as ScreenName};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as t,jsx as e}from"react/jsx-runtime";import o from"../../assets/icons/arrow_left.svg.js";import{useState as r,useEffect as s}from"react";import{DragDropContext as c}from"react-beautiful-dnd";import{COLORS as i}from"../../constants/Theme.js";import{IconButton as n}from"../icon-button/IconButton.js";import{BodyCaption as l}from"../TypographyStyle.js";import{EmptyState as a}from"./emptyState.js";import{parseSelectedVariantsToArray as d}from"./helpers/ProductHelper.js";import{SelectedScreenHeader as p}from"./style.js";import{
|
|
1
|
+
import{jsxs as t,jsx as e}from"react/jsx-runtime";import o from"../../assets/icons/arrow_left.svg.js";import{useState as r,useEffect as s}from"react";import{DragDropContext as c}from"react-beautiful-dnd";import{COLORS as i}from"../../constants/Theme.js";import{IconButton as n}from"../icon-button/IconButton.js";import{BodyCaption as l}from"../TypographyStyle.js";import{EmptyState as a}from"./emptyState.js";import{parseSelectedVariantsToArray as d}from"./helpers/ProductHelper.js";import{SelectedScreenHeader as p}from"./style.js";import{fetchFbStatusCollection as m}from"./useFetchFbStatus.js";import{VariantsList as u,VariantsGrid as f}from"./variantComponents.js";const h=h=>{const{selectedCollections:j,selectedCollectionsDispatch:S,setScreen:y,rearrangeViewType:b,outOfStockAction:g,scrollContainerRef:C,storeId:O,fbStatusFetcher:v}=h,[V,k]=r(d(j));s((()=>{var t;null===(t=null==C?void 0:C.current)||void 0===t||t.scrollTo({top:0}),m(j,O,S,v),k(d(j))}),[j]);return t(c,Object.assign({onDragEnd:t=>{if(!t.destination)return;const e=V,[o]=e.splice(t.source.index,1);e.splice(t.destination.index,0,o),e.forEach(((t,e)=>{t.displayOrder=e})),k(e)}},{children:[t(p,{children:[e(n,{Icon:o,width:16,height:16,color:i.content.secondary,onClick:()=>{y("collections")}}),e(l,Object.assign({color:i.content.secondary},{children:"All Products"}))]}),Object.keys(j).length>0?"list"===b?e(u,{selectedVariants:V,setSelectedVariants:k,selectedCollectionsDispatch:S,outOfStockAction:g}):e(f,{selectedVariants:V,setSelectedVariants:k,selectedCollectionsDispatch:S}):e(a,{title:"No Products Selected",subtitle:"Selected products will appear here"})]}))};export{h as RearrangeScreen};
|
|
@@ -15,4 +15,5 @@ export interface CollectionsActions {
|
|
|
15
15
|
}
|
|
16
16
|
export declare function collectionsReducer(collections: Collection, action: CollectionsActions): any;
|
|
17
17
|
export declare function paginationReducer(collections: SelectedItems, action: SelectedCollectionsActions): SelectedItems;
|
|
18
|
+
export declare function searchReducer(collections: SelectedItems, action: SelectedCollectionsActions): SelectedItems;
|
|
18
19
|
export declare const CollectionIdContext: import("react").Context<string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{cloneDeep as t}from"lodash";import{createContext as e}from"react";function a(e,a){var o,c,s,d,n,l;let r={},i="",u="",p="";switch(console.log("vj: selected Items",e),a.type){case"selected":return console.log("vj: selectedColectionsReducer selected",a),r=t(e),a.data.val.isSmartCollection&&(a.data.isRestricted&&(r={}),r.isCustom=!0),r[a.data.id]=a.data.val,r;case"unselected":return r=t(e),(null==r?void 0:r.isCustom)&&(r.isCustom=!1),delete r[a.data.id],r;case"productUnselected":return r=t(e),i=a.data.productId,u=a.data.collectionId,delete r[u].products[i],Object.keys(r[u].products).length||((null==r?void 0:r.isCustom)&&(r.isCustom=!1),delete r[u]),r;case"productSelected":return r=t(e),i=a.data.productId,u=a.data.collectionId,(null===(o=a.data.catalogOnlyData)||void 0===o?void 0:o.isSmartCollection)&&(a.data.isRestricted&&(r={}),r.isCustom=!0),(null==r?void 0:r[u])||(r[u]=a.data.catalogOnlyData,r[u].products={}),r[u].products[i]=a.data.product,r;case"variantSelected":return r=t(e),i=a.data.productId,u=a.data.collectionId,p=a.data.variantId,(null===(c=a.data.catalogOnlyData)||void 0===c?void 0:c.isSmartCollection)&&(a.data.isRestricted&&(r={}),r.isCustom=!0),(null==r?void 0:r[u])||(r[u]=a.data.catalogOnlyData,r[u].products={},r[u].products[i]=a.data.productOnlyData,r[u].products[i].variants={}),(null===(d=null===(s=null==r?void 0:r[u])||void 0===s?void 0:s.products)||void 0===d?void 0:d[i])||((null===(n=null==r?void 0:r[u])||void 0===n?void 0:n.products)||(r[u].products={}),r[u].products[i]=a.data.productOnlyData,r[u].products[i].variants={}),r[u].products[i].variants[p]=a.data.variant,r;case"variantUnselected":return r=t(e),i=a.data.productId,u=a.data.collectionId,p=a.data.variantId,delete r[u].products[i].variants[p],Object.keys(r[u].products[i].variants).length||(delete r[u].products[i],Object.keys(r[u].products).length||((null===(l=r[u])||void 0===l?void 0:l.isSmartCollection)&&(r.isCustom=!1),delete r[u])),r;case"reset":return{};default:return e}}function o(t,e){let a={};switch(e.type){case"fetched":return a=Object.assign({},e.data),a;case"productsFetched":return console.log("vj: productsFetched",{collections:t,action:e}),a=Object.assign({},t),a[e.data.collectionId].products=e.data.products,console.log("vj: collectionsCopy",{collectionsCopy:a}),a;case"paged":return console.log("vj: paged",{collections:t,action:e}),a=Object.assign(Object.assign({},t),e.data),a;case"productsPaged":return console.log("vj: pagedProducts",{collections:t,action:e}),a=Object.assign({},t),e.data.collectionId,a[e.data.collectionId].products=Object.assign(Object.assign({},a[e.data.collectionId].products),e.data.products),a;default:return{}}}function c(t,e){let a={};switch(console.log("vj: selected Items",t),e.type){case"paginate":console.log("vj: paginate",e),a=Object.assign({},t);for(const t in e.data)if(Object.prototype.hasOwnProperty.call(e.data,t)){const o=e.data[t];if(Object.prototype.hasOwnProperty.call(a,t)){const e=a[t];a[t]=Object.assign(Object.assign({},e),{products:Object.assign(Object.assign({},e.products),o.products)})}else a[t]=o}return console.log("vj: collections copy",a),a;case"update":return console.log("vj: update",e),a=Object.assign({},t),console.log("vj: update collection",e),a;case"set":return a=Object.assign(Object.assign({},t),e.data),console.log("vj: update collection",e),a;case"filter":a={};for(const o in t)if(o in e.data){const c=Object.assign({},t[o]),s=e.data[o],d={};for(const t in c.products)if(t in s.products){const e=Object.assign({},c.products[t]),a=s.products[t],o={};for(const t in e.variants)t in a.variants&&(o[t]=Object.assign({},e.variants[t]));Object.keys(o).length>0&&(e.variants=o,d[t]=e)}Object.keys(d).length>0&&(c.products=d,a[o]=c)}return a;default:return t}}const
|
|
1
|
+
import{cloneDeep as t}from"lodash";import{createContext as e}from"react";function a(e,a){var o,c,s,d,n,l;let r={},i="",u="",p="";switch(console.log("vj: selected Items",e),a.type){case"selected":return console.log("vj: selectedColectionsReducer selected",a),r=t(e),a.data.val.isSmartCollection&&(a.data.isRestricted&&(r={}),r.isCustom=!0),r[a.data.id]=a.data.val,r;case"unselected":return r=t(e),(null==r?void 0:r.isCustom)&&(r.isCustom=!1),delete r[a.data.id],r;case"productUnselected":return r=t(e),i=a.data.productId,u=a.data.collectionId,delete r[u].products[i],Object.keys(r[u].products).length||((null==r?void 0:r.isCustom)&&(r.isCustom=!1),delete r[u]),r;case"productSelected":return r=t(e),i=a.data.productId,u=a.data.collectionId,(null===(o=a.data.catalogOnlyData)||void 0===o?void 0:o.isSmartCollection)&&(a.data.isRestricted&&(r={}),r.isCustom=!0),(null==r?void 0:r[u])||(r[u]=a.data.catalogOnlyData,r[u].products={}),r[u].products[i]=a.data.product,r;case"variantSelected":return r=t(e),i=a.data.productId,u=a.data.collectionId,p=a.data.variantId,(null===(c=a.data.catalogOnlyData)||void 0===c?void 0:c.isSmartCollection)&&(a.data.isRestricted&&(r={}),r.isCustom=!0),(null==r?void 0:r[u])||(r[u]=a.data.catalogOnlyData,r[u].products={},r[u].products[i]=a.data.productOnlyData,r[u].products[i].variants={}),(null===(d=null===(s=null==r?void 0:r[u])||void 0===s?void 0:s.products)||void 0===d?void 0:d[i])||((null===(n=null==r?void 0:r[u])||void 0===n?void 0:n.products)||(r[u].products={}),r[u].products[i]=a.data.productOnlyData,r[u].products[i].variants={}),r[u].products[i].variants[p]=a.data.variant,r;case"variantUnselected":return r=t(e),i=a.data.productId,u=a.data.collectionId,p=a.data.variantId,delete r[u].products[i].variants[p],Object.keys(r[u].products[i].variants).length||(delete r[u].products[i],Object.keys(r[u].products).length||((null===(l=r[u])||void 0===l?void 0:l.isSmartCollection)&&(r.isCustom=!1),delete r[u])),r;case"reset":return{};default:return e}}function o(t,e){let a={};switch(e.type){case"fetched":return a=Object.assign({},e.data),a;case"productsFetched":return console.log("vj: productsFetched",{collections:t,action:e}),a=Object.assign({},t),a[e.data.collectionId].products=e.data.products,console.log("vj: collectionsCopy",{collectionsCopy:a}),a;case"paged":return console.log("vj: paged",{collections:t,action:e}),a=Object.assign(Object.assign({},t),e.data),a;case"productsPaged":return console.log("vj: pagedProducts",{collections:t,action:e}),a=Object.assign({},t),e.data.collectionId,a[e.data.collectionId].products=Object.assign(Object.assign({},a[e.data.collectionId].products),e.data.products),a;default:return{}}}function c(t,e){let a={};switch(console.log("vj: selected Items",t),e.type){case"paginate":console.log("vj: paginate",e),a=Object.assign({},t);for(const t in e.data)if(Object.prototype.hasOwnProperty.call(e.data,t)){const o=e.data[t];if(Object.prototype.hasOwnProperty.call(a,t)){const e=a[t];a[t]=Object.assign(Object.assign({},e),{products:Object.assign(Object.assign({},e.products),o.products)})}else a[t]=o}return console.log("vj: collections copy",a),a;case"update":return console.log("vj: update",e),a=Object.assign({},t),console.log("vj: update collection",e),a;case"set":return a=Object.assign(Object.assign({},t),e.data),console.log("vj: update collection",e),a;case"filter":a={};for(const o in t)if(o in e.data){const c=Object.assign({},t[o]),s=e.data[o],d={};for(const t in c.products)if(t in s.products){const e=Object.assign({},c.products[t]),a=s.products[t],o={};for(const t in e.variants)t in a.variants&&(o[t]=Object.assign({},e.variants[t]));Object.keys(o).length>0&&(e.variants=o,d[t]=e)}Object.keys(d).length>0&&(c.products=d,a[o]=c)}return a;default:return t}}function s(t,e){return"set"===e.type?e.data:t}const d=e("");export{d as CollectionIdContext,o as collectionsReducer,c as paginationReducer,s as searchReducer,a as selectedColectionsReducer};
|
|
@@ -5,7 +5,7 @@ interface SearchScreenInterface {
|
|
|
5
5
|
customCollectionRestriction?: boolean;
|
|
6
6
|
selectedCollections: SelectedItems;
|
|
7
7
|
searchedCollections: SelectedItems;
|
|
8
|
-
|
|
8
|
+
searchedCollectionsDispatch: React.Dispatch<SelectedCollectionsActions>;
|
|
9
9
|
selectedCollectionsDispatch: React.Dispatch<SelectedCollectionsActions>;
|
|
10
10
|
setScreen: React.Dispatch<React.SetStateAction<string>>;
|
|
11
11
|
collections: {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as o,jsx as t,Fragment as e}from"react/jsx-runtime";import i from"../../assets/icons/arrow_left.svg.js";import{
|
|
1
|
+
import{jsxs as o,jsx as t,Fragment as e}from"react/jsx-runtime";import i from"../../assets/icons/arrow_left.svg.js";import{useEffect as r}from"react";import{IconButton as c}from"../icon-button/IconButton.js";import{BodyCaption as l}from"../TypographyStyle.js";import{EmptyState as s}from"./emptyState.js";import{ProductGroup as d}from"./productScreen.js";import{SelectedScreenHeader as n}from"./style.js";import{fetchFbStatusCollection as u}from"./useFetchFbStatus.js";import{liftTheStateUp as a}from"./utility.js";const p=p=>{const{customCollectionRestriction:v,selectedCollections:h,searchedCollections:m,searchedCollectionsDispatch:f,selectedCollectionsDispatch:y,setScreen:j,collections:b,onBackPress:k,hideVariantCheckbox:C,pickerType:O,hideProductVariants:P,hideProductCheckbox:S,storeId:g,fbStatusFetcher:x}=p;r((()=>{u(m,g,f,x)}),[m]);const I=(o,t)=>{var e,i,r,c,l,s,d,n,u;let a=0,p=0;return!!((null===(i=null===(e=null==h?void 0:h[o])||void 0===e?void 0:e.products)||void 0===i?void 0:i[t])&&(null===(s=Object.keys((null===(l=null===(c=null===(r=null==b?void 0:b[o])||void 0===r?void 0:r.products)||void 0===c?void 0:c[t])||void 0===l?void 0:l.variants)||[]))||void 0===s||s.forEach((()=>p++)),Object.keys((null===(u=null===(n=null===(d=null==h?void 0:h[o])||void 0===d?void 0:d.products)||void 0===n?void 0:n[t])||void 0===u?void 0:u.variants)||[]).forEach((()=>a++)),a>0&&p!==a))};return o("div",{children:[o(n,{children:[t(c,{Icon:i,onClick:()=>{j("collections"),k()}}),t(l,{children:"Searched Products"})]}),t("div",{children:Object.keys(m).length?t(e,{children:Object.keys(m).map((o=>{var e;return Object.keys((null===(e=null==m?void 0:m[o])||void 0===e?void 0:e.products)||[]).map((e=>{let i=!1;return(null==m?void 0:m.isCustom)&&(i=!0),t(d,{collectionId:o,upliftAdditions:(t,e)=>((o,t,e)=>{const i=a(e,m[o]);y({type:t,data:Object.assign(Object.assign({},i),{isRestricted:v})})})(o,t,e),productId:e,data:m[o].products[e],isProductPartiallyChecked:I(o,e),selectedData:h,selectedCollectionsDispatch:y,viewOnly:i,hideProductCheckbox:S,hideVariantCheckbox:C,hideProductVariants:P,pickerType:O},e)}))}))}):t(s,{title:"No search results found",subtitle:"We couldn’t find the product you were looking for."})})]})};export{p as SearchScreen};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
import{jsxs as t,jsx as e,Fragment as o}from"react/jsx-runtime";import r from"../../assets/icons/arrow_left.svg.js";import{useRef as
|
|
1
|
+
import{jsxs as t,jsx as e,Fragment as o}from"react/jsx-runtime";import r from"../../assets/icons/arrow_left.svg.js";import{useRef as l,useReducer as c,useEffect as n}from"react";import{IconButton as i}from"../icon-button/IconButton.js";import{BodyCaption as s}from"../TypographyStyle.js";import{EmptyState as d}from"./emptyState.js";import{ProductGroup as u}from"./productScreen.js";import{paginationReducer as a}from"./reducers.js";import{SelectedScreenHeader as v}from"./style.js";import{fetchFbStatusCollection as p}from"./useFetchFbStatus.js";import{paginateSelectedItems as m}from"./utility.js";const f=f=>{const{selectedCollections:j,selectedCollectionsDispatch:h,setScreen:g,collections:y,outOfStockAction:b,storeId:S,fbStatusFetcher:k}=f,O=l(0),C=l(null),[I,P]=c(a,{});n((()=>{O.current=0;const t=m(j,10,0);P({type:"paginate",data:t}),p(t,S,P,k,"set"),O.current+=1}),[]),n((()=>{P({type:"filter",data:j})}),[j]),n((()=>{console.log("vj: observertarget",C.current);const t=new IntersectionObserver((t=>{if(console.log("vj: observertargetinside",t),t[0].isIntersecting&&(console.log("vj: nextPageRef",O.current),O.current>0)){const t=m(j,10,O.current);console.log("paginated inside observer target",{paginatedProducts:t,selectedCollections:j,curScreenData:I}),P({type:"paginate",data:t}),p(t,S,P,k,"update"),O.current+=1}}),{threshold:1});return C.current&&t.observe(C.current),()=>{C.current&&t.unobserve(C.current)}}),[C,j]);const w=(t,e)=>{var o,r,l,c,n,i,s,d,u;let a=0,v=0;return!!((null===(r=null===(o=null==j?void 0:j[t])||void 0===o?void 0:o.products)||void 0===r?void 0:r[e])&&(null===(i=Object.keys((null===(n=null===(c=null===(l=null==y?void 0:y[t])||void 0===l?void 0:l.products)||void 0===c?void 0:c[e])||void 0===n?void 0:n.variants)||[]))||void 0===i||i.forEach((()=>v++)),Object.keys((null===(u=null===(d=null===(s=null==j?void 0:j[t])||void 0===s?void 0:s.products)||void 0===d?void 0:d[e])||void 0===u?void 0:u.variants)||[]).forEach((()=>a++)),a>0&&v!==a))};return t("div",{children:[t(v,{children:[e(i,{Icon:r,onClick:()=>{g("collections")}}),e(s,{children:"Selected Products"})]}),t("div",{children:[Object.keys(I).length>0?e(o,{children:Object.keys(I).map((t=>{var o;return Object.keys((null===(o=null==I?void 0:I[t])||void 0===o?void 0:o.products)||[]).map((o=>{let r=!1;return(null==I?void 0:I.isCustom)&&(r=!0),e(u,{upliftAdditions:null,collectionId:t,productId:o,data:I[t].products[o],isProductPartiallyChecked:w(t,o),selectedData:j,selectedCollectionsDispatch:h,viewOnly:r,outOfStockAction:b},o)}))}))}):e(d,{title:"No Products Selected",subtitle:"Select products will appear here"}),e("div",{ref:C})]})]})};export{f as SelectedScreen};
|
|
@@ -3,3 +3,4 @@ import { SelectedCollectionsActions } from './reducers';
|
|
|
3
3
|
export declare const useFetchFbStatusForCollections: (data: SelectedItems, storeId: string, selectedCollectionsDispatch: React.Dispatch<SelectedCollectionsActions>, fbStatusFetcher?: ((storeId: string, variantIds: string[]) => FbStatusFetcherReturn) | undefined, autoFetch?: boolean, setSearchedCollections?: React.Dispatch<React.SetStateAction<SelectedItems | undefined>>) => {
|
|
4
4
|
fetchFbStatus: () => void;
|
|
5
5
|
};
|
|
6
|
+
export declare const fetchFbStatusCollection: (data: SelectedItems, storeId: string, dispatcher: any, fbStatusFetcher?: ((storeId: string, variantIds: string[]) => FbStatusFetcherReturn) | undefined, dispatchType?: string) => void;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
const o=function(o,v,d,
|
|
1
|
+
const o=function(o,v,d,l){let i=arguments.length>5?arguments[5]:void 0;const t=()=>{if(!l){const v=Object.assign({},o);Object.keys(v).forEach((o=>{var d,l;const i=null!==(l=null===(d=v[o])||void 0===d?void 0:d.products)&&void 0!==l?l:{};Object.keys(i).forEach((d=>{var l,i,t,n;const s=null!==(n=null===(t=null===(i=null===(l=v[o])||void 0===l?void 0:l.products)||void 0===i?void 0:i[d])||void 0===t?void 0:t.variants)&&void 0!==n?n:{};Object.keys(s).forEach((l=>{var i,t,n,s;const a=null===(s=null===(n=null===(t=null===(i=v[o])||void 0===i?void 0:i.products)||void 0===t?void 0:t[d])||void 0===n?void 0:n.variants)||void 0===s?void 0:s[l];a&&(a.fbStatus="APPROVED")}))}))})),i?i(v):d({type:"paged",data:v})}const t=(()=>{const v=[];return Object.keys(o).forEach((d=>{var l,i;const t=null!==(i=null===(l=o[d])||void 0===l?void 0:l.products)&&void 0!==i?i:{};Object.keys(t).forEach((l=>{var i,t,n,s;const a=null!==(s=null===(n=null===(t=null===(i=o[d])||void 0===i?void 0:i.products)||void 0===t?void 0:t[l])||void 0===n?void 0:n.variants)&&void 0!==s?s:{};Object.keys(a).forEach((i=>{var t,n,s,a;const u=null===(a=null===(s=null===(n=null===(t=o[d])||void 0===t?void 0:t.products)||void 0===n?void 0:n[l])||void 0===s?void 0:s.variants)||void 0===a?void 0:a[i];(null==u?void 0:u.fbStatus)||v.push(i)}))}))})),v})();console.log("vj: variantids",t),t.length>0&&l&&l(v,t).then((v=>{const l=Object.assign({},o);Object.keys(l).forEach((o=>{var d,i;const t=null!==(i=null===(d=l[o])||void 0===d?void 0:d.products)&&void 0!==i?i:{};Object.keys(t).forEach((d=>{var i,t,n,s;const a=null!==(s=null===(n=null===(t=null===(i=l[o])||void 0===i?void 0:i.products)||void 0===t?void 0:t[d])||void 0===n?void 0:n.variants)&&void 0!==s?s:{};Object.keys(a).forEach((i=>{var t,n,s,a;const u=null===(a=null===(s=null===(n=null===(t=l[o])||void 0===t?void 0:t.products)||void 0===n?void 0:n[d])||void 0===s?void 0:s.variants)||void 0===a?void 0:a[i];u&&"REJECTED"===v[i]?u.fbStatus="REJECTED":u&&"APPROVED"===v[i]&&(u.fbStatus="APPROVED")}))}))})),console.log("variantids",l),i?i(l):d({type:"paged",data:l})})).catch((v=>{const l=Object.assign({},o);Object.keys(l).forEach((o=>{var v,d;const i=null!==(d=null===(v=l[o])||void 0===v?void 0:v.products)&&void 0!==d?d:{};Object.keys(i).forEach((v=>{var d,i,t,n;const s=null!==(n=null===(t=null===(i=null===(d=l[o])||void 0===d?void 0:d.products)||void 0===i?void 0:i[v])||void 0===t?void 0:t.variants)&&void 0!==n?n:{};Object.keys(s).forEach((d=>{var i,t,n,s;const a=null===(s=null===(n=null===(t=null===(i=l[o])||void 0===i?void 0:i.products)||void 0===t?void 0:t[v])||void 0===n?void 0:n.variants)||void 0===s?void 0:s[d];a&&(a.fbStatus="APPROVED")}))}))})),console.log("vj: variantids",l),i?i(l):d({type:"paged",data:l})}))};return(!(arguments.length>4&&void 0!==arguments[4])||arguments[4])&&t(),{fetchFbStatus:t}},v=(o,v,d)=>{Object.keys(o).forEach((v=>{var d,l;const i=null!==(l=null===(d=o[v])||void 0===d?void 0:d.products)&&void 0!==l?l:{};Object.keys(i).forEach((d=>{var l,i,t,n;const s=null!==(n=null===(t=null===(i=null===(l=o[v])||void 0===l?void 0:l.products)||void 0===i?void 0:i[d])||void 0===t?void 0:t.variants)&&void 0!==n?n:{};Object.keys(s).forEach((l=>{var i,t,n,s;const a=null===(s=null===(n=null===(t=null===(i=o[v])||void 0===i?void 0:i.products)||void 0===t?void 0:t[d])||void 0===n?void 0:n.variants)||void 0===s?void 0:s[l];a&&!a.fbStatus&&(a.fbStatus="APPROVED")}))}))})),v({type:d,data:o})},d=function(o,d,l,i){let t=arguments.length>4&&void 0!==arguments[4]?arguments[4]:"paged";i||v(o,l,t);const n=(o=>{const v=[];return Object.keys(o).forEach((d=>{var l,i;const t=null!==(i=null===(l=o[d])||void 0===l?void 0:l.products)&&void 0!==i?i:{};Object.keys(t).forEach((l=>{var i,t,n,s;const a=null!==(s=null===(n=null===(t=null===(i=o[d])||void 0===i?void 0:i.products)||void 0===t?void 0:t[l])||void 0===n?void 0:n.variants)&&void 0!==s?s:{};Object.keys(a).forEach((i=>{var t,n,s,a;const u=null===(a=null===(s=null===(n=null===(t=o[d])||void 0===t?void 0:t.products)||void 0===n?void 0:n[l])||void 0===s?void 0:s.variants)||void 0===a?void 0:a[i];(null==u?void 0:u.fbStatus)||v.push(i)}))}))})),v})(o);console.log("vj: variantids",n),n.length>0&&i&&i(d,n).then((v=>{const d=Object.assign({},o);Object.keys(d).forEach((o=>{var l,i;const t=null!==(i=null===(l=d[o])||void 0===l?void 0:l.products)&&void 0!==i?i:{};Object.keys(t).forEach((l=>{var i,t,n,s;const a=null!==(s=null===(n=null===(t=null===(i=d[o])||void 0===i?void 0:i.products)||void 0===t?void 0:t[l])||void 0===n?void 0:n.variants)&&void 0!==s?s:{};Object.keys(a).forEach((i=>{var t,n,s,a;const u=null===(a=null===(s=null===(n=null===(t=d[o])||void 0===t?void 0:t.products)||void 0===n?void 0:n[l])||void 0===s?void 0:s.variants)||void 0===a?void 0:a[i];u&&"REJECTED"===v[i]?u.fbStatus="REJECTED":u&&"APPROVED"===v[i]&&(u.fbStatus="APPROVED")}))}))})),console.log("updated data",d),l({type:t,data:d})})).catch((d=>{console.error("Error in fbStatusFetcher",d),v(o,l,t)}))};export{d as fetchFbStatusCollection,o as useFetchFbStatusForCollections};
|