├── .babelrc
├── .editorconfig
├── .eslintrc
├── .github
├── ISSUE_TEMPLATE.md
├── PULL_REQUEST_TEMPLATE.md
└── workflows
│ └── push.yml
├── .gitignore
├── .nvmrc
├── .stylelintrc.json
├── CHANGELOG.md
├── CONTRIBUTING.md
├── Gruntfile.js
├── LICENSE
├── README.md
├── assets
├── css
│ ├── bc-admin.css
│ ├── bc-admin.min.css
│ ├── bc-gutenberg.css
│ ├── bc-gutenberg.min.css
│ ├── master-amp.css
│ ├── master-amp.min.css
│ ├── master.css
│ └── master.min.css
├── customizer.template.css
├── data
│ └── countries.json
├── fonts
│ └── icons-bigcommerce
│ │ ├── bigcommerce-icons.svg
│ │ ├── bigcommerce-icons.ttf
│ │ ├── bigcommerce-icons.woff
│ │ └── bigcommerce-icons.woff2
├── img
│ ├── admin
│ │ ├── Gutenberg-Block_Addresses.png
│ │ ├── Gutenberg-Block_Cart.png
│ │ ├── Gutenberg-Block_Checkout.png
│ │ ├── Gutenberg-Block_Gift-Cert-Balance.png
│ │ ├── Gutenberg-Block_Gift-Cert-Form.png
│ │ ├── Gutenberg-Block_LogIn.png
│ │ ├── Gutenberg-Block_My-Account.png
│ │ ├── Gutenberg-Block_Order-History.png
│ │ ├── Gutenberg-Block_Product_Reviews.png
│ │ ├── Gutenberg-Block_Register-Form.png
│ │ ├── Gutenberg-Block_Wishlist.png
│ │ ├── bc-bg-geometric.svg
│ │ ├── big-commerce-logo-white.svg
│ │ ├── big-commerce-logo.png
│ │ ├── big-commerce-logo.svg
│ │ ├── big-commerce-logo2x.png
│ │ ├── bigcommerce-resource-thumbnail-2x.png
│ │ ├── bigcommerce-resource-thumbnail.png
│ │ └── icons
│ │ │ ├── cross.svg
│ │ │ └── placeholder.svg
│ └── public
│ │ ├── bc-product-placeholder--large.jpg
│ │ ├── bc-product-placeholder--medium.jpg
│ │ ├── bc-product-placeholder--small.jpg
│ │ ├── bc-product-placeholder.jpg
│ │ ├── legacy-browser
│ │ ├── chrome.png
│ │ ├── firefox.png
│ │ ├── ie.png
│ │ └── safari.png
│ │ └── shims
│ │ ├── 16x9.png
│ │ └── 1x1.png
├── js
│ ├── dist
│ │ ├── admin
│ │ │ ├── gutenberg
│ │ │ │ ├── scripts.js
│ │ │ │ └── scripts.min.js
│ │ │ ├── manifest.js
│ │ │ ├── manifest.min.js
│ │ │ ├── scripts.js
│ │ │ ├── scripts.min.js
│ │ │ ├── vendor.js
│ │ │ └── vendor.min.js
│ │ ├── manifest.js
│ │ ├── manifest.min.js
│ │ ├── scripts.js
│ │ ├── scripts.min.js
│ │ ├── vendor.js
│ │ └── vendor.min.js
│ ├── src
│ │ ├── admin
│ │ │ ├── config
│ │ │ │ ├── i18n.js
│ │ │ │ ├── options.js
│ │ │ │ ├── shortcode-state.js
│ │ │ │ ├── state.js
│ │ │ │ └── wp-settings.js
│ │ │ ├── core
│ │ │ │ ├── plugins.js
│ │ │ │ ├── ready.js
│ │ │ │ ├── resize.js
│ │ │ │ └── viewport-dims.js
│ │ │ ├── customizer
│ │ │ │ ├── index.js
│ │ │ │ └── multiple-checkboxes.js
│ │ │ ├── gutenberg
│ │ │ │ ├── blocks
│ │ │ │ │ ├── index.js
│ │ │ │ │ ├── product-components
│ │ │ │ │ │ ├── edit.js
│ │ │ │ │ │ ├── instancedEdit.js
│ │ │ │ │ │ ├── product-components.js
│ │ │ │ │ │ ├── productComponentType.js
│ │ │ │ │ │ └── productId.js
│ │ │ │ │ ├── product-reviews
│ │ │ │ │ │ ├── edit.js
│ │ │ │ │ │ ├── product-reviews.js
│ │ │ │ │ │ └── shortcodeInput.js
│ │ │ │ │ ├── products
│ │ │ │ │ │ ├── edit.js
│ │ │ │ │ │ ├── icon.js
│ │ │ │ │ │ ├── inspector.js
│ │ │ │ │ │ ├── products.js
│ │ │ │ │ │ └── save.js
│ │ │ │ │ └── shortcode-block
│ │ │ │ │ │ └── shortcode-block.js
│ │ │ │ ├── config
│ │ │ │ │ └── gutenberg-settings.js
│ │ │ │ ├── index.js
│ │ │ │ └── plugins
│ │ │ │ │ ├── channel-indicator.js
│ │ │ │ │ ├── index.js
│ │ │ │ │ └── store-link.js
│ │ │ ├── index.js
│ │ │ ├── resources
│ │ │ │ ├── index.js
│ │ │ │ ├── resources.js
│ │ │ │ └── tabs.js
│ │ │ ├── settings
│ │ │ │ ├── account-reset.js
│ │ │ │ ├── channels.js
│ │ │ │ ├── connect-account.js
│ │ │ │ ├── create-account.js
│ │ │ │ ├── diagnostics.js
│ │ │ │ ├── dynamicStateField.js
│ │ │ │ ├── index.js
│ │ │ │ ├── multi-channel.js
│ │ │ │ ├── nav-menus.js
│ │ │ │ ├── product-sync.js
│ │ │ │ ├── settings.js
│ │ │ │ ├── templates.js
│ │ │ │ └── toggle-section.js
│ │ │ ├── shortcode-ui
│ │ │ │ ├── ajax-query.js
│ │ │ │ ├── create-shortcode.js
│ │ │ │ ├── dialog-ui.js
│ │ │ │ ├── display-settings.js
│ │ │ │ ├── index.js
│ │ │ │ ├── product-selection.js
│ │ │ │ ├── product-template.js
│ │ │ │ ├── query-builder.js
│ │ │ │ └── term-template.js
│ │ │ └── templates
│ │ │ │ ├── diagnostics.js
│ │ │ │ ├── dynamic-state-input.js
│ │ │ │ ├── dynamic-state-select.js
│ │ │ │ ├── import-progress.js
│ │ │ │ └── resources.js
│ │ ├── constants
│ │ │ ├── cookies.js
│ │ │ └── events.js
│ │ ├── public
│ │ │ ├── analytics
│ │ │ │ ├── index.js
│ │ │ │ ├── matomo.js
│ │ │ │ └── segment.js
│ │ │ ├── api
│ │ │ │ ├── cart.js
│ │ │ │ └── index.js
│ │ │ ├── banners
│ │ │ │ ├── banners.js
│ │ │ │ └── index.js
│ │ │ ├── buttons
│ │ │ │ ├── index.js
│ │ │ │ ├── pagination.js
│ │ │ │ └── quick-view-dialog.js
│ │ │ ├── cart
│ │ │ │ ├── add-to-cart.js
│ │ │ │ ├── ajax-items.js
│ │ │ │ ├── cart-menu-item.js
│ │ │ │ ├── cart-page.js
│ │ │ │ ├── cart-templates.js
│ │ │ │ ├── coupon-code.js
│ │ │ │ ├── index.js
│ │ │ │ ├── mini-cart-nav.js
│ │ │ │ ├── mini-cart-widget.js
│ │ │ │ └── shipping-calculator.js
│ │ │ ├── checkout
│ │ │ │ ├── embedded-checkout.js
│ │ │ │ └── index.js
│ │ │ ├── config
│ │ │ │ ├── cart-state.js
│ │ │ │ ├── i18n.js
│ │ │ │ ├── options.js
│ │ │ │ ├── state.js
│ │ │ │ └── wp-settings.js
│ │ │ ├── core
│ │ │ │ ├── plugins.js
│ │ │ │ ├── ready.js
│ │ │ │ ├── resize.js
│ │ │ │ └── viewport-dims.js
│ │ │ ├── gallery
│ │ │ │ ├── index.js
│ │ │ │ ├── productGallery.js
│ │ │ │ ├── productGalleryZoom.js
│ │ │ │ └── productVideos.js
│ │ │ ├── index.js
│ │ │ ├── loop
│ │ │ │ ├── filters.js
│ │ │ │ └── index.js
│ │ │ ├── page
│ │ │ │ ├── address.js
│ │ │ │ ├── dynamicStateField.js
│ │ │ │ ├── formErrors.js
│ │ │ │ ├── formQueryParam.js
│ │ │ │ └── index.js
│ │ │ ├── product
│ │ │ │ ├── index.js
│ │ │ │ ├── pricing.js
│ │ │ │ ├── reviews.js
│ │ │ │ └── variants.js
│ │ │ ├── templates
│ │ │ │ ├── address-delete.js
│ │ │ │ ├── banners.js
│ │ │ │ ├── dynamic-state-input.js
│ │ │ │ ├── dynamic-state-select.js
│ │ │ │ ├── errors.js
│ │ │ │ ├── form-error-message.js
│ │ │ │ ├── product-message.js
│ │ │ │ └── wish-lists.js
│ │ │ └── wish-list
│ │ │ │ ├── index.js
│ │ │ │ ├── list.js
│ │ │ │ ├── manage-dialogs.js
│ │ │ │ ├── product.js
│ │ │ │ └── share.js
│ │ └── utils
│ │ │ ├── ajax.js
│ │ │ ├── data
│ │ │ ├── array-to-int.js
│ │ │ ├── parse-url.js
│ │ │ ├── query-to-json.js
│ │ │ └── update-query-var.js
│ │ │ ├── dom
│ │ │ ├── accessibility.js
│ │ │ ├── apply-browser-classes.js
│ │ │ ├── body-lock.js
│ │ │ ├── deepscroll.js
│ │ │ ├── get-hidden-height.js
│ │ │ ├── has-scrollbar.js
│ │ │ ├── is-external-link.js
│ │ │ ├── is-file-link.js
│ │ │ ├── is-image-link.js
│ │ │ ├── popup.js
│ │ │ ├── scroll-horizontal.js
│ │ │ ├── scroll-to.js
│ │ │ ├── scrollspy.js
│ │ │ ├── slide.js
│ │ │ ├── smooth-anchors.js
│ │ │ ├── video-bg.js
│ │ │ └── win-position.js
│ │ │ ├── events.js
│ │ │ ├── storage
│ │ │ ├── local.js
│ │ │ └── session.js
│ │ │ ├── tests.js
│ │ │ ├── tools.js
│ │ │ └── url.js
│ └── test
│ │ ├── __coverage__
│ │ ├── coverage-final.json
│ │ ├── lcov-report
│ │ │ ├── base.css
│ │ │ ├── index.html
│ │ │ ├── prettify.css
│ │ │ ├── prettify.js
│ │ │ ├── sort-arrow-sprite.png
│ │ │ ├── sorter.js
│ │ │ ├── src
│ │ │ │ └── utils
│ │ │ │ │ ├── data
│ │ │ │ │ ├── array-to-int.js.html
│ │ │ │ │ └── index.html
│ │ │ │ │ ├── index.html
│ │ │ │ │ └── tools.js.html
│ │ │ └── test
│ │ │ │ ├── index.html
│ │ │ │ ├── setup.js.html
│ │ │ │ └── tests
│ │ │ │ └── utils
│ │ │ │ ├── data
│ │ │ │ ├── array-to-int.test.js.html
│ │ │ │ └── index.html
│ │ │ │ ├── index.html
│ │ │ │ └── tools.test.js.html
│ │ └── lcov.info
│ │ ├── setup.js
│ │ └── tests
│ │ └── utils
│ │ ├── data
│ │ └── array-to-int.test.js
│ │ └── tools.test.js
└── pcss
│ ├── admin
│ ├── bc-admin.pcss
│ ├── bc-gutenberg.pcss
│ ├── choices
│ │ ├── _all.pcss
│ │ ├── _choices-custom.pcss
│ │ └── _choices.pcss
│ ├── gutenberg
│ │ └── _default.pcss
│ ├── pages
│ │ ├── _base.pcss
│ │ ├── resources
│ │ │ ├── _cards.pcss
│ │ │ ├── _tabs.pcss
│ │ │ └── _tutorials.pcss
│ │ └── settings
│ │ │ ├── _menu.pcss
│ │ │ ├── _onboarding.pcss
│ │ │ ├── _plugin-complete.pcss
│ │ │ ├── _plugin-connect.pcss
│ │ │ ├── _plugin-create-account.pcss
│ │ │ ├── _plugin-notices.pcss
│ │ │ ├── _plugin-settings-pages.pcss
│ │ │ ├── _plugin-settings.pcss
│ │ │ └── _plugin-welcome.pcss
│ ├── posts
│ │ ├── _edit-post.pcss
│ │ ├── _posts-list.pcss
│ │ └── _quick-edit.pcss
│ ├── shortcode-ui
│ │ ├── _dialog-ui.pcss
│ │ ├── _product-results.pcss
│ │ ├── _query-builder.pcss
│ │ ├── _searchform.pcss
│ │ └── _selected-products.pcss
│ └── utilities
│ │ └── _helpers.pcss
│ ├── amp
│ ├── base
│ │ ├── _buttons.pcss
│ │ ├── _forms.pcss
│ │ ├── _global.pcss
│ │ └── _icons.pcss
│ └── content
│ │ ├── components
│ │ ├── _gallery.pcss
│ │ ├── _nav.pcss
│ │ └── _refinery.pcss
│ │ └── loop
│ │ └── _default.pcss
│ ├── base
│ ├── _all.pcss
│ ├── _icons.pcss
│ └── forms
│ │ ├── _default.pcss
│ │ ├── _validation.pcss
│ │ └── controls
│ │ ├── _default.pcss
│ │ ├── _file.pcss
│ │ ├── _radio-checkbox.pcss
│ │ ├── _select.pcss
│ │ └── _textarea.pcss
│ ├── cart-amp.pcss
│ ├── content
│ ├── _all.pcss
│ ├── buttons
│ │ ├── _default.pcss
│ │ └── _quick-view.pcss
│ ├── cards
│ │ ├── _default.pcss
│ │ ├── _order.pcss
│ │ └── _single.pcss
│ ├── cart
│ │ ├── _cart-menu-item.pcss
│ │ ├── _cart-page.pcss
│ │ ├── _coupons.pcss
│ │ ├── _mini-cart.pcss
│ │ └── _shipping.pcss
│ ├── components
│ │ ├── _alert.pcss
│ │ ├── _all.pcss
│ │ ├── _banner.pcss
│ │ ├── _brand.pcss
│ │ ├── _currency-widget.pcss
│ │ ├── _description.pcss
│ │ ├── _flags.pcss
│ │ ├── _form-components.pcss
│ │ ├── _gallery.pcss
│ │ ├── _images.pcss
│ │ ├── _option-dropdown.pcss
│ │ ├── _option-pick-list.pcss
│ │ ├── _option-radio.pcss
│ │ ├── _option-rectangle.pcss
│ │ ├── _option-swatch.pcss
│ │ ├── _order-product-row.pcss
│ │ ├── _pagination.pcss
│ │ ├── _price.pcss
│ │ ├── _ratings.pcss
│ │ ├── _refinery.pcss
│ │ ├── _related-products.pcss
│ │ ├── _specs.pcss
│ │ ├── _subnav.pcss
│ │ ├── _title.pcss
│ │ └── _wish-lists.pcss
│ ├── loop
│ │ ├── _default.pcss
│ │ ├── _no-results.pcss
│ │ └── _products.pcss
│ ├── page
│ │ ├── _account-default.pcss
│ │ ├── _account-login.pcss
│ │ ├── _account-register.pcss
│ │ ├── _address.pcss
│ │ ├── _gift-certificate.pcss
│ │ ├── _lost-password.pcss
│ │ └── orders
│ │ │ ├── _default.pcss
│ │ │ ├── _order-detail.pcss
│ │ │ └── _order-history.pcss
│ └── single
│ │ ├── _product-quick-view.pcss
│ │ ├── _product-reviews.pcss
│ │ ├── _product-wish-list.pcss
│ │ └── _product.pcss
│ ├── master-amp.pcss
│ ├── master.pcss
│ ├── utilities
│ ├── _all.pcss
│ ├── helper-classes
│ │ ├── _colors.pcss
│ │ └── _visibility.pcss
│ ├── mixins
│ │ ├── _buttons.pcss
│ │ ├── _forms.pcss
│ │ ├── _text-helpers.pcss
│ │ ├── _typography.pcss
│ │ ├── _utilities.pcss
│ │ └── _visibility.pcss
│ ├── settings
│ │ └── _grid.pcss
│ └── variables
│ │ ├── _colors.pcss
│ │ ├── _containers.pcss
│ │ ├── _easing.pcss
│ │ ├── _forms.pcss
│ │ ├── _icons.pcss
│ │ ├── _media-queries.pcss
│ │ ├── _paths.pcss
│ │ ├── _spacers.pcss
│ │ ├── _transitions.pcss
│ │ ├── _typography.pcss
│ │ └── forms
│ │ ├── _attributes.pcss
│ │ ├── _controls.pcss
│ │ ├── _fieldset.pcss
│ │ ├── _label.pcss
│ │ ├── _legend.pcss
│ │ └── _validation.pcss
│ ├── vendor
│ ├── _all.pcss
│ ├── flatpickr
│ │ ├── _all.pcss
│ │ └── _default.pcss
│ └── swiper
│ │ ├── _all.pcss
│ │ ├── _default.pcss
│ │ └── _variables.pcss
│ └── wp-themes
│ ├── _all.pcss
│ ├── _flatsome.pcss
│ ├── _genesis-themes.pcss
│ ├── _shoptimizer.pcss
│ ├── _twenty-nineteen-theme.pcss
│ ├── _twenty-seventeen-theme.pcss
│ ├── _twenty-sixteen-theme.pcss
│ ├── _twenty-twenty-one-theme.pcss
│ ├── _twenty-twenty-theme.pcss
│ ├── _twenty-twenty-two-theme.pcss
│ └── _veganos.pcss
├── bigcommerce.php
├── build-timestamp.php
├── composer.json
├── composer.lock
├── dev_components
└── theme
│ ├── icons
│ └── bigcommerce
│ │ ├── Read Me.txt
│ │ ├── demo-files
│ │ ├── demo.css
│ │ └── demo.js
│ │ ├── demo.html
│ │ ├── fonts
│ │ ├── bigcommerce-icons.svg
│ │ ├── bigcommerce-icons.ttf
│ │ ├── bigcommerce-icons.woff
│ │ └── bigcommerce-icons.woff2
│ │ ├── selection.json
│ │ ├── style.css
│ │ ├── style.scss
│ │ └── variables.scss
│ ├── js
│ └── globals.js
│ └── pcss
│ └── functions.js
├── grunt_options
├── accessibility.js
├── browserSync.js
├── clean.js
├── concat.js
├── concurrent.js
├── copy.js
├── eslint.js
├── footer.js
├── header.js
├── lineending.js
├── postcss.js
├── replace.js
├── setPHPConstant.js
├── shell.js
├── uglify.js
├── unzip.js
├── watch.js
└── webpack.js
├── package.json
├── readme.txt
├── src
└── BigCommerce
│ ├── Accounts
│ ├── Channel_Settings.php
│ ├── Countries.php
│ ├── Customer.php
│ ├── Customer_Group.php
│ ├── Customer_Group_Proxy.php
│ ├── Login.php
│ ├── Nav_Menu.php
│ ├── Password_Reset.php
│ ├── Register.php
│ ├── Roles
│ │ ├── Customer.php
│ │ └── Role.php
│ ├── Sub_Nav.php
│ ├── User_Profile_Settings.php
│ └── Wishlists
│ │ ├── Actions
│ │ ├── Add_Item.php
│ │ ├── Create_Wishlist.php
│ │ ├── Delete_Wishlist.php
│ │ ├── Edit_Wishlist.php
│ │ ├── Remove_Item.php
│ │ ├── Request_Router.php
│ │ └── Wishlist_Action.php
│ │ ├── Add_Item_View.php
│ │ ├── Missing_Wishlist.php
│ │ ├── Public_Wishlist.php
│ │ ├── Wishlist.php
│ │ ├── Wishlist_Public_View.php
│ │ └── Wishlist_Request_Parser.php
│ ├── Amp
│ ├── Amp_Admin_Notices.php
│ ├── Amp_Assets.php
│ ├── Amp_Cart.php
│ ├── Amp_Cart_Menu_Item.php
│ ├── Amp_Controller_Factory.php
│ ├── Amp_Template_Override.php
│ ├── Classic.php
│ └── Overrides.php
│ ├── Analytics
│ ├── Events
│ │ ├── Add_To_Cart.php
│ │ └── View_Product.php
│ ├── Facebook_Pixel.php
│ ├── Google_Analytics.php
│ └── Segment.php
│ ├── Api
│ ├── Api_Config_Renewal.php
│ ├── Api_Data_Sanitizer.php
│ ├── Api_Scopes_Validator.php
│ ├── Banners_Api.php
│ ├── Base_Client.php
│ ├── Caching_Client.php
│ ├── Configuration.php
│ ├── ConfigurationRequiredException.php
│ ├── Currencies_Api.php
│ ├── Customer_Api.php
│ ├── Marketing_Api.php
│ ├── Null_Client.php
│ ├── Payments_Api.php
│ ├── Request_Headers.php
│ ├── Shipping_Api.php
│ ├── Store_Api.php
│ ├── Tax_Class_Api.php
│ ├── Webhooks_Api.php
│ └── v2ApiAdapter.php
│ ├── Api_Factory.php
│ ├── Assets
│ ├── Admin
│ │ ├── JS_Config.php
│ │ ├── JS_Localization.php
│ │ ├── Scripts.php
│ │ └── Styles.php
│ └── Theme
│ │ ├── Image_Sizes.php
│ │ ├── JS_Config.php
│ │ ├── JS_Localization.php
│ │ ├── Scripts.php
│ │ └── Styles.php
│ ├── Banners
│ └── Banners.php
│ ├── CLI
│ ├── Command.php
│ ├── Documentation
│ │ ├── Build_Docs.php
│ │ ├── Data_Importer.php
│ │ ├── Import_Docs.php
│ │ └── README.md
│ ├── Import_Products.php
│ ├── Reset_Plugin.php
│ ├── Resources
│ │ ├── Build_Resources.php
│ │ ├── README.md
│ │ ├── Resource.php
│ │ └── Resource_Group.php
│ └── Update_Country_Cache.php
│ ├── Cache
│ └── Cache_Handler.php
│ ├── Cart
│ ├── Add_To_Cart.php
│ ├── Buy_Now.php
│ ├── Cache_Control.php
│ ├── Cart.php
│ ├── Cart_Mapper.php
│ ├── Cart_Menu_Item.php
│ ├── Cart_Recovery.php
│ ├── Checkout.php
│ ├── Item_Counter.php
│ └── Mini_Cart.php
│ ├── Checkout
│ ├── Customer_Login.php
│ └── Requirements_Notice.php
│ ├── Compatibility
│ ├── Akismet
│ │ └── Akismet.php
│ ├── Matomo
│ │ └── Matomo.php
│ ├── Spam_Checker.php
│ ├── Template_Compatibility.php
│ ├── Themes
│ │ ├── Flatsome
│ │ │ ├── Flatsome.php
│ │ │ ├── Templates
│ │ │ │ └── Account_Links.php
│ │ │ └── functions.php
│ │ ├── Null_Theme.php
│ │ ├── Theme.php
│ │ └── Theme_Factory.php
│ ├── WooCommerce
│ │ ├── Cart.php
│ │ └── Facade.php
│ ├── woocommerce-functions.php
│ ├── wordpress-4-dot-9.php
│ └── wordpress-5-dot-1.php
│ ├── Container
│ ├── Accounts.php
│ ├── Amp.php
│ ├── Analytics.php
│ ├── Api.php
│ ├── Assets.php
│ ├── Banners.php
│ ├── Cart.php
│ ├── Checkout.php
│ ├── Cli.php
│ ├── Compatibility.php
│ ├── Currency.php
│ ├── Editor.php
│ ├── Forms.php
│ ├── Gift_Certificates.php
│ ├── GraphQL.php
│ ├── Image.php
│ ├── Import.php
│ ├── Log.php
│ ├── Merchant.php
│ ├── Nav_Menu.php
│ ├── Pages.php
│ ├── Post_Meta.php
│ ├── Post_Types.php
│ ├── Provider.php
│ ├── Proxy.php
│ ├── Rest.php
│ ├── Reviews.php
│ ├── Rewrites.php
│ ├── Schema.php
│ ├── Settings.php
│ ├── Shortcodes.php
│ ├── Taxonomies.php
│ ├── Templates.php
│ ├── Theme_Customizer.php
│ ├── Util.php
│ ├── Webhooks.php
│ └── Widgets.php
│ ├── Currency
│ ├── Configurable_Formatter.php
│ ├── Currency.php
│ ├── Currency_Formatter.php
│ ├── Formatter_Factory.php
│ ├── Intl_Formatter.php
│ ├── USD_Formatter.php
│ └── With_Currency.php
│ ├── Customizer
│ ├── Controls
│ │ └── Multiple_Checkboxes.php
│ ├── Panels
│ │ └── Primary.php
│ ├── Sections
│ │ ├── Banners.php
│ │ ├── Buttons.php
│ │ ├── Cart.php
│ │ ├── Checkout.php
│ │ ├── Colors.php
│ │ ├── Product_Archive.php
│ │ ├── Product_Category.php
│ │ └── Product_Single.php
│ └── Styles.php
│ ├── Editor
│ ├── Add_Products_Button.php
│ ├── Editor_Dialog_Template.php
│ └── Gutenberg
│ │ ├── Blocks
│ │ ├── Account_Profile.php
│ │ ├── Address_List.php
│ │ ├── Cart.php
│ │ ├── Checkout.php
│ │ ├── Gift_Certificate_Balance.php
│ │ ├── Gift_Certificate_Form.php
│ │ ├── Gutenberg_Block.php
│ │ ├── Login_Form.php
│ │ ├── Order_History.php
│ │ ├── Product_Components.php
│ │ ├── Product_Reviews.php
│ │ ├── Products.php
│ │ ├── Registration_Form.php
│ │ ├── Shortcode_Block.php
│ │ └── Wishlist.php
│ │ └── Migrate_Blocks.php
│ ├── Exceptions
│ ├── Channel_Not_Found_Exception.php
│ ├── Component_Not_Found_Exception.php
│ ├── No_Task_Found_Exception.php
│ └── Product_Not_Found_Exception.php
│ ├── Forms
│ ├── Delete_Address_Handler.php
│ ├── Error_Handler.php
│ ├── Form_Handler.php
│ ├── Form_Redirect.php
│ ├── Messages.php
│ ├── Product_Review_Handler.php
│ ├── Purchase_Gift_Certificate_Handler.php
│ ├── Registration_Handler.php
│ ├── Success_Handler.php
│ ├── Switch_Currency_Handler.php
│ ├── Update_Address_Handler.php
│ └── Update_Profile_Handler.php
│ ├── Functions
│ └── reviews.php
│ ├── Gift_Certificates
│ └── Sub_Nav.php
│ ├── GraphQL
│ ├── BaseGQL.php
│ ├── Customer_Query.php
│ ├── GraphQL_Processor.php
│ ├── Product_Query.php
│ ├── Reviews_Query.php
│ └── Terms_Query.php
│ ├── Import
│ ├── Cache_Cleanup.php
│ ├── Image_Importer.php
│ ├── Import_Strategy.php
│ ├── Import_Type.php
│ ├── Importers
│ │ ├── Products
│ │ │ ├── Product_Builder.php
│ │ │ ├── Product_Creator.php
│ │ │ ├── Product_Ignorer.php
│ │ │ ├── Product_Importer.php
│ │ │ ├── Product_Remover.php
│ │ │ ├── Product_Saver.php
│ │ │ ├── Product_Strategy_Factory.php
│ │ │ └── Product_Updater.php
│ │ └── Terms
│ │ │ ├── Term_Creator.php
│ │ │ ├── Term_Ignorer.php
│ │ │ ├── Term_Saver.php
│ │ │ ├── Term_Strategy_Factory.php
│ │ │ └── Term_Updater.php
│ ├── Mappers
│ │ ├── Brand_Mapper.php
│ │ ├── Product_Category_Mapper.php
│ │ └── Term_Mapper.php
│ ├── No_Cache_Options.php
│ ├── Processors
│ │ ├── Brand_Import.php
│ │ ├── Brand_Purge.php
│ │ ├── CategoriesTrees.php
│ │ ├── Category_Import.php
│ │ ├── Category_Purge.php
│ │ ├── Channel_Initializer.php
│ │ ├── Cleanup.php
│ │ ├── Currencies.php
│ │ ├── Default_Customer_Group.php
│ │ ├── Deleted_Product_Marker.php
│ │ ├── Error_Handler.php
│ │ ├── GQL
│ │ │ ├── brands.graphql
│ │ │ └── category-tree.graphql
│ │ ├── Headless.php
│ │ ├── Headless_Product_Processor.php
│ │ ├── Image_Resizer.php
│ │ ├── Import_Processor.php
│ │ ├── Listing_Fetcher.php
│ │ ├── ProductCleanup.php
│ │ ├── Product_Data_Fetcher.php
│ │ ├── Queue_Runner.php
│ │ ├── Start_Import.php
│ │ ├── Store_Settings.php
│ │ ├── Storefront_Processor.php
│ │ ├── Term_Import.php
│ │ └── Term_Purge.php
│ ├── Runner
│ │ ├── AsyncProcessing_Runner.php
│ │ ├── CLI_Runner.php
│ │ ├── Cron_Monitor.php
│ │ ├── Cron_Runner.php
│ │ ├── Cron_Scheduler.php
│ │ ├── Lock.php
│ │ ├── Lock_Monitor.php
│ │ └── Status.php
│ ├── Task_Definition.php
│ └── Task_Manager.php
│ ├── Logging
│ └── Error_Log.php
│ ├── Manager
│ ├── Channel_Update_Task.php
│ ├── Manager.php
│ └── Task.php
│ ├── Merchant
│ ├── Account_Status.php
│ ├── Connect_Account.php
│ ├── Create_Account.php
│ ├── Models
│ │ ├── Account_Contact.php
│ │ ├── Connect_Account_Request.php
│ │ ├── Create_Account_Request.php
│ │ └── Customer_Login_Request.php
│ ├── Onboarding_Api.php
│ └── Setup_Status.php
│ ├── Meta_Boxes
│ ├── Meta_Box.php
│ └── Post_Meta_Box.php
│ ├── Nav_Menu
│ ├── Dynamic_Menu_Items.php
│ ├── Nav_Items_Customizer.php
│ └── Nav_Items_Meta_Box.php
│ ├── Pages
│ ├── Account_Page.php
│ ├── Address_Page.php
│ ├── Cart_Page.php
│ ├── Check_Balance_Page.php
│ ├── Checkout_Complete_Page.php
│ ├── Checkout_Page.php
│ ├── Gift_Certificate_Page.php
│ ├── Login_Page.php
│ ├── Orders_Page.php
│ ├── Registration_Page.php
│ ├── Required_Page.php
│ ├── Shipping_Returns_Page.php
│ └── Wishlist_Page.php
│ ├── Plugin.php
│ ├── Post_Types
│ ├── Post_Type_Config.php
│ ├── Product
│ │ ├── Admin_List.php
│ │ ├── Admin_UI.php
│ │ ├── Channel_Indicator.php
│ │ ├── Channel_Sync.php
│ │ ├── Config.php
│ │ ├── Deletion.php
│ │ ├── Product.php
│ │ ├── Query.php
│ │ ├── Query_Mapper.php
│ │ ├── Reset_Listing.php
│ │ ├── Seo.php
│ │ ├── Single_Product_Sync.php
│ │ ├── Store_Links.php
│ │ ├── Unique_Slug_Filter.php
│ │ ├── Unsupported_Products.php
│ │ ├── WPGraph_Config.php
│ │ └── WPGraph_Product.php
│ ├── Queue_Task
│ │ ├── Config.php
│ │ └── Queue_Task.php
│ └── Sync_Log
│ │ ├── Config.php
│ │ └── Sync_Log.php
│ ├── Proxy
│ ├── AMP_Cart_Controller.php
│ ├── Proxy_Cache.php
│ └── Proxy_Controller.php
│ ├── Rest
│ ├── Cart_Controller.php
│ ├── Coupon_Code_Controller.php
│ ├── Orders_Shortcode_Controller.php
│ ├── Pricing_Controller.php
│ ├── Product_Component_Shortcode_Controller.php
│ ├── Products_Controller.php
│ ├── Rest_Controller.php
│ ├── Reviews_Listing_Controller.php
│ ├── Shipping_Controller.php
│ ├── Shortcode_Controller.php
│ ├── Storefront_Controller.php
│ └── Terms_Controller.php
│ ├── Reviews
│ ├── Product_Update_Listener.php
│ ├── Review_Builder.php
│ ├── Review_Cache.php
│ └── Review_Fetcher.php
│ ├── Rewrites
│ ├── Action_Endpoint.php
│ └── Flusher.php
│ ├── Schema
│ ├── Queue_Table.php
│ ├── Reviews_Table.php
│ ├── Schema.php
│ ├── Table_Maker.php
│ └── User_Roles.php
│ ├── Settings
│ ├── Abort_Import.php
│ ├── Connection_Status.php
│ ├── Flush_Cache.php
│ ├── Import_Now.php
│ ├── Import_Status.php
│ ├── Onboarding_Progress.php
│ ├── Onboarding_Videos.php
│ ├── Screens
│ │ ├── Abstract_Screen.php
│ │ ├── Api_Credentials_Screen.php
│ │ ├── Connect_Channel_Screen.php
│ │ ├── Create_Account_Screen.php
│ │ ├── Nav_Menu_Screen.php
│ │ ├── Onboarding_Complete_Screen.php
│ │ ├── Onboarding_Screen.php
│ │ ├── Pending_Account_Screen.php
│ │ ├── Resources_Screen.php
│ │ ├── Settings_Screen.php
│ │ ├── Store_Type_Screen.php
│ │ └── Welcome_Screen.php
│ ├── Sections
│ │ ├── Account_Settings.php
│ │ ├── Analytics.php
│ │ ├── Api_Credentials.php
│ │ ├── Cart.php
│ │ ├── Channel_Select.php
│ │ ├── Channels.php
│ │ ├── Currency.php
│ │ ├── Gift_Certificates.php
│ │ ├── Images.php
│ │ ├── Import.php
│ │ ├── ImportType.php
│ │ ├── Nav_Menu_Options.php
│ │ ├── New_Account_Section.php
│ │ ├── Next_Steps.php
│ │ ├── Onboarding_Import_Settings.php
│ │ ├── Reviews.php
│ │ ├── Settings_Section.php
│ │ ├── Troubleshooting_Diagnostics.php
│ │ ├── Units.php
│ │ ├── Webhooks.php
│ │ ├── Wishlists.php
│ │ └── WithPages.php
│ ├── Site_URL_Sync.php
│ └── Start_Over.php
│ ├── Shortcodes
│ ├── Account_Profile.php
│ ├── Address_List.php
│ ├── Cart.php
│ ├── Checkout.php
│ ├── Gift_Certificate_Balance.php
│ ├── Gift_Certificate_Form.php
│ ├── Login_Form.php
│ ├── Order_History.php
│ ├── Product_Components.php
│ ├── Product_Reviews.php
│ ├── Products.php
│ ├── Registration_Form.php
│ ├── Shortcode.php
│ └── Wishlist.php
│ ├── Taxonomies
│ ├── Availability
│ │ ├── Availability.php
│ │ └── Config.php
│ ├── Brand
│ │ ├── Brand.php
│ │ └── Config.php
│ ├── Channel
│ │ ├── Admin_Products_Filter.php
│ │ ├── BC_Status.php
│ │ ├── Channel.php
│ │ ├── Channel_Connector.php
│ │ ├── Channel_Synchronizer.php
│ │ ├── Config.php
│ │ ├── Connections.php
│ │ ├── Currency_Filter.php
│ │ ├── Query_Filter.php
│ │ └── Routes.php
│ ├── Condition
│ │ ├── Condition.php
│ │ └── Config.php
│ ├── Flag
│ │ ├── Config.php
│ │ └── Flag.php
│ ├── Product_Category
│ │ ├── Config.php
│ │ ├── Group_Filtered_Terms.php
│ │ ├── Product_Category.php
│ │ └── Query_Filter.php
│ ├── Product_Type
│ │ ├── Config.php
│ │ └── Product_Type.php
│ └── Taxonomy_Config.php
│ ├── Templates
│ ├── Address_Actions.php
│ ├── Address_Delete.php
│ ├── Address_Form.php
│ ├── Address_Formatted.php
│ ├── Address_List.php
│ ├── Address_New.php
│ ├── Amp_Cart_Actions.php
│ ├── Amp_Cart_Summary.php
│ ├── Amp_Cart_items.php
│ ├── Body_Classes.php
│ ├── CDN_Images.php
│ ├── Cart.php
│ ├── Cart_Action_Checkout.php
│ ├── Cart_Action_View.php
│ ├── Cart_Actions.php
│ ├── Cart_Coupon_Code.php
│ ├── Cart_Empty.php
│ ├── Cart_Error_Message.php
│ ├── Cart_Footer.php
│ ├── Cart_Header.php
│ ├── Cart_Items.php
│ ├── Cart_Summary.php
│ ├── Controller.php
│ ├── Controller_Factory.php
│ ├── Currency_Switcher_Form.php
│ ├── Fallback_Image.php
│ ├── Form_Controller.php
│ ├── Gift_Certificate_Balance_Form.php
│ ├── Gift_Certificate_Balance_Page.php
│ ├── Gift_Certificate_Balance_Response.php
│ ├── Gift_Certificate_Form.php
│ ├── Gift_Certificate_Page.php
│ ├── Gift_Certificate_Redemption_Instructions.php
│ ├── Inventory_Level.php
│ ├── Linked_Product_Featured_Image.php
│ ├── Login_Form.php
│ ├── Lost_Password_Form.php
│ ├── Message.php
│ ├── Message_Group.php
│ ├── Mini_Cart.php
│ ├── Mini_Cart_Actions.php
│ ├── Mini_Cart_Footer.php
│ ├── Mini_Cart_Header.php
│ ├── Mini_Cart_Items.php
│ ├── Mini_Cart_Summary.php
│ ├── No_Results.php
│ ├── Option_Types
│ │ ├── Option_Checkbox.php
│ │ ├── Option_Date.php
│ │ ├── Option_Dropdown.php
│ │ ├── Option_Number.php
│ │ ├── Option_Product_List.php
│ │ ├── Option_Product_List_With_Images.php
│ │ ├── Option_Radios.php
│ │ ├── Option_Rectangles.php
│ │ ├── Option_Swatch.php
│ │ ├── Option_Text.php
│ │ ├── Option_Textarea.php
│ │ └── Option_Type.php
│ ├── Order_Details.php
│ ├── Order_History.php
│ ├── Order_Not_Found.php
│ ├── Order_Product.php
│ ├── Order_Shipment.php
│ ├── Order_Summary.php
│ ├── Orders_Shortcode_Pagination.php
│ ├── Page_Wrapper.php
│ ├── Product_Archive.php
│ ├── Product_Brand.php
│ ├── Product_Card.php
│ ├── Product_Card_Preview.php
│ ├── Product_Condition.php
│ ├── Product_Description.php
│ ├── Product_Featured_Image.php
│ ├── Product_Form.php
│ ├── Product_Form_Preview.php
│ ├── Product_Gallery.php
│ ├── Product_Hidden_Price.php
│ ├── Product_Not_Available.php
│ ├── Product_Options.php
│ ├── Product_Price.php
│ ├── Product_Quick_View.php
│ ├── Product_Rating.php
│ ├── Product_Reviews.php
│ ├── Product_Shortcode_Grid.php
│ ├── Product_Shortcode_Pagination.php
│ ├── Product_Shortcode_Single.php
│ ├── Product_Shortcode_Single_Preview.php
│ ├── Product_Single.php
│ ├── Product_Sku.php
│ ├── Product_Specs.php
│ ├── Product_TemplateTrait.php
│ ├── Product_Title.php
│ ├── Profile_Form.php
│ ├── Quick_View_Image.php
│ ├── Refinement_Box.php
│ ├── Refinery.php
│ ├── Registration_Form.php
│ ├── Related_Product.php
│ ├── Related_Products_Grid.php
│ ├── Review_Form.php
│ ├── Review_List.php
│ ├── Review_List_Pagination.php
│ ├── Review_Single.php
│ ├── Search_Box.php
│ ├── Shipping_Info_Button.php
│ ├── Shipping_Methods.php
│ ├── Shipping_Zones_Dropdown.php
│ ├── Sub_Nav_Links.php
│ ├── Template.php
│ ├── Template_Override.php
│ ├── View_Product_Button.php
│ ├── Wishlist_Add_Item.php
│ ├── Wishlist_Create.php
│ ├── Wishlist_Delete.php
│ ├── Wishlist_Detail.php
│ ├── Wishlist_Detail_Breadcrumb.php
│ ├── Wishlist_Detail_Header.php
│ ├── Wishlist_Detail_Share.php
│ ├── Wishlist_Edit.php
│ ├── Wishlist_List.php
│ ├── Wishlist_List_Row.php
│ ├── Wishlist_New_Button.php
│ ├── Wishlist_New_Link.php
│ ├── Wishlist_Not_Available.php
│ └── Wishlist_Product.php
│ ├── Util
│ ├── Cart_Item_Iterator.php
│ └── Kses.php
│ ├── Webhooks
│ ├── Checkout_Complete_Webhook.php
│ ├── Customer
│ │ ├── Customer_Channel_Updater.php
│ │ ├── Customer_Channel_Webhook.php
│ │ ├── Customer_Create_Webhook.php
│ │ ├── Customer_Creator.php
│ │ ├── Customer_Delete_Webhook.php
│ │ ├── Customer_Deleter.php
│ │ ├── Customer_Saver.php
│ │ ├── Customer_Update_Webhook.php
│ │ └── Customer_Updater.php
│ ├── Product
│ │ ├── Channel_Updater.php
│ │ ├── Channels_Assign.php
│ │ ├── Channels_Currency_Update.php
│ │ ├── Channels_Management_Webhook.php
│ │ ├── Channels_Manager.php
│ │ ├── Channels_UnAssign.php
│ │ ├── Product_Create_Webhook.php
│ │ ├── Product_Creator.php
│ │ ├── Product_Delete_Webhook.php
│ │ ├── Product_Inventory_Update_Webhook.php
│ │ ├── Product_Update_Webhook.php
│ │ └── Product_Updater.php
│ ├── Status.php
│ ├── Webhook.php
│ ├── WebhookTrait.php
│ ├── Webhook_Cron_Tasks.php
│ ├── Webhook_Listener.php
│ └── Webhook_Versioning.php
│ └── Widgets
│ ├── Currency_Switcher_Widget.php
│ ├── Mini_Cart_Widget.php
│ └── Product_Category_Widget.php
├── templates
├── admin
│ ├── admin-dialog.php
│ ├── complete-screen.php
│ ├── next-steps.php
│ ├── onboarding-progress.php
│ ├── query-builder.php
│ ├── query-settings.php
│ ├── resources-screen.php
│ └── welcome-screen.php
└── public
│ ├── amp
│ ├── archive-bigcommerce_product.php
│ ├── components
│ │ ├── cart
│ │ │ ├── cart-actions.php
│ │ │ ├── cart-items.php
│ │ │ ├── cart-summary.php
│ │ │ └── cart.php
│ │ ├── catalog
│ │ │ ├── refinement-box.php
│ │ │ └── refinery.php
│ │ ├── header
│ │ │ └── header-bar.php
│ │ ├── option-types
│ │ │ ├── option-dropdown.php
│ │ │ ├── option-product-list-with-images.php
│ │ │ ├── option-radios.php
│ │ │ ├── option-rectangles.php
│ │ │ └── option-swatch.php
│ │ ├── products
│ │ │ ├── product-card.php
│ │ │ ├── product-featured-image.php
│ │ │ ├── product-form.php
│ │ │ ├── product-gallery.php
│ │ │ ├── product-options.php
│ │ │ ├── product-quick-view.php
│ │ │ ├── product-single.php
│ │ │ ├── product-title.php
│ │ │ ├── quick-view-image.php
│ │ │ └── view-product-button.php
│ │ └── reviews
│ │ │ ├── product-rating.php
│ │ │ └── review-form.php
│ └── single-bigcommerce_product.php
│ ├── archive-bigcommerce_product.php
│ ├── compatibility
│ └── themes
│ │ └── flatsome
│ │ └── myaccount
│ │ └── account-links.php
│ ├── components
│ ├── accounts
│ │ ├── address-actions.php
│ │ ├── address-delete.php
│ │ ├── address-form.php
│ │ ├── address-formatted.php
│ │ ├── address-list.php
│ │ ├── address-new.php
│ │ ├── login-form.php
│ │ ├── lostpassword-form.php
│ │ ├── profile-form.php
│ │ └── registration-form.php
│ ├── cart
│ │ ├── cart-action-checkout.php
│ │ ├── cart-action-view.php
│ │ ├── cart-actions.php
│ │ ├── cart-empty.php
│ │ ├── cart-error-message.php
│ │ ├── cart-footer.php
│ │ ├── cart-header.php
│ │ ├── cart-items.php
│ │ ├── cart-summary.php
│ │ ├── cart.php
│ │ ├── coupon-code.php
│ │ ├── mini-cart-footer.php
│ │ ├── mini-cart-header.php
│ │ ├── mini-cart-items.php
│ │ ├── mini-cart-summary.php
│ │ ├── mini-cart.php
│ │ ├── shipping-info-button.php
│ │ ├── shipping-methods.php
│ │ └── shipping-zones-dropdown.php
│ ├── catalog
│ │ ├── no-results.php
│ │ ├── product-archive.php
│ │ ├── refinement-box.php
│ │ ├── refinery.php
│ │ └── search-box.php
│ ├── currency-switcher-form.php
│ ├── fallback-image.php
│ ├── gift-certificates
│ │ ├── balance-form.php
│ │ ├── balance-response.php
│ │ ├── balance-shortcode.php
│ │ ├── purchase-form.php
│ │ ├── purchase-shortcode.php
│ │ └── redemption-instructions.php
│ ├── message-group.php
│ ├── message.php
│ ├── option-types
│ │ ├── option-checkbox.php
│ │ ├── option-date.php
│ │ ├── option-dropdown.php
│ │ ├── option-number.php
│ │ ├── option-product-list-with-images.php
│ │ ├── option-radios.php
│ │ ├── option-rectangles.php
│ │ ├── option-swatch.php
│ │ ├── option-text.php
│ │ └── option-textarea.php
│ ├── orders
│ │ ├── order-details.php
│ │ ├── order-history.php
│ │ ├── order-not-found.php
│ │ ├── order-product.php
│ │ ├── order-shipment.php
│ │ ├── order-summary.php
│ │ └── orders-shortcode-pagination.php
│ ├── page-wrapper.php
│ ├── products
│ │ ├── inventory-level.php
│ │ ├── not-available.php
│ │ ├── product-brand.php
│ │ ├── product-card.php
│ │ ├── product-condition.php
│ │ ├── product-description.php
│ │ ├── product-featured-image.php
│ │ ├── product-form-preview.php
│ │ ├── product-form.php
│ │ ├── product-gallery.php
│ │ ├── product-hidden-price.php
│ │ ├── product-modifiers.php
│ │ ├── product-options.php
│ │ ├── product-price.php
│ │ ├── product-quick-view.php
│ │ ├── product-shortcode-grid.php
│ │ ├── product-shortcode-pagination.php
│ │ ├── product-shortcode-single.php
│ │ ├── product-single.php
│ │ ├── product-sku.php
│ │ ├── product-specs.php
│ │ ├── product-title.php
│ │ ├── quick-view-image.php
│ │ ├── related-product-card.php
│ │ ├── related-products-grid.php
│ │ └── view-product-button.php
│ ├── reviews
│ │ ├── product-rating-header.php
│ │ ├── product-rating.php
│ │ ├── product-reviews.php
│ │ ├── review-form.php
│ │ ├── review-list-pagination.php
│ │ ├── review-list.php
│ │ └── review-single.php
│ ├── sub-nav-links.php
│ └── wishlist
│ │ ├── add-item.php
│ │ ├── create-form.php
│ │ ├── delete-form.php
│ │ ├── detail-breadcrumb.php
│ │ ├── detail-header.php
│ │ ├── detail-share.php
│ │ ├── detail.php
│ │ ├── edit-form.php
│ │ ├── list-row.php
│ │ ├── list.php
│ │ ├── new-button.php
│ │ ├── new-link.php
│ │ ├── not-available.php
│ │ └── product.php
│ └── single-bigcommerce_product.php
├── uninstall.php
├── vendor
├── autoload.php
├── bigcommerce
│ └── api
│ │ ├── .env-example
│ │ ├── .github
│ │ ├── ISSUE_TEMPLATE.md
│ │ └── PULL_REQUEST_TEMPLATE.md
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── CONTRIBUTING.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── composer.json
│ │ ├── phpunit.xml.dist
│ │ ├── src
│ │ └── Bigcommerce
│ │ │ └── Api
│ │ │ ├── Client.php
│ │ │ ├── ClientError.php
│ │ │ ├── Connection.php
│ │ │ ├── Error.php
│ │ │ ├── Filter.php
│ │ │ ├── NetworkError.php
│ │ │ ├── Resource.php
│ │ │ ├── Resources
│ │ │ ├── Address.php
│ │ │ ├── Brand.php
│ │ │ ├── Category.php
│ │ │ ├── Coupon.php
│ │ │ ├── Currency.php
│ │ │ ├── Customer.php
│ │ │ ├── DiscountRule.php
│ │ │ ├── Option.php
│ │ │ ├── OptionSet.php
│ │ │ ├── OptionSetOption.php
│ │ │ ├── OptionValue.php
│ │ │ ├── Order.php
│ │ │ ├── OrderProduct.php
│ │ │ ├── OrderStatus.php
│ │ │ ├── Page.php
│ │ │ ├── Product.php
│ │ │ ├── ProductConfigurableField.php
│ │ │ ├── ProductCustomField.php
│ │ │ ├── ProductImage.php
│ │ │ ├── ProductOption.php
│ │ │ ├── ProductReview.php
│ │ │ ├── ProductVideo.php
│ │ │ ├── RequestLog.php
│ │ │ ├── Rule.php
│ │ │ ├── RuleCondition.php
│ │ │ ├── Shipment.php
│ │ │ ├── ShippingMethod.php
│ │ │ ├── ShippingZone.php
│ │ │ ├── Sku.php
│ │ │ ├── SkuOption.php
│ │ │ └── TaxClass.php
│ │ │ └── ServerError.php
│ │ └── test
│ │ └── Unit
│ │ └── Api
│ │ ├── ClientErrorTest.php
│ │ ├── ClientTest.php
│ │ ├── ConnectionTest.php
│ │ ├── ErrorTest.php
│ │ ├── FilterTest.php
│ │ ├── NetworkErrorTest.php
│ │ ├── ResourceTest.php
│ │ ├── Resources
│ │ ├── BrandTest.php
│ │ ├── CategoryTest.php
│ │ ├── CouponTest.php
│ │ ├── CurrencyTest.php
│ │ ├── CustomerTest.php
│ │ ├── OptionSetOptionTest.php
│ │ ├── OptionSetTest.php
│ │ ├── OptionTest.php
│ │ ├── OptionValueTest.php
│ │ ├── OrderTest.php
│ │ ├── PageTest.php
│ │ ├── ProductCustomFieldTest.php
│ │ ├── ProductImageTest.php
│ │ ├── ProductOptionTest.php
│ │ ├── ProductTest.php
│ │ ├── RealTest.php
│ │ ├── ResourceTestBase.php
│ │ ├── RuleConditionTest.php
│ │ ├── RuleTest.php
│ │ ├── ShipmentTest.php
│ │ ├── ShippingMethodTest.php
│ │ ├── ShippingZoneTest.php
│ │ ├── SkuOptionTest.php
│ │ └── SkuTest.php
│ │ └── ServerErrorTest.php
├── composer
│ ├── ClassLoader.php
│ ├── LICENSE
│ ├── autoload_classmap.php
│ ├── autoload_files.php
│ ├── autoload_namespaces.php
│ ├── autoload_psr4.php
│ ├── autoload_real.php
│ ├── autoload_static.php
│ ├── installed.json
│ └── platform_check.php
├── firebase
│ └── php-jwt
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── composer.json
│ │ └── src
│ │ ├── BeforeValidException.php
│ │ ├── ExpiredException.php
│ │ ├── JWK.php
│ │ ├── JWT.php
│ │ ├── Key.php
│ │ └── SignatureInvalidException.php
├── moderntribe
│ └── bigcommerce-api-php-v3
│ │ ├── .gitignore
│ │ ├── .php_cs
│ │ ├── .swagger-codegen-ignore
│ │ ├── .travis.yml
│ │ ├── README.md
│ │ ├── autoload.php
│ │ ├── codegen.sh
│ │ ├── composer.json
│ │ ├── config.json
│ │ ├── docs
│ │ ├── client.md
│ │ ├── development.md
│ │ └── examples
│ │ │ ├── add-site-route.md
│ │ │ ├── add-to-cart.md
│ │ │ ├── catalog-get-products.md
│ │ │ ├── create-product.md
│ │ │ ├── create-widget.md
│ │ │ ├── oauth-token.md
│ │ │ └── update-variants.md
│ │ ├── git_push.sh
│ │ ├── phpunit.xml.dist
│ │ ├── src
│ │ ├── Api
│ │ │ ├── AbandonedCartApi.php
│ │ │ ├── CartApi.php
│ │ │ ├── CatalogApi.php
│ │ │ ├── ChannelsApi.php
│ │ │ ├── CheckoutApi.php
│ │ │ ├── CurrencyApi.php
│ │ │ ├── CustomersApi.php
│ │ │ ├── OrdersApi.php
│ │ │ ├── PriceListsApi.php
│ │ │ ├── PricingApi.php
│ │ │ ├── ScriptApi.php
│ │ │ ├── SettingsApi.php
│ │ │ ├── SitesApi.php
│ │ │ ├── ThemesApi.php
│ │ │ ├── WidgetApi.php
│ │ │ └── WishlistsApi.php
│ │ ├── ApiClient.php
│ │ ├── ApiException.php
│ │ ├── Configuration.php
│ │ ├── Model
│ │ │ ├── AVSResult.php
│ │ │ ├── AbandonedCartInfo.php
│ │ │ ├── AbandonedCartResponse.php
│ │ │ ├── Activate.php
│ │ │ ├── Address.php
│ │ │ ├── AddressForCustomer.php
│ │ │ ├── AddressProperties.php
│ │ │ ├── Adjuster.php
│ │ │ ├── AppliedCoupon.php
│ │ │ ├── AppliedDiscount.php
│ │ │ ├── BaseError.php
│ │ │ ├── BaseItem.php
│ │ │ ├── Brand.php
│ │ │ ├── BrandBase.php
│ │ │ ├── BrandCollectionResponse.php
│ │ │ ├── BrandPost.php
│ │ │ ├── BrandPut.php
│ │ │ ├── BrandResponse.php
│ │ │ ├── BulkPricingRule.php
│ │ │ ├── BulkPricingRuleBase.php
│ │ │ ├── BulkPricingRuleCollectionResponse.php
│ │ │ ├── BulkPricingRulePost.php
│ │ │ ├── BulkPricingRulePut.php
│ │ │ ├── BulkPricingRuleResponse.php
│ │ │ ├── BulkPricingTier.php
│ │ │ ├── CVVResult.php
│ │ │ ├── Cart.php
│ │ │ ├── CartCreateRequestData.php
│ │ │ ├── CartRedirectUrls.php
│ │ │ ├── CartRedirectUrlsResponse.php
│ │ │ ├── CartRequestData.php
│ │ │ ├── CartResponse.php
│ │ │ ├── CartUpdateRequest.php
│ │ │ ├── CartUpdateRequestData.php
│ │ │ ├── CatalogSummary.php
│ │ │ ├── CatalogSummaryResponse.php
│ │ │ ├── Category.php
│ │ │ ├── CategoryBase.php
│ │ │ ├── CategoryCollectionResponse.php
│ │ │ ├── CategoryNode.php
│ │ │ ├── CategoryPost.php
│ │ │ ├── CategoryPut.php
│ │ │ ├── CategoryResponse.php
│ │ │ ├── CategoryTreeCollectionResponse.php
│ │ │ ├── Channel.php
│ │ │ ├── ChannelCollectionResponse.php
│ │ │ ├── ChannelConfigMeta.php
│ │ │ ├── ChannelConfigMetaApp.php
│ │ │ ├── ChannelConfigMetaAppSections.php
│ │ │ ├── ChannelResponse.php
│ │ │ ├── Checkout.php
│ │ │ ├── CheckoutError.php
│ │ │ ├── CheckoutResponse.php
│ │ │ ├── CollectionMeta.php
│ │ │ ├── ComplexRule.php
│ │ │ ├── ComplexRuleBase.php
│ │ │ ├── ComplexRuleCollectionResponse.php
│ │ │ ├── ComplexRuleCondition.php
│ │ │ ├── ComplexRuleConditionBase.php
│ │ │ ├── ComplexRuleConditionPost.php
│ │ │ ├── ComplexRuleConditionPut.php
│ │ │ ├── ComplexRulePost.php
│ │ │ ├── ComplexRulePut.php
│ │ │ ├── ComplexRuleResponse.php
│ │ │ ├── ConfigurableField.php
│ │ │ ├── ConfigurableFieldBase.php
│ │ │ ├── ConfigurableFieldCollectionResponse.php
│ │ │ ├── ConfigurableFieldPost.php
│ │ │ ├── ConfigurableFieldPut.php
│ │ │ ├── ConfigurableFieldResponse.php
│ │ │ ├── Consignment.php
│ │ │ ├── ConsignmentCouponDiscount.php
│ │ │ ├── ConsignmentDiscount.php
│ │ │ ├── ConsignmentLineItem.php
│ │ │ ├── ContactEntity.php
│ │ │ ├── CouponCodeRequest.php
│ │ │ ├── CreateChannelRequest.php
│ │ │ ├── CreateConsignmentRequest.php
│ │ │ ├── CreditCard.php
│ │ │ ├── Currency.php
│ │ │ ├── CurrencyAssignmentResponse.php
│ │ │ ├── CurrencyAssignments.php
│ │ │ ├── Custom.php
│ │ │ ├── CustomField.php
│ │ │ ├── CustomFieldBase.php
│ │ │ ├── CustomFieldCollectionResponse.php
│ │ │ ├── CustomFieldPost.php
│ │ │ ├── CustomFieldPut.php
│ │ │ ├── CustomFieldResponse.php
│ │ │ ├── CustomUrlBrand.php
│ │ │ ├── CustomUrlCategory.php
│ │ │ ├── CustomUrlProduct.php
│ │ │ ├── Customer.php
│ │ │ ├── CustomerAttributeValue.php
│ │ │ ├── CustomerAttributeValueForCustomer.php
│ │ │ ├── CustomerAuthentication.php
│ │ │ ├── CustomerAuthenticationBase.php
│ │ │ ├── CustomerChannelIds.php
│ │ │ ├── CustomerCollectionResponse.php
│ │ │ ├── CustomerPost.php
│ │ │ ├── CustomerPut.php
│ │ │ ├── CustomersSettings.php
│ │ │ ├── CustomersSettingsData.php
│ │ │ ├── CustomersSettingsDataCustomerGroupSettings.php
│ │ │ ├── CustomersSettingsDataPrivacySettings.php
│ │ │ ├── DetailedErrors.php
│ │ │ ├── ErrorDetail.php
│ │ │ ├── ErrorResponse.php
│ │ │ ├── GQL_Term_Model.php
│ │ │ ├── GiftCertificate.php
│ │ │ ├── GiftWrapping.php
│ │ │ ├── ImageResponse.php
│ │ │ ├── ItemDigital.php
│ │ │ ├── ItemGiftCertificate.php
│ │ │ ├── ItemPhysical.php
│ │ │ ├── ItemPricing.php
│ │ │ ├── Job.php
│ │ │ ├── JobErrors.php
│ │ │ ├── JobId.php
│ │ │ ├── JobResponse.php
│ │ │ ├── JobWarnings.php
│ │ │ ├── Layout.php
│ │ │ ├── LayoutCollectionResponse.php
│ │ │ ├── LayoutRequest.php
│ │ │ ├── LayoutResponse.php
│ │ │ ├── LineItemGiftCertificateRequestData.php
│ │ │ ├── LineItemRequestData.php
│ │ │ ├── LineItems.php
│ │ │ ├── Listing.php
│ │ │ ├── ListingCollectionResponse.php
│ │ │ ├── ListingResponse.php
│ │ │ ├── ListingVariant.php
│ │ │ ├── Meta.php
│ │ │ ├── MetaFieldCollectionResponse.php
│ │ │ ├── Metafield.php
│ │ │ ├── MetafieldBase.php
│ │ │ ├── MetafieldPost.php
│ │ │ ├── MetafieldPut.php
│ │ │ ├── MetafieldResponse.php
│ │ │ ├── Modifier.php
│ │ │ ├── ModifierBase.php
│ │ │ ├── ModifierCollectionResponse.php
│ │ │ ├── ModifierPost.php
│ │ │ ├── ModifierPut.php
│ │ │ ├── ModifierResponse.php
│ │ │ ├── ModifierValue.php
│ │ │ ├── ModifierValueBase.php
│ │ │ ├── ModifierValueBaseAdjusters.php
│ │ │ ├── ModifierValueBaseAdjustersPurchasingDisabled.php
│ │ │ ├── ModifierValueCollectionResponse.php
│ │ │ ├── ModifierValuePost.php
│ │ │ ├── ModifierValuePut.php
│ │ │ ├── ModifierValueResponse.php
│ │ │ ├── NoContent.php
│ │ │ ├── NotFound.php
│ │ │ ├── Offline.php
│ │ │ ├── Option.php
│ │ │ ├── OptionBase.php
│ │ │ ├── OptionCollectionResponse.php
│ │ │ ├── OptionConfig.php
│ │ │ ├── OptionPost.php
│ │ │ ├── OptionPut.php
│ │ │ ├── OptionResponse.php
│ │ │ ├── OptionValue.php
│ │ │ ├── OptionValueBase.php
│ │ │ ├── OptionValueCollectionResponse.php
│ │ │ ├── OptionValuePost.php
│ │ │ ├── OptionValueProductBase.php
│ │ │ ├── OptionValueProductPost.php
│ │ │ ├── OptionValuePut.php
│ │ │ ├── OptionValueResponse.php
│ │ │ ├── OptionValueVariant.php
│ │ │ ├── OptionValueVariantPost.php
│ │ │ ├── Order.php
│ │ │ ├── OrderResponse.php
│ │ │ ├── Pagination.php
│ │ │ ├── PaginationLinks.php
│ │ │ ├── Placement.php
│ │ │ ├── PlacementRequest.php
│ │ │ ├── PlacementResponse.php
│ │ │ ├── PlacementsCollectionResponse.php
│ │ │ ├── PriceList.php
│ │ │ ├── PriceListAssignment.php
│ │ │ ├── PriceListBase.php
│ │ │ ├── PriceListCollectionAssignmentsResponse.php
│ │ │ ├── PriceListCollectionResponse.php
│ │ │ ├── PriceListPost.php
│ │ │ ├── PriceListPut.php
│ │ │ ├── PriceListResponse.php
│ │ │ ├── PriceRange.php
│ │ │ ├── PriceRecord.php
│ │ │ ├── PriceRecordBase.php
│ │ │ ├── PriceRecordBatchErrorResponse.php
│ │ │ ├── PriceRecordBatchErrorSet.php
│ │ │ ├── PriceRecordBatchItem.php
│ │ │ ├── PriceRecordCollectionPut.php
│ │ │ ├── PriceRecordCollectionResponse.php
│ │ │ ├── PriceRecordIdentifiers.php
│ │ │ ├── PriceRecordPut.php
│ │ │ ├── PriceRecordResponse.php
│ │ │ ├── PricingRequest.php
│ │ │ ├── PricingRequestItem.php
│ │ │ ├── PricingRequestItemOption.php
│ │ │ ├── PricingResponse.php
│ │ │ ├── Product.php
│ │ │ ├── ProductBase.php
│ │ │ ├── ProductCollectionResponse.php
│ │ │ ├── ProductImage.php
│ │ │ ├── ProductImageBase.php
│ │ │ ├── ProductImageCollectionResponse.php
│ │ │ ├── ProductImagePost.php
│ │ │ ├── ProductImagePut.php
│ │ │ ├── ProductImageResponse.php
│ │ │ ├── ProductOption.php
│ │ │ ├── ProductOptionSelection.php
│ │ │ ├── ProductPost.php
│ │ │ ├── ProductPut.php
│ │ │ ├── ProductResponse.php
│ │ │ ├── ProductReview.php
│ │ │ ├── ProductReviewBase.php
│ │ │ ├── ProductReviewCollectionResponse.php
│ │ │ ├── ProductReviewPost.php
│ │ │ ├── ProductReviewPut.php
│ │ │ ├── ProductReviewResponse.php
│ │ │ ├── ProductVideo.php
│ │ │ ├── ProductVideoBase.php
│ │ │ ├── ProductVideoCollectionResponse.php
│ │ │ ├── ProductVideoPost.php
│ │ │ ├── ProductVideoPut.php
│ │ │ ├── ProductVideoResponse.php
│ │ │ ├── ResourceImage.php
│ │ │ ├── Route.php
│ │ │ ├── RouteCollectionResponse.php
│ │ │ ├── RouteResponse.php
│ │ │ ├── Script.php
│ │ │ ├── ScriptPost.php
│ │ │ ├── ScriptPut.php
│ │ │ ├── ScriptResponse.php
│ │ │ ├── ScriptsResponse.php
│ │ │ ├── SelectedShippingOption.php
│ │ │ ├── Site.php
│ │ │ ├── SiteCreateRequest.php
│ │ │ ├── SiteResponse.php
│ │ │ ├── StoreCredit.php
│ │ │ ├── StoreCreditAmounts.php
│ │ │ ├── StoreCreditAmountsInner.php
│ │ │ ├── Subscriber.php
│ │ │ ├── SubscriberBase.php
│ │ │ ├── SubscriberCollectionResponse.php
│ │ │ ├── SubscriberPost.php
│ │ │ ├── SubscriberPut.php
│ │ │ ├── SubscriberResponse.php
│ │ │ ├── SuccessBatchResponse.php
│ │ │ ├── Tax.php
│ │ │ ├── TaxPrice.php
│ │ │ ├── Theme.php
│ │ │ ├── ThemeRegion.php
│ │ │ ├── ThemeRegionsCollectionResponse.php
│ │ │ ├── ThemeResponse.php
│ │ │ ├── ThemesCollectionResponse.php
│ │ │ ├── Transaction.php
│ │ │ ├── TransactionCollectionResponse.php
│ │ │ ├── TransactionPost.php
│ │ │ ├── TransactionResponse.php
│ │ │ ├── UpdateChannelRequest.php
│ │ │ ├── UpdateConsignmentRequest.php
│ │ │ ├── UpdateListingRequest.php
│ │ │ ├── Variant.php
│ │ │ ├── VariantBase.php
│ │ │ ├── VariantCollectionResponse.php
│ │ │ ├── VariantPost.php
│ │ │ ├── VariantProductPost.php
│ │ │ ├── VariantProductPut.php
│ │ │ ├── VariantPut.php
│ │ │ ├── VariantResponse.php
│ │ │ ├── Variation.php
│ │ │ ├── WhichThemeToDownload.php
│ │ │ ├── Widget.php
│ │ │ ├── WidgetCollectionResponse.php
│ │ │ ├── WidgetRequest.php
│ │ │ ├── WidgetResponse.php
│ │ │ ├── WidgetTemplate.php
│ │ │ ├── WidgetTemplateRequest.php
│ │ │ ├── WidgetTemplateResponse.php
│ │ │ ├── WidgetTemplatesCollectionResponse.php
│ │ │ ├── Wishlist.php
│ │ │ ├── WishlistAddItemsRequest.php
│ │ │ ├── WishlistCollectionResponse.php
│ │ │ ├── WishlistItem.php
│ │ │ ├── WishlistRequest.php
│ │ │ └── WishlistResponse.php
│ │ └── ObjectSerializer.php
│ │ └── swagger
│ │ ├── abandoned_cart.yaml
│ │ ├── cart.yaml
│ │ ├── channels.yaml
│ │ ├── checkout.yaml
│ │ ├── pricing.yaml
│ │ ├── sites.yaml
│ │ ├── swagger.yaml
│ │ ├── templates
│ │ ├── api.mustache
│ │ ├── configuration.mustache
│ │ ├── model.mustache
│ │ ├── model_enum.mustache
│ │ └── model_generic.mustache
│ │ ├── widgets.yaml
│ │ └── wishlist.yaml
├── monolog
│ └── monolog
│ │ ├── .php_cs
│ │ ├── CHANGELOG.md
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── composer.json
│ │ ├── doc
│ │ ├── 01-usage.md
│ │ ├── 02-handlers-formatters-processors.md
│ │ ├── 03-utilities.md
│ │ ├── 04-extending.md
│ │ └── sockets.md
│ │ ├── phpunit.xml.dist
│ │ ├── src
│ │ └── Monolog
│ │ │ ├── ErrorHandler.php
│ │ │ ├── Formatter
│ │ │ ├── ChromePHPFormatter.php
│ │ │ ├── ElasticaFormatter.php
│ │ │ ├── FlowdockFormatter.php
│ │ │ ├── FluentdFormatter.php
│ │ │ ├── FormatterInterface.php
│ │ │ ├── GelfMessageFormatter.php
│ │ │ ├── HtmlFormatter.php
│ │ │ ├── JsonFormatter.php
│ │ │ ├── LineFormatter.php
│ │ │ ├── LogglyFormatter.php
│ │ │ ├── LogstashFormatter.php
│ │ │ ├── MongoDBFormatter.php
│ │ │ ├── NormalizerFormatter.php
│ │ │ ├── ScalarFormatter.php
│ │ │ └── WildfireFormatter.php
│ │ │ ├── Handler
│ │ │ ├── AbstractHandler.php
│ │ │ ├── AbstractProcessingHandler.php
│ │ │ ├── AbstractSyslogHandler.php
│ │ │ ├── AmqpHandler.php
│ │ │ ├── BrowserConsoleHandler.php
│ │ │ ├── BufferHandler.php
│ │ │ ├── ChromePHPHandler.php
│ │ │ ├── CouchDBHandler.php
│ │ │ ├── CubeHandler.php
│ │ │ ├── Curl
│ │ │ │ └── Util.php
│ │ │ ├── DeduplicationHandler.php
│ │ │ ├── DoctrineCouchDBHandler.php
│ │ │ ├── DynamoDbHandler.php
│ │ │ ├── ElasticSearchHandler.php
│ │ │ ├── ErrorLogHandler.php
│ │ │ ├── FilterHandler.php
│ │ │ ├── FingersCrossed
│ │ │ │ ├── ActivationStrategyInterface.php
│ │ │ │ ├── ChannelLevelActivationStrategy.php
│ │ │ │ └── ErrorLevelActivationStrategy.php
│ │ │ ├── FingersCrossedHandler.php
│ │ │ ├── FirePHPHandler.php
│ │ │ ├── FleepHookHandler.php
│ │ │ ├── FlowdockHandler.php
│ │ │ ├── GelfHandler.php
│ │ │ ├── GroupHandler.php
│ │ │ ├── HandlerInterface.php
│ │ │ ├── HandlerWrapper.php
│ │ │ ├── HipChatHandler.php
│ │ │ ├── IFTTTHandler.php
│ │ │ ├── InsightOpsHandler.php
│ │ │ ├── LogEntriesHandler.php
│ │ │ ├── LogglyHandler.php
│ │ │ ├── MailHandler.php
│ │ │ ├── MandrillHandler.php
│ │ │ ├── MissingExtensionException.php
│ │ │ ├── MongoDBHandler.php
│ │ │ ├── NativeMailerHandler.php
│ │ │ ├── NewRelicHandler.php
│ │ │ ├── NullHandler.php
│ │ │ ├── PHPConsoleHandler.php
│ │ │ ├── PsrHandler.php
│ │ │ ├── PushoverHandler.php
│ │ │ ├── RavenHandler.php
│ │ │ ├── RedisHandler.php
│ │ │ ├── RollbarHandler.php
│ │ │ ├── RotatingFileHandler.php
│ │ │ ├── SamplingHandler.php
│ │ │ ├── Slack
│ │ │ │ └── SlackRecord.php
│ │ │ ├── SlackHandler.php
│ │ │ ├── SlackWebhookHandler.php
│ │ │ ├── SlackbotHandler.php
│ │ │ ├── SocketHandler.php
│ │ │ ├── StreamHandler.php
│ │ │ ├── SwiftMailerHandler.php
│ │ │ ├── SyslogHandler.php
│ │ │ ├── SyslogUdp
│ │ │ │ └── UdpSocket.php
│ │ │ ├── SyslogUdpHandler.php
│ │ │ ├── TestHandler.php
│ │ │ ├── WhatFailureGroupHandler.php
│ │ │ └── ZendMonitorHandler.php
│ │ │ ├── Logger.php
│ │ │ ├── Processor
│ │ │ ├── GitProcessor.php
│ │ │ ├── IntrospectionProcessor.php
│ │ │ ├── MemoryPeakUsageProcessor.php
│ │ │ ├── MemoryProcessor.php
│ │ │ ├── MemoryUsageProcessor.php
│ │ │ ├── MercurialProcessor.php
│ │ │ ├── ProcessIdProcessor.php
│ │ │ ├── ProcessorInterface.php
│ │ │ ├── PsrLogMessageProcessor.php
│ │ │ ├── TagProcessor.php
│ │ │ ├── UidProcessor.php
│ │ │ └── WebProcessor.php
│ │ │ ├── Registry.php
│ │ │ ├── ResettableInterface.php
│ │ │ ├── SignalHandler.php
│ │ │ └── Utils.php
│ │ └── tests
│ │ └── Monolog
│ │ ├── ErrorHandlerTest.php
│ │ ├── Formatter
│ │ ├── ChromePHPFormatterTest.php
│ │ ├── ElasticaFormatterTest.php
│ │ ├── FlowdockFormatterTest.php
│ │ ├── FluentdFormatterTest.php
│ │ ├── GelfMessageFormatterTest.php
│ │ ├── JsonFormatterTest.php
│ │ ├── LineFormatterTest.php
│ │ ├── LogglyFormatterTest.php
│ │ ├── LogstashFormatterTest.php
│ │ ├── MongoDBFormatterTest.php
│ │ ├── NormalizerFormatterTest.php
│ │ ├── ScalarFormatterTest.php
│ │ └── WildfireFormatterTest.php
│ │ ├── Handler
│ │ ├── AbstractHandlerTest.php
│ │ ├── AbstractProcessingHandlerTest.php
│ │ ├── AmqpHandlerTest.php
│ │ ├── BrowserConsoleHandlerTest.php
│ │ ├── BufferHandlerTest.php
│ │ ├── ChromePHPHandlerTest.php
│ │ ├── CouchDBHandlerTest.php
│ │ ├── DeduplicationHandlerTest.php
│ │ ├── DoctrineCouchDBHandlerTest.php
│ │ ├── DynamoDbHandlerTest.php
│ │ ├── ElasticSearchHandlerTest.php
│ │ ├── ErrorLogHandlerTest.php
│ │ ├── FilterHandlerTest.php
│ │ ├── FingersCrossedHandlerTest.php
│ │ ├── FirePHPHandlerTest.php
│ │ ├── Fixtures
│ │ │ └── .gitkeep
│ │ ├── FleepHookHandlerTest.php
│ │ ├── FlowdockHandlerTest.php
│ │ ├── GelfHandlerLegacyTest.php
│ │ ├── GelfHandlerTest.php
│ │ ├── GelfMockMessagePublisher.php
│ │ ├── GroupHandlerTest.php
│ │ ├── HandlerWrapperTest.php
│ │ ├── HipChatHandlerTest.php
│ │ ├── InsightOpsHandlerTest.php
│ │ ├── LogEntriesHandlerTest.php
│ │ ├── MailHandlerTest.php
│ │ ├── MockRavenClient.php
│ │ ├── MongoDBHandlerTest.php
│ │ ├── NativeMailerHandlerTest.php
│ │ ├── NewRelicHandlerTest.php
│ │ ├── NullHandlerTest.php
│ │ ├── PHPConsoleHandlerTest.php
│ │ ├── PsrHandlerTest.php
│ │ ├── PushoverHandlerTest.php
│ │ ├── RavenHandlerTest.php
│ │ ├── RedisHandlerTest.php
│ │ ├── RollbarHandlerTest.php
│ │ ├── RotatingFileHandlerTest.php
│ │ ├── SamplingHandlerTest.php
│ │ ├── Slack
│ │ │ └── SlackRecordTest.php
│ │ ├── SlackHandlerTest.php
│ │ ├── SlackWebhookHandlerTest.php
│ │ ├── SlackbotHandlerTest.php
│ │ ├── SocketHandlerTest.php
│ │ ├── StreamHandlerTest.php
│ │ ├── SwiftMailerHandlerTest.php
│ │ ├── SyslogHandlerTest.php
│ │ ├── SyslogUdpHandlerTest.php
│ │ ├── TestHandlerTest.php
│ │ ├── UdpSocketTest.php
│ │ ├── WhatFailureGroupHandlerTest.php
│ │ └── ZendMonitorHandlerTest.php
│ │ ├── LoggerTest.php
│ │ ├── Processor
│ │ ├── GitProcessorTest.php
│ │ ├── IntrospectionProcessorTest.php
│ │ ├── MemoryPeakUsageProcessorTest.php
│ │ ├── MemoryUsageProcessorTest.php
│ │ ├── MercurialProcessorTest.php
│ │ ├── ProcessIdProcessorTest.php
│ │ ├── PsrLogMessageProcessorTest.php
│ │ ├── TagProcessorTest.php
│ │ ├── UidProcessorTest.php
│ │ └── WebProcessorTest.php
│ │ ├── PsrLogCompatTest.php
│ │ ├── RegistryTest.php
│ │ ├── SignalHandlerTest.php
│ │ └── TestCase.php
├── paragonie
│ └── random_compat
│ │ ├── LICENSE
│ │ ├── composer.json
│ │ ├── dist
│ │ ├── random_compat.phar.pubkey
│ │ └── random_compat.phar.pubkey.asc
│ │ └── lib
│ │ ├── byte_safe_strings.php
│ │ ├── cast_to_int.php
│ │ ├── error_polyfill.php
│ │ ├── random.php
│ │ ├── random_bytes_com_dotnet.php
│ │ ├── random_bytes_dev_urandom.php
│ │ ├── random_bytes_libsodium.php
│ │ ├── random_bytes_libsodium_legacy.php
│ │ ├── random_bytes_mcrypt.php
│ │ └── random_int.php
├── pimple
│ └── pimple
│ │ ├── .gitignore
│ │ ├── .travis.yml
│ │ ├── CHANGELOG
│ │ ├── LICENSE
│ │ ├── README.rst
│ │ ├── composer.json
│ │ ├── ext
│ │ └── pimple
│ │ │ ├── .gitignore
│ │ │ ├── README.md
│ │ │ ├── config.m4
│ │ │ ├── config.w32
│ │ │ ├── php_pimple.h
│ │ │ ├── pimple.c
│ │ │ ├── pimple_compat.h
│ │ │ └── tests
│ │ │ ├── 001.phpt
│ │ │ ├── 002.phpt
│ │ │ ├── 003.phpt
│ │ │ ├── 004.phpt
│ │ │ ├── 005.phpt
│ │ │ ├── 006.phpt
│ │ │ ├── 007.phpt
│ │ │ ├── 008.phpt
│ │ │ ├── 009.phpt
│ │ │ ├── 010.phpt
│ │ │ ├── 011.phpt
│ │ │ ├── 012.phpt
│ │ │ ├── 013.phpt
│ │ │ ├── 014.phpt
│ │ │ ├── 015.phpt
│ │ │ ├── 016.phpt
│ │ │ ├── 017.phpt
│ │ │ ├── 017_1.phpt
│ │ │ ├── 018.phpt
│ │ │ ├── 019.phpt
│ │ │ ├── bench.phpb
│ │ │ └── bench_shared.phpb
│ │ ├── phpunit.xml.dist
│ │ └── src
│ │ └── Pimple
│ │ ├── Container.php
│ │ ├── Exception
│ │ ├── ExpectedInvokableException.php
│ │ ├── FrozenServiceException.php
│ │ ├── InvalidServiceIdentifierException.php
│ │ └── UnknownIdentifierException.php
│ │ ├── Psr11
│ │ ├── Container.php
│ │ └── ServiceLocator.php
│ │ ├── ServiceIterator.php
│ │ ├── ServiceProviderInterface.php
│ │ └── Tests
│ │ ├── Fixtures
│ │ ├── Invokable.php
│ │ ├── NonInvokable.php
│ │ ├── PimpleServiceProvider.php
│ │ └── Service.php
│ │ ├── PimpleServiceProviderInterfaceTest.php
│ │ ├── PimpleTest.php
│ │ ├── Psr11
│ │ ├── ContainerTest.php
│ │ └── ServiceLocatorTest.php
│ │ └── ServiceIteratorTest.php
├── psr
│ ├── container
│ │ ├── .gitignore
│ │ ├── LICENSE
│ │ ├── README.md
│ │ ├── composer.json
│ │ └── src
│ │ │ ├── ContainerExceptionInterface.php
│ │ │ ├── ContainerInterface.php
│ │ │ └── NotFoundExceptionInterface.php
│ └── log
│ │ ├── LICENSE
│ │ ├── Psr
│ │ └── Log
│ │ │ ├── AbstractLogger.php
│ │ │ ├── InvalidArgumentException.php
│ │ │ ├── LogLevel.php
│ │ │ ├── LoggerAwareInterface.php
│ │ │ ├── LoggerAwareTrait.php
│ │ │ ├── LoggerInterface.php
│ │ │ ├── LoggerTrait.php
│ │ │ ├── NullLogger.php
│ │ │ └── Test
│ │ │ ├── DummyTest.php
│ │ │ ├── LoggerInterfaceTest.php
│ │ │ └── TestLogger.php
│ │ ├── README.md
│ │ └── composer.json
└── vlucas
│ └── phpdotenv
│ ├── LICENSE.txt
│ ├── composer.json
│ └── src
│ ├── Dotenv.php
│ ├── Exception
│ ├── ExceptionInterface.php
│ ├── InvalidCallbackException.php
│ ├── InvalidFileException.php
│ ├── InvalidPathException.php
│ └── ValidationException.php
│ ├── Loader.php
│ └── Validator.php
├── webpack.config.js
└── yarn.lock
/.github/ISSUE_TEMPLATE.md:
--------------------------------------------------------------------------------
1 | ### Expected behavior
2 |
3 |
4 | ### Actual behavior
5 |
6 |
7 | ### Steps to reproduce behavior
8 |
9 | 1.
10 | 2.
11 |
12 | ### Screenshot/Video (if applicable)
13 |
14 | 
15 |
16 | ### Workaround or possible solution
17 |
18 |
--------------------------------------------------------------------------------
/.github/PULL_REQUEST_TEMPLATE.md:
--------------------------------------------------------------------------------
1 | #### What?
2 |
3 | A description about what this pull request implements and its purpose. Try to be detailed and describe any technical details to simplify the job of the reviewer and the individual on production support.
4 |
5 | #### Tickets / Documentation
6 |
7 | Add links to any relevant tickets and documentation.
8 |
9 | - [Link 1](http://example.com)
10 | - ...
11 |
12 | #### Screenshots (if appropriate)
13 |
14 | Attach images or add image links here.
15 |
16 | 
17 |
--------------------------------------------------------------------------------
/.github/workflows/push.yml:
--------------------------------------------------------------------------------
1 | on:
2 | release:
3 | types: [published]
4 | name: Deploy to WordPress.org
5 | jobs:
6 | tag:
7 | name: New Release
8 | runs-on: ubuntu-latest
9 | steps:
10 | - uses: actions/checkout@main
11 | # See https://github.com/actions/runner/issues/2033
12 | - name: WordPress Plugin Deploy
13 | uses: 10up/action-wordpress-plugin-deploy@develop
14 | env:
15 | SVN_PASSWORD: ${{ secrets.SVN_PASSWORD }}
16 | SVN_USERNAME: ${{ secrets.SVN_USERNAME }}
17 | SLUG: bigcommerce
18 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # generated files #
2 | ###################
3 |
4 | .DS_Store*
5 | ehthumbs.db
6 | ._*
7 | *~
8 | .svn
9 | .cvs
10 | *.bak
11 | *.swp
12 | Thumbs.db
13 | .DS_Store
14 | .idea
15 | pimple.json
16 | .phpstorm.meta.php
17 | *.un~
18 | .sass-cache
19 | .scssc
20 | /node_modules/
21 | phpdoc.json
22 |
23 | # Packages #
24 | ############
25 |
26 | *.7z
27 | *.dmg
28 | *.gz
29 | *.bz2
30 | *.iso
31 | *.jar
32 | *.rar
33 | *.tar
34 | *.zip
35 | *.tgz
36 |
37 | # Logs and databases #
38 | ######################
39 |
40 | *.log
41 | *.sql
42 |
43 | # Local configuration #
44 | #######################
45 |
46 | local-config.json
47 |
--------------------------------------------------------------------------------
/.nvmrc:
--------------------------------------------------------------------------------
1 | 8.9.3
--------------------------------------------------------------------------------
/assets/fonts/icons-bigcommerce/bigcommerce-icons.ttf:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/fonts/icons-bigcommerce/bigcommerce-icons.ttf
--------------------------------------------------------------------------------
/assets/fonts/icons-bigcommerce/bigcommerce-icons.woff:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/fonts/icons-bigcommerce/bigcommerce-icons.woff
--------------------------------------------------------------------------------
/assets/fonts/icons-bigcommerce/bigcommerce-icons.woff2:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/fonts/icons-bigcommerce/bigcommerce-icons.woff2
--------------------------------------------------------------------------------
/assets/img/admin/Gutenberg-Block_Addresses.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/Gutenberg-Block_Addresses.png
--------------------------------------------------------------------------------
/assets/img/admin/Gutenberg-Block_Cart.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/Gutenberg-Block_Cart.png
--------------------------------------------------------------------------------
/assets/img/admin/Gutenberg-Block_Checkout.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/Gutenberg-Block_Checkout.png
--------------------------------------------------------------------------------
/assets/img/admin/Gutenberg-Block_Gift-Cert-Balance.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/Gutenberg-Block_Gift-Cert-Balance.png
--------------------------------------------------------------------------------
/assets/img/admin/Gutenberg-Block_Gift-Cert-Form.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/Gutenberg-Block_Gift-Cert-Form.png
--------------------------------------------------------------------------------
/assets/img/admin/Gutenberg-Block_LogIn.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/Gutenberg-Block_LogIn.png
--------------------------------------------------------------------------------
/assets/img/admin/Gutenberg-Block_My-Account.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/Gutenberg-Block_My-Account.png
--------------------------------------------------------------------------------
/assets/img/admin/Gutenberg-Block_Order-History.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/Gutenberg-Block_Order-History.png
--------------------------------------------------------------------------------
/assets/img/admin/Gutenberg-Block_Product_Reviews.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/Gutenberg-Block_Product_Reviews.png
--------------------------------------------------------------------------------
/assets/img/admin/Gutenberg-Block_Register-Form.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/Gutenberg-Block_Register-Form.png
--------------------------------------------------------------------------------
/assets/img/admin/Gutenberg-Block_Wishlist.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/Gutenberg-Block_Wishlist.png
--------------------------------------------------------------------------------
/assets/img/admin/big-commerce-logo.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/big-commerce-logo.png
--------------------------------------------------------------------------------
/assets/img/admin/big-commerce-logo2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/big-commerce-logo2x.png
--------------------------------------------------------------------------------
/assets/img/admin/bigcommerce-resource-thumbnail-2x.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/bigcommerce-resource-thumbnail-2x.png
--------------------------------------------------------------------------------
/assets/img/admin/bigcommerce-resource-thumbnail.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/admin/bigcommerce-resource-thumbnail.png
--------------------------------------------------------------------------------
/assets/img/admin/icons/cross.svg:
--------------------------------------------------------------------------------
1 |
--------------------------------------------------------------------------------
/assets/img/admin/icons/placeholder.svg:
--------------------------------------------------------------------------------
1 |
2 |
3 |
16 |
--------------------------------------------------------------------------------
/assets/img/public/bc-product-placeholder--large.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/public/bc-product-placeholder--large.jpg
--------------------------------------------------------------------------------
/assets/img/public/bc-product-placeholder--medium.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/public/bc-product-placeholder--medium.jpg
--------------------------------------------------------------------------------
/assets/img/public/bc-product-placeholder--small.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/public/bc-product-placeholder--small.jpg
--------------------------------------------------------------------------------
/assets/img/public/bc-product-placeholder.jpg:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/public/bc-product-placeholder.jpg
--------------------------------------------------------------------------------
/assets/img/public/legacy-browser/chrome.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/public/legacy-browser/chrome.png
--------------------------------------------------------------------------------
/assets/img/public/legacy-browser/firefox.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/public/legacy-browser/firefox.png
--------------------------------------------------------------------------------
/assets/img/public/legacy-browser/ie.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/public/legacy-browser/ie.png
--------------------------------------------------------------------------------
/assets/img/public/legacy-browser/safari.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/public/legacy-browser/safari.png
--------------------------------------------------------------------------------
/assets/img/public/shims/16x9.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/public/shims/16x9.png
--------------------------------------------------------------------------------
/assets/img/public/shims/1x1.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/img/public/shims/1x1.png
--------------------------------------------------------------------------------
/assets/js/src/admin/config/i18n.js:
--------------------------------------------------------------------------------
1 | export const I18N = window.bigcommerce_admin_i18n || {};
2 |
--------------------------------------------------------------------------------
/assets/js/src/admin/config/options.js:
--------------------------------------------------------------------------------
1 | import globalState from './state';
2 | // breakpoint settings
3 |
4 | export const MOBILE_BREAKPOINT = 768;
5 | export const WP_ADMIN_BREAKPOINT = 782;
6 | export const WP_ADMIN_BAR_HEIGHT = globalState.is_mobile ? 46 : 32;
7 |
--------------------------------------------------------------------------------
/assets/js/src/admin/config/shortcode-state.js:
--------------------------------------------------------------------------------
1 |
2 | export default {
3 | isFetching: false,
4 | isGutenberg: false,
5 | currentEditor: '',
6 | productHTML: '',
7 | wpAPIDisplaySettings: {
8 | order: '',
9 | orderby: '',
10 | per_page: '',
11 | },
12 | wpAPIQueryObj: {
13 | bigcommerce_flag: [],
14 | bigcommerce_brand: [],
15 | bigcommerce_category: [],
16 | bigcommerce_channel: '',
17 | recent: [],
18 | search: [],
19 | },
20 | selectedProducts: {
21 | bc_id: [],
22 | },
23 | insertCallback: false,
24 | };
25 |
--------------------------------------------------------------------------------
/assets/js/src/admin/config/state.js:
--------------------------------------------------------------------------------
1 |
2 | export default {
3 | desktop_initialized: false,
4 | is_desktop: false,
5 | is_mobile: false,
6 | mobile_initialized: false,
7 | v_height: 0,
8 | v_width: 0,
9 | };
10 |
--------------------------------------------------------------------------------
/assets/js/src/admin/core/plugins.js:
--------------------------------------------------------------------------------
1 | // @flow
2 | /**
3 | * @module
4 | * @exports plugins
5 | * @description Kicks in any third party plugins that operate on
6 | * a sitewide basis.
7 | */
8 |
9 | const plugins = () => {
10 | // initialize global external plugins here
11 | };
12 |
13 | export default plugins;
14 |
--------------------------------------------------------------------------------
/assets/js/src/admin/core/resize.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module
3 | * @exports resize
4 | * @description Kicks in any third party plugins that operate on a sitewide basis.
5 | */
6 |
7 | import { trigger } from '../../utils/events';
8 | import viewportDims from './viewport-dims';
9 |
10 | const resize = () => {
11 | // code for resize events can go here
12 |
13 | viewportDims();
14 |
15 | trigger({ event: 'modern_tribe/resize_executed', native: false });
16 | };
17 |
18 | export default resize;
19 |
--------------------------------------------------------------------------------
/assets/js/src/admin/core/viewport-dims.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module
3 | * @exports viewportDims
4 | * @description Sets viewport dimensions using verge on shared state
5 | * and detects mobile or desktop state.
6 | */
7 |
8 | import verge from 'verge';
9 | import state from '../config/state';
10 | import { WP_ADMIN_BREAKPOINT } from '../config/options';
11 |
12 | const viewportDims = () => {
13 | state.v_height = verge.viewportH();
14 | state.v_width = verge.viewportW();
15 |
16 | if (state.v_width >= WP_ADMIN_BREAKPOINT) {
17 | state.is_desktop = true;
18 | state.is_mobile = false;
19 | } else {
20 | state.is_desktop = false;
21 | state.is_mobile = true;
22 | }
23 | };
24 |
25 | export default viewportDims;
26 |
--------------------------------------------------------------------------------
/assets/js/src/admin/customizer/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Customizer
3 | * @description Clearinghouse for loading all Theme Customizer scripts.
4 | */
5 |
6 | import multiCheckboxes from './multiple-checkboxes';
7 | import * as tools from '../../utils/tools';
8 |
9 | const init = () => {
10 | /** Note: make sure to look for element after "DOM ready" */
11 | const customizer = tools.getNodes('#customize-controls', false, document, true)[0];
12 |
13 | if (!customizer) {
14 | return;
15 | }
16 |
17 | multiCheckboxes(customizer);
18 |
19 | console.info('BigCommerce: Initialized Theme Customizer Scripts.');
20 | };
21 |
22 | export default init;
23 |
--------------------------------------------------------------------------------
/assets/js/src/admin/gutenberg/blocks/product-components/edit.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Edit
3 | * @description Product Components block edit method.
4 | */
5 |
6 | import InstancedEdit from './instancedEdit';
7 |
8 | const { withInstanceId } = wp.compose;
9 |
10 | const editBlock = withInstanceId(InstancedEdit);
11 |
12 | export default editBlock;
13 |
--------------------------------------------------------------------------------
/assets/js/src/admin/gutenberg/blocks/product-components/product-components.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Gutenberg
3 | * @description Register the Cart Gutenberg block
4 | */
5 |
6 | import editBlock from './edit';
7 | import ShortcodeBlock from '../shortcode-block/shortcode-block';
8 |
9 | export default class ProductComponentBlock extends ShortcodeBlock {
10 | constructor(config) {
11 | super(config);
12 | this.edit = editBlock;
13 | this.attributes = {
14 | shortcode: {
15 | type: 'string',
16 | default: `[${this.config.shortcode}]`,
17 | },
18 | productId: {
19 | type: 'string',
20 | default: '',
21 | },
22 | componentType: {
23 | type: 'string',
24 | default: 'title',
25 | },
26 | };
27 | }
28 | }
29 |
--------------------------------------------------------------------------------
/assets/js/src/admin/gutenberg/blocks/product-reviews/product-reviews.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Gutenberg
3 | * @description Register the Cart Gutenberg block
4 | */
5 |
6 | import editBlock from './edit';
7 | import ShortcodeBlock from '../shortcode-block/shortcode-block';
8 |
9 | export default class ProductReviewBlock extends ShortcodeBlock {
10 | constructor(config) {
11 | super(config);
12 | this.edit = editBlock;
13 | this.attributes = {
14 | shortcode: {
15 | type: 'string',
16 | default: `[${this.config.shortcode}]`,
17 | },
18 | productId: {
19 | type: 'string',
20 | default: '',
21 | },
22 | };
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/assets/js/src/admin/gutenberg/blocks/products/save.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Save
3 | * @description Products block save method.
4 | */
5 |
6 | const saveBlock = (props) => {
7 | const { shortcode } = props.attributes;
8 |
9 |
10 | return (
11 |
14 | { shortcode }
15 |
16 | );
17 | };
18 |
19 | export default saveBlock;
20 |
--------------------------------------------------------------------------------
/assets/js/src/admin/gutenberg/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Gutenberg
3 | * @description Clearinghouse for loading all Gutenberg scripts.
4 | */
5 |
6 | import dialog from '../shortcode-ui/dialog-ui';
7 | import plugins from './plugins/index';
8 | import initBlocks from './blocks/index';
9 | import shortcodeState from '../config/shortcode-state';
10 |
11 | const initGutenbergScripts = () => {
12 | shortcodeState.isGutenberg = true;
13 | plugins();
14 | dialog();
15 | initBlocks();
16 | };
17 |
18 | initGutenbergScripts();
19 |
--------------------------------------------------------------------------------
/assets/js/src/admin/gutenberg/plugins/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Gutenberg Plugins
3 | * @description Clearing house for gutenberg plugins.
4 | */
5 |
6 | import channelIndicator from './channel-indicator';
7 | import storeLink from './store-link';
8 |
9 | const initPlugins = () => {
10 | channelIndicator();
11 | storeLink();
12 |
13 | console.info('BigCommerce: Initialized Gutenberg plugin scripts.');
14 | };
15 |
16 | const init = () => {
17 | window.bigcommerce_gutenberg_config.initPlugins = initPlugins;
18 | };
19 |
20 | export default init;
21 |
--------------------------------------------------------------------------------
/assets/js/src/admin/index.js:
--------------------------------------------------------------------------------
1 |
2 | import ready from './core/ready';
3 |
4 | ready();
5 |
--------------------------------------------------------------------------------
/assets/js/src/admin/resources/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module BigCommerce Resources
3 | * @description Clearinghouse for resources page scripts.
4 | */
5 |
6 | import tabs from './tabs';
7 | import resources from './resources';
8 |
9 | const init = () => {
10 | resources()
11 | .then(tabs);
12 | };
13 |
14 | export default init;
15 |
--------------------------------------------------------------------------------
/assets/js/src/admin/shortcode-ui/term-template.js:
--------------------------------------------------------------------------------
1 | export const termTemplate = termData => (
2 | `
3 |
4 |
5 | ${termData.label}
6 |
9 |
10 |
11 | `
12 | );
13 |
--------------------------------------------------------------------------------
/assets/js/src/admin/templates/dynamic-state-input.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @template Input Field of States/Provinces.
3 | * @param fieldId
4 | * @param fieldName
5 | * @param initValue
6 | * @returns {string}
7 | */
8 | export const stateInputField = (fieldId, fieldName, initValue) => (
9 | ``
10 | );
11 |
--------------------------------------------------------------------------------
/assets/js/src/admin/templates/dynamic-state-select.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @template Select Field of States/Provinces.
3 | * @param states
4 | * @param initValue
5 | * @returns {string}
6 | */
7 | export const stateSelectField = (states, fieldId, fieldName, initValue) => (
8 | `
9 |
14 | `
15 | );
16 |
--------------------------------------------------------------------------------
/assets/js/src/constants/cookies.js:
--------------------------------------------------------------------------------
1 |
2 | export const CART_ID_COOKIE_NAME = 'wp-bigcommerce_cart_id';
3 | export const CART_ITEM_COUNT_COOKIE = 'wp-bigcommerce_cart_item_count';
4 | export const DEPRECATED_CART_ID_COOKIE_NAME = 'bigcommerce_cart_id';
5 | export const DEPRECATED_CART_ITEM_COUNT_COOKIE = 'bigcommerce_cart_item_count';
6 |
--------------------------------------------------------------------------------
/assets/js/src/constants/events.js:
--------------------------------------------------------------------------------
1 | // custom events
2 | export const AJAX_CART_UPDATE = 'bigcommerce/ajax_cart_update';
3 | export const HANDLE_CART_STATE = 'bigcommerce/handle_cart_state';
4 | export const HANDLE_COUPON_CODE = 'bigcommerce/handle_coupon_code';
5 |
--------------------------------------------------------------------------------
/assets/js/src/public/analytics/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Analytics Tracking Events
3 | * @description Clearing house to load all public analytics functionality.
4 | */
5 |
6 | import segment from './segment';
7 | import matomo from './matomo';
8 |
9 | const init = () => {
10 | segment();
11 | matomo();
12 | };
13 |
14 | export default init;
15 |
--------------------------------------------------------------------------------
/assets/js/src/public/api/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Global BigCommerce Javascript
3 | * @description Clearinghouse for global BigCommerce JS API methods.
4 | */
5 |
6 | import cart from './cart';
7 |
8 | const init = () => {
9 | cart();
10 | };
11 |
12 | export default init;
13 |
--------------------------------------------------------------------------------
/assets/js/src/public/banners/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Banners
3 | * @description Clearinghouse for all banner scripts.
4 | */
5 |
6 | import banners from './banners';
7 |
8 | const init = () => {
9 | banners();
10 | };
11 |
12 | export default init;
13 |
--------------------------------------------------------------------------------
/assets/js/src/public/buttons/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Buttons Buttons Buttons
3 | * @description Clearing house to load all public button functionality.
4 | */
5 |
6 | import quickViewDialog from './quick-view-dialog';
7 | import pagination from './pagination';
8 |
9 | const init = () => {
10 | quickViewDialog();
11 | pagination();
12 | };
13 |
14 | export default init;
15 |
--------------------------------------------------------------------------------
/assets/js/src/public/cart/cart-templates.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Cart Templates
3 | */
4 |
5 | import { NLS } from '../config/i18n';
6 |
7 | export const cartEmpty = (
8 | `
9 |
13 | `
14 | );
15 |
--------------------------------------------------------------------------------
/assets/js/src/public/checkout/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Checkout
3 | * @description Clearinghouse for all checkout scripts.
4 | */
5 |
6 | import embeddedCheckout from './embedded-checkout';
7 |
8 | const init = () => {
9 | embeddedCheckout();
10 | };
11 |
12 | export default init;
13 |
--------------------------------------------------------------------------------
/assets/js/src/public/config/cart-state.js:
--------------------------------------------------------------------------------
1 | export default {
2 | isFetching: false,
3 | instances: {
4 | carts: {},
5 | },
6 | };
7 |
--------------------------------------------------------------------------------
/assets/js/src/public/config/i18n.js:
--------------------------------------------------------------------------------
1 | export const NLS = window.bigcommerce_i18n || {};
2 |
--------------------------------------------------------------------------------
/assets/js/src/public/config/options.js:
--------------------------------------------------------------------------------
1 | // breakpoint settings
2 |
3 | export const MOBILE_BREAKPOINT = 768;
4 | export const FULL_BREAKPOINT = 960;
5 |
--------------------------------------------------------------------------------
/assets/js/src/public/config/state.js:
--------------------------------------------------------------------------------
1 |
2 | export default {
3 | desktop_initialized: false,
4 | is_desktop: false,
5 | is_mobile: false,
6 | mobile_initialized: false,
7 | v_height: 0,
8 | v_width: 0,
9 | };
10 |
--------------------------------------------------------------------------------
/assets/js/src/public/core/plugins.js:
--------------------------------------------------------------------------------
1 | // @flow
2 | /**
3 | * @module
4 | * @exports plugins
5 | * @description Kicks in any third party plugins that operate on
6 | * a sitewide basis.
7 | */
8 |
9 | // import gsap from 'gsap'; // uncomment to import gsap globally
10 |
11 | const plugins = () => {
12 | // initialize global external plugins here
13 | };
14 |
15 | export default plugins;
16 |
--------------------------------------------------------------------------------
/assets/js/src/public/core/resize.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module
3 | * @exports resize
4 | * @description Kicks in any third party plugins that operate on a sitewide basis.
5 | */
6 |
7 | import { trigger } from 'utils/events';
8 | import viewportDims from './viewport-dims';
9 |
10 | const resize = () => {
11 | // code for resize events can go here
12 |
13 | viewportDims();
14 |
15 | trigger({ event: 'modern_tribe/resize_executed', native: false });
16 | };
17 |
18 | export default resize;
19 |
--------------------------------------------------------------------------------
/assets/js/src/public/core/viewport-dims.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module
3 | * @exports viewportDims
4 | * @description Sets viewport dimensions using verge on shared state
5 | * and detects mobile or desktop state.
6 | */
7 |
8 | import verge from 'verge';
9 | import state from '../config/state';
10 | import { MOBILE_BREAKPOINT } from '../config/options';
11 |
12 | const viewportDims = () => {
13 | state.v_height = verge.viewportH();
14 | state.v_width = verge.viewportW();
15 |
16 | if (state.v_width >= MOBILE_BREAKPOINT) {
17 | state.is_desktop = true;
18 | state.is_mobile = false;
19 | } else {
20 | state.is_desktop = false;
21 | state.is_mobile = true;
22 | }
23 | };
24 |
25 | export default viewportDims;
26 |
--------------------------------------------------------------------------------
/assets/js/src/public/gallery/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module BigCommerce Product Gallery Sliders
3 | * @description Clearinghouse for loading all gallery JS.
4 | */
5 |
6 | import gallery from './productGallery';
7 | import videos from './productVideos';
8 | import imageZoom from './productGalleryZoom';
9 |
10 | const init = () => {
11 | gallery();
12 | videos();
13 | imageZoom();
14 | };
15 |
16 | export default init;
17 |
--------------------------------------------------------------------------------
/assets/js/src/public/index.js:
--------------------------------------------------------------------------------
1 |
2 | import ready from './core/ready';
3 |
4 | ready();
5 |
--------------------------------------------------------------------------------
/assets/js/src/public/loop/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Loop
3 | *
4 | * @description Clearinghouse for Loop/Archive scripts.
5 | */
6 |
7 | import * as tools from '../../utils/tools';
8 | import filters from './filters';
9 |
10 | const el = {
11 | container: tools.getNodes('.post-type-archive-bigcommerce_product', false, document, true)[0],
12 | };
13 |
14 | const init = () => {
15 | if (!el.container) {
16 | return;
17 | }
18 |
19 | filters();
20 | };
21 |
22 | export default init;
23 |
--------------------------------------------------------------------------------
/assets/js/src/public/page/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Page scripts clearinghouse.
3 | */
4 |
5 | import address from './address';
6 | import dynamicStateField from './dynamicStateField';
7 | import formQueryParam from './formQueryParam';
8 | import formErrors from './formErrors';
9 |
10 | const init = () => {
11 | address();
12 | dynamicStateField();
13 | formQueryParam();
14 | formErrors();
15 | };
16 |
17 | export default init;
18 |
--------------------------------------------------------------------------------
/assets/js/src/public/product/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Product Variants.
3 | */
4 |
5 | import * as tools from 'utils/tools';
6 | import variants from './variants';
7 | import reviews from './reviews';
8 | import pricing from './pricing';
9 |
10 | const el = {
11 | container: tools.getNodes('bc-product-single', false, document)[0],
12 | formWrapper: tools.getNodes('.bc-product-form', false, document, true)[0],
13 | };
14 |
15 | const init = () => {
16 | variants(el.formWrapper);
17 | reviews(el.container);
18 | pricing();
19 | };
20 |
21 | export default init;
22 |
--------------------------------------------------------------------------------
/assets/js/src/public/templates/address-delete.js:
--------------------------------------------------------------------------------
1 | import { NLS } from '../config/i18n';
2 |
3 | export const deleteConfirmation = (
4 | `
5 |
6 |
${NLS.account.confirm_delete_message}
7 |
8 |
9 |
10 | `
11 | );
12 |
--------------------------------------------------------------------------------
/assets/js/src/public/templates/banners.js:
--------------------------------------------------------------------------------
1 | export const bannerContent = (content, label) => (
2 | ``
3 | );
4 |
5 | export const bannerWrapper = (styles = null, banners = null) => (
6 | `${banners}
`
7 | );
8 |
--------------------------------------------------------------------------------
/assets/js/src/public/templates/dynamic-state-input.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @template Input Field of States/Provinces.
3 | * @param fieldId
4 | * @param fieldName
5 | * @param initValue
6 | * @returns {string}
7 | */
8 | export const stateInputField = (fieldId, fieldName, initValue) => (
9 | ``
10 | );
11 |
--------------------------------------------------------------------------------
/assets/js/src/public/templates/dynamic-state-select.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @template Select Field of States/Provinces.
3 | * @param states
4 | * @param initValue
5 | * @returns {string}
6 | */
7 | export const stateSelectField = (states, fieldId, fieldName, initValue) => (
8 | `
9 |
14 | `
15 | );
16 |
--------------------------------------------------------------------------------
/assets/js/src/public/templates/errors.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @template Inline error message templates for plugin errors.
3 | * @param message
4 | * @returns {string}
5 | */
6 | export const paginationError = message => (
7 | `
8 |
9 | `
10 | );
11 |
--------------------------------------------------------------------------------
/assets/js/src/public/templates/form-error-message.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @template Inline error message template for form fields.
3 | * @param message
4 | * @returns {string}
5 | */
6 | export const formErrorMessage = message => (
7 | `
8 | ${message}
9 | `
10 | );
11 |
--------------------------------------------------------------------------------
/assets/js/src/public/templates/product-message.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @template Product Message
3 | */
4 |
5 | export const productMessage = message => (`${message}`);
6 |
--------------------------------------------------------------------------------
/assets/js/src/public/templates/wish-lists.js:
--------------------------------------------------------------------------------
1 | import { NLS } from 'publicConfig/i18n';
2 |
3 | export const copyToolTip = (
4 | `
5 |
6 | ${NLS.wish_lists.copy_success}
7 |
8 | `
9 | );
10 |
--------------------------------------------------------------------------------
/assets/js/src/public/wish-list/index.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @module Wish Lists
3 | *
4 | * @description Clearinghouse for Wish Lists Scripts
5 | *
6 | */
7 |
8 | import manage from './manage-dialogs';
9 | import share from './share';
10 | import product from './product';
11 | import list from './list';
12 |
13 | const init = () => {
14 | manage();
15 | share();
16 | product();
17 | list();
18 | };
19 |
20 | export default init;
21 |
--------------------------------------------------------------------------------
/assets/js/src/utils/data/array-to-int.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @function arrayToInt
3 | * @description Converts all array values to int.
4 | */
5 |
6 | const arrayToInt = (arr = []) => arr.map(x => parseInt(x, 10));
7 |
8 | export default arrayToInt;
9 |
--------------------------------------------------------------------------------
/assets/js/src/utils/data/query-to-json.js:
--------------------------------------------------------------------------------
1 |
2 | const queryToJson = (params = '') => {
3 | const pairs = params.length ? params.split('&') : location.search.slice(1).split('&');
4 | const result = {};
5 | let pairArray = [];
6 | pairs.forEach((pair) => {
7 | pairArray = pair.split('=');
8 | result[pairArray[0]] = decodeURIComponent(pairArray[1] || '');
9 | });
10 |
11 | return JSON.parse(JSON.stringify(result));
12 | };
13 |
14 | export default queryToJson;
15 |
--------------------------------------------------------------------------------
/assets/js/src/utils/dom/has-scrollbar.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @function hasScrollbar
3 | * @desc test if an el has scrollbars
4 | */
5 |
6 | const hasScrollbar = el => ({
7 | vertical: el.scrollHeight > el.clientHeight,
8 | horizontal: el.scrollWidth > el.clientWidth,
9 | });
10 |
11 | export default hasScrollbar;
12 |
--------------------------------------------------------------------------------
/assets/js/src/utils/dom/is-external-link.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @function isExternalLink
3 | * @desc test if a url points to the website domain.
4 | */
5 |
6 | const isExternalLink = (url) => {
7 | const match = url.match(/^([^:\/?#]+:)?(?:\/\/([^\/?#]*))?([^?#]+)?(\?[^#]*)?(#.*)?/);
8 | if (typeof match[1] === 'string' && match[1].length > 0 && match[1].toLowerCase() !== location.protocol) {
9 | return true;
10 | }
11 |
12 | if (typeof match[2] === 'string' && match[2].length > 0 && match[2].replace(new RegExp(`:(${{
13 | 'http:': 80,
14 | 'https:': 443,
15 | }[location.protocol]})?$`), '') !== location.host) {
16 | return true;
17 | }
18 |
19 | return false;
20 | };
21 |
22 | export default isExternalLink;
23 |
--------------------------------------------------------------------------------
/assets/js/src/utils/dom/is-file-link.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @function
3 | * @description Check if a url is to a file
4 | */
5 |
6 | const isFileUrl = (url = '') => {
7 | const ext = url.split('/').pop();
8 | return ext.indexOf('.') !== -1;
9 | };
10 |
11 | export default isFileUrl;
12 |
--------------------------------------------------------------------------------
/assets/js/src/utils/dom/is-image-link.js:
--------------------------------------------------------------------------------
1 | /**
2 | * @function
3 | * @description Check is a url string passed in is an image link
4 | */
5 |
6 | const isImageUrl = (url = '') => {
7 | const ext = url.split('.').pop();
8 | const test = ext.toLowerCase().match(/(jpg|jpeg|png|gif)/g);
9 | return test && test.length > 0;
10 | };
11 |
12 | export default isImageUrl;
13 |
--------------------------------------------------------------------------------
/assets/js/src/utils/dom/scroll-horizontal.js:
--------------------------------------------------------------------------------
1 | const scrollHorizontal = (e, target = null) => {
2 | if (!target) {
3 | return;
4 | }
5 |
6 | if (target.scrollWidth <= target.clientWidth) {
7 | return;
8 | }
9 |
10 | const event = window.event || e;
11 | const delta = Math.max(-1, Math.min(1, (event.wheelDelta || -event.detail)));
12 | target.scrollLeft -= (delta * 40); //eslint-disable-line
13 | e.preventDefault();
14 | };
15 |
16 | export default scrollHorizontal;
17 |
--------------------------------------------------------------------------------
/assets/js/src/utils/dom/win-position.js:
--------------------------------------------------------------------------------
1 | export const top = () => window.pageYOffset || document.documentElement.scrollTop;
2 | export const left = () => window.pageXOffset || document.documentElement.scrollLeft;
3 |
--------------------------------------------------------------------------------
/assets/js/src/utils/storage/local.js:
--------------------------------------------------------------------------------
1 | const put = (key, value) => {
2 | window.localStorage.setItem(key, value);
3 | };
4 |
5 | const get = key => window.localStorage.getItem(key);
6 |
7 | const remove = key => window.localStorage.removeItem(key);
8 |
9 | const clear = () => {
10 | window.localStorage.clear();
11 | };
12 |
13 | export { put, get, remove, clear };
14 |
--------------------------------------------------------------------------------
/assets/js/src/utils/storage/session.js:
--------------------------------------------------------------------------------
1 | const put = (key, value) => {
2 | window.sessionStorage.setItem(key, value);
3 | };
4 |
5 | const get = key => window.sessionStorage.getItem(key);
6 |
7 | const remove = key => window.sessionStorage.removeItem(key);
8 |
9 | const clear = () => {
10 | window.sessionStorage.clear();
11 | };
12 |
13 | export { put, get, remove, clear };
14 |
--------------------------------------------------------------------------------
/assets/js/test/__coverage__/lcov-report/prettify.css:
--------------------------------------------------------------------------------
1 | .pln{color:#000}@media screen{.str{color:#080}.kwd{color:#008}.com{color:#800}.typ{color:#606}.lit{color:#066}.pun,.opn,.clo{color:#660}.tag{color:#008}.atn{color:#606}.atv{color:#080}.dec,.var{color:#606}.fun{color:red}}@media print,projection{.str{color:#060}.kwd{color:#006;font-weight:bold}.com{color:#600;font-style:italic}.typ{color:#404;font-weight:bold}.lit{color:#044}.pun,.opn,.clo{color:#440}.tag{color:#006;font-weight:bold}.atn{color:#404}.atv{color:#060}}pre.prettyprint{padding:2px;border:1px solid #888}ol.linenums{margin-top:0;margin-bottom:0}li.L0,li.L1,li.L2,li.L3,li.L5,li.L6,li.L7,li.L8{list-style-type:none}li.L1,li.L3,li.L5,li.L7,li.L9{background:#eee}
2 |
--------------------------------------------------------------------------------
/assets/js/test/__coverage__/lcov-report/sort-arrow-sprite.png:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/assets/js/test/__coverage__/lcov-report/sort-arrow-sprite.png
--------------------------------------------------------------------------------
/assets/js/test/setup.js:
--------------------------------------------------------------------------------
1 | // Mock envs
2 | global.__DEV__ = false;
3 | global.__TEST__ = true;
4 |
--------------------------------------------------------------------------------
/assets/js/test/tests/utils/data/array-to-int.test.js:
--------------------------------------------------------------------------------
1 | import arrayToInt from 'utils/data/array-to-int';
2 |
3 | describe('arrayToInt', () => {
4 | it('converts all string type integers into true integers in an array', () => {
5 | const arr = ['9', 11, '15'];
6 | const parsed = arrayToInt(arr);
7 | expect(Number.isInteger(parsed[0])).toBe(true);
8 | expect(Number.isInteger(parsed[1])).toBe(true);
9 | expect(Number.isInteger(parsed[2])).toBe(true);
10 | });
11 | });
12 |
--------------------------------------------------------------------------------
/assets/pcss/admin/choices/_all.pcss:
--------------------------------------------------------------------------------
1 | @import "./choices";
2 | @import "./choices-custom";
3 |
--------------------------------------------------------------------------------
/assets/pcss/admin/pages/settings/_menu.pcss:
--------------------------------------------------------------------------------
1 | .dashicons-bigcommerce {
2 |
3 | &:before {
4 | font-family: var(--font-family-bigcommerce-icons);
5 | font-size: 1.063em;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/assets/pcss/admin/pages/settings/_plugin-create-account.pcss:
--------------------------------------------------------------------------------
1 | .bc-new-account__header {
2 |
3 | .bc-settings-connect__title {
4 | color: var(--color-bc-black);
5 | font-size: 2em;
6 | font-weight: var(--font-weight-thin);
7 | line-height: 1.25;
8 | margin: 18px 0 22px;
9 |
10 | @media (--viewport-medium) {
11 | font-size: 3em;
12 | line-height: 1.1;
13 | }
14 | }
15 | }
16 |
17 | .bc-new-account__copy {
18 | box-sizing: border-box;
19 |
20 | @media (--viewport-wpadmin) {
21 | width: 50%;
22 | float: left;
23 | padding-right: 20px;
24 | }
25 | }
26 |
27 | .bc-new-account-video {
28 | margin-bottom: 30px;
29 |
30 | @media (--viewport-wpadmin) {
31 | width: 50%;
32 | float: right;
33 | }
34 | }
35 |
--------------------------------------------------------------------------------
/assets/pcss/admin/posts/_quick-edit.pcss:
--------------------------------------------------------------------------------
1 | .inline-edit-bigcommerce_product {
2 |
3 | .inline-edit-col-left .inline-edit-col > label:nth-child(2) {
4 | display: none;
5 | }
6 | }
7 |
8 |
--------------------------------------------------------------------------------
/assets/pcss/admin/shortcode-ui/_selected-products.pcss:
--------------------------------------------------------------------------------
1 | .bc-shortcode-ui__selected-products-title {
2 | margin-bottom: 0;
3 | }
4 |
5 | .bc-shortcode-ui__selected-product {
6 | margin-bottom: 17px;
7 |
8 | h5,
9 | span {
10 | margin: 0;
11 | display: inline;
12 | font-weight: normal;
13 | font-size: var(--font-size-content-m);
14 | line-height: 1.43;
15 | }
16 | }
17 |
18 | .bc-shortcode-ui__remove-selected {
19 | display: inline-block;
20 | background: transparent;
21 | border: 0;
22 | padding: 0;
23 | color: var(--color-bc-doger-blue);
24 | cursor: pointer;
25 | font-size: var(--font-size-content-s);
26 |
27 | &:hover,
28 | &:focus {
29 | color: darken(var(--color-bc-doger-blue), 0.4);
30 | }
31 | }
32 |
--------------------------------------------------------------------------------
/assets/pcss/admin/utilities/_helpers.pcss:
--------------------------------------------------------------------------------
1 | .bg-geometric-bg {
2 |
3 | &:after {
4 | background: transparent url("../img/admin/bc-bg-geometric.svg") no-repeat bottom right/contain;
5 | content: '';
6 | position: absolute;
7 | height: 220px;
8 | width: 75%;
9 | bottom: 1px;
10 | right: -20px;
11 | z-index: -1;
12 |
13 | @media (--viewport-medium) {
14 | height: 220px;
15 | width: 50%;
16 | }
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/assets/pcss/amp/base/_buttons.pcss:
--------------------------------------------------------------------------------
1 | button,
2 | input[type="button"],
3 | input[type="submit"] {
4 | background-color: #222;
5 | border: 0;
6 | color: #fff;
7 | cursor: pointer;
8 | text-shadow: none;
9 | }
10 |
--------------------------------------------------------------------------------
/assets/pcss/amp/base/_global.pcss:
--------------------------------------------------------------------------------
1 | html {
2 | -webkit-box-sizing: border-box;
3 | -moz-box-sizing: border-box;
4 | box-sizing: border-box;
5 | }
6 |
7 | *,
8 | *:before,
9 | *:after {
10 | /* Inherit box-sizing to make it easier to change the property for components that leverage other behavior; see http://css-tricks.com/inheriting-box-sizing-probably-slightly-better-best-practice/ */
11 | -webkit-box-sizing: inherit;
12 | -moz-box-sizing: inherit;
13 | box-sizing: inherit;
14 | }
15 |
16 | .amp-wp-article-content .bc-product-single ul,
17 | .amp-wp-article-content .bc-product-single ol {
18 | margin-left: 0;
19 | }
20 |
--------------------------------------------------------------------------------
/assets/pcss/amp/base/_icons.pcss:
--------------------------------------------------------------------------------
1 | /* use strong selector instead of !important rule that is banned on AMP */
2 | .bc-icon.bc-icon.bc-icon.bc-icon {
3 | font-family: 'bigcommerce-icons';
4 | speak: none;
5 | font-style: normal;
6 | font-weight: normal;
7 | font-variant: normal;
8 | text-transform: none;
9 | line-height: 1;
10 |
11 | /* Better Font Rendering =========== */
12 | -webkit-font-smoothing: antialiased;
13 | -moz-osx-font-smoothing: grayscale;
14 | }
15 |
--------------------------------------------------------------------------------
/assets/pcss/amp/content/components/_gallery.pcss:
--------------------------------------------------------------------------------
1 | .bc-product-gallery__carousel {
2 | background-color: transparent;
3 | }
4 |
5 | .bc-product-gallery__thumbs {
6 | position: relative;
7 | width: 100%;
8 | height: 100%;
9 | z-index: 1;
10 | display: flex;
11 | -webkit-box-sizing: content-box;
12 | box-sizing: content-box;
13 | }
14 |
--------------------------------------------------------------------------------
/assets/pcss/amp/content/components/_refinery.pcss:
--------------------------------------------------------------------------------
1 | .bc-product-archive__refinery {
2 |
3 | .bc-form {
4 | @media (--viewport-large) {
5 | justify-content: space-between;
6 | }
7 | }
8 | }
9 |
10 | .bc-product-archive__search {
11 | @media (--viewport-large) {
12 | flex: 1 1 100%;
13 | }
14 | }
15 |
16 | .bc-product-archive__select {
17 | @media (--viewport-large) {
18 | flex: 0 1 calc(33.3333% - 20px);
19 | flex-wrap: wrap;
20 | margin-right: 20px;
21 | margin-top: 15px;
22 |
23 | &:last-child {
24 | margin-right: 0;
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/assets/pcss/base/_all.pcss:
--------------------------------------------------------------------------------
1 |
2 | /* -----------------------------------------------------------------------------
3 | *
4 | * Base
5 | *
6 | * This file is just a clearing-house.
7 | * Make partials (start with an underscore) for any actual css code.
8 | *
9 | * ----------------------------------------------------------------------------- */
10 |
11 | @import "icons";
12 |
13 | /* Forms */
14 |
15 | .bc-form {
16 | @import "forms/default";
17 | @import "forms/validation";
18 | @import "forms/controls/default";
19 | @import "forms/controls/file";
20 | @import "forms/controls/radio-checkbox";
21 | @import "forms/controls/select";
22 | @import "forms/controls/textarea";
23 | }
24 |
--------------------------------------------------------------------------------
/assets/pcss/base/forms/_validation.pcss:
--------------------------------------------------------------------------------
1 | &.bc-form--has-errors {
2 |
3 | .bc-form__control--error {
4 |
5 | input[type="text"],
6 | input[type="email"],
7 | input[type="tel"],
8 | input[type="number"],
9 | input[type="password"],
10 | select,
11 | textarea {
12 | border: 1px solid var(--alert-error);
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/assets/pcss/base/forms/controls/_file.pcss:
--------------------------------------------------------------------------------
1 | input[type="file"] {
2 | @mixin form-control;
3 |
4 | font-size: var(--form-control-file-font-size);
5 | height: auto;
6 | padding: var(--form-control-file-padding);
7 | line-height: var(--line-height-even);
8 | }
9 |
--------------------------------------------------------------------------------
/assets/pcss/base/forms/controls/_select.pcss:
--------------------------------------------------------------------------------
1 | select {
2 | @mixin form-control;
3 |
4 | padding-right: 0;
5 | cursor: pointer;
6 |
7 | /* CASE: multiple */
8 | &[multiple] {
9 | font-size: var(--form-control-font-size);
10 | height: var(--form-control-select-multiple-height);
11 | padding: var(--form-control-select-multiple-padding);
12 | }
13 | }
14 |
15 |
--------------------------------------------------------------------------------
/assets/pcss/base/forms/controls/_textarea.pcss:
--------------------------------------------------------------------------------
1 | textarea {
2 | @mixin form-control;
3 |
4 | resize: none;
5 | padding: var(--form-control-textarea-padding);
6 | height: var(--form-control-textarea-height);
7 | }
8 |
--------------------------------------------------------------------------------
/assets/pcss/content/cart/_cart-menu-item.pcss:
--------------------------------------------------------------------------------
1 | .bigcommerce-cart__item-count {
2 | display: inline-block;
3 | background-color: var(--color-primary);
4 | color: var(--color-white);
5 | font-weight: var(--font-weight-bold);
6 | border-radius: 15px;
7 | width: 25px;
8 | height: 25px;
9 | font-size: 12px;
10 | line-height: 25px;
11 | vertical-align: middle;
12 | text-align: center;
13 | transform: scale(0);
14 | transition: transform 0.15s var(--ease-in-out-cubic);
15 | pointer-events: none;
16 |
17 | &.full {
18 | transform: scale(1);
19 | }
20 | }
21 |
22 | .menu-item-bigcommerce-cart {
23 | position: relative;
24 | }
25 |
--------------------------------------------------------------------------------
/assets/pcss/content/components/_all.pcss:
--------------------------------------------------------------------------------
1 | /* Components */
2 | @import "title";
3 | @import "brand";
4 | @import "price";
5 | @import "flags";
6 | @import "description";
7 | @import "gallery";
8 | @import "form-components";
9 | @import "option-dropdown";
10 | @import "option-swatch";
11 | @import "option-rectangle";
12 | @import "option-pick-list";
13 | @import "option-radio";
14 | @import "ratings";
15 | @import "specs";
16 | @import "related-products";
17 | @import "refinery";
18 | @import "subnav";
19 | @import "alert";
20 | @import "pagination";
21 | @import "order-product-row";
22 | @import "images";
23 | @import "wish-lists";
24 | @import "banner";
25 | @import "currency-widget";
26 |
--------------------------------------------------------------------------------
/assets/pcss/content/components/_banner.pcss:
--------------------------------------------------------------------------------
1 | .bc-banners {
2 | padding: 0.78571em 0;
3 | text-align: center;
4 |
5 | p:last-child {
6 | margin-bottom: 0;
7 | }
8 | }
9 |
10 | .bc-banner {
11 | margin: 0 auto;
12 | max-width: 85.71429em;
13 | width: 100%;
14 | }
15 |
--------------------------------------------------------------------------------
/assets/pcss/content/components/_brand.pcss:
--------------------------------------------------------------------------------
1 | .bc-product__brand {
2 | display: block;
3 | font-size: var(--font-size-content-m);
4 | line-height: var(--line-height-even);
5 | font-weight: var(--font-weight-bold);
6 | margin-bottom: 10px;
7 |
8 | @media (--viewport-medium) {
9 | margin-bottom: 15px;
10 | }
11 |
12 | @media (--viewport-full) {
13 | margin-bottom: 20px;
14 | }
15 | }
16 |
17 | .bc-product-single,
18 | .bc-product-card--single {
19 |
20 | .bc-product__brand {
21 | display: block;
22 | font-size: var(--font-size-content);
23 | margin-bottom: 10px;
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/assets/pcss/content/components/_currency-widget.pcss:
--------------------------------------------------------------------------------
1 | .bc-currency-switcher {
2 | padding: 0;
3 | margin: 0;
4 |
5 | .bc-form {
6 | display: flex;
7 | flex-direction: row;
8 | flex-wrap: wrap;
9 | align-items: flex-end;
10 | }
11 |
12 | .bc-form__control {
13 | margin-bottom: 0;
14 |
15 | select {
16 | padding-right: 20px;
17 | }
18 | }
19 |
20 | .bc-form__actions {
21 | margin-top: 0;
22 | width: auto;
23 | margin-left: 16px;
24 |
25 | .bc-btn {
26 | border: 1px solid transparent;
27 | }
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/assets/pcss/content/components/_description.pcss:
--------------------------------------------------------------------------------
1 | .bc-product__description {
2 | font-size: var(--font-size-content);
3 | line-height: var(--line-height-base);
4 | margin-bottom: 30px;
5 |
6 | @media (--viewport-full) {
7 | margin-bottom: 40px;
8 | }
9 |
10 | @media (--viewport-large) {
11 | margin-bottom: 50px;
12 | }
13 |
14 | p:last-child {
15 | margin-bottom: 0;
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/assets/pcss/content/components/_images.pcss:
--------------------------------------------------------------------------------
1 | .bc-order-product-row__image,
2 | .bc-cart-item-image {
3 |
4 | .bc-product__thumbnail-link {
5 | display: block;
6 | box-shadow: none;
7 | text-decoration: none;
8 | border: 0;
9 | opacity: 1;
10 | transition: var(--transition-opacity);
11 |
12 | &:hover,
13 | &:focus {
14 | opacity: 0.8;
15 | }
16 | }
17 | }
18 |
19 | .bc-gallery-size-bc-xmedium {
20 |
21 | .bc-product-card__featured-image.bc-component {
22 | max-width: 720px;
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/assets/pcss/content/components/_option-dropdown.pcss:
--------------------------------------------------------------------------------
1 | .bc-product-form__option-select {
2 | font-size: var(--font-size-content);
3 | }
4 |
--------------------------------------------------------------------------------
/assets/pcss/content/components/_option-pick-list.pcss:
--------------------------------------------------------------------------------
1 | .bc-product-form__control--pick-list {
2 |
3 | input.bc-product-variant__radio--hidden {
4 |
5 | &:checked + .bc-product-variant__label .bc-product-variant__label--pick-list {
6 | border: 1px solid var(--color-bc-blue-light);
7 | transition: var(--transition-border);
8 | }
9 | }
10 | }
11 |
12 | .bc-product-variant__label--pick-list {
13 | display: flex;
14 | align-items: center;
15 | padding: 5px;
16 | border: 1px solid var(--color-bc-light-grey);
17 | cursor: pointer;
18 | }
19 |
20 | .bc-product-variant__label--img {
21 | flex: 0;
22 | margin-right: 6px;
23 | width: 100%;
24 | max-width: 50px;
25 | height: auto;
26 | }
27 |
--------------------------------------------------------------------------------
/assets/pcss/content/components/_option-radio.pcss:
--------------------------------------------------------------------------------
1 | .bc-product-form__control--radio {
2 |
3 | .bc-product-form__option-label {
4 | flex: 0 0 100%;
5 | }
6 |
7 | .bc-product-variant__label {
8 | display: flex;
9 | flex-direction: row;
10 | flex-wrap: nowrap;
11 | align-items: center;
12 | margin-bottom: 6px;
13 | }
14 |
15 | .bc-product-variant__radio {
16 | flex: 0 0 auto;
17 | }
18 |
19 | .bc-product-variant__label--radio {
20 | flex: 1;
21 | line-height: var(--line-height-base);
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/assets/pcss/content/components/_option-swatch.pcss:
--------------------------------------------------------------------------------
1 | .bc-product-form__control--swatch {
2 |
3 | input.bc-product-variant__radio--hidden {
4 |
5 | &:checked + .bc-product-variant__label .bc-product-variant__label--swatch {
6 | border: 0 solid var(--color-white);
7 | box-shadow: 0 0 1px var(--color-bc-blue-light);
8 | transition: var(--transition-border);
9 | }
10 | }
11 | }
12 |
13 | .bc-product-variant__label--swatch {
14 | display: block;
15 | width: 36px;
16 | height: 36px;
17 | border: 5px solid var(--color-white);
18 | box-shadow: 0 0 1px var(--color-bc-grey);
19 | cursor: pointer;
20 | transition: var(--transition-border);
21 | }
22 |
--------------------------------------------------------------------------------
/assets/pcss/content/components/_related-products.pcss:
--------------------------------------------------------------------------------
1 | .bc-single-product__related {
2 | padding: 50px 0 0;
3 | border-top: 1px solid var(--color-bc-light-grey);
4 |
5 | .bc-form.bc-product-form,
6 | button.bc-btn {
7 | margin-top: 0;
8 | }
9 | }
10 |
11 | .bc-single-product__section-title--related {
12 | font-size: var(--font-size-content-xxl);
13 | margin-bottom: 0;
14 | }
15 |
--------------------------------------------------------------------------------
/assets/pcss/content/components/_specs.pcss:
--------------------------------------------------------------------------------
1 | .bc-product__spec-list {
2 | list-style: none;
3 | margin: 0;
4 | padding: 0;
5 | lost-center: 100%;
6 | }
7 |
8 | .bc-product__spec {
9 | font-size: var(--font-size-content-m);
10 | lost-waffle: 1/2;
11 |
12 | @media (--viewport-medium) {
13 | lost-waffle: 1/3;
14 | }
15 |
16 | @media (--viewport-full) {
17 | lost-waffle: 1/4;
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/assets/pcss/content/loop/_no-results.pcss:
--------------------------------------------------------------------------------
1 | /* -----------------------------------------------------------------------------
2 | *
3 | * Loop: No Results
4 | *
5 | * ----------------------------------------------------------------------------- */
6 |
7 | .bc-no-results {
8 | text-align: center;
9 | width: 100%;
10 | }
11 |
12 | .bc-no-results__message {
13 | font-size: 1.375em;
14 | line-height: 1.1;
15 | }
16 |
17 | .bc-no-results__button {
18 | margin: 0 auto;
19 | font-size: var(--font-size-content);
20 | text-decoration: none;
21 | }
22 |
--------------------------------------------------------------------------------
/assets/pcss/content/loop/_products.pcss:
--------------------------------------------------------------------------------
1 | /* Product Loop Archive */
2 | .bc-product-archive {
3 | max-width: 1260px;
4 | padding: 0 20px;
5 | margin: 0 auto;
6 |
7 | @media (--viewport-medium) {
8 | padding: 0 30px;
9 | }
10 | }
11 |
12 | .attachment-bc-category-image {
13 | display: block;
14 | max-width: 100%;
15 | height: auto;
16 | margin: 0.5em 0 1em;
17 | }
18 |
--------------------------------------------------------------------------------
/assets/pcss/content/page/_account-default.pcss:
--------------------------------------------------------------------------------
1 | .bc-account-page {
2 | border-top: 1px solid var(--color-bc-light-grey);
3 | border-bottom: 1px solid var(--color-bc-light-grey);
4 | padding: 40px 0;
5 |
6 | @media (--viewport-medium) {
7 | padding: 60px 0 90px;
8 | }
9 | }
10 |
--------------------------------------------------------------------------------
/assets/pcss/content/page/_account-register.pcss:
--------------------------------------------------------------------------------
1 | .bc-account-register-success {
2 | @media (--viewport-medium) {
3 | margin: 0 auto;
4 | max-width: 550px;
5 | text-align: center;
6 | }
7 | }
8 |
--------------------------------------------------------------------------------
/assets/pcss/content/page/_lost-password.pcss:
--------------------------------------------------------------------------------
1 | .bc-account-lost-password {
2 | @media (--viewport-medium) {
3 | margin: 0 auto;
4 | max-width: 510px;
5 | }
6 | }
7 |
8 | .bc-account-lost-password__account-actions {
9 | display: flex;
10 | flex-direction: row;
11 | justify-content: center;
12 | list-style: none;
13 | margin-top: 30px;
14 | }
15 |
16 | .bc-account-lost-password__account-link {
17 |
18 | + .bc-account-lost-password__account-link {
19 | margin-left: 30px;
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/assets/pcss/content/page/orders/_default.pcss:
--------------------------------------------------------------------------------
1 | .bc-order__header {
2 | font-size: var(--font-size-content-xs);
3 | margin-bottom: 20px;
4 | display: flex;
5 | flex-direction: row;
6 | }
7 |
8 | .bc-order__link {
9 | position: relative;
10 | margin-left: 10px;
11 |
12 | &:before {
13 | content: '\00B7';
14 | margin-right: 10px;
15 | }
16 | }
17 |
18 | .bc-order-meta__label,
19 | .bc-order-meta__value {
20 | font-size: var(--font-size-content-xs);
21 | line-height: var(--line-height-base);
22 | margin: 0;
23 | padding: 0;
24 | }
25 |
26 | .bc-order-meta__label {
27 | font-weight: var(--font-weight-bold);
28 | }
29 |
30 | .bc-order-meta__value {
31 | margin-bottom: 0;
32 | }
33 |
--------------------------------------------------------------------------------
/assets/pcss/content/page/orders/_order-history.pcss:
--------------------------------------------------------------------------------
1 | .bc-order-list,
2 | .bc-order-list__item {
3 | list-style: none;
4 | margin: 0;
5 | }
6 |
7 | .bc-order-list {
8 | list-style: none;
9 | padding-bottom: 40px;
10 |
11 | &.bc-load-items-container--has-pages {
12 | list-style: none;
13 | }
14 | }
15 |
16 | .bc-order-list__item {
17 | border-bottom: 1px solid var(--color-bc-light-grey);
18 | padding: 32px 0;
19 |
20 | @media (--viewport-medium) {
21 | padding: 50px 0;
22 | }
23 |
24 | &:first-child {
25 | border-top: 1px solid var(--color-bc-light-grey);
26 | }
27 | }
28 |
29 | .bc-order-card__body {
30 | margin-top: 40px;
31 | }
32 |
--------------------------------------------------------------------------------
/assets/pcss/master.pcss:
--------------------------------------------------------------------------------
1 | /*
2 | * Global CSS
3 | *
4 | * DO NOT EDIT THIS CSS FILE DIRECTLY. IT IS GENERATED BY GRUNT.
5 | * -------------------------------------------------------------
6 | * This file is just a clearing-house, see the pcss directory
7 | * and edit the source files found there.
8 | *
9 | */
10 |
11 | /* Reset */
12 | @import "base/icons";
13 |
14 | /* Utilities */
15 | @import "utilities/all";
16 |
17 | /* Base */
18 | @import "base/all";
19 |
20 | /* Vendor */
21 | @import "vendor/all";
22 |
23 | /* Content */
24 | @import "content/all";
25 |
26 | /* WordPress Theme Overrides */
27 | @import "wp-themes/all";
28 |
--------------------------------------------------------------------------------
/assets/pcss/utilities/helper-classes/_colors.pcss:
--------------------------------------------------------------------------------
1 | .u-bc-text-light {
2 | color: var(--color-white);
3 |
4 | &.bc-btn {
5 |
6 | &:hover,
7 | &:focus {
8 | color: var(--color-white);
9 | }
10 | }
11 | }
12 |
13 | .u-bc-text-dark {
14 | color: var(--color-bc-black);
15 |
16 | &.bc-btn {
17 |
18 | &:hover,
19 | &:focus {
20 | color: var(--color-bc-black);
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/assets/pcss/utilities/mixins/_typography.pcss:
--------------------------------------------------------------------------------
1 |
2 | /* -----------------------------------------------------------------------------
3 | *
4 | * Icons
5 | *
6 | * ----------------------------------------------------------------------------- */
7 |
8 | @define-mixin icon {
9 | font-family: var(--font-family-bigcommerce-icons);
10 | speak: none;
11 | font-style: normal;
12 | font-weight: normal;
13 | font-variant: normal;
14 | text-transform: none;
15 | line-height: 1;
16 | -webkit-font-smoothing: antialiased;
17 | -moz-osx-font-smoothing: grayscale;
18 | text-rendering: auto;
19 | }
20 |
--------------------------------------------------------------------------------
/assets/pcss/utilities/settings/_grid.pcss:
--------------------------------------------------------------------------------
1 | @lost gutter 20px;
2 | @lost flexbox flex;
3 | @lost cycle auto;
4 | @lost rounder 99.99999;
5 |
--------------------------------------------------------------------------------
/assets/pcss/utilities/variables/_containers.pcss:
--------------------------------------------------------------------------------
1 | :root {
2 | /* 960 */
3 | --container-960: 960px;
4 |
5 | /* 1200 */
6 | --container-1140: 1140px;
7 |
8 | /* 1200 */
9 | --container-1200: 1200px;
10 |
11 | /* 1440 */
12 | --container-1440: 1440px;
13 | }
14 |
--------------------------------------------------------------------------------
/assets/pcss/utilities/variables/_paths.pcss:
--------------------------------------------------------------------------------
1 | :root {
2 | --path-css-vendor: ../pcss/vendor;
3 | --path-images: ../img;
4 | --path-fonts: ../fonts;
5 | --path-level-2-css-vendor: ../../pcss/vendor;
6 | --path-level-2-images: ../../img;
7 | --path-level-2-fonts: ../../fonts;
8 | }
9 |
--------------------------------------------------------------------------------
/assets/pcss/utilities/variables/_spacers.pcss:
--------------------------------------------------------------------------------
1 | :root {
2 | /* -----------------------------------------------------------------------------
3 | * Spacers (margin & padding)
4 | * ----------------------------------------------------------------------------- */
5 |
6 | --spacer: 30px;
7 | --spacer-xs: 15px;
8 | --spacer-s: 20px;
9 | --spacer-m: 35px;
10 | --spacer-lg: 60px;
11 | --spacer-xxlg: 160px;
12 | }
13 |
--------------------------------------------------------------------------------
/assets/pcss/utilities/variables/_transitions.pcss:
--------------------------------------------------------------------------------
1 | :root {
2 | --transition: all 0.15s ease-in-out;
3 | --transition-opacity: opacity 0.3s ease;
4 | --transition-ease-out-opacity: opacity 0.25s ease-out;
5 | --transition-ease-in-opacity: opacity 250ms 300ms ease-in;
6 | --transition-embed-icon: opacity 0.15s ease-in-out, background-color 0.2s, transform 0.2s ease;
7 | --transition-wp-playlist-icon: background-color 0.2s, transform 0.2s ease;
8 | --transition-border: border 70ms;
9 | --transition-color-fast: color 70ms;
10 | }
11 |
--------------------------------------------------------------------------------
/assets/pcss/utilities/variables/forms/_fieldset.pcss:
--------------------------------------------------------------------------------
1 | :root {
2 | --form-fieldset-styled-border-size: var(--form-border-size);
3 | --form-fieldset-styled-border-color: var(--form-border-color);
4 | --form-fieldset-styled-border-radius: var(--form-border-radius);
5 | --form-fieldset-styled-margin: 0 0 var(--form-margin);
6 | --form-fieldset-styled-padding: var(--form-padding-vertical) var(--form-padding-horizontal);
7 | }
8 |
--------------------------------------------------------------------------------
/assets/pcss/utilities/variables/forms/_validation.pcss:
--------------------------------------------------------------------------------
1 | :root {
2 | --form-state-color-error: var(--form-color-error);
3 | --form-state-color-required: var(--form-color-required);
4 | --form-state-color-success: var(--form-color-success);
5 | }
6 |
--------------------------------------------------------------------------------
/assets/pcss/vendor/_all.pcss:
--------------------------------------------------------------------------------
1 |
2 | /* -----------------------------------------------------------------------------
3 | *
4 | * Vendor
5 | *
6 | * This file is just a clearing-house.
7 | * Make partials (start with an underscore) for any actual css code.
8 | *
9 | * ----------------------------------------------------------------------------- */
10 |
11 | /* Vendor: Swiper.js */
12 | @import "swiper/all";
13 |
14 | /* Vendor: Flatpickr.js */
15 | @import "flatpickr/all";
16 |
--------------------------------------------------------------------------------
/assets/pcss/vendor/flatpickr/_all.pcss:
--------------------------------------------------------------------------------
1 | /* flatpickr v4.5.1, @license MIT */
2 |
3 | @import "default";
4 |
--------------------------------------------------------------------------------
/assets/pcss/vendor/swiper/_all.pcss:
--------------------------------------------------------------------------------
1 | /* -----------------------------------------------------------------------------
2 | *
3 | * Swiper 4.0.5
4 | *
5 | * https://github.com/nolimits4web/Swiper
6 | *
7 | * This file is just a clearing-house.
8 | * Make partials (start with an underscore) for any actual css code.
9 | *
10 | * ----------------------------------------------------------------------------- */
11 |
12 | @import "variables";
13 | @import "default";
14 |
--------------------------------------------------------------------------------
/assets/pcss/vendor/swiper/_variables.pcss:
--------------------------------------------------------------------------------
1 | :root {
2 | --swiper-arrow-color: var(--color-white);
3 | }
4 |
--------------------------------------------------------------------------------
/assets/pcss/wp-themes/_all.pcss:
--------------------------------------------------------------------------------
1 | /*
2 | * Wordpress Core Themes Overrides.
3 | *
4 | * DO NOT EDIT THIS CSS FILE DIRECTLY. IT IS GENERATED BY GRUNT.
5 | * -------------------------------------------------------------
6 | * This file is just a clearing-house, see the pcss directory
7 | * and edit the source files found there.
8 | *
9 | */
10 |
11 | /* Themes */
12 | @import "twenty-sixteen-theme";
13 | @import "twenty-seventeen-theme";
14 | @import "twenty-nineteen-theme";
15 | @import "twenty-twenty-theme";
16 | @import "twenty-twenty-one-theme";
17 | @import "twenty-twenty-two-theme";
18 | @import "genesis-themes";
19 | @import "shoptimizer";
20 | @import "veganos";
21 | @import "flatsome";
22 |
--------------------------------------------------------------------------------
/assets/pcss/wp-themes/_shoptimizer.pcss:
--------------------------------------------------------------------------------
1 | /* Shoptimizer for BigCommerce for WordPress Theme Styles */
2 | .bc-wp-shoptimizer-theme {
3 |
4 | &.single-bigcommerce_product {
5 |
6 | &.bc-gallery-size-bc-xmedium {
7 |
8 | .site-main {
9 | float: none;
10 | width: 100%;
11 | }
12 |
13 | .bc-product-single__meta {
14 | @media (--viewport-medium) {
15 | width: calc(50% - 30px);
16 | }
17 |
18 | @media (--viewport-xxlarge) {
19 | width: calc(40% - 30px);
20 | }
21 | }
22 | }
23 |
24 | .bc-product-single__meta {
25 | @media (--viewport-medium) {
26 | width: calc(100% - 470px);
27 | }
28 | }
29 | }
30 | }
31 |
--------------------------------------------------------------------------------
/assets/pcss/wp-themes/_twenty-nineteen-theme.pcss:
--------------------------------------------------------------------------------
1 | .bc-wp-twenty-nineteen-theme {
2 |
3 | .site-content {
4 | overflow: visible;
5 | }
6 | }
7 |
--------------------------------------------------------------------------------
/assets/pcss/wp-themes/_twenty-seventeen-theme.pcss:
--------------------------------------------------------------------------------
1 | .bc-wp-twenty-seventeen-theme {
2 |
3 | .bc-banners {
4 | position: relative;
5 | z-index: 1;
6 | }
7 |
8 | .entry-content {
9 |
10 | ul,
11 | ol {
12 | list-style-position: inside;
13 | }
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/assets/pcss/wp-themes/_twenty-sixteen-theme.pcss:
--------------------------------------------------------------------------------
1 | .bc-wp-twenty-sixteen-theme {
2 | /* Case: Large product image size applied. */
3 | .site-inner {
4 | max-width: var(--container-1440);
5 | }
6 |
7 | /* Case: Product single margin right is too large without the sidebar. */
8 | &.single-bigcommerce_product {
9 |
10 | .entry-content {
11 | margin-right: 7.6923%;
12 |
13 | /* Media query from the theme. */
14 | @media (min-width: 56.875em) {
15 | margin-right: 0;
16 | }
17 | }
18 | }
19 |
20 | .entry-content {
21 |
22 | ul,
23 | ol {
24 | list-style-position: inside;
25 | }
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/assets/pcss/wp-themes/_veganos.pcss:
--------------------------------------------------------------------------------
1 | /* Shoptimizer for BigCommerce for WordPress Theme Styles */
2 | .bc-wp-veganos-theme {
3 |
4 | &.single-bigcommerce_product {
5 |
6 | .entry-content {
7 | max-width: var(--container-960);
8 | width: 100%;
9 | }
10 |
11 | &.bc-gallery-size-bc-xmedium {
12 |
13 | .entry-content {
14 | max-width: calc(1200px - 1em);
15 | width: 100%;
16 | }
17 | }
18 |
19 | .bc-product-single {
20 | padding: 0 2em;
21 | }
22 | }
23 | }
24 |
--------------------------------------------------------------------------------
/build-timestamp.php:
--------------------------------------------------------------------------------
1 | ',
20 | ],
21 | },
22 | },
23 | };
24 |
--------------------------------------------------------------------------------
/grunt_options/concat.js:
--------------------------------------------------------------------------------
1 | /**
2 | *
3 | * Module: grunt-contrib-concat
4 | * Documentation: https://npmjs.org/package/grunt-contrib-concat
5 | *
6 | */
7 |
8 | module.exports = {
9 | themeMinVendors: {
10 | src: [
11 | '<%= pkg._bc_public_js_dist_path %>vendorWebpack.min.js',
12 | ],
13 | dest: '<%= pkg._bc_public_js_dist_path %>vendor.min.js',
14 | },
15 | };
16 |
--------------------------------------------------------------------------------
/grunt_options/eslint.js:
--------------------------------------------------------------------------------
1 | /**
2 | *
3 | * Module: grunt-eslint
4 | * Documentation: https://github.com/sindresorhus/grunt-eslint
5 | * Example:
6 | *
7 | */
8 |
9 | module.exports = {
10 | dist: [
11 | '<%= pkg._bc_public_js_src_path %>**/*.js',
12 | '<%= pkg._bc_admin_js_src_path %>**/*.js',
13 | ],
14 | };
15 |
--------------------------------------------------------------------------------
/grunt_options/footer.js:
--------------------------------------------------------------------------------
1 | /**
2 | *
3 | * Module: grunt-footer
4 | * Documentation: https://github.com/sindresorhus/grunt-footer
5 | *
6 | */
7 |
8 | module.exports = {
9 | coreIconsVariables: {
10 | options: {
11 | text: '}',
12 | },
13 | files: {
14 | '<%= pkg._bc_public_pcss_path %>utilities/variables/_icons.pcss': ['<%= pkg._bc_public_pcss_path %>utilities/variables/_icons.pcss'],
15 | },
16 | },
17 | };
18 |
--------------------------------------------------------------------------------
/grunt_options/lineending.js:
--------------------------------------------------------------------------------
1 | module.exports = {
2 | mac: {},
3 | win: {
4 | options: {
5 | eol: 'crlf',
6 | overwrite: true,
7 | },
8 | files: {
9 | '': [
10 | '<%= pkg._bc_public_js_vendor_path %>**/*',
11 | '<%= pkg._bc_public_js_dist_path %>**/*',
12 | '<%= pkg._bc_css_dist_path %>**/*',
13 | ],
14 | },
15 | },
16 | };
17 |
--------------------------------------------------------------------------------
/grunt_options/setPHPConstant.js:
--------------------------------------------------------------------------------
1 | /**
2 | *
3 | * Module: gruntphpsetconstant
4 | * Documentation: https://www.npmjs.org/package/grunt-php-set-constant
5 | *
6 | */
7 |
8 | module.exports = {
9 | config: {
10 | constant: 'BIGCOMMERCE_ASSETS_BUILD_TIMESTAMP',
11 | value: '<%= grunt.template.today("h.MM.mm.dd.yyyy") %>',
12 | file: 'build-timestamp.php',
13 | },
14 | };
15 |
--------------------------------------------------------------------------------
/grunt_options/shell.js:
--------------------------------------------------------------------------------
1 | /**
2 | *
3 | * Module: grunt-shell
4 | * Documentation: https://github.com/sindresorhus/grunt-shell
5 | *
6 | */
7 |
8 | module.exports = {
9 | install: {
10 | options: {
11 | stderr: false,
12 | },
13 | command: 'yarn install',
14 | },
15 |
16 | test: {
17 | options: {
18 | stderr: false,
19 | },
20 | command: 'npm run test',
21 | },
22 | };
23 |
--------------------------------------------------------------------------------
/grunt_options/uglify.js:
--------------------------------------------------------------------------------
1 | /**
2 | *
3 | * Module: grunt-contrib-uglify
4 | * Documentation: https://npmjs.org/package/grunt-contrib-uglify
5 | *
6 | */
7 |
8 | module.exports = {
9 | themeMin: {
10 | options: {
11 | banner: '/* Core: JS Master */\n',
12 | sourceMap: false,
13 | compress: {
14 | drop_console: true,
15 | },
16 | },
17 | files: {
18 | '<%= pkg._bc_public_js_dist_path %>vendorGlobal.min.js': [],
19 | },
20 | },
21 | };
22 |
--------------------------------------------------------------------------------
/grunt_options/unzip.js:
--------------------------------------------------------------------------------
1 | /**
2 | *
3 | * Module: grunt-contrib-clean
4 | * Documentation: https://npmjs.org/package/grunt-contrib-clean
5 | *
6 | */
7 |
8 | module.exports = {
9 | coreIcons: {
10 | src: '<%= pkg._component_path %>/bigcommerce-icons.zip',
11 | dest: '<%= pkg._component_path %>/theme/icons/bigcommerce',
12 | },
13 | };
14 |
--------------------------------------------------------------------------------
/src/BigCommerce/Accounts/Roles/Customer.php:
--------------------------------------------------------------------------------
1 | config;
32 | }
33 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Api/Configuration.php:
--------------------------------------------------------------------------------
1 | getUpdateFields() );
18 | }, $this->getCollection( '/currencies' ) );
19 | } catch ( \Exception $e ) {
20 | $currencies = [];
21 | }
22 |
23 | return $currencies ?: [];
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/src/BigCommerce/Api/Request_Headers.php:
--------------------------------------------------------------------------------
1 | getCollection( '/tax_classes', 'TaxClass' );
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/src/BigCommerce/CLI/Command.php:
--------------------------------------------------------------------------------
1 | command(), [ $this, 'run' ], [
16 | 'shortdesc' => $this->description(),
17 | 'synopsis' => $this->arguments(),
18 | ] );
19 | }
20 |
21 | abstract protected function command();
22 |
23 | abstract protected function description();
24 |
25 | abstract protected function arguments();
26 |
27 | abstract public function run( $args, $assoc_args );
28 |
29 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Compatibility/Matomo/Matomo.php:
--------------------------------------------------------------------------------
1 | [
18 | 'var_1' => [
19 | 'id' => 1,
20 | 'name' => 'BC_Channel',
21 | ],
22 | ],
23 | ];
24 |
25 | return $config;
26 | }
27 |
28 | }
29 |
--------------------------------------------------------------------------------
/src/BigCommerce/Compatibility/Spam_Checker.php:
--------------------------------------------------------------------------------
1 | Templates\Account_Links::class,
15 | 'myaccount/form-login.php' => Login_Form::class,
16 | ];
17 |
18 | public function load_compat_functions() {
19 | include_once( dirname( __FILE__ ) . '/functions.php' );
20 | }
21 |
22 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Compatibility/Themes/Flatsome/functions.php:
--------------------------------------------------------------------------------
1 | cart = $cart;
14 | }
15 |
16 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Compatibility/wordpress-5-dot-1.php:
--------------------------------------------------------------------------------
1 | banners() );
16 | };
17 |
18 | add_filter( 'bigcommerce/js_config', $this->create_callback( 'banners_js_config', function ( $config ) use ( $container ) {
19 | return $container[ self::BANNERS ]->js_config( $config );
20 | } ), 10, 1 );
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/src/BigCommerce/Container/Gift_Certificates.php:
--------------------------------------------------------------------------------
1 | create_callback( 'gift_certificates_subnav', function ( $content ) use ( $container ) {
18 | return $container[ self::SUB_NAV ]->add_subnav_above_content( $content );
19 | } ), 10, 1 );
20 | }
21 |
22 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Container/Post_Meta.php:
--------------------------------------------------------------------------------
1 | import( $container );
11 | }
12 |
13 | private function import( Container $container ) {
14 |
15 | }
16 | }
17 |
--------------------------------------------------------------------------------
/src/BigCommerce/Container/Util.php:
--------------------------------------------------------------------------------
1 | create_callback( 'kses_allowed_html', function ( $allowed_tags, $context ) use ( $container ) {
19 | return $container[ self::KSES ]->product_description_allowed_html( $allowed_tags, $context );
20 | } ), 10, 2 );
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/src/BigCommerce/Currency/Currency_Formatter.php:
--------------------------------------------------------------------------------
1 | formatter = new \NumberFormatter( $this->get_locale(), \NumberFormatter::CURRENCY );
13 | $this->currency = $currency;
14 | }
15 |
16 | private function get_locale() {
17 | return \get_locale();
18 | }
19 |
20 | public function format( $value ) {
21 | return $this->formatter->formatCurrency( $value, $this->currency );
22 | }
23 |
24 |
25 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Currency/USD_Formatter.php:
--------------------------------------------------------------------------------
1 | __( 'BigCommerce', 'bigcommerce' ),
18 | 'description' => __( 'Edit the appearance of your BigCommerce store', 'bigcommerce' ),
19 | ] );
20 | $wp_customize->add_panel( $panel );
21 | }
22 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Exceptions/Channel_Not_Found_Exception.php:
--------------------------------------------------------------------------------
1 | set_status( Status::STARTED );
20 | }
21 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Import/Runner/Lock.php:
--------------------------------------------------------------------------------
1 | get_option( self::OPTION, 0 );
16 | }
17 |
18 | public function release_lock() {
19 | $this->update_option( self::OPTION, 0, false );
20 | }
21 |
22 | public function set_lock() {
23 | $this->update_option( self::OPTION, microtime( true ), false );
24 | }
25 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Manager/Channel_Update_Task.php:
--------------------------------------------------------------------------------
1 | term_id, BC_Status::STATUS, $status );
18 |
19 |
20 | return true;
21 | }
22 |
23 | }
24 |
--------------------------------------------------------------------------------
/src/BigCommerce/Manager/Task.php:
--------------------------------------------------------------------------------
1 | ', esc_attr( Import::HEADLESS_FLAG ) );
11 |
12 | foreach ( $this->options as $key => $option ) {
13 | printf(
14 | '',
15 | esc_attr( $key ),
16 | selected( $current, $key, false ),
17 | $option
18 | );
19 | }
20 |
21 | printf( '' );
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/src/BigCommerce/Settings/Sections/Units.php:
--------------------------------------------------------------------------------
1 | render();
24 | }
25 |
26 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Shortcodes/Address_List.php:
--------------------------------------------------------------------------------
1 | render();
24 | }
25 |
26 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Shortcodes/Registration_Form.php:
--------------------------------------------------------------------------------
1 | credentials_set() || is_user_logged_in() ) {
18 | return '';
19 | }
20 | $component = Templates\Registration_Form::factory();
21 | return $component->render();
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/src/BigCommerce/Shortcodes/Shortcode.php:
--------------------------------------------------------------------------------
1 | [],
18 | ];
19 |
20 | return wp_parse_args( $options, $defaults );
21 | }
22 |
23 | public function get_data() {
24 | return [
25 | self::CART => $this->options[ self::CART ],
26 | self::HREF => get_permalink( get_option( Cart_Page::NAME ) ),
27 | ];
28 | }
29 |
30 | }
31 |
--------------------------------------------------------------------------------
/src/BigCommerce/Templates/Cart_Error_Message.php:
--------------------------------------------------------------------------------
1 | [],
16 | ];
17 |
18 | return wp_parse_args( $options, $defaults );
19 | }
20 |
21 | public function get_data() {
22 | return [
23 | self::CART => $this->options[ self::CART ],
24 | ];
25 | }
26 |
27 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Templates/Controller_Factory.php:
--------------------------------------------------------------------------------
1 | '',
26 | ];
27 | }
28 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Templates/Gift_Certificate_Redemption_Instructions.php:
--------------------------------------------------------------------------------
1 | wrapper_attributes;
12 | $attributes['href'] = esc_url( get_permalink( $this->options[ self::PRODUCT ]->post_id() ) );
13 | $attributes['title'] = esc_html( get_the_title( $this->options[ self::PRODUCT ]->post_id() ) );
14 |
15 | return $attributes;
16 | }
17 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Templates/Mini_Cart_Actions.php:
--------------------------------------------------------------------------------
1 | $cart,
11 | ] );
12 | $checkout = Cart_Action_Checkout::factory( [
13 | Cart_Action_Checkout::CART => $cart,
14 | ] );
15 |
16 | return [
17 | 'view' => $view->render(),
18 | 'checkout' => $checkout->render(),
19 | ];
20 | }
21 |
22 | }
23 |
--------------------------------------------------------------------------------
/src/BigCommerce/Templates/Mini_Cart_Footer.php:
--------------------------------------------------------------------------------
1 | $cart,
14 | ] );
15 |
16 | return $component->render();
17 | }
18 |
19 | protected function get_summary( $cart ) {
20 | $component = Mini_Cart_Summary::factory( [
21 | Mini_Cart_Summary::CART => $cart,
22 | ] );
23 |
24 | return $component->render();
25 | }
26 |
27 | }
28 |
--------------------------------------------------------------------------------
/src/BigCommerce/Templates/Mini_Cart_Header.php:
--------------------------------------------------------------------------------
1 | [],
15 | self::IMAGE_SIZE => Image_Sizes::BC_THUMB,
16 | ];
17 |
18 | return wp_parse_args( $options, $defaults );
19 | }
20 | }
21 |
--------------------------------------------------------------------------------
/src/BigCommerce/Templates/Mini_Cart_Summary.php:
--------------------------------------------------------------------------------
1 | '',
15 | ];
16 |
17 | return wp_parse_args( $options, $defaults );
18 | }
19 |
20 | public function get_data() {
21 | return [
22 | self::NEXT_PAGE_URL => $this->options[ self::NEXT_PAGE_URL ],
23 | ];
24 | }
25 |
26 |
27 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Templates/Page_Wrapper.php:
--------------------------------------------------------------------------------
1 | '',
16 | ];
17 |
18 | return wp_parse_args( $options, $defaults );
19 | }
20 |
21 | public function get_data() {
22 | return [
23 | self::CONTENT => $this->options[ self::CONTENT ],
24 | ];
25 | }
26 |
27 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Templates/Product_Not_Available.php:
--------------------------------------------------------------------------------
1 | __( 'Information for this product is not available.', 'bigcommerce' ),
14 | ];
15 |
16 | return wp_parse_args( $options, $defaults );
17 | }
18 |
19 | public function get_data() {
20 | return [
21 | self::MESSAGE => wp_kses( $this->options[ self::MESSAGE ], 'data' ),
22 | ];
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/BigCommerce/Templates/Shipping_Info_Button.php:
--------------------------------------------------------------------------------
1 | 'bc-shipping-calculator' ];
13 |
14 | protected function parse_options( array $options ) {
15 | $defaults = [];
16 |
17 | return wp_parse_args( $options, $defaults );
18 | }
19 |
20 | public function get_data() {
21 | return [];
22 | }
23 |
24 | }
25 |
--------------------------------------------------------------------------------
/src/BigCommerce/Templates/Template.php:
--------------------------------------------------------------------------------
1 | path = $path;
17 | }
18 |
19 | /**
20 | * Render the template to a string
21 | *
22 | * @param array $context Variables that will be passed to the template
23 | *
24 | * @return string
25 | */
26 | public function render( array $context ) {
27 | extract( $context );
28 | ob_start();
29 | include $this->path;
30 | return ob_get_clean();
31 | }
32 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Templates/Wishlist_New_Link.php:
--------------------------------------------------------------------------------
1 | __( 'Information about this Wish List is not available.', 'bigcommerce' ),
14 | ];
15 |
16 | return wp_parse_args( $options, $defaults );
17 | }
18 |
19 | public function get_data() {
20 | return [
21 | self::MESSAGE => wp_kses( $this->options[ self::MESSAGE ], 'data' ),
22 | ];
23 | }
24 | }
25 |
--------------------------------------------------------------------------------
/src/BigCommerce/Util/Cart_Item_Iterator.php:
--------------------------------------------------------------------------------
1 | getLineItems()->getPhysicalItems() as $item ) {
17 | yield $item->getId() => $item;
18 | }
19 | foreach ( $cart->getLineItems()->getDigitalItems() as $item ) {
20 | yield $item->getId() => $item;
21 | }
22 | foreach ( $cart->getLineItems()->getGiftCertificates() as $item ) {
23 | yield $item->getId() => $item;
24 | }
25 | }
26 | }
--------------------------------------------------------------------------------
/src/BigCommerce/Webhooks/Customer/Customer_Deleter.php:
--------------------------------------------------------------------------------
1 | delete_customer( $customer_id );
24 | }
25 |
26 | }
27 |
--------------------------------------------------------------------------------
/src/BigCommerce/Webhooks/Webhook_Cron_Tasks.php:
--------------------------------------------------------------------------------
1 |
9 |
10 |
11 | -
12 |
13 |
14 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/templates/public/amp/components/cart/cart-actions.php:
--------------------------------------------------------------------------------
1 |
14 |
15 |
16 |
22 |
23 |
--------------------------------------------------------------------------------
/templates/public/amp/components/cart/cart.php:
--------------------------------------------------------------------------------
1 |
16 |
17 |
25 |
--------------------------------------------------------------------------------
/templates/public/amp/components/catalog/refinery.php:
--------------------------------------------------------------------------------
1 |
13 |
22 |
--------------------------------------------------------------------------------
/templates/public/amp/components/products/view-product-button.php:
--------------------------------------------------------------------------------
1 | post_id() );
14 | ?>
15 |
16 |
21 |
--------------------------------------------------------------------------------
/templates/public/archive-bigcommerce_product.php:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
--------------------------------------------------------------------------------
/templates/public/components/accounts/address-actions.php:
--------------------------------------------------------------------------------
1 |
10 |
11 |
12 |
14 |
15 |
16 |
21 |
22 |
23 |
--------------------------------------------------------------------------------
/templates/public/components/accounts/address-new.php:
--------------------------------------------------------------------------------
1 |
9 |
10 |
11 |
12 |
13 |
14 |
17 |
--------------------------------------------------------------------------------
/templates/public/components/cart/cart-action-checkout.php:
--------------------------------------------------------------------------------
1 |
12 |
13 |
--------------------------------------------------------------------------------
/templates/public/components/cart/cart-action-view.php:
--------------------------------------------------------------------------------
1 |
13 |
14 |
--------------------------------------------------------------------------------
/templates/public/components/cart/cart-actions.php:
--------------------------------------------------------------------------------
1 |
13 |
14 |
15 |
24 |
25 |
--------------------------------------------------------------------------------
/templates/public/components/cart/cart-error-message.php:
--------------------------------------------------------------------------------
1 |
10 |
11 |
--------------------------------------------------------------------------------
/templates/public/components/cart/cart-footer.php:
--------------------------------------------------------------------------------
1 |
10 |
11 |
--------------------------------------------------------------------------------
/templates/public/components/cart/mini-cart-footer.php:
--------------------------------------------------------------------------------
1 |
10 |
--------------------------------------------------------------------------------
/templates/public/components/cart/mini-cart-summary.php:
--------------------------------------------------------------------------------
1 |
12 |
13 |
14 |
15 |
16 |
17 |
18 |
--------------------------------------------------------------------------------
/templates/public/components/cart/mini-cart.php:
--------------------------------------------------------------------------------
1 |
15 |
16 |
23 |
--------------------------------------------------------------------------------
/templates/public/components/cart/shipping-info-button.php:
--------------------------------------------------------------------------------
1 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/templates/public/components/cart/shipping-zones-dropdown.php:
--------------------------------------------------------------------------------
1 |
12 |
13 |
19 |
--------------------------------------------------------------------------------
/templates/public/components/catalog/no-results.php:
--------------------------------------------------------------------------------
1 |
13 |
14 |
21 |
--------------------------------------------------------------------------------
/templates/public/components/catalog/refinery.php:
--------------------------------------------------------------------------------
1 |
12 |
19 |
--------------------------------------------------------------------------------
/templates/public/components/fallback-image.php:
--------------------------------------------------------------------------------
1 |
11 |
17 |
18 |
--------------------------------------------------------------------------------
/templates/public/components/gift-certificates/purchase-shortcode.php:
--------------------------------------------------------------------------------
1 |
10 |
11 |
12 |
13 |
14 |
--------------------------------------------------------------------------------
/templates/public/components/message-group.php:
--------------------------------------------------------------------------------
1 |
12 |
13 |
14 |
15 |
18 |
19 |
--------------------------------------------------------------------------------
/templates/public/components/message.php:
--------------------------------------------------------------------------------
1 |
14 |
15 |
16 | >
17 |
18 |
19 |
--------------------------------------------------------------------------------
/templates/public/components/orders/order-not-found.php:
--------------------------------------------------------------------------------
1 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/templates/public/components/page-wrapper.php:
--------------------------------------------------------------------------------
1 |
11 |
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/templates/public/components/products/inventory-level.php:
--------------------------------------------------------------------------------
1 |
16 |
17 | ()
18 |
--------------------------------------------------------------------------------
/templates/public/components/products/not-available.php:
--------------------------------------------------------------------------------
1 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/templates/public/components/products/product-brand.php:
--------------------------------------------------------------------------------
1 |
18 |
--------------------------------------------------------------------------------
/templates/public/components/products/product-condition.php:
--------------------------------------------------------------------------------
1 |
18 |
19 |
--------------------------------------------------------------------------------
/templates/public/components/products/product-description.php:
--------------------------------------------------------------------------------
1 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/templates/public/components/products/product-featured-image.php:
--------------------------------------------------------------------------------
1 |
13 |
14 | on_sale() ) { ?>
15 |
16 |
17 |
18 |
21 |
--------------------------------------------------------------------------------
/templates/public/components/products/product-form-preview.php:
--------------------------------------------------------------------------------
1 |
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/templates/public/components/products/product-hidden-price.php:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/templates/public/components/products/product-modifiers.php:
--------------------------------------------------------------------------------
1 |
16 |
17 |
18 |
19 |
24 |
--------------------------------------------------------------------------------
/templates/public/components/products/product-shortcode-single.php:
--------------------------------------------------------------------------------
1 |
20 |
21 |
22 |
23 |
24 |
25 |
32 |
33 |
34 |
35 |
36 |
37 |
38 |
--------------------------------------------------------------------------------
/templates/public/components/products/product-sku.php:
--------------------------------------------------------------------------------
1 |
18 |
19 |
20 |
21 |
22 |
23 |
24 |
25 |
26 |
27 |
--------------------------------------------------------------------------------
/templates/public/components/products/product-specs.php:
--------------------------------------------------------------------------------
1 |
7 |
8 |
9 |
10 |
11 | $value ) { ?>
12 | -
13 |
14 |
15 |
16 |
17 |
18 |
19 |
--------------------------------------------------------------------------------
/templates/public/components/products/related-product-card.php:
--------------------------------------------------------------------------------
1 |
14 |
15 |
16 |
17 |
18 |
23 |
24 |
25 |
26 |
27 |
28 |
29 |
30 |
--------------------------------------------------------------------------------
/templates/public/components/products/view-product-button.php:
--------------------------------------------------------------------------------
1 |
15 |
16 |
19 |
--------------------------------------------------------------------------------
/templates/public/components/reviews/product-reviews.php:
--------------------------------------------------------------------------------
1 |
11 |
12 |
13 |
14 |
15 |
16 |
--------------------------------------------------------------------------------
/templates/public/components/sub-nav-links.php:
--------------------------------------------------------------------------------
1 |
11 |
20 |
--------------------------------------------------------------------------------
/templates/public/components/wishlist/detail-breadcrumb.php:
--------------------------------------------------------------------------------
1 |
12 |
17 |
--------------------------------------------------------------------------------
/templates/public/components/wishlist/detail.php:
--------------------------------------------------------------------------------
1 |
14 |
15 |
16 |
17 |
18 |
19 | -
20 |
21 |
22 |
23 |
24 |
--------------------------------------------------------------------------------
/templates/public/components/wishlist/new-button.php:
--------------------------------------------------------------------------------
1 |
11 |
12 |
13 |
--------------------------------------------------------------------------------
/templates/public/components/wishlist/new-link.php:
--------------------------------------------------------------------------------
1 |
11 | class="bc-link bc-wish-list-btn--new">
12 |
13 |
--------------------------------------------------------------------------------
/templates/public/components/wishlist/not-available.php:
--------------------------------------------------------------------------------
1 |
15 |
16 |
17 |
--------------------------------------------------------------------------------
/templates/public/single-bigcommerce_product.php:
--------------------------------------------------------------------------------
1 | code}): " . $this->message;
14 | }
15 | }
16 |
--------------------------------------------------------------------------------
/vendor/bigcommerce/api/src/Bigcommerce/Api/Error.php:
--------------------------------------------------------------------------------
1 | message;
14 | }
15 |
16 | parent::__construct($message, $code);
17 | }
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/bigcommerce/api/src/Bigcommerce/Api/NetworkError.php:
--------------------------------------------------------------------------------
1 | getCreateFields());
21 | }
22 |
23 | public function update()
24 | {
25 | return Client::updateBrand($this->id, $this->getUpdateFields());
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/bigcommerce/api/src/Bigcommerce/Api/Resources/Category.php:
--------------------------------------------------------------------------------
1 | getCreateFields());
23 | }
24 |
25 | public function update()
26 | {
27 | return Client::updateCategory($this->id, $this->getUpdateFields());
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/vendor/bigcommerce/api/src/Bigcommerce/Api/Resources/Coupon.php:
--------------------------------------------------------------------------------
1 | getCreateFields());
23 | }
24 |
25 | public function update()
26 | {
27 | return Client::updateCoupon($this->id, $this->getUpdateFields());
28 | }
29 | }
30 |
--------------------------------------------------------------------------------
/vendor/bigcommerce/api/src/Bigcommerce/Api/Resources/DiscountRule.php:
--------------------------------------------------------------------------------
1 | fields->values->resource, 'OptionValue');
16 | }
17 | }
18 |
--------------------------------------------------------------------------------
/vendor/bigcommerce/api/src/Bigcommerce/Api/Resources/OrderProduct.php:
--------------------------------------------------------------------------------
1 | 'option_id'
15 | );
16 |
17 | public function option()
18 | {
19 | return Client::getResource('/options/' . $this->fields->option_id, 'Option');
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/vendor/bigcommerce/api/src/Bigcommerce/Api/Resources/ProductReview.php:
--------------------------------------------------------------------------------
1 | getCreateFields());
21 | }
22 |
23 | public function update()
24 | {
25 | return Client::updateResource('/shipping/zones/'. $this->id, $this->getUpdateFields());
26 | }
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/bigcommerce/api/src/Bigcommerce/Api/Resources/TaxClass.php:
--------------------------------------------------------------------------------
1 | assertSame('Client Error (100): message here', (string)$error);
12 | }
13 | }
14 |
--------------------------------------------------------------------------------
/vendor/bigcommerce/api/test/Unit/Api/ErrorTest.php:
--------------------------------------------------------------------------------
1 | 'message here');
11 | $error = new Error(array($messageObj), 0);
12 | $this->assertSame('message here', $error->getMessage());
13 | }
14 |
15 | public function testConstructorPassesMessageAndCodeThrough()
16 | {
17 | $error = new Error('message here', 100);
18 | $this->assertSame('message here', $error->getMessage());
19 | $this->assertSame(100, $error->getCode());
20 | }
21 | }
22 |
--------------------------------------------------------------------------------
/vendor/bigcommerce/api/test/Unit/Api/NetworkErrorTest.php:
--------------------------------------------------------------------------------
1 | assertSame('message', $error->getMessage());
12 | $this->assertSame(100, $error->getCode());
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/vendor/bigcommerce/api/test/Unit/Api/Resources/ProductOptionTest.php:
--------------------------------------------------------------------------------
1 | 1));
12 | $this->connection->expects($this->once())
13 | ->method('get')
14 | ->with($this->basePath . '/options/1')
15 | ->will($this->returnValue(array(array())));
16 |
17 | $this->assertInstanceOf('Bigcommerce\\Api\\Resources\\Option', $productOption->option);
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/vendor/bigcommerce/api/test/Unit/Api/Resources/RealTest.php:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/vendor/bigcommerce/api/test/Unit/Api/Resources/RealTest.php
--------------------------------------------------------------------------------
/vendor/bigcommerce/api/test/Unit/Api/ServerErrorTest.php:
--------------------------------------------------------------------------------
1 | assertSame('message', $error->getMessage());
12 | $this->assertSame(100, $error->getCode());
13 | }
14 | }
15 |
--------------------------------------------------------------------------------
/vendor/composer/autoload_files.php:
--------------------------------------------------------------------------------
1 | $vendorDir . '/paragonie/random_compat/lib/random.php',
10 | );
11 |
--------------------------------------------------------------------------------
/vendor/composer/autoload_namespaces.php:
--------------------------------------------------------------------------------
1 | array($vendorDir . '/pimple/pimple/src'),
10 | 'Bigcommerce' => array($vendorDir . '/bigcommerce/api/src'),
11 | );
12 |
--------------------------------------------------------------------------------
/vendor/firebase/php-jwt/src/BeforeValidException.php:
--------------------------------------------------------------------------------
1 | level(Symfony\CS\FixerInterface::PSR2_LEVEL)
5 | ->setUsingCache(true)
6 | ->fixers(
7 | [
8 | 'ordered_use',
9 | 'phpdoc_order',
10 | 'short_array_syntax',
11 | 'strict',
12 | 'strict_param'
13 | ]
14 | )
15 | ->finder(
16 | Symfony\CS\Finder\DefaultFinder::create()
17 | ->in(__DIR__)
18 | );
19 |
--------------------------------------------------------------------------------
/vendor/moderntribe/bigcommerce-api-php-v3/.travis.yml:
--------------------------------------------------------------------------------
1 | language: php
2 | dist: trusty
3 | sudo: false
4 | php:
5 | - 5.4
6 | - 5.5
7 | - 5.6
8 | - 7.0
9 | - 7.1
10 | - 7.2
11 | - 7.3
12 | before_install: "composer install"
13 | script: ""
14 |
--------------------------------------------------------------------------------
/vendor/moderntribe/bigcommerce-api-php-v3/README.md:
--------------------------------------------------------------------------------
1 | # BigCommerce API V3 Client Library
2 |
3 | PHP client for connecting to the Bigcommerce V3 REST API.
4 |
5 | ## System Requirements
6 |
7 | PHP 5.4.0 and later
8 |
9 | ## Documentation
10 |
11 |
12 | * [Usage](/docs/client.md)
13 | * [Contributing](/docs/development.md)
14 |
15 |
--------------------------------------------------------------------------------
/vendor/moderntribe/bigcommerce-api-php-v3/config.json:
--------------------------------------------------------------------------------
1 | {
2 | "variableNamingConvention": "snake_case",
3 | "invokerPackage": "BigCommerce\\Api\\v3",
4 | "apiPackage": "BigCommerce\\Api\\v3\\Api",
5 | "modelPackage": "BigCommerce\\Api\\v3\\Model",
6 | "packagePath": "Client",
7 | "srcBasePath": "src",
8 | "gitUserId": "moderntribe",
9 | "gitRepoId": "bigcommerce-api-php-v3"
10 | }
--------------------------------------------------------------------------------
/vendor/moderntribe/bigcommerce-api-php-v3/swagger/templates/model.mustache:
--------------------------------------------------------------------------------
1 | partial_header}}
11 | /**
12 | * NOTE: This class is auto generated by the swagger code generator program.
13 | * https://github.com/swagger-api/swagger-codegen
14 | * Do not edit the class manually.
15 | */
16 |
17 | namespace {{modelPackage}};
18 |
19 | use \ArrayAccess;
20 |
21 | {{#isEnum}}{{>model_enum}}{{/isEnum}}{{^isEnum}}{{>model_generic}}{{/isEnum}}
22 |
23 | {{/model}}
24 | {{/models}}
25 |
--------------------------------------------------------------------------------
/vendor/moderntribe/bigcommerce-api-php-v3/swagger/templates/model_enum.mustache:
--------------------------------------------------------------------------------
1 | class {{classname}} {
2 | {{#allowableValues}}{{#enumVars}}const {{{name}}} = {{{value}}};
3 | {{/enumVars}}{{/allowableValues}}
4 |
5 | {{#vars}}{{#isEnum}}
6 | /**
7 | * Gets allowable values of the enum
8 | * @return string[]
9 | */
10 | public function {{getter}}AllowableValues()
11 | {
12 | return [
13 | {{#allowableValues}}{{#enumVars}}self::{{datatypeWithEnum}}_{{{name}}},{{^-last}}
14 | {{/-last}}{{/enumVars}}{{/allowableValues}}
15 | ];
16 | }
17 | {{/isEnum}}{{/vars}}
18 | }
19 |
--------------------------------------------------------------------------------
/vendor/monolog/monolog/phpunit.xml.dist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 |
6 | tests/Monolog/
7 |
8 |
9 |
10 |
11 |
12 | src/Monolog/
13 |
14 |
15 |
16 |
17 |
18 |
19 |
20 |
--------------------------------------------------------------------------------
/vendor/monolog/monolog/src/Monolog/Handler/MissingExtensionException.php:
--------------------------------------------------------------------------------
1 |
7 | *
8 | * For the full copyright and license information, please view the LICENSE
9 | * file that was distributed with this source code.
10 | */
11 |
12 | namespace Monolog\Handler;
13 |
14 | /**
15 | * Exception can be thrown if an extension for an handler is missing
16 | *
17 | * @author Christian Bergau
18 | */
19 | class MissingExtensionException extends \Exception
20 | {
21 | }
22 |
--------------------------------------------------------------------------------
/vendor/monolog/monolog/src/Monolog/Processor/ProcessorInterface.php:
--------------------------------------------------------------------------------
1 |
7 | *
8 | * For the full copyright and license information, please view the LICENSE
9 | * file that was distributed with this source code.
10 | */
11 |
12 | namespace Monolog\Processor;
13 |
14 | /**
15 | * An optional interface to allow labelling Monolog processors.
16 | *
17 | * @author Nicolas Grekas
18 | */
19 | interface ProcessorInterface
20 | {
21 | /**
22 | * @return array The processed records
23 | */
24 | public function __invoke(array $records);
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/monolog/monolog/src/Monolog/Utils.php:
--------------------------------------------------------------------------------
1 |
7 | *
8 | * For the full copyright and license information, please view the LICENSE
9 | * file that was distributed with this source code.
10 | */
11 |
12 | namespace Monolog;
13 |
14 | class Utils
15 | {
16 | /**
17 | * @internal
18 | */
19 | public static function getClass($object)
20 | {
21 | $class = \get_class($object);
22 |
23 | return 'c' === $class[0] && 0 === strpos($class, "class@anonymous\0") ? get_parent_class($class).'@anonymous' : $class;
24 | }
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/monolog/monolog/tests/Monolog/Handler/Fixtures/.gitkeep:
--------------------------------------------------------------------------------
https://raw.githubusercontent.com/bigcommerce/bigcommerce-for-wordpress/d3cf4ffc87f2ec159f7c1bbbf447ab71ced7531b/vendor/monolog/monolog/tests/Monolog/Handler/Fixtures/.gitkeep
--------------------------------------------------------------------------------
/vendor/monolog/monolog/tests/Monolog/Handler/GelfMockMessagePublisher.php:
--------------------------------------------------------------------------------
1 |
7 | *
8 | * For the full copyright and license information, please view the LICENSE
9 | * file that was distributed with this source code.
10 | */
11 |
12 | namespace Monolog\Handler;
13 |
14 | use Gelf\MessagePublisher;
15 | use Gelf\Message;
16 |
17 | class GelfMockMessagePublisher extends MessagePublisher
18 | {
19 | public function publish(Message $message)
20 | {
21 | $this->lastMessage = $message;
22 | }
23 |
24 | public $lastMessage = null;
25 | }
26 |
--------------------------------------------------------------------------------
/vendor/monolog/monolog/tests/Monolog/Handler/MockRavenClient.php:
--------------------------------------------------------------------------------
1 |
7 | *
8 | * For the full copyright and license information, please view the LICENSE
9 | * file that was distributed with this source code.
10 | */
11 |
12 | namespace Monolog\Handler;
13 |
14 | use Raven_Client;
15 |
16 | class MockRavenClient extends Raven_Client
17 | {
18 | public function capture($data, $stack, $vars = null)
19 | {
20 | $data = array_merge($this->get_user_data(), $data);
21 | $this->lastData = $data;
22 | $this->lastStack = $stack;
23 | }
24 |
25 | public $lastData;
26 | public $lastStack;
27 | }
28 |
--------------------------------------------------------------------------------
/vendor/paragonie/random_compat/dist/random_compat.phar.pubkey:
--------------------------------------------------------------------------------
1 | -----BEGIN PUBLIC KEY-----
2 | MHYwEAYHKoZIzj0CAQYFK4EEACIDYgAEEd+wCqJDrx5B4OldM0dQE0ZMX+lx1ZWm
3 | pui0SUqD4G29L3NGsz9UhJ/0HjBdbnkhIK5xviT0X5vtjacF6ajgcCArbTB+ds+p
4 | +h7Q084NuSuIpNb6YPfoUFgC/CL9kAoc
5 | -----END PUBLIC KEY-----
6 |
--------------------------------------------------------------------------------
/vendor/paragonie/random_compat/dist/random_compat.phar.pubkey.asc:
--------------------------------------------------------------------------------
1 | -----BEGIN PGP SIGNATURE-----
2 | Version: GnuPG v2.0.22 (MingW32)
3 |
4 | iQEcBAABAgAGBQJWtW1hAAoJEGuXocKCZATaJf0H+wbZGgskK1dcRTsuVJl9IWip
5 | QwGw/qIKI280SD6/ckoUMxKDCJiFuPR14zmqnS36k7N5UNPnpdTJTS8T11jttSpg
6 | 1LCmgpbEIpgaTah+cELDqFCav99fS+bEiAL5lWDAHBTE/XPjGVCqeehyPYref4IW
7 | NDBIEsvnHPHPLsn6X5jq4+Yj5oUixgxaMPiR+bcO4Sh+RzOVB6i2D0upWfRXBFXA
8 | NNnsg9/zjvoC7ZW73y9uSH+dPJTt/Vgfeiv52/v41XliyzbUyLalf02GNPY+9goV
9 | JHG1ulEEBJOCiUD9cE1PUIJwHA/HqyhHIvV350YoEFiHl8iSwm7SiZu5kPjaq74=
10 | =B6+8
11 | -----END PGP SIGNATURE-----
12 |
--------------------------------------------------------------------------------
/vendor/pimple/pimple/.gitignore:
--------------------------------------------------------------------------------
1 | phpunit.xml
2 | composer.lock
3 | /vendor/
4 |
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/.gitignore:
--------------------------------------------------------------------------------
1 | *.sw*
2 | .deps
3 | Makefile
4 | Makefile.fragments
5 | Makefile.global
6 | Makefile.objects
7 | acinclude.m4
8 | aclocal.m4
9 | build/
10 | config.cache
11 | config.guess
12 | config.h
13 | config.h.in
14 | config.log
15 | config.nice
16 | config.status
17 | config.sub
18 | configure
19 | configure.in
20 | install-sh
21 | libtool
22 | ltmain.sh
23 | missing
24 | mkinstalldirs
25 | run-tests.php
26 | *.loT
27 | .libs/
28 | modules/
29 | *.la
30 | *.lo
31 |
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/README.md:
--------------------------------------------------------------------------------
1 | This is Pimple 2 implemented in C
2 |
3 | * PHP >= 5.3
4 | * Not tested under Windows, might work
5 |
6 | Install
7 | =======
8 |
9 | > phpize
10 | > ./configure
11 | > make
12 | > make install
13 |
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/config.w32:
--------------------------------------------------------------------------------
1 | // $Id$
2 | // vim:ft=javascript
3 |
4 | // If your extension references something external, use ARG_WITH
5 | // ARG_WITH("pimple", "for pimple support", "no");
6 |
7 | // Otherwise, use ARG_ENABLE
8 | // ARG_ENABLE("pimple", "enable pimple support", "no");
9 |
10 | if (PHP_PIMPLE != "no") {
11 | EXTENSION("pimple", "pimple.c");
12 | }
13 |
14 |
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/002.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test for constructor
3 | --SKIPIF--
4 |
5 | --FILE--
6 | 'foo'));
11 | var_dump($p[42]);
12 | ?>
13 | --EXPECT--
14 | NULL
15 | string(3) "foo"
16 |
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/003.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test empty dimensions
3 | --SKIPIF--
4 |
5 | --FILE--
6 |
14 | --EXPECT--
15 | int(42)
16 | string(3) "bar"
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/004.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test has/unset dim handlers
3 | --SKIPIF--
4 |
5 | --FILE--
6 |
24 | --EXPECT--
25 | int(42)
26 | NULL
27 | bool(true)
28 | bool(false)
29 | bool(true)
30 | bool(true)
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/005.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test simple class inheritance
3 | --SKIPIF--
4 |
5 | --FILE--
6 | someAttr;
23 | ?>
24 | --EXPECT--
25 | string(3) "hit"
26 | foo
27 | fooAttr
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/007.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test for read_dim/write_dim handlers
3 | --SKIPIF--
4 |
5 | --FILE--
6 |
20 | --EXPECTF--
21 | foo
22 | 42
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/008.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test frozen services
3 | --SKIPIF--
4 |
5 | --FILE--
6 |
29 | --EXPECTF--
30 |
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/009.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test service is called as callback, and only once
3 | --SKIPIF--
4 |
5 | --FILE--
6 |
12 | --EXPECTF--
13 | bool(true)
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/011.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test service callback throwing an exception
3 | --SKIPIF--
4 |
5 | --FILE--
6 |
18 | --EXPECTF--
19 | all right!
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/012.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test service factory
3 | --SKIPIF--
4 |
5 | --FILE--
6 | factory($f = function() { var_dump('called-1'); return 'ret-1';});
11 |
12 | $p[] = $f;
13 |
14 | $p[] = function () { var_dump('called-2'); return 'ret-2'; };
15 |
16 | var_dump($p[0]);
17 | var_dump($p[0]);
18 | var_dump($p[1]);
19 | var_dump($p[1]);
20 | ?>
21 | --EXPECTF--
22 | string(8) "called-1"
23 | string(5) "ret-1"
24 | string(8) "called-1"
25 | string(5) "ret-1"
26 | string(8) "called-2"
27 | string(5) "ret-2"
28 | string(5) "ret-2"
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/013.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test keys()
3 | --SKIPIF--
4 |
5 | --FILE--
6 | keys());
11 |
12 | $p['foo'] = 'bar';
13 | $p[] = 'foo';
14 |
15 | var_dump($p->keys());
16 |
17 | unset($p['foo']);
18 |
19 | var_dump($p->keys());
20 | ?>
21 | --EXPECTF--
22 | array(0) {
23 | }
24 | array(2) {
25 | [0]=>
26 | string(3) "foo"
27 | [1]=>
28 | int(0)
29 | }
30 | array(1) {
31 | [0]=>
32 | int(0)
33 | }
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/014.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test raw()
3 | --SKIPIF--
4 |
5 | --FILE--
6 | raw('foo'));
16 | var_dump($p[42]);
17 |
18 | unset($p['foo']);
19 |
20 | try {
21 | $p->raw('foo');
22 | echo "expected exception";
23 | } catch (InvalidArgumentException $e) { }
24 | --EXPECTF--
25 | string(8) "called-2"
26 | string(5) "ret-2"
27 | object(Closure)#%i (0) {
28 | }
29 | string(8) "called-2"
30 | string(5) "ret-2"
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/015.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test protect()
3 | --SKIPIF--
4 |
5 | --FILE--
6 | protect($f);
13 |
14 | var_dump($p['foo']);
15 | --EXPECTF--
16 | object(Closure)#%i (0) {
17 | }
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/016.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test extend()
3 | --SKIPIF--
4 |
5 | --FILE--
6 | extend(12, function ($w) { var_dump($w); return 'bar'; }); /* $callable in code above */
19 |
20 | var_dump($c('param'));
21 | --EXPECTF--
22 | string(5) "param"
23 | string(3) "foo"
24 | string(3) "bar"
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/017.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test extend() with exception in service extension
3 | --SKIPIF--
4 |
5 | --FILE--
6 | extend(12, function ($w) { throw new BadMethodCallException; });
12 |
13 | try {
14 | $p[12];
15 | echo "Exception expected";
16 | } catch (BadMethodCallException $e) { }
17 | --EXPECTF--
18 |
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/017_1.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test extend() with exception in service factory
3 | --SKIPIF--
4 |
5 | --FILE--
6 | extend(12, function ($w) { return 'foobar'; });
12 |
13 | try {
14 | $p[12];
15 | echo "Exception expected";
16 | } catch (BadMethodCallException $e) { }
17 | --EXPECTF--
18 |
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/018.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test register()
3 | --SKIPIF--
4 |
5 | --FILE--
6 | register(new Foo, array(42 => 'bar'));
18 |
19 | var_dump($p[42]);
20 | --EXPECTF--
21 | object(Pimple\Container)#1 (0) {
22 | }
23 | string(3) "bar"
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/019.phpt:
--------------------------------------------------------------------------------
1 | --TEST--
2 | Test register() returns static and is a fluent interface
3 | --SKIPIF--
4 |
5 | --FILE--
6 | register(new Foo));
17 | --EXPECTF--
18 | bool(true)
19 |
--------------------------------------------------------------------------------
/vendor/pimple/pimple/ext/pimple/tests/bench_shared.phpb:
--------------------------------------------------------------------------------
1 |
26 |
--------------------------------------------------------------------------------
/vendor/pimple/pimple/phpunit.xml.dist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
9 |
10 |
11 | ./src/Pimple/Tests
12 |
13 |
14 |
15 |
--------------------------------------------------------------------------------
/vendor/psr/container/.gitignore:
--------------------------------------------------------------------------------
1 | composer.lock
2 | composer.phar
3 | /vendor/
4 |
--------------------------------------------------------------------------------
/vendor/psr/container/README.md:
--------------------------------------------------------------------------------
1 | Container interface
2 | ==============
3 |
4 | This repository holds all interfaces related to [PSR-11 (Container Interface)][psr-url].
5 |
6 | Note that this is not a Container implementation of its own. It is merely abstractions that describe the components of a Dependency Injection Container.
7 |
8 | The installable [package][package-url] and [implementations][implementation-url] are listed on Packagist.
9 |
10 | [psr-url]: https://www.php-fig.org/psr/psr-11/
11 | [package-url]: https://packagist.org/packages/psr/container
12 | [implementation-url]: https://packagist.org/providers/psr/container-implementation
13 |
14 |
--------------------------------------------------------------------------------
/vendor/psr/container/composer.json:
--------------------------------------------------------------------------------
1 | {
2 | "name": "psr/container",
3 | "type": "library",
4 | "description": "Common Container Interface (PHP FIG PSR-11)",
5 | "keywords": ["psr", "psr-11", "container", "container-interop", "container-interface"],
6 | "homepage": "https://github.com/php-fig/container",
7 | "license": "MIT",
8 | "authors": [
9 | {
10 | "name": "PHP-FIG",
11 | "homepage": "https://www.php-fig.org/"
12 | }
13 | ],
14 | "require": {
15 | "php": ">=7.4.0"
16 | },
17 | "autoload": {
18 | "psr-4": {
19 | "Psr\\Container\\": "src/"
20 | }
21 | }
22 | }
23 |
--------------------------------------------------------------------------------
/vendor/psr/container/src/ContainerExceptionInterface.php:
--------------------------------------------------------------------------------
1 | logger = $logger;
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/psr/log/Psr/Log/Test/DummyTest.php:
--------------------------------------------------------------------------------
1 | =5.3.0"
15 | },
16 | "autoload": {
17 | "psr-4": {
18 | "Psr\\Log\\": "Psr/Log/"
19 | }
20 | },
21 | "extra": {
22 | "branch-alias": {
23 | "dev-master": "1.1.x-dev"
24 | }
25 | }
26 | }
27 |
--------------------------------------------------------------------------------
/vendor/vlucas/phpdotenv/src/Exception/ExceptionInterface.php:
--------------------------------------------------------------------------------
1 |