@xiwebdesign/xicms-core 5.5.3 → 5.6.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/admin/shop/ConnectionsTab.js +1 -1
- package/dist/admin/shop/ConnectionsTab.js.map +1 -1
- package/dist/admin/shop/DiscountsTab.d.ts +4 -0
- package/dist/admin/shop/DiscountsTab.js +168 -0
- package/dist/admin/shop/DiscountsTab.js.map +1 -0
- package/dist/admin/shop/EmailsTab.d.ts +8 -0
- package/dist/admin/shop/EmailsTab.js +88 -0
- package/dist/admin/shop/EmailsTab.js.map +1 -0
- package/dist/admin/shop/OrdersTab.js +271 -139
- package/dist/admin/shop/OrdersTab.js.map +1 -1
- package/dist/admin/shop/ProductsTab.js +152 -28
- package/dist/admin/shop/ProductsTab.js.map +1 -1
- package/dist/admin/shop/ShopPanel.d.ts +4 -1
- package/dist/admin/shop/ShopPanel.js +9 -0
- package/dist/admin/shop/ShopPanel.js.map +1 -1
- package/dist/admin/shop/ShopSettingsTab.d.ts +3 -0
- package/dist/admin/shop/ShopSettingsTab.js +86 -0
- package/dist/admin/shop/ShopSettingsTab.js.map +1 -0
- package/dist/admin.css +1 -1
- package/dist/blocks/context.d.ts +6 -0
- package/dist/blocks/context.js +15 -1
- package/dist/blocks/context.js.map +1 -1
- package/dist/modules/shop/blocks/Cart.js +22 -14
- package/dist/modules/shop/blocks/Cart.js.map +1 -1
- package/dist/modules/shop/blocks/Checkout.js +75 -23
- package/dist/modules/shop/blocks/Checkout.js.map +1 -1
- package/dist/modules/shop/blocks/Donation.js +8 -7
- package/dist/modules/shop/blocks/Donation.js.map +1 -1
- package/dist/modules/shop/blocks/ProductDetail.js +296 -109
- package/dist/modules/shop/blocks/ProductDetail.js.map +1 -1
- package/dist/modules/shop/blocks/ProductGrid.d.ts +9 -0
- package/dist/modules/shop/blocks/ProductGrid.js +144 -65
- package/dist/modules/shop/blocks/ProductGrid.js.map +1 -1
- package/dist/modules/shop/blocks/ShopCategories.js +7 -2
- package/dist/modules/shop/blocks/ShopCategories.js.map +1 -1
- package/dist/modules/shop/cartStore.d.ts +13 -2
- package/dist/modules/shop/cartStore.js +10 -5
- package/dist/modules/shop/cartStore.js.map +1 -1
- package/dist/modules/shop/lib.d.ts +18 -5
- package/dist/modules/shop/lib.js +23 -0
- package/dist/modules/shop/lib.js.map +1 -1
- package/dist/modules/shop/module.js +6 -1
- package/dist/modules/shop/module.js.map +1 -1
- package/dist/modules/shop/settings.d.ts +18 -0
- package/dist/modules/shop/settings.js +8 -1
- package/dist/modules/shop/settings.js.map +1 -1
- package/dist/modules/shop/strings.d.ts +65 -0
- package/dist/modules/shop/strings.js +136 -0
- package/dist/modules/shop/strings.js.map +1 -0
- package/dist/modules/shop/types.d.ts +18 -0
- package/dist/modules/shop/types.js +1 -0
- package/dist/modules/shop/types.js.map +1 -0
- package/dist/render/PublishedPage.d.ts +6 -1
- package/dist/render/PublishedPage.js +4 -3
- package/dist/render/PublishedPage.js.map +1 -1
- package/dist/schema/shop.d.ts +413 -2
- package/dist/schema/shop.js +95 -6
- package/dist/schema/shop.js.map +1 -1
- package/dist/server/index.d.ts +1 -0
- package/dist/server/index.js +14 -0
- package/dist/server/index.js.map +1 -1
- package/dist/server/shop.d.ts +46 -0
- package/dist/server/shop.js +181 -0
- package/dist/server/shop.js.map +1 -0
- package/dist/styles.css +147 -0
- package/package.json +1 -1
package/dist/styles.css
CHANGED
|
@@ -2699,3 +2699,150 @@
|
|
|
2699
2699
|
background: color-mix(in srgb, var(--xicms-primary, #4f46e5) 12%, transparent);
|
|
2700
2700
|
color: var(--xicms-primary, #4f46e5);
|
|
2701
2701
|
}
|
|
2702
|
+
|
|
2703
|
+
/* ── Shop (5.6) ─────────────────────────────────────────────────────────── */
|
|
2704
|
+
|
|
2705
|
+
/* Uitgelijnde productkaart: flex-kolom over de volle hoogte. De grid-cellen zijn even
|
|
2706
|
+
hoog (align-items: stretch is de default), de kaart vult de cel, en de knop-rij wordt
|
|
2707
|
+
met margin-top:auto naar onderen gedrukt. Zo staan prijs, kleurstipjes en knop over
|
|
2708
|
+
álle kaarten op dezelfde lijn — ook als een productnaam één of twee regels beslaat. */
|
|
2709
|
+
.xicms-shop-card {
|
|
2710
|
+
display: flex;
|
|
2711
|
+
flex-direction: column;
|
|
2712
|
+
height: 100%;
|
|
2713
|
+
overflow: hidden;
|
|
2714
|
+
}
|
|
2715
|
+
.xicms-shop-card__link {
|
|
2716
|
+
display: flex;
|
|
2717
|
+
flex-direction: column;
|
|
2718
|
+
flex: 1 1 auto;
|
|
2719
|
+
text-decoration: none;
|
|
2720
|
+
color: inherit;
|
|
2721
|
+
}
|
|
2722
|
+
.xicms-shop-card__media {
|
|
2723
|
+
position: relative;
|
|
2724
|
+
}
|
|
2725
|
+
.xicms-shop-card__img,
|
|
2726
|
+
.xicms-shop-card__placeholder {
|
|
2727
|
+
display: block;
|
|
2728
|
+
width: 100%;
|
|
2729
|
+
aspect-ratio: 1 / 1;
|
|
2730
|
+
object-fit: cover;
|
|
2731
|
+
border-radius: inherit;
|
|
2732
|
+
background: var(--xicms-muted, #f1f1f1);
|
|
2733
|
+
}
|
|
2734
|
+
.xicms-shop-card__body {
|
|
2735
|
+
display: flex;
|
|
2736
|
+
flex-direction: column;
|
|
2737
|
+
gap: 0.25rem;
|
|
2738
|
+
padding: 0.8rem 1rem 0.25rem;
|
|
2739
|
+
flex: 1 1 auto;
|
|
2740
|
+
}
|
|
2741
|
+
/* Productnaam: reserveer altijd twee regels zodat één- en twee-regelige namen op dezelfde
|
|
2742
|
+
basislijn staan; langer dan twee regels wordt met een ellipsis afgekapt. */
|
|
2743
|
+
.xicms-shop-card__name {
|
|
2744
|
+
font-weight: 700;
|
|
2745
|
+
line-height: 1.25;
|
|
2746
|
+
min-height: 2.5em;
|
|
2747
|
+
display: -webkit-box;
|
|
2748
|
+
-webkit-line-clamp: 2;
|
|
2749
|
+
line-clamp: 2;
|
|
2750
|
+
-webkit-box-orient: vertical;
|
|
2751
|
+
overflow: hidden;
|
|
2752
|
+
}
|
|
2753
|
+
.xicms-shop-card__priceline {
|
|
2754
|
+
font-size: 0.92em;
|
|
2755
|
+
}
|
|
2756
|
+
/* Swatch-rij duwt (leeg of gevuld) de rest omlaag en houdt een vaste hoogte. */
|
|
2757
|
+
.xicms-shop-card__swatchrow {
|
|
2758
|
+
display: inline-flex;
|
|
2759
|
+
gap: 5px;
|
|
2760
|
+
min-height: 14px;
|
|
2761
|
+
margin-top: auto;
|
|
2762
|
+
padding-top: 0.3rem;
|
|
2763
|
+
}
|
|
2764
|
+
.xicms-shop-card__actions {
|
|
2765
|
+
padding: 0.5rem 1rem 1rem;
|
|
2766
|
+
}
|
|
2767
|
+
/* Kaartknoppen: passen binnen de kaart, ook bij smalle kolommen. */
|
|
2768
|
+
.xicms-shop-card__actions .xicms-btn,
|
|
2769
|
+
.xicms-shop-card__added {
|
|
2770
|
+
display: block;
|
|
2771
|
+
width: 100%;
|
|
2772
|
+
padding: 0.45rem 0.6rem;
|
|
2773
|
+
font-size: 0.85rem;
|
|
2774
|
+
text-align: center;
|
|
2775
|
+
}
|
|
2776
|
+
.xicms-shop-card__added {
|
|
2777
|
+
color: var(--xicms-primary, #4f46e5);
|
|
2778
|
+
text-decoration: none;
|
|
2779
|
+
}
|
|
2780
|
+
|
|
2781
|
+
/* Mobiel: nooit meer dan 2 kolommen (inline grid-template wint anders van media queries). */
|
|
2782
|
+
@media (max-width: 520px) {
|
|
2783
|
+
.xicms-shop-grid__items {
|
|
2784
|
+
grid-template-columns: repeat(2, minmax(0, 1fr)) !important;
|
|
2785
|
+
gap: 0.8rem !important;
|
|
2786
|
+
}
|
|
2787
|
+
.xicms-shop-card__actions .xicms-btn {
|
|
2788
|
+
font-size: 0.8rem;
|
|
2789
|
+
padding: 0.4rem 0.5rem;
|
|
2790
|
+
}
|
|
2791
|
+
.xicms-shop-card__name {
|
|
2792
|
+
font-size: 0.92rem;
|
|
2793
|
+
}
|
|
2794
|
+
}
|
|
2795
|
+
|
|
2796
|
+
/* Uitverkocht-badge op de kaartfoto. */
|
|
2797
|
+
.xicms-shop-card__soldout {
|
|
2798
|
+
position: absolute;
|
|
2799
|
+
top: 10px;
|
|
2800
|
+
left: 10px;
|
|
2801
|
+
padding: 0.2rem 0.6rem;
|
|
2802
|
+
border-radius: 999px;
|
|
2803
|
+
background: rgba(30, 30, 30, 0.72);
|
|
2804
|
+
color: #fff;
|
|
2805
|
+
font-size: 0.72rem;
|
|
2806
|
+
font-weight: 700;
|
|
2807
|
+
letter-spacing: 0.02em;
|
|
2808
|
+
}
|
|
2809
|
+
|
|
2810
|
+
/* Filterchips + sorteerkeuze boven het grid. */
|
|
2811
|
+
.xicms-shop-filters {
|
|
2812
|
+
display: grid;
|
|
2813
|
+
gap: 0.5rem;
|
|
2814
|
+
margin-top: 1rem;
|
|
2815
|
+
}
|
|
2816
|
+
.xicms-shop-filters__row {
|
|
2817
|
+
display: flex;
|
|
2818
|
+
flex-wrap: wrap;
|
|
2819
|
+
gap: 0.4rem;
|
|
2820
|
+
}
|
|
2821
|
+
.xicms-shop-filterchip {
|
|
2822
|
+
display: inline-flex;
|
|
2823
|
+
align-items: center;
|
|
2824
|
+
padding: 0.28rem 0.75rem;
|
|
2825
|
+
border-radius: 999px;
|
|
2826
|
+
border: 1px solid var(--xicms-border-strong, rgba(0, 0, 0, 0.18));
|
|
2827
|
+
background: transparent;
|
|
2828
|
+
color: inherit;
|
|
2829
|
+
font: inherit;
|
|
2830
|
+
font-size: 0.85rem;
|
|
2831
|
+
cursor: pointer;
|
|
2832
|
+
}
|
|
2833
|
+
.xicms-shop-filterchip--active {
|
|
2834
|
+
background: var(--xicms-primary, #4f46e5);
|
|
2835
|
+
border-color: var(--xicms-primary, #4f46e5);
|
|
2836
|
+
color: var(--xicms-on-primary, #fff);
|
|
2837
|
+
}
|
|
2838
|
+
.xicms-shop-filters__sort {
|
|
2839
|
+
display: inline-flex;
|
|
2840
|
+
align-items: center;
|
|
2841
|
+
gap: 0.5rem;
|
|
2842
|
+
font-size: 0.85rem;
|
|
2843
|
+
justify-self: start;
|
|
2844
|
+
}
|
|
2845
|
+
.xicms-shop-filters__sort select {
|
|
2846
|
+
padding: 0.3rem 0.5rem;
|
|
2847
|
+
border-radius: var(--xicms-radius-sm, 8px);
|
|
2848
|
+
}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@xiwebdesign/xicms-core",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.6.1",
|
|
4
4
|
"description": "XiCMS engine: gestructureerde content, pagina's, draft/publish, admin (TipTap+Radix), SEO en beveiliging voor klantsites.",
|
|
5
5
|
"license": "UNLICENSED",
|
|
6
6
|
"repository": {
|