workarea 3.4.12

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (571) hide show
  1. checksums.yaml +7 -0
  2. data/.rubocop.yml +326 -0
  3. data/CHANGELOG.md +20501 -0
  4. data/README.md +163 -0
  5. data/docker-compose.yml +27 -0
  6. data/docs/Gemfile +8 -0
  7. data/docs/bin/middleman +29 -0
  8. data/docs/config.rb +87 -0
  9. data/docs/config.ru +7 -0
  10. data/docs/data/articles.yml +157 -0
  11. data/docs/package.json +15 -0
  12. data/docs/source/404.html.erb +13 -0
  13. data/docs/source/articles/access-routes-in-javascript.html.md +33 -0
  14. data/docs/source/articles/add-a-content-area.html.md +169 -0
  15. data/docs/source/articles/add-a-content-block-type.html.md +334 -0
  16. data/docs/source/articles/add-a-report.html.md +202 -0
  17. data/docs/source/articles/add-css-through-the-admin-ui.html.md +30 -0
  18. data/docs/source/articles/add-javascript-through-a-manifest.html.md +367 -0
  19. data/docs/source/articles/add-javascript-through-a-view.html.md +80 -0
  20. data/docs/source/articles/add-javascript-through-the-admin-ui.html.md +30 -0
  21. data/docs/source/articles/add-metrics.html.md +58 -0
  22. data/docs/source/articles/add-or-replace-a-pricing-calculator.html.md +150 -0
  23. data/docs/source/articles/add-remove-or-change-a-mongoid-validation.html.md +147 -0
  24. data/docs/source/articles/add-remove-or-change-a-product-template.html.md +142 -0
  25. data/docs/source/articles/add-remove-sort-and-group-storefront-search-filters.html.md +483 -0
  26. data/docs/source/articles/add-stylesheets-through-a-manifest.html.md +276 -0
  27. data/docs/source/articles/add-system-content.html.md +138 -0
  28. data/docs/source/articles/analytics-overview.html.md +51 -0
  29. data/docs/source/articles/analyze-storefront-search-results.html.md +261 -0
  30. data/docs/source/articles/api-overview.html.md +35 -0
  31. data/docs/source/articles/appending.html.md +506 -0
  32. data/docs/source/articles/application-document.html.md +88 -0
  33. data/docs/source/articles/automated-javascript-testing.html.md +162 -0
  34. data/docs/source/articles/b2b-overview.html.md +64 -0
  35. data/docs/source/articles/browser-and-device-support.html.md +47 -0
  36. data/docs/source/articles/change-product-placeholder-image.html.md +39 -0
  37. data/docs/source/articles/change-storefront-search-results.html.md +283 -0
  38. data/docs/source/articles/change-the-storefront-product-pricing-ui.html.md +348 -0
  39. data/docs/source/articles/change-the-storefront-search-filters-ui.html.md +103 -0
  40. data/docs/source/articles/checkout.html.md +479 -0
  41. data/docs/source/articles/commerce-model.html.md +164 -0
  42. data/docs/source/articles/configuration-for-hosting.html.md +106 -0
  43. data/docs/source/articles/configuration.html.md +406 -0
  44. data/docs/source/articles/configure-a-payment-gateway.html.md +58 -0
  45. data/docs/source/articles/configure-asset-storage.html.md +29 -0
  46. data/docs/source/articles/configure-asset-types.html.md +18 -0
  47. data/docs/source/articles/configure-contact-form-subjects-list.html.md +24 -0
  48. data/docs/source/articles/configure-imageoptim.html.md +23 -0
  49. data/docs/source/articles/configure-locales.html.md +45 -0
  50. data/docs/source/articles/configure-logins-and-authentication.html.md +42 -0
  51. data/docs/source/articles/configure-low-inventory-threshold.html.md +26 -0
  52. data/docs/source/articles/configure-product-image-sizes-and-processing.html.md +28 -0
  53. data/docs/source/articles/content.html.md +554 -0
  54. data/docs/source/articles/contentable.html.md +41 -0
  55. data/docs/source/articles/contribute-code.html.md +69 -0
  56. data/docs/source/articles/contribute-documentation.html.md +60 -0
  57. data/docs/source/articles/create-a-custom-discount.html.md +234 -0
  58. data/docs/source/articles/create-a-new-app.html.md +131 -0
  59. data/docs/source/articles/create-a-plugin.html.md +19 -0
  60. data/docs/source/articles/create-a-style-guide.html.md +71 -0
  61. data/docs/source/articles/create-a-theme.html.md +134 -0
  62. data/docs/source/articles/css-architectural-overview.html.md +89 -0
  63. data/docs/source/articles/customize-a-helper.html.md +91 -0
  64. data/docs/source/articles/decoration.html.md +415 -0
  65. data/docs/source/articles/define-and-configure-inventory-policies.html.md +107 -0
  66. data/docs/source/articles/documentation-style-guide.html.md +48 -0
  67. data/docs/source/articles/documentation.html.md +54 -0
  68. data/docs/source/articles/domain-modeling.html.md +82 -0
  69. data/docs/source/articles/error-pages.html.md.erb +95 -0
  70. data/docs/source/articles/extension-overview.html.md +152 -0
  71. data/docs/source/articles/favicon-support.html.md +112 -0
  72. data/docs/source/articles/feature-spec-helper-stylesheet.html.md +25 -0
  73. data/docs/source/articles/featurejs-and-feature-spec-helper.html.md +20 -0
  74. data/docs/source/articles/help-and-support.html.md +34 -0
  75. data/docs/source/articles/html-fragment-caching.html.md +46 -0
  76. data/docs/source/articles/http-caching.html.md +43 -0
  77. data/docs/source/articles/i18n.html.md +35 -0
  78. data/docs/source/articles/images-flow.html.md +10 -0
  79. data/docs/source/articles/index-storefront-search-documents.html.md +104 -0
  80. data/docs/source/articles/infrastructure.html.md +46 -0
  81. data/docs/source/articles/installing.html.md +61 -0
  82. data/docs/source/articles/integrate-a-payment-gateway.html.md +124 -0
  83. data/docs/source/articles/integrate-a-web-analytics-provider.html.md +35 -0
  84. data/docs/source/articles/integrate-an-inventory-management-system.html.md +88 -0
  85. data/docs/source/articles/integrating-with-other-software.html.md +59 -0
  86. data/docs/source/articles/inventory.html.md +352 -0
  87. data/docs/source/articles/javascript-coding-standards.html.md +30 -0
  88. data/docs/source/articles/javascript-modules.html.md +174 -0
  89. data/docs/source/articles/javascript-overview.html.md +62 -0
  90. data/docs/source/articles/javascript-reference-documentation.html.md +51 -0
  91. data/docs/source/articles/javascript-templates.html.md +52 -0
  92. data/docs/source/articles/low-level-caching.html.md +25 -0
  93. data/docs/source/articles/maintain-a-plugin.html.md +12 -0
  94. data/docs/source/articles/maintenance-policy.html.md +79 -0
  95. data/docs/source/articles/navigable.html.md +51 -0
  96. data/docs/source/articles/navigating-the-code.html.md +149 -0
  97. data/docs/source/articles/navigation.html.md +386 -0
  98. data/docs/source/articles/order-life-cycle.html.md +546 -0
  99. data/docs/source/articles/order-pricing.html.md +389 -0
  100. data/docs/source/articles/orders-and-items.html.md +210 -0
  101. data/docs/source/articles/orders.html.md +66 -0
  102. data/docs/source/articles/overriding.html.md +155 -0
  103. data/docs/source/articles/overview.html.md +43 -0
  104. data/docs/source/articles/plugins-overview.html.md +12 -0
  105. data/docs/source/articles/prerequisites-and-dependencies.html.md +202 -0
  106. data/docs/source/articles/products.html.md.erb +1270 -0
  107. data/docs/source/articles/progressive-web-application-support.html.md +148 -0
  108. data/docs/source/articles/rails-asset-manifests.html.md +33 -0
  109. data/docs/source/articles/rails-asset-view-helpers.html.md +25 -0
  110. data/docs/source/articles/reading-data.html.md +10 -0
  111. data/docs/source/articles/releasable.html.md +37 -0
  112. data/docs/source/articles/report-a-bug.html.md +75 -0
  113. data/docs/source/articles/ruby-coding-standards.html.md +10 -0
  114. data/docs/source/articles/run-sidekiq-in-a-local-environment.html.md +40 -0
  115. data/docs/source/articles/searching.html.md +1005 -0
  116. data/docs/source/articles/security-policy.html.md +42 -0
  117. data/docs/source/articles/seeds.html.md +345 -0
  118. data/docs/source/articles/shipping.html.md +756 -0
  119. data/docs/source/articles/sort-and-exclude-product-options.html.md +47 -0
  120. data/docs/source/articles/storefront-search-features.html.md +568 -0
  121. data/docs/source/articles/storefront-searches.html.md +126 -0
  122. data/docs/source/articles/style-guides.html.md +21 -0
  123. data/docs/source/articles/stylesheet-coding-standards.html.md +24 -0
  124. data/docs/source/articles/stylesheets-overview.html.md +67 -0
  125. data/docs/source/articles/swappable-list-data-structure.html.md +81 -0
  126. data/docs/source/articles/system-emails.html.md +102 -0
  127. data/docs/source/articles/taggable.html.md +8 -0
  128. data/docs/source/articles/test-a-credit-card-transaction.html.md +16 -0
  129. data/docs/source/articles/test-if-a-plugin-is-installed.html.md +34 -0
  130. data/docs/source/articles/testing.html.md +914 -0
  131. data/docs/source/articles/themes-overview.html.md +155 -0
  132. data/docs/source/articles/translate-administrable-content.html.md +14 -0
  133. data/docs/source/articles/translate-javascript-content.html.md +16 -0
  134. data/docs/source/articles/translate-or-customize-message-content.html.md +29 -0
  135. data/docs/source/articles/translate-or-customize-static-content.html.md +30 -0
  136. data/docs/source/articles/use-an-existing-workarea-app.html.md +108 -0
  137. data/docs/source/articles/view-models.html.md +509 -0
  138. data/docs/source/articles/views.html.md +14 -0
  139. data/docs/source/articles/workers.html.md +613 -0
  140. data/docs/source/articles/writing-data.html.md +10 -0
  141. data/docs/source/cli.html.md +163 -0
  142. data/docs/source/favicon.ico +0 -0
  143. data/docs/source/images/3-variants-1-option.png +0 -0
  144. data/docs/source/images/3-variants-3-options.png +0 -0
  145. data/docs/source/images/3-years-primary-image.png +0 -0
  146. data/docs/source/images/404-storefront-error-page.png +0 -0
  147. data/docs/source/images/404-system-content-admin.png +0 -0
  148. data/docs/source/images/404.jpg +0 -0
  149. data/docs/source/images/5-years-primary-image.png +0 -0
  150. data/docs/source/images/activity-dashboard.png +0 -0
  151. data/docs/source/images/activity-for-object.png +0 -0
  152. data/docs/source/images/activity-ui.png +0 -0
  153. data/docs/source/images/adding-captioned-image-block-custom-icon.png +0 -0
  154. data/docs/source/images/adding-captioned-image-block-default-icon.png +0 -0
  155. data/docs/source/images/admin-alerts-ui.png +0 -0
  156. data/docs/source/images/admin-category-range-filters.png +0 -0
  157. data/docs/source/images/admin-for-3-column-hero.png +0 -0
  158. data/docs/source/images/admin-help-index.png +0 -0
  159. data/docs/source/images/admin-help-ui.png +0 -0
  160. data/docs/source/images/admin-javascript.png +0 -0
  161. data/docs/source/images/admin-notification-for-deactivated-discount.png +0 -0
  162. data/docs/source/images/admin-notifications-ui.png +0 -0
  163. data/docs/source/images/admin-product-show-page.png +0 -0
  164. data/docs/source/images/admin-products-index-page.png +0 -0
  165. data/docs/source/images/admin-range-filters.png +0 -0
  166. data/docs/source/images/admin-style-guides-navigation.png +0 -0
  167. data/docs/source/images/after-re-seeding.png +0 -0
  168. data/docs/source/images/after-seeding-localhost-3000.png +0 -0
  169. data/docs/source/images/after-seeding.png +0 -0
  170. data/docs/source/images/arrow.svg +1 -0
  171. data/docs/source/images/arrow_white.svg +1 -0
  172. data/docs/source/images/aws-resource-map.png +0 -0
  173. data/docs/source/images/backordered-until-output-on-inventory-sku-card.png +0 -0
  174. data/docs/source/images/before-seeding-localhost-3000.png +0 -0
  175. data/docs/source/images/before-seeding.png +0 -0
  176. data/docs/source/images/browsing-workarea-versions-on-the-web.png +0 -0
  177. data/docs/source/images/bulk-asset-upload-on-assets-index-page.png +0 -0
  178. data/docs/source/images/bulk-asset-upload-while-editing-content.png +0 -0
  179. data/docs/source/images/bundle-show-workarea-core.png +0 -0
  180. data/docs/source/images/bundle-show-workarea.png +0 -0
  181. data/docs/source/images/calendar-for-backordered-until-field.png +0 -0
  182. data/docs/source/images/captioned-image-block-in-storefront.png +0 -0
  183. data/docs/source/images/captioned-image-content-block-storefront-component-style-guide.png +0 -0
  184. data/docs/source/images/cart-system-content-in-admin.png +0 -0
  185. data/docs/source/images/cart-system-content-in-storefront.png +0 -0
  186. data/docs/source/images/checkout-addresses-guest.png +0 -0
  187. data/docs/source/images/checkout-addresses-user.png +0 -0
  188. data/docs/source/images/checkout-confirmation.png +0 -0
  189. data/docs/source/images/checkout-flow-0.png +0 -0
  190. data/docs/source/images/checkout-flow-1.png +0 -0
  191. data/docs/source/images/checkout-flow-2.png +0 -0
  192. data/docs/source/images/checkout-flow-3.png +0 -0
  193. data/docs/source/images/checkout-flow-4.png +0 -0
  194. data/docs/source/images/checkout-payment-guest.png +0 -0
  195. data/docs/source/images/checkout-payment-user.png +0 -0
  196. data/docs/source/images/checkout-shipping.png +0 -0
  197. data/docs/source/images/color-picker-component-admin-style-guide.png +0 -0
  198. data/docs/source/images/color-picker-component-on-content-editing-screen.png +0 -0
  199. data/docs/source/images/commerce-model-carts-orders.png +0 -0
  200. data/docs/source/images/commerce-model-order-pricing.png +0 -0
  201. data/docs/source/images/commerce-model.png +0 -0
  202. data/docs/source/images/configuring-an-index-pattern-in-kibana.png +0 -0
  203. data/docs/source/images/content-block-presets.png +0 -0
  204. data/docs/source/images/content-search-customization.png +0 -0
  205. data/docs/source/images/country-with-region-data-in-address-form.png +0 -0
  206. data/docs/source/images/country-without-region-data-in-address-form.png +0 -0
  207. data/docs/source/images/create-content-block-preset-ui.png +0 -0
  208. data/docs/source/images/credit-card-icons.png +0 -0
  209. data/docs/source/images/css-added-through-admin.png +0 -0
  210. data/docs/source/images/css-admin-ui.png +0 -0
  211. data/docs/source/images/current-configuration-shown-in-admin-settings.png +0 -0
  212. data/docs/source/images/customer-impersonation-in-admin.png +0 -0
  213. data/docs/source/images/customer-impersonation-in-store-front.png +0 -0
  214. data/docs/source/images/date-filter-same-day.png +0 -0
  215. data/docs/source/images/developer-toolbar-in-store-front.png +0 -0
  216. data/docs/source/images/discounts-sorted-by-most-redeemed.png +0 -0
  217. data/docs/source/images/edit-help-article.png +0 -0
  218. data/docs/source/images/editing-content-for-search-customization.png +0 -0
  219. data/docs/source/images/editing-dynamic-captioned-image-block.png +0 -0
  220. data/docs/source/images/editing-product-fields-in-the-admin.png +0 -0
  221. data/docs/source/images/editing-search-system-content.png +0 -0
  222. data/docs/source/images/editing-static-captioned-image-block-custom-icon.png +0 -0
  223. data/docs/source/images/editing-static-captioned-image-block-default-icon.png +0 -0
  224. data/docs/source/images/external.svg +1 -0
  225. data/docs/source/images/favicon_16.png +0 -0
  226. data/docs/source/images/favicon_180.png +0 -0
  227. data/docs/source/images/favicon_32.png +0 -0
  228. data/docs/source/images/filters-all.png +0 -0
  229. data/docs/source/images/filters-control.png +0 -0
  230. data/docs/source/images/filters-custom.png +0 -0
  231. data/docs/source/images/filters-groups.png +0 -0
  232. data/docs/source/images/filters-material.png +0 -0
  233. data/docs/source/images/filters-omitted.png +0 -0
  234. data/docs/source/images/filters-pinned.png +0 -0
  235. data/docs/source/images/filters-range.png +0 -0
  236. data/docs/source/images/filters-sorted.png +0 -0
  237. data/docs/source/images/filters-wrapping-to-second-line-in-admin.png +0 -0
  238. data/docs/source/images/generic-product-template-images-no-options-selected.png +0 -0
  239. data/docs/source/images/generic-product-template-images-options-selected.png +0 -0
  240. data/docs/source/images/generic-template.png +0 -0
  241. data/docs/source/images/hosting.svg +1 -0
  242. data/docs/source/images/image-group-content-block-in-storefront.png +0 -0
  243. data/docs/source/images/images.svg +1 -0
  244. data/docs/source/images/import-export-screenshot.png +0 -0
  245. data/docs/source/images/invalid-display.png +0 -0
  246. data/docs/source/images/itcss.png +0 -0
  247. data/docs/source/images/kibana-dev-tools-console.png +0 -0
  248. data/docs/source/images/layout-content-admin-with-2-areas.png +0 -0
  249. data/docs/source/images/layout-content-admin-with-3-areas.png +0 -0
  250. data/docs/source/images/link-to-search-system-content.png +0 -0
  251. data/docs/source/images/logo.svg +1 -0
  252. data/docs/source/images/menu.svg +2 -0
  253. data/docs/source/images/mongo-replica-set.svg +1 -0
  254. data/docs/source/images/multi-column-hero-blocks.png +0 -0
  255. data/docs/source/images/option-selects-product-template-images-options-selected.png +0 -0
  256. data/docs/source/images/option-selects-template.png +0 -0
  257. data/docs/source/images/option-thumbnails-template.png +0 -0
  258. data/docs/source/images/order-item-total-price-diagram.png +0 -0
  259. data/docs/source/images/order-pricing-cart-example.png +0 -0
  260. data/docs/source/images/order-pricing-example-adjustments.png +0 -0
  261. data/docs/source/images/order-pricing-example-totals.png +0 -0
  262. data/docs/source/images/order-pricing-placed-order-example.png +0 -0
  263. data/docs/source/images/order-shipping-total-diagram.png +0 -0
  264. data/docs/source/images/order-show-with-multiple-tenders.png +0 -0
  265. data/docs/source/images/order-subtotal-price-diagram.png +0 -0
  266. data/docs/source/images/order-tax-total-diagram.png +0 -0
  267. data/docs/source/images/order-total-price-diagram.png +0 -0
  268. data/docs/source/images/order-total-value-diagram.png +0 -0
  269. data/docs/source/images/orders-dashboard-links.png +0 -0
  270. data/docs/source/images/oval.svg +1 -0
  271. data/docs/source/images/payment-icon-storefront-style-guide.png +0 -0
  272. data/docs/source/images/people-dashboard-links.png +0 -0
  273. data/docs/source/images/price-adjustments-diagram.png +0 -0
  274. data/docs/source/images/price-display-no-options.png +0 -0
  275. data/docs/source/images/price-display-options-selected.png +0 -0
  276. data/docs/source/images/pricing-calculators-diagram.png +0 -0
  277. data/docs/source/images/product-list-content-block-admin.png +0 -0
  278. data/docs/source/images/product-list-content-block-in-store-front.png +0 -0
  279. data/docs/source/images/promo-products-excluded-autocomplete-results-after.png +0 -0
  280. data/docs/source/images/promo-products-excluded-featured-category-results-after.png +0 -0
  281. data/docs/source/images/promo-products-excluded-recommendations-results-after.png +0 -0
  282. data/docs/source/images/promo-products-excluded-search-category-results-after.png +0 -0
  283. data/docs/source/images/promo-products-excluded-search-results-after.png +0 -0
  284. data/docs/source/images/promo-products-included-autocomplete-results-before.png +0 -0
  285. data/docs/source/images/promo-products-included-featured-category-results-before.png +0 -0
  286. data/docs/source/images/promo-products-included-recommendations-results-before.png +0 -0
  287. data/docs/source/images/promo-products-included-search-category-results-before.png +0 -0
  288. data/docs/source/images/promo-products-included-search-results-before.png +0 -0
  289. data/docs/source/images/rails-version-constraint.png +0 -0
  290. data/docs/source/images/re-enable-discount.png +0 -0
  291. data/docs/source/images/reading-data.svg +1 -0
  292. data/docs/source/images/readme-hero.png +0 -0
  293. data/docs/source/images/redesigned-customized-sort-for-search-results.png +0 -0
  294. data/docs/source/images/reviews-summary-above-share-buttons.png +0 -0
  295. data/docs/source/images/reviews-summary-below-product-name.png +0 -0
  296. data/docs/source/images/reviews-summary-below-share-buttons.png +0 -0
  297. data/docs/source/images/reviews-summary-removed.png +0 -0
  298. data/docs/source/images/rsa-fingerprint-for-stash.png +0 -0
  299. data/docs/source/images/ruby-version-constraint.png +0 -0
  300. data/docs/source/images/script-tag-added-through-admin.png +0 -0
  301. data/docs/source/images/search-analysis-admin-alternate-rendering.png +0 -0
  302. data/docs/source/images/search-analysis-admin.png +0 -0
  303. data/docs/source/images/search-quality-report.png +0 -0
  304. data/docs/source/images/search.svg +1 -0
  305. data/docs/source/images/searching-for-cart-system-content-in-admin.png +0 -0
  306. data/docs/source/images/searching-for-layout-system-content-in-admin.png +0 -0
  307. data/docs/source/images/seeded-admin.png +0 -0
  308. data/docs/source/images/seeds-from-plugins.png +0 -0
  309. data/docs/source/images/seo-metadata-automation-ui.png +0 -0
  310. data/docs/source/images/show-password-button.png +0 -0
  311. data/docs/source/images/storefront-autocomplete.png +0 -0
  312. data/docs/source/images/storefront-category-summary-content-block.png +0 -0
  313. data/docs/source/images/storefront-category.png +0 -0
  314. data/docs/source/images/storefront-product-after-overriding.png +0 -0
  315. data/docs/source/images/storefront-product-before-overriding.png +0 -0
  316. data/docs/source/images/storefront-product-browse-page.png +0 -0
  317. data/docs/source/images/storefront-product-recommendations.png +0 -0
  318. data/docs/source/images/storefront-product-show-page.png +0 -0
  319. data/docs/source/images/storefront-requests-and-search-requests.png +0 -0
  320. data/docs/source/images/storefront-search-request-handling.png +0 -0
  321. data/docs/source/images/storefront-search-response-creation.png +0 -0
  322. data/docs/source/images/storefront-search.png +0 -0
  323. data/docs/source/images/storefront-style-guides-navigation.png +0 -0
  324. data/docs/source/images/styles.css +3 -0
  325. data/docs/source/images/tax-categories-ui.png +0 -0
  326. data/docs/source/images/tax-rates-ui.png +0 -0
  327. data/docs/source/images/unpurchasable-product.png +0 -0
  328. data/docs/source/images/url-redirects-filtering.png +0 -0
  329. data/docs/source/images/utility-nav-area-in-admin.png +0 -0
  330. data/docs/source/images/utility-nav-area-in-storefront.png +0 -0
  331. data/docs/source/images/validation-message-in-storefront.png +0 -0
  332. data/docs/source/images/view-model-interface.png +0 -0
  333. data/docs/source/images/viewing-workarea-version-in-source.png +0 -0
  334. data/docs/source/images/workarea.svg +1 -0
  335. data/docs/source/images/worst-performing-searches-on-results-customization-page.png +0 -0
  336. data/docs/source/images/writing-data.svg +1 -0
  337. data/docs/source/index.html.erb +167 -0
  338. data/docs/source/javascripts/jquery.js +2 -0
  339. data/docs/source/javascripts/lunr.js +7 -0
  340. data/docs/source/javascripts/site.js +299 -0
  341. data/docs/source/javascripts/vendor/highlight.pack.js +2 -0
  342. data/docs/source/layouts/article.erb +106 -0
  343. data/docs/source/layouts/bare.erb +46 -0
  344. data/docs/source/layouts/layout.erb +43 -0
  345. data/docs/source/release-notes.html.md +258 -0
  346. data/docs/source/release-notes/workarea-3-0-0.html.md +146 -0
  347. data/docs/source/release-notes/workarea-3-0-1.html.md +161 -0
  348. data/docs/source/release-notes/workarea-3-0-10.html.md +39 -0
  349. data/docs/source/release-notes/workarea-3-0-11.html.md +277 -0
  350. data/docs/source/release-notes/workarea-3-0-12.html.md +14 -0
  351. data/docs/source/release-notes/workarea-3-0-13.html.md +153 -0
  352. data/docs/source/release-notes/workarea-3-0-14.html.md +93 -0
  353. data/docs/source/release-notes/workarea-3-0-15.html.md +107 -0
  354. data/docs/source/release-notes/workarea-3-0-16.html.md +36 -0
  355. data/docs/source/release-notes/workarea-3-0-17.html.md +141 -0
  356. data/docs/source/release-notes/workarea-3-0-18.html.md +123 -0
  357. data/docs/source/release-notes/workarea-3-0-19.html.md +160 -0
  358. data/docs/source/release-notes/workarea-3-0-2.html.md +222 -0
  359. data/docs/source/release-notes/workarea-3-0-20.html.md +95 -0
  360. data/docs/source/release-notes/workarea-3-0-21.html.md +168 -0
  361. data/docs/source/release-notes/workarea-3-0-22.html.md +268 -0
  362. data/docs/source/release-notes/workarea-3-0-23.html.md +173 -0
  363. data/docs/source/release-notes/workarea-3-0-24.html.md +19 -0
  364. data/docs/source/release-notes/workarea-3-0-25.html.md +26 -0
  365. data/docs/source/release-notes/workarea-3-0-26.html.md +199 -0
  366. data/docs/source/release-notes/workarea-3-0-27.html.md +113 -0
  367. data/docs/source/release-notes/workarea-3-0-28.html.md +39 -0
  368. data/docs/source/release-notes/workarea-3-0-29.html.md +73 -0
  369. data/docs/source/release-notes/workarea-3-0-3.html.md +35 -0
  370. data/docs/source/release-notes/workarea-3-0-30.html.md +186 -0
  371. data/docs/source/release-notes/workarea-3-0-31.html.md +125 -0
  372. data/docs/source/release-notes/workarea-3-0-32.html.md +73 -0
  373. data/docs/source/release-notes/workarea-3-0-33.html.md +137 -0
  374. data/docs/source/release-notes/workarea-3-0-34.html.md +203 -0
  375. data/docs/source/release-notes/workarea-3-0-35.html.md +205 -0
  376. data/docs/source/release-notes/workarea-3-0-36.html.md +105 -0
  377. data/docs/source/release-notes/workarea-3-0-37.html.md +144 -0
  378. data/docs/source/release-notes/workarea-3-0-38.html.md +73 -0
  379. data/docs/source/release-notes/workarea-3-0-39.html.md +77 -0
  380. data/docs/source/release-notes/workarea-3-0-4.html.md +14 -0
  381. data/docs/source/release-notes/workarea-3-0-40.html.md +130 -0
  382. data/docs/source/release-notes/workarea-3-0-41.html.md +70 -0
  383. data/docs/source/release-notes/workarea-3-0-42.html.md +52 -0
  384. data/docs/source/release-notes/workarea-3-0-43.html.md +72 -0
  385. data/docs/source/release-notes/workarea-3-0-44.html.md +93 -0
  386. data/docs/source/release-notes/workarea-3-0-45.html.md +61 -0
  387. data/docs/source/release-notes/workarea-3-0-46.html.md +171 -0
  388. data/docs/source/release-notes/workarea-3-0-47.html.md +130 -0
  389. data/docs/source/release-notes/workarea-3-0-48.html.md +160 -0
  390. data/docs/source/release-notes/workarea-3-0-49.html.md +28 -0
  391. data/docs/source/release-notes/workarea-3-0-5.html.md +225 -0
  392. data/docs/source/release-notes/workarea-3-0-50.html.md +74 -0
  393. data/docs/source/release-notes/workarea-3-0-51.html.md +61 -0
  394. data/docs/source/release-notes/workarea-3-0-52.html.md +76 -0
  395. data/docs/source/release-notes/workarea-3-0-53.html.md +126 -0
  396. data/docs/source/release-notes/workarea-3-0-54.html.md +112 -0
  397. data/docs/source/release-notes/workarea-3-0-55.html.md +105 -0
  398. data/docs/source/release-notes/workarea-3-0-56.html.md +56 -0
  399. data/docs/source/release-notes/workarea-3-0-57.html.md +82 -0
  400. data/docs/source/release-notes/workarea-3-0-58.html.md +153 -0
  401. data/docs/source/release-notes/workarea-3-0-59.html.md +78 -0
  402. data/docs/source/release-notes/workarea-3-0-6.html.md +165 -0
  403. data/docs/source/release-notes/workarea-3-0-60.html.md +43 -0
  404. data/docs/source/release-notes/workarea-3-0-61.html.md +46 -0
  405. data/docs/source/release-notes/workarea-3-0-62.html.md +23 -0
  406. data/docs/source/release-notes/workarea-3-0-63.html.md +25 -0
  407. data/docs/source/release-notes/workarea-3-0-64.html.md +25 -0
  408. data/docs/source/release-notes/workarea-3-0-65.html.md +37 -0
  409. data/docs/source/release-notes/workarea-3-0-7.html.md +207 -0
  410. data/docs/source/release-notes/workarea-3-0-8.html.md +337 -0
  411. data/docs/source/release-notes/workarea-3-0-9.html.md +196 -0
  412. data/docs/source/release-notes/workarea-3-1-0.html.md +414 -0
  413. data/docs/source/release-notes/workarea-3-1-1.html.md +139 -0
  414. data/docs/source/release-notes/workarea-3-1-10.html.md +19 -0
  415. data/docs/source/release-notes/workarea-3-1-11.html.md +27 -0
  416. data/docs/source/release-notes/workarea-3-1-12.html.md +216 -0
  417. data/docs/source/release-notes/workarea-3-1-13.html.md +113 -0
  418. data/docs/source/release-notes/workarea-3-1-14.html.md +39 -0
  419. data/docs/source/release-notes/workarea-3-1-15.html.md +107 -0
  420. data/docs/source/release-notes/workarea-3-1-16.html.md +188 -0
  421. data/docs/source/release-notes/workarea-3-1-17.html.md +141 -0
  422. data/docs/source/release-notes/workarea-3-1-18.html.md +73 -0
  423. data/docs/source/release-notes/workarea-3-1-19.html.md +137 -0
  424. data/docs/source/release-notes/workarea-3-1-2.html.md +55 -0
  425. data/docs/source/release-notes/workarea-3-1-20.html.md +203 -0
  426. data/docs/source/release-notes/workarea-3-1-21.html.md +205 -0
  427. data/docs/source/release-notes/workarea-3-1-22.html.md +121 -0
  428. data/docs/source/release-notes/workarea-3-1-23.html.md +144 -0
  429. data/docs/source/release-notes/workarea-3-1-24.html.md +94 -0
  430. data/docs/source/release-notes/workarea-3-1-25.html.md +77 -0
  431. data/docs/source/release-notes/workarea-3-1-26.html.md +130 -0
  432. data/docs/source/release-notes/workarea-3-1-27.html.md +70 -0
  433. data/docs/source/release-notes/workarea-3-1-28.html.md +52 -0
  434. data/docs/source/release-notes/workarea-3-1-29.html.md +44 -0
  435. data/docs/source/release-notes/workarea-3-1-3.html.md +185 -0
  436. data/docs/source/release-notes/workarea-3-1-30.html.md +72 -0
  437. data/docs/source/release-notes/workarea-3-1-31.html.md +93 -0
  438. data/docs/source/release-notes/workarea-3-1-32.html.md +61 -0
  439. data/docs/source/release-notes/workarea-3-1-33.html.md +171 -0
  440. data/docs/source/release-notes/workarea-3-1-34.html.md +130 -0
  441. data/docs/source/release-notes/workarea-3-1-35.html.md +179 -0
  442. data/docs/source/release-notes/workarea-3-1-36.html.md +28 -0
  443. data/docs/source/release-notes/workarea-3-1-37.html.md +74 -0
  444. data/docs/source/release-notes/workarea-3-1-38.html.md +61 -0
  445. data/docs/source/release-notes/workarea-3-1-39.html.md +96 -0
  446. data/docs/source/release-notes/workarea-3-1-4.html.md +148 -0
  447. data/docs/source/release-notes/workarea-3-1-40.html.md +126 -0
  448. data/docs/source/release-notes/workarea-3-1-41.html.md +128 -0
  449. data/docs/source/release-notes/workarea-3-1-42.html.md +105 -0
  450. data/docs/source/release-notes/workarea-3-1-43.html.md +37 -0
  451. data/docs/source/release-notes/workarea-3-1-44.html.md +82 -0
  452. data/docs/source/release-notes/workarea-3-1-45.html.md +153 -0
  453. data/docs/source/release-notes/workarea-3-1-46.html.md +91 -0
  454. data/docs/source/release-notes/workarea-3-1-47.html.md +65 -0
  455. data/docs/source/release-notes/workarea-3-1-48.html.md +46 -0
  456. data/docs/source/release-notes/workarea-3-1-49.html.md +23 -0
  457. data/docs/source/release-notes/workarea-3-1-5.html.md +169 -0
  458. data/docs/source/release-notes/workarea-3-1-50.html.md +42 -0
  459. data/docs/source/release-notes/workarea-3-1-51.html.md +25 -0
  460. data/docs/source/release-notes/workarea-3-1-52.html.md +57 -0
  461. data/docs/source/release-notes/workarea-3-1-6.html.md +117 -0
  462. data/docs/source/release-notes/workarea-3-1-7.html.md +176 -0
  463. data/docs/source/release-notes/workarea-3-1-8.html.md +283 -0
  464. data/docs/source/release-notes/workarea-3-1-9.html.md +212 -0
  465. data/docs/source/release-notes/workarea-3-2-0.html.md +1705 -0
  466. data/docs/source/release-notes/workarea-3-2-1.html.md +216 -0
  467. data/docs/source/release-notes/workarea-3-2-10.html.md +237 -0
  468. data/docs/source/release-notes/workarea-3-2-11.html.md +121 -0
  469. data/docs/source/release-notes/workarea-3-2-12.html.md +145 -0
  470. data/docs/source/release-notes/workarea-3-2-13.html.md +138 -0
  471. data/docs/source/release-notes/workarea-3-2-14.html.md +77 -0
  472. data/docs/source/release-notes/workarea-3-2-15.html.md +130 -0
  473. data/docs/source/release-notes/workarea-3-2-16.html.md +111 -0
  474. data/docs/source/release-notes/workarea-3-2-17.html.md +52 -0
  475. data/docs/source/release-notes/workarea-3-2-18.html.md +44 -0
  476. data/docs/source/release-notes/workarea-3-2-19.html.md +72 -0
  477. data/docs/source/release-notes/workarea-3-2-2.html.md +145 -0
  478. data/docs/source/release-notes/workarea-3-2-20.html.md +93 -0
  479. data/docs/source/release-notes/workarea-3-2-21.html.md +61 -0
  480. data/docs/source/release-notes/workarea-3-2-22.html.md +154 -0
  481. data/docs/source/release-notes/workarea-3-2-23.html.md +130 -0
  482. data/docs/source/release-notes/workarea-3-2-24.html.md +200 -0
  483. data/docs/source/release-notes/workarea-3-2-25.html.md +28 -0
  484. data/docs/source/release-notes/workarea-3-2-26.html.md +94 -0
  485. data/docs/source/release-notes/workarea-3-2-27.html.md +61 -0
  486. data/docs/source/release-notes/workarea-3-2-28.html.md +96 -0
  487. data/docs/source/release-notes/workarea-3-2-29.html.md +126 -0
  488. data/docs/source/release-notes/workarea-3-2-30.html.md +112 -0
  489. data/docs/source/release-notes/workarea-3-2-31.html.md +105 -0
  490. data/docs/source/release-notes/workarea-3-2-32.html.md +56 -0
  491. data/docs/source/release-notes/workarea-3-2-33.html.md +82 -0
  492. data/docs/source/release-notes/workarea-3-2-34.html.md +153 -0
  493. data/docs/source/release-notes/workarea-3-2-35.html.md +91 -0
  494. data/docs/source/release-notes/workarea-3-2-36.html.md +118 -0
  495. data/docs/source/release-notes/workarea-3-2-37.html.md +46 -0
  496. data/docs/source/release-notes/workarea-3-2-38.html.md +23 -0
  497. data/docs/source/release-notes/workarea-3-2-39.html.md +42 -0
  498. data/docs/source/release-notes/workarea-3-2-4.html.md +109 -0
  499. data/docs/source/release-notes/workarea-3-2-40.html.md +25 -0
  500. data/docs/source/release-notes/workarea-3-2-41.html.md +90 -0
  501. data/docs/source/release-notes/workarea-3-2-5.html.md +186 -0
  502. data/docs/source/release-notes/workarea-3-2-6.html.md +173 -0
  503. data/docs/source/release-notes/workarea-3-2-7.html.md +89 -0
  504. data/docs/source/release-notes/workarea-3-2-8.html.md +137 -0
  505. data/docs/source/release-notes/workarea-3-2-9.html.md +219 -0
  506. data/docs/source/release-notes/workarea-3-3-0.html.md +1272 -0
  507. data/docs/source/release-notes/workarea-3-3-1.html.md +324 -0
  508. data/docs/source/release-notes/workarea-3-3-10.html.md +69 -0
  509. data/docs/source/release-notes/workarea-3-3-11.html.md +72 -0
  510. data/docs/source/release-notes/workarea-3-3-12.html.md +136 -0
  511. data/docs/source/release-notes/workarea-3-3-13.html.md +61 -0
  512. data/docs/source/release-notes/workarea-3-3-14.html.md +196 -0
  513. data/docs/source/release-notes/workarea-3-3-15.html.md +167 -0
  514. data/docs/source/release-notes/workarea-3-3-16.html.md +234 -0
  515. data/docs/source/release-notes/workarea-3-3-17.html.md +82 -0
  516. data/docs/source/release-notes/workarea-3-3-18.html.md +165 -0
  517. data/docs/source/release-notes/workarea-3-3-19.html.md +106 -0
  518. data/docs/source/release-notes/workarea-3-3-2.html.md +72 -0
  519. data/docs/source/release-notes/workarea-3-3-20.html.md +116 -0
  520. data/docs/source/release-notes/workarea-3-3-21.html.md +228 -0
  521. data/docs/source/release-notes/workarea-3-3-22.html.md +125 -0
  522. data/docs/source/release-notes/workarea-3-3-23.html.md +154 -0
  523. data/docs/source/release-notes/workarea-3-3-24.html.md +70 -0
  524. data/docs/source/release-notes/workarea-3-3-25.html.md +114 -0
  525. data/docs/source/release-notes/workarea-3-3-26.html.md +260 -0
  526. data/docs/source/release-notes/workarea-3-3-27.html.md +138 -0
  527. data/docs/source/release-notes/workarea-3-3-28.html.md +147 -0
  528. data/docs/source/release-notes/workarea-3-3-29.html.md +63 -0
  529. data/docs/source/release-notes/workarea-3-3-3.html.md +153 -0
  530. data/docs/source/release-notes/workarea-3-3-30.html.md +102 -0
  531. data/docs/source/release-notes/workarea-3-3-31.html.md +57 -0
  532. data/docs/source/release-notes/workarea-3-3-32.html.md +44 -0
  533. data/docs/source/release-notes/workarea-3-3-33.html.md +114 -0
  534. data/docs/source/release-notes/workarea-3-3-4.html.md +332 -0
  535. data/docs/source/release-notes/workarea-3-3-5.html.md +242 -0
  536. data/docs/source/release-notes/workarea-3-3-6.html.md +100 -0
  537. data/docs/source/release-notes/workarea-3-3-7.html.md +148 -0
  538. data/docs/source/release-notes/workarea-3-3-8.html.md +163 -0
  539. data/docs/source/release-notes/workarea-3-3-9.html.md +93 -0
  540. data/docs/source/release-notes/workarea-3-4-0.html.md +580 -0
  541. data/docs/source/release-notes/workarea-3-4-1.html.md +150 -0
  542. data/docs/source/release-notes/workarea-3-4-10.html.md +72 -0
  543. data/docs/source/release-notes/workarea-3-4-11.html.md +60 -0
  544. data/docs/source/release-notes/workarea-3-4-12.html.md +155 -0
  545. data/docs/source/release-notes/workarea-3-4-2.html.md +188 -0
  546. data/docs/source/release-notes/workarea-3-4-3.html.md +136 -0
  547. data/docs/source/release-notes/workarea-3-4-4.html.md +114 -0
  548. data/docs/source/release-notes/workarea-3-4-5.html.md +275 -0
  549. data/docs/source/release-notes/workarea-3-4-6.html.md +169 -0
  550. data/docs/source/release-notes/workarea-3-4-7.html.md +162 -0
  551. data/docs/source/release-notes/workarea-3-4-8.html.md +95 -0
  552. data/docs/source/release-notes/workarea-3-4-9.html.md +135 -0
  553. data/docs/source/search.html.erb +34 -0
  554. data/docs/source/shared/_header.erb +61 -0
  555. data/docs/source/shared/_svgs.erb +17 -0
  556. data/docs/source/style_guide/index.html.erb +382 -0
  557. data/docs/source/stylesheets/_base.scss +125 -0
  558. data/docs/source/stylesheets/_components.scss +669 -0
  559. data/docs/source/stylesheets/_helpers.scss +10 -0
  560. data/docs/source/stylesheets/_opinions.scss +42 -0
  561. data/docs/source/stylesheets/_settings.scss +56 -0
  562. data/docs/source/stylesheets/_typography.scss +119 -0
  563. data/docs/source/stylesheets/site.css.scss +14 -0
  564. data/docs/source/stylesheets/vendor/_avalanche.scss +328 -0
  565. data/docs/source/stylesheets/vendor/_normalize.scss +341 -0
  566. data/docs/source/stylesheets/vendor/highlight/_tomorrow_night_blue.scss +75 -0
  567. data/docs/source/upgrade-guides.html.md +18 -0
  568. data/docs/source/upgrade-guides/workarea-3-4-0.html.md +152 -0
  569. data/docs/workarea_renderer.rb +8 -0
  570. data/docs/yarn.lock +2522 -0
  571. metadata +669 -0
