@mohasinac/appkit 4.52.1 → 4.52.2

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.
Files changed (41) hide show
  1. package/dist/.build-stamp.json +3 -3
  2. package/dist/_internal/client/features/digital-code/CodeRevealPanel.js +4 -4
  3. package/dist/_internal/server/features/products/list-public.js +37 -1
  4. package/dist/features/about/components/PolicyPageView.js +1 -1
  5. package/dist/features/auctions/components/MarketplaceAuctionCard.js +2 -2
  6. package/dist/features/auth/components/SocialAuthButtons.js +1 -1
  7. package/dist/features/categories/components/CategoryBundlesListing.js +1 -1
  8. package/dist/features/categories/components/CategoryDetailPageView.js +8 -7
  9. package/dist/features/checkout/components/CheckoutStepper.js +1 -1
  10. package/dist/features/faq/components/FAQAccordion.js +1 -1
  11. package/dist/features/filters/FilterFacetSection.js +1 -1
  12. package/dist/features/filters/RangeFilter.js +1 -1
  13. package/dist/features/filters/SwitchFilter.js +1 -1
  14. package/dist/features/homepage/components/BeforeAfterCard.js +2 -2
  15. package/dist/features/homepage/components/CharacterHotspot.js +1 -1
  16. package/dist/features/homepage/components/FAQSection.js +1 -1
  17. package/dist/features/homepage/components/HeroBanner.js +1 -1
  18. package/dist/features/homepage/components/HeroCarousel.js +4 -4
  19. package/dist/features/homepage/components/HowItWorksSection.js +1 -1
  20. package/dist/features/homepage/components/SectionCarousel.js +1 -1
  21. package/dist/features/homepage/components/SecurityHighlightsSection.js +1 -1
  22. package/dist/features/homepage/components/TrustBadges.js +1 -1
  23. package/dist/features/homepage/components/WelcomeSection.js +1 -1
  24. package/dist/features/layout/BottomActions.js +1 -1
  25. package/dist/features/live/components/LiveItemDetailPageView.js +1 -1
  26. package/dist/features/products/hooks/useProducts.js +18 -1
  27. package/dist/features/reviews/components/ReviewDetailShell.js +2 -1
  28. package/dist/features/reviews/components/ReviewSummary.js +1 -1
  29. package/dist/features/tester/seed-data/_happy-path.js +1 -1
  30. package/dist/features/tester/seed-data/authored/admin__catalog-listings.js +1 -1
  31. package/dist/features/tester/seed-data/authored/content-discovery__category-brand-relations.js +3 -3
  32. package/dist/features/tester/seed-data/authored/content-discovery__category-tabs-franchise-bundles.d.ts +2 -0
  33. package/dist/features/tester/seed-data/authored/content-discovery__category-tabs-franchise-bundles.js +152 -0
  34. package/dist/features/tester/seed-data/authored/design-ux__rich-text-readability.d.ts +2 -0
  35. package/dist/features/tester/seed-data/authored/design-ux__rich-text-readability.js +84 -0
  36. package/dist/features/tester/seed-data/authored/index.js +4 -0
  37. package/dist/features/tester/seed-data/authored/public-pages__core-listing-pages.js +2 -2
  38. package/dist/features/tester/seed-data/tester-checklist-seed-data.js +77 -3
  39. package/dist/styles.css +73 -0
  40. package/dist/ui/rich-text/RichText.style.css +73 -0
  41. package/package.json +1 -1
package/dist/styles.css CHANGED
@@ -9070,6 +9070,79 @@
9070
9070
 
9071
9071
 
9072
9072
 
