@lamenna/lxp-shared-components 0.3.0 → 0.4.0

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.
@@ -15,5 +15,10 @@ describe("Card (Shared config)", () => {
15
15
  expect(cardConfig.common.backgroundColor).toMatch(/^#/);
16
16
  expect(cardConfig.common.borderWidth).toBe(1);
17
17
  });
18
+ it("defines a media header config for image support", () => {
19
+ expect(cardConfig.media.defaultHeight).toBeGreaterThan(0);
20
+ expect(cardConfig.media.objectFit).toBe("cover");
21
+ expect(cardConfig.media.placeholderColor).toMatch(/^#/);
22
+ });
18
23
  });
19
24
  //# sourceMappingURL=card.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"card.test.js","sourceRoot":"","sources":["../../../../src/components/Card/__tests__/card.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QAChC,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAClD,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QAClC,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAClD,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACjD,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"card.test.js","sourceRoot":"","sources":["../../../../src/components/Card/__tests__/card.test.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,WAAW,CAAC;AAEvC,QAAQ,CAAC,sBAAsB,EAAE,GAAG,EAAE;IACpC,EAAE,CAAC,yBAAyB,EAAE,GAAG,EAAE;QAChC,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAClD,MAAM,CAAC,UAAU,CAAC,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QAC/C,CAAC,CAAC,CAAC;IACL,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,2BAA2B,EAAE,GAAG,EAAE;QAClC,CAAC,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAW,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EAAE;YAClD,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC,CAAC,WAAW,EAAE,CAAC;QACjD,CAAC,CAAC,CAAC;QACH,MAAM,CAAC,UAAU,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC;IAClD,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,wBAAwB,EAAE,GAAG,EAAE;QAChC,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,eAAe,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACxD,MAAM,CAAC,UAAU,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAChD,CAAC,CAAC,CAAC;IACH,EAAE,CAAC,iDAAiD,EAAE,GAAG,EAAE;QACzD,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,aAAa,CAAC,CAAC,eAAe,CAAC,CAAC,CAAC,CAAC;QAC1D,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,SAAS,CAAC,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC;QACjD,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,gBAAgB,CAAC,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;IAC1D,CAAC,CAAC,CAAC;AACL,CAAC,CAAC,CAAC"}
@@ -17,6 +17,13 @@ export declare const cardConfig: {
17
17
  readonly borderWidth: 1;
18
18
  readonly borderRadius: string;
19
19
  };
20
+ /** Optional media header (product image) shown at the top of the card. */
21
+ readonly media: {
22
+ readonly defaultHeight: 160;
23
+ readonly objectFit: "cover";
24
+ /** Neutral fill shown behind the image while it loads / if it's missing. */
25
+ readonly placeholderColor: string;
26
+ };
20
27
  };
21
28
  export type CardConfig = typeof cardConfig;
22
29
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/components/Card/config.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;CAmBb,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../../src/components/Card/config.ts"],"names":[],"mappings":"AAGA,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;IAmBrB,0EAA0E;;;;QAIxE,4EAA4E;;;CAGtE,CAAC;AAEX,MAAM,MAAM,UAAU,GAAG,OAAO,UAAU,CAAC"}
@@ -19,5 +19,12 @@ export const cardConfig = {
19
19
  borderWidth: 1,
20
20
  borderRadius: tokens.borderRadius.lg,
21
21
  },
22
+ /** Optional media header (product image) shown at the top of the card. */
23
+ media: {
24
+ defaultHeight: 160,
25
+ objectFit: "cover",
26
+ /** Neutral fill shown behind the image while it loads / if it's missing. */
27
+ placeholderColor: tokens.color.neutral[100],
28
+ },
22
29
  };
