workarea 3.4.16 → 3.4.17

Sign up to get free protection for your applications and to get access to all the features.
Files changed (572) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +81 -0
  3. metadata +10 -579
  4. data/docs/Gemfile +0 -8
  5. data/docs/Gemfile.lock +0 -130
  6. data/docs/bin/middleman +0 -29
  7. data/docs/config.rb +0 -87
  8. data/docs/config.ru +0 -7
  9. data/docs/data/articles.yml +0 -157
  10. data/docs/package.json +0 -15
  11. data/docs/source/404.html.erb +0 -13
  12. data/docs/source/articles/access-routes-in-javascript.html.md +0 -33
  13. data/docs/source/articles/add-a-content-area.html.md +0 -169
  14. data/docs/source/articles/add-a-content-block-type.html.md +0 -334
  15. data/docs/source/articles/add-a-report.html.md +0 -202
  16. data/docs/source/articles/add-css-through-the-admin-ui.html.md +0 -30
  17. data/docs/source/articles/add-javascript-through-a-manifest.html.md +0 -367
  18. data/docs/source/articles/add-javascript-through-a-view.html.md +0 -80
  19. data/docs/source/articles/add-javascript-through-the-admin-ui.html.md +0 -30
  20. data/docs/source/articles/add-metrics.html.md +0 -58
  21. data/docs/source/articles/add-or-replace-a-pricing-calculator.html.md +0 -150
  22. data/docs/source/articles/add-remove-or-change-a-mongoid-validation.html.md +0 -147
  23. data/docs/source/articles/add-remove-or-change-a-product-template.html.md +0 -142
  24. data/docs/source/articles/add-remove-sort-and-group-storefront-search-filters.html.md +0 -483
  25. data/docs/source/articles/add-stylesheets-through-a-manifest.html.md +0 -276
  26. data/docs/source/articles/add-system-content.html.md +0 -138
  27. data/docs/source/articles/analytics-overview.html.md +0 -51
  28. data/docs/source/articles/analyze-storefront-search-results.html.md +0 -261
  29. data/docs/source/articles/api-overview.html.md +0 -35
  30. data/docs/source/articles/appending.html.md +0 -506
  31. data/docs/source/articles/application-document.html.md +0 -88
  32. data/docs/source/articles/automated-javascript-testing.html.md +0 -162
  33. data/docs/source/articles/b2b-overview.html.md +0 -64
  34. data/docs/source/articles/browser-and-device-support.html.md +0 -47
  35. data/docs/source/articles/change-product-placeholder-image.html.md +0 -39
  36. data/docs/source/articles/change-storefront-search-results.html.md +0 -283
  37. data/docs/source/articles/change-the-storefront-product-pricing-ui.html.md +0 -348
  38. data/docs/source/articles/change-the-storefront-search-filters-ui.html.md +0 -103
  39. data/docs/source/articles/checkout.html.md +0 -479
  40. data/docs/source/articles/commerce-model.html.md +0 -164
  41. data/docs/source/articles/configuration-for-hosting.html.md +0 -106
  42. data/docs/source/articles/configuration.html.md +0 -406
  43. data/docs/source/articles/configure-a-payment-gateway.html.md +0 -58
  44. data/docs/source/articles/configure-asset-storage.html.md +0 -29
  45. data/docs/source/articles/configure-asset-types.html.md +0 -18
  46. data/docs/source/articles/configure-contact-form-subjects-list.html.md +0 -24
  47. data/docs/source/articles/configure-imageoptim.html.md +0 -23
  48. data/docs/source/articles/configure-locales.html.md +0 -45
  49. data/docs/source/articles/configure-logins-and-authentication.html.md +0 -42
  50. data/docs/source/articles/configure-low-inventory-threshold.html.md +0 -26
  51. data/docs/source/articles/configure-product-image-sizes-and-processing.html.md +0 -28
  52. data/docs/source/articles/content.html.md +0 -554
  53. data/docs/source/articles/contentable.html.md +0 -41
  54. data/docs/source/articles/contribute-code.html.md +0 -69
  55. data/docs/source/articles/contribute-documentation.html.md +0 -60
  56. data/docs/source/articles/create-a-custom-discount.html.md +0 -234
  57. data/docs/source/articles/create-a-new-app.html.md +0 -131
  58. data/docs/source/articles/create-a-plugin.html.md +0 -19
  59. data/docs/source/articles/create-a-style-guide.html.md +0 -71
  60. data/docs/source/articles/create-a-theme.html.md +0 -134
  61. data/docs/source/articles/css-architectural-overview.html.md +0 -89
  62. data/docs/source/articles/customize-a-helper.html.md +0 -91
  63. data/docs/source/articles/decoration.html.md +0 -415
  64. data/docs/source/articles/define-and-configure-inventory-policies.html.md +0 -107
  65. data/docs/source/articles/documentation-style-guide.html.md +0 -48
  66. data/docs/source/articles/documentation.html.md +0 -54
  67. data/docs/source/articles/domain-modeling.html.md +0 -82
  68. data/docs/source/articles/error-pages.html.md.erb +0 -95
  69. data/docs/source/articles/extension-overview.html.md +0 -152
  70. data/docs/source/articles/favicon-support.html.md +0 -112
  71. data/docs/source/articles/feature-spec-helper-stylesheet.html.md +0 -25
  72. data/docs/source/articles/featurejs-and-feature-spec-helper.html.md +0 -20
  73. data/docs/source/articles/help-and-support.html.md +0 -34
  74. data/docs/source/articles/html-fragment-caching.html.md +0 -46
  75. data/docs/source/articles/http-caching.html.md +0 -43
  76. data/docs/source/articles/i18n.html.md +0 -35
  77. data/docs/source/articles/images-flow.html.md +0 -10
  78. data/docs/source/articles/index-storefront-search-documents.html.md +0 -104
  79. data/docs/source/articles/infrastructure.html.md +0 -46
  80. data/docs/source/articles/installing.html.md +0 -61
  81. data/docs/source/articles/integrate-a-payment-gateway.html.md +0 -124
  82. data/docs/source/articles/integrate-a-web-analytics-provider.html.md +0 -35
  83. data/docs/source/articles/integrate-an-inventory-management-system.html.md +0 -88
  84. data/docs/source/articles/integrating-with-other-software.html.md +0 -59
  85. data/docs/source/articles/inventory.html.md +0 -352
  86. data/docs/source/articles/javascript-coding-standards.html.md +0 -30
  87. data/docs/source/articles/javascript-modules.html.md +0 -174
  88. data/docs/source/articles/javascript-overview.html.md +0 -62
  89. data/docs/source/articles/javascript-reference-documentation.html.md +0 -51
  90. data/docs/source/articles/javascript-templates.html.md +0 -52
  91. data/docs/source/articles/low-level-caching.html.md +0 -25
  92. data/docs/source/articles/maintain-a-plugin.html.md +0 -12
  93. data/docs/source/articles/maintenance-policy.html.md +0 -79
  94. data/docs/source/articles/navigable.html.md +0 -51
  95. data/docs/source/articles/navigating-the-code.html.md +0 -149
  96. data/docs/source/articles/navigation.html.md +0 -386
  97. data/docs/source/articles/order-life-cycle.html.md +0 -546
  98. data/docs/source/articles/order-pricing.html.md +0 -389
  99. data/docs/source/articles/orders-and-items.html.md +0 -210
  100. data/docs/source/articles/orders.html.md +0 -66
  101. data/docs/source/articles/overriding.html.md +0 -155
  102. data/docs/source/articles/overview.html.md +0 -43
  103. data/docs/source/articles/plugins-overview.html.md +0 -12
  104. data/docs/source/articles/prerequisites-and-dependencies.html.md +0 -202
  105. data/docs/source/articles/products.html.md.erb +0 -1270
  106. data/docs/source/articles/progressive-web-application-support.html.md +0 -148
  107. data/docs/source/articles/rails-asset-manifests.html.md +0 -33
  108. data/docs/source/articles/rails-asset-view-helpers.html.md +0 -25
  109. data/docs/source/articles/reading-data.html.md +0 -10
  110. data/docs/source/articles/releasable.html.md +0 -37
  111. data/docs/source/articles/report-a-bug.html.md +0 -75
  112. data/docs/source/articles/ruby-coding-standards.html.md +0 -10
  113. data/docs/source/articles/run-sidekiq-in-a-local-environment.html.md +0 -40
  114. data/docs/source/articles/searching.html.md +0 -1005
  115. data/docs/source/articles/security-policy.html.md +0 -42
  116. data/docs/source/articles/seeds.html.md +0 -345
  117. data/docs/source/articles/shipping.html.md +0 -756
  118. data/docs/source/articles/sort-and-exclude-product-options.html.md +0 -47
  119. data/docs/source/articles/storefront-search-features.html.md +0 -568
  120. data/docs/source/articles/storefront-searches.html.md +0 -126
  121. data/docs/source/articles/style-guides.html.md +0 -21
  122. data/docs/source/articles/stylesheet-coding-standards.html.md +0 -24
  123. data/docs/source/articles/stylesheets-overview.html.md +0 -67
  124. data/docs/source/articles/swappable-list-data-structure.html.md +0 -81
  125. data/docs/source/articles/system-emails.html.md +0 -102
  126. data/docs/source/articles/taggable.html.md +0 -8
  127. data/docs/source/articles/test-a-credit-card-transaction.html.md +0 -16
  128. data/docs/source/articles/test-if-a-plugin-is-installed.html.md +0 -34
  129. data/docs/source/articles/testing.html.md +0 -914
  130. data/docs/source/articles/themes-overview.html.md +0 -155
  131. data/docs/source/articles/translate-administrable-content.html.md +0 -14
  132. data/docs/source/articles/translate-javascript-content.html.md +0 -16
  133. data/docs/source/articles/translate-or-customize-message-content.html.md +0 -29
  134. data/docs/source/articles/translate-or-customize-static-content.html.md +0 -30
  135. data/docs/source/articles/use-an-existing-workarea-app.html.md +0 -108
  136. data/docs/source/articles/view-models.html.md +0 -509
  137. data/docs/source/articles/views.html.md +0 -14
  138. data/docs/source/articles/workers.html.md +0 -613
  139. data/docs/source/articles/writing-data.html.md +0 -10
  140. data/docs/source/cli.html.md +0 -163
  141. data/docs/source/favicon.ico +0 -0
  142. data/docs/source/images/3-variants-1-option.png +0 -0
  143. data/docs/source/images/3-variants-3-options.png +0 -0
  144. data/docs/source/images/3-years-primary-image.png +0 -0
  145. data/docs/source/images/404-storefront-error-page.png +0 -0
  146. data/docs/source/images/404-system-content-admin.png +0 -0
  147. data/docs/source/images/404.jpg +0 -0
  148. data/docs/source/images/5-years-primary-image.png +0 -0
  149. data/docs/source/images/activity-dashboard.png +0 -0
  150. data/docs/source/images/activity-for-object.png +0 -0
  151. data/docs/source/images/activity-ui.png +0 -0
  152. data/docs/source/images/adding-captioned-image-block-custom-icon.png +0 -0
  153. data/docs/source/images/adding-captioned-image-block-default-icon.png +0 -0
  154. data/docs/source/images/admin-alerts-ui.png +0 -0
  155. data/docs/source/images/admin-category-range-filters.png +0 -0
  156. data/docs/source/images/admin-for-3-column-hero.png +0 -0
  157. data/docs/source/images/admin-help-index.png +0 -0
  158. data/docs/source/images/admin-help-ui.png +0 -0
  159. data/docs/source/images/admin-javascript.png +0 -0
  160. data/docs/source/images/admin-notification-for-deactivated-discount.png +0 -0
  161. data/docs/source/images/admin-notifications-ui.png +0 -0
  162. data/docs/source/images/admin-product-show-page.png +0 -0
  163. data/docs/source/images/admin-products-index-page.png +0 -0
  164. data/docs/source/images/admin-range-filters.png +0 -0
  165. data/docs/source/images/admin-style-guides-navigation.png +0 -0
  166. data/docs/source/images/after-re-seeding.png +0 -0
  167. data/docs/source/images/after-seeding-localhost-3000.png +0 -0
  168. data/docs/source/images/after-seeding.png +0 -0
  169. data/docs/source/images/arrow.svg +0 -1
  170. data/docs/source/images/arrow_white.svg +0 -1
  171. data/docs/source/images/aws-resource-map.png +0 -0
  172. data/docs/source/images/backordered-until-output-on-inventory-sku-card.png +0 -0
  173. data/docs/source/images/before-seeding-localhost-3000.png +0 -0
  174. data/docs/source/images/before-seeding.png +0 -0
  175. data/docs/source/images/browsing-workarea-versions-on-the-web.png +0 -0
  176. data/docs/source/images/bulk-asset-upload-on-assets-index-page.png +0 -0
  177. data/docs/source/images/bulk-asset-upload-while-editing-content.png +0 -0
  178. data/docs/source/images/bundle-show-workarea-core.png +0 -0
  179. data/docs/source/images/bundle-show-workarea.png +0 -0
  180. data/docs/source/images/calendar-for-backordered-until-field.png +0 -0
  181. data/docs/source/images/captioned-image-block-in-storefront.png +0 -0
  182. data/docs/source/images/captioned-image-content-block-storefront-component-style-guide.png +0 -0
  183. data/docs/source/images/cart-system-content-in-admin.png +0 -0
  184. data/docs/source/images/cart-system-content-in-storefront.png +0 -0
  185. data/docs/source/images/checkout-addresses-guest.png +0 -0
  186. data/docs/source/images/checkout-addresses-user.png +0 -0
  187. data/docs/source/images/checkout-confirmation.png +0 -0
  188. data/docs/source/images/checkout-flow-0.png +0 -0
  189. data/docs/source/images/checkout-flow-1.png +0 -0
  190. data/docs/source/images/checkout-flow-2.png +0 -0
  191. data/docs/source/images/checkout-flow-3.png +0 -0
  192. data/docs/source/images/checkout-flow-4.png +0 -0
  193. data/docs/source/images/checkout-payment-guest.png +0 -0
  194. data/docs/source/images/checkout-payment-user.png +0 -0
  195. data/docs/source/images/checkout-shipping.png +0 -0
  196. data/docs/source/images/color-picker-component-admin-style-guide.png +0 -0
  197. data/docs/source/images/color-picker-component-on-content-editing-screen.png +0 -0
  198. data/docs/source/images/commerce-model-carts-orders.png +0 -0
  199. data/docs/source/images/commerce-model-order-pricing.png +0 -0
  200. data/docs/source/images/commerce-model.png +0 -0
  201. data/docs/source/images/configuring-an-index-pattern-in-kibana.png +0 -0
  202. data/docs/source/images/content-block-presets.png +0 -0
  203. data/docs/source/images/content-search-customization.png +0 -0
  204. data/docs/source/images/country-with-region-data-in-address-form.png +0 -0
  205. data/docs/source/images/country-without-region-data-in-address-form.png +0 -0
  206. data/docs/source/images/create-content-block-preset-ui.png +0 -0
  207. data/docs/source/images/credit-card-icons.png +0 -0
  208. data/docs/source/images/css-added-through-admin.png +0 -0
  209. data/docs/source/images/css-admin-ui.png +0 -0
  210. data/docs/source/images/current-configuration-shown-in-admin-settings.png +0 -0
  211. data/docs/source/images/customer-impersonation-in-admin.png +0 -0
  212. data/docs/source/images/customer-impersonation-in-store-front.png +0 -0
  213. data/docs/source/images/date-filter-same-day.png +0 -0
  214. data/docs/source/images/developer-toolbar-in-store-front.png +0 -0
  215. data/docs/source/images/discounts-sorted-by-most-redeemed.png +0 -0
  216. data/docs/source/images/edit-help-article.png +0 -0
  217. data/docs/source/images/editing-content-for-search-customization.png +0 -0
  218. data/docs/source/images/editing-dynamic-captioned-image-block.png +0 -0
  219. data/docs/source/images/editing-product-fields-in-the-admin.png +0 -0
  220. data/docs/source/images/editing-search-system-content.png +0 -0
  221. data/docs/source/images/editing-static-captioned-image-block-custom-icon.png +0 -0
  222. data/docs/source/images/editing-static-captioned-image-block-default-icon.png +0 -0
  223. data/docs/source/images/external.svg +0 -1
  224. data/docs/source/images/favicon_16.png +0 -0
  225. data/docs/source/images/favicon_180.png +0 -0
  226. data/docs/source/images/favicon_32.png +0 -0
  227. data/docs/source/images/filters-all.png +0 -0
  228. data/docs/source/images/filters-control.png +0 -0
  229. data/docs/source/images/filters-custom.png +0 -0
  230. data/docs/source/images/filters-groups.png +0 -0
  231. data/docs/source/images/filters-material.png +0 -0
  232. data/docs/source/images/filters-omitted.png +0 -0
  233. data/docs/source/images/filters-pinned.png +0 -0
  234. data/docs/source/images/filters-range.png +0 -0
  235. data/docs/source/images/filters-sorted.png +0 -0
  236. data/docs/source/images/filters-wrapping-to-second-line-in-admin.png +0 -0
  237. data/docs/source/images/generic-product-template-images-no-options-selected.png +0 -0
  238. data/docs/source/images/generic-product-template-images-options-selected.png +0 -0
  239. data/docs/source/images/generic-template.png +0 -0
  240. data/docs/source/images/hosting.svg +0 -1
  241. data/docs/source/images/image-group-content-block-in-storefront.png +0 -0
  242. data/docs/source/images/images.svg +0 -1
  243. data/docs/source/images/import-export-screenshot.png +0 -0
  244. data/docs/source/images/invalid-display.png +0 -0
  245. data/docs/source/images/itcss.png +0 -0
  246. data/docs/source/images/kibana-dev-tools-console.png +0 -0
  247. data/docs/source/images/layout-content-admin-with-2-areas.png +0 -0
  248. data/docs/source/images/layout-content-admin-with-3-areas.png +0 -0
  249. data/docs/source/images/link-to-search-system-content.png +0 -0
  250. data/docs/source/images/logo.svg +0 -1
  251. data/docs/source/images/menu.svg +0 -2
  252. data/docs/source/images/mongo-replica-set.svg +0 -1
  253. data/docs/source/images/multi-column-hero-blocks.png +0 -0
  254. data/docs/source/images/option-selects-product-template-images-options-selected.png +0 -0
  255. data/docs/source/images/option-selects-template.png +0 -0
  256. data/docs/source/images/option-thumbnails-template.png +0 -0
  257. data/docs/source/images/order-item-total-price-diagram.png +0 -0
  258. data/docs/source/images/order-pricing-cart-example.png +0 -0
  259. data/docs/source/images/order-pricing-example-adjustments.png +0 -0
  260. data/docs/source/images/order-pricing-example-totals.png +0 -0
  261. data/docs/source/images/order-pricing-placed-order-example.png +0 -0
  262. data/docs/source/images/order-shipping-total-diagram.png +0 -0
  263. data/docs/source/images/order-show-with-multiple-tenders.png +0 -0
  264. data/docs/source/images/order-subtotal-price-diagram.png +0 -0
  265. data/docs/source/images/order-tax-total-diagram.png +0 -0
  266. data/docs/source/images/order-total-price-diagram.png +0 -0
  267. data/docs/source/images/order-total-value-diagram.png +0 -0
  268. data/docs/source/images/orders-dashboard-links.png +0 -0
  269. data/docs/source/images/oval.svg +0 -1
  270. data/docs/source/images/payment-icon-storefront-style-guide.png +0 -0
  271. data/docs/source/images/people-dashboard-links.png +0 -0
  272. data/docs/source/images/price-adjustments-diagram.png +0 -0
  273. data/docs/source/images/price-display-no-options.png +0 -0
  274. data/docs/source/images/price-display-options-selected.png +0 -0
  275. data/docs/source/images/pricing-calculators-diagram.png +0 -0
  276. data/docs/source/images/product-list-content-block-admin.png +0 -0
  277. data/docs/source/images/product-list-content-block-in-store-front.png +0 -0
  278. data/docs/source/images/promo-products-excluded-autocomplete-results-after.png +0 -0
  279. data/docs/source/images/promo-products-excluded-featured-category-results-after.png +0 -0
  280. data/docs/source/images/promo-products-excluded-recommendations-results-after.png +0 -0
  281. data/docs/source/images/promo-products-excluded-search-category-results-after.png +0 -0
  282. data/docs/source/images/promo-products-excluded-search-results-after.png +0 -0
  283. data/docs/source/images/promo-products-included-autocomplete-results-before.png +0 -0
  284. data/docs/source/images/promo-products-included-featured-category-results-before.png +0 -0
  285. data/docs/source/images/promo-products-included-recommendations-results-before.png +0 -0
  286. data/docs/source/images/promo-products-included-search-category-results-before.png +0 -0
  287. data/docs/source/images/promo-products-included-search-results-before.png +0 -0
  288. data/docs/source/images/rails-version-constraint.png +0 -0
  289. data/docs/source/images/re-enable-discount.png +0 -0
  290. data/docs/source/images/reading-data.svg +0 -1
  291. data/docs/source/images/readme-hero.png +0 -0
  292. data/docs/source/images/redesigned-customized-sort-for-search-results.png +0 -0
  293. data/docs/source/images/reviews-summary-above-share-buttons.png +0 -0
  294. data/docs/source/images/reviews-summary-below-product-name.png +0 -0
  295. data/docs/source/images/reviews-summary-below-share-buttons.png +0 -0
  296. data/docs/source/images/reviews-summary-removed.png +0 -0
  297. data/docs/source/images/rsa-fingerprint-for-stash.png +0 -0
  298. data/docs/source/images/ruby-version-constraint.png +0 -0
  299. data/docs/source/images/script-tag-added-through-admin.png +0 -0
  300. data/docs/source/images/search-analysis-admin-alternate-rendering.png +0 -0
  301. data/docs/source/images/search-analysis-admin.png +0 -0
  302. data/docs/source/images/search-quality-report.png +0 -0
  303. data/docs/source/images/search.svg +0 -1
  304. data/docs/source/images/searching-for-cart-system-content-in-admin.png +0 -0
  305. data/docs/source/images/searching-for-layout-system-content-in-admin.png +0 -0
  306. data/docs/source/images/seeded-admin.png +0 -0
  307. data/docs/source/images/seeds-from-plugins.png +0 -0
  308. data/docs/source/images/seo-metadata-automation-ui.png +0 -0
  309. data/docs/source/images/show-password-button.png +0 -0
  310. data/docs/source/images/storefront-autocomplete.png +0 -0
  311. data/docs/source/images/storefront-category-summary-content-block.png +0 -0
  312. data/docs/source/images/storefront-category.png +0 -0
  313. data/docs/source/images/storefront-product-after-overriding.png +0 -0
  314. data/docs/source/images/storefront-product-before-overriding.png +0 -0
  315. data/docs/source/images/storefront-product-browse-page.png +0 -0
  316. data/docs/source/images/storefront-product-recommendations.png +0 -0
  317. data/docs/source/images/storefront-product-show-page.png +0 -0
  318. data/docs/source/images/storefront-requests-and-search-requests.png +0 -0
  319. data/docs/source/images/storefront-search-request-handling.png +0 -0
  320. data/docs/source/images/storefront-search-response-creation.png +0 -0
  321. data/docs/source/images/storefront-search.png +0 -0
  322. data/docs/source/images/storefront-style-guides-navigation.png +0 -0
  323. data/docs/source/images/styles.css +0 -3
  324. data/docs/source/images/tax-categories-ui.png +0 -0
  325. data/docs/source/images/tax-rates-ui.png +0 -0
  326. data/docs/source/images/unpurchasable-product.png +0 -0
  327. data/docs/source/images/url-redirects-filtering.png +0 -0
  328. data/docs/source/images/utility-nav-area-in-admin.png +0 -0
  329. data/docs/source/images/utility-nav-area-in-storefront.png +0 -0
  330. data/docs/source/images/validation-message-in-storefront.png +0 -0
  331. data/docs/source/images/view-model-interface.png +0 -0
  332. data/docs/source/images/viewing-workarea-version-in-source.png +0 -0
  333. data/docs/source/images/workarea.svg +0 -1
  334. data/docs/source/images/worst-performing-searches-on-results-customization-page.png +0 -0
  335. data/docs/source/images/writing-data.svg +0 -1
  336. data/docs/source/index.html.erb +0 -166
  337. data/docs/source/javascripts/jquery.js +0 -2
  338. data/docs/source/javascripts/lunr.js +0 -7
  339. data/docs/source/javascripts/site.js +0 -299
  340. data/docs/source/javascripts/vendor/highlight.pack.js +0 -2
  341. data/docs/source/layouts/article.erb +0 -106
  342. data/docs/source/layouts/bare.erb +0 -46
  343. data/docs/source/layouts/layout.erb +0 -43
  344. data/docs/source/release-notes/workarea-3-0-0.html.md +0 -146
  345. data/docs/source/release-notes/workarea-3-0-1.html.md +0 -161
  346. data/docs/source/release-notes/workarea-3-0-10.html.md +0 -39
  347. data/docs/source/release-notes/workarea-3-0-11.html.md +0 -277
  348. data/docs/source/release-notes/workarea-3-0-12.html.md +0 -14
  349. data/docs/source/release-notes/workarea-3-0-13.html.md +0 -153
  350. data/docs/source/release-notes/workarea-3-0-14.html.md +0 -93
  351. data/docs/source/release-notes/workarea-3-0-15.html.md +0 -107
  352. data/docs/source/release-notes/workarea-3-0-16.html.md +0 -36
  353. data/docs/source/release-notes/workarea-3-0-17.html.md +0 -141
  354. data/docs/source/release-notes/workarea-3-0-18.html.md +0 -123
  355. data/docs/source/release-notes/workarea-3-0-19.html.md +0 -160
  356. data/docs/source/release-notes/workarea-3-0-2.html.md +0 -222
  357. data/docs/source/release-notes/workarea-3-0-20.html.md +0 -95
  358. data/docs/source/release-notes/workarea-3-0-21.html.md +0 -168
  359. data/docs/source/release-notes/workarea-3-0-22.html.md +0 -268
  360. data/docs/source/release-notes/workarea-3-0-23.html.md +0 -173
  361. data/docs/source/release-notes/workarea-3-0-24.html.md +0 -19
  362. data/docs/source/release-notes/workarea-3-0-25.html.md +0 -26
  363. data/docs/source/release-notes/workarea-3-0-26.html.md +0 -199
  364. data/docs/source/release-notes/workarea-3-0-27.html.md +0 -113
  365. data/docs/source/release-notes/workarea-3-0-28.html.md +0 -39
  366. data/docs/source/release-notes/workarea-3-0-29.html.md +0 -73
  367. data/docs/source/release-notes/workarea-3-0-3.html.md +0 -35
  368. data/docs/source/release-notes/workarea-3-0-30.html.md +0 -186
  369. data/docs/source/release-notes/workarea-3-0-31.html.md +0 -125
  370. data/docs/source/release-notes/workarea-3-0-32.html.md +0 -73
  371. data/docs/source/release-notes/workarea-3-0-33.html.md +0 -137
  372. data/docs/source/release-notes/workarea-3-0-34.html.md +0 -203
  373. data/docs/source/release-notes/workarea-3-0-35.html.md +0 -205
  374. data/docs/source/release-notes/workarea-3-0-36.html.md +0 -105
  375. data/docs/source/release-notes/workarea-3-0-37.html.md +0 -144
  376. data/docs/source/release-notes/workarea-3-0-38.html.md +0 -73
  377. data/docs/source/release-notes/workarea-3-0-39.html.md +0 -77
  378. data/docs/source/release-notes/workarea-3-0-4.html.md +0 -14
  379. data/docs/source/release-notes/workarea-3-0-40.html.md +0 -130
  380. data/docs/source/release-notes/workarea-3-0-41.html.md +0 -70
  381. data/docs/source/release-notes/workarea-3-0-42.html.md +0 -52
  382. data/docs/source/release-notes/workarea-3-0-43.html.md +0 -72
  383. data/docs/source/release-notes/workarea-3-0-44.html.md +0 -93
  384. data/docs/source/release-notes/workarea-3-0-45.html.md +0 -61
  385. data/docs/source/release-notes/workarea-3-0-46.html.md +0 -171
  386. data/docs/source/release-notes/workarea-3-0-47.html.md +0 -130
  387. data/docs/source/release-notes/workarea-3-0-48.html.md +0 -160
  388. data/docs/source/release-notes/workarea-3-0-49.html.md +0 -28
  389. data/docs/source/release-notes/workarea-3-0-5.html.md +0 -225
  390. data/docs/source/release-notes/workarea-3-0-50.html.md +0 -74
  391. data/docs/source/release-notes/workarea-3-0-51.html.md +0 -61
  392. data/docs/source/release-notes/workarea-3-0-52.html.md +0 -76
  393. data/docs/source/release-notes/workarea-3-0-53.html.md +0 -126
  394. data/docs/source/release-notes/workarea-3-0-54.html.md +0 -112
  395. data/docs/source/release-notes/workarea-3-0-55.html.md +0 -105
  396. data/docs/source/release-notes/workarea-3-0-56.html.md +0 -56
  397. data/docs/source/release-notes/workarea-3-0-57.html.md +0 -82
  398. data/docs/source/release-notes/workarea-3-0-58.html.md +0 -153
  399. data/docs/source/release-notes/workarea-3-0-59.html.md +0 -78
  400. data/docs/source/release-notes/workarea-3-0-6.html.md +0 -165
  401. data/docs/source/release-notes/workarea-3-0-60.html.md +0 -43
  402. data/docs/source/release-notes/workarea-3-0-61.html.md +0 -46
  403. data/docs/source/release-notes/workarea-3-0-62.html.md +0 -23
  404. data/docs/source/release-notes/workarea-3-0-63.html.md +0 -25
  405. data/docs/source/release-notes/workarea-3-0-64.html.md +0 -25
  406. data/docs/source/release-notes/workarea-3-0-65.html.md +0 -37
  407. data/docs/source/release-notes/workarea-3-0-7.html.md +0 -207
  408. data/docs/source/release-notes/workarea-3-0-8.html.md +0 -337
  409. data/docs/source/release-notes/workarea-3-0-9.html.md +0 -196
  410. data/docs/source/release-notes/workarea-3-1-0.html.md +0 -414
  411. data/docs/source/release-notes/workarea-3-1-1.html.md +0 -139
  412. data/docs/source/release-notes/workarea-3-1-10.html.md +0 -19
  413. data/docs/source/release-notes/workarea-3-1-11.html.md +0 -27
  414. data/docs/source/release-notes/workarea-3-1-12.html.md +0 -216
  415. data/docs/source/release-notes/workarea-3-1-13.html.md +0 -113
  416. data/docs/source/release-notes/workarea-3-1-14.html.md +0 -39
  417. data/docs/source/release-notes/workarea-3-1-15.html.md +0 -107
  418. data/docs/source/release-notes/workarea-3-1-16.html.md +0 -188
  419. data/docs/source/release-notes/workarea-3-1-17.html.md +0 -141
  420. data/docs/source/release-notes/workarea-3-1-18.html.md +0 -73
  421. data/docs/source/release-notes/workarea-3-1-19.html.md +0 -137
  422. data/docs/source/release-notes/workarea-3-1-2.html.md +0 -55
  423. data/docs/source/release-notes/workarea-3-1-20.html.md +0 -203
  424. data/docs/source/release-notes/workarea-3-1-21.html.md +0 -205
  425. data/docs/source/release-notes/workarea-3-1-22.html.md +0 -121
  426. data/docs/source/release-notes/workarea-3-1-23.html.md +0 -144
  427. data/docs/source/release-notes/workarea-3-1-24.html.md +0 -94
  428. data/docs/source/release-notes/workarea-3-1-25.html.md +0 -77
  429. data/docs/source/release-notes/workarea-3-1-26.html.md +0 -130
  430. data/docs/source/release-notes/workarea-3-1-27.html.md +0 -70
  431. data/docs/source/release-notes/workarea-3-1-28.html.md +0 -52
  432. data/docs/source/release-notes/workarea-3-1-29.html.md +0 -44
  433. data/docs/source/release-notes/workarea-3-1-3.html.md +0 -185
  434. data/docs/source/release-notes/workarea-3-1-30.html.md +0 -72
  435. data/docs/source/release-notes/workarea-3-1-31.html.md +0 -93
  436. data/docs/source/release-notes/workarea-3-1-32.html.md +0 -61
  437. data/docs/source/release-notes/workarea-3-1-33.html.md +0 -171
  438. data/docs/source/release-notes/workarea-3-1-34.html.md +0 -130
  439. data/docs/source/release-notes/workarea-3-1-35.html.md +0 -179
  440. data/docs/source/release-notes/workarea-3-1-36.html.md +0 -28
  441. data/docs/source/release-notes/workarea-3-1-37.html.md +0 -74
  442. data/docs/source/release-notes/workarea-3-1-38.html.md +0 -61
  443. data/docs/source/release-notes/workarea-3-1-39.html.md +0 -96
  444. data/docs/source/release-notes/workarea-3-1-4.html.md +0 -148
  445. data/docs/source/release-notes/workarea-3-1-40.html.md +0 -126
  446. data/docs/source/release-notes/workarea-3-1-41.html.md +0 -128
  447. data/docs/source/release-notes/workarea-3-1-42.html.md +0 -105
  448. data/docs/source/release-notes/workarea-3-1-43.html.md +0 -37
  449. data/docs/source/release-notes/workarea-3-1-44.html.md +0 -82
  450. data/docs/source/release-notes/workarea-3-1-45.html.md +0 -153
  451. data/docs/source/release-notes/workarea-3-1-46.html.md +0 -91
  452. data/docs/source/release-notes/workarea-3-1-47.html.md +0 -65
  453. data/docs/source/release-notes/workarea-3-1-48.html.md +0 -46
  454. data/docs/source/release-notes/workarea-3-1-49.html.md +0 -23
  455. data/docs/source/release-notes/workarea-3-1-5.html.md +0 -169
  456. data/docs/source/release-notes/workarea-3-1-50.html.md +0 -42
  457. data/docs/source/release-notes/workarea-3-1-51.html.md +0 -25
  458. data/docs/source/release-notes/workarea-3-1-52.html.md +0 -57
  459. data/docs/source/release-notes/workarea-3-1-6.html.md +0 -117
  460. data/docs/source/release-notes/workarea-3-1-7.html.md +0 -176
  461. data/docs/source/release-notes/workarea-3-1-8.html.md +0 -283
  462. data/docs/source/release-notes/workarea-3-1-9.html.md +0 -212
  463. data/docs/source/release-notes/workarea-3-2-0.html.md +0 -1705
  464. data/docs/source/release-notes/workarea-3-2-1.html.md +0 -216
  465. data/docs/source/release-notes/workarea-3-2-10.html.md +0 -237
  466. data/docs/source/release-notes/workarea-3-2-11.html.md +0 -121
  467. data/docs/source/release-notes/workarea-3-2-12.html.md +0 -145
  468. data/docs/source/release-notes/workarea-3-2-13.html.md +0 -138
  469. data/docs/source/release-notes/workarea-3-2-14.html.md +0 -77
  470. data/docs/source/release-notes/workarea-3-2-15.html.md +0 -130
  471. data/docs/source/release-notes/workarea-3-2-16.html.md +0 -111
  472. data/docs/source/release-notes/workarea-3-2-17.html.md +0 -52
  473. data/docs/source/release-notes/workarea-3-2-18.html.md +0 -44
  474. data/docs/source/release-notes/workarea-3-2-19.html.md +0 -72
  475. data/docs/source/release-notes/workarea-3-2-2.html.md +0 -145
  476. data/docs/source/release-notes/workarea-3-2-20.html.md +0 -93
  477. data/docs/source/release-notes/workarea-3-2-21.html.md +0 -61
  478. data/docs/source/release-notes/workarea-3-2-22.html.md +0 -154
  479. data/docs/source/release-notes/workarea-3-2-23.html.md +0 -130
  480. data/docs/source/release-notes/workarea-3-2-24.html.md +0 -200
  481. data/docs/source/release-notes/workarea-3-2-25.html.md +0 -28
  482. data/docs/source/release-notes/workarea-3-2-26.html.md +0 -94
  483. data/docs/source/release-notes/workarea-3-2-27.html.md +0 -61
  484. data/docs/source/release-notes/workarea-3-2-28.html.md +0 -96
  485. data/docs/source/release-notes/workarea-3-2-29.html.md +0 -126
  486. data/docs/source/release-notes/workarea-3-2-30.html.md +0 -112
  487. data/docs/source/release-notes/workarea-3-2-31.html.md +0 -105
  488. data/docs/source/release-notes/workarea-3-2-32.html.md +0 -56
  489. data/docs/source/release-notes/workarea-3-2-33.html.md +0 -82
  490. data/docs/source/release-notes/workarea-3-2-34.html.md +0 -153
  491. data/docs/source/release-notes/workarea-3-2-35.html.md +0 -91
  492. data/docs/source/release-notes/workarea-3-2-36.html.md +0 -118
  493. data/docs/source/release-notes/workarea-3-2-37.html.md +0 -46
  494. data/docs/source/release-notes/workarea-3-2-38.html.md +0 -23
  495. data/docs/source/release-notes/workarea-3-2-39.html.md +0 -42
  496. data/docs/source/release-notes/workarea-3-2-4.html.md +0 -109
  497. data/docs/source/release-notes/workarea-3-2-40.html.md +0 -25
  498. data/docs/source/release-notes/workarea-3-2-41.html.md +0 -90
  499. data/docs/source/release-notes/workarea-3-2-5.html.md +0 -186
  500. data/docs/source/release-notes/workarea-3-2-6.html.md +0 -173
  501. data/docs/source/release-notes/workarea-3-2-7.html.md +0 -89
  502. data/docs/source/release-notes/workarea-3-2-8.html.md +0 -137
  503. data/docs/source/release-notes/workarea-3-2-9.html.md +0 -219
  504. data/docs/source/release-notes/workarea-3-3-0.html.md +0 -1272
  505. data/docs/source/release-notes/workarea-3-3-1.html.md +0 -324
  506. data/docs/source/release-notes/workarea-3-3-10.html.md +0 -69
  507. data/docs/source/release-notes/workarea-3-3-11.html.md +0 -72
  508. data/docs/source/release-notes/workarea-3-3-12.html.md +0 -136
  509. data/docs/source/release-notes/workarea-3-3-13.html.md +0 -61
  510. data/docs/source/release-notes/workarea-3-3-14.html.md +0 -196
  511. data/docs/source/release-notes/workarea-3-3-15.html.md +0 -167
  512. data/docs/source/release-notes/workarea-3-3-16.html.md +0 -234
  513. data/docs/source/release-notes/workarea-3-3-17.html.md +0 -82
  514. data/docs/source/release-notes/workarea-3-3-18.html.md +0 -165
  515. data/docs/source/release-notes/workarea-3-3-19.html.md +0 -106
  516. data/docs/source/release-notes/workarea-3-3-2.html.md +0 -72
  517. data/docs/source/release-notes/workarea-3-3-20.html.md +0 -116
  518. data/docs/source/release-notes/workarea-3-3-21.html.md +0 -228
  519. data/docs/source/release-notes/workarea-3-3-22.html.md +0 -125
  520. data/docs/source/release-notes/workarea-3-3-23.html.md +0 -154
  521. data/docs/source/release-notes/workarea-3-3-24.html.md +0 -70
  522. data/docs/source/release-notes/workarea-3-3-25.html.md +0 -114
  523. data/docs/source/release-notes/workarea-3-3-26.html.md +0 -260
  524. data/docs/source/release-notes/workarea-3-3-27.html.md +0 -138
  525. data/docs/source/release-notes/workarea-3-3-28.html.md +0 -147
  526. data/docs/source/release-notes/workarea-3-3-29.html.md +0 -63
  527. data/docs/source/release-notes/workarea-3-3-3.html.md +0 -153
  528. data/docs/source/release-notes/workarea-3-3-30.html.md +0 -102
  529. data/docs/source/release-notes/workarea-3-3-31.html.md +0 -57
  530. data/docs/source/release-notes/workarea-3-3-32.html.md +0 -44
  531. data/docs/source/release-notes/workarea-3-3-33.html.md +0 -114
  532. data/docs/source/release-notes/workarea-3-3-34.html.md +0 -29
  533. data/docs/source/release-notes/workarea-3-3-4.html.md +0 -332
  534. data/docs/source/release-notes/workarea-3-3-5.html.md +0 -242
  535. data/docs/source/release-notes/workarea-3-3-6.html.md +0 -100
  536. data/docs/source/release-notes/workarea-3-3-7.html.md +0 -148
  537. data/docs/source/release-notes/workarea-3-3-8.html.md +0 -163
  538. data/docs/source/release-notes/workarea-3-3-9.html.md +0 -93
  539. data/docs/source/release-notes/workarea-3-4-0.html.md +0 -580
  540. data/docs/source/release-notes/workarea-3-4-1.html.md +0 -150
  541. data/docs/source/release-notes/workarea-3-4-10.html.md +0 -72
  542. data/docs/source/release-notes/workarea-3-4-11.html.md +0 -60
  543. data/docs/source/release-notes/workarea-3-4-12.html.md +0 -155
  544. data/docs/source/release-notes/workarea-3-4-15.html.md +0 -100
  545. data/docs/source/release-notes/workarea-3-4-16.html.md +0 -88
  546. data/docs/source/release-notes/workarea-3-4-2.html.md +0 -188
  547. data/docs/source/release-notes/workarea-3-4-3.html.md +0 -136
  548. data/docs/source/release-notes/workarea-3-4-4.html.md +0 -114
  549. data/docs/source/release-notes/workarea-3-4-5.html.md +0 -275
  550. data/docs/source/release-notes/workarea-3-4-6.html.md +0 -169
  551. data/docs/source/release-notes/workarea-3-4-7.html.md +0 -162
  552. data/docs/source/release-notes/workarea-3-4-8.html.md +0 -95
  553. data/docs/source/release-notes/workarea-3-4-9.html.md +0 -135
  554. data/docs/source/release-notes.html.md +0 -261
  555. data/docs/source/search.html.erb +0 -34
  556. data/docs/source/shared/_header.erb +0 -61
  557. data/docs/source/shared/_svgs.erb +0 -17
  558. data/docs/source/style_guide/index.html.erb +0 -382
  559. data/docs/source/stylesheets/_base.scss +0 -125
  560. data/docs/source/stylesheets/_components.scss +0 -669
  561. data/docs/source/stylesheets/_helpers.scss +0 -10
  562. data/docs/source/stylesheets/_opinions.scss +0 -42
  563. data/docs/source/stylesheets/_settings.scss +0 -56
  564. data/docs/source/stylesheets/_typography.scss +0 -119
  565. data/docs/source/stylesheets/site.css.scss +0 -14
  566. data/docs/source/stylesheets/vendor/_avalanche.scss +0 -328
  567. data/docs/source/stylesheets/vendor/_normalize.scss +0 -341
  568. data/docs/source/stylesheets/vendor/highlight/_tomorrow_night_blue.scss +0 -75
  569. data/docs/source/upgrade-guides/workarea-3-4-0.html.md +0 -152
  570. data/docs/source/upgrade-guides.html.md +0 -18
  571. data/docs/workarea_renderer.rb +0 -8
  572. data/docs/yarn.lock +0 -2522
