@wasto/cms-components 1.5.10 → 1.5.11
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/README.md +47 -47
- package/dist/index.d.mts +103 -2
- package/dist/index.d.ts +103 -2
- package/dist/index.js +2861 -2442
- package/dist/index.mjs +3651 -3227
- package/package.json +2 -2
- package/src/components/announcement-modal/AnnouncementModal.tsx +183 -183
- package/src/components/article/Article.tsx +21 -21
- package/src/components/article/ArticleCard.tsx +81 -81
- package/src/components/article/ArticleExcerpts.tsx +80 -80
- package/src/components/article/ArticleList.tsx +114 -114
- package/src/components/article/ArticleMarkdown.tsx +170 -170
- package/src/components/article/ArticleReaderModal.tsx +93 -93
- package/src/components/article/ArticleSingle.tsx +57 -57
- package/src/components/bottom-tab/BottomTab.tsx +392 -392
- package/src/components/button/Button.tsx +154 -154
- package/src/components/challenge/Badges.tsx +84 -84
- package/src/components/challenge/BadgesModal.tsx +166 -166
- package/src/components/challenge/Challenge.tsx +380 -380
- package/src/components/challenge/ChallengeModal.tsx +231 -231
- package/src/components/challenge/ChallengeVignette.tsx +249 -249
- package/src/components/challenge/ChallengesModal.tsx +243 -243
- package/src/components/challenge/QuizModal.tsx +381 -381
- package/src/components/challenge/ResultModal.tsx +144 -144
- package/src/components/chat/Chat.tsx +928 -928
- package/src/components/collection-calendar/CollectionCalendar.tsx +274 -274
- package/src/components/columns/Columns.tsx +33 -33
- package/src/components/consignes-modal/ConsignesModal.tsx +267 -267
- package/src/components/content-inset/ContentInset.tsx +33 -33
- package/src/components/header/Header.tsx +391 -391
- package/src/components/image/Image.tsx +15 -15
- package/src/components/image/ImageFrame.tsx +102 -102
- package/src/components/image/ImageMedia.tsx +31 -31
- package/src/components/image/ImageUrl.tsx +30 -30
- package/src/components/locations-map/LocationSheet.tsx +417 -417
- package/src/components/locations-map/LocationsMap.native.tsx +260 -260
- package/src/components/locations-map/LocationsMap.tsx +13 -13
- package/src/components/locations-map/LocationsMap.web.tsx +10 -10
- package/src/components/locations-map/LocationsMapShell.tsx +527 -527
- package/src/components/locations-map/LocationsMapView.tsx +108 -108
- package/src/components/locations-map/LocationsMapView.web.tsx +331 -331
- package/src/components/nav-button/NavButton.tsx +59 -59
- package/src/components/next-collection/NextCollection.tsx +636 -621
- package/src/components/notifications/NotificationsScreen.tsx +247 -247
- package/src/components/page/Page.tsx +102 -64
- package/src/components/parapraph/Paragraph.tsx +67 -67
- package/src/components/profile/ProfileScreen.tsx +236 -236
- package/src/components/recycling-info/RecyclingInfo.tsx +189 -189
- package/src/components/safe-area/OptionalSafeAreaProvider.tsx +17 -17
- package/src/components/search/Search.tsx +320 -320
- package/src/components/select-street-modal/SelectStreetModal.tsx +475 -475
- package/src/components/title/Title.tsx +100 -100
- package/src/components/vision/Vision.tsx +447 -447
- package/src/components/vision/VisionActionCard.tsx +117 -117
- package/src/components/vision/VisionCapture.tsx +30 -30
- package/src/components/vision/VisionTapOverlay.tsx +122 -122
- package/src/contexts/AnnouncementsContext.tsx +171 -171
- package/src/contexts/AppDataContext.tsx +458 -0
- package/src/contexts/ChallengesContext.tsx +182 -182
- package/src/contexts/LocalContext.tsx +227 -227
- package/src/contexts/ThemeContext.tsx +37 -37
- package/src/contexts/WastoContext.tsx +130 -127
- package/src/helpers/blogPost.ts +72 -72
- package/src/helpers/generateQuizQuestions.ts +247 -247
- package/src/helpers/getContrastColor.ts +18 -18
- package/src/helpers/haptics.ts +20 -20
- package/src/helpers/hoursSchedule.ts +230 -230
- package/src/helpers/htmlContentToMarkdown.ts +114 -114
- package/src/helpers/layout.ts +54 -54
- package/src/helpers/loadLinearGradient.ts +22 -22
- package/src/helpers/mapLocations.ts +170 -0
- package/src/helpers/maquetteTheme.ts +76 -76
- package/src/helpers/markdownUnderlinePlugin.ts +32 -32
- package/src/helpers/nextCollection.ts +122 -0
- package/src/helpers/normalizeWasteTypeRecyclingInfo.ts +80 -80
- package/src/helpers/publicMediaUrl.ts +8 -8
- package/src/helpers/resolveApiAssetUrl.ts +21 -21
- package/src/helpers/systemRoutes.ts +7 -7
- package/src/helpers/themeStyles.ts +114 -114
- package/src/helpers/ttlCache.ts +41 -0
- package/src/helpers/useSafeAreaPadding.ts +14 -14
- package/src/hooks/useBadges.ts +100 -100
- package/src/hooks/useBlogPosts.ts +109 -105
- package/src/hooks/useChallenges.ts +110 -110
- package/src/hooks/useCities.ts +56 -56
- package/src/hooks/useCityAnnouncements.ts +118 -118
- package/src/hooks/useCollectionCalendar.ts +421 -421
- package/src/hooks/useColumns.ts +19 -19
- package/src/hooks/useConsignes.ts +62 -62
- package/src/hooks/useLocations.ts +120 -248
- package/src/hooks/useNextCollection.ts +163 -238
- package/src/hooks/useRecyclingInfo.ts +90 -90
- package/src/hooks/useWastoClient.ts +16 -16
- package/src/index.ts +149 -142
- package/src/navigation/NavigationContext.tsx +56 -56
- package/src/sentry/initSentry.ts +120 -120
- package/src/types/Theme.ts +72 -72
- package/src/types/css-modules.d.ts +1 -1
package/src/types/Theme.ts
CHANGED
|
@@ -1,72 +1,72 @@
|
|
|
1
|
-
export type ThemeShadowStyle = {
|
|
2
|
-
shadowColor: string;
|
|
3
|
-
shadowOffset: { width: number; height: number };
|
|
4
|
-
shadowOpacity: number;
|
|
5
|
-
shadowRadius: number;
|
|
6
|
-
elevation: number;
|
|
7
|
-
};
|
|
8
|
-
|
|
9
|
-
/**
|
|
10
|
-
* CMS app theme — edited in console (`config.theme`), injected via WastoProvider.
|
|
11
|
-
* Maquette defaults live in `createMaquetteTheme` / `MAQUETTE_*`; components must
|
|
12
|
-
* read colors/radii from here (no hardcoded brand hex / borderRadius).
|
|
13
|
-
*/
|
|
14
|
-
export type Theme = {
|
|
15
|
-
colors: {
|
|
16
|
-
primary: string;
|
|
17
|
-
onPrimary: string;
|
|
18
|
-
surface: string;
|
|
19
|
-
onSurface: string;
|
|
20
|
-
background: string;
|
|
21
|
-
onBackground: string;
|
|
22
|
-
/** Also used for completed challenges (maquette yellow when customized). */
|
|
23
|
-
success: string;
|
|
24
|
-
onSuccess: string;
|
|
25
|
-
error: string;
|
|
26
|
-
onError: string;
|
|
27
|
-
border: string;
|
|
28
|
-
/** Soft tint of primary (~15–20% alpha). Optional — resolved at runtime if omitted. */
|
|
29
|
-
primarySoft?: string;
|
|
30
|
-
/** Slightly elevated surface (cards on cards). Optional. */
|
|
31
|
-
surfaceElevated?: string;
|
|
32
|
-
/** Secondary / muted text color. Optional — derived from onSurface if omitted. */
|
|
33
|
-
muted?: string;
|
|
34
|
-
gradient: {
|
|
35
|
-
from: string;
|
|
36
|
-
to: string;
|
|
37
|
-
};
|
|
38
|
-
};
|
|
39
|
-
/** Primary corner radius (cards, inputs). */
|
|
40
|
-
radius: number;
|
|
41
|
-
/** Named radii. Optional — derived from `radius` if omitted. */
|
|
42
|
-
radii?: {
|
|
43
|
-
sm: number;
|
|
44
|
-
md: number;
|
|
45
|
-
lg: number;
|
|
46
|
-
pill: number;
|
|
47
|
-
};
|
|
48
|
-
/** Elevation shadows. Optional — sensible defaults if omitted. */
|
|
49
|
-
shadow?: {
|
|
50
|
-
card: ThemeShadowStyle;
|
|
51
|
-
soft: ThemeShadowStyle;
|
|
52
|
-
};
|
|
53
|
-
};
|
|
54
|
-
|
|
55
|
-
/** Fully resolved theme (all optional fields filled). */
|
|
56
|
-
export type ResolvedTheme = Theme & {
|
|
57
|
-
colors: Theme["colors"] & {
|
|
58
|
-
primarySoft: string;
|
|
59
|
-
surfaceElevated: string;
|
|
60
|
-
muted: string;
|
|
61
|
-
};
|
|
62
|
-
radii: {
|
|
63
|
-
sm: number;
|
|
64
|
-
md: number;
|
|
65
|
-
lg: number;
|
|
66
|
-
pill: number;
|
|
67
|
-
};
|
|
68
|
-
shadow: {
|
|
69
|
-
card: ThemeShadowStyle;
|
|
70
|
-
soft: ThemeShadowStyle;
|
|
71
|
-
};
|
|
72
|
-
};
|
|
1
|
+
export type ThemeShadowStyle = {
|
|
2
|
+
shadowColor: string;
|
|
3
|
+
shadowOffset: { width: number; height: number };
|
|
4
|
+
shadowOpacity: number;
|
|
5
|
+
shadowRadius: number;
|
|
6
|
+
elevation: number;
|
|
7
|
+
};
|
|
8
|
+
|
|
9
|
+
/**
|
|
10
|
+
* CMS app theme — edited in console (`config.theme`), injected via WastoProvider.
|
|
11
|
+
* Maquette defaults live in `createMaquetteTheme` / `MAQUETTE_*`; components must
|
|
12
|
+
* read colors/radii from here (no hardcoded brand hex / borderRadius).
|
|
13
|
+
*/
|
|
14
|
+
export type Theme = {
|
|
15
|
+
colors: {
|
|
16
|
+
primary: string;
|
|
17
|
+
onPrimary: string;
|
|
18
|
+
surface: string;
|
|
19
|
+
onSurface: string;
|
|
20
|
+
background: string;
|
|
21
|
+
onBackground: string;
|
|
22
|
+
/** Also used for completed challenges (maquette yellow when customized). */
|
|
23
|
+
success: string;
|
|
24
|
+
onSuccess: string;
|
|
25
|
+
error: string;
|
|
26
|
+
onError: string;
|
|
27
|
+
border: string;
|
|
28
|
+
/** Soft tint of primary (~15–20% alpha). Optional — resolved at runtime if omitted. */
|
|
29
|
+
primarySoft?: string;
|
|
30
|
+
/** Slightly elevated surface (cards on cards). Optional. */
|
|
31
|
+
surfaceElevated?: string;
|
|
32
|
+
/** Secondary / muted text color. Optional — derived from onSurface if omitted. */
|
|
33
|
+
muted?: string;
|
|
34
|
+
gradient: {
|
|
35
|
+
from: string;
|
|
36
|
+
to: string;
|
|
37
|
+
};
|
|
38
|
+
};
|
|
39
|
+
/** Primary corner radius (cards, inputs). */
|
|
40
|
+
radius: number;
|
|
41
|
+
/** Named radii. Optional — derived from `radius` if omitted. */
|
|
42
|
+
radii?: {
|
|
43
|
+
sm: number;
|
|
44
|
+
md: number;
|
|
45
|
+
lg: number;
|
|
46
|
+
pill: number;
|
|
47
|
+
};
|
|
48
|
+
/** Elevation shadows. Optional — sensible defaults if omitted. */
|
|
49
|
+
shadow?: {
|
|
50
|
+
card: ThemeShadowStyle;
|
|
51
|
+
soft: ThemeShadowStyle;
|
|
52
|
+
};
|
|
53
|
+
};
|
|
54
|
+
|
|
55
|
+
/** Fully resolved theme (all optional fields filled). */
|
|
56
|
+
export type ResolvedTheme = Theme & {
|
|
57
|
+
colors: Theme["colors"] & {
|
|
58
|
+
primarySoft: string;
|
|
59
|
+
surfaceElevated: string;
|
|
60
|
+
muted: string;
|
|
61
|
+
};
|
|
62
|
+
radii: {
|
|
63
|
+
sm: number;
|
|
64
|
+
md: number;
|
|
65
|
+
lg: number;
|
|
66
|
+
pill: number;
|
|
67
|
+
};
|
|
68
|
+
shadow: {
|
|
69
|
+
card: ThemeShadowStyle;
|
|
70
|
+
soft: ThemeShadowStyle;
|
|
71
|
+
};
|
|
72
|
+
};
|
|
@@ -1 +1 @@
|
|
|
1
|
-
declare module "maplibre-gl/dist/maplibre-gl.css";
|
|
1
|
+
declare module "maplibre-gl/dist/maplibre-gl.css";
|