@jetshop/core 5.17.0-alpha.313064eb → 5.17.0-alpha.32c42f6d

Sign up to get free protection for your applications and to get access to all the features.
Files changed (243) hide show
  1. package/ChannelHandler/redirectUtils.d.ts +1 -1
  2. package/ChannelHandler/redirectUtils.test.js +5 -5
  3. package/ChannelHandler/redirectUtilsGroupedChannels.test.js +5 -5
  4. package/boot/NetworkStatusNotifier.d.ts +2 -0
  5. package/boot/NetworkStatusNotifier.js +4 -0
  6. package/boot/NetworkStatusNotifier.js.map +1 -0
  7. package/boot/SharedTree.d.ts +1 -1
  8. package/boot/SharedTree.js +1 -1
  9. package/boot/SharedTree.js.map +1 -1
  10. package/boot/apollo.d.ts +1 -2
  11. package/boot/apollo.js +12 -8
  12. package/boot/apollo.js.map +1 -1
  13. package/boot/client/startClient.js +14 -5
  14. package/boot/client/startClient.js.map +1 -1
  15. package/boot/server/IntervalQuery.d.ts +1 -1
  16. package/boot/server/IntervalQuery.js +2 -2
  17. package/boot/server/IntervalQuery.js.map +1 -1
  18. package/boot/server/IntervalQuery.test.js +9 -13
  19. package/boot/server/PersistedApolloClient.test.js +8 -7
  20. package/boot/server/createApolloServer.d.ts +2 -1
  21. package/boot/server/createApolloServer.js +5 -5
  22. package/boot/server/createApolloServer.js.map +1 -1
  23. package/boot/server/createRenderer.js +4 -2
  24. package/boot/server/createRenderer.js.map +1 -1
  25. package/boot/server/entrypoint.js +4 -2
  26. package/boot/server/entrypoint.js.map +1 -1
  27. package/boot/server/persistedQueries/__tests__/getPersistedQueriesForRequest.test.js +1 -1
  28. package/boot/utils/queryLoggingMiddleware.d.ts +1 -1
  29. package/boot/utils/queryLoggingMiddleware.js +2 -2
  30. package/boot/utils/queryLoggingMiddleware.js.map +1 -1
  31. package/cart/AddToCartFormik.d.ts +2 -2
  32. package/cart/AddToCartFormik.js +2 -2
  33. package/cart/AddToCartFormik.js.map +1 -1
  34. package/components/Auth/ForgotPasswordProvider.d.ts +2 -4
  35. package/components/Auth/ForgotPasswordProvider.js +18 -18
  36. package/components/Auth/ForgotPasswordProvider.js.map +1 -1
  37. package/components/Auth/ResetPasswordProvider.d.ts +1 -1
  38. package/components/Auth/ResetPasswordProvider.js +1 -1
  39. package/components/Auth/ResetPasswordProvider.js.map +1 -1
  40. package/components/Auth/SSN.js +4 -4
  41. package/components/Auth/SSN.js.map +1 -1
  42. package/components/Auth/SignupFormContainer.d.ts +2 -5
  43. package/components/Auth/SignupFormContainer.js.map +1 -1
  44. package/components/Auth/UpdatePasswordForm.js +6 -6
  45. package/components/Auth/UpdatePasswordForm.js.map +1 -1
  46. package/components/Auth/signup-context.d.ts +2 -2
  47. package/components/Auth/signup-context.js +2 -3
  48. package/components/Auth/signup-context.js.map +1 -1
  49. package/components/Auth/signupSubmit.js +4 -4
  50. package/components/Auth/signupSubmit.js.map +1 -1
  51. package/components/Auth/useAddressFields.js +3 -3
  52. package/components/Auth/useAddressFields.js.map +1 -1
  53. package/components/Auth/useAddressFields.test.js +10 -8
  54. package/components/Auth/useCustomer.d.ts +2 -2
  55. package/components/Auth/useCustomer.js +1 -1
  56. package/components/Auth/useCustomer.js.map +1 -1
  57. package/components/AuthContext/AuthProvider.js +2 -2
  58. package/components/AuthContext/AuthProvider.js.map +1 -1
  59. package/components/AuthContext/AuthProvider.test.js +1 -1
  60. package/components/AuthContext/LogOut.d.ts +2 -2
  61. package/components/ChannelContext/ChannelProvider.d.ts +1 -1
  62. package/components/ChannelContext/useCountrySettings.d.ts +1 -1
  63. package/components/ChannelContext/useCountrySettings.js +1 -1
  64. package/components/ChannelContext/useCountrySettings.js.map +1 -1
  65. package/components/DynamicRoute/ActiveFiltersQuery.gql +4 -4
  66. package/components/DynamicRoute/CategoryRoute.d.ts +3 -3
  67. package/components/DynamicRoute/CategoryRoute.js +6 -3
  68. package/components/DynamicRoute/CategoryRoute.js.map +1 -1
  69. package/components/DynamicRoute/ContentRoute.d.ts +1 -1
  70. package/components/DynamicRoute/GenericError.d.ts +18 -0
  71. package/components/DynamicRoute/GenericError.js +61 -0
  72. package/components/DynamicRoute/GenericError.js.map +1 -0
  73. package/components/DynamicRoute/PreviewRoute.d.ts +1 -1
  74. package/components/DynamicRoute/PreviewRoute.js +1 -1
  75. package/components/DynamicRoute/PreviewRoute.js.map +1 -1
  76. package/components/DynamicRoute/ProductByArticlenumber.d.ts +2 -2
  77. package/components/DynamicRoute/ProductByArticlenumber.js +2 -2
  78. package/components/DynamicRoute/ProductByArticlenumber.js.map +1 -1
  79. package/components/DynamicRoute/ProductRoute.d.ts +3 -3
  80. package/components/DynamicRoute/RouteResolver.d.ts +2 -2
  81. package/components/DynamicRoute/RouteResolver.js +1 -1
  82. package/components/DynamicRoute/RouteResolver.js.map +1 -1
  83. package/components/DynamicRoute/Status.d.ts +4 -3
  84. package/components/DynamicRoute/Status.js.map +1 -1
  85. package/components/DynamicRoute/index.d.ts +4 -4
  86. package/components/DynamicRoute/index.js +46 -42
  87. package/components/DynamicRoute/index.js.map +1 -1
  88. package/components/Filters/utils/replaceInSearch.d.ts +1 -1
  89. package/components/Filters/utils/replaceInSearch.js.map +1 -1
  90. package/components/Fonts/injectFont.js +2 -2
  91. package/components/Fonts/injectFont.js.map +1 -1
  92. package/components/Mutation/AddToCartFormik.d.ts +1 -1
  93. package/components/Mutation/AddToCartFormik.js +2 -2
  94. package/components/Mutation/AddToCartFormik.js.map +1 -1
  95. package/components/Mutation/DecrementQuantity.d.ts +2 -2
  96. package/components/Mutation/DecrementQuantity.js +1 -1
  97. package/components/Mutation/DecrementQuantity.js.map +1 -1
  98. package/components/Mutation/IncrementQuantity.d.ts +2 -2
  99. package/components/Mutation/IncrementQuantity.js +1 -1
  100. package/components/Mutation/IncrementQuantity.js.map +1 -1
  101. package/components/Mutation/RemoveFromCart.d.ts +2 -2
  102. package/components/Mutation/RemoveFromCart.js +1 -1
  103. package/components/Mutation/RemoveFromCart.js.map +1 -1
  104. package/components/Mutation/SetQuantity.d.ts +2 -2
  105. package/components/Mutation/SetQuantity.js +1 -1
  106. package/components/Mutation/SetQuantity.js.map +1 -1
  107. package/components/Mutation/SubscribeToNewsletter.d.ts +1 -1
  108. package/components/Mutation/SubscribeToNewsletter.js +1 -1
  109. package/components/Mutation/SubscribeToNewsletter.js.map +1 -1
  110. package/components/Mutation/SubscribeToStockNotifications.d.ts +1 -1
  111. package/components/Mutation/SubscribeToStockNotifications.js +6 -2
  112. package/components/Mutation/SubscribeToStockNotifications.js.map +1 -1
  113. package/components/Mutation/cartMutationUtils.d.ts +1 -2
  114. package/components/Mutation/cartMutationUtils.js.map +1 -1
  115. package/components/Mutation/useDecrementQuantity.d.ts +1 -1
  116. package/components/Mutation/useDecrementQuantity.js +1 -1
  117. package/components/Mutation/useDecrementQuantity.js.map +1 -1
  118. package/components/Mutation/useIncrementQuantity.d.ts +1 -1
  119. package/components/Mutation/useIncrementQuantity.js +1 -1
  120. package/components/Mutation/useIncrementQuantity.js.map +1 -1
  121. package/components/Mutation/useRemoveFromCart.d.ts +1 -1
  122. package/components/Mutation/useRemoveFromCart.js +1 -1
  123. package/components/Mutation/useRemoveFromCart.js.map +1 -1
  124. package/components/Mutation/useSetQuantity.d.ts +1 -1
  125. package/components/Mutation/useSetQuantity.js +1 -1
  126. package/components/Mutation/useSetQuantity.js.map +1 -1
  127. package/components/Notifications/Notifications.d.ts +3 -3
  128. package/components/Notifications/Notifications.js +2 -3
  129. package/components/Notifications/Notifications.js.map +1 -1
  130. package/components/ProductConfigurationProvider/ProductConfigurationProvider.js +6 -6
  131. package/components/ProductConfigurationProvider/ProductConfigurationProvider.js.map +1 -1
  132. package/components/Query/CartProvider.d.ts +1 -1
  133. package/components/Query/CartProvider.js +1 -1
  134. package/components/Query/CartProvider.js.map +1 -1
  135. package/components/SortOrder/SortOrderContainer.d.ts +1 -1
  136. package/components/StructuredData/StructuredBreadcrumbData.d.ts +2 -2
  137. package/data/cache.d.ts +1 -1
  138. package/data/cache.js +43 -13
  139. package/data/cache.js.map +1 -1
  140. package/data/fragments/StockStatusFragment.gql +0 -1
  141. package/global.d.ts +55 -1
  142. package/helpers/getErrorDetail.d.ts +1 -1
  143. package/helpers/getErrorDetail.js +2 -2
  144. package/helpers/getErrorDetail.js.map +1 -1
  145. package/hooks/Filters/useBooleanFilter.d.ts +1 -1
  146. package/hooks/Filters/useBooleanFilter.js +1 -2
  147. package/hooks/Filters/useBooleanFilter.js.map +1 -1
  148. package/hooks/Filters/useFilters.d.ts +1 -1
  149. package/hooks/Filters/useFilters.js +1 -2
  150. package/hooks/Filters/useFilters.js.map +1 -1
  151. package/hooks/Filters/useListFilter.d.ts +2 -2
  152. package/hooks/Filters/useListFilter.js +1 -2
  153. package/hooks/Filters/useListFilter.js.map +1 -1
  154. package/hooks/Filters/useMultiFilter.d.ts +3 -3
  155. package/hooks/Filters/useMultiFilter.js +1 -2
  156. package/hooks/Filters/useMultiFilter.js.map +1 -1
  157. package/hooks/Filters/useRangeFilter.d.ts +2 -2
  158. package/hooks/Filters/useRangeFilter.js +1 -2
  159. package/hooks/Filters/useRangeFilter.js.map +1 -1
  160. package/hooks/Filters/useSortOrder.d.ts +6 -1
  161. package/hooks/Filters/useSortOrder.js +4 -3
  162. package/hooks/Filters/useSortOrder.js.map +1 -1
  163. package/hooks/PackageProducts/usePackageProductItem.d.ts +1 -1
  164. package/hooks/PackageProducts/usePackageProductItem.js +1 -1
  165. package/hooks/PackageProducts/usePackageProductItem.js.map +1 -1
  166. package/hooks/PackageProducts/usePackageProducts.js +17 -17
  167. package/hooks/PackageProducts/usePackageProducts.js.map +1 -1
  168. package/hooks/PackageProducts/usePackageProducts.test.js +1 -1
  169. package/hooks/ProductList/ProductListContext.js +1 -1
  170. package/hooks/ProductList/ProductListContext.js.map +1 -1
  171. package/hooks/ProductList/action-creators.d.ts +1 -1
  172. package/hooks/ProductList/index.d.ts +1 -1
  173. package/hooks/ProductList/list-transforms.js +1 -1
  174. package/hooks/ProductList/list-transforms.js.map +1 -1
  175. package/hooks/ProductList/product-list-reducer.js +1 -1
  176. package/hooks/ProductList/product-list-reducer.js.map +1 -1
  177. package/hooks/ProductList/useProductList.js +1 -1
  178. package/hooks/ProductList/useProductList.js.map +1 -1
  179. package/hooks/ProductList/useProductListItems.js +1 -1
  180. package/hooks/ProductList/useProductListItems.js.map +1 -1
  181. package/hooks/Subscriptions/useNewsletterSubscription.js +3 -3
  182. package/hooks/Subscriptions/useNewsletterSubscription.js.map +1 -1
  183. package/hooks/Subscriptions/useStockNotifications.d.ts +1 -1
  184. package/hooks/Subscriptions/useStockNotifications.js +3 -3
  185. package/hooks/Subscriptions/useStockNotifications.js.map +1 -1
  186. package/hooks/Subscriptions/useStoreSubscriptions.d.ts +1 -1
  187. package/hooks/Subscriptions/useStoreSubscriptions.js +3 -6
  188. package/hooks/Subscriptions/useStoreSubscriptions.js.map +1 -1
  189. package/hooks/Subscriptions/useStoresubscriptions.test.js +5 -7
  190. package/hooks/useAddMultipleToCart.d.ts +1 -1
  191. package/hooks/useAddMultipleToCart.js +1 -1
  192. package/hooks/useAddMultipleToCart.js.map +1 -1
  193. package/hooks/useAddMultipleToCart.test.js +1 -1
  194. package/hooks/useCustomerOrders.test.js +7 -5
  195. package/hooks/useCustomerOrdersQuery.d.ts +2 -2
  196. package/hooks/useCustomerOrdersQuery.js +1 -1
  197. package/hooks/useCustomerOrdersQuery.js.map +1 -1
  198. package/hooks/useDeleteAccountMutation.js +3 -3
  199. package/hooks/useDeleteAccountMutation.js.map +1 -1
  200. package/hooks/useInfinitePagination.d.ts +1 -1
  201. package/hooks/useInfinitePagination.js +4 -1
  202. package/hooks/useInfinitePagination.js.map +1 -1
  203. package/hooks/useLoginMutation.d.ts +3 -3
  204. package/hooks/useLoginMutation.js +2 -2
  205. package/hooks/useLoginMutation.js.map +1 -1
  206. package/hooks/useLoginRedirect.js +2 -2
  207. package/hooks/useLoginRedirect.js.map +1 -1
  208. package/hooks/useOrderDetailQuery.d.ts +3 -3
  209. package/hooks/useOrderDetailQuery.js +1 -1
  210. package/hooks/useOrderDetailQuery.js.map +1 -1
  211. package/hooks/useRoutePreload.js +1 -1
  212. package/hooks/useRoutePreload.js.map +1 -1
  213. package/hooks/useStockStatus.d.ts +8 -0
  214. package/hooks/useStockStatus.js +26 -0
  215. package/hooks/useStockStatus.js.map +1 -0
  216. package/integrations/addwishSchemaExtension.js +3 -3
  217. package/integrations/addwishSchemaExtension.js.map +1 -1
  218. package/integrations/nostoSchemaExtension.js +2 -2
  219. package/integrations/nostoSchemaExtension.js.map +1 -1
  220. package/integrations/sluggishSchemaExtension.js +1 -1
  221. package/integrations/sluggishSchemaExtension.js.map +1 -1
  222. package/package.json +10 -25
  223. package/polyfills.js +0 -2
  224. package/polyfills.js.map +1 -1
  225. package/resolvers/filters/boolFilter.js +24 -27
  226. package/resolvers/filters/boolFilter.js.map +1 -1
  227. package/resolvers/filters/filterParams.js +8 -8
  228. package/resolvers/filters/filterParams.js.map +1 -1
  229. package/resolvers/filters/filters.js +5 -5
  230. package/resolvers/filters/filters.js.map +1 -1
  231. package/resolvers/filters/index.d.ts +0 -4
  232. package/resolvers/filters/listFilter.js +24 -29
  233. package/resolvers/filters/listFilter.js.map +1 -1
  234. package/resolvers/filters/listFilterItem.js +31 -36
  235. package/resolvers/filters/listFilterItem.js.map +1 -1
  236. package/resolvers/filters/multiListFilter.js +41 -42
  237. package/resolvers/filters/multiListFilter.js.map +1 -1
  238. package/resolvers/filters/multiListFilterList.js +1 -1
  239. package/resolvers/filters/multiListFilterList.js.map +1 -1
  240. package/resolvers/filters/rangeFilter.js +27 -43
  241. package/resolvers/filters/rangeFilter.js.map +1 -1
  242. package/test-utils/ProviderPyramid.js +1 -1
  243. package/types.d.ts +1820 -1955
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@jetshop/core",
3
- "version": "5.17.0-alpha.313064eb",
3
+ "version": "5.17.0-alpha.32c42f6d",
4
4
  "license": "MIT",
