Recent Activities

This page shows what are we working on.

breezefront / theme-frontend-breeze-enterprise-eir

1 hour ago success
  • head
    • Few minor changes to shop by dropdown 22fc09

    • Enhance header slideout menu. Adjust top offset. 75cdb2

    • Related product block. Fix issue incorrectly placed button when critical CSS enabled. 63d63b

    • Added testimonials and FAQ blocks to the product page e95221

    • Remove listing banners except for the first one 0b5f7c

    • Added ECI config, layout, and styles 9823dd

    • Updated styles and scripts to work with Qty Switcher module 59ad66

    • Minicart. Update slideout positioning and add scroll tracking for dropdown dialogs 96fbb9

    • Update header panel styles for pagebuilder slider. 4967ce

    • Refactor header panel: remove EasySlide integration, add header panel info block, and update styles for header panel slider 662724

    • Remove EasySlide configuration and related HTML content ea5c76

    • Add noEscape directive to continue shopping button URL ac4b9c

    • Update listing gap variable to use defined spacing 41f0ca

    • Add CSS class to main title in checkout cart layout dc41f6

    • Shopping cart page is done. c1d6d0

    • Shopping cart page in progress 8ca297

    • Shopping cart page 9fa558

    • Enhance quantity input styling and functionality. Apply border-radius to buttons and ensure step attribute is valid. 1bcebb

    • Add padding variable for navigation link caret. aa8d04

    • Quantity wrapper component. f57c8d

    • Product page. Adjustments for related products layout. aa27ee

    • Product page. Add new layout container. Place BCB marquee content there. a2fe52

    • Product page. Enhance gallery configuration and update layout variables for improved styling and responsiveness. b89117

    • Product page. Add grid area for price information and implement gallery layout for improved product display. 76b0b3

    • Product page. Add focus ring styling for checkboxes in related products block to enhance accessibility. ab2227

    • Product page. Refactor related products layout for improved responsiveness and styling consistency. 5aa789

    • Product page. Update quantity button icons to use mask images for better scalability and styling. 9576ee

    • Product page. Related products block. 7ed6de

    • Product page. Implement review popup for full review text display and enhance accessibility. d38885

    • Product page. Add toggle for "Write Your Own Review" form and adjust styles for review list 9973d8

    • Product page. Revies list is done. Revie form next. 5bf007

    • Theme Editor: added Listing, Animations, and Advanced sections a4451d

    • Theme Editor: added Colors section 390891

    • Product page. Reviews in progress... e13b99

    • Theme Editor: added Layout, Typography, Overlay Header, Border Radius, Color and Font Palettes ff5e62

    • Productpage. Review in progress... 7059e9

    • Productpage. Review in progress. 669824

    • BCB featured product component. 0651cf

    • Add styles for featured product details, SKU, and price row in BCB d65f2d

    • BCB accordion styles at product info main. 1a262b

    • Installer. Add accordion for products. 466a5b

    • Add padding to swatch options in product add form for improved layout f10f77

    • Product main info ... in progress bf5c3f

    • Enhance product quantity input with increment/decrement buttons and update styles for better usability 72192e

    • Update product page medium image dimensions to 590x590 012c72

    • Fix minicart styles: set empty counter opacity to 0 79fcd1

    • Increased h2 bottom margin dff6ea

    • Product page action buttons. d008f0

    • Updated footer content links and section titles for improved clarity and user experience 241039

    • BCB homepage: fixed wrong image name b1a4f4

    • Rating stars styles in product listing f17a0f

    • BCB homepage: updated full width banner and sections spacings 2076c7

    • Fixed sort order of product details inside grid listing 9ad360

    • BCB homepage: updated Videos and full width banner sections 072733

    • Product page title font-size. d0987c

    • Footer. Minor fix for ring reval animation. Restore missing divider in footer. (#3) 54cdc4

    • Footer ring reveal animation added (#3) 4a8be8

    • BCB homepage: added animated badges to top banners grid 197e37

    • BCB homepage: added rotation animation for Full Width Banner 1420f9

    • BCB homepage: top banner updated a53bd5

    • Update favicon color 5ea666

    • Update favicon 18d8dc

    • Slightly update footer background. 5fcbfc

    • Footer content update. Add contact block (#3) dea42e

    • Fixed missing minicart overlay on first open (#2) 54feaa

    • BCB homepage: updated Browse categories block dbfa89

    • Breadcrumbs 196469

    • Done with search (#2) d8e0f3

    • Enhance minisearch functionality with slideout behavior and styling adjustments without Ajaxsearch (#2) 8c4a9d

    • Minisearch styles when ajaxsearch disabled... in progress (#2) 259fac

    • Remove unused styles from viewcart action and update empty subtitle styles in minicart (#2) dba7a5

    • Minicart complete (#2) 56efd2

    • Search on desktop (#2) 9c587e

    • BCB homepage: added videos section 7ee864

    • Minicart inprogress (only buttons to adjust)... (#2) c1be91

    • Minicart update in progress.... c3d18b

    • Minicart update in progress... (#2) 55e7b9

    • INstaller. Create dummy CMS block header_panel_info to allow user add custom content (#2) f70d58

    • Adjust minicart counter (#2) 03e843

    • BCB homepage: Added brand logos section b905f1

    • BCB homepage: Added testimonials section 2ab2cf

    • Update newsletter styles: adjust input border and add consent positioning (#2) 02d37d

    • Header. Update search behaviou and look of the result dropown. 993432

    • BCB homepage: Added FAQ a0bfde

    • Add focused search styles. d80f88

    • BCB homepage: added new sections 875068

    • BCB homepage: added ECI and full-width banner d40cfa

    • Top navigation added. 8fa9a3

    • Remove color from menu links dec081

    • Clone currency and store switchers in header slideout menu for improved functionality de36e3

    • Enhance header and newsletter styles for improved layout and responsiveness in header slideout menu. b63dd0

    • Installer. Update header slideout menu styles. 825795

    • Update footer top content HTML to enhance newsletter section styling.
      Don't set font familiy for header in Page Builder ba0b81

    • BCB homepage WIP b228af

    • Basic navpro slideout styles 75ac0e

    • Refactor header slideout menu and newsletter styles for improved layout and consistency 3b42ff

    • Header slideout menu... d4f174

    • Listing styles for the list mode and old price update. cbff61

    • Update README.md to clarify usage of `with-bottom-divider` CSS class and provide detailed instructions 1b9ea5

    • Pagination and make with-bottom-divider general. 37ea17

    • Added list banner 5 config; updated installer, moved it to json a43985

    • Add new layout configuration and remove easybanner references; update footer content and styles 87165b

    • Refactor easybanner configuration and installer for product listing banners 8b1d0d

    • Installer. Listing grid banner added. 914c01

swissup / module-suggestpage

7 hours ago success
  • 1.2.15
    • Version 1.2.15 e866a1

    • fix(suggestpage): keep the block's image styles off the listing thumbnails (#4) (#5)

      * fix: keep SuggestPage image styles off the listing thumbnails (#4)

      image_with_borders.phtml renders every product image with a
      `product-image-container-<productId>` class and emits a global `<style>`
      sizing that class. After add to cart the SuggestPage block is injected into
      the page the shopper is already on, and it shows the very product that page
      is likely to list. Equal specificity, later in the document: the block's
      rules won and the listing thumbnail took the SuggestPage image size - a
      300px tile collapsed to the 165px of the cart thumbnail.

      Swissup\Suggestpage\Block\Cart now renders through
      ProductImageStyles::isolate(), which renames the per-product class
      (`suggestpage-` prefix) in both the markup and the generated selectors. The
      block keeps sizing its own images - including the cross-sell ones - and
      stops sizing anybody else's, whichever order the two end up in. The
      `product-image-container` base class that themes style is untouched.

      Swissup_Ajaxpro got the same treatment for its product popup in #61, but
      only in CustomerData/Product.php; the SuggestPage markup travels in the
      `ajaxpro-cart` section instead, which is why that commit left this case
      open.

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

      * fix(suggestpage): leave markup another module has isolated alone (#4 review)

      The lookbehind only guarded this class's own prefix, so markup that
      Swissup_Ajaxpro had already isolated - its sections render this block - came
      back out prefixed a second time, as `ajaxpro-suggestpage-...`. It now skips any
      prefix in front of the class, which keeps the method idempotent and matches
      what ajaxpro 1.7.43 does on its side.

      Also: return the markup unchanged if preg_replace() ever fails, instead of
      rendering an empty block, and cover the block wiring itself - that _toHtml()
      hands the template output to the isolator - which only the model was covering.

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

      * docs(tests): say where the phpunit bootstrap path resolves from (#4 review)

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

      ---------

      Co-authored-by: Claude Opus 5 <noreply@anthropic.com> 2576aa

    • docs(tests): say where the phpunit bootstrap path resolves from (#4 review)

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> 64f3a9

    • fix(suggestpage): leave markup another module has isolated alone (#4 review)

      The lookbehind only guarded this class's own prefix, so markup that
      Swissup_Ajaxpro had already isolated - its sections render this block - came
      back out prefixed a second time, as `ajaxpro-suggestpage-...`. It now skips any
      prefix in front of the class, which keeps the method idempotent and matches
      what ajaxpro 1.7.43 does on its side.

      Also: return the markup unchanged if preg_replace() ever fails, instead of
      rendering an empty block, and cover the block wiring itself - that _toHtml()
      hands the template output to the isolator - which only the model was covering.

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> da8e4a

    • fix: keep SuggestPage image styles off the listing thumbnails (#4)

      image_with_borders.phtml renders every product image with a
      `product-image-container-<productId>` class and emits a global `<style>`
      sizing that class. After add to cart the SuggestPage block is injected into
      the page the shopper is already on, and it shows the very product that page
      is likely to list. Equal specificity, later in the document: the block's
      rules won and the listing thumbnail took the SuggestPage image size - a
      300px tile collapsed to the 165px of the cart thumbnail.

      Swissup\Suggestpage\Block\Cart now renders through
      ProductImageStyles::isolate(), which renames the per-product class
      (`suggestpage-` prefix) in both the markup and the generated selectors. The
      block keeps sizing its own images - including the cross-sell ones - and
      stops sizing anybody else's, whichever order the two end up in. The
      `product-image-container` base class that themes style is untouched.

      Swissup_Ajaxpro got the same treatment for its product popup in #61, but
      only in CustomerData/Product.php; the SuggestPage markup travels in the
      `ajaxpro-cart` section instead, which is why that commit left this case
      open.

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> 9e813f

breezefront / breeze-content-builder

8 hours ago success

breezefront / module-breeze-content-builder

8 hours ago success
  • 1.2.4
    • Version 1.2.4 ec5973

    • Added Quantity Switcher integration for Featured Product 4c4a86

    • Removed redundant ajaxPrefilter, closes #49 0dfa56

    • fix(content-builder): drop the page-wide form_key ajaxPrefilter (#49)

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> d9fc09

  • 1.2.3
    • chore(release): 1.2.3

      Ships the bcb:fieldRowReady extension point (a9234aa) and its corrected
      contract docs (#46), neither of which is in any released tag — 1.2.2
      predates both. breeze-ai 1.8.6 subscribes to that event for its
      per-field AI button, so on every released BCB the button is dead.

      Patch release: comments and an event emit, no API break, and breeze-ai
      declares no composer constraint on this package. 18c02c

    • Merge pull request #48 from breezefront/docs/46-field-row-caveats

      docs(property-panel): clarify bcb:fieldRowReady scope and caveats (#46) f12bb4

    • docs(property-panel): clarify bcb:fieldRowReady scope and caveats (#46)

      The header comment read as a blanket claim ("a field row" fires the
      event) when only rows built by _renderSingleProp actually emit it. The
      editable Label row and grouped props (e.g. spacing) are built inline in
      _renderForm and emit nothing, and a prop with type="hidden" or a
      contextOnly miss returns before a row exists at all.

      Also document that $row is not in the visible panel when the event fires
      (_renderForm appends the form last, and a section's rows sit in a still
      detached <details>), so subscribers must not read layout; that $row may
      already be hidden by an unmatched depends clause; and that renderer is
      the shared module for prop.type, to be read and never mutated.

      Comments only — no behaviour change.

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> c77b7c

    • docs(property-panel): clarify bcb:fieldRowReady scope and caveats (#46)

      Code review found the header comment read as a blanket claim ("a field
      row" fires the event) when only ordinary ungrouped props built by
      _renderSingleProp actually emit it — the label row and grouped props
      (e.g. spacing) don't. Also note $row isn't attached to the live panel
      yet at fire time (no layout reads), and that renderer is a shared
      singleton per prop.type that subscribers must not mutate.

      Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> a68c9f

    • Emit bcb:fieldRowReady extension point for field rows a9234a

    • feat(property-panel): emit bcb:fieldRowReady extension point for field rows (#46)

      After a field row is built, appended to the form, and bound on change,
      property-panel.js now fires 'bcb:fieldRowReady' on $(document) with
      { prop, component, $row, $field, renderer }. A third-party module can
      subscribe and append a control to $row without patching this file or
      reaching into the DOM, and without touching $field's value collection
      or change binding.

      Also documents the field-renderer contract (render/getValue) as public
      in the file header, since the extension point relies on it.

      No new AMD registry and no wrapper around $field — the two walls
      described in the issue stay as they are; this only adds the missing
      hook point. d841c3

    • feat(FeaturedProduct): introduce less variables 9d348a

    • refactor(FeaturedProductRenderer): replace image URL and alt text with pre-rendered HTML 623392

    • Fixed FAQ items readability on light theme, closes #44 091320

    • Fixed avoid using self-closing tag with non-void html element 9a3123

    • Added hide on pages checkbox list prop type ccf9e8

    • Updated dependent fields logic 278125

    • feat(accordion): enable product attribute as body source for FAQ items b26684

    • feat(accordion): add support for per-item icons in FAQ items b7607f

    • Correct page cleanup when BCB is closed a40061

    • Merge pull request #38 from breezefront/feat/108-newsletter-and-missing-components

      feat(components): inline newsletter layout (#108) 57dafb

    • fix(components): newsletter heading follows an inherited text colour (#108)

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> c56d7d

    • fix(a11y): real heading elements and decorative icons (#41)

      Newsletter rendered its section heading as <div class="...__heading h2">:
      invisible to assistive technology and absent from the document outline,
      even though it is the heading of a page band. It now emits a real h1-h6
      element chosen by a new heading_type prop (default h2), matching what
      text_block already does. Same fix for the featured_product name, which
      was also a styled div.

      Breeze styles the tag and the class off a single selector list -
      `h2, .h2 { ... }` in theme-frontend-breeze-blank/web/css/base/
      _typography.less - so under a Breeze theme, dropping the class for the
      tag is visually neutral. Under a non-Breeze theme .h2 is not styled at
      all, so those headings were rendering as plain body text and now pick up
      the theme's own h2 size: a fix rather than a regression, but not a no-op.
      Either way it changes the markup of existing pages, which is why this is
      split out of #38.

      text_block borrowed the heading text for its icon alt and wrapped inline
      SVG in a plain div, so a screen reader announced the heading twice, or
      three times when the SVG carried its own <title>. The icon is decorative
      in every design that uses it: alt="" on the image branch, aria-hidden on
      the SVG wrapper. A case that needs a real name should get an explicit
      icon_alt prop rather than reusing the heading.

      The admin H1 guard only fired on banner's headline_type, so raising a
      text_block - and now a newsletter - to H1 skipped the warning. It now
      watches heading_type too; _countH1 already counted both.

      Also corrects the selector these three comments cite: the rule is
      `h1, .h1` in the Breeze theme, not `:where(h1), .h1` in the module.

      product_grid was checked and already emits a real h2. Accordion item
      titles remain divs wrapping an <a> trigger; the heading+button pattern
      there is a larger change and stays open.

      Refs #41 53edaa

    • fix(components): collage layout for flat-colour CTA, decorative icon a11y (#108)

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> 6e2743

    • feat(components): inline newsletter layout (#108)

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> 85ed20

    • Changes for header/footer page: publish spinner, layout picker with images 25b2ae

swissup / module-css-shake

8 hours ago success
  • head
  • 1.1.0
    • Version 1.1.0 e1ce91

    • Disable pagespeed critical css to get rid of "preloaded" css
      https://github.com/swissup/module-pagespeed/issues/133 bf579c

    • Don't process rel="preload" or anything else like that d1effd

    • Delivery modes: inline or file. (File shows better results locally) e755d9

    • Move CSS cleanup to shaker 8dbdd8

swissup / module-ajaxpro

8 hours ago success
  • 1.7.43
    • Version 1.7.43 4bb05d

    • docs: say where the fixers of the section markup live (#66) (#70)

      Co-authored-by: Claude Opus 5 <noreply@anthropic.com> a79b65

    • docs: say where the fixers of the section markup live (#66)

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> a891e2

    • docs: say where the fixers of the section markup live (#66)

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> 38ebf8

    • fix(cart): keep popup image styles off the listing thumbnails (#66) (#67)

      * fix: keep cart popup image styles off the listing thumbnails (#66)

      image_with_borders.phtml renders every product image with a
      `product-image-container-<productId>` class and emits a global `<style>`
      sizing that class. The ajaxpro-cart section shows the product that has just
      been added - the very one the listing behind the popup shows - and its markup
      lands in the document after that listing, so its rules won and the listing
      tile took the cart thumbnail size: a 240x300 tile collapsed to 165x165.

      #61 fixed this for the ajaxpro-product section only. The cart markup now goes
      through the same ProductImageStyles::isolate(), both for `checkout.cart` (every
      handle, with or without a quote) and for `checkout.cart.fixes`. The `reinit`
      markup has no product images and is left alone.

      isolate() now skips any class that already carries a prefix, not only its own:
      Swissup_Suggestpage isolates the markup of its block with a `suggestpage-`
      prefix, and that block is what `checkout.cart` renders under the
      `ajaxpro_popup_suggestpage_view` handle. Its classes and selectors keep naming
      each other instead of being prefixed twice.

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

      * refactor: run section markup through a fixer pipeline (#66)

      Calling the isolator by hand at every place that renders markup is a patch in
      three files that the next section will forget again. The rule is not "the cart
      needs isolating" - it is "nothing this module injects into an already rendered
      page may restyle that page", and it belongs where that markup leaves the
      module.

      AbstractSectionData::getBlockHtml() is that one door: every section (Init,
      Cart, Product) renders through it, and there is no other out-of-band render
      point in the module. It now runs the markup through a FixerInterface, injected
      through the constructor.

      The fixers themselves are declared in di.xml and composed by FixerPool, which
      is a FixerInterface too - so the sections depend on the pipeline, not on what
      is in it, and adding, reordering or removing a pass is a di.xml change. The
      isolator becomes Html\Fixer\ProductImageStyles, the first entry in the
      pipeline; Model\View\ProductImageStyles stays as a deprecated alias.

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>

      ---------

      Co-authored-by: Claude Opus 5 <noreply@anthropic.com> 2fe057

    • fix(popup): drop the gallery skip links from the Quick View markup (#68) (#69)

      The popup renders a second copy of the product view into a page that already
      has one, so every DOM id in it is duplicated. Measured on 2.4.8 sample data,
      8 ids really collide in the live DOM (the 11 map-popup-* ones sit inside
      Magento_Msrp's text/x-magento-template bodies and are never parsed).

      Almost all of that is harmless: the popup markup is appended last, so
      getElementById and jQuery's $('#id') fast path always return the page's copy,
      and the widgets that matter - catalogAddToCart, mage.productValidate - bind to
      this.element and serialise that form instead of looking the id up globally.
      Add-to-cart, qty, swatches and price stay correct on both sides, verified for a
      simple product over a simple page and a configurable over a configurable one.

      The exception is gallery-next-area / gallery-prev-area. They are not widget
      hooks but skip-link targets, and the popup carries both the <a href="#..."> and
      its own <a id="..."> target. A fragment resolves to the first match - the
      page's - so activating "Skip to the end of the images gallery" inside the modal
      moves focus out of the dialog into the page behind it.

      Remove them in the popup handle rather than renaming ids in the payload. A
      rename would have to rewrite the x-magento-init selector keys in the same
      payload in lockstep, and missing them would cost the popup form its
      validate-product widget - worse than the bug it fixes. Skip links are a
      page-scoped affordance anyway: the modal does its own focus management and has
      no gallery to skip past.

      Co-authored-by: Claude Opus 5 <noreply@anthropic.com> 380135

    • fix(popup): drop the gallery skip links from the Quick View markup (#68)

      The popup renders a second copy of the product view into a page that already
      has one, so every DOM id in it is duplicated. Measured on 2.4.8 sample data,
      8 ids really collide in the live DOM (the 11 map-popup-* ones sit inside
      Magento_Msrp's text/x-magento-template bodies and are never parsed).

      Almost all of that is harmless: the popup markup is appended last, so
      getElementById and jQuery's $('#id') fast path always return the page's copy,
      and the widgets that matter - catalogAddToCart, mage.productValidate - bind to
      this.element and serialise that form instead of looking the id up globally.
      Add-to-cart, qty, swatches and price stay correct on both sides, verified for a
      simple product over a simple page and a configurable over a configurable one.

      The exception is gallery-next-area / gallery-prev-area. They are not widget
      hooks but skip-link targets, and the popup carries both the <a href="#..."> and
      its own <a id="..."> target. A fragment resolves to the first match - the
      page's - so activating "Skip to the end of the images gallery" inside the modal
      moves focus out of the dialog into the page behind it.

      Remove them in the popup handle rather than renaming ids in the payload. A
      rename would have to rewrite the x-magento-init selector keys in the same
      payload in lockstep, and missing them would cost the popup form its
      validate-product widget - worse than the bug it fixes. Skip links are a
      page-scoped affordance anyway: the modal does its own focus management and has
      no gallery to skip past.

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> 475db9

    • refactor: run section markup through a fixer pipeline (#66)

      Calling the isolator by hand at every place that renders markup is a patch in
      three files that the next section will forget again. The rule is not "the cart
      needs isolating" - it is "nothing this module injects into an already rendered
      page may restyle that page", and it belongs where that markup leaves the
      module.

      AbstractSectionData::getBlockHtml() is that one door: every section (Init,
      Cart, Product) renders through it, and there is no other out-of-band render
      point in the module. It now runs the markup through a FixerInterface, injected
      through the constructor.

      The fixers themselves are declared in di.xml and composed by FixerPool, which
      is a FixerInterface too - so the sections depend on the pipeline, not on what
      is in it, and adding, reordering or removing a pass is a di.xml change. The
      isolator becomes Html\Fixer\ProductImageStyles, the first entry in the
      pipeline; Model\View\ProductImageStyles stays as a deprecated alias.

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> 10292c

    • fix: keep cart popup image styles off the listing thumbnails (#66)

      image_with_borders.phtml renders every product image with a
      `product-image-container-<productId>` class and emits a global `<style>`
      sizing that class. The ajaxpro-cart section shows the product that has just
      been added - the very one the listing behind the popup shows - and its markup
      lands in the document after that listing, so its rules won and the listing
      tile took the cart thumbnail size: a 240x300 tile collapsed to 165x165.

      #61 fixed this for the ajaxpro-product section only. The cart markup now goes
      through the same ProductImageStyles::isolate(), both for `checkout.cart` (every
      handle, with or without a quote) and for `checkout.cart.fixes`. The `reinit`
      markup has no product images and is left alone.

      isolate() now skips any class that already carries a prefix, not only its own:
      Swissup_Suggestpage isolates the markup of its block with a `suggestpage-`
      prefix, and that block is what `checkout.cart` renders under the
      `ajaxpro_popup_suggestpage_view` handle. Its classes and selectors keep naming
      each other instead of being prefixed twice.

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> c6fd19

  • 1.7.42
    • Version 1.7.42

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> efc0bd

    • Merge pull request #65 from swissup/fix/stale-quick-view-section-64

      fix: drop stale popup sections on page load (#64) 0ed54a

    • fix: ignore the data_id marker when spotting a stale payload (#64 review)

      Every section the server answers is stamped with data_id, blocks or not, so
      `_.isEmpty()` saw a marker-only ajaxpro-product as a payload and cleared it on
      every page load.

      On Breeze that clear also removed the storage entry behind customerData's
      back, leaving the section_data_ids cookie pointing at a data_id that was no
      longer stored — getExpiredSectionNames() then reported the section expired and
      reloaded it on every page. Breeze writes storage in reload() alone and its
      set() only touches the observable, so clearing the observable is enough.

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> f1e86e

    • fix: drop only the product payload, once per page (#64 review)

      Clearing every popup section also emptied ajaxpro-cart, which
      view/minicart/override.js reuses: it opens the cart popup straight from the
      markup rendered on page load and only reloads the section when that block is
      empty. With the section cleared, every page load triggered an extra
      section/load and a minicart click in the first second opened nothing.

      Breeze needs the storage entry removed as well — its customerData.set() only
      writes the observable, storage is written by reload() alone, so init()
      re-hydrated the stale payload on the next page.

      Drop the payload once per page: create()/initialize() run again on a
      re-created component, when the storage may hold a payload that has just
      arrived.

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> 92f5ae

    • fix: drop stale popup sections on page load (#64)

      Since disposableCustomerData was dropped in 1.7.36, ajaxpro-product keeps the
      product view rendered for a Quick View in mage-cache-storage, and both
      component flavors hydrated it back on every page load. That injected a whole
      foreign product view into every page — duplicate #product_addtocart_form,
      duplicate .column.main, an add-to-cart url pointing at the wrong product —
      kept out of sight only by the modal styles.

      A popup payload is only meaningful right after the action that produced it, so
      anything still stored at page load is stale: clear it instead of binding it.
      Live updates keep working through the subscription.

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> 34e999

swissup / module-quantity-switcher

12 hours ago success
  • 1.2.5
    • Version 1.2.5 b9ac17

    • Allow to work on other pages than product (BCB Featured Product integration) 37f292

  • 1.2.4
    • Version 1.2.4 e4c020

    • Merge pull request #5 from swissup/fix/arrow-room-lost-after-mount

      fix(arrows): keep the arrow room after the switcher mounts 1a9480

    • fix(arrows): keep the arrow room after the switcher mounts

      `.control:has(> .input-text.qty)` only matches the server-rendered markup.
      `product.js` wraps the input into `.qty-wrapper` on init, after which the input
      is no longer a direct child of `.control`, the rule stops matching and the 20px
      reserved on each side for the arrows disappears — the arrows overflow the field
      and the layout shifts once JS runs.

      Match the input as a descendant instead, which holds both before and after the
      wrap. Verified in the browser: `.control` padding went `0px 20px` -> `0px` the
      moment the wrapper was inserted, and stays `0px 20px` with this selector.

      Co-Authored-By: Claude Opus 5 <noreply@anthropic.com> 082597

breezefront / theme-frontend-breeze-enterprise-apollo

12 hours ago success

breezefront / breeze-enterprise

13 hours ago success

breezefront / module-breeze-layout-builder

15 hours ago error
  • head
    • Fixed header/footer issues with containers toggle, undo/redo, versions and publishing d3cd7e

    • Fixed missing background on Classic header layout on Eir theme aad26a

    • Fixed preview issue after previous commit ea8cea

    • Updating page selector links when store view switched 0d3d12

    • Added page visibility control and installer support for header/footer content 796f48

    • Fixed not working theme editor colors for overlay header 2660ce

    • Do not show overlay header toggles for native layout b000f5

    • WIP. Header layouts: added overlay mode support 8122c9

    • Correct page cleanup when BLB is closed 45b825

    • Improved header/footer preview 07c294

    • Header/Footer management with Header Layouts 7a0a82

  • 1.2.0
    • Version 1.2.0 24fff8

    • Added Contact Us page support d64e46

    • Config option for upcoming TaxVAT switcher in theme header 7f31bd