23
30
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/components/Card/config.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,QAAQ,EAAE;QACR,IAAI,EAAE,KAAK;QACX,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;QACrB,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;QACrB,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;KACtB;IACD,UAAU,EAAE;QACV,IAAI,EAAE,MAAM;QACZ,EAAE,EAAE,+BAA+B;QACnC,EAAE,EAAE,gCAAgC;QACpC,EAAE,EAAE,iCAAiC;KACtC;IACD,MAAM,EAAE;QACN,eAAe,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QACxC,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QACtC,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE;KACrC;CACO,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../../../src/components/Card/config.ts"],"names":[],"mappings":"AAAA,wDAAwD;AACxD,OAAO,EAAE,MAAM,EAAE,MAAM,qBAAqB,CAAC;AAE7C,MAAM,CAAC,MAAM,UAAU,GAAG;IACxB,QAAQ,EAAE;QACR,IAAI,EAAE,KAAK;QACX,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;QACrB,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;QACrB,EAAE,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE;KACtB;IACD,UAAU,EAAE;QACV,IAAI,EAAE,MAAM;QACZ,EAAE,EAAE,+BAA+B;QACnC,EAAE,EAAE,gCAAgC;QACpC,EAAE,EAAE,iCAAiC;KACtC;IACD,MAAM,EAAE;QACN,eAAe,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC;QACxC,WAAW,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;QACtC,WAAW,EAAE,CAAC;QACd,YAAY,EAAE,MAAM,CAAC,YAAY,CAAC,EAAE;KACrC;IACD,0EAA0E;IAC1E,KAAK,EAAE;QACL,aAAa,EAAE,GAAG;QAClB,SAAS,EAAE,OAAO;QAClB,4EAA4E;QAC5E,gBAAgB,EAAE,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,GAAG,CAAC;KAC5C;CACO,CAAC"}
@@ -6,6 +6,12 @@ export interface BaseCardProps {
6
6
  elevation?: CardElevation;
7
7
  /** Render the 1px border */
8
8
  bordered?: boolean;
9
+ /** Optional image rendered as a full-bleed media header at the top of the card */
10
+ imageSrc?: string;
11
+ /** Alt text for the media image (accessibility) */
12
+ imageAlt?: string;
13
+ /** Height of the media header in px (defaults to 160) */
14
+ imageHeight?: number;
9
15
  className?: string;
10
16
  id?: string;
11
17
  testID?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/Card/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,UAAU,CAAC,QAAQ,CAAC;AAC3D,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,UAAU,CAAC,UAAU,CAAC;AAE/D,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AACD,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD,QAAQ,CAAC,EAAE,GAAG,CAAC;CAChB;AACD,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IACzD,QAAQ,CAAC,EAAE,GAAG,CAAC;CAChB;AACD,MAAM,WAAW,gBAAiB,SAAQ,aAAa;CAAG"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/components/Card/types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AAEtC,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,UAAU,CAAC,QAAQ,CAAC;AAC3D,MAAM,MAAM,aAAa,GAAG,MAAM,OAAO,UAAU,CAAC,UAAU,CAAC;AAE/D,MAAM,WAAW,aAAa;IAC5B,OAAO,CAAC,EAAE,WAAW,CAAC;IACtB,SAAS,CAAC,EAAE,aAAa,CAAC;IAC1B,4BAA4B;IAC5B,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,kFAAkF;IAClF,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,mDAAmD;IACnD,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,yDAAyD;IACzD,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AACD,MAAM,WAAW,cAAe,SAAQ,aAAa;IACnD,QAAQ,CAAC,EAAE,GAAG,CAAC;CAChB;AACD,MAAM,WAAW,oBAAqB,SAAQ,aAAa;IACzD,QAAQ,CAAC,EAAE,GAAG,CAAC;CAChB;AACD,MAAM,WAAW,gBAAiB,SAAQ,aAAa;CAAG"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@lamenna/lxp-shared-components",
3
- "version": "0.3.0",
3
+ "version": "0.4.0",
4
4
  "description": "Shared component logic for LXP - reusable across React, React Native, and Angular",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",
@@ -11,7 +11,7 @@
11
11
  "access": "public"
12
12
  },
13
13
  "dependencies": {
14
- "@lamenna/lxp-tokens": "0.3.0"
14
+ "@lamenna/lxp-tokens": "0.4.0"
15
15
  },
16
16
  "devDependencies": {
17
17
  "@types/react": "18.2.79",