5
5
  "files": [
6
6
  "**/*.js",
@@ -33,7 +33,7 @@
33
33
  }
34
34
  },
35
35
  "dependencies": {
36
- "@apollo/react-ssr": "^3.1.5",
36
+ "@apollo/client": "^3.7.15",
37
37
  "@graphql-tools/delegate": "^7.1.2",
38
38
  "@graphql-tools/stitch": "^7.5.1",
39
39
  "@graphql-tools/wrap": "^7.0.5",
@@ -42,7 +42,7 @@
42
42
  "@sentry/browser": "^6.15.0",
43
43
  "@sentry/core": "^6.15.0",
44
44
  "@sentry/node": "^6.15.0",
45
- "@tanem/react-nprogress": "^1.1.0",
45
+ "@tanem/react-nprogress": "^5.0.43",
46
46
  "@types/accept-language-parser": "^1.5.1",
47
47
  "@types/gtag.js": "^0.0.10",
48
48
  "@types/loadable__component": "^5.10.0",
@@ -50,19 +50,9 @@
50
50
  "@types/react-router-dom": "^5.1.8",
51
51
  "@xstate/react": "^0.8.1",
52
52
  "accept-language-parser": "^1.5.0",
53
- "apollo-cache": "^1.3.2",
54
- "apollo-cache-inmemory": "^1.6.5",
55
- "apollo-client": "~2.6.8",
56
- "apollo-link": "^1.2.14",
57
- "apollo-link-context": "^1.0.20",
58
- "apollo-link-error": "^1.1.13",
59
- "apollo-link-http": "^1.5.17",
60
- "apollo-link-persisted-queries": "^0.2.1",
61
- "apollo-link-schema": "^1.2.5",
62
53
  "apollo-server": "~2.6.9",
63
54
  "apollo-server-caching": "^0.4.0",
64
55
  "apollo-server-express": "~2.6.9",
65
- "apollo-utilities": "^1.3.2",
66
56
  "compression": "^1.7.2",
67
57
  "dnscache": "^1.0.2",
68
58
  "esm": "^3.0.84",
@@ -70,10 +60,9 @@
70
60
  "express": "^4.16.3",
71
61
  "express-graphql": "^0.12.0",
72
62
  "fontfaceobserver": "^2.1.0",
73
- "format-message": "^6.2.3",
63
+ "format-message": "^6.2.4",
74
64
  "graphql": "^14.5.8",
75
- "graphql-tag": "^2.10.1",
76
- "immer": "^6.0.8",
65
+ "immer": "^10.0.2",
77
66
  "intl": "^1.2.5",
78
67
  "isbot": "^2.2.1",
79
68
  "lodash.merge": "^4.6.1",
@@ -82,8 +71,7 @@
82
71
  "node-fetch": "^2.2.0",
83
72
  "prop-types": "^15.6.2",
84
73
  "qs": "^6.5.2",
85
- "react-apollo": "^3.1.5",
86
- "react-apollo-network-status": "^4.0.0",
74
+ "react-apollo-network-status": "^5.2.1",
87
75
  "react-cookie": "^4.1.1",
88
76
  "react-helmet-async": "^1.0.2",
89
77
  "react-media": "^1.10.0",
@@ -91,7 +79,6 @@
91
79
  "request-ip": "^2.1.3",
92
80
  "schema-dts": "^0.8.2",
93
81
  "store-css": "^0.3.0",
94
- "svg-react-loader": "^0.4.5",
95
82
  "ts-node": "^7.0.1",
96
83
  "typed-emitter": "^0.1.0",
97
84
  "typescript": "^4.8.3",
@@ -102,7 +89,6 @@
102
89
  "xstate": "^4.13.0"
103
90
  },
