{"version":3,"file":"src_app_modules_end-user_direct-purchase_direct-purchase_module_ts.js","mappings":"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","sources":["./src/app/core/services/organization.service.ts","./src/app/modules/end-user/direct-purchase/direct-purchase-routing.module.ts","./src/app/modules/end-user/direct-purchase/direct-purchase.component.ts","./src/app/modules/end-user/direct-purchase/direct-purchase.component.html","./src/app/modules/end-user/direct-purchase/direct-purchase.module.ts","./src/app/modules/end-user/direct-purchase/product-detail/product-detail.component.ts","./src/app/modules/end-user/direct-purchase/product-detail/product-detail.component.html","./src/app/modules/end-user/direct-purchase/product-list/product-list.component.ts","./src/app/modules/end-user/direct-purchase/product-list/product-list.component.html","./src/app/modules/end-user/direct-purchase/template-list/template-list.component.html","./src/app/modules/end-user/direct-purchase/template-list/template-list.component.ts"],"sourcesContent":["import { HttpClient, HttpParams } from '@angular/common/http';\r\nimport { Injectable } from '@angular/core';\r\nimport { Observable } from 'rxjs';\r\nimport { environment } from 'src/environments/environment';\r\n\r\n@Injectable({\r\n  providedIn: 'root'\r\n})\r\nexport class OrganizationService {\r\n\r\n  private baseUrl = environment.apiUrl;\r\n  constructor(private http: HttpClient) { }\r\n\r\n  _addOrganization(payload: OrganizationRequest) {\r\n    return this.http.post<any>(this.baseUrl + \"users/organizations\", payload);\r\n  }\r\n\r\n  _getOrganizationTypes() {\r\n    return this.http.get<any>(this.baseUrl + \"v1/teamstore/organizationtype/all\");\r\n  }\r\n\r\n  _getALLOrganizationList(page: number, per_page: number, name?: string, type?: string, primaryColor?: string, secondarycolor?: string, state?: string, city?: string) {\r\n    name = name ?? '';\r\n    primaryColor = primaryColor ?? '';\r\n    secondarycolor = secondarycolor ?? '';\r\n    type = type ?? '';\r\n    state = state ?? '';\r\n    city = city ?? '';\r\n\r\n    let params = new HttpParams()\r\n      .set('name', name)\r\n      .set('city', city)\r\n      .set('id', '0')\r\n      .set('order', 'asc')\r\n      .set('per_page', per_page.toString())\r\n      .set('page', page.toString())\r\n      .set('type', type)\r\n      .set('primaryColor', primaryColor)\r\n      .set('secondarycolor', secondarycolor)\r\n      .set('state', state);\r\n    return this.http.get<any>(this.baseUrl + 'v1/teamstore/organizationList', { params: params, observe: 'response' });\r\n  }\r\n\r\n  _getOrganizationById(id: number) {\r\n    return this.http.get<ApiResponse<Organization>>(this.baseUrl + \"v1/teamstore/organizations/\" + id);\r\n  }\r\n\r\n  _updateOrganization(payload: Organization) {\r\n    console.log(payload, \"payload\");\r\n    return this.http.post<any>(this.baseUrl + \"v1/teamstore/organizations/edit\", payload);\r\n  }\r\n\r\n  _getOrganizationOrderListt(OrganizationId: number, page: number, per_page: number) {\r\n    let params = new HttpParams()\r\n      .set('OrganizationId', OrganizationId.toString())\r\n      .set('per_page', per_page.toString())\r\n      .set('page', page.toString())\r\n      .set('order', 'DatePlaced')\r\n    return this.http.get<PaginatedResponse<any[]>>(this.baseUrl + 'v1/teamstore/organizationOrderList', { params: params, observe: 'response' });\r\n  }\r\n\r\n  _getOrganizationContactList(OrganizationId: number, page: number, per_page: number) {\r\n    let params = new HttpParams()\r\n      .set('OrganizationId', OrganizationId.toString())\r\n      .set('per_page', per_page.toString())\r\n      .set('page', page.toString());\r\n    return this.http.get<PaginatedResponse<any[]>>(this.baseUrl + 'v1/teamstore/organizationContactList', { params: params, observe: 'response' });\r\n  }\r\n\r\n  // Artwork apis\r\n\r\n  _addAtrwork(payload: ArtworkRequest) {\r\n    return this.http.put<any>(this.baseUrl + \"v1/teamstore/saveartwork\", payload);\r\n  }\r\n\r\n  _fetchArtworks() {\r\n    let params = new HttpParams()\r\n      .set('per_page', 10)\r\n      .set('page', 0);\r\n    return this.http.get<PaginatedResponse<any[]>>(this.baseUrl + 'v1/teamstore/artworkList', { params: params, observe: 'response' });\r\n  }\r\n\r\n  _getArtWorById(id: number) {\r\n    return this.http.get<ApiResponse<any>>(this.baseUrl + \"v1/teamstore/artworks/\" + id);\r\n  }\r\n\r\n\r\n  _marketDropDown() {\r\n    return this.http.get<ApiResponse<any>>(this.baseUrl + \"v1/teamstore/departments/all\");\r\n  }\r\n\r\n  // drop down apis \r\n\r\n  _organizationDropdown(userId: number) {\r\n    return this.http.get<ApiResponse<any>>(this.baseUrl + \"v1/teamstore/user/organizations/\" + userId);\r\n  }\r\n\r\n  _departmentsDropdown(userId: number, orgId: number) {\r\n    return this.http.get<ApiResponse<any>>(`${this.baseUrl}v1/teamstore/user/departments/${userId}/${orgId}`);\r\n    // return this.http.get<ApiResponse<any>>(this.baseUrl + \"v1/teamstore/user/departments/\" + userId + \"/\" + orgId);\r\n  }\r\n\r\n  _artworkDropdown(userId: number, deptId: number) {\r\n    return this.http.get<ApiResponse<any>>(`${this.baseUrl}v1/teamstore/user/artworks/${userId}/${deptId}`);\r\n  }\r\n\r\n  _getOrganizationListByName(name?: string) {\r\n    if (name == undefined) {\r\n      name = ''\r\n    }\r\n    const params = new HttpParams().set('name', name);\r\n    return this.http.get<ApiResponse<any>>(`${this.baseUrl}v1/teamstore/organizations/list`, { params: params });\r\n  }\r\n\r\n}\r\n\r\n\r\n\r\nexport interface ApiResponse<T> {\r\n  statusCode: number;\r\n  status: number;\r\n  message: string;\r\n  description: string | null;\r\n  data: T;\r\n  total_Records: number;\r\n  exception: any | null;\r\n}\r\n\r\n\r\nexport interface PaginatedResponse<T> {\r\n  statusCode: number;\r\n  status: number;\r\n  message: string;\r\n  description: string | null;\r\n  data: T[];\r\n  total_Records: number;\r\n  exception: any | null;\r\n}\r\n\r\n\r\nexport class OrganizationRequest {\r\n  name: string;\r\n  address: string;\r\n  address1: string;\r\n  city: string;\r\n  state: string;\r\n  zip: string;\r\n  institutionTypeId: number;\r\n  userId: any;\r\n  PrimaryColorId: number;\r\n  SecondaryColorId: number;\r\n  AlternateColorIds?: any;\r\n  vendorId: string;\r\n}\r\n\r\nexport class Organization {\r\n  id: number;\r\n  name: string;\r\n  address: string;\r\n  address1: string;\r\n  city: string;\r\n  state: any;\r\n  country: string;\r\n  zip: string;\r\n  department: any\r\n  departmentId: number;\r\n  institutionTypeId: number;\r\n  userId: number;\r\n  primaryColorId: number;\r\n  primaryColorName: string;\r\n  primaryColorHexcode: string;\r\n  secondaryColorId: number;\r\n  secondaryColorName: string;\r\n  secondaryColorHexcode: string;\r\n  alternateColorOneId: number;\r\n  alternateColorOneName: string;\r\n  alternateColorOneHexcode: string;\r\n  alternateColorTwoId: number;\r\n  alternateColorTwoName: string;\r\n  alternateColorTwoHexcode: string;\r\n  activeCampaignId: number;\r\n  url: string;\r\n  alias: string;\r\n  institutionType: InstitutionType;\r\n  organizationSettings: OrganizationSettings;\r\n  alternateColorIds: any;\r\n  alternateColorInfo: AlternateColorInfo[]\r\n  vendorId: string\r\n  organizationLogoUrl?: string;\r\n}\r\n\r\n\r\nexport class AlternateColorInfo {\r\n  id: number;\r\n  name: string;\r\n  hexCode: string;\r\n}\r\nexport class InstitutionType {\r\n  id: number;\r\n  name: string;\r\n  shortAbbreviation: string;\r\n  longAbbreviation: string;\r\n  mascotText: string;\r\n  mascotId: number;\r\n  athleticsURL: string;\r\n  conference: string;\r\n  nces: string;\r\n  doe: any\r\n  logo: any\r\n}\r\n\r\nexport class OrganizationSettings {\r\n  id: number;\r\n  name: string;\r\n  shortAbbreviation: string;\r\n  longAbbreviation: string;\r\n  mascotText: string;\r\n  mascotId: number;\r\n  athleticsURL: string;\r\n  conference: string;\r\n  nces: string;\r\n  doe: any\r\n}\r\n\r\nexport class ArtworkRequest {\r\n  Id: number;\r\n  OrganizationId: number;\r\n  Description: string;\r\n  Url: string;\r\n  LocationIds: string;\r\n  ColorIds: string;\r\n  ServiceIds: string;\r\n  Metadata: string;\r\n  DepartmentId: number;\r\n}\r\n\r\n\r\n","import { NgModule } from '@angular/core';\r\nimport { Routes, RouterModule } from '@angular/router';\r\nimport { DirectPurchaseComponent } from './direct-purchase.component';\r\nimport { ProductDetailComponent } from './product-detail/product-detail.component';\r\nimport { ProductListComponent } from './product-list/product-list.component';\r\nimport { DesignerComponent } from '../../../shared/designer/designer.component'\r\nimport { ProductViewComponent } from '../../../shared/product-view/product-view.component';\r\nimport { CartComponent } from '../../../shared/cart/cart.component';\r\nimport { CheckoutComponent } from '../../../shared/checkout/checkout.component';\r\nimport { TemplateListComponent } from './template-list/template-list.component';\r\n\r\nconst routes: Routes = [{\r\n  path: '', component: DirectPurchaseComponent, children: [\r\n    { path: 'productlist', component: ProductListComponent, pathMatch: 'full' },\r\n    { path: 'templatelist', component: TemplateListComponent, pathMatch: 'full' },\r\n    { path: 'productdetail/:productId', component: ProductDetailComponent, pathMatch: 'full' },\r\n    { path: 'designer/:productId', component: DesignerComponent, pathMatch: 'full' },\r\n    { path: 'productview/:productId', component: ProductViewComponent, pathMatch: 'full' },\r\n    { path: 'editproductview/:productId/:cartId', component: ProductViewComponent, pathMatch: 'full' },\r\n    { path: 'productview', component: ProductViewComponent, pathMatch: 'full' },\r\n    { path: 'cart', component: CartComponent, pathMatch: 'full' },\r\n    { path: 'checkout', component: CheckoutComponent, pathMatch: 'full' },\r\n  ]\r\n}];\r\n\r\n@NgModule({\r\n  imports: [RouterModule.forChild(routes)],\r\n  exports: [RouterModule]\r\n})\r\nexport class DirectPurchaseRoutingModule { }\r\n","import { Component, OnInit } from '@angular/core';\r\n\r\n@Component({\r\n  selector: 'app-direct-purchase',\r\n  templateUrl: './direct-purchase.component.html',\r\n  styleUrls: ['./direct-purchase.component.scss']\r\n})\r\nexport class DirectPurchaseComponent implements OnInit {\r\n\r\n  constructor() { }\r\n\r\n  ngOnInit() {\r\n  }\r\n\r\n}\r\n","<div style=\"height:100%;overflow-y: auto; background-color: whitesmoke;\">\r\n    <router-outlet></router-outlet>\r\n  </div>","import { NgModule } from '@angular/core';\r\nimport { SharedModule } from '../../../shared/shared.module';\r\nimport { DirectPurchaseRoutingModule } from './direct-purchase-routing.module';\r\nimport { DirectPurchaseComponent } from './direct-purchase.component';\r\nimport { ProductDetailComponent } from './product-detail/product-detail.component';\r\nimport { ProductListComponent } from './product-list/product-list.component';\r\nimport { MatLegacyTabsModule as MatTabsModule } from '@angular/material/legacy-tabs';\r\nimport { TemplateListComponent } from './template-list/template-list.component';\r\nimport { NgSelectModule } from '@ng-select/ng-select';\r\n\r\n@NgModule({\r\n  declarations: [\r\n    DirectPurchaseComponent,\r\n    ProductListComponent,\r\n    ProductDetailComponent,\r\n    TemplateListComponent\r\n  ],\r\n  imports: [\r\n    SharedModule,\r\n    DirectPurchaseRoutingModule,\r\n    MatTabsModule,\r\n    NgSelectModule\r\n  ]\r\n})\r\nexport class DirectPurchaseModule { }\r\n","import { Component, HostListener, OnInit } from '@angular/core';\r\nimport { ActivatedRoute, Router, NavigationStart } from \"@angular/router\";\r\nimport { CommonService } from \"src/app/core/services/common.service\";\r\nimport { ProductService } from 'src/app/core/services/product.service';\r\nimport { environment } from 'src/environments/environment';\r\n\r\ndeclare var $: any;\r\n\r\n@Component({\r\n  selector: 'app-product-detail',\r\n  templateUrl: './product-detail.component.html',\r\n  styleUrls: ['./product-detail.component.scss']\r\n})\r\nexport class ProductDetailComponent implements OnInit {\r\n  showAllColors=false\r\n  showAllMarkets=false\r\n  productId: any;\r\n  product: any;\r\n  selectedColor\r\n  noImage = \"../../../../assets/images/no-image.jpg\"\r\n  loading = true\r\n  templateRefId\r\n  categoryList = []\r\n  searchText = ''\r\n  alternateMaxLimit = 4\r\n  companionMaxLimit = 4\r\n  private wpUrl = environment.wpUrl;\r\n  showAllCategories=false\r\n  colorList: any[];\r\n  marketList: any[];\r\n\r\n  colorId: any;\r\n  marketId:any\r\n  constructor(\r\n    private router: Router,\r\n    private route: ActivatedRoute,\r\n    private commonService: CommonService,\r\n    private productService: ProductService\r\n  ) { }\r\n\r\n  @HostListener('window:message', ['$event'])\r\n  onMessage(e) {\r\n\r\n    if (e.origin != environment.wpUrl.substring(0, environment.wpUrl.length - 1)) {\r\n      return false;\r\n    }\r\n\r\n    if (typeof (e.data) == \"string\" && e.data.startsWith(\"apply action - \")) {\r\n      if (e.data.replace(\"apply action - \", \"\") == \"design product\") {\r\n        this.goToDesigner()\r\n      } else if (e.data.replace(\"apply action - \", \"\") == \"select product\") {\r\n        this.gotoProductView()\r\n      }\r\n    }\r\n  }\r\n\r\n  ngOnInit() {\r\n    // this.hideMobileMenu()\r\n    window.parent.postMessage(\"update title-Product Details\", \"*\")\r\n    this.commonService.postScrollMessageToParent()\r\n    this.route.paramMap.subscribe(params => {\r\n      this.productId = parseInt(this.route.snapshot.paramMap.get('productId'));\r\n      localStorage.setItem('productId', this.productId);\r\n      this.getProductDetail();\r\n    });\r\n\r\n    this.getProductCategory()\r\n    this.getColors()\r\n    this.getMarkets()\r\n    this.templateRefId = this.route.snapshot.queryParams['templateRefId']\r\n    document.addEventListener(\"message\", data => {\r\n      console.log(\"Message detected in product detail page -\", data)\r\n      if (!data) return\r\n      // switch(data){\r\n      //   case 'select product':\r\n\r\n      //   break;\r\n      //   case 'design product':\r\n\r\n      //   break;\r\n      // }\r\n    })\r\n    setInterval(() => {\r\n      this.commonService.postHeightToParent(\"low\")\r\n    }, 1000)\r\n  }\r\n\r\n  getProductDetail() {\r\n\r\n    this.productService.getProductDetail(this.productId).subscribe(response => {\r\n      this.product = response.products;\r\n      this.selectedColor = this.product.variants[0]\r\n      this.loading = false\r\n    },\r\n      error => {\r\n        this.commonService.openErrorSnackBar(error.message, \"\");\r\n      });\r\n  }\r\n\r\n  onImgClick(src) {\r\n    $(\".prod-img .img-container\").css('background-image', 'url(' + src + ')')\r\n    // $(\".img-holder\").attr(\"src\", src);\r\n  }\r\n\r\n  gotoProductView() {\r\n    // if (!this.isUserLoggedIn('select product')) return\r\n    localStorage.setItem(\"purchaseType\", '1');\r\n    let url = '/enduser/directpurchase/productview/' + this.productId\r\n    if (this.selectedColor)\r\n      url = url + \"-\" + this.selectedColor.id\r\n    this.router.navigateByUrl(url);\r\n  }\r\n\r\n  isUserLoggedIn(action) {\r\n    let userId = localStorage.getItem(\"userId\");\r\n    if (!userId) {\r\n      window.parent.postMessage(\"open guest login\", \"*\");\r\n      window.parent.postMessage(\"action - \" + action, \"*\");\r\n      return false\r\n    } else {\r\n      return true\r\n    }\r\n  }\r\n\r\n  goToDesigner() {\r\n    // if (!this.isUserLoggedIn(\"design product\")) return\r\n    localStorage.setItem(\"purchaseType\", '2');\r\n    let url = '/enduser/directpurchase/designer/' + this.productId\r\n    if (this.selectedColor)\r\n      url = url + \"-\" + this.selectedColor.id\r\n\r\n    if (this.templateRefId)\r\n      url += \"?templateRefId=\" + this.templateRefId\r\n\r\n    this.router.navigateByUrl(url);\r\n\r\n  }\r\n\r\n  scrollToTop() {\r\n    this.commonService.postScrollMessageToParent()\r\n  }\r\n\r\n  // goToProductDetails(product: any) {\r\n  //   localStorage.setItem('productId', product.id);\r\n  //   let url = '/enduser/directpurchase/productdetail/' + product.id\r\n  //   if (this.templateRefId) {\r\n  //     url += \"?templateRefId=\" + this.templateRefId\r\n  //     localStorage.setItem('templateRefId', this.templateRefId);\r\n  //   }\r\n  //   window.scrollTo(1, 1)\r\n  //   this.commonService.postScrollMessageToParent()\r\n  //   this.router.navigateByUrl(url);\r\n  // }\r\n\r\n  goToProductDetails(product: any, ev?) {\r\n    localStorage.setItem('productId', product.id);\r\n    let wpurl = this.wpUrl+'Product-View/?ProductId='+ product.id\r\n    if (this.templateRefId) {\r\n      wpurl += \"?TemplateRefId=\" + this.templateRefId\r\n      localStorage.setItem('templateRefId', this.templateRefId);\r\n    }\r\n    let url = '/enduser/directpurchase/productdetail/' + product.id\r\n    if (this.templateRefId) {\r\n      url += \"?templateRefId=\" + this.templateRefId\r\n      localStorage.setItem('templateRefId', this.templateRefId);\r\n    }\r\n    // if(ev) ev.stopPropagation()\r\n    this.router.navigateByUrl(url);\r\n\r\n    // parent.postMessage(wpurl, \"*\");\r\n    window.parent.location.href = wpurl; \r\n    \r\n  }\r\n  getProductCategory() {\r\n    this.productService.getProductCategory().subscribe(\r\n      (response) => {\r\n        var result = response.body.data;\r\n        this.categoryList = result.map(function (el) {\r\n          var o = Object.assign({}, el);\r\n          o.isExpanded = false;\r\n          if (o.parent_id == 0)\r\n            return o;\r\n        })\r\n      },\r\n      (error) => {\r\n\r\n      }\r\n    );\r\n  }\r\n  getColors(){\r\n    this.productService.getProductColors().subscribe(\r\n      (response) => {\r\n        var result = response.body.data;\r\n        this.colorList = []\r\n        let selectedColor\r\n        result.forEach(el => { \r\n           var o = Object.assign({}, el);\r\n          o.isExpanded = false;\r\n          //if (o.parent_id == 0)\r\n          this.colorList.push(el) \r\n          if (this.colorId) {\r\n            if (this.colorId == el.id)\r\n              selectedColor = el \r\n          }\r\n        });\r\n        if (selectedColor) {\r\n          setTimeout(() => {\r\n            this.toggleColor(selectedColor)\r\n          }, 1000)\r\n        }\r\n      },\r\n      (error) => {\r\n\r\n      }\r\n    );\r\n  }\r\n  getMarkets(){\r\n    this.productService.getAllProductGroups({}).subscribe(\r\n      (response) => {\r\n        var result = response.body.data;\r\n        this.marketList = []\r\n        let selectedMarket\r\n        result.forEach(el => { \r\n           var o = Object.assign({}, el);\r\n          o.isExpanded = false;\r\n          //if (o.parent_id == 0)\r\n          this.marketList.push(el) \r\n          if (this.marketId) {\r\n            if (this.marketId == el.id)\r\n              selectedMarket = el \r\n          }\r\n        });\r\n        if (selectedMarket) {\r\n          setTimeout(() => {\r\n            this.toggleColor(selectedMarket)\r\n          }, 1000)\r\n        }\r\n      },\r\n      (error) => {\r\n\r\n      }\r\n    );\r\n  }\r\n  toggleColor(item: any, event?) {\r\n    $('.category-list-item2.active').removeClass('active')\r\n    if (item && item.id)\r\n      $('.category-list-item2.'+ item.id)[0].classList.toggle('active')\r\n    else if (event)\r\n      event.srcElement.classList.toggle('active') \r\n    this.hideMobileMenu()\r\n    this.colorId = item.id\r\n    //this.getProduct();\r\n    \r\n  }\r\n\r\n  selectCategory(category) {\r\n    // let url = '/enduser/directpurchase/productlist'\r\n    // if (category.id)\r\n    //   url += ('?category=' + category.id)\r\n    // this.router.navigateByUrl(url);\r\n    let url=this.wpUrl+'Product-List/?api=true&category='+category.id+'&search=&orderby=id&order=asc&color=0'\r\n    window.parent.location.href = url; \r\n  }\r\n  selectColor(color) { \r\n    let url=this.wpUrl+'Product-List/?api=true&category=0&search=&orderby=id&order=asc&color='+color.id\r\n    window.parent.location.href = url; \r\n  }\r\n  selectMarket(market) { \r\n    let url=this.wpUrl+'Product-List/?api=true&category=0&search=&orderby=id&order=asc&market='+market.id\r\n    window.parent.location.href = url; \r\n  }\r\n  ResetFilter(){\r\n    let url=this.wpUrl+'Product-List/?api=true&category=0&search=&orderby=id&order=asc&color=0'\r\n    window.parent.location.href = url; \r\n  }\r\n  onSearchKeypress(event) {\r\n    if (event.charCode == 13) {\r\n      // let url = '/enduser/directpurchase/productlist?search=' + this.searchText\r\n      // this.router.navigateByUrl(url);\r\n      let url=this.wpUrl+'Product-List/?api=true&category=0&search='+ this.searchText+'&orderby=id&order=asc&color=0'\r\n      window.parent.location.href = url; \r\n    }\r\n  }\r\n\r\n  toggleMobileMenu() {\r\n    let el = document.getElementById('mobile-menu-ham')\r\n    el.classList.toggle('active')\r\n    el = document.getElementById('category-list')\r\n    el.classList.toggle('active')\r\n  }\r\n\r\n  hideMobileMenu() {\r\n    let el = document.getElementById('mobile-menu-ham')\r\n    el.classList.remove('active')\r\n    el = document.getElementById('category-list')\r\n    el.classList.remove('active')\r\n  }\r\n\r\n}\r\n","<div class=\"grid-container\">\r\n  <!-- <div class=\"mobile-menu\">\r\n    <svg class=\"ham hamRotate ham1\" id=\"mobile-menu-ham\" viewBox=\"0 0 100 100\" width=\"50\" (click)=\"toggleMobileMenu()\">\r\n      <path class=\"line top\"\r\n        d=\"m 30,33 h 40 c 0,0 9.044436,-0.654587 9.044436,-8.508902 0,-7.854315 -8.024349,-11.958003 -14.89975,-10.85914 -6.875401,1.098863 -13.637059,4.171617 -13.637059,16.368042 v 40\" />\r\n      <path class=\"line middle\" d=\"m 30,50 h 40\" />\r\n      <path class=\"line bottom\"\r\n        d=\"m 30,67 h 40 c 12.796276,0 15.357889,-11.717785 15.357889,-26.851538 0,-15.133752 -4.786586,-27.274118 -16.667516,-27.274118 -11.88093,0 -18.499247,6.994427 -18.435284,17.125656 l 0.252538,40\" />\r\n    </svg>\r\n  </div> -->\r\n  <div class=\"grid\">\r\n    <div class=\"category-list\"  id=\"category-list\">\r\n      <!-- <div class=\"search\">\r\n        <img src=\"../../../../../assets/images/search.png\" />\r\n        <input type=\"text\" placeholder=\"Search all products\" (keypress)=\"onSearchKeypress($event)\"\r\n          [(ngModel)]=\"searchText\" />\r\n      </div>\r\n      <p style=\"width: 100%;font-size: 1.2rem;font-weight: 600;margin-bottom: 15px;\"><b>Category</b></p>\r\n      <div class=\"categories\" style=\"overflow-y: auto; height: 265px;\">\r\n        <div class=\"category-list-item active\" (click)=\"selectCategory({ id: 0, name: 'All Products' })\">\r\n          View All\r\n        </div>\r\n        <ng-container *ngFor=\"let item of categoryList; let i = index\">\r\n          <div *ngIf=\" (i < 6 && showAllCategories == false) || showAllCategories == true\"\r\n            class=\"category-list-item {{ item.id }}\" (click)=\"selectCategory(item)\">\r\n            {{ item?.name }}\r\n          </div>\r\n        </ng-container>\r\n        <p class=\"show-all-toggle\" (click)=\"showAllCategories = true\" *ngIf=\"showAllCategories == false\">\r\n          Show More +\r\n        </p>\r\n        <p class=\"show-all-toggle\" (click)=\"showAllCategories = false\" *ngIf=\"showAllCategories == true\">\r\n          Show Less -\r\n        </p>\r\n      </div>\r\n\r\n      <p style=\"width: 100%;font-size: 1.2rem;font-weight: 600;margin-bottom: 15px;\"><b>Color</b></p>\r\n      <div class=\"categories\" style=\"overflow-y: auto; height: 265px;\">\r\n        <div class=\"category-list-item2 active\" (click)=\"selectColor({ id: 0, name: 'All Colors' })\">\r\n          View All\r\n        </div>\r\n        <ng-container *ngFor=\"let item of colorList; let i = index\">\r\n          <div *ngIf=\" (i < 6 && showAllColors == false) || showAllColors == true \"\r\n           class=\"category-list-item2 {{ item.id }}\" (click)=\"selectColor(item)\">\r\n            {{ item?.name }}\r\n          </div>\r\n        </ng-container>\r\n        <p class=\"show-all-toggle\" (click)=\"showAllColors = true\" *ngIf=\"showAllColors == false\">\r\n          Show More +\r\n        </p>\r\n        <p class=\"show-all-toggle\" (click)=\"showAllColors = false\" *ngIf=\"showAllColors == true\">\r\n          Show Less -\r\n        </p>\r\n      </div>\r\n\r\n      <p style=\"width: 100%;font-size: 1.2rem;font-weight: 600;margin-bottom: 15px;\"><b>Market</b></p>\r\n      <div class=\"categories\" style=\"overflow-y: auto; height: 265px;\">\r\n        <div class=\"category-list-item3 active\" (click)=\"selectColor({ id: 0, name: 'All Markets' })\">\r\n          View All\r\n        </div>\r\n        <ng-container *ngFor=\"let item of marketList; let i = index\">\r\n          <div *ngIf=\" (i < 6 && showAllMarkets  == false) || showAllMarkets  == true \"\r\n           class=\"category-list-item3 {{ item.id }}\" (click)=\"selectMarket(item)\">\r\n            {{ item?.name }}\r\n          </div>\r\n        </ng-container>\r\n        <p class=\"show-all-toggle\" (click)=\"showAllMarkets  = true\" *ngIf=\"showAllMarkets  == false\">\r\n          Show More +\r\n        </p>\r\n        <p class=\"show-all-toggle\" (click)=\"showAllMarkets  = false\" *ngIf=\"showAllMarkets  == true\">\r\n          Show Less -\r\n        </p>\r\n      </div>\r\n  \r\n       \r\n        <button mat-flat-button  class=\"m-1\" style=\"float: right;\"  (click)=\"ResetFilter()\">Reset</button> -->\r\n\r\n    </div>\r\n    <div class=\"prod-img\">\r\n      <div class=\"img-container\" [ngStyle]=\"{\r\n          'background-image':\r\n            'url(' + selectedColor?.images[0]?.src || noImage + ')'\r\n        }\"></div>\r\n      <div class=\"thumbnail-container\">\r\n        <div class=\"thumbnail\" *ngFor=\"let image of selectedColor?.images\" (click)=\"onImgClick(image?.src)\" [ngStyle]=\"{\r\n            'background-image': 'url(' + image?.src || noImage + ')'\r\n          }\"></div>\r\n      </div>\r\n    </div>\r\n    <div class=\"prod-detail\">\r\n      <div class=\"info\">\r\n        <h4 class=\"prod-name\">\r\n          {{ product?.displayName || product?.name }}\r\n        </h4>\r\n        <!-- (product?.vendorName ? product?.vendorName + \" | \" : \"\") + -->\r\n        <p class=\"style-name\">\r\n          {{ \r\n          (product?.styleName || \"\")\r\n          }}\r\n        </p>\r\n        <p class=\"unit-price\">\r\n          <span class=\"font-weight-bold\">\r\n            $ {{ selectedColor?.sizeVariants[0].sellingPrice }}\r\n          </span>\r\n          / each\r\n        </p>\r\n      </div>\r\n      <div class=\"minimum-warning\">\r\n        <p>\r\n          Order Minimum: 1 <br />\r\n          Per Color Minimum: 1\r\n        </p>\r\n      </div>\r\n      <div class=\"product-description\">\r\n        <p>{{ product?.description }}</p>\r\n      </div>\r\n      <div class=\"color-selection\" *ngIf=\"selectedColor\">\r\n        <mat-form-field appearance=\"fill\" class=\"w-100\">\r\n          <mat-label>Change Product Color</mat-label>\r\n          <mat-select [(ngModel)]=\"selectedColor\">\r\n            <mat-select-trigger>\r\n              <div style=\"\r\n                  display: flex;\r\n                  align-items: center;\r\n                  justify-content: space-between;\r\n                \">\r\n                <span>{{ selectedColor.name }}</span>\r\n                <div style=\"\r\n                    height: 20px;\r\n                    width: 20px;\r\n                    border: 1px solid black;\r\n                    background-size: contain;\r\n                    background-position: center;\r\n                    background-repeat: no-repeat;\r\n                    margin-right: 1rem;\r\n                  \" [ngStyle]=\"{\r\n                    'background-color': selectedColor.hexValue,\r\n                    'background-image': 'url(' + selectedColor.swatch + ')'\r\n                  }\"></div>\r\n              </div>\r\n            </mat-select-trigger>\r\n            <mat-option *ngFor=\"let color of product?.variants\" [value]=\"color\">\r\n              <div style=\"\r\n                  display: flex;\r\n                  align-items: center;\r\n                  justify-content: space-between;\r\n                \">\r\n                <span>{{ color.name }}</span>\r\n                <div style=\"\r\n                    height: 20px;\r\n                    width: 20px;\r\n                    border: 1px solid black;\r\n                    background-size: contain;\r\n                    background-position: center;\r\n                    background-repeat: no-repeat;\r\n                    margin-right: 1rem;\r\n                  \" [ngStyle]=\"{\r\n                    'background-color': color.hexValue,\r\n                    'background-image': 'url(' + color.swatch + ')'\r\n                  }\"></div>\r\n              </div>\r\n            </mat-option>\r\n          </mat-select>\r\n        </mat-form-field>\r\n      </div>\r\n      <div class=\"buttons\">\r\n        <button class=\"design-online-btn\" (click)=\"goToDesigner()\">\r\n          Design This Product\r\n        </button>\r\n        <p class=\"blank-prod-btn\" (click)=\"gotoProductView()\">\r\n          Want to purchase this product blank? Click here.\r\n        </p>\r\n      </div>\r\n    </div>\r\n  </div>\r\n\r\n  <div class=\"size-chart-container\">\r\n    <h4>Size Chart</h4>\r\n    <img src=\"{{ obj.url }}\" class=\"upload-size-chart-img\" *ngFor=\"let obj of product?.sizeCharts\" />\r\n    <h4 class=\"w-100 text-center mt-3\" *ngIf=\"!product?.sizeCharts?.length\">\r\n      Size Chart Not Available\r\n    </h4>\r\n  </div>\r\n\r\n  <div class=\"companion-products\" *ngIf=\"product?.requiredComponents?.length\">\r\n    <h4>We recommend pairing this product with ...</h4>\r\n    <div class=\"prod-card-container\">\r\n      <ng-container *ngFor=\"let item of product?.requiredComponents; let i = index\">\r\n        <div class=\"prod-card\" (click)=\"goToProductDetails(item)\" *ngIf=\"i < companionMaxLimit\">\r\n          <div class=\"img-container\">\r\n            <img src=\"{{ item?.image[0] || noImage }}\" *ngIf=\"item?.image\" />\r\n          </div>\r\n          <div class=\"detail-container\">\r\n            <div class=\"available-colors custom-scroll\">\r\n              <div class=\"color\" *ngFor=\"let color of item?.colorList\" [ngStyle]=\"{\r\n                  'background-color': color.hexValue,\r\n                  'background-image': 'url(' + color.swatch + ')'\r\n                }\"></div>\r\n            </div>\r\n            <p class=\"prod-name\">{{ item?.displayName || item?.name }}</p>\r\n            <p class=\"style-name\">{{ item?.styleName }}</p>\r\n            <p class=\"base-price\">${{ item?.price }}</p>\r\n          </div>\r\n        </div>\r\n      </ng-container>\r\n    </div>\r\n    <p class=\"show-more-prods\" *ngIf=\"companionMaxLimit < product?.requiredComponents?.length\"\r\n      (click)=\"companionMaxLimit = companionMaxLimit + 4\">\r\n      Load more ...\r\n    </p>\r\n  </div>\r\n  <div class=\"alternate-products\" *ngIf=\"product?.alternateProducts?.length\">\r\n    <h4>If you like this product you might also like ...</h4>\r\n    <div class=\"prod-card-container\">\r\n      <ng-container *ngFor=\"let item of product?.alternateProducts; let i = index\">\r\n        <div class=\"prod-card\" (click)=\"goToProductDetails(item)\" *ngIf=\"i < alternateMaxLimit\">\r\n          <div class=\"img-container\">\r\n            <img src=\"{{ item?.image[0] || noImage }}\" *ngIf=\"item?.image\" />\r\n          </div>\r\n          <div class=\"detail-container\">\r\n            <div class=\"available-colors custom-scroll\">\r\n              <div class=\"color\" *ngFor=\"let color of item?.colorList\" [ngStyle]=\"{\r\n                  'background-color': color.hexValue,\r\n                  'background-image': 'url(' + color.swatch + ')'\r\n                }\"></div>\r\n            </div>\r\n            <p class=\"prod-name\">{{ item?.displayName || item?.name }}</p>\r\n            <p class=\"style-name\">{{ item?.styleName }}</p>\r\n            <p class=\"base-price\">${{ item?.price }}</p>\r\n          </div>\r\n        </div>\r\n      </ng-container>\r\n    </div>\r\n    <p class=\"show-more-prods\" *ngIf=\"alternateMaxLimit < product?.alternateProducts?.length\"\r\n      (click)=\"alternateMaxLimit = alternateMaxLimit + 4\">\r\n      Load more ...\r\n    </p>\r\n  </div>\r\n  <div class=\"seo-section\" *ngIf=\"product?.adCopy\">\r\n    <h4>About {{ product?.displayName || product?.name }}</h4>\r\n    <p>{{ product?.adCopy }}</p>\r\n  </div>\r\n</div>\r\n\r\n<!-- <div\r\n  class=\"modal fade\"\r\n  id=\"sizeChartModal\"\r\n  tabindex=\"-1\"\r\n  role=\"dialog\"\r\n  data-keyboard=\"false\"\r\n  data-backdrop=\"static\"\r\n  aria-hidden=\"true\"\r\n>\r\n  <div class=\"modal-dialog modal-lg\" role=\"document\" style=\"max-width: 80vw\">\r\n    <div class=\"modal-content\">\r\n      <div class=\"modal-header\">\r\n        <button\r\n          type=\"button\"\r\n          class=\"btn btn-danger btn-sm\"\r\n          data-dismiss=\"modal\"\r\n          aria-label=\"Close\"\r\n        >\r\n          <span aria-hidden=\"true\">&times;</span>\r\n        </button>\r\n      </div>\r\n      <div class=\"modal-body\">\r\n        <div class=\"view-size-chart\">\r\n          <img\r\n            src=\"{{ obj.url }}\"\r\n            class=\"upload-size-chart-img\"\r\n            *ngFor=\"let obj of product?.sizeCharts\"\r\n          />\r\n          <h4\r\n            class=\"w-100 text-center m-3\"\r\n            *ngIf=\"!product?.sizeCharts?.length\"\r\n          >\r\n            Size Chart Not Available\r\n          </h4>\r\n        </div>\r\n      </div>\r\n      <div class=\"modal-footer\">\r\n        <button type=\"button\" class=\"btn btn-primary\" data-dismiss=\"modal\">\r\n          Close\r\n        </button>\r\n      </div>\r\n    </div>\r\n  </div>\r\n</div> -->","import { BreakpointObserver, Breakpoints } from '@angular/cdk/layout';\r\nimport { Component, ElementRef, HostListener, OnInit, ViewChild } from '@angular/core';\r\nimport { ActivatedRoute, Router } from '@angular/router';\r\nimport { timeout } from 'rxjs';\r\nimport { CommonService } from 'src/app/core/services/common.service';\r\nimport { OrganizationService } from 'src/app/core/services/organization.service';\r\nimport { ProductService } from 'src/app/core/services/product.service';\r\nimport { StoreService } from 'src/app/core/services/store.service';\r\nimport { environment } from 'src/environments/environment';\r\ndeclare var $: any\r\n\r\n@Component({\r\n  selector: 'app-product-list',\r\n  templateUrl: './product-list.component.html',\r\n  styleUrls: ['./product-list.component.scss']\r\n})\r\n\r\nexport class ProductListComponent implements OnInit {\r\n\r\n  public organizations: any[] = [];\r\n  public departments: any[] = [];\r\n  public artworks: any[] = [];\r\n  public artWorkUrl: any;\r\n  public organizationId: any;\r\n  public userID: any;\r\n\r\n\r\n  @ViewChild('widgetsContent') widgetsContent: ElementRef;\r\n  @ViewChild('categoryContainer') categoryContainer: ElementRef;\r\n  @ViewChild('colorContainer') colorContainer: ElementRef;\r\n  @ViewChild('marketContainer') marketContainer: ElementRef;\r\n\r\n  showSubItems: boolean = false;\r\n  showAllCategories = false\r\n  showAllColors = false\r\n  showAllMarkets = false\r\n  productList: any[] = [];\r\n  categoryList: any[]\r\n\r\n  availableSortOptions = [\r\n    { title: 'Relevance', value: 'id', order: 'asc' },\r\n    { title: 'Product Name A to Z', value: 'name', order: 'asc' },\r\n    { title: 'Product Name Z to A', value: 'name', order: 'dsc' },\r\n    { title: 'Price (Low to High)', value: 'price', order: 'asc' },\r\n    { title: 'Price (High to Low)', value: 'price', order: 'desc' },\r\n  ]\r\n  selectedSortOption: any = {}\r\n  selectedCategory: any = { id: 0, name: \"All Products\" }\r\n  userId: string;\r\n  token: string;\r\n  categoryId: number;\r\n  noImage = \"../../../../assets/images/no-image.jpg\"\r\n  searchText = ''\r\n  loading = false\r\n  templateRefId\r\n  pages: number[] = [];\r\n\r\n  paginatorLength: number\r\n  paginatorPageSize: number = 24\r\n  paginatorPageSizeOptions: any[] = [{ \"name\": \"12\", \"value\": 12 }, { \"name\": \"24\", \"value\": 24 }, { \"name\": \"48\", \"value\": 48 }, { \"name\": \"100\", \"value\": 100 }, { \"name\": \"View All\", \"value\": 0 }]\r\n  paginatorIndex: number = 0\r\n  selectedProductToDesign\r\n  private wpUrl = environment.wpUrl;\r\n  colorList: any[] = [];\r\n  marketList: any[] = [];\r\n  colorId: number;\r\n  marketId: number;\r\n  startIndex: number = 0;\r\n  endIndex: number = 0;\r\n\r\n\r\n  currentPage: number = 1;\r\n  totalItems: number;\r\n  sorted: any;\r\n  isViewAll: boolean = false;\r\n  isMobileView: boolean = false;\r\n  // Inside your component class\r\n  showItemsPerPageFlag: boolean = false;\r\n  showSortFlag: boolean = false;\r\n  showPaginationFlag: boolean = false;\r\n\r\n  constructor(\r\n    private route: ActivatedRoute,\r\n    private storeService: StoreService,\r\n    private productService: ProductService,\r\n    private router: Router,\r\n    private commonService: CommonService,\r\n    private breakpointObserver: BreakpointObserver,\r\n    private organizationService: OrganizationService) { }\r\n\r\n  @HostListener('window:message', ['$event'])\r\n  onMessage(e) {\r\n\r\n    if (e.origin != environment.wpUrl.substring(0, environment.wpUrl.length - 1)) {\r\n      return false;\r\n    }\r\n\r\n    if (typeof (e.data) == \"string\" && e.data.startsWith(\"apply action - \")) {\r\n      if (e.data.replace(\"apply action - \", \"\") == \"design product\") {\r\n        this.goToDesigner(this.selectedProductToDesign)\r\n      }\r\n    }\r\n  }\r\n\r\n  findSortOptionTitle(value: string, order: string): void {\r\n    const sortOption = this.availableSortOptions.find(option => option.value === value && option.order === order);\r\n    if (sortOption) {\r\n      this.selectedSortOption = sortOption;\r\n    }\r\n  }\r\n\r\n  // Function to show items per page section\r\n  showItemsPerPage() {\r\n    this.showItemsPerPageFlag = !this.showItemsPerPageFlag;\r\n    this.showSortFlag = false;\r\n    this.showPaginationFlag = false;\r\n  }\r\n\r\n  // Function to show sort section\r\n  showSort() {\r\n    this.showSortFlag = !this.showSortFlag;\r\n    this.showItemsPerPageFlag = false;\r\n    this.showPaginationFlag = false;\r\n  }\r\n\r\n  // Function to show filter section\r\n  showFilter() {\r\n    this.showItemsPerPageFlag = false;\r\n    this.showSortFlag = false;\r\n    this.showPaginationFlag = false;\r\n  }\r\n\r\n  // Function to show pagination\r\n  showPagination() {\r\n    this.showPaginationFlag = true;\r\n    this.showItemsPerPageFlag = false;\r\n    this.showSortFlag = false;\r\n  }\r\n\r\n\r\n\r\n  ngOnInit() {\r\n    this.userID = localStorage.getItem(\"userId\");\r\n    console.log(this.userID, \"this.userID\");\r\n\r\n    window.parent.postMessage(\"update title-Product List\", \"*\")\r\n    this.commonService.postScrollMessageToParent()\r\n    this.breakpointObserver.observe([Breakpoints.Handset, Breakpoints.Tablet])\r\n      .subscribe(result => {\r\n        this.isMobileView = result.matches;\r\n      });\r\n    this.categoryId = Number(this.route.snapshot.queryParamMap.get('category')) || 0;\r\n    this.colorId = Number(this.route.snapshot.queryParamMap.get('color')) || 0;\r\n    this.marketId = Number(this.route.snapshot.queryParamMap.get('market')) || 0;\r\n    this.searchText = this.route.snapshot.queryParamMap.get('search') || ''\r\n    this.selectedSortOption.value = this.route.snapshot.queryParamMap.get('orderby') || 'id'\r\n    this.selectedSortOption.order = this.route.snapshot.queryParamMap.get('order') || 'asc';\r\n    //this.paginatorIndex = Number(this.route.snapshot.queryParamMap.get('page')) || 0; \r\n    //this.paginatorPageSize=Number(this.route.snapshot.queryParamMap.get('per_page') || '10')\r\n\r\n    // this.paginatorLength=Number(this.route.snapshot.queryParamMap.get('paginatorLength') || '0')\r\n    // this.paginatorPageSize=Number(this.route.snapshot.queryParamMap.get('paginatorPageSize') || '0')\r\n    // this.paginatorPageSizeOptions=[Number(this.route.snapshot.queryParamMap.get('paginatorPageSizeOptions') || '10')]\r\n    this.findSortOptionTitle(this.selectedSortOption.value, this.selectedSortOption.order);\r\n    this.startIndex = this.paginatorIndex * this.paginatorPageSize + 1\r\n    this.endIndex = this.paginatorIndex * this.paginatorPageSize + this.paginatorPageSize\r\n    this.organizationDropdown(this.userID);\r\n    // this.departmentDropdown();\r\n    // this.artworkDropdown();\r\n\r\n    this.getProductCategory()\r\n    this.getColors()\r\n    this.getMarkets()\r\n    let thisObj = {} = this;\r\n    localStorage.setItem('teamStoreId', '0');\r\n    let runCount = 0\r\n    //Signal te parent\r\n    window.parent.postMessage(\"loaded\", \"*\")\r\n    // listen for messages from the parent.\r\n    window.addEventListener(\"message\", function (e) {\r\n      if (runCount === 0) {\r\n        if (e.data.categoryId) {\r\n          // thisObj.categoryId = new String(e.data.categoryId).toString();  \r\n          thisObj.categoryId = thisObj.categoryId ? thisObj.categoryId : (Number(e.data.categoryId) || 0)\r\n        }\r\n        thisObj.getProduct();\r\n        runCount++\r\n      }\r\n    }, false)\r\n    setInterval(() => {\r\n      this.commonService.postHeightToParent(\"low\")\r\n    }, 500)\r\n    // this.getProductCategory();\r\n    this.templateRefId = this.route.snapshot.queryParams['templateRefId']\r\n    this.paginatorLength = this.productList.length;\r\n\r\n    setTimeout(() => { this.bindSortOptions() }, 1000)\r\n  }\r\n  bindSortOptions() {\r\n    this.selectedSortOption = this.availableSortOptions.filter(option => option.value === this.selectedSortOption.value && option.order === this.selectedSortOption.order);\r\n    if (this.selectedSortOption.length > 0) {\r\n      this.sorted = this.selectedSortOption[0].title\r\n    }\r\n  }\r\n\r\n  getProductCategory() {\r\n    this.productService.getProductCategory().subscribe(\r\n      (response) => {\r\n        var result = response.body.data;\r\n        this.categoryList = []\r\n        let selectedCategory\r\n        result.forEach(el => {\r\n          var o = Object.assign({}, el);\r\n          o.isExpanded = false;\r\n          if (o.parent_id == 0)\r\n            this.categoryList.push(el)\r\n          // return o;\r\n          if (this.categoryId) {\r\n            if (this.categoryId == el.id)\r\n              selectedCategory = el\r\n          }\r\n        });\r\n        if (selectedCategory) {\r\n          setTimeout(() => {\r\n            let index = this.categoryList.findIndex((x) => x == selectedCategory)\r\n            if (index > 5) {\r\n              this.showAllCategories = true\r\n            }\r\n            setTimeout(() => { this.scrollToSelectedCategory(index); this.toggleSubItems(selectedCategory); }, 200)\r\n\r\n          }, 2000)\r\n        }\r\n      },\r\n      (error) => {\r\n\r\n      }\r\n    );\r\n  }\r\n  scrollToSelectedCategory(index: number) {\r\n    if (this.categoryContainer && this.categoryContainer.nativeElement) {\r\n      const categoryElements = this.categoryContainer.nativeElement.querySelectorAll('.category-list-item');\r\n      if (categoryElements.length > index) {\r\n        categoryElements[index].scrollIntoView({\r\n          behavior: 'smooth',\r\n          block: 'start',\r\n        });\r\n      }\r\n    }\r\n  }\r\n  scrollToSelectedColor(index: number) {\r\n    if (this.colorContainer && this.colorContainer.nativeElement) {\r\n      const colorElements = this.colorContainer.nativeElement.querySelectorAll('.category-list-item2');\r\n      if (colorElements.length > index) {\r\n        colorElements[index].scrollIntoView({\r\n          behavior: 'smooth',\r\n          block: 'start',\r\n        });\r\n      }\r\n    }\r\n  }\r\n  scrollToSelectedMarket(index: number) {\r\n    if (this.marketContainer && this.marketContainer.nativeElement) {\r\n      const marketElements = this.marketContainer.nativeElement.querySelectorAll('.category-list-item3');\r\n      if (marketElements.length > index) {\r\n        marketElements[index].scrollIntoView({\r\n          behavior: 'smooth',\r\n          block: 'start',\r\n        });\r\n      }\r\n    }\r\n  }\r\n  getColors() {\r\n    this.productService.getProductColors().subscribe(\r\n      (response) => {\r\n        var result = response.body.data;\r\n        this.colorList = []\r\n        let selectedColor\r\n        result.forEach(el => {\r\n          var o = Object.assign({}, el);\r\n          o.isExpanded = false;\r\n          //if (o.parent_id == 0)\r\n          this.colorList.push(el)\r\n          if (this.colorId) {\r\n            if (this.colorId == el.id)\r\n              selectedColor = el\r\n          }\r\n        });\r\n        if (selectedColor) {\r\n          setTimeout(() => {\r\n            let index = this.colorList.findIndex((x) => x == selectedColor)\r\n            if (index > 5) {\r\n              this.showAllColors = true\r\n            }\r\n            setTimeout(() => { this.scrollToSelectedColor(index); this.toggleColor(selectedColor) }, 200)\r\n          }, 200)\r\n        }\r\n      },\r\n      (error) => {\r\n\r\n      }\r\n    );\r\n  }\r\n  getMarkets() {\r\n    this.productService.getAllProductGroups({}).subscribe(\r\n      (response) => {\r\n        var result = response.body.data;\r\n        this.marketList = []\r\n        let selectedMarket\r\n        result.forEach(el => {\r\n          var o = Object.assign({}, el);\r\n          o.isExpanded = false;\r\n          //if (o.parent_id == 0)\r\n          this.marketList.push(el)\r\n          if (this.marketId) {\r\n            if (this.marketId == el.id)\r\n              selectedMarket = el\r\n          }\r\n        });\r\n        if (selectedMarket) {\r\n          setTimeout(() => {\r\n            let index = this.marketList.findIndex((x) => x == selectedMarket)\r\n            if (index > 5) {\r\n              this.showAllMarkets = true\r\n            }\r\n            setTimeout(() => { this.scrollToSelectedMarket(index); this.toggleMarket(selectedMarket) }, 200)\r\n          }, 200)\r\n        }\r\n      },\r\n      (error) => {\r\n\r\n      }\r\n    );\r\n  }\r\n\r\n  toggleSubItems(item: any, event?) {\r\n    $('.category-list-item.active').removeClass('active')\r\n    if (item && item.id)\r\n      $('.category-list-item.' + item.id)[0]?.classList?.toggle('active')\r\n    else if (event)\r\n      event.srcElement.classList.toggle('active')\r\n    this.selectedCategory = item\r\n    // item.isExpanded = true ? item.isExpanded == false : true;\r\n    this.hideMobileMenu()\r\n    this.categoryId = item.id\r\n    // this.getProduct();\r\n\r\n  }\r\n  toggleColor(item: any, event?) {\r\n    $('.category-list-item2.active').removeClass('active')\r\n    if (item && item.id)\r\n      $('.category-list-item2.' + item.id)[0].classList.toggle('active')\r\n    else if (event)\r\n      event.srcElement.classList.toggle('active')\r\n    this.hideMobileMenu()\r\n    this.colorId = item.id\r\n    //this.getProduct();\r\n\r\n  }\r\n  toggleMarket(item: any, event?) {\r\n    $('.category-list-item3.active').removeClass('active')\r\n    if (item && item.id)\r\n      $('.category-list-item3.' + item.id)[0].classList.toggle('active')\r\n    else if (event)\r\n      event.srcElement.classList.toggle('active')\r\n    this.hideMobileMenu()\r\n    this.marketId = item.id\r\n    //this.getProduct();\r\n\r\n  }\r\n  goToWordPressAfterSortBy(selectedValue) {\r\n    this.selectedSortOption = this.availableSortOptions.filter(option => option.title === selectedValue);\r\n    const params = new URLSearchParams();\r\n    if (this.categoryId) {\r\n      params.set('category', this.categoryId.toString());\r\n    }\r\n    if (this.selectedSortOption[0].value) {\r\n      params.set('orderby', this.selectedSortOption[0].value);\r\n    }\r\n    if (this.selectedSortOption[0].order) {\r\n      params.set('order', this.selectedSortOption[0].order);\r\n    }\r\n    if (this.colorId) {\r\n      params.set('color', this.colorId.toString());\r\n    }\r\n    if (this.marketId) {\r\n      params.set('market', this.marketId.toString());\r\n    }\r\n\r\n    const url = new URL('Product-List', this.wpUrl);\r\n    url.search = params.toString();\r\n    parent.postMessage(url.href, '*');\r\n  }\r\n  goToWordPress() {\r\n    const params = new URLSearchParams();\r\n    if (this.categoryId) {\r\n      params.set('category', this.categoryId.toString());\r\n    }\r\n    // if(this.searchText){\r\n    //   params.set('search', this.searchText);\r\n    // }\r\n    if (this.selectedSortOption[0]?.value) {\r\n      params.set('orderby', this.selectedSortOption[0].value);\r\n    } else {\r\n      params.set('orderby', 'id');\r\n    }\r\n    if (this.selectedSortOption[0]?.order) {\r\n      params.set('order', this.selectedSortOption[0].order);\r\n    } else {\r\n      params.set('order', 'asc');\r\n    }\r\n    if (this.colorId) {\r\n      params.set('color', this.colorId.toString());\r\n    }\r\n    if (this.marketId) {\r\n      params.set('market', this.marketId.toString());\r\n    }\r\n\r\n    const url = new URL('Product-List', this.wpUrl);\r\n    url.search = params.toString();\r\n    parent.postMessage(url.href, '*');\r\n  }\r\n  searchFilterOnly() {\r\n    const params = new URLSearchParams();\r\n    if (this.searchText) {\r\n      params.set('search', this.searchText);\r\n    }\r\n    if (this.selectedSortOption[0]?.value) {\r\n      params.set('orderby', this.selectedSortOption.value);\r\n    }\r\n    else {\r\n      params.set('orderby', 'id');\r\n    }\r\n    if (this.selectedSortOption[0]?.order) {\r\n      params.set('order', this.selectedSortOption.order);\r\n    } else {\r\n      params.set('order', 'asc');\r\n    }\r\n    const url = new URL('Product-List', this.wpUrl);\r\n    url.search = params.toString();\r\n    parent.postMessage(url.href, '*');\r\n  }\r\n\r\n  ResetFilter() {\r\n    let url = this.wpUrl + 'Product-List/'\r\n    window.parent.location.href = url;\r\n  }\r\n  getProduct() {\r\n    this.commonService.toggleLoading(true)\r\n    this.loading = true\r\n    let params = {\r\n      categoryId: this.categoryId,\r\n      page: this.paginatorIndex,\r\n      per_page: this.paginatorPageSize,\r\n      // viewType:2, \r\n      storeStatuses: '2,3',\r\n      keyword: this.searchText,\r\n      orderBy: this.selectedSortOption.value,\r\n      order: this.selectedSortOption.order,\r\n      color: this.colorId,\r\n      markets: this.marketId\r\n    }\r\n    this.productService.getProduct(params).subscribe(\r\n      (response) => {\r\n        this.productList = response.body.data;\r\n        this.paginatorLength = JSON.parse(response.headers.get(\"Pagination\")).totalItems\r\n        this.totalItems = this.paginatorLength;\r\n        this.paginatorIndex = JSON.parse(response.headers.get(\"Pagination\")).currentPage\r\n        this.loading = false\r\n        this.commonService.postScrollMessageToParent()\r\n        this.generatePageNumbers();\r\n        this.updatePaginator();\r\n\r\n        this.productList = response.body.data.map(item => ({\r\n          ...item,\r\n          uniqueNumber: this.generateUniqueNumber() // Assign a unique random number\r\n        }));\r\n\r\n        // Render Doogma Dynaviewer for each product\r\n        //this.renderCanvasForProducts();\r\n        this.commonService.toggleLoading(false)\r\n      },\r\n      (error) => {\r\n        this.productList = [];\r\n        this.paginatorLength = 0\r\n        this.loading = false\r\n        this.commonService.toggleLoading(false)\r\n      }\r\n    );\r\n  }\r\n  isButtonDisabled(optionValue) {\r\n\r\n    if (this.paginatorPageSize === optionValue || (optionValue === 0 && this.isViewAll)) {\r\n      return '#6a6a6a';\r\n    } else {\r\n      return '#007dc3';\r\n    }\r\n  }\r\n  isButtonDisabledForMob(optionValue) {\r\n\r\n    if (this.paginatorPageSize === optionValue || (optionValue === 0 && this.isViewAll)) {\r\n      return '#6a6a6a';\r\n    } else {\r\n      return '';\r\n    }\r\n  }\r\n  isButtonDisabledForMobColor(optionValue) {\r\n\r\n    if (this.paginatorPageSize === optionValue || (optionValue === 0 && this.isViewAll)) {\r\n      return '#e6e6e6';\r\n    } else {\r\n      return '';\r\n    }\r\n  }\r\n\r\n\r\n  goToProductDetails(product: any, ev?) {\r\n    localStorage.setItem('productId', product.id);\r\n    let wpurl = this.wpUrl + 'Product-View/?ProductId=' + product.id\r\n    if (this.templateRefId) {\r\n      wpurl += \"?TemplateRefId=\" + this.templateRefId\r\n      localStorage.setItem('templateRefId', this.templateRefId);\r\n    }\r\n    let url = '/enduser/directpurchase/productdetail/' + product.id\r\n    if (this.templateRefId) {\r\n      url += \"?templateRefId=\" + this.templateRefId\r\n      localStorage.setItem('templateRefId', this.templateRefId);\r\n    }\r\n    //if(ev) ev.stopPropagation()\r\n    //this.router.navigateByUrl(url);\r\n\r\n    //parent.postMessage(wpurl, \"*\");\r\n\r\n    // const originalSEOString = product?.metaData?product.metaData:'';\r\n    // if(originalSEOString!=''){\r\n    //   const metaData=`<head>\r\n    // <meta charset=\"UTF-8\">\r\n    // <meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\">\r\n    // <title>${product.name + ' | '+ product.styleName}</title>\r\n    // <meta name=\"description\" content=\"${product?.description}\">\r\n    // <meta name=\"keywords\" content=\"${product.metaData}\">\r\n    // <meta name=\"author\" content=\"Ares Sportswear\"> \r\n    // <link rel=\"canonical\" href=\"${this.wpUrl+'Product-View/?ProductId='+ product.id}\">`\r\n    //   wpurl+=\"&sk=\" +encodeURIComponent(metaData);  \r\n    // }\r\n    window.parent.location.href = wpurl;\r\n\r\n  }\r\n\r\n  category: {\r\n    id: any,\r\n    name: any,\r\n    createdDate: any,\r\n    parent_id: any,\r\n    slug: any,\r\n    subcategories: [],\r\n    expanded: false\r\n  };\r\n\r\n  pageEvent(pageSize) {\r\n    //this.loading=true\r\n    this.currentPage = 1\r\n    this.paginatorIndex = 1\r\n\r\n    if (pageSize == 0) {\r\n      this.isViewAll = true;\r\n    } else {\r\n      this.isViewAll = false;\r\n    }\r\n\r\n    if (pageSize == 0) {\r\n      this.paginatorPageSize = this.paginatorLength\r\n    }\r\n    else {\r\n      this.paginatorPageSize = pageSize\r\n    }\r\n    //this.paginatorIndex = Number(event.pageIndex) + 1\r\n    this.getProduct();\r\n    this.startIndex = (this.paginatorIndex * this.paginatorPageSize + 1) - (this.paginatorPageSize)\r\n    let tempIndex = this.paginatorIndex * this.paginatorPageSize\r\n    if (tempIndex >= this.paginatorLength) {\r\n      this.endIndex = this.paginatorLength\r\n    } else {\r\n      this.endIndex = this.paginatorIndex * this.paginatorPageSize\r\n    }\r\n    //this.loading=false\r\n    //this.goToWordPress() \r\n    //this.updatePaginator();\r\n  }\r\n\r\n  scrollLeft() {\r\n    this.widgetsContent.nativeElement.scrollLeft -= 150;\r\n  }\r\n\r\n  scrollRight() {\r\n    this.widgetsContent.nativeElement.scrollLeft += 150;\r\n  }\r\n\r\n  toggleMobileMenu() {\r\n    let el = document.getElementById('mobile-menu-ham')\r\n    el.classList.toggle('active')\r\n    el = document.getElementById('category-list')\r\n    el.classList.toggle('active')\r\n  }\r\n\r\n  hideMobileMenu() {\r\n    let el = document.getElementById('mobile-menu-ham')\r\n    el.classList.remove('active')\r\n    el = document.getElementById('category-list')\r\n    el.classList.remove('active')\r\n  }\r\n\r\n  onSearchKeypress(event) {\r\n    if (event.charCode == 13) {\r\n      this.getProduct()\r\n      this.searchFilterOnly()\r\n    }\r\n  }\r\n\r\n  goToDesigner(product, ev?) {\r\n    localStorage.setItem('productId', product.id);\r\n    if (this.templateRefId) {\r\n      localStorage.setItem('templateRefId', this.templateRefId);\r\n    }\r\n    if (!product) return\r\n    this.selectedProductToDesign = product\r\n    if (ev) ev.stopPropagation()\r\n    // if (!this.isUserLoggedIn(\"design product\")) return\r\n    localStorage.setItem(\"purchaseType\", '2');\r\n    let url = '/enduser/directpurchase/designer/' + product.id\r\n    if (product.colorList && product.colorList.length)\r\n      url = url + \"-\" + product.colorList[0].id\r\n\r\n    if (this.templateRefId)\r\n      url += \"?templateRefId=\" + this.templateRefId\r\n\r\n    this.router.navigateByUrl(url);\r\n  }\r\n\r\n  isUserLoggedIn(action) {\r\n    let userId = localStorage.getItem(\"userId\");\r\n    if (!userId) {\r\n      window.parent.postMessage(\"open guest login\", \"*\");\r\n      window.parent.postMessage(\"action - \" + action, \"*\");\r\n      return false\r\n    } else {\r\n      return true\r\n    }\r\n  }\r\n\r\n  goToPage(page: number) {\r\n    this.paginatorIndex = page\r\n    this.getProduct();\r\n    if (page >= 1 && page <= this.totalItems && page !== this.currentPage) {\r\n      this.currentPage = page;\r\n      this.updatePaginator();\r\n    }\r\n    this.startIndex = (this.paginatorIndex * this.paginatorPageSize + 1) - (this.paginatorPageSize)\r\n    let tempIndex = this.paginatorIndex * this.paginatorPageSize\r\n    if (tempIndex >= this.paginatorLength) {\r\n      this.endIndex = this.paginatorLength\r\n    } else {\r\n      this.endIndex = this.paginatorIndex * this.paginatorPageSize\r\n    }\r\n  }\r\n\r\n  private updatePaginator() {\r\n    this.totalItems = Math.ceil(this.totalItems / this.paginatorPageSize);\r\n\r\n    const maxVisiblePages = 3;\r\n    let startPage = Math.max(1, this.currentPage - Math.floor(maxVisiblePages / 2));\r\n    let endPage = Math.min(this.totalItems, startPage + maxVisiblePages - 1);\r\n\r\n    // Adjust startPage if it doesn't show enough pages\r\n    if (endPage - startPage + 1 < maxVisiblePages) {\r\n      startPage = Math.max(1, endPage - maxVisiblePages + 1);\r\n    }\r\n\r\n    this.pages = Array.from({ length: endPage - startPage + 1 }, (_, i) => startPage + i);\r\n  }\r\n\r\n  private generatePageNumbers() {\r\n    this.pages = [];\r\n    for (let i = 1; i <= this.totalItems; i++) {\r\n      this.pages.push(i);\r\n    }\r\n\r\n  }\r\n\r\n  renderCanvasForProduct(id: number, item: any): void {\r\n    const canvasId = `canvas${id}`;\r\n    const initialParams = this.getInitialParams(item);\r\n    (window as any)?.renderCanvas(canvasId, 'ares~reference1', initialParams, {\r\n      licenseKey: environment.doogmaLicenseKey\r\n    });\r\n  }\r\n\r\n  getInitialParams(item: any): any {\r\n    return {\r\n      dp_product: item?.image[0] || '',\r\n      // dp_graphic1: 'https://jupiterstorage01.blob.core.windows.net/jupiterblob01/b8331cad-e035-4aa5-852b-e510bdeca193-638581824530406277.png',\r\n      dp_graphic1: this.artWorkUrl\r\n      // Add more parameters as needed based on item properties\r\n    };\r\n  }\r\n\r\n  isDoogmaRendered(item: any): boolean {\r\n    // Logic to determine if Doogma output should be displayed\r\n    // For example, check if a property like `hasDoogma` exists and is true\r\n    return item?.hasDoogma; // or any condition that fits your use case\r\n  }\r\n  renderCanvasForProducts() {\r\n    this.productList.forEach((item, index) => {\r\n      if (this.shouldRenderDoogma(item)) {\r\n        this.renderCanvasForProduct(item.uniqueNumber, item);\r\n        item.hasDoogma = true;\r\n      } else {\r\n        item.hasDoogma = false;\r\n      }\r\n    });\r\n  }\r\n\r\n  shouldRenderDoogma(item: any): boolean {\r\n    // Define logic to determine if Doogma should be rendered\r\n    // Example: if item has certain properties or meets conditions\r\n    return item?.image?.length > 0 ? true : false\r\n    // or any condition that fits your use case\r\n  }\r\n  generateUniqueNumber(): number {\r\n    return Math.floor(Math.random() * 100000); // Generate a random number between 0 and 99999\r\n  }\r\n\r\n\r\n  organizationDropdown(userId: number) {\r\n    this.organizationService._organizationDropdown(userId).subscribe({\r\n      next: (res) => {\r\n        this.organizations = res.data;\r\n        console.log(this.organizations);\r\n      }, error: (err) => {\r\n        console.log(err);\r\n\r\n      }\r\n    })\r\n  }\r\n\r\n  departmentDropdown(organizationId: number) {\r\n    //todo need to set user id\r\n    this.organizationService._departmentsDropdown(this.userID, organizationId).subscribe({\r\n      next: (res) => {\r\n        // this.organizations = res.data;\r\n        console.log(res.data);\r\n        this.departments = res.data;\r\n      }, error: (err) => {\r\n        console.log(err);\r\n\r\n      }\r\n    })\r\n  }\r\n\r\n  artworkDropdown(organizationId: number, departmentId: number) {\r\n    this.organizationService._artworkDropdown(organizationId, departmentId).subscribe({\r\n      next: (res) => {\r\n        // this.organizations = res.data;\r\n        console.log(res.data);\r\n        this.artworks = res.data;\r\n      }, error: (err) => {\r\n        console.log(err);\r\n\r\n      }\r\n    })\r\n  }\r\n\r\n\r\n  onOrganizationChange(selectedValue: any) {\r\n    this.organizationId = selectedValue.id\r\n    this.departmentDropdown(selectedValue.id);\r\n\r\n  }\r\n\r\n  onDepartmentChange(selectedValue: any) {\r\n    this.artworkDropdown(this.organizationId, selectedValue.departmentId);\r\n  }\r\n\r\n\r\n  artWorkSubmit() {\r\n    console.log(this.artWorkUrl, \"artworkurl\");\r\n    this.renderCanvasForProducts();\r\n  }\r\n\r\n  clearArtWork() {\r\n    this.artWorkUrl = '';\r\n    this.renderCanvasForProducts();\r\n  }\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n\r\n}\r\n","<!-- <div class=\"card\" style=\"height: 60px; background-color: #004574;\">\r\n\r\n  <div class=\"c-contain\">\r\n    <div class=\"row mt-2\">\r\n      <div class=\"col-3\">\r\n        <ng-select [items]=\"organizations\" bindLabel=\"name\" bindValue=\"id\" placeholder=\"Select organization\"\r\n          (change)=\"onOrganizationChange($event)\">\r\n        </ng-select>\r\n      </div>\r\n      <div class=\"col-3\">\r\n        <ng-select [items]=\"departments\" bindLabel=\"departmentName\" bindValue=\"departmentId\"\r\n          placeholder=\"Select department\" (change)=\"onDepartmentChange($event)\">\r\n        </ng-select>\r\n      </div>\r\n      <div class=\"col-3\">\r\n        <ng-select [items]=\"artworks\" bindLabel=\"artName\" bindValue=\"artUrl\" [(ngModel)]=\"artWorkUrl\"\r\n          placeholder=\"Select artwork\">\r\n        </ng-select>\r\n      </div>\r\n\r\n      <div class=\"col-2\" style=\"display: flex;\r\n    justify-content: space-around;\">\r\n        <button class=\"btn btn-danger me-3\">Submit</button>\r\n        <button class=\"btn btn-light\">Clear</button>\r\n      </div>\r\n    </div>\r\n  </div>\r\n\r\n</div> -->\r\n\r\n<div class=\"grid-container\">\r\n  <nav class=\"category-list\" id=\"category-list\">\r\n    <div class=\"search\">\r\n      <img src=\"../../../../../assets/images/search.png\" />\r\n      <input type=\"text\" placeholder=\"Search all products\" (keypress)=\"onSearchKeypress($event)\"\r\n        [(ngModel)]=\"searchText\" />\r\n      <!-- <button class=\"btn btn-sm btn-outline-dark\" (click)=\"getProduct()\">Search</button> -->\r\n    </div>\r\n\r\n\r\n    <p class=\"category-title\"><b>Category</b></p>\r\n    <div #categoryContainer class=\"categories\" style=\"overflow-y: auto; height: 265px;\">\r\n      <!-- <p class=\"text-center\">  Click on the categories to view all products in them , or click the arrows to display more options. </p> -->\r\n      <div class=\"category-list-item active\"\r\n        (click)=\"toggleSubItems({ id: 0, name: 'All Products' }, $event);goToWordPress()\">\r\n        View All\r\n      </div>\r\n      <ng-container *ngFor=\"let item of categoryList; let i = index\">\r\n        <div *ngIf=\"\r\n              (i < 6 && showAllCategories == false) || showAllCategories == true\r\n            \" class=\"category-list-item {{ item.id }}\" (click)=\"toggleSubItems(item, $event);goToWordPress()\">\r\n          {{ item?.name }}\r\n        </div>\r\n      </ng-container>\r\n      <p class=\"show-all-toggle\" (click)=\"showAllCategories = true\" *ngIf=\"showAllCategories == false\">\r\n        Show More +\r\n      </p>\r\n      <p class=\"show-all-toggle\" (click)=\"showAllCategories = false\" *ngIf=\"showAllCategories == true\">\r\n        Show Less -\r\n      </p>\r\n    </div>\r\n\r\n    <p class=\"category-title\"><b>Color</b></p>\r\n    <div #colorContainer class=\"categories\" style=\"overflow-y: auto; height: 265px;\">\r\n      <div class=\"category-list-item2 active\"\r\n        (click)=\"toggleColor({ id: 0, name: 'All Colors' }, $event);goToWordPress()\">\r\n        View All\r\n      </div>\r\n      <ng-container *ngFor=\"let item of colorList; let i = index\">\r\n        <div *ngIf=\"\r\n              (i < 6 && showAllColors == false) || showAllColors == true\r\n            \" class=\"category-list-item2 {{ item.id }}\" (click)=\"toggleColor(item, $event);goToWordPress()\">\r\n          {{ item?.name }}\r\n        </div>\r\n      </ng-container>\r\n      <p class=\"show-all-toggle\" (click)=\"showAllColors = true\" *ngIf=\"showAllColors == false\">\r\n        Show More +\r\n      </p>\r\n      <p class=\"show-all-toggle\" (click)=\"showAllColors = false\" *ngIf=\"showAllColors == true\">\r\n        Show Less -\r\n      </p>\r\n    </div>\r\n\r\n\r\n    <p class=\"category-title\"><b>Market</b></p>\r\n    <div #marketContainer class=\"categories\" style=\"overflow-y: auto; height: 265px;\">\r\n      <div class=\"category-list-item3 active\"\r\n        (click)=\"toggleMarket({ id: 0, name: 'All Markets' }, $event);goToWordPress()\">\r\n        View All\r\n      </div>\r\n      <ng-container *ngFor=\"let item of marketList; let i = index\">\r\n        <div *ngIf=\"\r\n              (i < 6 && showAllMarkets == false) || showAllMarkets == true\r\n            \" class=\"category-list-item3 {{ item.id }}\" (click)=\"toggleMarket(item, $event);goToWordPress()\">\r\n          {{ item?.name }}\r\n        </div>\r\n      </ng-container>\r\n      <p class=\"show-all-toggle\" (click)=\"showAllMarkets = true\" *ngIf=\"showAllMarkets == false\">\r\n        Show More +\r\n      </p>\r\n      <p class=\"show-all-toggle\" (click)=\"showAllMarkets = false\" *ngIf=\"showAllMarkets == true\">\r\n        Show Less -\r\n      </p>\r\n    </div>\r\n\r\n    <button mat-flat-button class=\"m-1\" style=\"float: right;\" (click)=\"ResetFilter()\">Reset</button>\r\n\r\n\r\n\r\n  </nav>\r\n  <section class=\"prod-section\">\r\n    <div class=\"full-screen-search\">\r\n      <div class=\"search\">\r\n        <img src=\"../../../../../assets/images/search.png\" />\r\n        <input type=\"text\" placeholder=\"Search all products\" (keypress)=\"onSearchKeypress($event)\"\r\n          [(ngModel)]=\"searchText\" />\r\n      </div>\r\n    </div>\r\n    <div class=\"selected-category\" *ngIf=\"!isMobileView\">\r\n      <div class=\"category-name\">\r\n        <p class=\"category\">{{ selectedCategory.name }}</p>\r\n        <div class=\"empty-div\"></div>\r\n        <div class=\"mobile-menu\">\r\n          <svg class=\"ham hamRotate ham1\" id=\"mobile-menu-ham\" viewBox=\"0 0 100 100\" width=\"50\"\r\n            (click)=\"toggleMobileMenu()\">\r\n            <path class=\"line top\"\r\n              d=\"m 30,33 h 40 c 0,0 9.044436,-0.654587 9.044436,-8.508902 0,-7.854315 -8.024349,-11.958003 -14.89975,-10.85914 -6.875401,1.098863 -13.637059,4.171617 -13.637059,16.368042 v 40\" />\r\n            <path class=\"line middle\" d=\"m 30,50 h 40\" />\r\n            <path class=\"line bottom\"\r\n              d=\"m 30,67 h 40 c 12.796276,0 15.357889,-11.717785 15.357889,-26.851538 0,-15.133752 -4.786586,-27.274118 -16.667516,-27.274118 -11.88093,0 -18.499247,6.994427 -18.435284,17.125656 l 0.252538,40\" />\r\n          </svg>\r\n        </div>\r\n      </div>\r\n      <div class=\"sort\">\r\n        <div class=\"row\">\r\n          <span style=\"color: #6a6a6a;\">Items per page:</span>\r\n          <button [style.color]=\"isButtonDisabled(option.value)\"\r\n            [disabled]=\"isButtonDisabled(option.value) === '#6a6a6a'\" class=\"hyperlink-button\"\r\n            *ngFor=\"let option of paginatorPageSizeOptions\" (click)=\"pageEvent(option.value)\">&nbsp;\r\n            <span>{{option.name}}</span> </button>\r\n        </div>\r\n        <p style=\"color: #6a6a6a;\" class=\"total-results showing\">\r\n          Showing {{ startIndex }} -\r\n          {{ endIndex }} of\r\n          {{ paginatorLength }} products\r\n        </p>\r\n        <div class=\"sort-by\">\r\n          <p style=\"color: #6a6a6a;\">\r\n            Sort by: &nbsp;\r\n          </p>\r\n          <select [(ngModel)]=\"sorted\" class=\"form-control select-style\" #sortOptions\r\n            (change)=\"goToWordPressAfterSortBy(sortOptions.value)\">\r\n            <option *ngFor=\"let option of availableSortOptions\" [value]=\"option.title\">\r\n              {{ option.title }}\r\n            </option>\r\n          </select>\r\n        </div>\r\n      </div>\r\n      <div class=\"product-list\">\r\n        <div class=\"custom-paginator\">\r\n          <button class=\"pbutton\" (click)=\"goToPage(currentPage - 1)\" [disabled]=\"currentPage === 1\">Previous</button>\r\n          <button class=\"pbutton\" (click)=\"goToPage(pages[0] - 1)\" [disabled]=\"currentPage === 1\"\r\n            *ngIf=\"currentPage != 1 && pages[0]!=1\">...</button>\r\n\r\n          <ng-container *ngFor=\"let page of pages\">\r\n            <button class=\"pbutton\" (click)=\"goToPage(page)\" [class.active]=\"currentPage === page\">{{ page }}</button>\r\n          </ng-container>\r\n          <button class=\"pbutton\" (click)=\"goToPage(pages[2] + 1)\" [disabled]=\"currentPage === totalItems\"\r\n            *ngIf=\"currentPage != totalItems && pages[2]+1<=totalItems \">...</button>\r\n\r\n          <button class=\"pbutton\" (click)=\"goToPage(currentPage + 1)\"\r\n            [disabled]=\"currentPage === totalItems\">Next</button>\r\n        </div>\r\n      </div>\r\n\r\n    </div>\r\n\r\n    <div class=\"selected-category\" *ngIf=\"isMobileView\">\r\n      <div class=\"category-name\">\r\n        <p class=\"category\">{{ selectedCategory.name }}</p>\r\n        <div class=\"empty-div\"></div>\r\n        <div class=\"mobile-menu\">\r\n          <svg class=\"ham hamRotate ham1\" id=\"mobile-menu-ham\" viewBox=\"0 0 100 100\" width=\"50\"\r\n            (click)=\"toggleMobileMenu()\">\r\n            <path class=\"line top\"\r\n              d=\"m 30,33 h 40 c 0,0 9.044436,-0.654587 9.044436,-8.508902 0,-7.854315 -8.024349,-11.958003 -14.89975,-10.85914 -6.875401,1.098863 -13.637059,4.171617 -13.637059,16.368042 v 40\" />\r\n            <path class=\"line middle\" d=\"m 30,50 h 40\" />\r\n            <path class=\"line bottom\"\r\n              d=\"m 30,67 h 40 c 12.796276,0 15.357889,-11.717785 15.357889,-26.851538 0,-15.133752 -4.786586,-27.274118 -16.667516,-27.274118 -11.88093,0 -18.499247,6.994427 -18.435284,17.125656 l 0.252538,40\" />\r\n          </svg>\r\n        </div>\r\n      </div>\r\n      <div class=\"d-lg-none displaying-options-mobile top row w-100\">\r\n        <!-- <div class=\"col-4\">\r\n            <div (click)=\"showFilter()\"><span class=\"fa fa-filter fa-lg float-left\"></span><span class=\"float-left pad-l-0\"> Filter\r\n                  </span></div>\r\n      </div> -->\r\n        <div class=\"col-6\">\r\n          <div (click)=\"showItemsPerPage()\" class=\"option float-left filtering\" title=\"items-per-page\"><span\r\n              class=\"fa fa-list-ol fa-lg float-left\"></span><span class=\"items-per-page pad-r-0\"> Items per page </span>\r\n          </div>\r\n        </div>\r\n        <div class=\"offset-1 col-5\">\r\n          <div (click)=\"showSort()\" class=\"option float-left filtering\" title=\"sort-items\"><span\r\n              class=\"fa fa-sort-amount-asc fa-lg float-left\"></span><span> Sort </span></div>\r\n        </div>\r\n\r\n      </div>\r\n      <div *ngIf=\"showItemsPerPageFlag\" class=\"d-lg-none options-container items-per-page active\">\r\n        <div class=\"row\">\r\n          <button [style.background-color]=\"isButtonDisabledForMob(option.value)\"\r\n            [style.color]=\"isButtonDisabledForMobColor(option.value)\"\r\n            [disabled]=\"isButtonDisabledForMob(option.value) === '#6a6a6a'\" class=\"btnMbl\"\r\n            *ngFor=\"let option of paginatorPageSizeOptions\" (click)=\"pageEvent(option.value)\">&nbsp;\r\n            <span>{{option.name}}</span> </button>\r\n        </div>\r\n      </div>\r\n\r\n      <div class=\"sort-by d-lg-none options-container items-per-page active\" *ngIf=\"showSortFlag\">\r\n        <div class=\"col-12\" style=\"margin-bottom: 9px \">\r\n          <select [(ngModel)]=\"sorted\" class=\"form-control select-style\" #sortOptions\r\n            (change)=\"goToWordPressAfterSortBy(sortOptions.value)\">\r\n            <option *ngFor=\"let option of availableSortOptions\" [value]=\"option.title\">{{ option.title }}</option>\r\n          </select>\r\n        </div>\r\n\r\n      </div>\r\n      <div class=\"col-12 \">\r\n        <p style=\"color: #6a6a6a;\">\r\n          Showing {{ startIndex }} -\r\n          {{ endIndex }} of\r\n          {{ paginatorLength }} products\r\n        </p>\r\n      </div>\r\n\r\n    </div>\r\n\r\n\r\n    <div class=\"prod-card-container\">\r\n      <div class=\"prod-card\" *ngFor=\"let item of productList; let i = index\" (click)=\"goToProductDetails(item, $event)\">\r\n        <div class=\"btn-overlay\">\r\n          <button class=\"view-btn\" (click)=\"goToProductDetails(item, $event)\">\r\n            View Product\r\n          </button>\r\n          <button class=\"design-btn\" (click)=\"goToDesigner(item, $event)\">\r\n            Design This Product\r\n          </button>\r\n        </div>\r\n\r\n        <div class=\"img-container\">\r\n          <ng-container *ngIf=\"isDoogmaRendered(item)\">\r\n            <canvas id=\"canvas{{ item.uniqueNumber }}\"></canvas>\r\n          </ng-container>\r\n          <ng-container *ngIf=\"!isDoogmaRendered(item)\">\r\n            <img src=\"{{ item?.image[0] || noImage }}\" />\r\n          </ng-container>\r\n        </div>\r\n\r\n        <div class=\"detail-container\">\r\n          <div class=\"available-colors custom-scroll\">\r\n            <div class=\"color\" *ngFor=\"let color of item?.colorList\" [ngStyle]=\"{\r\n                'background-color': color.hexValue,\r\n                'background-image': 'url(' + color.swatch + ')'\r\n              }\"></div>\r\n          </div>\r\n          <p class=\"prod-name\">{{ item?.displayName || item?.name }}</p>\r\n          <p class=\"style-name\">\r\n            {{ item?.styleName }}\r\n          </p>\r\n          <p class=\"base-price\">${{ item?.price }}</p>\r\n        </div>\r\n      </div>\r\n      <div class=\"product-list\" *ngIf=\"isMobileView\">\r\n        <div class=\"custom-paginator\">\r\n          <button class=\"pbutton\" (click)=\"goToPage(currentPage - 1)\" [disabled]=\"currentPage === 1\">Previous</button>\r\n          <button class=\"pbutton\" (click)=\"goToPage(pages[0] - 1)\" [disabled]=\"currentPage === 1\"\r\n            *ngIf=\"currentPage != 1 && pages[0]!=1\">...</button>\r\n\r\n          <ng-container *ngFor=\"let page of pages\">\r\n            <button class=\"pbutton\" (click)=\"goToPage(page)\" [class.active]=\"currentPage === page\">{{ page }}</button>\r\n          </ng-container>\r\n          <button class=\"pbutton\" (click)=\"goToPage(pages[2] + 1)\" [disabled]=\"currentPage === totalItems\"\r\n            *ngIf=\"currentPage != totalItems && pages[2]+1<=totalItems \">...</button>\r\n\r\n          <button class=\"pbutton\" (click)=\"goToPage(currentPage + 1)\"\r\n            [disabled]=\"currentPage === totalItems\">Next</button>\r\n        </div>\r\n      </div>\r\n    </div>\r\n\r\n    <div *ngIf=\"productList?.length==0 && loading==false\" class=\"w-100 text-center mt-4\">\r\n      <h3>No products in this category</h3>\r\n    </div>\r\n    <!-- <div class=\"w-100 text-center\" *ngIf=\"loading\">\r\n      <div class=\"spinner-border\" style=\"width: 3rem; height: 3rem\" role=\"status\">\r\n        <span class=\"sr-only\">Loading...</span>\r\n      </div>\r\n    </div> -->\r\n\r\n  </section>\r\n</div>","<div class=\"grid-container\">\r\n    <div class=\"search-container form-inline\">\r\n        <input type=\"search\" class=\"search-input form-control form-control-sm mt-2\"\r\n        [(ngModel)]=\"filterParams.searchText\" (keyup)=\"onSearchKeyup($event)\" placeholder=\"Search Templates\">\r\n        <button class=\"btn btn-outline-dark btn-sm ml-3 mt-2\" (click)=\"getTemplates()\">Search</button>\r\n    </div>\r\n    <div class=\"template-container\">\r\n        <div class=\"card-container\" *ngFor=\"let template of templateList\">\r\n            <div class=\"template-card\"\r\n                [ngStyle]=\"{'background-image':'url('+template.src+')'}\" (click)=\"goToProductList(template.refId)\">\r\n            </div>\r\n            <div class=\"detail\">\r\n                <p class=\"name\">{{template.name}}</p>\r\n            </div>\r\n        </div>\r\n    </div>\r\n    <mat-paginator (page)=\"onPage($event)\" [length]=\"filterParams.totalLength\" [pageSize]=\"filterParams.per_page\"\r\n        [pageSizeOptions]=\"filterParams.pageSizeOptions\" aria-label=\"Select page\">\r\n    </mat-paginator>\r\n</div>","import { Component, OnInit } from '@angular/core';\r\nimport { Router } from '@angular/router';\r\nimport { CommonService } from 'src/app/core/services/common.service';\r\nimport { ProductService } from 'src/app/core/services/product.service';\r\n\r\n@Component({\r\n  selector: 'app-template-list',\r\n  templateUrl: './template-list.component.html',\r\n  styleUrls: ['./template-list.component.scss']\r\n})\r\nexport class TemplateListComponent implements OnInit {\r\n\r\n  constructor(\r\n    private productService: ProductService,\r\n    private router: Router,\r\n    private commonService: CommonService,\r\n  ) { }\r\n\r\n  templateList = []\r\n  filterParams = {\r\n    page: 1,\r\n    per_page: 10,\r\n    totalLength: 0,\r\n    pageSizeOptions: [10, 20, 50, 100],\r\n    searchText: '',\r\n  }\r\n\r\n  ngOnInit() {\r\n    this.getTemplates()\r\n    window.parent.postMessage(\"update title-\" + \"Templates\", \"*\")\r\n\r\n  }\r\n\r\n\r\n  getTemplates() {\r\n    this.productService.getAllTemplates(this.filterParams).subscribe(res => {\r\n      this.templateList = res.body.data\r\n      this.filterParams.totalLength = JSON.parse(res.headers.get(\"Pagination\")).totalItems || 0\r\n      this.commonService.postHeightToParent(\"low\")\r\n    })\r\n  }\r\n\r\n  goToProductList(refId) {\r\n    this.router.navigateByUrl(\"/enduser/directpurchase/productlist?templateRefId=\" + refId)\r\n  }\r\n\r\n  onPage(event) {\r\n    this.filterParams.per_page = event.pageSize\r\n    this.filterParams.page = event.pageIndex + 1\r\n    this.getTemplates()\r\n  }\r\n\r\n  onSearchKeyup(event){\r\n    if(event.keyCode == 13)\r\n      this.getTemplates()\r\n  }\r\n}\r\n"],"names":["HttpParams","environment","OrganizationService","constructor","http","apiUrl","_addOrganization","payload","post","baseUrl","_getOrganizationTypes","get","_getALLOrganizationList","page","per_page","name","type","primaryColor","secondarycolor","state","city","params","set","toString","observe","_getOrganizationById","id","_updateOrganization","console","log","_getOrganizationOrderListt","OrganizationId","_getOrganizationContactList","_addAtrwork","put","_fetchArtworks","_getArtWorById","_marketDropDown","_organizationDropdown","userId","_departmentsDropdown","orgId","_artworkDropdown","deptId","_getOrganizationListByName","undefined","factory","providedIn","OrganizationRequest","Organization","AlternateColorInfo","InstitutionType","OrganizationSettings","ArtworkRequest","RouterModule","DirectPurchaseComponent","ProductDetailComponent","ProductListComponent","DesignerComponent","ProductViewComponent","CartComponent","CheckoutComponent","TemplateListComponent","routes","path","component","children","pathMatch","DirectPurchaseRoutingModule","forChild","imports","exports","ngOnInit","selectors","decls","vars","consts","template","i0","SharedModule","MatLegacyTabsModule","MatTabsModule","NgSelectModule","DirectPurchaseModule","declarations","router","route","commonService","productService","wpUrl","onMessage","e","origin","substring","length","data","startsWith","replace","goToDesigner","gotoProductView","window","parent","postMessage","postScrollMessageToParent","paramMap","subscribe","productId","parseInt","snapshot","localStorage","setItem","getProductDetail","getProductCategory","getColors","getMarkets","templateRefId","queryParams","document","addEventListener","setInterval","postHeightToParent","response","product","products","selectedColor","variants","loading","error","openErrorSnackBar","message","onImgClick","src","$","css","url","navigateByUrl","isUserLoggedIn","action","getItem","scrollToTop","goToProductDetails","ev","wpurl","location","href","result","body","categoryList","map","el","o","Object","assign","isExpanded","parent_id","getProductColors","colorList","forEach","push","colorId","setTimeout","toggleColor","getAllProductGroups","marketList","selectedMarket","marketId","item","event","removeClass","classList","toggle","srcElement","hideMobileMenu","selectCategory","category","selectColor","color","selectMarket","market","ResetFilter","onSearchKeypress","charCode","searchText","toggleMobileMenu","getElementById","remove","hostBindings","ctx","Breakpoints","ctx_r20","ctx_r31","ctx_r42","storeService","breakpointObserver","organizationService","title","value","order","selectedProductToDesign","findSortOptionTitle","sortOption","availableSortOptions","find","option","selectedSortOption","showItemsPerPage","showItemsPerPageFlag","showSortFlag","showPaginationFlag","showSort","showFilter","showPagination","userID","Handset","Tablet","isMobileView","matches","categoryId","Number","queryParamMap","startIndex","paginatorIndex","paginatorPageSize","endIndex","organizationDropdown","thisObj","runCount","getProduct","paginatorLength","productList","bindSortOptions","filter","sorted","selectedCategory","index","findIndex","x","showAllCategories","scrollToSelectedCategory","toggleSubItems","categoryContainer","nativeElement","categoryElements","querySelectorAll","scrollIntoView","behavior","block","scrollToSelectedColor","colorContainer","colorElements","scrollToSelectedMarket","marketContainer","marketElements","showAllColors","showAllMarkets","toggleMarket","goToWordPressAfterSortBy","selectedValue","URLSearchParams","URL","search","goToWordPress","searchFilterOnly","toggleLoading","storeStatuses","keyword","orderBy","markets","JSON","parse","headers","totalItems","currentPage","generatePageNumbers","updatePaginator","uniqueNumber","generateUniqueNumber","isButtonDisabled","optionValue","isViewAll","isButtonDisabledForMob","isButtonDisabledForMobColor","pageEvent","pageSize","tempIndex","scrollLeft","widgetsContent","scrollRight","stopPropagation","goToPage","Math","ceil","maxVisiblePages","startPage","max","floor","endPage","min","pages","Array","from","_","i","renderCanvasForProduct","canvasId","initialParams","getInitialParams","renderCanvas","licenseKey","doogmaLicenseKey","dp_product","image","dp_graphic1","artWorkUrl","isDoogmaRendered","hasDoogma","renderCanvasForProducts","shouldRenderDoogma","random","next","res","organizations","err","departmentDropdown","organizationId","departments","artworkDropdown","departmentId","artworks","onOrganizationChange","onDepartmentChange","artWorkSubmit","clearArtWork","viewQuery","totalLength","pageSizeOptions","getTemplates","getAllTemplates","filterParams","templateList","goToProductList","refId","onPage","pageIndex","onSearchKeyup","keyCode"],"sourceRoot":"webpack:///","x_google_ignoreList":[]}