9073
+ /* --------------------------------------------------------------------------
9074
+ * THE PROSE PALETTE — rebound to appkit theme tokens.
9075
+ *
9076
+ * 🛑 `dark:prose-invert` CANNOT COMPILE IN THIS PROJECT. Do not "fix" dark-mode
9077
+ * rich text by adding it to a call site, and do not add
9078
+ * `@source inline("dark:prose-invert")` to globals.css.
9079
+ *
9080
+ * Every `proseClass` string in appkit carries `dark:prose-invert` and NONE of
9081
+ * them has ever generated a rule, because:
9082
+ * - the consumer build excludes appkit from scanning
9083
+ * (`src/app/globals.css` → `@source not "../../appkit"`), and
9084
+ * - `appkit/tailwind.config.js` does not load `@tailwindcss/typography`,
9085
+ * so appkit's own `dist/tailwind-utilities.css` cannot emit it either.
9086
+ *
9087
+ * So `--tw-prose-invert-*` is DEFINED and never switched on. Every rich-text
9088
+ * surface on the site — product and auction descriptions, blog posts, policy
9089
+ * pages, FAQ answers, category `contentBody`, pre-orders, classifieds, digital
9090
+ * codes, live items, prize draws, events — rendered the light-theme palette in
9091
+ * every theme: body at gray-700 and links at gray-900, i.e. near-black on a
9092
+ * dark page. The links were effectively invisible.
9093
+ *
9094
+ * It was not merely unstyled, it was OVERRIDING: `important: true` in
9095
+ * `tailwind.config.js` emits `.prose :where(a) { color: var(--tw-prose-links)
9096
+ * !important }`, which beat the themed `.dark .appkit-rich-text a` rule further
9097
+ * down this file. All that theme-aware CSS was dead on arrival.
9098
+ *
9099
+ * Rebinding the VARIABLES fixes it at the only point both problems meet: every
9100
+ * prose rule reads `var(--tw-prose-*)`, so one block re-themes body, links,
9101
+ * headings, bold, lists, quotes, captions, code and tables at once — in both
9102
+ * built-in themes AND in any admin-authored custom theme, which `prose-invert`
9103
+ * could never have done (its palette is hardcoded Tailwind grays).
9104
+ *
9105
+ * 🛑 The specificity is deliberate and must not be lowered. `.prose` declares
9106
+ * these variables with `!important`, so an equal-importance override is decided
9107
+ * by EMISSION ORDER between two separate stylesheets — the non-deterministic
9108
+ * trap of Root Cause #79. `:root .prose` is (0,2,0) against `.prose`'s (0,1,0),
9109
+ * so specificity decides and the outcome does not depend on bundle order. The
9110
+ * dark block at (0,3,0) also outranks `.dark .prose-invert` (0,2,0), so this
9111
+ * stays correct even if someone later makes `prose-invert` compile.
9112
+ *
9113
+ * Not scoped to `.appkit-rich-text` on purpose: `PolicyPageView` and the scams
9114
+ * FAQ page apply `prose` to a bare `<div>` and had the identical defect.
9115
+ * -------------------------------------------------------------------------- */
9116
+ :root .prose {
9117
+ --tw-prose-body: var(--appkit-color-text-muted) !important;
9118
+ --tw-prose-headings: var(--appkit-color-text) !important;
9119
+ --tw-prose-lead: var(--appkit-color-text-muted) !important;
9120
+ --tw-prose-links: var(--appkit-color-primary-600) !important;
9121
+ --tw-prose-bold: var(--appkit-color-text) !important;
9122
+ --tw-prose-counters: var(--appkit-color-text-faint) !important;
9123
+ --tw-prose-bullets: var(--appkit-color-text-faint) !important;
9124
+ --tw-prose-hr: var(--appkit-color-border) !important;
9125
+ --tw-prose-quotes: var(--appkit-color-text) !important;
9126
+ --tw-prose-quote-borders: var(--appkit-color-primary) !important;
9127
+ --tw-prose-captions: var(--appkit-color-text-faint) !important;
9128
+ --tw-prose-kbd: var(--appkit-color-text) !important;
9129
+ --tw-prose-kbd-shadows: 24 24 27 !important;
9130
+ --tw-prose-code: var(--appkit-color-text) !important;
9131
+ --tw-prose-pre-code: var(--appkit-color-slate-200) !important;
9132
+ --tw-prose-pre-bg: var(--appkit-color-slate-800) !important;
9133
+ --tw-prose-th-borders: var(--appkit-color-border) !important;
9134
+ --tw-prose-td-borders: var(--appkit-color-border) !important;
9135
+ }
9136
+
9137
+ /* Only the values that are genuinely theme-specific. Everything above already
9138
+ * inverts, because `--appkit-color-text`/`-text-muted`/`-border` are redefined
9139
+ * per theme in tokens.css — which is the whole point of binding to them. */
9140
+ :root.dark .prose {
9141
+ --tw-prose-links: var(--appkit-color-secondary-400) !important;
9142
+ --tw-prose-kbd-shadows: 250 250 250 !important;
9143
+ --tw-prose-pre-bg: var(--appkit-color-surface) !important;
9144
+ }
9145
+
9073
9146
  /* --------------------------------------------------------------------------
9074
9147
  * Base wrapper. All selectors are scoped to .appkit-rich-text so they
9075
9148
  * never leak into surrounding UI.
@@ -42,6 +42,79 @@
42
42
 
43
43
 
44
44
 
45
+ /* --------------------------------------------------------------------------
46
+ * THE PROSE PALETTE — rebound to appkit theme tokens.
47
+ *
48
+ * 🛑 `dark:prose-invert` CANNOT COMPILE IN THIS PROJECT. Do not "fix" dark-mode
49
+ * rich text by adding it to a call site, and do not add
50
+ * `@source inline("dark:prose-invert")` to globals.css.
51
+ *
52
+ * Every `proseClass` string in appkit carries `dark:prose-invert` and NONE of
53
+ * them has ever generated a rule, because:
54
+ * - the consumer build excludes appkit from scanning
55
+ * (`src/app/globals.css` → `@source not "../../appkit"`), and
56
+ * - `appkit/tailwind.config.js` does not load `@tailwindcss/typography`,
57
+ * so appkit's own `dist/tailwind-utilities.css` cannot emit it either.
58
+ *
59
+ * So `--tw-prose-invert-*` is DEFINED and never switched on. Every rich-text
60
+ * surface on the site — product and auction descriptions, blog posts, policy
61
+ * pages, FAQ answers, category `contentBody`, pre-orders, classifieds, digital
62
+ * codes, live items, prize draws, events — rendered the light-theme palette in
63
+ * every theme: body at gray-700 and links at gray-900, i.e. near-black on a
64
+ * dark page. The links were effectively invisible.
65
+ *
66
+ * It was not merely unstyled, it was OVERRIDING: `important: true` in
67
+ * `tailwind.config.js` emits `.prose :where(a) { color: var(--tw-prose-links)
68
+ * !important }`, which beat the themed `.dark .appkit-rich-text a` rule further
69
+ * down this file. All that theme-aware CSS was dead on arrival.
70
+ *
71
+ * Rebinding the VARIABLES fixes it at the only point both problems meet: every
72
+ * prose rule reads `var(--tw-prose-*)`, so one block re-themes body, links,
73
+ * headings, bold, lists, quotes, captions, code and tables at once — in both
74
+ * built-in themes AND in any admin-authored custom theme, which `prose-invert`
75
+ * could never have done (its palette is hardcoded Tailwind grays).
76
+ *
77
+ * 🛑 The specificity is deliberate and must not be lowered. `.prose` declares
78
+ * these variables with `!important`, so an equal-importance override is decided
79
+ * by EMISSION ORDER between two separate stylesheets — the non-deterministic
80
+ * trap of Root Cause #79. `:root .prose` is (0,2,0) against `.prose`'s (0,1,0),
81
+ * so specificity decides and the outcome does not depend on bundle order. The
82
+ * dark block at (0,3,0) also outranks `.dark .prose-invert` (0,2,0), so this
83
+ * stays correct even if someone later makes `prose-invert` compile.
84
+ *
85
+ * Not scoped to `.appkit-rich-text` on purpose: `PolicyPageView` and the scams
86
+ * FAQ page apply `prose` to a bare `<div>` and had the identical defect.
87
+ * -------------------------------------------------------------------------- */
88
+ :root .prose {
89
+ --tw-prose-body: var(--appkit-color-text-muted) !important;
90
+ --tw-prose-headings: var(--appkit-color-text) !important;
91
+ --tw-prose-lead: var(--appkit-color-text-muted) !important;
92
+ --tw-prose-links: var(--appkit-color-primary-600) !important;
93
+ --tw-prose-bold: var(--appkit-color-text) !important;
94
+ --tw-prose-counters: var(--appkit-color-text-faint) !important;
95
+ --tw-prose-bullets: var(--appkit-color-text-faint) !important;
96
+ --tw-prose-hr: var(--appkit-color-border) !important;
97
+ --tw-prose-quotes: var(--appkit-color-text) !important;
98
+ --tw-prose-quote-borders: var(--appkit-color-primary) !important;
99
+ --tw-prose-captions: var(--appkit-color-text-faint) !important;
100
+ --tw-prose-kbd: var(--appkit-color-text) !important;
101
+ --tw-prose-kbd-shadows: 24 24 27 !important;
102
+ --tw-prose-code: var(--appkit-color-text) !important;
103
+ --tw-prose-pre-code: var(--appkit-color-slate-200) !important;
104
+ --tw-prose-pre-bg: var(--appkit-color-slate-800) !important;
105
+ --tw-prose-th-borders: var(--appkit-color-border) !important;
106
+ --tw-prose-td-borders: var(--appkit-color-border) !important;
107
+ }
108
+
109
+ /* Only the values that are genuinely theme-specific. Everything above already
110
+ * inverts, because `--appkit-color-text`/`-text-muted`/`-border` are redefined
111
+ * per theme in tokens.css — which is the whole point of binding to them. */
112
+ :root.dark .prose {
113
+ --tw-prose-links: var(--appkit-color-secondary-400) !important;
114
+ --tw-prose-kbd-shadows: 250 250 250 !important;
115
+ --tw-prose-pre-bg: var(--appkit-color-surface) !important;
116
+ }
117
+
45
118
  /* --------------------------------------------------------------------------
46
119
  * Base wrapper. All selectors are scoped to .appkit-rich-text so they
47
120
  * never leak into surrounding UI.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@mohasinac/appkit",
3
- "version": "4.52.1",
3
+ "version": "4.52.2",
4
4
  "license": "MIT",
5
5
  "publishConfig": {
6
6
  "access": "public"