104
91
  "devDependencies": {
105
- "@apollo/react-testing": "^3.0.1",
106
92
  "@graphql-codegen/typescript": "^1.21.0",
107
93
  "@react-mock/localstorage": "^0.1.2",
108
94
  "@types/compression": "^0.0.36",
@@ -117,13 +103,12 @@
117
103
  "@types/node": "^10.12.12",
118
104
  "@types/node-fetch": "^2.1.2",
119
105
  "@types/qs": "^6.5.1",
120
- "@types/react": "^16.9.56",
121
- "@types/react-dom": "^16.9.14",
106
+ "@types/react": "^18",
107
+ "@types/react-dom": "^18",
122
108
  "@types/react-helmet-async": "^1.0.0",
123
109
  "@types/react-router-dom": "^5.1.8",
124
110
  "@types/request-ip": "^0.0.36",
125
111
  "@types/uuid": "^8.3.0",
126
- "apollo-link-mock": "^1.0.1",
127
112
  "chalk": "^4.1.2",
128
113
  "jest-dom": "^3.4.0",
129
114
  "lint-staged": "^8.1.5",
@@ -131,7 +116,7 @@
131
116
  "prettier": "^2.3.2"
132
117
  },
133
118
  "peerDependencies": {
134
- "react": "^16.9.0",
135
- "react-dom": "^16.9.0"
119
+ "react": "^18",
120
+ "react-dom": "^18"
136
121
  }
