@redsift/products 12.5.12-alpha.2 → 12.5.12-alpha.4

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.
@@ -31,10 +31,16 @@ export { BIMI_CHECKER_SIGNAL_TYPES, CARD_STATUS, SIGNAL_TYPES, STATUS_COLORS, ST
31
31
  *
32
32
  * <SignalCardThemeProvider>
33
33
  * <SignalCardBimi jmap={bimiData} />
34
- * <SignalCardDmarcDomain result={dmarcResult} />
35
- * <SignalCardSpfDomain result={spfResult} />
34
+ * <SignalCardDmarcDomain jmap={dmarcData} />
35
+ * <SignalCardSpfDomain jmap={spfData} />
36
36
  * </SignalCardThemeProvider>
37
37
  * ```
38
+ *
39
+ * All three cards take a `jmap` payload shaped like the IPForensics/JMAP response —
40
+ * `{ extsecrep: { dmarc | spf | bimi: ... } }` — not a pre-computed `result` object.
41
+ * There is no `result` prop on any of them; earlier revisions of this example showed
42
+ * one, which would fail type-checking. See `README.md` / `docs/API.md` for the payload
43
+ * each card reads.
38
44
  */
39
45
 
40
46
  /**
@@ -1 +1 @@
1
- {"version":3,"file":"bimi-checker.js","sources":["../../src/components/signal-cards/bimi-checker.ts"],"sourcesContent":["/**\n * BIMI Checker Signal Cards Entry Point\n *\n * This module provides the signal card components used by the BIMI Checker tool:\n * - SignalCardBimi - BIMI record and logo validation\n * - SignalCardDmarcDomain - DMARC compliance check\n * - SignalCardSpfDomain - SPF record validation\n * - SignalCardThemeProvider - Theme context for styling\n *\n * These components are bundled separately from the full signal-cards package\n * to reduce bundle size. Heavy dependencies like tldjs and d3-sankey used by\n * other signal cards (FCrDNS, SPF alignment, etc.) are NOT included.\n *\n * Bundle size: ~95KB gzipped (vs ~293KB for full signal-cards)\n *\n * @packageDocumentation\n * @module SignalCards/BimiChecker\n *\n * @example\n * ```tsx\n * import {\n * SignalCardThemeProvider,\n * SignalCardBimi,\n * SignalCardDmarcDomain,\n * SignalCardSpfDomain,\n * } from '@redsift/products/bimi-checker';\n *\n * <SignalCardThemeProvider>\n * <SignalCardBimi jmap={bimiData} />\n * <SignalCardDmarcDomain result={dmarcResult} />\n * <SignalCardSpfDomain result={spfResult} />\n * </SignalCardThemeProvider>\n * ```\n */\n\n// ============================================================================\n// THEME CONTEXT (Required for all signal cards)\n// ============================================================================\nexport {\n SignalCardThemeProvider,\n useSignalCardTheme,\n useResolvedTheme,\n type SignalCardTheme,\n type SignalCardThemeProviderProps,\n} from './hooks/useSignalCardTheme';\n\n// ============================================================================\n// BIMI CHECKER CARDS\n// ============================================================================\n\n// Import base components and wrap with theme\nimport { withSignalCardTheme } from './hooks/withSignalCardTheme';\nimport { SignalCardBimi as BaseSignalCardBimi } from './cards/SignalCardBimi';\nimport { SignalCardDmarcDomain as BaseSignalCardDmarcDomain } from './cards/SignalCardDmarcDomain';\nimport { SignalCardSpfDomain as BaseSignalCardSpfDomain } from './cards/SignalCardSpfDomain';\n\n/**\n * BIMI signal card - displays Brand Indicators for Message Identification status.\n * Shows SVG logo, VMC/CMC certificate validation, and BIMI record analysis.\n */\nexport const SignalCardBimi = withSignalCardTheme(BaseSignalCardBimi);\nexport type { SignalCardBimiProps } from './cards/SignalCardBimi';\n\n/**\n * DMARC Domain card - DMARC compliance check for BIMI Checker.\n */\nexport const SignalCardDmarcDomain = withSignalCardTheme(BaseSignalCardDmarcDomain);\nexport type { SignalCardDmarcDomainProps } from './cards/SignalCardDmarcDomain';\n\n/**\n * SPF Domain card - SPF record validation for BIMI Checker.\n */\nexport const SignalCardSpfDomain = withSignalCardTheme(BaseSignalCardSpfDomain);\nexport type { SignalCardSpfDomainProps } from './cards/SignalCardSpfDomain';\n\n// ============================================================================\n// CONSTANTS\n// ============================================================================\n\nexport {\n CARD_STATUS,\n normalizeStatus,\n getStatusColor,\n getStatusIcon,\n getStatusIconStyle,\n mapStatusToDetailedCardColor,\n isCardStatus,\n isSuccessStatus,\n isFailureStatus,\n isWarningStatus,\n STATUS_COLORS,\n STATUS_ICONS,\n STATUS_ICON_STYLES,\n} from '@redsift/signal-logic';\n\nexport {\n SIGNAL_TYPES,\n BIMI_CHECKER_SIGNAL_TYPES,\n type SignalType,\n type BimiCheckerSignalType,\n} from '@redsift/signal-logic';\n"],"names":["SignalCardBimi","withSignalCardTheme","BaseSignalCardBimi","SignalCardDmarcDomain","BaseSignalCardDmarcDomain","SignalCardSpfDomain","BaseSignalCardSpfDomain"],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAuBA;AACA;AACA;AACA;MACaA,cAAc,GAAGC,mBAAmB,CAACC,gBAAkB,EAAC;AAGrE;AACA;AACA;MACaC,qBAAqB,GAAGF,mBAAmB,CAACG,uBAAyB,EAAC;AAGnF;AACA;AACA;MACaC,mBAAmB,GAAGJ,mBAAmB,CAACK,qBAAuB;;;;"}
1
+ {"version":3,"file":"bimi-checker.js","sources":["../../src/components/signal-cards/bimi-checker.ts"],"sourcesContent":["/**\n * BIMI Checker Signal Cards Entry Point\n *\n * This module provides the signal card components used by the BIMI Checker tool:\n * - SignalCardBimi - BIMI record and logo validation\n * - SignalCardDmarcDomain - DMARC compliance check\n * - SignalCardSpfDomain - SPF record validation\n * - SignalCardThemeProvider - Theme context for styling\n *\n * These components are bundled separately from the full signal-cards package\n * to reduce bundle size. Heavy dependencies like tldjs and d3-sankey used by\n * other signal cards (FCrDNS, SPF alignment, etc.) are NOT included.\n *\n * Bundle size: ~95KB gzipped (vs ~293KB for full signal-cards)\n *\n * @packageDocumentation\n * @module SignalCards/BimiChecker\n *\n * @example\n * ```tsx\n * import {\n * SignalCardThemeProvider,\n * SignalCardBimi,\n * SignalCardDmarcDomain,\n * SignalCardSpfDomain,\n * } from '@redsift/products/bimi-checker';\n *\n * <SignalCardThemeProvider>\n * <SignalCardBimi jmap={bimiData} />\n * <SignalCardDmarcDomain jmap={dmarcData} />\n * <SignalCardSpfDomain jmap={spfData} />\n * </SignalCardThemeProvider>\n * ```\n *\n * All three cards take a `jmap` payload shaped like the IPForensics/JMAP response —\n * `{ extsecrep: { dmarc | spf | bimi: ... } }` — not a pre-computed `result` object.\n * There is no `result` prop on any of them; earlier revisions of this example showed\n * one, which would fail type-checking. See `README.md` / `docs/API.md` for the payload\n * each card reads.\n */\n\n// ============================================================================\n// THEME CONTEXT (Required for all signal cards)\n// ============================================================================\nexport {\n SignalCardThemeProvider,\n useSignalCardTheme,\n useResolvedTheme,\n type SignalCardTheme,\n type SignalCardThemeProviderProps,\n} from './hooks/useSignalCardTheme';\n\n// ============================================================================\n// BIMI CHECKER CARDS\n// ============================================================================\n\n// Import base components and wrap with theme\nimport { withSignalCardTheme } from './hooks/withSignalCardTheme';\nimport { SignalCardBimi as BaseSignalCardBimi } from './cards/SignalCardBimi';\nimport { SignalCardDmarcDomain as BaseSignalCardDmarcDomain } from './cards/SignalCardDmarcDomain';\nimport { SignalCardSpfDomain as BaseSignalCardSpfDomain } from './cards/SignalCardSpfDomain';\n\n/**\n * BIMI signal card - displays Brand Indicators for Message Identification status.\n * Shows SVG logo, VMC/CMC certificate validation, and BIMI record analysis.\n */\nexport const SignalCardBimi = withSignalCardTheme(BaseSignalCardBimi);\nexport type { SignalCardBimiProps } from './cards/SignalCardBimi';\n\n/**\n * DMARC Domain card - DMARC compliance check for BIMI Checker.\n */\nexport const SignalCardDmarcDomain = withSignalCardTheme(BaseSignalCardDmarcDomain);\nexport type { SignalCardDmarcDomainProps } from './cards/SignalCardDmarcDomain';\n\n/**\n * SPF Domain card - SPF record validation for BIMI Checker.\n */\nexport const SignalCardSpfDomain = withSignalCardTheme(BaseSignalCardSpfDomain);\nexport type { SignalCardSpfDomainProps } from './cards/SignalCardSpfDomain';\n\n// ============================================================================\n// CONSTANTS\n// ============================================================================\n\nexport {\n CARD_STATUS,\n normalizeStatus,\n getStatusColor,\n getStatusIcon,\n getStatusIconStyle,\n mapStatusToDetailedCardColor,\n isCardStatus,\n isSuccessStatus,\n isFailureStatus,\n isWarningStatus,\n STATUS_COLORS,\n STATUS_ICONS,\n STATUS_ICON_STYLES,\n} from '@redsift/signal-logic';\n\nexport {\n SIGNAL_TYPES,\n BIMI_CHECKER_SIGNAL_TYPES,\n type SignalType,\n type BimiCheckerSignalType,\n} from '@redsift/signal-logic';\n"],"names":["SignalCardBimi","withSignalCardTheme","BaseSignalCardBimi","SignalCardDmarcDomain","BaseSignalCardDmarcDomain","SignalCardSpfDomain","BaseSignalCardSpfDomain"],"mappings":";;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAuBA;AACA;AACA;AACA;MACaA,cAAc,GAAGC,mBAAmB,CAACC,gBAAkB,EAAC;AAGrE;AACA;AACA;MACaC,qBAAqB,GAAGF,mBAAmB,CAACG,uBAAyB,EAAC;AAGnF;AACA;AACA;MACaC,mBAAmB,GAAGJ,mBAAmB,CAACK,qBAAuB;;;;"}
package/bimi-checker.d.ts CHANGED
@@ -1,6 +1,6 @@
1
1
  import * as _redsift_design_system from '@redsift/design-system';
2
2
  import React, { ReactNode, ComponentProps } from 'react';
3
- import { CardStatus } from '@redsift/signal-logic';
3
+ import { DmarcDomainData } from '@redsift/signal-logic';
4
4
  export { BIMI_CHECKER_SIGNAL_TYPES, BimiCheckerSignalType, CARD_STATUS, SIGNAL_TYPES, STATUS_COLORS, STATUS_ICONS, STATUS_ICON_STYLES, SignalType, getStatusColor, getStatusIcon, getStatusIconStyle, isCardStatus, isFailureStatus, isSuccessStatus, isWarningStatus, mapStatusToDetailedCardColor, normalizeStatus } from '@redsift/signal-logic';
5
5
 
6
6
  /**
@@ -112,18 +112,6 @@ interface SignalCardBimiProps extends SignalCardSharedProps {
112
112
  onComponentMount?: () => void;
113
113
  }
114
114
 
115
- type DmarcResult = {
116
- status?: CardStatus | string | null;
117
- errors?: string[] | null;
118
- };
119
- type DmarcData = {
120
- raw?: string | null;
121
- result?: DmarcResult | null;
122
- txtExtractedFrom?: string | null;
123
- policyDomain?: string | null;
124
- fromDomain?: string | null;
125
- domainPublished?: string | null;
126
- };
127
115
  type Originator = {
128
116
  domain?: string | null;
129
117
  orgDomain?: string | null;
@@ -131,7 +119,7 @@ type Originator = {
131
119
  interface SignalCardDmarcDomainProps extends SignalCardSharedProps {
132
120
  jmap: {
133
121
  extsecrep: {
134
- dmarc: DmarcData;
122
+ dmarc: DmarcDomainData;
135
123
  originator?: Originator;
136
124
  };
137
125
  };
package/index.d.ts CHANGED
@@ -4,7 +4,7 @@ import * as _redsift_design_system from '@redsift/design-system';
4
4
  import { ButtonColor, Theme, ValueOf, ContainerProps, HeadingProps, IconProps, StylingProps, Comp, ButtonProps } from '@redsift/design-system';
5
5
  import * as _redsift_pickers from '@redsift/pickers';
6
6
  import { ItemProps, MenuButtonProps, MenuButtonContentProps, MenuButtonContentHeaderProps, MenuButtonContentMenuProps } from '@redsift/pickers';
7
- import { RecommendationsData, JmapProps, DmarcProps, DkimProps, SpfProps, EhloProps, FcrdnsProps, EhloCheckProps, TlsProps, CardStatus, DomainAnalyzerSpfProps, DomainAnalyzerDkimProps, MtaProps, ExtsecrepProps, DnsSecurityProps, InvestigateProps } from '@redsift/signal-logic';
7
+ import { RecommendationsData, JmapProps, DmarcProps, DkimProps, SpfProps, EhloProps, FcrdnsProps, EhloCheckProps, TlsProps, DmarcDomainData, DomainAnalyzerSpfProps, DomainAnalyzerDkimProps, MtaProps, ExtsecrepProps, DnsSecurityProps, InvestigateProps } from '@redsift/signal-logic';
8
8
  export { BIMI_CHECKER_SIGNAL_TYPES, BimiCheckerSignalType, CARD_STATUS, DOMAIN_ANALYZER_SIGNAL_TYPES, DomainAnalyzerSignalType, PUBLIC_INVESTIGATE_SIGNAL_TYPES, PublicInvestigateSignalType, RecommendationSignal, RecommendationsAnalysis, RecommendationsData, SIGNAL_TYPES, SignalType, getSignalStatus } from '@redsift/signal-logic';
9
9
 
10
10
  /**
@@ -415,7 +415,7 @@ interface SignalCardSpfProps extends SignalCardSharedProps {
415
415
  }
416
416
 
417
417
  type DkimResult = DkimProps;
418
- type DmarcResult$1 = DmarcProps | null;
418
+ type DmarcResult = DmarcProps | null;
419
419
  /**
420
420
  * Component props.
421
421
  */
@@ -424,7 +424,7 @@ interface SignalCardDkimProps extends SignalCardSharedProps {
424
424
  jmap: {
425
425
  extsecrep: {
426
426
  dkim?: DkimResult | DkimResult[] | null;
427
- dmarc?: DmarcResult$1;
427
+ dmarc?: DmarcResult;
428
428
  };
429
429
  };
430
430
  }
@@ -458,18 +458,6 @@ interface SignalCardTlsProps extends SignalCardSharedProps {
458
458
  };
459
459
  }
460
460
 
461
- type DmarcResult = {
462
- status?: CardStatus | string | null;
463
- errors?: string[] | null;
464
- };
465
- type DmarcData$1 = {
466
- raw?: string | null;
467
- result?: DmarcResult | null;
468
- txtExtractedFrom?: string | null;
469
- policyDomain?: string | null;
470
- fromDomain?: string | null;
471
- domainPublished?: string | null;
472
- };
473
461
  type Originator = {
474
462
  domain?: string | null;
475
463
  orgDomain?: string | null;
@@ -477,7 +465,7 @@ type Originator = {
477
465
  interface SignalCardDmarcDomainProps extends SignalCardSharedProps {
478
466
  jmap: {
479
467
  extsecrep: {
480
- dmarc: DmarcData$1;
468
+ dmarc: DmarcDomainData;
481
469
  originator?: Originator;
482
470
  };
483
471
  };
package/package.json CHANGED
@@ -52,10 +52,10 @@
52
52
  "test": "yarn test:unit && yarn test:storybook"
53
53
  },
54
54
  "types": "index.d.ts",
55
- "version": "12.5.12-alpha.2",
55
+ "version": "12.5.12-alpha.4",
56
56
  "dependencies": {
57
57
  "@redsift/d3-rs-sankey": "0.4.0",
58
- "@redsift/signal-logic": "^0.6.6",
58
+ "@redsift/signal-logic": "^0.7.0",
59
59
  "classnames": "^2.3.1",
60
60
  "d3-selection": "1.4.2",
61
61
  "d3-transition": "1.3.2",
@@ -119,5 +119,5 @@
119
119
  "react-dom": ">=17",
120
120
  "styled-components": "6.1.19"
121
121
  },
122
- "gitHead": "2f75f2b8b919ed4e40425054dc2539008ff08e10"
122
+ "gitHead": "a9c51e22ef808d1bbc465f0a126b00dfa2265d71"
123
123
  }
package/signal-cards.d.ts CHANGED
@@ -1,5 +1,5 @@
1
1
  import * as _redsift_design_system from '@redsift/design-system';
2
- import { RecommendationsData, JmapProps, DmarcProps, DkimProps, SpfProps, EhloProps, FcrdnsProps, EhloCheckProps, TlsProps, CardStatus, DomainAnalyzerSpfProps, DomainAnalyzerDkimProps, MtaProps, ExtsecrepProps, DnsSecurityProps, InvestigateProps } from '@redsift/signal-logic';
2
+ import { RecommendationsData, JmapProps, DmarcProps, DkimProps, SpfProps, EhloProps, FcrdnsProps, EhloCheckProps, TlsProps, DmarcDomainData, DomainAnalyzerSpfProps, DomainAnalyzerDkimProps, MtaProps, ExtsecrepProps, DnsSecurityProps, InvestigateProps } from '@redsift/signal-logic';
3
3
  export { BIMI_CHECKER_SIGNAL_TYPES, BimiCheckerSignalType, CARD_STATUS, DOMAIN_ANALYZER_SIGNAL_TYPES, DomainAnalyzerSignalType, PUBLIC_INVESTIGATE_SIGNAL_TYPES, PublicInvestigateSignalType, RecommendationSignal, RecommendationsAnalysis, RecommendationsData, SIGNAL_TYPES, SignalType, getSignalStatus } from '@redsift/signal-logic';
4
4
  import react, { ComponentProps, ReactNode } from 'react';
5
5
 
@@ -198,7 +198,7 @@ interface SignalCardSpfProps extends SignalCardSharedProps {
198
198
  }
199
199
 
200
200
  type DkimResult = DkimProps;
201
- type DmarcResult$1 = DmarcProps | null;
201
+ type DmarcResult = DmarcProps | null;
202
202
  /**
203
203
  * Component props.
204
204
  */
@@ -207,7 +207,7 @@ interface SignalCardDkimProps extends SignalCardSharedProps {
207
207
  jmap: {
208
208
  extsecrep: {
209
209
  dkim?: DkimResult | DkimResult[] | null;
210
- dmarc?: DmarcResult$1;
210
+ dmarc?: DmarcResult;
211
211
  };
212
212
  };
213
213
  }
@@ -241,18 +241,6 @@ interface SignalCardTlsProps extends SignalCardSharedProps {
241
241
  };
242
242
  }
243
243
 
244
- type DmarcResult = {
245
- status?: CardStatus | string | null;
246
- errors?: string[] | null;
247
- };
248
- type DmarcData$1 = {
249
- raw?: string | null;
250
- result?: DmarcResult | null;
251
- txtExtractedFrom?: string | null;
252
- policyDomain?: string | null;
253
- fromDomain?: string | null;
254
- domainPublished?: string | null;
255
- };
256
244
  type Originator = {
257
245
  domain?: string | null;
258
246
  orgDomain?: string | null;
@@ -260,7 +248,7 @@ type Originator = {
260
248
  interface SignalCardDmarcDomainProps extends SignalCardSharedProps {
261
249
  jmap: {
262
250
  extsecrep: {
263
- dmarc: DmarcData$1;
251
+ dmarc: DmarcDomainData;
264
252
  originator?: Originator;
265
253
  };
266
254
  };