@caseparts-org/caseblocks 0.0.121 → 0.0.122

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.
@@ -1 +1 @@
1
- ._productCard_15dy7_1{box-sizing:border-box;border:1px solid var(--border-border-primary, #DFDFDF);background:var(--surface-surface-primary, #FFF);box-shadow:2px 4px 12px #00000026;display:flex;width:232px;height:296px;padding:var(--spacing-spacing-default, 16px) var(--spacing-spacing-sm, 20px);flex-direction:column;align-items:flex-start;gap:var(--spacing-spacing-2xs)}._productCard_15dy7_1>img{width:96px;height:96px;object-fit:contain;flex-shrink:0;margin:0 auto}._productCard_15dy7_1 ._productInformation_15dy7_22{display:flex;flex-direction:column;align-items:flex-start;gap:2px;margin-top:auto}._productCard_15dy7_1 ._purchaseInformation_15dy7_29{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;width:100%}._productCard_15dy7_1 ._addToCart_15dy7_37,._productCard_15dy7_1 ._addToCartButton_15dy7_40{width:100%}._productInformation_15dy7_22>a{font-weight:var(--font-weight-semibold)}._partNumber_15dy7_48{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-spacing-3xs)}._partNumberLabel_15dy7_55{color:var(--text-text-quaternary)}._productTile_15dy7_59{box-sizing:border-box;width:100%;max-width:1072px;display:flex;flex-direction:row;align-items:flex-start;border:1px solid var(--border-border-primary, #DFDFDF);background:var(--surface-surface-primary, #FFF);box-shadow:2px 4px 12px #00000026;padding:var(--spacing-spacing-default, 16px) var(--spacing-spacing-sm, 20px);gap:var(--spacing-spacing-1xs)}._productTile_15dy7_59>img{width:108px;height:108px;object-fit:contain}._productTile_15dy7_59 ._topRow_15dy7_80{display:grid;grid-template-columns:1fr auto;width:100%}._productTile_15dy7_59 ._topRow_15dy7_80 button{background-color:transparent;padding:0;margin:0;outline:none;border:none;height:min-content;width:min-content}._productTile_15dy7_59 ._topRow_15dy7_80 path{fill:var(--icons-icon-search)}._productTile_15dy7_59 ._topRow_15dy7_80 svg{padding:0}._productTile_15dy7_59 ._productInformation_15dy7_22{display:flex;flex-direction:column;align-items:flex-start;gap:2px}._productTile_15dy7_59 ._productData_15dy7_111{display:flex;flex-direction:column;align-items:flex-start;width:100%;gap:var(--spacing-spacing-2xs)}._productTile_15dy7_59 ._purchase_15dy7_29{display:flex;flex-direction:row;align-items:flex-end;justify-content:space-between;width:100%}@media (max-width: 480px){._productTile_15dy7_59 ._purchase_15dy7_29{flex-direction:column;align-items:flex-start;gap:var(--spacing-spacing-3xs)}}._productTile_15dy7_59 ._purchaseInformation_15dy7_29{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-spacing-2xs)}@media (max-width: 480px){._productTile_15dy7_59 ._purchaseInformation_15dy7_29{flex-direction:row;align-items:flex-start;justify-content:space-between;width:100%;gap:0px}}._productTile_15dy7_59 ._attributeContainer_15dy7_148{margin:0;padding:0;padding-top:var(--spacing-spacing-1xs);border-top:1px solid var(--border-border-primary);width:100%;list-style:none;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:wrap;column-gap:var(--spacing-spacing-lg);row-gap:var(--spacing-spacing-3xs)}@media (max-width: 640px){._productTile_15dy7_59 ._attributeContainer_15dy7_148{display:none}}._productTile_15dy7_59 ._attributeContainer_15dy7_148 li{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-spacing-3xs)}._productTile_15dy7_59 ._addToCart_15dy7_37{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-spacing-md)}@media (max-width: 480px){._productTile_15dy7_59 ._addToCart_15dy7_37{gap:var(--spacing-spacing-2xs);width:100%}}._productTile_15dy7_59 ._addToCartButton_15dy7_40{width:96px;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}@media (max-width: 640px){._productTile_15dy7_59 ._addToCartButton_15dy7_40{width:100%}}
1
+ ._productCard_179ie_1{box-sizing:border-box;background:var(--surface-surface-primary, #FFF);display:flex;width:232px;height:296px;padding:var(--spacing-spacing-default, 16px) var(--spacing-spacing-sm, 20px);flex-direction:column;align-items:flex-start;gap:var(--spacing-spacing-2xs)}._productCard_179ie_1>img{width:96px;height:96px;object-fit:contain;flex-shrink:0;margin:0 auto}._productCard_179ie_1 ._productInformation_179ie_20{display:flex;flex-direction:column;align-items:flex-start;gap:2px;margin-top:auto}._productCard_179ie_1 ._purchaseInformation_179ie_27{display:flex;flex-direction:row;align-items:flex-start;justify-content:space-between;width:100%}._productCard_179ie_1 ._addToCart_179ie_35,._productCard_179ie_1 ._addToCartButton_179ie_38{width:100%}._productInformation_179ie_20>a{font-weight:var(--font-weight-semibold)}._partNumber_179ie_46{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-spacing-3xs)}._partNumberLabel_179ie_53{color:var(--text-text-quaternary)}._productTile_179ie_57{box-sizing:border-box;width:100%;max-width:1072px;display:flex;flex-direction:row;align-items:flex-start;background:var(--surface-surface-primary, #FFF);padding:var(--spacing-spacing-default, 16px) var(--spacing-spacing-sm, 20px);gap:var(--spacing-spacing-1xs)}._productTile_179ie_57>img{width:108px;height:108px;object-fit:contain}._productTile_179ie_57 ._topRow_179ie_76{display:grid;grid-template-columns:1fr auto;width:100%}._productTile_179ie_57 ._topRow_179ie_76 button{background-color:transparent;padding:0;margin:0;outline:none;border:none;height:min-content;width:min-content}._productTile_179ie_57 ._topRow_179ie_76 path{fill:var(--icons-icon-search)}._productTile_179ie_57 ._topRow_179ie_76 svg{padding:0}._productTile_179ie_57 ._productInformation_179ie_20{display:flex;flex-direction:column;align-items:flex-start;gap:2px}._productTile_179ie_57 ._productData_179ie_107{display:flex;flex-direction:column;align-items:flex-start;width:100%;gap:var(--spacing-spacing-2xs)}._productTile_179ie_57 ._purchase_179ie_27{display:flex;flex-direction:row;align-items:flex-end;justify-content:space-between;width:100%}@media (max-width: 480px){._productTile_179ie_57 ._purchase_179ie_27{flex-direction:column;align-items:flex-start;gap:var(--spacing-spacing-3xs)}}._productTile_179ie_57 ._purchaseInformation_179ie_27{display:flex;flex-direction:column;align-items:flex-start;gap:var(--spacing-spacing-2xs)}@media (max-width: 480px){._productTile_179ie_57 ._purchaseInformation_179ie_27{flex-direction:row;align-items:flex-start;justify-content:space-between;width:100%;gap:0px}}._productTile_179ie_57 ._attributeContainer_179ie_144{margin:0;padding:0;padding-top:var(--spacing-spacing-1xs);border-top:1px solid var(--border-border-primary);width:100%;list-style:none;display:flex;flex-direction:row;align-items:center;justify-content:flex-start;flex-wrap:wrap;column-gap:var(--spacing-spacing-lg);row-gap:var(--spacing-spacing-3xs)}@media (max-width: 640px){._productTile_179ie_57 ._attributeContainer_179ie_144{display:none}}._productTile_179ie_57 ._attributeContainer_179ie_144 li{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-spacing-3xs)}._productTile_179ie_57 ._addToCart_179ie_35{display:flex;flex-direction:row;align-items:center;gap:var(--spacing-spacing-md)}@media (max-width: 480px){._productTile_179ie_57 ._addToCart_179ie_35{gap:var(--spacing-spacing-2xs);width:100%}}._productTile_179ie_57 ._addToCartButton_179ie_38{width:96px;font-size:var(--font-size-md);font-weight:var(--font-weight-semibold)}@media (max-width: 640px){._productTile_179ie_57 ._addToCartButton_179ie_38{width:100%}}._elevated_179ie_192{border:1px solid var(--border-border-primary, #DFDFDF);box-shadow:2px 4px 12px #00000026}._noImage_179ie_198 ._productInformation_179ie_20{margin-top:0}
@@ -9,7 +9,7 @@ export interface ProductProps extends AvailabilityProps {
9
9
  partNumber: string;
10
10
  priceLabel: string;
11
11
  price: string;
12
- imgSrc: string;
12
+ imgSrc?: string;
13
13
  attributes?: {
14
14
  label: string;
15
15
  value: string;
@@ -17,5 +17,6 @@ export interface ProductProps extends AvailabilityProps {
17
17
  className?: string;
18
18
  onAddToCart: (_itemKey: number, _quantity: number) => void;
19
19
  onClose?: (_itemKey: number) => void;
20
+ flat?: boolean;
20
21
  }
21
- export declare function Product({ productView, itemKey, partNumber, productDescription, availDescription, availId, contactHref, contactLinkBehavior, productHref, priceLabel, price, imgSrc, attributes, className, onAddToCart, onClose, ...otherProps }: ProductProps): import("react/jsx-runtime").JSX.Element;
22
+ export declare function Product({ productView, itemKey, partNumber, productDescription, availDescription, availId, contactHref, contactLinkBehavior, productHref, priceLabel, price, imgSrc, attributes, className, onAddToCart, onClose, flat, ...otherProps }: ProductProps): import("react/jsx-runtime").JSX.Element;
@@ -1,131 +1,134 @@
1
1
  import { jsxs as a, jsx as t } from "react/jsx-runtime";
2
- import { Image as T } from "../../atoms/Image/Image.js";
3
- import { Link as g } from "../../atoms/Link/Link.js";
2
+ import { Image as v } from "../../atoms/Image/Image.js";
3
+ import { Link as I } from "../../atoms/Link/Link.js";
4
4
  import { Text as o } from "../../atoms/Text/Text.js";
5
- import { Availability as y } from "../../molecules/Availability/Availability.js";
6
- import { Pricing as w } from "../../molecules/Pricing/Pricing.js";
7
- import { AddToCart as v } from "../../molecules/AddToCart/AddToCart.js";
8
- import { Icon as B } from "../../atoms/Icon/Icon.js";
9
- import { c as x } from "../../clsx-OuTLNxxd.js";
10
- import '../../assets/Product.css';const L = "_productCard_15dy7_1", P = "_productInformation_15dy7_22", R = "_purchaseInformation_15dy7_29", $ = "_addToCart_15dy7_37", A = "_addToCartButton_15dy7_40", D = "_partNumber_15dy7_48", j = "_partNumberLabel_15dy7_55", k = "_productTile_15dy7_59", q = "_topRow_15dy7_80", E = "_productData_15dy7_111", F = "_purchase_15dy7_29", G = "_attributeContainer_15dy7_148", r = {
11
- productCard: L,
12
- productInformation: P,
13
- purchaseInformation: R,
14
- addToCart: $,
15
- addToCartButton: A,
16
- partNumber: D,
17
- partNumberLabel: j,
18
- productTile: k,
19
- topRow: q,
20
- productData: E,
21
- purchase: F,
22
- attributeContainer: G
5
+ import { Availability as w } from "../../molecules/Availability/Availability.js";
6
+ import { Pricing as x } from "../../molecules/Pricing/Pricing.js";
7
+ import { AddToCart as z } from "../../molecules/AddToCart/AddToCart.js";
8
+ import { Icon as R } from "../../atoms/Icon/Icon.js";
9
+ import { c as B } from "../../clsx-OuTLNxxd.js";
10
+ import '../../assets/Product.css';const $ = "_productCard_179ie_1", A = "_productInformation_179ie_20", D = "_purchaseInformation_179ie_27", P = "_addToCart_179ie_35", j = "_addToCartButton_179ie_38", k = "_partNumber_179ie_46", y = "_partNumberLabel_179ie_53", q = "_productTile_179ie_57", E = "_topRow_179ie_76", F = "_productData_179ie_107", G = "_purchase_179ie_27", J = "_attributeContainer_179ie_144", M = "_elevated_179ie_192", O = "_noImage_179ie_198", e = {
11
+ productCard: $,
12
+ productInformation: A,
13
+ purchaseInformation: D,
14
+ addToCart: P,
15
+ addToCartButton: j,
16
+ partNumber: k,
17
+ partNumberLabel: y,
18
+ productTile: q,
19
+ topRow: E,
20
+ productData: F,
21
+ purchase: G,
22
+ attributeContainer: J,
23
+ elevated: M,
24
+ noImage: O
23
25
  };
24
- function Z({
25
- productView: I,
26
- itemKey: s,
27
- partNumber: d,
28
- productDescription: l,
29
- availDescription: m,
30
- availId: e,
31
- contactHref: u,
32
- contactLinkBehavior: h,
33
- productHref: p,
34
- priceLabel: _,
35
- price: i,
36
- imgSrc: N,
37
- attributes: c,
26
+ function S({
27
+ productView: L,
28
+ itemKey: c,
29
+ partNumber: i,
30
+ productDescription: m,
31
+ availDescription: u,
32
+ availId: d,
33
+ contactHref: h,
34
+ contactLinkBehavior: p,
35
+ productHref: _,
36
+ priceLabel: N,
37
+ price: n,
38
+ imgSrc: r,
39
+ attributes: l,
38
40
  className: b,
39
41
  onAddToCart: f,
40
42
  onClose: C,
41
- ...z
43
+ flat: T,
44
+ ...g
42
45
  }) {
43
- return I === "Card" ? /* @__PURE__ */ a("div", { className: x(r.productCard, b), children: [
44
- /* @__PURE__ */ t(
45
- T,
46
+ return L === "Card" ? /* @__PURE__ */ a("div", { className: B(e.productCard, b, !T && e.elevated, !r && e.noImage), ...g, children: [
47
+ r && /* @__PURE__ */ t(
48
+ v,
46
49
  {
47
- src: N,
48
- alt: `${d} product image`,
50
+ src: r,
51
+ alt: `${i} product image`,
49
52
  height: 96,
50
53
  width: 96
51
54
  }
52
55
  ),
53
- /* @__PURE__ */ a("div", { className: r.productInformation, children: [
54
- /* @__PURE__ */ t(g, { href: p, children: l }),
55
- /* @__PURE__ */ a("div", { className: r.partNumber, children: [
56
- /* @__PURE__ */ t(o, { size: "sm", className: r.partNumberLabel, children: "Part #" }),
57
- /* @__PURE__ */ t(o, { size: "sm", weight: "semibold", children: d })
56
+ /* @__PURE__ */ a("div", { className: e.productInformation, children: [
57
+ /* @__PURE__ */ t(I, { href: _, children: m }),
58
+ /* @__PURE__ */ a("div", { className: e.partNumber, children: [
59
+ /* @__PURE__ */ t(o, { size: "sm", className: e.partNumberLabel, children: "Part #" }),
60
+ /* @__PURE__ */ t(o, { size: "sm", weight: "semibold", children: i })
58
61
  ] })
59
62
  ] }),
60
- /* @__PURE__ */ a("div", { className: r.purchaseInformation, children: [
61
- e && /* @__PURE__ */ t(
62
- y,
63
+ /* @__PURE__ */ a("div", { className: e.purchaseInformation, children: [
64
+ d && /* @__PURE__ */ t(
65
+ w,
63
66
  {
64
- availId: e,
65
- availDescription: m,
66
- contactHref: u,
67
- contactLinkBehavior: h
67
+ availId: d,
68
+ availDescription: u,
69
+ contactHref: h,
70
+ contactLinkBehavior: p
68
71
  }
69
72
  ),
70
- i && /* @__PURE__ */ t(w, { pricingLabel: _, price: i })
73
+ n && /* @__PURE__ */ t(x, { pricingLabel: N, price: n })
71
74
  ] }),
72
75
  /* @__PURE__ */ t(
73
- v,
76
+ z,
74
77
  {
75
- itemKey: s,
78
+ itemKey: c,
76
79
  onAdd: f,
77
- className: r.addToCart,
78
- addButtonClassName: r.addToCartButton,
80
+ className: e.addToCart,
81
+ addButtonClassName: e.addToCartButton,
79
82
  size: "md",
80
83
  buttonDoneText: ""
81
84
  }
82
85
  )
83
- ] }) : /* @__PURE__ */ a("div", { className: x(r.productTile, b), ...z, children: [
84
- /* @__PURE__ */ t(
85
- T,
86
+ ] }) : /* @__PURE__ */ a("div", { className: B(e.productTile, b, !T && e.elevated, !r && e.noImage), ...g, children: [
87
+ r && /* @__PURE__ */ t(
88
+ v,
86
89
  {
87
- src: N,
88
- alt: `${d} product image`,
90
+ src: r,
91
+ alt: `${i} product image`,
89
92
  height: 108,
90
93
  width: 108
91
94
  }
92
95
  ),
93
- /* @__PURE__ */ a("div", { className: r.productData, children: [
94
- /* @__PURE__ */ a("div", { className: r.topRow, children: [
95
- /* @__PURE__ */ a("div", { className: r.productInformation, children: [
96
- /* @__PURE__ */ t(g, { href: p, children: l }),
97
- /* @__PURE__ */ a("div", { className: r.partNumber, children: [
98
- /* @__PURE__ */ t(o, { size: "sm", className: r.partNumberLabel, children: "Part #" }),
99
- /* @__PURE__ */ t(o, { size: "sm", weight: "semibold", children: d })
96
+ /* @__PURE__ */ a("div", { className: e.productData, children: [
97
+ /* @__PURE__ */ a("div", { className: e.topRow, children: [
98
+ /* @__PURE__ */ a("div", { className: e.productInformation, children: [
99
+ /* @__PURE__ */ t(I, { href: _, children: m }),
100
+ /* @__PURE__ */ a("div", { className: e.partNumber, children: [
101
+ /* @__PURE__ */ t(o, { size: "sm", className: e.partNumberLabel, children: "Part #" }),
102
+ /* @__PURE__ */ t(o, { size: "sm", weight: "semibold", children: i })
100
103
  ] })
101
104
  ] }),
102
- C && /* @__PURE__ */ t("button", { onClick: () => C(s), children: /* @__PURE__ */ t(B, { size: "sm", iconKey: "fa-light fa-xmark" }) })
105
+ C && /* @__PURE__ */ t("button", { onClick: () => C(c), children: /* @__PURE__ */ t(R, { size: "sm", iconKey: "fa-light fa-xmark" }) })
103
106
  ] }),
104
- /* @__PURE__ */ a("div", { className: r.purchase, children: [
105
- /* @__PURE__ */ a("div", { className: r.purchaseInformation, children: [
106
- e && /* @__PURE__ */ t(
107
- y,
107
+ /* @__PURE__ */ a("div", { className: e.purchase, children: [
108
+ /* @__PURE__ */ a("div", { className: e.purchaseInformation, children: [
109
+ d && /* @__PURE__ */ t(
110
+ w,
108
111
  {
109
- availId: e,
110
- availDescription: m,
111
- contactHref: u,
112
- contactLinkBehavior: h
112
+ availId: d,
113
+ availDescription: u,
114
+ contactHref: h,
115
+ contactLinkBehavior: p
113
116
  }
114
117
  ),
115
- i && /* @__PURE__ */ t(w, { pricingLabel: _, price: i })
118
+ n && /* @__PURE__ */ t(x, { pricingLabel: N, price: n })
116
119
  ] }),
117
- /* @__PURE__ */ t(v, { itemKey: s, onAdd: f, className: r.addToCart, addButtonClassName: r.addToCartButton })
120
+ /* @__PURE__ */ t(z, { itemKey: c, onAdd: f, className: e.addToCart, addButtonClassName: e.addToCartButton })
118
121
  ] }),
119
- c && c.length > 0 && /* @__PURE__ */ t("ul", { className: r.attributeContainer, children: c.map((n) => /* @__PURE__ */ a("li", { children: [
122
+ l && l.length > 0 && /* @__PURE__ */ t("ul", { className: e.attributeContainer, children: l.map((s) => /* @__PURE__ */ a("li", { children: [
120
123
  /* @__PURE__ */ a(o, { size: "xs", weight: "light", children: [
121
- n.label,
124
+ s.label,
122
125
  ":"
123
126
  ] }),
124
- /* @__PURE__ */ t(o, { size: "xs", weight: "semibold", children: n.value })
125
- ] }, `${n.label}.${n.value}`)) })
127
+ /* @__PURE__ */ t(o, { size: "xs", weight: "semibold", children: s.value })
128
+ ] }, `${s.label}.${s.value}`)) })
126
129
  ] })
127
130
  ] });
128
131
  }
129
132
  export {
130
- Z as Product
133
+ S as Product
131
134
  };
@@ -65,6 +65,10 @@ declare const meta: {
65
65
  action: string;
66
66
  description: string;
67
67
  };
68
+ flat: {
69
+ control: "boolean";
70
+ description: string;
71
+ };
68
72
  };
69
73
  args: ProductProps;
70
74
  tags: string[];
@@ -77,3 +81,6 @@ export declare const Unavailable: Story;
77
81
  export declare const ContactForAvailability: Story;
78
82
  export declare const TileView: Story;
79
83
  export declare const DifferentPriceLabel: Story;
84
+ export declare const NoImageCard: Story;
85
+ export declare const FlatTile: Story;
86
+ export declare const NoImageFlatCard: Story;
@@ -46,7 +46,8 @@ const o = [
46
46
  price: { control: "text" },
47
47
  imgSrc: { control: "text" },
48
48
  itemKey: { control: "number" },
49
- onAddToCart: { action: "addToCart", description: "(itemKey, quantity)" }
49
+ onAddToCart: { action: "addToCart", description: "(itemKey, quantity)" },
50
+ flat: { control: "boolean", description: "Removes border and shadow" }
50
51
  },
51
52
  args: {
52
53
  productView: "Card",
@@ -69,7 +70,8 @@ const o = [
69
70
  },
70
71
  onClose: (t) => {
71
72
  alert(`On close clicked ${t}`);
72
- }
73
+ },
74
+ flat: !1
73
75
  },
74
76
  tags: ["autodocs"]
75
77
  }, l = {}, c = {
@@ -90,23 +92,42 @@ const o = [
90
92
  contactLinkBehavior: "new-tab",
91
93
  contactHref: "https://dev.caseparts.com/account/contactus"
92
94
  }
93
- }, p = {
95
+ }, d = {
94
96
  args: {
95
97
  productView: "Tile",
96
98
  productDescription: "Tile View Product"
97
99
  }
98
- }, d = {
100
+ }, p = {
99
101
  args: {
100
102
  priceLabel: "Member",
101
103
  price: "$118.49"
102
104
  }
105
+ }, u = {
106
+ args: {
107
+ productView: "Card",
108
+ imgSrc: void 0
109
+ }
110
+ }, v = {
111
+ args: {
112
+ productView: "Tile",
113
+ flat: !0
114
+ }
115
+ }, b = {
116
+ args: {
117
+ productView: "Card",
118
+ imgSrc: void 0,
119
+ flat: !0
120
+ }
103
121
  };
104
122
  export {
105
123
  s as ContactForAvailability,
106
124
  l as Default,
107
- d as DifferentPriceLabel,
125
+ p as DifferentPriceLabel,
126
+ v as FlatTile,
108
127
  c as LimitedStock,
109
- p as TileView,
128
+ u as NoImageCard,
129
+ b as NoImageFlatCard,
130
+ d as TileView,
110
131
  n as Unavailable,
111
132
  r as default
112
133
  };
package/package.json CHANGED
@@ -1,7 +1,7 @@
1
1
  {
2
2
  "name": "@caseparts-org/caseblocks",
3
3
  "private": false,
4
- "version": "0.0.121",
4
+ "version": "0.0.122",
5
5
  "type": "module",
6
6
  "module": "dist/main.js",
7
7
  "types": "dist/main.d.ts",