137
122
  }
package/polyfills.js CHANGED
@@ -1,5 +1,3 @@
1
- import { enableES5 } from 'immer';
2
- enableES5();
3
1
  const polyfills = (locale) => [
4
2
  'es6',
5
3
  'Object.values',
package/polyfills.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"polyfills.js","sourceRoot":"","sources":["polyfills.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAElC,SAAS,EAAE,CAAC;AAEZ,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC;IACpC,KAAK;IACL,eAAe;IACf,gBAAgB;IAChB,aAAa;IACb,eAAe;IACf,sBAAsB;IACtB,2BAA2B;IAC3B,yBAAyB;IACzB,0BAA0B;IAC1B,sBAAsB;IACtB,YAAY;IACZ,sBAAsB;IACtB,2BAA2B;IAC3B,6BAA6B;IAC7B,KAAK;IACL,sBAAsB;IACtB,gBAAgB,MAAM,EAAE;IACxB,SAAS;IACT,OAAO;IACP,QAAQ;IACR,gBAAgB;CACjB,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAc,EAAE,EAAE;IAC/C,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7C,6YAA6Y;IAC7Y,OAAO;;;;;;;gEAQL,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EACnD,kCAAkC,QAAQ,yBAAyB,CAAC;AACtE,CAAC,CAAC"}
1
+ {"version":3,"file":"polyfills.js","sourceRoot":"","sources":["polyfills.ts"],"names":[],"mappings":"AAAA,MAAM,SAAS,GAAG,CAAC,MAAc,EAAE,EAAE,CAAC;IACpC,KAAK;IACL,eAAe;IACf,gBAAgB;IAChB,aAAa;IACb,eAAe;IACf,sBAAsB;IACtB,2BAA2B;IAC3B,yBAAyB;IACzB,0BAA0B;IAC1B,sBAAsB;IACtB,YAAY;IACZ,sBAAsB;IACtB,2BAA2B;IAC3B,6BAA6B;IAC7B,KAAK;IACL,sBAAsB;IACtB,gBAAgB,MAAM,EAAE;IACxB,SAAS;IACT,OAAO;IACP,QAAQ;IACR,gBAAgB;CACjB,CAAC;AAEF,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,MAAc,EAAE,EAAE;IAC/C,MAAM,QAAQ,GAAG,SAAS,CAAC,MAAM,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;IAC7C,6YAA6Y;IAC7Y,OAAO;;;;;;;gEAQL,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,EACnD,kCAAkC,QAAQ,yBAAyB,CAAC;AACtE,CAAC,CAAC"}
@@ -1,7 +1,8 @@
1
- import produce from 'immer';
2
- import gql from 'graphql-tag';
1
+ import { gql } from '@apollo/client';
2
+ import { produce } from 'immer';
3
3
  import { updateBooleanQueryString } from './updateQueryString';
4
4
  import { parse } from 'qs';
5
+ import ActiveFiltersQuery from '@jetshop/core/components/DynamicRoute/ActiveFiltersQuery.gql';
5
6
  // QUERY
6
7
  export const boolFilterValue = function boolFilterValue(parent) {
7
8
  return (searchParams) => {
@@ -27,17 +28,18 @@ export const setBoolFilter = (_, { value, id }, { cache, getCacheKey }) => {
27
28
  id,
28
29
  __typename: 'BooleanFilter'
29
30
  });
31
+ const boolFilterFragment = gql `
32
+ fragment BoolFilterState on BooleanFilter {
33
+ id
34
+ default
35
+ value @client
36
+ }
37
+ `;
30
38
  const boolFilter = cache.readFragment({
31
- fragment: gql `
32
- fragment BoolFilterState on BooleanFilter {
33
- id
34
- default
35
- value @client
36
- }
37
- `,
39
+ fragment: boolFilterFragment,
38
40
  id: fragmentId
39
41
  });
40
- const data = produce(boolFilter, draft => {
42
+ const data = produce(boolFilter, (draft) => {
41
43
  if (draft.default !== null) {
42
44
  draft.value = value === draft.default ? null : value;
43
45
  }
@@ -45,7 +47,8 @@ export const setBoolFilter = (_, { value, id }, { cache, getCacheKey }) => {
45
47
  draft.value = value === false ? null : value;
46
48
  }
47
49
  });
48
- cache.writeData({
50
+ cache.writeFragment({
51
+ fragment: boolFilterFragment,
49
52
  id: fragmentId,
50
53
  data
51
54
  });
@@ -55,31 +58,25 @@ export const setBoolFilter = (_, { value, id }, { cache, getCacheKey }) => {
55
58
  return data;
56
59
  };
57
60
  function updateActiveFilters(cache, data) {
58
- const activeBoolFilterQuery = gql `
59
- query GetActiveBoolFilters {
60
- activeFilters @client {
61
- booleanFilters {
62
- id
63
- value @client
64
- }
65
- }
66
- }
67
- `;
68
- const currentActiveFilters = cache.readQuery({ query: activeBoolFilterQuery });
69
- const { activeFilters } = produce(currentActiveFilters, draft => {
61
+ const currentActiveFilters = cache.readQuery({ query: ActiveFiltersQuery });
62
+ const { activeFilters } = produce(currentActiveFilters, (draft) => {
70
63
  // Clear this filter from active filters
71
64
  if (data.value === null) {
72
- draft.activeFilters.booleanFilters = draft.activeFilters.booleanFilters.filter(boolFilter => boolFilter.id !== data.id);
65
+ draft.activeFilters.booleanFilters =
66
+ draft.activeFilters.booleanFilters.filter((boolFilter) => boolFilter.id !== data.id);
73
67
  }
74
68
  else {
75
69
  draft.activeFilters.booleanFilters.push({
76
70
  id: data.id,
77
- value: data.value,
78
- __typename: 'BooleanFilterInput'
71
+ value: data.value
72
+ // __typename: 'BooleanFilterInput'
79
73
  });
80
74
  }
81
75
  });
82
- cache.writeData({ data: { activeFilters } });
76
+ cache.writeQuery({
77
+ query: ActiveFiltersQuery,
78
+ data: { activeFilters }
79
+ });
83
80
  return activeFilters;
84
81
  }
85
82
  //# sourceMappingURL=boolFilter.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"boolFilter.js","sourceRoot":"","sources":["boolFilter.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"boolFilter.js","sourceRoot":"","sources":["boolFilter.ts"],"names":[],"mappings":"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"}
@@ -45,8 +45,8 @@ function convertFilterQueryToActiveFilter({ initialSearchParams, filter, activeF
45
45
  return (activeFilters['listFilters'] = Object.keys(filter.list).map((id) => {
46
46
  const filter = {
47
47
  id,
48
- values: initialSearchParams.list[id],
49
- __typename: 'ListFilterInput'
48
+ values: initialSearchParams.list[id]
49
+ // __typename: 'ListFilterInput' as const
50
50
  };
51
51
  return filter;
52
52
  }));
@@ -55,8 +55,8 @@ function convertFilterQueryToActiveFilter({ initialSearchParams, filter, activeF
55
55
  const filter = {
56
56
  id,
57
57
  min: +initialSearchParams.range[id][0],
58
- max: +initialSearchParams.range[id][1],
59
- __typename: 'RangeFilterInput'
58
+ max: +initialSearchParams.range[id][1]
59
+ // __typename: 'RangeFilterInput' as const
60
60
  };
61
61
  return filter;
62
62
  }));
@@ -64,8 +64,8 @@ function convertFilterQueryToActiveFilter({ initialSearchParams, filter, activeF
64
64
  return (activeFilters['booleanFilters'] = Object.keys(filter.boolean).map((id) => {
65
65
  const filter = {
66
66
  id,
67
- value: JSON.parse(initialSearchParams.boolean[id]),
68
- __typename: 'BooleanFilterInput'
67
+ value: JSON.parse(initialSearchParams.boolean[id])
68
+ // __typename: 'BooleanFilterInput' as const
69
69
  };
70
70
  return filter;
71
71
  }));
@@ -73,8 +73,8 @@ function convertFilterQueryToActiveFilter({ initialSearchParams, filter, activeF
73
73
  return (activeFilters['multiListFilters'] = Object.keys(filter.multiList).map((id) => {
74
74
  const filter = {
75
75
  id,
76
- values: initialSearchParams.multiList[id],
77
- __typename: 'MultiListFilterInput'
76
+ values: initialSearchParams.multiList[id]
77
+ // __typename: 'MultiListFilterInput' as const
78
78
  };
79
79
  return filter;
80
80
  }));
@@ -1 +1 @@
1
- {"version":3,"file":"filterParams.js","sourceRoot":"","sources":["filterParams.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"filterParams.js","sourceRoot":"","sources":["filterParams.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import gql from 'graphql-tag';
1
+ import { gql } from '@apollo/client';
2
2
  ////////////////////////////////////////////////////////////////////////////////
3
3
  // Mutations
4
4
  /**
@@ -26,7 +26,7 @@ export const clearAllFilters = (_, __, { client, cache }) => {
26
26
  const { activeFilters } = cache.readQuery({
27
27
  query: activeFiltersQuery
28
28
  });
29
- activeFilters.listFilters.forEach(listFilter => {
29
+ activeFilters.listFilters.forEach((listFilter) => {
30
30
  client.mutate({
31
31
  mutation: gql `
32
32
  mutation ClearListFilter($id: String!) {
@@ -38,7 +38,7 @@ export const clearAllFilters = (_, __, { client, cache }) => {
38
38
  }
39
39
  });
40
40
  });
41
- activeFilters.rangeFilters.forEach(rangeFilter => {
41
+ activeFilters.rangeFilters.forEach((rangeFilter) => {
42
42
  client.mutate({
43
43
  mutation: gql `
44
44
  mutation ClearRangeFilter($id: String!) {
@@ -50,7 +50,7 @@ export const clearAllFilters = (_, __, { client, cache }) => {
50
50
  }
51
51
  });
52
52
  });
53
- activeFilters.booleanFilters.forEach(boolFilter => {
53
+ activeFilters.booleanFilters.forEach((boolFilter) => {
54
54
  client.mutate({
55
55
  mutation: gql `
56
56
  mutation ClearBoolFilter($id: String!) {
@@ -62,7 +62,7 @@ export const clearAllFilters = (_, __, { client, cache }) => {
62
62
  }
63
63
  });
64
64
  });
65
- activeFilters.multiListFilters.forEach(multiFilter => {
65
+ activeFilters.multiListFilters.forEach((multiFilter) => {
66
66
  client.mutate({
67
67
  mutation: gql `
68
68
  mutation ClearMultiFilter($id: String!) {
@@ -1 +1 @@
1
- {"version":3,"file":"filters.js","sourceRoot":"","sources":["filters.ts"],"names":[],"mappings":"AAAA,OAAO,GAAG,MAAM,aAAa,CAAC;AAI9B,gFAAgF;AAChF,YAAY;AAEZ;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAa,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;IACpE,MAAM,kBAAkB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;GAiB7B,CAAC;IAEF,MAAM,EAAE,aAAa,EAAE,GAAqC,KAAK,CAAC,SAAS,CAAC;QAC1E,KAAK,EAAE,kBAAkB;KAC1B,CAAC,CAAC;IAEH,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QAC7C,MAAM,CAAC,MAAM,CAAC;YACZ,QAAQ,EAAE,GAAG,CAAA;;;;OAIZ;YACD,SAAS,EAAE;gBACT,EAAE,EAAE,UAAU,CAAC,EAAE;aAClB;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;QAC/C,MAAM,CAAC,MAAM,CAAC;YACZ,QAAQ,EAAE,GAAG,CAAA;;;;OAIZ;YACD,SAAS,EAAE;gBACT,EAAE,EAAE,WAAW,CAAC,EAAE;aACnB;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,cAAc,CAAC,OAAO,CAAC,UAAU,CAAC,EAAE;QAChD,MAAM,CAAC,MAAM,CAAC;YACZ,QAAQ,EAAE,GAAG,CAAA;;;;OAIZ;YACD,SAAS,EAAE;gBACT,EAAE,EAAE,UAAU,CAAC,EAAE;aAClB;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,gBAAgB,CAAC,OAAO,CAAC,WAAW,CAAC,EAAE;QACnD,MAAM,CAAC,MAAM,CAAC;YACZ,QAAQ,EAAE,GAAG,CAAA;;;;OAIZ;YACD,SAAS,EAAE;gBACT,EAAE,EAAE,WAAW,CAAC,EAAE;aACnB;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
1
+ {"version":3,"file":"filters.js","sourceRoot":"","sources":["filters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,GAAG,EAAE,MAAM,gBAAgB,CAAC;AAIrC,gFAAgF;AAChF,YAAY;AAEZ;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAAa,CAAC,CAAC,EAAE,EAAE,EAAE,EAAE,MAAM,EAAE,KAAK,EAAE,EAAE,EAAE;IACpE,MAAM,kBAAkB,GAAG,GAAG,CAAA;;;;;;;;;;;;;;;;;GAiB7B,CAAC;IAEF,MAAM,EAAE,aAAa,EAAE,GAAqC,KAAK,CAAC,SAAS,CAAC;QAC1E,KAAK,EAAE,kBAAkB;KAC1B,CAAC,CAAC;IAEH,aAAa,CAAC,WAAW,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;QAC/C,MAAM,CAAC,MAAM,CAAC;YACZ,QAAQ,EAAE,GAAG,CAAA;;;;OAIZ;YACD,SAAS,EAAE;gBACT,EAAE,EAAE,UAAU,CAAC,EAAE;aAClB;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,YAAY,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;QACjD,MAAM,CAAC,MAAM,CAAC;YACZ,QAAQ,EAAE,GAAG,CAAA;;;;OAIZ;YACD,SAAS,EAAE;gBACT,EAAE,EAAE,WAAW,CAAC,EAAE;aACnB;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC,UAAU,EAAE,EAAE;QAClD,MAAM,CAAC,MAAM,CAAC;YACZ,QAAQ,EAAE,GAAG,CAAA;;;;OAIZ;YACD,SAAS,EAAE;gBACT,EAAE,EAAE,UAAU,CAAC,EAAE;aAClB;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,aAAa,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,WAAW,EAAE,EAAE;QACrD,MAAM,CAAC,MAAM,CAAC;YACZ,QAAQ,EAAE,GAAG,CAAA;;;;OAIZ;YACD,SAAS,EAAE;gBACT,EAAE,EAAE,WAAW,CAAC,EAAE;aACnB;SACF,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC,CAAC"}
@@ -14,14 +14,10 @@ export interface ActiveFilters extends FilterInput {
14
14
  multiListFilters?: ActiveMultiListFilter[];
15
15
  }
16
16
  export interface ActiveListFilter extends ListFilterInput {
17
- __typename: 'ListFilterInput';
18
17
  }
19
18
  export interface ActiveRangeFilter extends RangeFilterInput {
20
- __typename: 'RangeFilterInput';
21
19
  }
22
20
  export interface ActiveBooleanFilter extends BooleanFilterInput {
23
- __typename: 'BooleanFilterInput';
24
21
  }
25
22
  export interface ActiveMultiListFilter extends MultiListFilterInput {
26
- __typename: 'MultiListFilterInput';
27
23
  }
@@ -1,6 +1,7 @@
1
- import gql from 'graphql-tag';
2
- import produce from 'immer';
1
+ import { gql } from '@apollo/client';
2
+ import { produce } from 'immer';
3
3
  import { updateListFilterQueryString } from './updateQueryString';
4
+ import ActiveFiltersQuery from '@jetshop/core/components/DynamicRoute/ActiveFiltersQuery.gql';
4
5
  export const listFilterHasActiveItems = function listFilterHasActiveItems(parent) {
5
6
  return (searchParams) => {
6
7
  // During SSR, search params are passed in when instantiating Apollo Client.
@@ -17,25 +18,28 @@ export const listFilterHasActiveItems = function listFilterHasActiveItems(parent
17
18
  */
18
19
  export const clearListFilter = (_, { id }, { cache, getCacheKey }) => {
19
20
  const fragmentId = getCacheKey({ id, __typename: 'ListFilter' });
20
- const filter = cache.readFragment({
21
- id: fragmentId,
22
- fragment: gql `
23
- fragment listFilterItems on ListFilter {
24
- hasActiveItems @client
21
+ const c = cache;
22
+ const fragment = gql `
23
+ fragment listFilterItems on ListFilter {
24
+ hasActiveItems @client
25
+ id
26
+ items {
25
27
  id
26
- items {
27
- id
28
- isActive @client
29
- }
28
+ isActive @client
30
29
  }
31
- `
30
+ }
31
+ `;
32
+ const filter = c.readFragment({
33
+ id: fragmentId,
34
+ fragment
32
35
  });
33
- const data = produce(filter, draft => {
36
+ const data = produce(filter, (draft) => {
34
37
  draft.hasActiveItems = false;
35
- draft.items.forEach(item => (item.isActive = false));
38
+ draft.items.forEach((item) => (item.isActive = false));
36
39
  });
37
- cache.writeData({
40
+ c.writeFragment({
38
41
  id: fragmentId,
42
+ fragment,
39
43
  data
40
44
  });
41
45
  const activeFilters = updateActiveFilters(cache, id);
@@ -50,23 +54,14 @@ export const clearListFilter = (_, { id }, { cache, getCacheKey }) => {
50
54
  * @returns All active filters
51
55
  */
52
56
  function updateActiveFilters(cache, id) {
53
- const activeListFilterQuery = gql `
54
- query GetActiveListFilters {
55
- activeFilters @client {
56
- listFilters {
57
- id
58
- values
59
- }
60
- }
61
- }
62
- `;
63
57
  const { activeFilters } = cache.readQuery({
64
- query: activeListFilterQuery
58
+ query: ActiveFiltersQuery
65
59
  });
66
- const data = produce(activeFilters, draft => {
67
- draft.listFilters = draft.listFilters.filter(listFilter => listFilter.id !== id);
60
+ const data = produce(activeFilters, (draft) => {
61
+ draft.listFilters = draft.listFilters.filter((listFilter) => listFilter.id !== id);
68
62
  });
69
- cache.writeData({
63
+ cache.writeQuery({
64
+ query: ActiveFiltersQuery,
70
65
  data: { activeFilters: data }
71
66
  });
72
67
  return data;
@@ -1 +1 @@
1
- {"version":3,"file":"listFilter.js","sourceRoot":"","sources":["listFilter.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,MAAM,aAAa,CAAC;AAC9B,OAAO,OAAO,MAAM,OAAO,CAAC;AAI5B,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAElE,MAAM,CAAC,MAAM,wBAAwB,GAAa,SAAS,wBAAwB,CACjF,MAAM;IAEN,OAAO,CAAC,YAAoB,EAAE,EAAE;QAC9B,4EAA4E;QAC5E,iDAAiD;QACjD,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;QAEtE,qEAAqE;QACrE,OAAO,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,gFAAgF;AAChF;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAa,CACvC,CAAC,EACD,EAAE,EAAE,EAAE,EACN,EAAE,KAAK,EAAE,WAAW,EAAE,EACtB,EAAE;IACF,MAAM,UAAU,GAAG,WAAW,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC;IAEjE,MAAM,MAAM,GAAe,KAAK,CAAC,YAAY,CAAC;QAC5C,EAAE,EAAE,UAAU;QACd,QAAQ,EAAE,GAAG,CAAA;;;;;;;;;KASZ;KACF,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,EAAE;QACnC,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC;QAC7B,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC;IACvD,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,SAAS,CAAC;QACd,EAAE,EAAE,UAAU;QACd,IAAI;KACL,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,mBAAmB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACrD,MAAM,CAAC,QAAQ,CAAC,MAAM,IAAI,2BAA2B,CAAC,aAAa,CAAC,CAAC;IAErE,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,gFAAgF;AAChF;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,KAAoB,EAAE,EAAU;IAC3D,MAAM,qBAAqB,GAAG,GAAG,CAAA;;;;;;;;;GAShC,CAAC;IAEF,MAAM,EACJ,aAAa,EACd,GAEG,KAAK,CAAC,SAAS,CAAC;QAClB,KAAK,EAAE,qBAAqB;KAC7B,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,EAAE,KAAK,CAAC,EAAE;QAC1C,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAC1C,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,CACnC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,SAAS,CAAC;QACd,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE;KAC9B,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC"}
1
+ {"version":3,"file":"listFilter.js","sourceRoot":"","sources":["listFilter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAiB,GAAG,EAAE,MAAM,gBAAgB,CAAC;AACpD,OAAO,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC;AAIhC,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAElE,OAAO,kBAAkB,MAAM,8DAA8D,CAAC;AAE9F,MAAM,CAAC,MAAM,wBAAwB,GACnC,SAAS,wBAAwB,CAAC,MAAM;IACtC,OAAO,CAAC,YAAoB,EAAE,EAAE;QAC9B,4EAA4E;QAC5E,iDAAiD;QACjD,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;QAEtE,qEAAqE;QACrE,OAAO,KAAK,aAAL,KAAK,uBAAL,KAAK,CAAE,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,CAAC;IACpC,CAAC,CAAC;AACJ,CAAC,CAAC;AAEJ,gFAAgF;AAChF;;;GAGG;AACH,MAAM,CAAC,MAAM,eAAe,GAAa,CACvC,CAAC,EACD,EAAE,EAAE,EAAE,EACN,EAAE,KAAK,EAAE,WAAW,EAAE,EACtB,EAAE;IACF,MAAM,UAAU,GAAG,WAAW,CAAC,EAAE,EAAE,EAAE,UAAU,EAAE,YAAY,EAAE,CAAC,CAAC;IACjE,MAAM,CAAC,GAAG,KAAsB,CAAC;IAEjC,MAAM,QAAQ,GAAG,GAAG,CAAA;;;;;;;;;GASnB,CAAC;IAEF,MAAM,MAAM,GAAe,CAAC,CAAC,YAAY,CAAC;QACxC,EAAE,EAAE,UAAU;QACd,QAAQ;KACT,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,OAAO,CAAC,MAAM,EAAE,CAAC,KAAK,EAAE,EAAE;QACrC,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC;QAC7B,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,IAAI,CAAC,QAAQ,GAAG,KAAK,CAAC,CAAC,CAAC;IACzD,CAAC,CAAC,CAAC;IAEH,CAAC,CAAC,aAAa,CAAC;QACd,EAAE,EAAE,UAAU;QACd,QAAQ;QACR,IAAI;KACL,CAAC,CAAC;IAEH,MAAM,aAAa,GAAG,mBAAmB,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;IACrD,MAAM,CAAC,QAAQ,CAAC,MAAM,IAAI,2BAA2B,CAAC,aAAa,CAAC,CAAC;IAErE,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,gFAAgF;AAChF;;;;;GAKG;AACH,SAAS,mBAAmB,CAAC,KAAoB,EAAE,EAAU;IAC3D,MAAM,EACJ,aAAa,EACd,GAEG,KAAK,CAAC,SAAS,CAAC;QAClB,KAAK,EAAE,kBAAkB;KAC1B,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC,KAAK,EAAE,EAAE;QAC5C,KAAK,CAAC,WAAW,GAAG,KAAK,CAAC,WAAW,CAAC,MAAM,CAC1C,CAAC,UAAU,EAAE,EAAE,CAAC,UAAU,CAAC,EAAE,KAAK,EAAE,CACrC,CAAC;IACJ,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,UAAU,CAAC;QACf,KAAK,EAAE,kBAAkB;QACzB,IAAI,EAAE,EAAE,aAAa,EAAE,IAAI,EAAE;KAC9B,CAAC,CAAC;IAEH,OAAO,IAAI,CAAC;AACd,CAAC"}
@@ -1,14 +1,16 @@
1
- import gql from 'graphql-tag';
2
- import produce from 'immer';
1
+ import { gql } from '@apollo/client';
2
+ import { produce } from 'immer';
3
3
  import { updateListFilterQueryString } from './updateQueryString';
4
4
  import qs from 'qs';
5
+ import ActiveFiltersQuery from '@jetshop/core/components/DynamicRoute/ActiveFiltersQuery.gql';
5
6
  // QUERY
6
7
  export const isListFilterActive = function isListFilterActive(parent) {
7
8
  return (searchParams) => {
8
9
  var _a, _b, _c;
9
10
  const query = __IN_SERVER__ ? searchParams : document.location.search;
10
11
  // e.g. Armchair:product-type:151
11
- const [, name, category] = parent.id.split(':');
12
+ // We reverse this to allow ':' in the filter value
13
+ const [category, name] = parent.id.split(':').reverse();
12
14
  // Get the list filters from the search params
13
15
  // e.g.
14
16
  // {
@@ -32,35 +34,38 @@ export const isListFilterActive = function isListFilterActive(parent) {
32
34
  ////////////////////////////////////////////////////////////////////////////////
33
35
  // MUTATIONS
34
36
  export const toggleListFilterItem = function toggleListFilterItem(_, { value, parentId, set }, { cache, getCacheKey }) {
37
+ const c = cache;
35
38
  const fragmentId = getCacheKey({
36
39
  id: parentId,
37
40
  __typename: 'ListFilter'
38
41
  });
39
- const listItem = cache.readFragment({
40
- fragment: gql `
41
- fragment listFilter on ListFilter {
42
- hasActiveItems @client
42
+ const fragment = gql `
43
+ fragment listFilter on ListFilter {
44
+ hasActiveItems @client
45
+ id
46
+ items {
43
47
  id
44
- items {
45
- id
46
- value
47
- isActive @client
48
- }
48
+ value
49
+ isActive @client
49
50
  }
50
- `,
51
+ }
52
+ `;
53
+ const listItem = cache.readFragment({
54
+ fragment,
51
55
  id: fragmentId
52
56
  });
53
- const data = produce(listItem, draft => {
57
+ const data = produce(listItem, (draft) => {
54
58
  const { items } = draft;
55
59
  // Find the item matching the value passed in as an arg
56
- const item = items.find(item => item.value === value);
60
+ const item = items.find((item) => item.value === value);
57
61
  // If `set` was passed, set the active state to it. Otherwise, toggle
58
62
  item.isActive = typeof set === 'boolean' ? set : !item.isActive;
59
63
  // If there are any active items, set hasActiveItems to true on the ListFilter
60
- draft.hasActiveItems = items.some(item => item.isActive);
64
+ draft.hasActiveItems = items.some((item) => item.isActive);
61
65
  });
62
- cache.writeData({
66
+ c.writeFragment({
63
67
  id: fragmentId,
68
+ fragment,
64
69
  data
65
70
  });
66
71
  // Write changes to the active filters list
@@ -77,29 +82,19 @@ export const toggleListFilterItem = function toggleListFilterItem(_, { value, pa
77
82
  * @returns All active filters
78
83
  */
79
84
  function updateActiveListFilters(cache, data) {
80
- const activeListFilterQuery = gql `
81
- query GetActiveListFilters {
82
- activeFilters @client {
83
- listFilters {
84
- id
85
- values
86
- }
87
- }
88
- }
89
- `;
90
85
  const currentActiveFilters = cache.readQuery({
91
- query: activeListFilterQuery
86
+ query: ActiveFiltersQuery
92
87
  });
93
- const activeFilters = produce(currentActiveFilters, draft => {
88
+ const activeFilters = produce(currentActiveFilters, (draft) => {
94
89
  // Check if the filter that was just toggled is already in activeFilters
95
- const existingListFilter = draft.activeFilters.listFilters.find(filter => filter.id === data.id);
90
+ const existingListFilter = draft.activeFilters.listFilters.find((filter) => filter.id === data.id);
96
91
  // Get an array of ListFilterItem values
97
92
  const activeListFilters = data.items
98
- .filter(item => item.isActive)
99
- .map(item => item.value);
93
+ .filter((item) => item.isActive)
94
+ .map((item) => item.value);
100
95
  // If there are no active ListFilterItems, remove this ListFilter from ActiveFilters
101
96
  if (activeListFilters.length === 0) {
102
- draft.activeFilters.listFilters = draft.activeFilters.listFilters.filter(listFilter => listFilter.id !== existingListFilter.id);
97
+ draft.activeFilters.listFilters = draft.activeFilters.listFilters.filter((listFilter) => listFilter.id !== existingListFilter.id);
103
98
  return;
104
99
  }
105
100
  if (existingListFilter) {
@@ -110,12 +105,12 @@ function updateActiveListFilters(cache, data) {
110
105
  // Otherwise push it to the list of active filters
111
106
  draft.activeFilters.listFilters.push({
112
107
  id: data.id,
113
- values: activeListFilters,
114
- __typename: 'ListFilterInput'
108
+ values: activeListFilters
115
109
  });
116
110
  }
117
111
  });
118
- cache.writeData({
112
+ cache.writeQuery({
113
+ query: ActiveFiltersQuery,
119
114
  data: activeFilters
120
115
  });
121
116
  return activeFilters;
@@ -1 +1 @@
1
- {"version":3,"file":"listFilterItem.js","sourceRoot":"","sources":["listFilterItem.ts"],"names":[],"mappings":"AACA,OAAO,GAAG,MAAM,aAAa,CAAC;AAC9B,OAAO,OAAO,MAAM,OAAO,CAAC;AAI5B,OAAO,EAAE,2BAA2B,EAAE,MAAM,qBAAqB,CAAC;AAClE,OAAO,EAAE,MAAM,IAAI,CAAC;AAEpB,QAAQ;AACR,MAAM,CAAC,MAAM,kBAAkB,GAAa,SAAS,kBAAkB,CACrE,MAAM;IAEN,OAAO,CAAC,YAAoB,EAAE,EAAE;;QAC9B,MAAM,KAAK,GAAG,aAAa,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ,CAAC,QAAQ,CAAC,MAAM,CAAC;QAEtE,iCAAiC;QACjC,MAAM,CAAC,EAAE,IAAI,EAAE,QAAQ,CAAC,GAAG,MAAM,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAEhD,8CAA8C;QAC9C,OAAO;QACP,IAAI;QACJ,qCAAqC;QACrC,IAAI;QACJ,MAAM,WAAW,GAAG,EAAE,CAAC,KAAK,CAAC,KAAK,EAAE;YAClC,iBAAiB,EAAE,IAAI;YACvB,UAAU,EAAE,GAAG;SAChB,CAAC,CAAC;QAEH,IAAI,CAAC,WAAW;YAAE,OAAO,KAAK,CAAC;QAE/B,qEAAqE;QACrE,MAAM,GAAG,GAAG,QAAQ,CAAC,CAAC,CAAC,GAAG,QAAQ,IAAI,IAAI,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;QAEpD,sDAAsD;QACtD,MAAM,UAAU,GAAG,CAAA,MAAA,WAAW,CAAC,IAAI,0CAAG,GAAG,CAAC,MAAI,MAAA,WAAW,CAAC,SAAS,0CAAG,GAAG,CAAC,CAAA,CAAC;QAE3E,4EAA4E;QAC5E,uEAAuE;QACvE,OAAO,MAAA,UAAU,aAAV,UAAU,uBAAV,UAAU,CAAE,QAAQ,CAAC,MAAM,CAAC,KAAK,CAAC,mCAAI,KAAK,CAAC;IACrD,CAAC,CAAC;AACJ,CAAC,CAAC;AAEF,gFAAgF;AAChF,YAAY;AACZ,MAAM,CAAC,MAAM,oBAAoB,GAAa,SAAS,oBAAoB,CACzE,CAAC,EACD,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAG,EAAE,EACxB,EAAE,KAAK,EAAE,WAAW,EAAE;IAEtB,MAAM,UAAU,GAAG,WAAW,CAAC;QAC7B,EAAE,EAAE,QAAQ;QACZ,UAAU,EAAE,YAAY;KACzB,CAAC,CAAC;IAEH,MAAM,QAAQ,GAAe,KAAK,CAAC,YAAY,CAAC;QAC9C,QAAQ,EAAE,GAAG,CAAA;;;;;;;;;;KAUZ;QACD,EAAE,EAAE,UAAU;KACf,CAAC,CAAC;IAEH,MAAM,IAAI,GAAG,OAAO,CAAC,QAAQ,EAAE,KAAK,CAAC,EAAE;QACrC,MAAM,EAAE,KAAK,EAAE,GAAG,KAAK,CAAC;QAExB,uDAAuD;QACvD,MAAM,IAAI,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,KAAK,KAAK,CAAC,CAAC;QAEtD,qEAAqE;QACrE,IAAI,CAAC,QAAQ,GAAG,OAAO,GAAG,KAAK,SAAS,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,QAAQ,CAAC;QAEhE,8EAA8E;QAC9E,KAAK,CAAC,cAAc,GAAG,KAAK,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAC;IAC3D,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,SAAS,CAAC;QACd,EAAE,EAAE,UAAU;QACd,IAAI;KACL,CAAC,CAAC;IAEH,2CAA2C;IAC3C,MAAM,EAAE,aAAa,EAAE,GAAG,uBAAuB,CAAC,KAAK,EAAE,IAAI,CAAC,CAAC;IAC/D,0BAA0B;IAC1B,2BAA2B,CAAC,aAAa,CAAC,CAAC;IAE3C,OAAO,IAAI,CAAC;AACd,CAAC,CAAC;AAEF,gFAAgF;AAChF;;;;;GAKG;AACH,SAAS,uBAAuB,CAAC,KAAoB,EAAE,IAAgB;IACrE,MAAM,qBAAqB,GAAG,GAAG,CAAA;;;;;;;;;GAShC,CAAC;IACF,MAAM,oBAAoB,GAEtB,KAAK,CAAC,SAAS,CAAC;QAClB,KAAK,EAAE,qBAAqB;KAC7B,CAAC,CAAC;IACH,MAAM,aAAa,GAAG,OAAO,CAAC,oBAAoB,EAAE,KAAK,CAAC,EAAE;QAC1D,wEAAwE;QACxE,MAAM,kBAAkB,GAAG,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAC7D,MAAM,CAAC,EAAE,CAAC,MAAM,CAAC,EAAE,KAAK,IAAI,CAAC,EAAE,CAChC,CAAC;QAEF,wCAAwC;QACxC,MAAM,iBAAiB,GAAG,IAAI,CAAC,KAAK;aACjC,MAAM,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC;aAC7B,GAAG,CAAC,IAAI,CAAC,EAAE,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC;QAE3B,oFAAoF;QACpF,IAAI,iBAAiB,CAAC,MAAM,KAAK,CAAC,EAAE;YAClC,KAAK,CAAC,aAAa,CAAC,WAAW,GAAG,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,MAAM,CACtE,UAAU,CAAC,EAAE,CAAC,UAAU,CAAC,EAAE,KAAK,kBAAkB,CAAC,EAAE,CACtD,CAAC;YACF,OAAO;SACR;QAED,IAAI,kBAAkB,EAAE;YACtB,wDAAwD;YACxD,kBAAkB,CAAC,MAAM,GAAG,iBAAiB,CAAC;SAC/C;aAAM;YACL,kDAAkD;YAClD,KAAK,CAAC,aAAa,CAAC,WAAW,CAAC,IAAI,CAAC;gBACnC,EAAE,EAAE,IAAI,CAAC,EAAE;gBACX,MAAM,EAAE,iBAAiB;gBACzB,UAAU,EAAE,iBAAiB;aAC9B,CAAC,CAAC;SACJ;IACH,CAAC,CAAC,CAAC;IAEH,KAAK,CAAC,SAAS,CAAC;QACd,IAAI,EAAE,aAAa;KACpB,CAAC,CAAC;IAEH,OAAO,aAAa,CAAC;AACvB,CAAC"}
1
+ {"version":3,"file":"listFilterItem.js","sourceRoot":"","sources":["listFilterItem.ts"],"names":[],"mappings":"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"}