diff --git a/composer.json b/composer.json
index 6343b11b..bd882b07 100644
--- a/composer.json
+++ b/composer.json
@@ -23,6 +23,7 @@
"drupal/amswap": "^2.0",
"drupal/auto_entitylabel": "2.x-dev",
"drupal/commerce": "^2.12",
+ "drupal/commerce_cart_api": "^1.4",
"drupal/commerce_license": "^2.0@alpha",
"drupal/commerce_migrate": "^2.0",
"drupal/commerce_monetico": "^1.0",
diff --git a/composer.lock b/composer.lock
index ebfef1b5..1208e1e4 100644
--- a/composer.lock
+++ b/composer.lock
@@ -4,7 +4,7 @@
"Read more about it at https://getcomposer.org/doc/01-basic-usage.md#installing-dependencies",
"This file is @generated automatically"
],
- "content-hash": "7e10b3f48a875330ee707d7cee2bac93",
+ "content-hash": "bee8de31ae3bb4fa7aa201097983403f",
"packages": [
{
"name": "alchemy/zippy",
@@ -3431,6 +3431,59 @@
"source": "https://git.drupalcode.org/project/commerce"
}
},
+ {
+ "name": "drupal/commerce_cart_api",
+ "version": "1.4.0",
+ "source": {
+ "type": "git",
+ "url": "https://git.drupalcode.org/project/commerce_cart_api.git",
+ "reference": "8.x-1.4"
+ },
+ "dist": {
+ "type": "zip",
+ "url": "https://ftp.drupal.org/files/projects/commerce_cart_api-8.x-1.4.zip",
+ "reference": "8.x-1.4",
+ "shasum": "59dc0e713ac3a946b940707a93726b52e1f59e62"
+ },
+ "require": {
+ "drupal/commerce": "^2.13",
+ "drupal/commerce_cart": "*",
+ "drupal/core": "*"
+ },
+ "type": "drupal-module",
+ "extra": {
+ "branch-alias": {
+ "dev-1.x": "1.x-dev"
+ },
+ "drupal": {
+ "version": "8.x-1.4",
+ "datestamp": "1560966488",
+ "security-coverage": {
+ "status": "covered",
+ "message": "Covered by Drupal's security advisory policy"
+ }
+ }
+ },
+ "notification-url": "https://packages.drupal.org/8/downloads",
+ "license": [
+ "GPL-2.0+"
+ ],
+ "authors": [
+ {
+ "name": "mglaman",
+ "homepage": "https://www.drupal.org/user/2416470"
+ }
+ ],
+ "description": "Provides a RESTful interface to interact with carts in Drupal Commerce via a lightweight public API.",
+ "homepage": "https://www.drupal.org/project/commerce_cart_api",
+ "keywords": [
+ "Drupal"
+ ],
+ "support": {
+ "source": "http://cgit.drupalcode.org/commerce_cart_api",
+ "issues": "https://www.drupal.org/project/issues/commerce_cart_api"
+ }
+ },
{
"name": "drupal/commerce_checkout",
"version": "2.13.0",
diff --git a/config/sync/block.block.cart.yml b/config/sync/block.block.cart.yml
new file mode 100644
index 00000000..d12867cd
--- /dev/null
+++ b/config/sync/block.block.cart.yml
@@ -0,0 +1,21 @@
+uuid: 90f98c52-9624-4758-9c38-3904d5ef5faa
+langcode: en
+status: true
+dependencies:
+ module:
+ - commerce_cart
+ theme:
+ - materiotheme
+id: cart
+theme: materiotheme
+region: header_right
+weight: 0
+provider: null
+plugin: commerce_cart
+settings:
+ id: commerce_cart
+ label: Cart
+ provider: commerce_cart
+ label_display: visible
+ dropdown: true
+visibility: { }
diff --git a/config/sync/commerce_store.settings.yml b/config/sync/commerce_store.settings.yml
index 76d8edcc..5fb70902 100644
--- a/config/sync/commerce_store.settings.yml
+++ b/config/sync/commerce_store.settings.yml
@@ -1,3 +1,3 @@
-default_store: bb23cf22-6a06-4f8d-88fc-0998f15ff2d0
+default_store: 8efb0192-cf8d-4aaa-86e3-01ffd5e09bb8
_core:
default_config_hash: B9ZFGR76POyzj9f3Sh66F346_Jp-wnnUc78Hk3Q-60o
diff --git a/config/sync/core.entity_form_display.commerce_product_variation.materio_product_variation_type.default.yml b/config/sync/core.entity_form_display.commerce_product_variation.materio_product_variation_type.default.yml
index b4b16dd3..9ab3ac88 100644
--- a/config/sync/core.entity_form_display.commerce_product_variation.materio_product_variation_type.default.yml
+++ b/config/sync/core.entity_form_display.commerce_product_variation.materio_product_variation_type.default.yml
@@ -6,6 +6,7 @@ dependencies:
- commerce_product.commerce_product_variation_type.materio_product_variation_type
- field.field.commerce_product_variation.materio_product_variation_type.billing_schedule
- field.field.commerce_product_variation.materio_product_variation_type.field_description
+ - field.field.commerce_product_variation.materio_product_variation_type.field_multiple
- field.field.commerce_product_variation.materio_product_variation_type.license_expiration
- field.field.commerce_product_variation.materio_product_variation_type.license_type
- field.field.commerce_product_variation.materio_product_variation_type.subscription_type
@@ -32,6 +33,13 @@ content:
third_party_settings: { }
type: text_textarea
region: content
+ field_multiple:
+ weight: 93
+ settings:
+ display_label: true
+ third_party_settings: { }
+ type: boolean_checkbox
+ region: content
langcode:
type: language_select
weight: 2
diff --git a/config/sync/core.entity_view_display.commerce_product_variation.materio_product_variation_type.add_to_cart.yml b/config/sync/core.entity_view_display.commerce_product_variation.materio_product_variation_type.add_to_cart.yml
new file mode 100644
index 00000000..582ecf30
--- /dev/null
+++ b/config/sync/core.entity_view_display.commerce_product_variation.materio_product_variation_type.add_to_cart.yml
@@ -0,0 +1,40 @@
+uuid: 670c3437-b44c-4bc9-b7f6-ec0b12d5c7ab
+langcode: en
+status: true
+dependencies:
+ config:
+ - commerce_product.commerce_product_variation_type.materio_product_variation_type
+ - core.entity_view_mode.commerce_product_variation.add_to_cart
+ - field.field.commerce_product_variation.materio_product_variation_type.billing_schedule
+ - field.field.commerce_product_variation.materio_product_variation_type.field_description
+ - field.field.commerce_product_variation.materio_product_variation_type.license_expiration
+ - field.field.commerce_product_variation.materio_product_variation_type.license_type
+ - field.field.commerce_product_variation.materio_product_variation_type.subscription_type
+ module:
+ - commerce_variation_cart_form
+third_party_settings:
+ commerce_variation_cart_form:
+ combine: '1'
+id: commerce_product_variation.materio_product_variation_type.add_to_cart
+targetEntityType: commerce_product_variation
+bundle: materio_product_variation_type
+mode: add_to_cart
+content:
+ commerce_variation_cart_form:
+ weight: 0
+ region: content
+ settings: { }
+ third_party_settings: { }
+hidden:
+ billing_schedule: true
+ field_description: true
+ langcode: true
+ license_expiration: true
+ license_type: true
+ list_price: true
+ price: true
+ product_id: true
+ search_api_excerpt: true
+ sku: true
+ subscription_type: true
+ title: true
diff --git a/config/sync/core.entity_view_display.commerce_product_variation.materio_product_variation_type.default.yml b/config/sync/core.entity_view_display.commerce_product_variation.materio_product_variation_type.default.yml
index cc8d7ddb..1e0c2c12 100644
--- a/config/sync/core.entity_view_display.commerce_product_variation.materio_product_variation_type.default.yml
+++ b/config/sync/core.entity_view_display.commerce_product_variation.materio_product_variation_type.default.yml
@@ -6,6 +6,7 @@ dependencies:
- commerce_product.commerce_product_variation_type.materio_product_variation_type
- field.field.commerce_product_variation.materio_product_variation_type.billing_schedule
- field.field.commerce_product_variation.materio_product_variation_type.field_description
+ - field.field.commerce_product_variation.materio_product_variation_type.field_multiple
- field.field.commerce_product_variation.materio_product_variation_type.license_expiration
- field.field.commerce_product_variation.materio_product_variation_type.license_type
- field.field.commerce_product_variation.materio_product_variation_type.subscription_type
@@ -33,6 +34,16 @@ content:
third_party_settings: { }
type: text_default
region: content
+ field_multiple:
+ weight: 4
+ label: above
+ settings:
+ format: default
+ format_custom_false: ''
+ format_custom_true: ''
+ third_party_settings: { }
+ type: boolean
+ region: content
price:
label: hidden
type: commerce_price_default
@@ -57,5 +68,6 @@ hidden:
license_type: true
list_price: true
product_id: true
+ search_api_excerpt: true
sku: true
subscription_type: true
diff --git a/config/sync/core.entity_view_mode.commerce_product_variation.add_to_cart.yml b/config/sync/core.entity_view_mode.commerce_product_variation.add_to_cart.yml
new file mode 100644
index 00000000..5122c044
--- /dev/null
+++ b/config/sync/core.entity_view_mode.commerce_product_variation.add_to_cart.yml
@@ -0,0 +1,10 @@
+uuid: f0ae2b16-c0cd-4fcd-bc2d-4920dce0b9ec
+langcode: en
+status: true
+dependencies:
+ module:
+ - commerce_product
+id: commerce_product_variation.add_to_cart
+label: 'add to cart'
+targetEntityType: commerce_product_variation
+cache: true
diff --git a/config/sync/core.extension.yml b/config/sync/core.extension.yml
index 07a01f4b..ccc70875 100644
--- a/config/sync/core.extension.yml
+++ b/config/sync/core.extension.yml
@@ -19,6 +19,7 @@ module:
ckeditor: 0
commerce: 0
commerce_cart: 0
+ commerce_cart_api: 0
commerce_checkout: 0
commerce_cmcic: 0
commerce_license: 0
diff --git a/config/sync/field.field.commerce_product_variation.materio_product_variation_type.field_multiple.yml b/config/sync/field.field.commerce_product_variation.materio_product_variation_type.field_multiple.yml
new file mode 100644
index 00000000..6dd63dfa
--- /dev/null
+++ b/config/sync/field.field.commerce_product_variation.materio_product_variation_type.field_multiple.yml
@@ -0,0 +1,23 @@
+uuid: 915cd4b9-78c4-495b-abec-38923c6d71d3
+langcode: en
+status: true
+dependencies:
+ config:
+ - commerce_product.commerce_product_variation_type.materio_product_variation_type
+ - field.storage.commerce_product_variation.field_multiple
+id: commerce_product_variation.materio_product_variation_type.field_multiple
+field_name: field_multiple
+entity_type: commerce_product_variation
+bundle: materio_product_variation_type
+label: multiple
+description: ''
+required: false
+translatable: false
+default_value:
+ -
+ value: 0
+default_value_callback: ''
+settings:
+ on_label: 'On'
+ off_label: 'Off'
+field_type: boolean
diff --git a/config/sync/field.storage.commerce_product_variation.field_multiple.yml b/config/sync/field.storage.commerce_product_variation.field_multiple.yml
new file mode 100644
index 00000000..f11ba3b3
--- /dev/null
+++ b/config/sync/field.storage.commerce_product_variation.field_multiple.yml
@@ -0,0 +1,18 @@
+uuid: d33342d9-6be2-4dd9-97fe-736ddbaa7deb
+langcode: en
+status: true
+dependencies:
+ module:
+ - commerce_product
+id: commerce_product_variation.field_multiple
+field_name: field_multiple
+entity_type: commerce_product_variation
+type: boolean
+settings: { }
+module: core
+locked: false
+cardinality: 1
+translatable: true
+indexes: { }
+persist_with_no_fields: false
+custom_storage: false
diff --git a/config/sync/rest.resource.commerce_cart_add.yml b/config/sync/rest.resource.commerce_cart_add.yml
new file mode 100644
index 00000000..c1079aef
--- /dev/null
+++ b/config/sync/rest.resource.commerce_cart_add.yml
@@ -0,0 +1,20 @@
+uuid: 3f812527-927a-4c9c-ab9f-178013a83a1f
+langcode: en
+status: true
+dependencies:
+ module:
+ - commerce_cart_api
+ - serialization
+ - user
+_core:
+ default_config_hash: LptJMeSNAYdcJ0FCczBiIiAvSs3pgfeITgwPlUR5LmM
+id: commerce_cart_add
+plugin_id: commerce_cart_add
+granularity: resource
+configuration:
+ methods:
+ - POST
+ formats:
+ - json
+ authentication:
+ - cookie
diff --git a/config/sync/rest.resource.commerce_cart_canonical.yml b/config/sync/rest.resource.commerce_cart_canonical.yml
new file mode 100644
index 00000000..682404a7
--- /dev/null
+++ b/config/sync/rest.resource.commerce_cart_canonical.yml
@@ -0,0 +1,20 @@
+uuid: 4ce9498b-f336-4291-96f2-af4da7fe5509
+langcode: en
+status: true
+dependencies:
+ module:
+ - commerce_cart_api
+ - serialization
+ - user
+_core:
+ default_config_hash: 4nYqayd8aO5e2acUdQAIbm5_cWyLV2Z5pdVB9eM_L-U
+id: commerce_cart_canonical
+plugin_id: commerce_cart_canonical
+granularity: resource
+configuration:
+ methods:
+ - GET
+ formats:
+ - json
+ authentication:
+ - cookie
diff --git a/config/sync/rest.resource.commerce_cart_clear.yml b/config/sync/rest.resource.commerce_cart_clear.yml
new file mode 100644
index 00000000..4465424e
--- /dev/null
+++ b/config/sync/rest.resource.commerce_cart_clear.yml
@@ -0,0 +1,20 @@
+uuid: 599fc55b-d435-4f54-90dc-51ff1a53b6cb
+langcode: en
+status: true
+dependencies:
+ module:
+ - commerce_cart_api
+ - serialization
+ - user
+_core:
+ default_config_hash: gFt_6Zv9JEPLa560_rsfsqrQC21_LQ6becnJMNjUIpM
+id: commerce_cart_clear
+plugin_id: commerce_cart_clear
+granularity: resource
+configuration:
+ methods:
+ - DELETE
+ formats:
+ - json
+ authentication:
+ - cookie
diff --git a/config/sync/rest.resource.commerce_cart_collection.yml b/config/sync/rest.resource.commerce_cart_collection.yml
new file mode 100644
index 00000000..7b9f93f0
--- /dev/null
+++ b/config/sync/rest.resource.commerce_cart_collection.yml
@@ -0,0 +1,20 @@
+uuid: 78d0e03d-34a3-4f1c-805e-54855769a65e
+langcode: en
+status: true
+dependencies:
+ module:
+ - commerce_cart_api
+ - serialization
+ - user
+_core:
+ default_config_hash: hmTTiE7SFlCqDYrx7_F-rWrUkDx2GrFg3wN6BcIq5xc
+id: commerce_cart_collection
+plugin_id: commerce_cart_collection
+granularity: resource
+configuration:
+ methods:
+ - GET
+ formats:
+ - json
+ authentication:
+ - cookie
diff --git a/config/sync/rest.resource.commerce_cart_coupons.yml b/config/sync/rest.resource.commerce_cart_coupons.yml
new file mode 100644
index 00000000..26dc42c5
--- /dev/null
+++ b/config/sync/rest.resource.commerce_cart_coupons.yml
@@ -0,0 +1,22 @@
+uuid: 0fb1c3c3-fb23-48e1-b838-61301c101257
+langcode: en
+status: true
+dependencies:
+ module:
+ - commerce_cart_api
+ - serialization
+ - user
+_core:
+ default_config_hash: '-VZFihnbsF6hEpC1DV9RX_b3dI4QQkqGTNiv6qMTbkA'
+id: commerce_cart_coupons
+plugin_id: commerce_cart_coupons
+granularity: resource
+configuration:
+ methods:
+ - GET
+ - PATCH
+ - DELETE
+ formats:
+ - json
+ authentication:
+ - cookie
diff --git a/config/sync/rest.resource.commerce_cart_remove_item.yml b/config/sync/rest.resource.commerce_cart_remove_item.yml
new file mode 100644
index 00000000..8e9586f3
--- /dev/null
+++ b/config/sync/rest.resource.commerce_cart_remove_item.yml
@@ -0,0 +1,20 @@
+uuid: 2aaeb0f0-aba3-4906-9ee5-6770f5c3e2b0
+langcode: en
+status: true
+dependencies:
+ module:
+ - commerce_cart_api
+ - serialization
+ - user
+_core:
+ default_config_hash: cQORBV4olEqxQT9k7Z9gmobi4AUuEahhxC32K8CprOQ
+id: commerce_cart_remove_item
+plugin_id: commerce_cart_remove_item
+granularity: resource
+configuration:
+ methods:
+ - DELETE
+ formats:
+ - json
+ authentication:
+ - cookie
diff --git a/config/sync/rest.resource.commerce_cart_update_item.yml b/config/sync/rest.resource.commerce_cart_update_item.yml
new file mode 100644
index 00000000..90d5400e
--- /dev/null
+++ b/config/sync/rest.resource.commerce_cart_update_item.yml
@@ -0,0 +1,20 @@
+uuid: 16dcbb19-336e-4d95-a015-a06afdc61af6
+langcode: en
+status: true
+dependencies:
+ module:
+ - commerce_cart_api
+ - serialization
+ - user
+_core:
+ default_config_hash: WqYdG4xXtHm4Ok5hm8eKZIdWyoZ2icbbjm88ZEWLQXs
+id: commerce_cart_update_item
+plugin_id: commerce_cart_update_item
+granularity: resource
+configuration:
+ methods:
+ - PATCH
+ formats:
+ - json
+ authentication:
+ - cookie
diff --git a/config/sync/rest.resource.commerce_cart_update_items.yml b/config/sync/rest.resource.commerce_cart_update_items.yml
new file mode 100644
index 00000000..c5f83ff7
--- /dev/null
+++ b/config/sync/rest.resource.commerce_cart_update_items.yml
@@ -0,0 +1,20 @@
+uuid: 081147a6-6299-40d1-907a-8f4e6e67d24d
+langcode: en
+status: true
+dependencies:
+ module:
+ - commerce_cart_api
+ - serialization
+ - user
+_core:
+ default_config_hash: cEt7qeWXge5-KBeMTZViFP-KX7AqedUbSpxGS43GFDA
+id: commerce_cart_update_items
+plugin_id: commerce_cart_update_items
+granularity: resource
+configuration:
+ methods:
+ - PATCH
+ formats:
+ - json
+ authentication:
+ - cookie
diff --git a/config/sync/views.view.blabla.yml b/config/sync/views.view.blabla.yml
index 8cd9365e..8245852e 100644
--- a/config/sync/views.view.blabla.yml
+++ b/config/sync/views.view.blabla.yml
@@ -24,7 +24,7 @@ id: blabla
label: Blabla
module: views
description: ''
-tag: ''
+tag: Materio
base_table: node_field_data
base_field: nid
core: 8.x
diff --git a/config/sync/views.view.pricing.yml b/config/sync/views.view.pricing.yml
new file mode 100644
index 00000000..4975e33e
--- /dev/null
+++ b/config/sync/views.view.pricing.yml
@@ -0,0 +1,633 @@
+uuid: 85b6fa75-c392-415a-9e3f-58322aeba35f
+langcode: en
+status: true
+dependencies:
+ config:
+ - commerce_product.commerce_product_variation_type.materio_product_variation_type
+ - field.storage.commerce_product_variation.field_description
+ - field.storage.commerce_product_variation.field_multiple
+ - system.menu.header
+ module:
+ - commerce
+ - commerce_price
+ - commerce_product
+ - rest
+ - serialization
+ - text
+id: pricing
+label: Pricing
+module: views
+description: ''
+tag: ''
+base_table: commerce_product_variation_field_data
+base_field: variation_id
+core: 8.x
+display:
+ default:
+ display_plugin: default
+ id: default
+ display_title: Master
+ position: 0
+ display_options:
+ access:
+ type: none
+ options: { }
+ cache:
+ type: tag
+ options: { }
+ query:
+ type: views_query
+ options:
+ disable_sql_rewrite: false
+ distinct: false
+ replica: false
+ query_comment: ''
+ query_tags: { }
+ exposed_form:
+ type: basic
+ options:
+ submit_button: Apply
+ reset_button: false
+ reset_button_label: Reset
+ exposed_sorts_label: 'Sort by'
+ expose_sort_order: true
+ sort_asc_label: Asc
+ sort_desc_label: Desc
+ pager:
+ type: mini
+ options:
+ items_per_page: 10
+ offset: 0
+ id: 0
+ total_pages: null
+ expose:
+ items_per_page: false
+ items_per_page_label: 'Items per page'
+ items_per_page_options: '5, 10, 25, 50'
+ items_per_page_options_all: false
+ items_per_page_options_all_label: '- All -'
+ offset: false
+ offset_label: Offset
+ tags:
+ previous: ‹‹
+ next: ››
+ style:
+ type: default
+ row:
+ type: fields
+ fields:
+ variation_id:
+ id: variation_id
+ table: commerce_product_variation_field_data
+ field: variation_id
+ relationship: none
+ group_type: group
+ admin_label: ''
+ label: ''
+ exclude: false
+ alter:
+ alter_text: false
+ text: ''
+ make_link: false
+ path: ''
+ absolute: false
+ external: false
+ replace_spaces: false
+ path_case: none
+ trim_whitespace: false
+ alt: ''
+ rel: ''
+ link_class: ''
+ prefix: ''
+ suffix: ''
+ target: ''
+ nl2br: false
+ max_length: 0
+ word_boundary: true
+ ellipsis: true
+ more_link: false
+ more_link_text: ''
+ more_link_path: ''
+ strip_tags: false
+ trim: false
+ preserve_tags: ''
+ html: false
+ element_type: ''
+ element_class: ''
+ element_label_type: ''
+ element_label_class: ''
+ element_label_colon: false
+ element_wrapper_type: ''
+ element_wrapper_class: ''
+ element_default_classes: true
+ empty: ''
+ hide_empty: false
+ empty_zero: false
+ hide_alter_empty: true
+ click_sort_column: value
+ type: number_integer
+ settings:
+ thousand_separator: ''
+ prefix_suffix: true
+ group_column: value
+ group_columns: { }
+ group_rows: true
+ delta_limit: 0
+ delta_offset: 0
+ delta_reversed: false
+ delta_first_last: false
+ multi_type: separator
+ separator: ', '
+ field_api_classes: false
+ entity_type: commerce_product_variation
+ entity_field: variation_id
+ plugin_id: field
+ uuid:
+ id: uuid
+ table: commerce_product_variation
+ field: uuid
+ relationship: none
+ group_type: group
+ admin_label: ''
+ label: ''
+ exclude: false
+ alter:
+ alter_text: false
+ text: ''
+ make_link: false
+ path: ''
+ absolute: false
+ external: false
+ replace_spaces: false
+ path_case: none
+ trim_whitespace: false
+ alt: ''
+ rel: ''
+ link_class: ''
+ prefix: ''
+ suffix: ''
+ target: ''
+ nl2br: false
+ max_length: 0
+ word_boundary: true
+ ellipsis: true
+ more_link: false
+ more_link_text: ''
+ more_link_path: ''
+ strip_tags: false
+ trim: false
+ preserve_tags: ''
+ html: false
+ element_type: ''
+ element_class: ''
+ element_label_type: ''
+ element_label_class: ''
+ element_label_colon: false
+ element_wrapper_type: ''
+ element_wrapper_class: ''
+ element_default_classes: true
+ empty: ''
+ hide_empty: false
+ empty_zero: false
+ hide_alter_empty: true
+ click_sort_column: value
+ type: string
+ settings:
+ link_to_entity: false
+ group_column: value
+ group_columns: { }
+ group_rows: true
+ delta_limit: 0
+ delta_offset: 0
+ delta_reversed: false
+ delta_first_last: false
+ multi_type: separator
+ separator: ', '
+ field_api_classes: false
+ entity_type: commerce_product_variation
+ entity_field: uuid
+ plugin_id: field
+ title:
+ id: title
+ table: commerce_product_variation_field_data
+ field: title
+ relationship: none
+ group_type: group
+ admin_label: ''
+ label: ''
+ exclude: false
+ alter:
+ alter_text: false
+ text: ''
+ make_link: false
+ path: ''
+ absolute: false
+ external: false
+ replace_spaces: false
+ path_case: none
+ trim_whitespace: false
+ alt: ''
+ rel: ''
+ link_class: ''
+ prefix: ''
+ suffix: ''
+ target: ''
+ nl2br: false
+ max_length: 0
+ word_boundary: true
+ ellipsis: true
+ more_link: false
+ more_link_text: ''
+ more_link_path: ''
+ strip_tags: false
+ trim: false
+ preserve_tags: ''
+ html: false
+ element_type: ''
+ element_class: ''
+ element_label_type: ''
+ element_label_class: ''
+ element_label_colon: false
+ element_wrapper_type: ''
+ element_wrapper_class: ''
+ element_default_classes: true
+ empty: ''
+ hide_empty: false
+ empty_zero: false
+ hide_alter_empty: true
+ click_sort_column: value
+ type: string
+ settings:
+ link_to_entity: false
+ group_column: value
+ group_columns: { }
+ group_rows: true
+ delta_limit: 0
+ delta_offset: 0
+ delta_reversed: false
+ delta_first_last: false
+ multi_type: separator
+ separator: ', '
+ field_api_classes: false
+ entity_type: commerce_product_variation
+ entity_field: title
+ plugin_id: field
+ field_description:
+ id: field_description
+ table: commerce_product_variation__field_description
+ field: field_description
+ relationship: none
+ group_type: group
+ admin_label: ''
+ label: ''
+ exclude: false
+ alter:
+ alter_text: false
+ text: ''
+ make_link: false
+ path: ''
+ absolute: false
+ external: false
+ replace_spaces: false
+ path_case: none
+ trim_whitespace: false
+ alt: ''
+ rel: ''
+ link_class: ''
+ prefix: ''
+ suffix: ''
+ target: ''
+ nl2br: false
+ max_length: 0
+ word_boundary: true
+ ellipsis: true
+ more_link: false
+ more_link_text: ''
+ more_link_path: ''
+ strip_tags: false
+ trim: false
+ preserve_tags: ''
+ html: false
+ element_type: ''
+ element_class: ''
+ element_label_type: ''
+ element_label_class: ''
+ element_label_colon: false
+ element_wrapper_type: ''
+ element_wrapper_class: ''
+ element_default_classes: true
+ empty: ''
+ hide_empty: false
+ empty_zero: false
+ hide_alter_empty: true
+ click_sort_column: value
+ type: text_default
+ settings: { }
+ group_column: value
+ group_columns: { }
+ group_rows: true
+ delta_limit: 0
+ delta_offset: 0
+ delta_reversed: false
+ delta_first_last: false
+ multi_type: separator
+ separator: ', '
+ field_api_classes: false
+ plugin_id: field
+ price__number:
+ id: price__number
+ table: commerce_product_variation_field_data
+ field: price__number
+ relationship: none
+ group_type: group
+ admin_label: ''
+ label: ''
+ exclude: false
+ alter:
+ alter_text: false
+ text: ''
+ make_link: false
+ path: ''
+ absolute: false
+ external: false
+ replace_spaces: false
+ path_case: none
+ trim_whitespace: false
+ alt: ''
+ rel: ''
+ link_class: ''
+ prefix: ''
+ suffix: ''
+ target: ''
+ nl2br: false
+ max_length: 0
+ word_boundary: true
+ ellipsis: true
+ more_link: false
+ more_link_text: ''
+ more_link_path: ''
+ strip_tags: false
+ trim: false
+ preserve_tags: ''
+ html: false
+ element_type: ''
+ element_class: ''
+ element_label_type: ''
+ element_label_class: ''
+ element_label_colon: false
+ element_wrapper_type: ''
+ element_wrapper_class: ''
+ element_default_classes: true
+ empty: ''
+ hide_empty: false
+ empty_zero: false
+ hide_alter_empty: true
+ click_sort_column: number
+ type: commerce_price_default
+ settings:
+ strip_trailing_zeroes: false
+ currency_display: symbol
+ group_column: ''
+ group_columns: { }
+ group_rows: true
+ delta_limit: 0
+ delta_offset: 0
+ delta_reversed: false
+ delta_first_last: false
+ multi_type: separator
+ separator: ', '
+ field_api_classes: false
+ entity_type: commerce_product_variation
+ entity_field: price
+ plugin_id: field
+ field_multiple:
+ id: field_multiple
+ table: commerce_product_variation__field_multiple
+ field: field_multiple
+ relationship: none
+ group_type: group
+ admin_label: ''
+ label: ''
+ exclude: false
+ alter:
+ alter_text: false
+ text: ''
+ make_link: false
+ path: ''
+ absolute: false
+ external: false
+ replace_spaces: false
+ path_case: none
+ trim_whitespace: false
+ alt: ''
+ rel: ''
+ link_class: ''
+ prefix: ''
+ suffix: ''
+ target: ''
+ nl2br: false
+ max_length: 0
+ word_boundary: true
+ ellipsis: true
+ more_link: false
+ more_link_text: ''
+ more_link_path: ''
+ strip_tags: false
+ trim: false
+ preserve_tags: ''
+ html: false
+ element_type: ''
+ element_class: ''
+ element_label_type: ''
+ element_label_class: ''
+ element_label_colon: false
+ element_wrapper_type: ''
+ element_wrapper_class: ''
+ element_default_classes: true
+ empty: ''
+ hide_empty: false
+ empty_zero: false
+ hide_alter_empty: true
+ click_sort_column: value
+ type: boolean
+ settings:
+ format: boolean
+ format_custom_true: ''
+ format_custom_false: ''
+ group_column: value
+ group_columns: { }
+ group_rows: true
+ delta_limit: 0
+ delta_offset: 0
+ delta_reversed: false
+ delta_first_last: false
+ multi_type: separator
+ separator: ', '
+ field_api_classes: false
+ plugin_id: field
+ filters:
+ status:
+ value: '1'
+ table: commerce_product_variation_field_data
+ field: status
+ plugin_id: boolean
+ entity_type: commerce_product_variation
+ entity_field: status
+ id: status
+ expose:
+ operator: ''
+ group: 1
+ type:
+ id: type
+ table: commerce_product_variation_field_data
+ field: type
+ value:
+ materio_product_variation_type: materio_product_variation_type
+ entity_type: commerce_product_variation
+ entity_field: type
+ plugin_id: commerce_entity_bundle
+ sorts: { }
+ title: Pricing
+ header: { }
+ footer: { }
+ empty: { }
+ relationships: { }
+ arguments: { }
+ display_extenders: { }
+ cache_metadata:
+ max-age: -1
+ contexts:
+ - 'languages:language_content'
+ - 'languages:language_interface'
+ - url.query_args
+ tags:
+ - 'config:field.storage.commerce_product_variation.field_description'
+ - 'config:field.storage.commerce_product_variation.field_multiple'
+ page_1:
+ display_plugin: page
+ id: page_1
+ display_title: Page
+ position: 1
+ display_options:
+ display_extenders:
+ views_ef_fieldset: { }
+ path: pricing
+ menu:
+ type: normal
+ title: Pricing
+ menu_name: header
+ fields:
+ rendered_entity:
+ id: rendered_entity
+ table: commerce_product_variation
+ field: rendered_entity
+ relationship: none
+ group_type: group
+ admin_label: ''
+ label: ''
+ exclude: false
+ alter:
+ alter_text: false
+ text: ''
+ make_link: false
+ path: ''
+ absolute: false
+ external: false
+ replace_spaces: false
+ path_case: none
+ trim_whitespace: false
+ alt: ''
+ rel: ''
+ link_class: ''
+ prefix: ''
+ suffix: ''
+ target: ''
+ nl2br: false
+ max_length: 0
+ word_boundary: true
+ ellipsis: true
+ more_link: false
+ more_link_text: ''
+ more_link_path: ''
+ strip_tags: false
+ trim: false
+ preserve_tags: ''
+ html: false
+ element_type: ''
+ element_class: ''
+ element_label_type: ''
+ element_label_class: ''
+ element_label_colon: false
+ element_wrapper_type: ''
+ element_wrapper_class: ''
+ element_default_classes: true
+ empty: ''
+ hide_empty: false
+ empty_zero: false
+ hide_alter_empty: true
+ view_mode: default
+ entity_type: commerce_product_variation
+ plugin_id: rendered_entity
+ defaults:
+ fields: false
+ cache_metadata:
+ max-age: -1
+ contexts:
+ - 'languages:language_interface'
+ - url.query_args
+ tags:
+ - 'config:core.entity_view_display.commerce_product_variation.default.cart'
+ - 'config:core.entity_view_display.commerce_product_variation.default.summary'
+ - 'config:core.entity_view_display.commerce_product_variation.materio_product_variation_type.add_to_cart'
+ - 'config:core.entity_view_display.commerce_product_variation.materio_product_variation_type.default'
+ rest_export_1:
+ display_plugin: rest_export
+ id: rest_export_1
+ display_title: 'REST export'
+ position: 2
+ display_options:
+ display_extenders:
+ views_ef_fieldset: { }
+ path: pricing_rest
+ style:
+ type: serializer
+ options:
+ formats:
+ json: json
+ defaults:
+ style: false
+ row: false
+ fields: true
+ row:
+ type: data_field
+ options:
+ field_options:
+ field_description:
+ alias: ''
+ raw_output: false
+ price__number:
+ alias: ''
+ raw_output: false
+ title:
+ alias: ''
+ raw_output: false
+ uuid:
+ alias: ''
+ raw_output: false
+ list_price__number:
+ alias: ''
+ raw_output: false
+ pager:
+ type: some
+ options:
+ items_per_page: 10
+ offset: 0
+ cache_metadata:
+ max-age: -1
+ contexts:
+ - 'languages:language_content'
+ - 'languages:language_interface'
+ - request_format
+ tags:
+ - 'config:field.storage.commerce_product_variation.field_description'
+ - 'config:field.storage.commerce_product_variation.field_multiple'
diff --git a/config/sync/views.view.showrooms.yml b/config/sync/views.view.showrooms.yml
index a56c6063..f23be39b 100644
--- a/config/sync/views.view.showrooms.yml
+++ b/config/sync/views.view.showrooms.yml
@@ -25,7 +25,7 @@ id: showrooms
label: Showrooms
module: views
description: ''
-tag: ''
+tag: Materio
base_table: taxonomy_term_field_data
base_field: tid
core: 8.x
diff --git a/web/modules/custom/materio_home/src/Controller/AjaxHomeController.php b/web/modules/custom/materio_home/src/Controller/AjaxHomeController.php
index cc577f41..899b381a 100644
--- a/web/modules/custom/materio_home/src/Controller/AjaxHomeController.php
+++ b/web/modules/custom/materio_home/src/Controller/AjaxHomeController.php
@@ -89,7 +89,7 @@ class AjaxHomeController extends ControllerBase {
$data['#cache'] = [
'max-age' => \Drupal\Core\Cache\Cache::PERMANENT,
- 'tags' => ['edlp-home-cache'],
+ 'tags' => ['materio-home-cache'],
'contexts' => [
'languages:language_content'
]
diff --git a/web/themes/custom/materiotheme/assets/dist/main.js b/web/themes/custom/materiotheme/assets/dist/main.js
index 4f149fa8..75326a82 100644
--- a/web/themes/custom/materiotheme/assets/dist/main.js
+++ b/web/themes/custom/materiotheme/assets/dist/main.js
@@ -445,6 +445,18 @@ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n
/***/ }),
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?vue&type=script&lang=js&":
+/*!****************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?vue&type=script&lang=js& ***!
+ \****************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _restAxios = __webpack_require__(/*! vuejs/api/rest-axios */ \"./web/themes/custom/materiotheme/vuejs/api/rest-axios.js\");\n\nvar _route = _interopRequireDefault(__webpack_require__(/*! vuejs/route */ \"./web/themes/custom/materiotheme/vuejs/route/index.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\nvar basePath = drupalSettings.path.baseUrl + drupalSettings.path.pathPrefix;\nvar _default = {\n name: \"Product\",\n router: _route.default,\n props: ['product'],\n data: function data() {\n return {\n quantity: 1\n };\n },\n methods: {\n addtocart: function addtocart() {\n console.log(\"addtocart clicked\"); // curl -X POST \\\n // 'http://localhost:32775/cart/add?_format=json' \\\n // -H 'Content-Type: application/json' \\\n // -d '[{ \"purchased_entity_type\": \"commerce_product_variation\", \"purchased_entity_id\": \"6\", \"quantity\": \"1\"}]'\n\n _restAxios.REST.post(\"/cart/add?_format=json\", [{\n \"purchased_entity_type\": \"commerce_product_variation\",\n \"purchased_entity_id\": this.product.variation_id,\n \"quantity\": this.quantity\n }]).then(function (_ref) {\n var data = _ref.data;\n console.log('product add to cart REST: data', data);\n }).catch(function (error) {\n console.warn('Issue with pricing', error);\n Promise.reject(error);\n });\n }\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options");
+
+/***/ }),
+
/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Content/Showroom.vue?vue&type=script&lang=js&":
/*!*****************************************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/Showroom.vue?vue&type=script&lang=js& ***!
@@ -505,6 +517,18 @@ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n
/***/ }),
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?vue&type=script&lang=js&":
+/*!***********************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?vue&type=script&lang=js& ***!
+ \***********************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n//\n// import Showroom from 'vuejs/components/Content/Showroom'\n// import { mapState, mapActions } from 'vuex'\nvar _default = {\n name: \"cart\",\n // data() {\n // return {\n // items:[],\n // page:0\n // }\n // },\n // computed: {\n // ...mapState({\n // items: state => state.Showrooms.items\n // })\n // },\n created: function created() {// if(!this.items.length)\n // this.getItems()\n },\n methods: {// ...mapActions({\n // getItems: 'Showrooms/getItems'\n // })\n } // components: {\n // Showroom\n // }\n\n};\nexports.default = _default;\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options");
+
+/***/ }),
+
/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Pages/Home.vue?vue&type=script&lang=js&":
/*!***********************************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Home.vue?vue&type=script&lang=js& ***!
@@ -517,6 +541,18 @@ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n
/***/ }),
+/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?vue&type=script&lang=js&":
+/*!**************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?vue&type=script&lang=js& ***!
+ \**************************************************************************************************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _Product = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Content/Product */ \"./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue\"));\n\nvar _vuex = __webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm.js\");\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nvar _default = {\n name: \"Pricing\",\n // data() {\n // return {\n // items:[],\n // page:0\n // }\n // },\n computed: _objectSpread({}, (0, _vuex.mapState)({\n pricing: function pricing(state) {\n return state.Pages.pricing;\n }\n })),\n created: function created() {\n if (!this.pricing.length) this.getPricing();\n },\n methods: _objectSpread({}, (0, _vuex.mapActions)({\n getPricing: 'Pages/getPricing'\n })),\n components: {\n Product: _Product.default\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options");
+
+/***/ }),
+
/***/ "./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Pages/Showrooms.vue?vue&type=script&lang=js&":
/*!****************************************************************************************************************************************************************************************!*\
!*** ./node_modules/babel-loader/lib!./node_modules/vue-loader/lib??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Showrooms.vue?vue&type=script&lang=js& ***!
@@ -714,6 +750,18 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
/***/ }),
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?vue&type=template&id=0f9e2147&scoped=true&":
+/*!******************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?vue&type=template&id=0f9e2147&scoped=true& ***!
+ \******************************************************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return render; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return staticRenderFns; });\nvar render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"article\", { staticClass: \"product\" }, [\n _c(\"header\", [\n _c(\"h1\", { domProps: { innerHTML: _vm._s(_vm.product.title) } })\n ]),\n _vm._v(\" \"),\n _c(\"section\", { staticClass: \"content\" }, [\n _c(\"div\", {\n staticClass: \"description\",\n domProps: { innerHTML: _vm._s(_vm.product.field_description) }\n }),\n _vm._v(\" \"),\n _c(\"span\", { staticClass: \"price\" }, [\n _vm._v(_vm._s(_vm.product.price__number))\n ])\n ]),\n _vm._v(\" \"),\n _c(\"aside\", {}, [\n _vm.product.field_multiple\n ? _c(\"input\", {\n directives: [\n {\n name: \"model\",\n rawName: \"v-model\",\n value: _vm.quantity,\n expression: \"quantity\"\n }\n ],\n attrs: {\n placeholder: \"quantity\",\n type: \"text\",\n name: \"quantity\",\n value: \"1\"\n },\n domProps: { value: _vm.quantity },\n on: {\n input: function($event) {\n if ($event.target.composing) {\n return\n }\n _vm.quantity = $event.target.value\n }\n }\n })\n : _vm._e(),\n _vm._v(\" \"),\n _c(\n \"button\",\n {\n attrs: { type: \"button\", name: \"addtocart\" },\n on: {\n click: function($event) {\n $event.stopPropagation()\n return _vm.addtocart($event)\n }\n }\n },\n [_vm._v(\"\\n Commander\\n \")]\n )\n ])\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\n\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options");
+
+/***/ }),
+
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Content/Showroom.vue?vue&type=template&id=695652b0&scoped=true&":
/*!*******************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Content/Showroom.vue?vue&type=template&id=695652b0&scoped=true& ***!
@@ -762,6 +810,30 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) *
/***/ }),
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?vue&type=template&id=64ad280d&scoped=true&":
+/*!*************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?vue&type=template&id=64ad280d&scoped=true& ***!
+ \*************************************************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return render; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return staticRenderFns; });\nvar render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\"div\", { attrs: { id: \"cart\" } }, [\n true\n ? _c(\"div\", { staticClass: \"loading\" }, [\n _c(\"span\", [_vm._v(\"Loading ...\")])\n ])\n : undefined,\n _vm._v(\" \"),\n _c(\"div\", {}, [_vm._v(\"\\n This the cart\\n \")])\n ])\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\n\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options");
+
+/***/ }),
+
+/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?vue&type=template&id=bdd44e2e&scoped=true&":
+/*!****************************************************************************************************************************************************************************************************************************************************!*\
+ !*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?vue&type=template&id=bdd44e2e&scoped=true& ***!
+ \****************************************************************************************************************************************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+eval("__webpack_require__.r(__webpack_exports__);\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return render; });\n/* harmony export (binding) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return staticRenderFns; });\nvar render = function() {\n var _vm = this\n var _h = _vm.$createElement\n var _c = _vm._self._c || _h\n return _c(\n \"div\",\n { attrs: { id: \"pricing\" } },\n [\n !_vm.pricing.length\n ? _c(\"div\", { staticClass: \"loading\" }, [\n _c(\"span\", [_vm._v(\"Loading ...\")])\n ])\n : _vm._l(_vm.pricing, function(product) {\n return _c(\"Product\", {\n key: product.uuid,\n attrs: { product: product }\n })\n })\n ],\n 2\n )\n}\nvar staticRenderFns = []\nrender._withStripped = true\n\n\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options");
+
+/***/ }),
+
/***/ "./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Pages/Showrooms.vue?vue&type=template&id=7566e5fe&scoped=true&":
/*!******************************************************************************************************************************************************************************************************************************************************!*\
!*** ./node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!./node_modules/vue-loader/lib??vue-loader-options!./web/themes/custom/materiotheme/vuejs/components/Pages/Showrooms.vue?vue&type=template&id=7566e5fe&scoped=true& ***!
@@ -1119,6 +1191,42 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod
/***/ }),
+/***/ "./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue":
+/*!*****************************************************************************!*\
+ !*** ./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue ***!
+ \*****************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _Product_vue_vue_type_template_id_0f9e2147_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Product.vue?vue&type=template&id=0f9e2147&scoped=true& */ \"./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?vue&type=template&id=0f9e2147&scoped=true&\");\n/* harmony import */ var _Product_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Product.vue?vue&type=script&lang=js& */ \"./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?vue&type=script&lang=js&\");\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _Product_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _Product_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ \"./node_modules/vue-loader/lib/runtime/componentNormalizer.js\");\n\n\n\n\n\n/* normalize component */\n\nvar component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(\n _Product_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _Product_vue_vue_type_template_id_0f9e2147_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _Product_vue_vue_type_template_id_0f9e2147_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n \"0f9e2147\",\n null\n \n)\n\n/* hot reload */\nif (false) { var api; }\ncomponent.options.__file = \"web/themes/custom/materiotheme/vuejs/components/Content/Product.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?");
+
+/***/ }),
+
+/***/ "./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?vue&type=script&lang=js&":
+/*!******************************************************************************************************!*\
+ !*** ./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?vue&type=script&lang=js& ***!
+ \******************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Product_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../../node_modules/babel-loader/lib!../../../../../../../node_modules/vue-loader/lib??vue-loader-options!./Product.vue?vue&type=script&lang=js& */ \"./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?vue&type=script&lang=js&\");\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Product_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Product_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Product_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Product_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n /* harmony default export */ __webpack_exports__[\"default\"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Product_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a); \n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?");
+
+/***/ }),
+
+/***/ "./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?vue&type=template&id=0f9e2147&scoped=true&":
+/*!************************************************************************************************************************!*\
+ !*** ./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?vue&type=template&id=0f9e2147&scoped=true& ***!
+ \************************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Product_vue_vue_type_template_id_0f9e2147_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../../node_modules/vue-loader/lib??vue-loader-options!./Product.vue?vue&type=template&id=0f9e2147&scoped=true& */ \"./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?vue&type=template&id=0f9e2147&scoped=true&\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Product_vue_vue_type_template_id_0f9e2147_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"render\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Product_vue_vue_type_template_id_0f9e2147_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"]; });\n\n\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Content/Product.vue?");
+
+/***/ }),
+
/***/ "./web/themes/custom/materiotheme/vuejs/components/Content/Showroom.vue":
/*!******************************************************************************!*\
!*** ./web/themes/custom/materiotheme/vuejs/components/Content/Showroom.vue ***!
@@ -1287,6 +1395,42 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod
/***/ }),
+/***/ "./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue":
+/*!************************************************************************!*\
+ !*** ./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue ***!
+ \************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _Cart_vue_vue_type_template_id_64ad280d_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Cart.vue?vue&type=template&id=64ad280d&scoped=true& */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?vue&type=template&id=64ad280d&scoped=true&\");\n/* harmony import */ var _Cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Cart.vue?vue&type=script&lang=js& */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?vue&type=script&lang=js&\");\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _Cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _Cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ \"./node_modules/vue-loader/lib/runtime/componentNormalizer.js\");\n\n\n\n\n\n/* normalize component */\n\nvar component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(\n _Cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _Cart_vue_vue_type_template_id_64ad280d_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _Cart_vue_vue_type_template_id_64ad280d_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n \"64ad280d\",\n null\n \n)\n\n/* hot reload */\nif (false) { var api; }\ncomponent.options.__file = \"web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?");
+
+/***/ }),
+
+/***/ "./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?vue&type=script&lang=js&":
+/*!*************************************************************************************************!*\
+ !*** ./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?vue&type=script&lang=js& ***!
+ \*************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../../node_modules/babel-loader/lib!../../../../../../../node_modules/vue-loader/lib??vue-loader-options!./Cart.vue?vue&type=script&lang=js& */ \"./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?vue&type=script&lang=js&\");\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n /* harmony default export */ __webpack_exports__[\"default\"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Cart_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a); \n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?");
+
+/***/ }),
+
+/***/ "./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?vue&type=template&id=64ad280d&scoped=true&":
+/*!*******************************************************************************************************************!*\
+ !*** ./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?vue&type=template&id=64ad280d&scoped=true& ***!
+ \*******************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Cart_vue_vue_type_template_id_64ad280d_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../../node_modules/vue-loader/lib??vue-loader-options!./Cart.vue?vue&type=template&id=64ad280d&scoped=true& */ \"./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?vue&type=template&id=64ad280d&scoped=true&\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Cart_vue_vue_type_template_id_64ad280d_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"render\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Cart_vue_vue_type_template_id_64ad280d_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"]; });\n\n\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue?");
+
+/***/ }),
+
/***/ "./web/themes/custom/materiotheme/vuejs/components/Pages/Home.vue":
/*!************************************************************************!*\
!*** ./web/themes/custom/materiotheme/vuejs/components/Pages/Home.vue ***!
@@ -1311,6 +1455,42 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod
/***/ }),
+/***/ "./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue":
+/*!***************************************************************************!*\
+ !*** ./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue ***!
+ \***************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _Pricing_vue_vue_type_template_id_bdd44e2e_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! ./Pricing.vue?vue&type=template&id=bdd44e2e&scoped=true& */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?vue&type=template&id=bdd44e2e&scoped=true&\");\n/* harmony import */ var _Pricing_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ./Pricing.vue?vue&type=script&lang=js& */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?vue&type=script&lang=js&\");\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _Pricing_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _Pricing_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n/* harmony import */ var _node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ../../../../../../../node_modules/vue-loader/lib/runtime/componentNormalizer.js */ \"./node_modules/vue-loader/lib/runtime/componentNormalizer.js\");\n\n\n\n\n\n/* normalize component */\n\nvar component = Object(_node_modules_vue_loader_lib_runtime_componentNormalizer_js__WEBPACK_IMPORTED_MODULE_2__[\"default\"])(\n _Pricing_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_1__[\"default\"],\n _Pricing_vue_vue_type_template_id_bdd44e2e_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"render\"],\n _Pricing_vue_vue_type_template_id_bdd44e2e_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"],\n false,\n null,\n \"bdd44e2e\",\n null\n \n)\n\n/* hot reload */\nif (false) { var api; }\ncomponent.options.__file = \"web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue\"\n/* harmony default export */ __webpack_exports__[\"default\"] = (component.exports);\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?");
+
+/***/ }),
+
+/***/ "./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?vue&type=script&lang=js&":
+/*!****************************************************************************************************!*\
+ !*** ./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?vue&type=script&lang=js& ***!
+ \****************************************************************************************************/
+/*! no static exports found */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Pricing_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../../node_modules/babel-loader/lib!../../../../../../../node_modules/vue-loader/lib??vue-loader-options!./Pricing.vue?vue&type=script&lang=js& */ \"./node_modules/babel-loader/lib/index.js!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?vue&type=script&lang=js&\");\n/* harmony import */ var _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Pricing_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Pricing_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__);\n/* harmony reexport (unknown) */ for(var __WEBPACK_IMPORT_KEY__ in _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Pricing_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__) if(__WEBPACK_IMPORT_KEY__ !== 'default') (function(key) { __webpack_require__.d(__webpack_exports__, key, function() { return _node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Pricing_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0__[key]; }) }(__WEBPACK_IMPORT_KEY__));\n /* harmony default export */ __webpack_exports__[\"default\"] = (_node_modules_babel_loader_lib_index_js_node_modules_vue_loader_lib_index_js_vue_loader_options_Pricing_vue_vue_type_script_lang_js___WEBPACK_IMPORTED_MODULE_0___default.a); \n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?");
+
+/***/ }),
+
+/***/ "./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?vue&type=template&id=bdd44e2e&scoped=true&":
+/*!**********************************************************************************************************************!*\
+ !*** ./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?vue&type=template&id=bdd44e2e&scoped=true& ***!
+ \**********************************************************************************************************************/
+/*! exports provided: render, staticRenderFns */
+/***/ (function(module, __webpack_exports__, __webpack_require__) {
+
+"use strict";
+eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Pricing_vue_vue_type_template_id_bdd44e2e_scoped_true___WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! -!../../../../../../../node_modules/vue-loader/lib/loaders/templateLoader.js??vue-loader-options!../../../../../../../node_modules/vue-loader/lib??vue-loader-options!./Pricing.vue?vue&type=template&id=bdd44e2e&scoped=true& */ \"./node_modules/vue-loader/lib/loaders/templateLoader.js?!./node_modules/vue-loader/lib/index.js?!./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?vue&type=template&id=bdd44e2e&scoped=true&\");\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"render\", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Pricing_vue_vue_type_template_id_bdd44e2e_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"render\"]; });\n\n/* harmony reexport (safe) */ __webpack_require__.d(__webpack_exports__, \"staticRenderFns\", function() { return _node_modules_vue_loader_lib_loaders_templateLoader_js_vue_loader_options_node_modules_vue_loader_lib_index_js_vue_loader_options_Pricing_vue_vue_type_template_id_bdd44e2e_scoped_true___WEBPACK_IMPORTED_MODULE_0__[\"staticRenderFns\"]; });\n\n\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue?");
+
+/***/ }),
+
/***/ "./web/themes/custom/materiotheme/vuejs/components/Pages/Showrooms.vue":
/*!*****************************************************************************!*\
!*** ./web/themes/custom/materiotheme/vuejs/components/Pages/Showrooms.vue ***!
@@ -1403,7 +1583,7 @@ eval("__webpack_require__.r(__webpack_exports__);\n/* harmony import */ var _nod
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.js\"));\n\nvar _vueRouter = _interopRequireDefault(__webpack_require__(/*! vue-router */ \"./node_modules/vue-router/dist/vue-router.esm.js\"));\n\nvar _Home = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Pages/Home */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Home.vue\"));\n\nvar _Base = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Pages/Base */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Base.vue\"));\n\nvar _Blabla = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Pages/Blabla */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Blabla.vue\"));\n\nvar _Article = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Pages/Article */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Article.vue\"));\n\nvar _Showrooms = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Pages/Showrooms */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Showrooms.vue\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n_vue.default.use(_vueRouter.default); // https://www.lullabot.com/articles/decoupled-hard-problems-routing\n// We could use aliases to never reload the page on language changement\n// BUT beforeupdate is not triggered when push alias instead of path or name\n// const languages = ['en', 'fr'];\n// console.log('path aliases', (() => languages.map(l => `/${l}/base`))() );\n\n\nvar basePath = drupalSettings.path.baseUrl + drupalSettings.path.pathPrefix;\nvar routes = [{\n name: 'home',\n path: basePath,\n // path: '/',\n // alias: (() => languages.map(l => `/${l}`))(),\n component: _Home.default // components: {\n // 'home': Home\n // }\n\n}, {\n name: 'base',\n path: \"\".concat(basePath, \"base\"),\n // path: `/base`,\n // alias: (() => languages.map(l => `/${l}/base`))(),\n component: _Base.default // components: {\n // 'base': Base\n // }\n\n}, // {\n// name:'blabla',\n// path: `${basePath}blabla`,\n// component: Blabla,\n// children: [\n// {\n// path: `${basePath}blabla/:alias`,\n// component: Article\n// }\n// ]\n// }\n{\n name: 'blabla',\n path: \"\".concat(basePath, \"blabla\"),\n component: _Blabla.default\n}, {\n name: 'article',\n path: \"\".concat(basePath, \"blabla/:alias\"),\n component: _Article.default // meta: { uuid:null }\n\n}, {\n name: 'showrooms',\n path: \"\".concat(basePath, \"showrooms\"),\n component: _Showrooms.default // meta: { uuid:null }\n // {\n // path: '*',\n // name: 'notfound',\n // components: {\n // 'notfound': NotFound\n // }\n // }\n\n}];\n\nvar _default = new _vueRouter.default({\n mode: 'history',\n routes: routes\n});\n\nexports.default = _default;\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/route/index.js?");
+eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.js\"));\n\nvar _vueRouter = _interopRequireDefault(__webpack_require__(/*! vue-router */ \"./node_modules/vue-router/dist/vue-router.esm.js\"));\n\nvar _Home = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Pages/Home */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Home.vue\"));\n\nvar _Base = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Pages/Base */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Base.vue\"));\n\nvar _Blabla = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Pages/Blabla */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Blabla.vue\"));\n\nvar _Article = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Pages/Article */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Article.vue\"));\n\nvar _Showrooms = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Pages/Showrooms */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Showrooms.vue\"));\n\nvar _Pricing = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Pages/Pricing */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue\"));\n\nvar _Cart = _interopRequireDefault(__webpack_require__(/*! vuejs/components/Pages/Cart */ \"./web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n_vue.default.use(_vueRouter.default); // https://www.lullabot.com/articles/decoupled-hard-problems-routing\n// We could use aliases to never reload the page on language changement\n// BUT beforeupdate is not triggered when push alias instead of path or name\n// const languages = ['en', 'fr'];\n// console.log('path aliases', (() => languages.map(l => `/${l}/base`))() );\n\n\nvar basePath = drupalSettings.path.baseUrl + drupalSettings.path.pathPrefix;\nvar routes = [{\n name: 'home',\n path: basePath,\n // path: '/',\n // alias: (() => languages.map(l => `/${l}`))(),\n component: _Home.default // components: {\n // 'home': Home\n // }\n\n}, {\n name: 'base',\n path: \"\".concat(basePath, \"base\"),\n // path: `/base`,\n // alias: (() => languages.map(l => `/${l}/base`))(),\n component: _Base.default // components: {\n // 'base': Base\n // }\n\n}, // {\n// name:'blabla',\n// path: `${basePath}blabla`,\n// component: Blabla,\n// children: [\n// {\n// path: `${basePath}blabla/:alias`,\n// component: Article\n// }\n// ]\n// }\n{\n name: 'blabla',\n path: \"\".concat(basePath, \"blabla\"),\n component: _Blabla.default\n}, {\n name: 'article',\n path: \"\".concat(basePath, \"blabla/:alias\"),\n component: _Article.default // meta: { uuid:null }\n\n}, {\n name: 'showrooms',\n path: \"\".concat(basePath, \"showrooms\"),\n component: _Showrooms.default // meta: { uuid:null }\n\n}, // {\n// path: '*',\n// name: 'notfound',\n// components: {\n// 'notfound': NotFound\n// }\n// },\n{\n name: 'pricing',\n path: \"\".concat(basePath, \"pricing\"),\n component: _Pricing.default\n}, {\n name: 'cart',\n path: \"\".concat(basePath, \"cart\"),\n component: _Cart.default\n}];\n\nvar _default = new _vueRouter.default({\n mode: 'history',\n routes: routes\n});\n\nexports.default = _default;\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/route/index.js?");
/***/ }),
@@ -1415,7 +1595,7 @@ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n
/***/ (function(module, exports, __webpack_require__) {
"use strict";
-eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.js\"));\n\nvar _vuex = _interopRequireDefault(__webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm.js\"));\n\nvar _common = _interopRequireDefault(__webpack_require__(/*! ./modules/common */ \"./web/themes/custom/materiotheme/vuejs/store/modules/common.js\"));\n\nvar _user = _interopRequireDefault(__webpack_require__(/*! ./modules/user */ \"./web/themes/custom/materiotheme/vuejs/store/modules/user.js\"));\n\nvar _search = _interopRequireDefault(__webpack_require__(/*! ./modules/search */ \"./web/themes/custom/materiotheme/vuejs/store/modules/search.js\"));\n\nvar _blabla = _interopRequireDefault(__webpack_require__(/*! ./modules/blabla */ \"./web/themes/custom/materiotheme/vuejs/store/modules/blabla.js\"));\n\nvar _showrooms = _interopRequireDefault(__webpack_require__(/*! ./modules/showrooms */ \"./web/themes/custom/materiotheme/vuejs/store/modules/showrooms.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// https://github.com/vuejs/vuex/tree/dev/examples/shopping-cart\n_vue.default.use(_vuex.default);\n\nvar _default = new _vuex.default.Store({\n modules: {\n Common: _common.default,\n User: _user.default,\n Search: _search.default,\n Blabla: _blabla.default,\n Showrooms: _showrooms.default\n }\n});\n\nexports.default = _default;\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/store/index.js?");
+eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _vue = _interopRequireDefault(__webpack_require__(/*! vue */ \"./node_modules/vue/dist/vue.js\"));\n\nvar _vuex = _interopRequireDefault(__webpack_require__(/*! vuex */ \"./node_modules/vuex/dist/vuex.esm.js\"));\n\nvar _common = _interopRequireDefault(__webpack_require__(/*! ./modules/common */ \"./web/themes/custom/materiotheme/vuejs/store/modules/common.js\"));\n\nvar _user = _interopRequireDefault(__webpack_require__(/*! ./modules/user */ \"./web/themes/custom/materiotheme/vuejs/store/modules/user.js\"));\n\nvar _search = _interopRequireDefault(__webpack_require__(/*! ./modules/search */ \"./web/themes/custom/materiotheme/vuejs/store/modules/search.js\"));\n\nvar _blabla = _interopRequireDefault(__webpack_require__(/*! ./modules/blabla */ \"./web/themes/custom/materiotheme/vuejs/store/modules/blabla.js\"));\n\nvar _showrooms = _interopRequireDefault(__webpack_require__(/*! ./modules/showrooms */ \"./web/themes/custom/materiotheme/vuejs/store/modules/showrooms.js\"));\n\nvar _pages = _interopRequireDefault(__webpack_require__(/*! ./modules/pages */ \"./web/themes/custom/materiotheme/vuejs/store/modules/pages.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\n// https://github.com/vuejs/vuex/tree/dev/examples/shopping-cart\n_vue.default.use(_vuex.default);\n\nvar _default = new _vuex.default.Store({\n modules: {\n Common: _common.default,\n User: _user.default,\n Search: _search.default,\n Blabla: _blabla.default,\n Showrooms: _showrooms.default,\n Pages: _pages.default\n }\n});\n\nexports.default = _default;\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/store/index.js?");
/***/ }),
@@ -1443,6 +1623,18 @@ eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\n
/***/ }),
+/***/ "./web/themes/custom/materiotheme/vuejs/store/modules/pages.js":
+/*!*********************************************************************!*\
+ !*** ./web/themes/custom/materiotheme/vuejs/store/modules/pages.js ***!
+ \*********************************************************************/
+/*! no static exports found */
+/***/ (function(module, exports, __webpack_require__) {
+
+"use strict";
+eval("\n\nObject.defineProperty(exports, \"__esModule\", {\n value: true\n});\nexports.default = void 0;\n\nvar _jsonAxios = __webpack_require__(/*! vuejs/api/json-axios */ \"./web/themes/custom/materiotheme/vuejs/api/json-axios.js\");\n\nvar _restAxios = __webpack_require__(/*! vuejs/api/rest-axios */ \"./web/themes/custom/materiotheme/vuejs/api/rest-axios.js\");\n\nvar _maAxios = __webpack_require__(/*! vuejs/api/ma-axios */ \"./web/themes/custom/materiotheme/vuejs/api/ma-axios.js\");\n\nvar _querystring = _interopRequireDefault(__webpack_require__(/*! querystring */ \"./node_modules/querystring-es3/index.js\"));\n\nfunction _interopRequireDefault(obj) { return obj && obj.__esModule ? obj : { default: obj }; }\n\nvar _default = {\n namespaced: true,\n // initial state\n state: {\n pricing: {}\n },\n // getters\n getters: {},\n // mutations\n mutations: {\n setPricing: function setPricing(state, page) {\n state.pricing = page;\n }\n },\n // actions\n actions: {\n getPricing: function getPricing(_ref) {\n var dispatch = _ref.dispatch,\n commit = _ref.commit,\n state = _ref.state;\n\n _restAxios.REST.get(\"/pricing_rest?_format=json\", {}).then(function (_ref2) {\n var data = _ref2.data;\n console.log('pricing REST: data', data);\n commit('setPricing', data);\n }).catch(function (error) {\n console.warn('Issue with pricing', error);\n Promise.reject(error);\n });\n }\n }\n};\nexports.default = _default;\n\n//# sourceURL=webpack:///./web/themes/custom/materiotheme/vuejs/store/modules/pages.js?");
+
+/***/ }),
+
/***/ "./web/themes/custom/materiotheme/vuejs/store/modules/search.js":
/*!**********************************************************************!*\
!*** ./web/themes/custom/materiotheme/vuejs/store/modules/search.js ***!
diff --git a/web/themes/custom/materiotheme/vuejs/components/Content/Product.vue b/web/themes/custom/materiotheme/vuejs/components/Content/Product.vue
new file mode 100644
index 00000000..cd175302
--- /dev/null
+++ b/web/themes/custom/materiotheme/vuejs/components/Content/Product.vue
@@ -0,0 +1,74 @@
+
+
+
+
+
+ {{ product.price__number }}
+
+
+
+
+
+
+
+
+
diff --git a/web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue b/web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue
new file mode 100644
index 00000000..6fb6f6a6
--- /dev/null
+++ b/web/themes/custom/materiotheme/vuejs/components/Pages/Cart.vue
@@ -0,0 +1,45 @@
+
+
+
+ Loading ...
+
+
+ This the cart
+
+
+
+
+
+
diff --git a/web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue b/web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue
new file mode 100644
index 00000000..5e8d611b
--- /dev/null
+++ b/web/themes/custom/materiotheme/vuejs/components/Pages/Pricing.vue
@@ -0,0 +1,48 @@
+
+
+
+
+
+
diff --git a/web/themes/custom/materiotheme/vuejs/route/index.js b/web/themes/custom/materiotheme/vuejs/route/index.js
index 6a3bf60b..f1573185 100644
--- a/web/themes/custom/materiotheme/vuejs/route/index.js
+++ b/web/themes/custom/materiotheme/vuejs/route/index.js
@@ -6,6 +6,8 @@ import Base from 'vuejs/components/Pages/Base'
import Blabla from 'vuejs/components/Pages/Blabla'
import Article from 'vuejs/components/Pages/Article'
import Showrooms from 'vuejs/components/Pages/Showrooms'
+import Pricing from 'vuejs/components/Pages/Pricing'
+import Cart from 'vuejs/components/Pages/Cart'
Vue.use(VueRouter)
@@ -66,14 +68,24 @@ const routes = [
path: `${basePath}showrooms`,
component: Showrooms,
// meta: { uuid:null }
- }
+ },
// {
// path: '*',
// name: 'notfound',
// components: {
// 'notfound': NotFound
// }
- // }
+ // },
+ {
+ name:'pricing',
+ path: `${basePath}pricing`,
+ component: Pricing
+ },
+ {
+ name:'cart',
+ path: `${basePath}cart`,
+ component: Cart
+ }
]
export default new VueRouter({
diff --git a/web/themes/custom/materiotheme/vuejs/store/index.js b/web/themes/custom/materiotheme/vuejs/store/index.js
index 0fdaba31..5b631979 100644
--- a/web/themes/custom/materiotheme/vuejs/store/index.js
+++ b/web/themes/custom/materiotheme/vuejs/store/index.js
@@ -5,6 +5,7 @@ import User from './modules/user'
import Search from './modules/search'
import Blabla from './modules/blabla'
import Showrooms from './modules/showrooms'
+import Pages from './modules/pages'
// https://github.com/vuejs/vuex/tree/dev/examples/shopping-cart
@@ -15,6 +16,7 @@ export default new Vuex.Store({
User,
Search,
Blabla,
- Showrooms
+ Showrooms,
+ Pages
}
})
diff --git a/web/themes/custom/materiotheme/vuejs/store/modules/pages.js b/web/themes/custom/materiotheme/vuejs/store/modules/pages.js
new file mode 100644
index 00000000..27a15388
--- /dev/null
+++ b/web/themes/custom/materiotheme/vuejs/store/modules/pages.js
@@ -0,0 +1,38 @@
+import { JSONAPI } from 'vuejs/api/json-axios'
+import { REST } from 'vuejs/api/rest-axios'
+import { MA } from 'vuejs/api/ma-axios'
+import qs from 'querystring'
+
+export default {
+ namespaced: true,
+
+ // initial state
+ state : {
+ pricing: {},
+ },
+
+ // getters
+ getters : {},
+
+ // mutations
+ mutations : {
+ setPricing (state, page) {
+ state.pricing = page
+ }
+ },
+
+ // actions
+ actions : {
+ getPricing({ dispatch, commit, state }){
+ REST.get(`/pricing_rest?_format=json`, {})
+ .then(({ data }) => {
+ console.log('pricing REST: data', data)
+ commit('setPricing',data)
+ })
+ .catch(( error ) => {
+ console.warn('Issue with pricing', error)
+ Promise.reject(error)
+ })
+ }
+ }
+}