@@ -1,41 +0,0 @@
1
- ---
2
- title: Contentable
3
- excerpt: A contentable is an application document that includes the Workarea::Contentable module, and thereby has a 1:1 relationship with a content.
4
- ---
5
-
6
- # Contentable
7
-
8
- A <dfn>contentable</dfn> is an [application document](application-document.html) that includes the `Workarea::Contentable` module, and thereby has a 1:1 relationship with a [content](content.html#content).
9
-
10
- Creating a contentable does not create its associated content, so a contentable is not guaranteed to have content. Pass a contentable to `Content.for` to `find_or_create` its associated content. The following examples use a [content page](content.html#page) as the contentable.
11
-
12
- ```
13
- # Create a content page
14
- page = Workarea::Content::Page.create!(name: 'Shopping Guide')
15
-
16
- # No content yet
17
- page.content
18
- # => nil
19
-
20
- # Create content for the page
21
- content = Workarea::Content.for(page)
22
-
23
- content.id.to_s
24
- # => "58ac8489eefbfe3e5ac2ae58"
25
-
26
- # Access the content from the page
27
- page.reload
28
- page.content.id.to_s
29
- # => "58ac8489eefbfe3e5ac2ae58"
30
-
31
- # Access the page from the content
32
- content.contentable_type
33
- # => "Workarea::Content::Page"
34
-
35
- content.contentable_id.to_s
36
- # => "58ac8489eefbfe3e5ac2ae56"
37
-
38
- content.contentable.name
39
- # => "Shopping Guide"
40
- ```
41
-
@@ -1,69 +0,0 @@
1
- ---
2
- title: Contribute Code
3
- created_at: 2018/09/17
4
- excerpt: Workarea is an open-source commerce platform, so anyone can contribute to it! In this guide, you'll how to make your own contributions to Workarea using GitHub and Pull Requests.
5
- ---
6
-
7
- # Contribute Code
8
-
9
- Workarea is an open-source commerce platform, so anyone can contribute to it! In this guide, you'll learn how to make your own contributions to Workarea using GitHub and Pull Requests. First off, if you don't already have a GitHub account, create one. With a GitHub account and a fork of the Workarea repo, you'll be able to contribute both code and [documentation](contribute-documentation.html) to the platform.
10
-
11
- ## Contributing Security Fixes
12
-
13
- Any security changes should follow the [security policy](security-policy.html), which describes a process by which you can report vulnerabilities to the Workarea core team.
14
-
15
- ## Patching the Platform
16
-
17
- Workarea will only accept patches to the platform that contain the minimum viable amount of code change to solve the problem you're having. For example, rewriting an entire class to suit a particular code style is not something that will be accepted in a patch version of the platform. The reason for this is that Workarea developers typically inspect the diff of each version that they upgrade their projects to, in order to spot any changes made in the platform that could affect their decorated code. It's much more difficult to understand what needed to be changed if there are a lot of unnecessary changes in the same file. Before making your pull request, make sure you're not doing any unnecessary refactors or rewrites of the code.
18
-
19
- ## Pull Requests
20
-
21
- All changes to Workarea are made in the form of a pull request. Pull requests to the platform should be thought of not as an "approval process", but rather as a means of discussing a particular change. The only difference between a GitHub issue and a pull request is that the pull request contains code.
22
-
23
- Pull requests must be made to their **lowest common denominator** version. If you're making changes for the next Workarea v3.0.x patch, you'll need to branch from (and pull request back to) the `v3.0-stable` branch. These branches are "merged up" all the way to `master` when we build for QA or on patch release day, so your changes will be applied to all subsequent patch versions that have a higher minor. Doing things this way prevents developers from having to make the same pull request against multiple branches of the platform, which can diffuse the discussion.
24
-
25
- Before making the pull request, make sure your topic branch is up-to-date with its parent branch by rebasing against it. Be sure to `git pull` the parent branch _before_ rebasing so you know you're getting the absolute latest and greatest. Squash your commits and rebase against the branch that you will merge into so that your topic branch is exactly one commit ahead of the long running branch. This allows your changes to be easily cherry-picked for additional pull requests and keeps the commit log clean. Don't worry too much if this confuses you, GitHub allows the platform team to squash your commits into one if we need to.
26
-
27
- ### Commit Messages
28
-
29
- Write your commit message as if it will be used as an entry in the changelog. Consider your audience: systems integrators upgrading to a new version of Workarea.
30
-
31
- Follow [the seven rules of a great git commit message](http://chris.beams.io/posts/git-commit/#seven-rules). Use [Markdown](http://daringfireball.net/projects/markdown/) for text formatting, such as marking up a list or delimiting code (see example/template below).
32
-
33
- Include the GitHub issue number (if any) on the last line(s) of the commit message.
34
-
35
- **Note:** In the event your commit is not relevant to readers of the changelog, include the string "No changelog" within the commit message.
36
-
37
- #### Commit Message Example/Template
38
-
39
- ```
40
- Summarize changes in around 50 characters or less
41
-
42
- More detailed explanatory text, if necessary. Wrap it to about 72
43
- characters or so. In some contexts, the first line is treated as the
44
- subject of the commit and the rest of the text as the body. The
45
- blank line separating the summary from the body is critical (unless
46
- you omit the body entirely); various tools like `log`, `shortlog`
47
- and `rebase` can get confused if you run the two together.
48
-
49
- Explain the problem that this commit is solving. Focus on why you
50
- are making this change as opposed to how (the code explains that).
51
- Are there side effects or other unintuitive consequenses of this
52
- change? Here's the place to explain them.
53
-
54
- Further paragraphs come after blank lines.
55
-
56
- * Bullet points are okay, too.
57
-
58
- * Use an asterisk for the bullet.
59
-
60
- * Keep bullets flush left. Line breaks between bullets are optional.
61
-
62
- Put the GitHub issue number on the last line, like this:
63
-
64
- Closes #8
65
- ```
66
-
67
- ### Code Review
68
-
69
- The next step is to actually make the pull request. When you push your branch to your fork on GitHub, a yellow window will appear above the code browser prompting you to create a new pull request. Click this button, and the contents of your commit (if you squashed!) will be automatically used as the initial message in the pull request. This is also using [Markdown](http://daringfireball.net/projects/markdown/), so you can mark up your PR message in any way you choose. Once the pull request is made, reviewers will be automatically added according to the `REVIEWERS` file at the root of the repo. If you wish to add any other reviewers, you can do so at this time. One (or more) of these developers will review your code and either choose to merge the request, **request changes** from you, or actually make a **suggestion** as a code diff in the PR comments. Code review can sometimes be a lengthy process, so be prepared to discuss your changes with platform developers, contributors to the platform, and just about anyone who's interested on the web.
@@ -1,60 +0,0 @@
1
- ---
2
- title: Contribute Documentation
3
- created_at: 2018/07/31
4
- excerpt: Learn how to contribute documentation to Workarea
5
- ---
6
-
7
- # Contribute Documentation
8
-
9
- Documentation contributions are welcome. These may be bug fixes or improvements you've identified on your own, or specific changes assigned to you by the Workarea core team.
10
-
11
- Use the following process to submit documentation.
12
-
13
- ## 1. Create a Branch for Your Work
14
-
15
- Follow the same process used for [contributing code](contribute-code.html). [Published documentation](documentation.html#published-documentation) represents a specific major or minor version of the platform, and you should make a pull request against the highest stable minor branch (e.g. `v3.x-stable`).
16
-
17
- ## 2. Make Your Changes
18
-
19
- Apply your changes. Refer to the steps for specific types of changes below.
20
-
21
- ### Change a Document
22
-
23
- 1. Change the document's content as necessary
24
- 2. Update frontmatter if applicable
25
- 3. Ensure all your changes conform to the format of [document source files](documentation.html#document-source-files)
26
-
27
- ### Add an Image
28
-
29
- 1. Create the new image file, ensuring the file conforms to the format of [image source files](documentation.html#image-source-files)
30
- 2. Optimize the image file for the web
31
- 3. Add the new image file
32
- 4. Reference the image file from a document
33
-
34
- ### Remove a Document
35
-
36
- 1. Remove the document file
37
- 2. Remove its entry from the [navigation tree](documentation.html#navigation)
38
- 3. Identify the image files referenced by the document, and remove each file unless it is referenced by other documents (which is rare)
39
-
40
- ### Add a Document
41
-
42
- 1. Add the new document file, ensuring it conforms to the format of [document source files](documentation.html#document-source-files)
43
- 2. Add an entry for the new document to the [navigation tree](documentation.html#navigation)
44
-
45
- ## 3. Confirm Your Changes
46
-
47
- Every markdown implementation is a unique snowflake, so please **build the documentation and confirm your changes appear as expected before submitting them for review**. Also ensure your changes conform to the [documentation style guide](documentation-style-guide.html).
48
-
49
- The following example demonstrates how to start a development server, which will re-build the docs each time you make a change.
50
-
51
- ```bash
52
- $ cd docs && bundle
53
- $ bin/middleman
54
- ```
55
-
56
- Open the URL displayed in the output to view the built documentation.
57
-
58
- ## 4. Submit a Pull Request
59
-
60
- After building the docs and confirming your changes, you can submit the changes as a pull request. Follow the same process used for [contributing code](contribute-code.html).
@@ -1,234 +0,0 @@
1
- ---
2
- title: Create a Custom Discount
3
- excerpt: The following example creates a "Buy Some Get Shipping" discount that provides a discount on a particular shipping method with the purchase of certain products or from certain categories.
4
- ---
5
-
6
- # Create a Custom Discount
7
-
8
- The following example creates a "Buy Some Get Shipping" discount that provides a discount on a particular shipping method with the purchase of certain products or from certain categories.
9
-
10
- ## Discount Generator
11
-
12
- Version 2.1 introduced a discount generator, which will create the new discount boilerplate for you.
13
-
14
- ```bash
15
- $ bin/rails g workarea:discount --help
16
- Usage:
17
- rails generate workarea:discount NAME [options]
18
-
19
- Options:
20
- [--skip-namespace], [--no-skip-namespace] # Skip namespace (affects only isolated applications)
21
-
22
- Runtime options:
23
- -f, [--force] # Overwrite files that already exist
24
- -p, [--pretend], [--no-pretend] # Run but do not make any changes
25
- -q, [--quiet], [--no-quiet] # Suppress status output
26
- -s, [--skip], [--no-skip] # Skip files that already exist
27
-
28
- Description:
29
- Creates a new custom pricing discount that can be applied to order
30
- totals, shipping totals, products, and other price paths.
31
-
32
- For more information on how to customize this generator, visit:
33
-
34
- http://guides.workarea.com/create-a-custom-discount.html
35
-
36
- Example:
37
- rails generate workarea:discount FreeShipping
38
-
39
- creates:
40
- app/models/workarea/pricing/discount/free_shipping.rb
41
- app/view_models/workarea/admin/discounts/free_shipping_view_model.rb
42
- app/views/workarea/admin/pricing_discounts/properties/_free_shipping.html.haml
43
- app/views/workarea/admin/create_pricing_discounts/_free_shipping.html.haml
44
- test/models/workarea/pricing/discount/free_shipping_test.rb
45
- test/view_models/workarea/admin/discounts/free_shipping_view_model_test.rb
46
- modifies:
47
- config/initializers/workarea.rb
48
- ```
49
-
50
- The generator creates/modifieds all the files necessary to create a new discount. Read on to learn more about those files.
51
-
52
- ## Creating the Model
53
-
54
- Create a new discount model in your app for your discount.
55
-
56
- your\_app/app/models/workarea/pricing/discount/buy\_some\_get\_shipping.rb:
57
-
58
- ```ruby
59
- module Workarea
60
- module Pricing
61
- class Discount
62
- class BuySomeGetShipping < Discount
63
- include FlatOrPercentOff
64
-
65
- # If needed, you could include other condition types here to get
66
- # functionality related to those types
67
- #
68
- # include Conditions::OrderTotal
69
- # include Conditions::PromoCodes
70
-
71
- # Add fields specific to your discount type
72
-
73
- field :shipping_method_id, type: String
74
- field :purchase_quantity, type: Integer
75
-
76
- field :product_ids, type: Array, default: []
77
- list_field :product_ids
78
-
79
- field :category_ids, type: Array, default: []
80
- list_field :category_ids
81
-
82
- # Add validations to ensure the data needed for the discount is present
83
-
84
- validates :purchase_quantity, presence: true
85
- validates :shipping_method_id, presence: true
86
- validate :product_or_category_ids_present
87
-
88
- # Implement model_name so that Rails can generate routes, mappers, etc.
89
-
90
- def self.model_name
91
- Discount.model_name
92
- end
93
-
94
- # Implement apply to fulfill the Workarea::Pricing::Discount contract.
95
- # This method defines what is to be added to the order to reflect the use
96
- # of this discount.
97
-
98
- def apply(order)
99
- order.shipments.each do |shipment|
100
- next unless shipment_matches_shipping_method?(shipment)
101
- apply_to_shipment(shipment)
102
- end
103
- end
104
-
105
- # Set the level at which price changes apply (shipping, item, order, tax)
106
-
107
- self.price_level = 'shipping'
108
-
109
- # Qualifiers are run to determine whether an order meets the criteria needed
110
- # to apply this discount. This includes qualifiers from included conditions
111
- # as well as any defined within the discount itself.
112
-
113
- add_qualifier :matching_shipping_method?
114
- add_qualifier :product_or_category_quantity?
115
-
116
- def matching_shipping_method?(order)
117
- order.shipments.any? do |shipment|
118
- shipment_matches_shipping_method?(shipment)
119
- end
120
- end
121
-
122
- def product_or_category_quantity?(order)
123
- matching_items = order.items.select do |item|
124
- item.matches_categories?(category_ids) ||
125
- item.matches_products?(product_ids)
126
- end
127
- matching_items.sum(&:quantity) >= purchase_quantity
128
- end
129
-
130
- private
131
-
132
- def shipment_matches_shipping_method?(shipment)
133
- shipment.shipping_method.present? &&
134
- shipment.shipping_method.id.present? &&
135
- shipment.shipping_method.id.to_s == shipping_method_id
136
- end
137
-
138
- def apply_to_shipment(shipment)
139
- shipping_total = shipment.price_adjustments.adjusting('shipping').sum
140
- value = amount_calculator.calculate(shipping_total)
141
- return if value < 0
142
-
143
- shipment.adjust_pricing(adjustment_data(value, 1))
144
- end
145
-
146
- def product_or_category_ids_present
147
- if product_ids.blank? && category_ids.blank?
148
- errors.add(
149
- :base,
150
- 'You need to specify products or categories'
151
- )
152
- end
153
- end
154
- end
155
- end
156
- end
157
- end
158
- ```
159
-
160
- ## Creating the View Model
161
-
162
- Each discount type is assumed to have a corresponding view model. The view model will be loaded dynamically in the Admin when a user chooses to create or edit a discount of this type. Use the view model to define methods that gather the data needed to render the discount options and conditions.
163
-
164
- In this example, all that is needed is formatting a collection of shipping method options to select from when setting the discount rules.
165
-
166
- your\_app/app/view\_models/workarea/admin/discounts/buy\_some\_get\_shipping\_view\_model.rb:
167
-
168
- ```ruby
169
- module Workarea
170
- module Admin
171
- module Discounts
172
- class BuySomeGetShippingViewModel < DiscountViewModel
173
- include Products
174
- include Categories
175
-
176
- def shipping_method_options
177
- @shipping_method_options ||= Shipping::Method.all.map do |method|
178
- [method.name, method.id]
179
- end
180
- end
181
- end
182
- end
183
- end
184
- end
185
- ```
186
-
187
- ## Creating the Discount Properties Partial
188
-
189
- Create a partial matching the class name of your discount. This partial is loaded under the 'Discount Rules' section of the Admin edit form.
190
-
191
- For this example, the partial includes the id of the shipping method to discount, the required purchase quantity, and the product or category ids that need to be included in the items in the cart for the discount to apply.
192
-
193
- your\_app/app/views/workarea/admin/pricing\_discounts/properties/\_buy\_some\_get\_shipping.html.haml:
194
-
195
- ```ruby
196
- %p.discount__node-group
197
- %span.discount__node Take
198
- %span.discount__node= select_tag 'discount[amount_type]', options_for_select(@discount.amount_type_options, @discount.amount_type), title: 'Type of Amount'
199
- %span.discount__node= text_field_tag 'discount[amount]', @discount.amount, class: 'text-box text-box--mini', title: 'Amount of Discount', placeholder: '10', required: true
200
- %span.discount__node off
201
- %span.discount__node= select_tag 'discount[shipping_method_id]', options_for_select(@discount.shipping_method_options, @discount.shipping_method_id), title: 'Shipping Method'
202
- %span.discount__node when
203
- %span.discount__node= number_field_tag 'discount[purchase_quantity]', @discount.purchase_quantity || 1, min: '1', class: 'text-box text-box--mini', title: 'Quantity to Qualify', required: true
204
- %span.discount__node of the following
205
- %span.discount__node= select_tag 'discount[product_ids]', options_from_collection_for_select(@discount.products, 'id', 'name', @discount.product_ids), multiple: true, data: { remote_select: { source: catalog_products_path(format: :json), options: { placeholder: 'Product A, Product B' } }.to_json }
206
- %span.discount__node or
207
- %span.discount__node= select_tag 'discount[category_ids]', options_from_collection_for_select(@discount.categories, 'id', 'name', @discount.category_ids), multiple: true, data: { remote_select: { source: catalog_categories_path(format: :json), options: { placeholder: 'Category A, Category B' } }.to_json }
208
- %span.discount__node is purchased.
209
- ```
210
-
211
- ## Adding the Discount to the Discount Types View
212
-
213
- When an administrator chooses to create a new discount, they are next prompted to choose the discount type. You must override this view into your application and add to it your custom discount. The relevant parts of the file are shown below.
214
-
215
- your\_app/app/views/workarea/admin/pricing\_discounts/select\_type.html.haml:
216
-
217
- ```ruby
218
- / ...
219
- = form_tag new_pricing_discount_path, method: 'get', id: 'discount_form' do
220
-
221
- /...
222
-
223
- %tr
224
- %td
225
- %label
226
- = radio_button_tag 'type', 'buy_some_get_shipping'
227
- Buy Some Get Shipping
228
- %td 50% off ground shipping when any of these products are purchased
229
-
230
- .form-actions
231
- .action-group
232
- %p.action-group__item= link_to 'Cancel', :back, class: 'text-button text-button--muted'
233
- %p.action-group__item= button_tag 'Continue', value: 'continue', class: 'button'
234
- ```
@@ -1,131 +0,0 @@
1
- ---
2
- title: Create a New App
3
- excerpt: A quick guide to set up a Workarea application.
4
- ---
5
-
6
- # Create a New App
7
-
8
- This is a quick start guide for getting started on a brand new Workarea application. If you're new to developing on Workarea this is a great place to start. These steps were written with the following assumptions:
9
-
10
- * You have Docker Desktop installed. See [https://www.docker.com/products/docker-desktop](https://www.docker.com/products/docker-desktop) to download.
11
- * You have Ruby >= 2.4.0, < 2.7.0 installed. See [https://github.com/rbenv/rbenv#installation](https://github.com/rbenv/rbenv#installation) for instructions.
12
- * You have NodeJS installed. We recommend using [Homebrew](https://brew.sh).
13
- * You have ImageMagick installed. We recommend using [Homebrew](https://brew.sh).
14
-
15
- For more details, see [Prerequisites and Dependencies](prerequisites-and-dependencies.html).
16
-
17
- ## Create a New Rails Application
18
-
19
- Follow the steps below to quickly set up a new Workarea application.
20
-
21
- ### 1. Create a Rails 5.2 application
22
-
23
- This creates a barebones Rails app for Workarea to install into:
24
-
25
- ```bash
26
- $ mkdir my-store && cd my-store
27
- $ echo "source 'https://rubygems.org'" > Gemfile
28
- $ echo "gem 'rails', '~> 5.2'" >> Gemfile
29
- $ bundle install
30
- $ bundle exec rails new ./ --force \
31
- --skip-spring \
32
- --skip-active-record \
33
- --skip-action-cable \
34
- --skip-puma \
35
- --skip-coffee \
36
- --skip-turbolinks \
37
- --skip-bootsnap \
38
- --skip-yarn \
39
- --skip-bundle
40
- ```
41
-
42
- ### 2. Add Workarea gem
43
-
44
- This adds the Workarea base gem to the project and updates dependencies:
45
-
46
- ```bash
47
- $ echo "gem 'workarea'" >> Gemfile
48
- $ bundle update
49
- ```
50
-
51
- ### 3. Install Workarea into the Rails application
52
-
53
- Workarea ships with an installer generator that will configure the application:
54
-
55
- ```bash
56
- $ bin/rails generate workarea:install
57
- ```
58
-
59
- For more details on what this generator does, see [Installing Workarea](installing.html).
60
-
61
- ### 4. Start Workarea service dependencies
62
-
63
- Workarea relies on a few databases, so there's a task that will start them in Docker containers.
64
- Start Workarea dependencies:
65
-
66
- ```bash
67
- $ bin/rails workarea:services:up
68
- ```
69
-
70
- ### 5. Seed the database
71
-
72
- To do anything useful with Workarea, you'll want some sample data in your database.
73
- The install generator run in step 3 will add Workarea seeds to your `db/seeds.rb` file,
74
- so running Rails seeds will add sample Workarea data.
75
-
76
- ```bash
77
- $ bin/rails db:seeds
78
- ```
79
-
80
- For more details on working with seed data, see [Seeds](seeds.html).
81
-
82
- ### 6. Start the Rails server
83
-
84
- Use the conventional Rails command for starting up the Puma server:
85
-
86
- ```bash
87
- $ bin/rails server
88
- ```
89
-
90
- ### 7. Open the Application in a Browser
91
-
92
- Your Workarea application is ready! Open a browser, and check out `http://localhost:3000`.
93
-
94
-
95
- ## Addendum
96
-
97
- ### 8. Run Tests
98
-
99
- Running tests is a regular part of developing on Workarea. Check out the list of Rails tasks Workarea provides for testing Workarea:
100
-
101
- ```bash
102
- $ bin/rails -T workarea:test
103
- rails workarea:test # Run workarea tests (with decorators)
104
- rails workarea:test:admin # Run workarea admin tests (with decorators)
105
- rails workarea:test:app # Run all app specific tests
106
- rails workarea:test:core # Run workarea/core tests (with decorators)
107
- rails workarea:test:decorated # Run decorated tests
108
- rails workarea:test:performance # Run workarea performance tests (with decorators)
109
- rails workarea:test:plugins # Run all installed workarea plugin tests (with decorators)
110
- rails workarea:test:storefront # Run workarea storefront tests (with decorators)
111
- ```
112
-
113
- This will run the Workarea test suite:
114
-
115
- ```bash
116
- $ bin/rails workarea:test
117
- ```
118
-
119
- For more details on Workarea's testing functionality, see [Testing](testing.html).
120
-
121
- ### 9. Stop the Services
122
-
123
- After developing and testing, you may want to stop the services to conserve resources on your machine.
124
-
125
- Run the command to stop the services Workarea has started for you:
126
-
127
- ```bash
128
- $ bin/rails workarea:services:down
129
- ```
130
-
131
- Note that the volumes these containers used will still be available, and you won't have to seed again the next time you start them.
@@ -1,19 +0,0 @@
1
- ---
2
- title: Create a Plugin
3
- created_at: 2018/09/17
4
- excerpt: To create a Workarea plugin, use the rails plugin new command with a Workarea plugin template.
5
- ---
6
-
7
- # Create a Plugin
8
-
9
- To create a Workarea plugin, use the _rails plugin new_ command with a Workarea plugin template.
10
-
11
- ```bash
12
- $ rails plugin new path/to/my_plugin --full -m path/to/plugin_template.rb --skip-spring --skip-active-record --skip-action-cable
13
- ```
14
-
15
- This template can be found in the [workarea repository](https://github.com/workarea-commerce/workarea) at [https://github.com/workarea-commerce/workarea/blob/master/plugin_template.rb](https://github.com/workarea-commerce/workarea/blob/master/plugin_template.rb).
16
-
17
- After creating the plugin, edit the gemspec file to set relevant plugin meta data.
18
-
19
- Plugins may be developed within their own git repository or as part of an existing repository, such as a host application built on the Workarea platform. If developing the plugin within an existing repository, be sure to change the `s.files` logic within the gemspec to include only files relevant to the plugin. For example, `Dir.glob` over a given array of directory globs rather than including all files with `git ls-files`.
@@ -1,71 +0,0 @@
1
- ---
2
- title: Create a Style Guide
3
- excerpt: To add a style guide, use the style guide generator.
4
- ---
5
-
6
- # Create a Style Guide
7
-
8
- To add a [style guide](style-guides.html), use the style guide generator.
9
-
10
- Run the generator without arguments to view help:
11
-
12
- ```
13
- cd path/to/your_app
14
- bin/rails g workarea:style_guide
15
- ```
16
-
17
- Your results will look something like this:
18
-
19
- ```
20
- Usage:
21
- rails generate workarea:style_guide ENGINE SECTION NAME [options]
22
-
23
- Runtime options:
24
- -f, [--force] # Overwrite files that already exist
25
- -p, [--pretend], [--no-pretend] # Run but do not make any changes
26
- -q, [--quiet], [--no-quiet] # Suppress status output
27
- -s, [--skip], [--no-skip] # Skip files that already exist
28
-
29
- Options:
30
- ENGINE is either:
31
- - admin
32
- - storefront
33
-
34
- SECTION is an existing section, the workarea gem offers these sections out of the box:
35
- - settings
36
- - base
37
- - typography
38
- - objects
39
- - components
40
- - trumps
41
-
42
- NAME is the name of your partial, separated with dashes:
43
- - button
44
- - button--large
45
- - table--prices
46
-
47
- Description:
48
- Creates a new Style Guide entry for your application.
49
-
50
- Examples:
51
- rails g workarea:style_guide storefront components button
52
- rails g workarea:style_guide admin components button--large
53
- ```
54
-
55
- ## Style Guide Partial Paths
56
-
57
- The style guide generator creates a new style guide partial at the correct path in your app (corresponding to the arguments you pass it).
58
-
59
- For example, the partial for an Admin component goes here:
60
-
61
- ```
62
- your_app/views/workarea/admin/style_guides/components/_foo.html.haml
63
- ```
64
-
65
- The contents of that partial are viewable in the browser at the following paths:
66
-
67
- ```
68
- /admin/style_guides
69
- /admin/style_guides/components/foo
70
- ```
71
-