@@ -0,0 +1,136 @@
1
+ ---
2
+ title: Workarea 3.4.3
3
+ excerpt: Patch release notes for Workarea 3.4.3.
4
+ ---
5
+
6
+ # Workarea 3.4.3
7
+
8
+ Patch release notes for Workarea 3.4.3.
9
+
10
+ ## Create Configuration for Insight Model Classes
11
+
12
+ Move `Admin::InsightViewModel::MODELS` to a configuration value called
13
+ `config.insights_model_classes` so it can be extended, and new insights
14
+ can be added for display on the dashboard.
15
+
16
+ ### Issues
17
+
18
+ - [ECOMMERCE-6834](https://jira.tools.weblinc.com/browse/ECOMMERCE-6834)
19
+
20
+ ### Pull Requests
21
+
22
+ - [3962](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3962/overview)
23
+
24
+ ## Update App Template for Upgradability and Rails 5.2
25
+
26
+ Some errors were observed when using the `rails app:template` task with
27
+ the built-in app template for upgrade purposes, since there are a
28
+ significant amount of changes in the app template for v3.4 (like
29
+ auto-configuration). Workarea has replaced the usage of `@app_name` with
30
+ the `#app_name` method to ensure that it's set before attempting to
31
+ perform text processing operations, and the template will no longer
32
+ write to `Gemfile` if it doesn't have to. Additionally, the `Gemfile`
33
+ has been cleaned up by removing extra whitespace.
34
+
35
+ ### Issues
36
+
37
+ - [ECOMMERCE-6821](https://jira.tools.weblinc.com/browse/ECOMMERCE-6821)
38
+ - [ECOMMERCE-6830](https://jira.tools.weblinc.com/browse/ECOMMERCE-6830)
39
+
40
+ ### Pull Requests
41
+
42
+ - [3959](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3959/overview)
43
+ - [3961](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3961/overview)
44
+
45
+ ## Prevent Logging Controller Parameters in Logstash
46
+
47
+ Logstasher was previously configured to send controller params in
48
+ Logstash logs, but this caused errors in Elasticsearch as each new param
49
+ became a new mapping as it was indexed. This very quickly exhausted the
50
+ amount of mappings allowed within the Elasticsearch index. Workarea no
51
+ longer enables this field out of the box, so that logstash will continue
52
+ to work as normal.
53
+
54
+
55
+ ### Issues
56
+
57
+ - [ECOMMERCE-6829](https://jira.tools.weblinc.com/browse/ECOMMERCE-6829)
58
+
59
+ ### Pull Requests
60
+
61
+ - [3960](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3960/overview)
62
+
63
+ ## Fix Occasionally Failing Test Around Marking Discounts Redeemed
64
+
65
+ Specify a sort so that MongoDB doesn't use its own default sort, causing
66
+ entries in the collection to appear out-of-order and the test to fail
67
+ inconsistently.
68
+
69
+ ### Issues
70
+
71
+ - [ECOMMERCE-6818](https://jira.tools.weblinc.com/browse/ECOMMERCE-6818)
72
+
73
+ ### Pull Requests
74
+
75
+ - [3953](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3953/overview)
76
+
77
+ ## Fix Slow Export Samples for Large Collections
78
+
79
+ The `skip` that is done to get random samples can be quite slow if
80
+ MongoDB needs to page. Instead, Workarea now grabs the first N entries
81
+ in the collection, since they don't really need to be random.
82
+
83
+ ### Issues
84
+
85
+ - [ECOMMERCE-6813](https://jira.tools.weblinc.com/browse/ECOMMERCE-6813)
86
+
87
+ ### Pull Requests
88
+
89
+ - [3943](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3943/overview)
90
+
91
+ ## Remove "@" in Activity Time
92
+
93
+ Remove this character preceding the time of timeline activity so that it
94
+ reads better.
95
+
96
+ ### Issues
97
+
98
+ - [ECOMMERCE-6817](https://jira.tools.weblinc.com/browse/ECOMMERCE-6817)
99
+
100
+ ### Pull Requests
101
+
102
+ - [3952](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3952/overview)
103
+
104
+ ## Inherit from ApplicationController Consistently
105
+
106
+ All admin controllers now inherit from `Admin::ApplicationController`.
107
+ Some autoloading edge cases caused this indented module reference to not
108
+ get picked up properly.
109
+
110
+ ### Issues
111
+
112
+ - [ECOMMERCE-6816](https://jira.tools.weblinc.com/browse/ECOMMERCE-6816)
113
+
114
+ ### Pull Requests
115
+
116
+ - [3947](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3947/overview)
117
+
118
+ ## Fix Bulk Edit/Delete Entries Not Appearing in Trash
119
+
120
+ A carry-over from the v2.x days, `Mongoid::AuditLog` entries were not
121
+ recorded when performing within background jobs. Since bulk actions
122
+ occur in the background, entries for documents edited/deleted in this
123
+ manner were not appearing in the trash, and therefore not possible to
124
+ restore without developer intervention. This constraint is now removed,
125
+ and items deleted/edited within a bulk action will now appear as
126
+ individual items in the trash, and attributed to the user who performed
127
+ the bulk action.
128
+
129
+ ### Issues
130
+
131
+ - [ECOMMERCE-6812](https://jira.tools.weblinc.com/browse/ECOMMERCE-6812)
132
+
133
+ ### Pull Requests
134
+
135
+ - [3939](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3939/overview)
136
+
@@ -0,0 +1,114 @@
1
+ ---
2
+ title: Workarea 3.4.4
3
+ excerpt: Patch release notes for Workarea 3.4.4.
4
+ ---
5
+
6
+ # Workarea 3.4.4
7
+
8
+ Patch release notes for Workarea 3.4.4.
9
+
10
+ ## Display Active State In Mobile Navigation
11
+
12
+ Apply the `--selected` modifier to the `mobile-nav__link` element in
13
+ mobile. This was previously not being applied if the link had been
14
+ selected, and thus the active state was not displaying on mobile.
15
+
16
+ ### Issues
17
+
18
+ - [ECOMMERCE-5691](https://jira.tools.weblinc.com/browse/ECOMMERCE-5691)
19
+
20
+ ### Pull Requests
21
+
22
+ - [3965](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3965/overview)
23
+
24
+ ## Fix Redemption of Redundant Promo Codes
25
+
26
+ When a user adds multiple promo codes that belong to the same discount
27
+ to an order, only mark the first one as being used so other users can
28
+ take advantage of the other promo codes. Previously, all promo codes
29
+ were being marked as redeemed in the backend, preventing their use by
30
+ others.
31
+
32
+ ### Issues
33
+
34
+ - [ECOMMERCE-5745](https://jira.tools.weblinc.com/browse/ECOMMERCE-5745)
35
+
36
+ ### Pull Requests
37
+
38
+ - [3925](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3925/overview)
39
+
40
+ ## Run Dependent Services in Docker Containers
41
+
42
+ Due to the complicated nature of Dockerized Workarea environments,
43
+ especially surrounding system tests, Workarea now provides an
44
+ alternative solution to starting the correct background services (at the
45
+ correct versions) that are necessary for Workarea apps to function, such
46
+ as Elasticsearch, MongoDB, and Redis. Two Rake tasks,
47
+ `workarea:services:up` and `workarea:services:down`, will run [Docker
48
+ Compose](https://docs.docker.com/compose/) with a configuration file
49
+ that is located within the Workarea gem itself. This configuration
50
+ uses the correct versions of each dependent service for the
51
+ version of Workarea you're using. Workarea v3.4 applications, for
52
+ example, will use MongoDB 4.x, while Workarea v3.3 and below use MongoDB
53
+ 3.x.
54
+
55
+ When you start working on a Workarea application, run the following
56
+ command to start your dependent services:
57
+
58
+ bin/rails workarea:services:up
59
+
60
+ And when you're done working, run the following command to stop them:
61
+
62
+ bin/rails workarea:services:down
63
+
64
+ Doing this between each project keeps the databases in separate
65
+ containers and volumes, the latter of which are persisted even when
66
+ containers are down, so you won't lose your development data. (Just
67
+ remember to delete your volumes when upgrading from v3.3 to v3.4!) The
68
+ Docker Compose project name will be the name of the application you are
69
+ currently working on. Since this matches the root directory of the
70
+ application, you can run `docker-compose` commands just like you
71
+ normally would in a Dockerized application, except you no longer have to
72
+ jump through the extra hoops of working in containers when developing on
73
+ your application.
74
+
75
+ ### Issues
76
+
77
+ - [ECOMMERCE-6789](https://jira.tools.weblinc.com/browse/ECOMMERCE-6789)
78
+
79
+ ### Pull Requests
80
+
81
+ - [3970](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3970/overview)
82
+
83
+ ## Update Checkbox Styles in Admin to avoid test failure
84
+
85
+ To allow the most recent version of Chrome to click on checkboxes in the
86
+ `Admin::BulkActionsSystemTest`, they have been styled using [the
87
+ "checkbox hack"](https://css-tricks.com/the-checkbox-hack/). This should
88
+ help with build errors on CI servers as well as locally in system tests.
89
+
90
+ ### Issues
91
+
92
+ - [ECOMMERCE-6866](https://jira.tools.weblinc.com/browse/ECOMMERCE-6866)
93
+
94
+ ### Pull Requests
95
+
96
+ - [3979](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3979/overview)
97
+
98
+ ## Fix Running System Tests On Chrome 74+
99
+
100
+ Chrome's latest major release caused timeout issues when running with
101
+ the bundled version of ChromeDriver. Since [ChromeDriver::Helper has been abandoned](https://github.com/flavorjones/chromedriver-helper/issues/83),
102
+ we've replaced the gem with [Webdrivers](https://github.com/titusfortner/webdrivers), a more generic Selenium
103
+ webdriver helper that downloads the correct ChromeDriver packages when
104
+ needed for system tests. This also required a version bump for Capybara
105
+ in order to sufficiently use the new Selenium WebDrivers.
106
+
107
+ ### Issues
108
+
109
+ - [ECOMMERCE-6867](https://jira.tools.weblinc.com/browse/ECOMMERCE-6867)
110
+
111
+ ### Pull Requests
112
+
113
+ - [3980](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3980/overview)
114
+
@@ -0,0 +1,275 @@
1
+ ---
2
+ title: Workarea 3.4.5
3
+ excerpt: Patch release notes for Workarea 3.4.5.
4
+ ---
5
+
6
+ # Workarea 3.4.5
7
+
8
+ Patch release notes for Workarea 3.4.5.
9
+
10
+ ## Fix Error When Viewing Release Show Page in Admin
11
+
12
+ When viewing a Release in admin, an error can occur if a `Releasable`
13
+ model becomes nil between the time the release is being viewed and when
14
+ it was originally created/planned. Workarea now ensures the release can
15
+ always be viewed in the admin by not rendering any changesets that can't
16
+ be drawn back to a releasable model currently in the database.
17
+
18
+ ### Issues
19
+
20
+ - [ECOMMERCE-6904](https://jira.tools.weblinc.com/browse/ECOMMERCE-6904)
21
+
22
+ ### Pull Requests
23
+
24
+ - [4015](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/4015/overview)
25
+
26
+ ## Disable Slug Input On Unreleased Pages
27
+
28
+ Set `disabled: true` on slug inputs when making changes within a
29
+ release, and add help text to explain why it cannot be edited. Since slugs
30
+ cannot be changed within a release, having this as a field a user can
31
+ type into created a confusing experience.
32
+
33
+ ### Issues
34
+
35
+ - [ECOMMERCE-6805](https://jira.tools.weblinc.com/browse/ECOMMERCE-6805)
36
+
37
+ ### Pull Requests
38
+
39
+ - [3964](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3964/overview)
40
+
41
+ ## Add `workarea:services:clean` for Removing Services Data
42
+
43
+ This task runs `docker-compose down -v`, which will remove volumes
44
+ associated with the application. It's useful when transitioning between
45
+ v3.3 and v3.4, so the Mongo data doesn't become corrupted, but should
46
+ only be used if you're OK with your data getting deleted.
47
+
48
+ Additionally, an environment variable called `$COMPOSE_ARGUMENTS` has been introduced to provide a means of passing command-line arguments to the `docker-compose` commands that are run using these tasks. For example:
49
+
50
+ COMPOSE_ARGUMENTS="--remove-orphans" rails workarea:services:up
51
+
52
+ ### Issues
53
+
54
+ - [ECOMMERCE-6874](https://jira.tools.weblinc.com/browse/ECOMMERCE-6874)
55
+
56
+ ### Pull Requests
57
+
58
+ - [3998](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3998/overview)
59
+
60
+ ## Unable To Bulk Delete Shipping Services
61
+
62
+ When the `Workarea.config.bulk_action_deletion_threshold` is surpassed
63
+ in a query for shipping services to be bulk-deleted, the page that is
64
+ being redirected to expects the models being deleted to have
65
+ **_summary.html.haml** partials co-located in their respective views
66
+ directory for the controller. This isn't the case for shipping services,
67
+ which (along with other models we may wish to bulk-delete) doesn't have
68
+ much information other than the name of the model. For these items,
69
+ Workarea introduces a generic **workarea/admin/shared/summary** which links
70
+ to the model and provides its name (or BSON ID if no `#name` method is defined)
71
+ as well as its type in the auxiliary summary info.
72
+
73
+ ### Issues
74
+
75
+ - [ECOMMERCE-6811](https://jira.tools.weblinc.com/browse/ECOMMERCE-6811)
76
+
77
+ ### Pull Requests
78
+
79
+ - [3999](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3999/overview)
80
+
81
+ ## Use Batches For Admin Search Indexing Rake Task
82
+
83
+ When attempting to bulk-index a large collection without batching,
84
+ MongoDB can throw a **sort uses too much memory** error and cause the
85
+ bulk index to fail. This mainly happens in admin, which is a much larger
86
+ index than storefront. To resolve this, Workarea has introduced a new method,
87
+ `Mongoid::Criteria#each_slice_of` (which is similar to `#each_by` in its
88
+ purpose of making iterations over large MongoDB collections a bit easier
89
+ for the database to handle), and uses it in the
90
+ `workarea:search_index:admin` Rake task.
91
+
92
+ ### Issues
93
+
94
+ - [ECOMMERCE-6875](https://jira.tools.weblinc.com/browse/ECOMMERCE-6875)
95
+
96
+ ### Pull Requests
97
+
98
+ - [4002](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/4002/overview)
99
+
100
+ ## Fix S3 Misconfiguration When Using IAM Profiles For Authentication
101
+
102
+ When updating CORS for direct uploads, the auto-configuration for S3 can
103
+ potentially set `use_iam_profile: true` _and_ an AWS access/secret
104
+ keypair. To prevent this, make sure that either the keypair or
105
+ `use_iam_profile` is configured, but not both.
106
+
107
+ ### Issues
108
+
109
+ - [ECOMMERCE-6905](https://jira.tools.weblinc.com/browse/ECOMMERCE-6905)
110
+
111
+ ### Pull Requests
112
+
113
+ - [4019](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/4019/overview)
114
+
115
+ ## Validate Product Rule Lucene Query Syntax
116
+
117
+ When invalid Lucene queries are saved into product rules, an error would
118
+ occur when attempting to browse the category because the query was never
119
+ checked for valid syntax. As part of the validation process for product
120
+ rules, run a `Search::CategoryBrowse` query for the rule being created
121
+ or edited, and add an error to the model if Elasticsearch responds with
122
+ a server error (5xx) HTTP status. This prevents the rule from being saved
123
+ on the product list in the first place.
124
+
125
+
126
+ ### Issues
127
+
128
+ - [ECOMMERCE-6849](https://jira.tools.weblinc.com/browse/ECOMMERCE-6849)
129
+
130
+ ### Pull Requests
131
+
132
+ - [3977](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3977/overview)
133
+
134
+ ## Add MongoDB Indexes For Default Scopes Without Corresponding Indexes
135
+
136
+ Since `noTableScan` enforces that all queries to MongoDB need to have
137
+ corresponding indexes, it was previously possible to receive an error
138
+ when attempting query something seemingly simple, such as
139
+ `User::AdminBookmark.all`. Add indexes for any models who have a
140
+ `default_scope`, but no corresponding index for the query that scope
141
+ generates. This may not always be caught by the base test suite, but
142
+ can affect things like console usage, rake tasks, decorations, etc.
143
+
144
+ ### Issues
145
+
146
+ - [ECOMMERCE-6876](https://jira.tools.weblinc.com/browse/ECOMMERCE-6876)
147
+
148
+ ### Pull Requests
149
+
150
+ - [4003](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/4003/overview)
151
+
152
+ ## Disable Permissions Management When User is a Super-Admin
153
+
154
+ When a user has super-admin privileges in admin, it was previously
155
+ possible to attempt removing admin access as well as access to areas of
156
+ the admin, but these values would just get re-set after the form
157
+ completed anyway. Workarea now sets all checkboxes on the permissions
158
+ page to `disabled`, and renders a warning message above the form stating
159
+ that you cannot change permissions for users who are super-admins. It
160
+ also instructs the admin how to disable super-admin for a user in order
161
+ for this page to function normally.
162
+
163
+
164
+ ### Issues
165
+
166
+ - [ECOMMERCE-6902](https://jira.tools.weblinc.com/browse/ECOMMERCE-6902)
167
+
168
+ ### Pull Requests
169
+
170
+ - [4011](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/4011/overview)
171
+
172
+ ## Prevent VCR from Blocking the Webdrivers Download of Chrome
173
+
174
+ When web drivers has to download and install Chrome, it's being blocked
175
+ by VCR. This is [somewhat of a common
176
+ problem](https://github.com/titusfortner/webdrivers/wiki/Using-with-VCR-or-WebMock)
177
+ with the Webdrivers gem, so Workarea has allowed the Chrome hosts
178
+ described in that Wiki article to the project automatically so you won't
179
+ have to.
180
+
181
+ ### Issues
182
+
183
+ - [ECOMMERCE-6906](https://jira.tools.weblinc.com/browse/ECOMMERCE-6906)
184
+
185
+ ### Pull Requests
186
+
187
+ - [4020](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/4020/overview)
188
+
189
+ ## Fix Intermittently Failing Product Rules Test
190
+
191
+ Create the products in `Admin::ProductRulesSystemTest` one day in
192
+ advance in order to avoid issues with the products being created the
193
+ moment before the day changes. This causes the datepicker assertions to
194
+ fail some of the time. Using `#travel_to`, Workarea simulates the server
195
+ time changing but keeps the client (browser) time consistent, so the
196
+ datepicker will always be initialized to use the current time that the
197
+ test is run at.
198
+
199
+ ### Issues
200
+
201
+ - [ECOMMERCE-6872](https://jira.tools.weblinc.com/browse/ECOMMERCE-6872)
202
+
203
+ ### Pull Requests
204
+
205
+ - [3995](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3995/overview)
206
+
207
+ ## Fix Issue With Sale Price Creation
208
+
209
+ When adding/editing prices for a SKU in the admin interface, the
210
+ messaging underneath the field says `Sale Price (defaults to regular)`,
211
+ but when left blank the Sale Price will be saved as **$0.00**. This is
212
+ due to the use of a numeric field type on the `<input>` tag. To resolve
213
+ this, Workarea now converts this value to `nil` in the controller, so
214
+ that the price will be added into the backend with an empty value for
215
+ the `:sale` field. When the sale field is blank, the pricing system will
216
+ default to using the regular price in all scenarios.
217
+
218
+ Solved by **Jeremie Ges**. Thanks Jeremie!
219
+
220
+ ### Issues
221
+
222
+ - [ECOMMERCE-6833](https://jira.tools.weblinc.com/browse/ECOMMERCE-6833)
223
+
224
+ ### Pull Requests
225
+
226
+ - [4005](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/4005/overview)
227
+
228
+ ## Fix Sidekiq Only Using Localhost Redis
229
+
230
+ Workarea now applies its own automatic Redis configuration before
231
+ looking up values for concurrency to apply to Sidekiq, otherwise Sidekiq will
232
+ always default to using the Redis server on `redis://localhost:6379`.
233
+ This fixes the inability to configure Sidekiq and its Redis client to
234
+ use a server on an alternate host.
235
+
236
+ ### Issues
237
+
238
+ - [ECOMMERCE-6907](https://jira.tools.weblinc.com/browse/ECOMMERCE-6907)
239
+
240
+ ## Update Date/Time Formats To Not Use Blank-Padded Day Of Month
241
+
242
+ After converting from ChromeDriver to Webdrivers, Workarea tests began
243
+ failing on May 1st because the new drivers are omitting extra whitespace
244
+ in the text output (just like a real web browser would do). This caused
245
+ an assertion comparing a date string with text generated by the browser
246
+ to fail, which uncovered a more insidious issue: Workarea's time formatting was
247
+ allowing an extra blank space on single-digit days, which makes the
248
+ proper assertions much harder to nail down based on what day you're
249
+ running the test. To resolve this, the time formats have been updated to
250
+ omit the extra space in case of a single-digit date.
251
+
252
+ ### Issues
253
+
254
+ - [ECOMMERCE-6873](https://jira.tools.weblinc.com/browse/ECOMMERCE-6873)
255
+
256
+ ### Pull Requests
257
+
258
+ - [3997](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/3997/overview)
259
+
260
+ ## Clean Up Search Customization Previews
261
+
262
+ When building the preview for search customization results, ensure the
263
+ correct view model is used by calling
264
+ `ProductRulesPreviewViewModel.wrap` instead of `.new`. This ensures the
265
+ correct UI is rendered for the given customization and product rules
266
+ preview you're attempting to view.
267
+
268
+ ### Issues
269
+
270
+ - [ECOMMERCE-6884](https://jira.tools.weblinc.com/browse/ECOMMERCE-6884)
271
+
272
+ ### Pull Requests
273
+
274
+ - [4016](https://stash.tools.weblinc.com/projects/WL/repos/workarea/pull-requests/4016/overview)
275
+