@veevarts/design-system 1.6.0-dev.6 → 1.6.0-dev.8
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 +34 -1
- package/dist/index.cjs +10 -10
- package/dist/index.d.ts +2 -0
- package/dist/index.js +3247 -2592
- package/dist/patterns/ItemCard/ItemCard.d.ts +3 -0
- package/dist/patterns/ItemCard/__test__/ItemCard.test.d.ts +4 -0
- package/dist/patterns/ItemCard/index.d.ts +2 -0
- package/dist/patterns/ItemCard/type.d.ts +14 -0
- package/dist/patterns/MembershipSelectCards/MembershipSelectCards.d.ts +3 -0
- package/dist/patterns/MembershipSelectCards/__test__/MembershipSelectCards.test.d.ts +4 -0
- package/dist/patterns/MembershipSelectCards/index.d.ts +2 -0
- package/dist/patterns/MembershipSelectCards/types.d.ts +23 -0
- package/dist/patterns/RichText/toolbar/components/LinkButton.d.ts +6 -0
- package/dist/patterns/RichText/toolbar/components/index.d.ts +2 -0
- package/dist/patterns/TicketSelection/TicketSelection.d.ts +3 -0
- package/dist/patterns/TicketSelection/__test__/TicketSelection.test.d.ts +4 -0
- package/dist/patterns/TicketSelection/index.d.ts +2 -0
- package/dist/patterns/TicketSelection/types.d.ts +48 -0
- package/dist/patterns/Toggle/Toggle.d.ts +3 -0
- package/dist/patterns/Toggle/__test__/Toggle.test.d.ts +4 -0
- package/dist/patterns/Toggle/index.d.ts +2 -0
- package/dist/patterns/Toggle/type.d.ts +7 -0
- package/dist/patterns/index.d.ts +8 -0
- package/dist/styles.css +98 -0
- package/dist/tailwind/index.d.ts +6 -9
- package/dist/tailwind/index.js +6 -0
- package/package.json +3 -3
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
export interface ItemCardProps {
|
|
2
|
+
/**
|
|
3
|
+
* Selection key. Pass as `itemKey` in JSX (React reserves `key` and does not forward it).
|
|
4
|
+
*/
|
|
5
|
+
itemKey: string;
|
|
6
|
+
name: string;
|
|
7
|
+
price: number;
|
|
8
|
+
locale?: string;
|
|
9
|
+
currency?: string;
|
|
10
|
+
type?: string;
|
|
11
|
+
isSelected?: boolean;
|
|
12
|
+
onSelect?: (key: string) => void;
|
|
13
|
+
className?: string;
|
|
14
|
+
}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
export interface MembershipSelectCardsProps {
|
|
2
|
+
/** Card list; use [] or omit when data is loading (null/undefined is normalized to []). */
|
|
3
|
+
cards?: MembershipSelectCard[] | null;
|
|
4
|
+
locale?: string;
|
|
5
|
+
currency?: string;
|
|
6
|
+
labels?: Partial<MembershipSelectCardsLabels>;
|
|
7
|
+
showRenewal?: boolean;
|
|
8
|
+
defaultRenewalValue?: boolean;
|
|
9
|
+
onRenewalChange?: (value: boolean) => void;
|
|
10
|
+
onCardSelect?: (id: string) => void;
|
|
11
|
+
className?: string;
|
|
12
|
+
}
|
|
13
|
+
export interface MembershipSelectCardsLabels {
|
|
14
|
+
title: string;
|
|
15
|
+
renewalTitle: string;
|
|
16
|
+
renewalDescription: string;
|
|
17
|
+
}
|
|
18
|
+
export interface MembershipSelectCard {
|
|
19
|
+
id: string;
|
|
20
|
+
name: string;
|
|
21
|
+
price: number;
|
|
22
|
+
type?: 'Family' | 'Individual';
|
|
23
|
+
}
|
|
@@ -15,3 +15,5 @@ export { ColorPicker } from './ColorPicker';
|
|
|
15
15
|
export type { ColorPickerProps } from './ColorPicker';
|
|
16
16
|
export { ZoomControls } from './ZoomControls';
|
|
17
17
|
export type { ZoomControlsProps } from './ZoomControls';
|
|
18
|
+
export { LinkButton } from './LinkButton';
|
|
19
|
+
export type { LinkButtonProps } from './LinkButton';
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
export type TicketSelectionSettings = {
|
|
2
|
+
locale: string;
|
|
3
|
+
currency: string;
|
|
4
|
+
};
|
|
5
|
+
export type TicketSelectionLabels = {
|
|
6
|
+
ticketSelectionTitle: string;
|
|
7
|
+
ticketsAllowedToRedeem: string;
|
|
8
|
+
ticketsSelectedToRedeem: string;
|
|
9
|
+
noUpgradeTicketsAvailable: string;
|
|
10
|
+
selectAllButtonLabel: string;
|
|
11
|
+
};
|
|
12
|
+
export type TicketData = {
|
|
13
|
+
id: string;
|
|
14
|
+
name: string;
|
|
15
|
+
price: number;
|
|
16
|
+
originalPrice: number;
|
|
17
|
+
max: number;
|
|
18
|
+
};
|
|
19
|
+
export type ExhibitionData = {
|
|
20
|
+
id: string;
|
|
21
|
+
exhibitionName: string;
|
|
22
|
+
tickets: TicketData[];
|
|
23
|
+
};
|
|
24
|
+
export type TicketSelectionState = {
|
|
25
|
+
[groupId: string]: {
|
|
26
|
+
[ticketId: string]: {
|
|
27
|
+
id: string;
|
|
28
|
+
selectedQuantity: number;
|
|
29
|
+
originalPrice: number;
|
|
30
|
+
discountedPrice: number;
|
|
31
|
+
};
|
|
32
|
+
};
|
|
33
|
+
};
|
|
34
|
+
export type TicketSelectionData = ExhibitionData[];
|
|
35
|
+
export interface TicketSelectionProps {
|
|
36
|
+
/** Maximum number of tickets the user can select globally */
|
|
37
|
+
userMaxLimit?: number;
|
|
38
|
+
/** Labels for internationalization */
|
|
39
|
+
labels?: Partial<TicketSelectionLabels>;
|
|
40
|
+
/** Regional settings for locale and currency formatting */
|
|
41
|
+
settings?: TicketSelectionSettings;
|
|
42
|
+
/** Exhibition and ticket data */
|
|
43
|
+
ticketSelectionData?: TicketSelectionData;
|
|
44
|
+
/** Additional CSS classes for the root element */
|
|
45
|
+
className?: string;
|
|
46
|
+
/** Callback fired whenever the ticket selection state changes */
|
|
47
|
+
onSelectionChange?: (state: TicketSelectionState) => void;
|
|
48
|
+
}
|
package/dist/patterns/index.d.ts
CHANGED
|
@@ -17,3 +17,11 @@ export { OfferCard, OfferCardList, OfferCardSkeleton, OfferCardError, OfferCardE
|
|
|
17
17
|
export type { Offer, OfferSelection, OfferCardLabels, OfferCardErrorLabels, OfferCardClassNames, OfferCardListClassNames, OfferCardSkeletonClassNames, OfferCardErrorClassNames, OfferCardEmptyClassNames, OfferCardSlots, OfferCardProps, OfferCardListProps, OfferCardSkeletonProps, OfferCardErrorProps, OfferCardEmptyProps, } from './OfferCard';
|
|
18
18
|
export { RevenueDistributionCard, RevenueDistributionSkeleton, RevenueDistributionError, RevenueDistributionEmpty, formatAmount as formatRevenueAmount, formatCurrency as formatRevenueCurrency, getCurrencySymbol, parseCurrency as parseRevenueCurrency, calculateAllocationDifference, generateDistributionId, } from './RevenueDistribution';
|
|
19
19
|
export type { GlAccount, Distribution, RevenueDistributionLabels, RevenueDistributionErrorLabels, RevenueDistributionEmptyLabels, RevenueDistributionCardClassNames, RevenueDistributionSkeletonClassNames, RevenueDistributionErrorClassNames, RevenueDistributionEmptyClassNames, RevenueDistributionCardProps, RevenueDistributionSkeletonProps, RevenueDistributionErrorProps, RevenueDistributionEmptyProps, } from './RevenueDistribution';
|
|
20
|
+
export { MembershipSelectCards } from './MembershipSelectCards';
|
|
21
|
+
export type * from './MembershipSelectCards';
|
|
22
|
+
export { ItemCard } from './ItemCard';
|
|
23
|
+
export type * from './ItemCard';
|
|
24
|
+
export { Toggle } from './Toggle';
|
|
25
|
+
export type * from './Toggle';
|
|
26
|
+
export { TicketSelection } from './TicketSelection';
|
|
27
|
+
export type * from './TicketSelection';
|
package/dist/styles.css
CHANGED
|
@@ -96,3 +96,101 @@
|
|
|
96
96
|
body {
|
|
97
97
|
font-family: var(--font-primary);
|
|
98
98
|
}
|
|
99
|
+
|
|
100
|
+
/**
|
|
101
|
+
* Veevart Design System - Color CSS Variables
|
|
102
|
+
*
|
|
103
|
+
* Generated from src/tokens/colors.ts values.
|
|
104
|
+
* Prefix: --veevart-color-*
|
|
105
|
+
*/
|
|
106
|
+
|
|
107
|
+
:root {
|
|
108
|
+
/* Brand */
|
|
109
|
+
--veevart-color-brand-primary-50: #fef5f1;
|
|
110
|
+
--veevart-color-brand-primary-100: #fde8e0;
|
|
111
|
+
--veevart-color-brand-primary-200: #fbd5c7;
|
|
112
|
+
--veevart-color-brand-primary-300: #f7b79f;
|
|
113
|
+
--veevart-color-brand-primary-400: #f18d68;
|
|
114
|
+
--veevart-color-brand-primary-500: #c14615;
|
|
115
|
+
--veevart-color-brand-primary-600: #a83b11;
|
|
116
|
+
--veevart-color-brand-primary-700: #8b2f0e;
|
|
117
|
+
--veevart-color-brand-primary-800: #73260d;
|
|
118
|
+
--veevart-color-brand-primary-900: #5f210c;
|
|
119
|
+
--veevart-color-brand-primary-default: #c14615;
|
|
120
|
+
|
|
121
|
+
/* Semantic */
|
|
122
|
+
--veevart-color-semantic-secondary: #000000;
|
|
123
|
+
--veevart-color-semantic-success: #057a54;
|
|
124
|
+
--veevart-color-semantic-warning: #f5a524;
|
|
125
|
+
--veevart-color-semantic-danger: #b62214;
|
|
126
|
+
--veevart-color-semantic-info: #2563eb;
|
|
127
|
+
|
|
128
|
+
/* Neutral */
|
|
129
|
+
--veevart-color-neutral-white: #ffffff;
|
|
130
|
+
--veevart-color-neutral-black: #000000;
|
|
131
|
+
--veevart-color-neutral-gray-50: #f9fafb;
|
|
132
|
+
--veevart-color-neutral-gray-100: #f3f4f6;
|
|
133
|
+
--veevart-color-neutral-gray-200: #e5e7eb;
|
|
134
|
+
--veevart-color-neutral-gray-300: #d1d5db;
|
|
135
|
+
--veevart-color-neutral-gray-400: #9ca3af;
|
|
136
|
+
--veevart-color-neutral-gray-500: #6b7280;
|
|
137
|
+
--veevart-color-neutral-gray-600: #4b5563;
|
|
138
|
+
--veevart-color-neutral-gray-700: #374151;
|
|
139
|
+
--veevart-color-neutral-gray-800: #1f2937;
|
|
140
|
+
--veevart-color-neutral-gray-900: #111827;
|
|
141
|
+
|
|
142
|
+
/* Palettes - Secondary */
|
|
143
|
+
--veevart-color-palette-secondary-50: #f9fafb;
|
|
144
|
+
--veevart-color-palette-secondary-100: #f3f4f6;
|
|
145
|
+
--veevart-color-palette-secondary-200: #e5e7eb;
|
|
146
|
+
--veevart-color-palette-secondary-300: #d1d5db;
|
|
147
|
+
--veevart-color-palette-secondary-400: #9ca3af;
|
|
148
|
+
--veevart-color-palette-secondary-500: #000000;
|
|
149
|
+
--veevart-color-palette-secondary-600: #000000;
|
|
150
|
+
--veevart-color-palette-secondary-700: #000000;
|
|
151
|
+
--veevart-color-palette-secondary-800: #000000;
|
|
152
|
+
--veevart-color-palette-secondary-900: #000000;
|
|
153
|
+
--veevart-color-palette-secondary-default: #000000;
|
|
154
|
+
|
|
155
|
+
/* Palettes - Danger */
|
|
156
|
+
--veevart-color-palette-danger-50: #fef2f2;
|
|
157
|
+
--veevart-color-palette-danger-100: #fee2e2;
|
|
158
|
+
--veevart-color-palette-danger-200: #fecaca;
|
|
159
|
+
--veevart-color-palette-danger-300: #fca5a5;
|
|
160
|
+
--veevart-color-palette-danger-400: #f87171;
|
|
161
|
+
--veevart-color-palette-danger-500: #b62214;
|
|
162
|
+
--veevart-color-palette-danger-600: #a31e12;
|
|
163
|
+
--veevart-color-palette-danger-700: #8b1a0f;
|
|
164
|
+
--veevart-color-palette-danger-800: #73160d;
|
|
165
|
+
--veevart-color-palette-danger-900: #5c120a;
|
|
166
|
+
--veevart-color-palette-danger-default: #b62214;
|
|
167
|
+
|
|
168
|
+
/* Palettes - Success */
|
|
169
|
+
--veevart-color-palette-success-50: #ecfdf5;
|
|
170
|
+
--veevart-color-palette-success-100: #d1fae5;
|
|
171
|
+
--veevart-color-palette-success-200: #a7f3d0;
|
|
172
|
+
--veevart-color-palette-success-300: #6ee7b7;
|
|
173
|
+
--veevart-color-palette-success-400: #34d399;
|
|
174
|
+
--veevart-color-palette-success-500: #057a54;
|
|
175
|
+
--veevart-color-palette-success-600: #046c4a;
|
|
176
|
+
--veevart-color-palette-success-700: #035e40;
|
|
177
|
+
--veevart-color-palette-success-800: #025035;
|
|
178
|
+
--veevart-color-palette-success-900: #01422b;
|
|
179
|
+
--veevart-color-palette-success-default: #057a54;
|
|
180
|
+
|
|
181
|
+
/* Palettes - Warning */
|
|
182
|
+
--veevart-color-palette-warning-50: #fffbeb;
|
|
183
|
+
--veevart-color-palette-warning-100: #fef3c7;
|
|
184
|
+
--veevart-color-palette-warning-200: #fde68a;
|
|
185
|
+
--veevart-color-palette-warning-300: #fcd34d;
|
|
186
|
+
--veevart-color-palette-warning-400: #fbbf24;
|
|
187
|
+
--veevart-color-palette-warning-500: #f5a524;
|
|
188
|
+
--veevart-color-palette-warning-600: #d97706;
|
|
189
|
+
--veevart-color-palette-warning-700: #b45309;
|
|
190
|
+
--veevart-color-palette-warning-800: #92400e;
|
|
191
|
+
--veevart-color-palette-warning-900: #78350f;
|
|
192
|
+
--veevart-color-palette-warning-default: #f5a524;
|
|
193
|
+
|
|
194
|
+
/* Aliases */
|
|
195
|
+
--veevart-base-color-white: var(--veevart-color-neutral-white);
|
|
196
|
+
}
|
package/dist/tailwind/index.d.ts
CHANGED
|
@@ -230,19 +230,16 @@ export declare const defaultHeroUITheme: {
|
|
|
230
230
|
* });
|
|
231
231
|
*/
|
|
232
232
|
export declare function createHeroUIConfig(overrides?: HeroUIConfigOverrides): HeroUIConfig;
|
|
233
|
+
/**
|
|
234
|
+
* Content paths for Tailwind to scan for classes
|
|
235
|
+
* Includes HeroUI theme and Design System components
|
|
236
|
+
*/
|
|
237
|
+
export declare const veevartContent: string[];
|
|
233
238
|
/**
|
|
234
239
|
* Veevart Design System Tailwind preset
|
|
235
240
|
*
|
|
236
241
|
* Use this preset in your tailwind.config.js to get all Veevart tokens
|
|
237
|
-
* and styling defaults.
|
|
238
|
-
*
|
|
239
|
-
* @example
|
|
240
|
-
* const { veevartPreset } = require('@veevarts/design-system/tailwind');
|
|
241
|
-
*
|
|
242
|
-
* module.exports = {
|
|
243
|
-
* presets: [veevartPreset],
|
|
244
|
-
* content: [...],
|
|
245
|
-
* };
|
|
242
|
+
* and styling defaults. Use veevartContent in your content array.
|
|
246
243
|
*/
|
|
247
244
|
export declare const veevartPreset: {
|
|
248
245
|
theme: {
|
package/dist/tailwind/index.js
CHANGED
|
@@ -29,6 +29,7 @@ __export(index_exports, {
|
|
|
29
29
|
tailwindTheme: () => tailwindTheme,
|
|
30
30
|
tokens: () => tokens,
|
|
31
31
|
typography: () => typography,
|
|
32
|
+
veevartContent: () => veevartContent,
|
|
32
33
|
veevartPreset: () => veevartPreset
|
|
33
34
|
});
|
|
34
35
|
module.exports = __toCommonJS(index_exports);
|
|
@@ -266,6 +267,10 @@ function createHeroUIConfig(overrides = {}) {
|
|
|
266
267
|
}
|
|
267
268
|
return baseConfig;
|
|
268
269
|
}
|
|
270
|
+
var veevartContent = [
|
|
271
|
+
"./node_modules/@heroui/theme/dist/**/*.{js,ts,jsx,tsx}",
|
|
272
|
+
"./node_modules/@veevarts/design-system/dist/**/*.{js,mjs,jsx,tsx}"
|
|
273
|
+
];
|
|
269
274
|
var veevartPreset = {
|
|
270
275
|
theme: {
|
|
271
276
|
extend: tailwindTheme
|
|
@@ -289,5 +294,6 @@ var tokens = {
|
|
|
289
294
|
tailwindTheme,
|
|
290
295
|
tokens,
|
|
291
296
|
typography,
|
|
297
|
+
veevartContent,
|
|
292
298
|
veevartPreset
|
|
293
299
|
});
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@veevarts/design-system",
|
|
3
3
|
"private": false,
|
|
4
|
-
"version": "1.6.0-dev.
|
|
4
|
+
"version": "1.6.0-dev.8",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "dist/index.js",
|
|
7
7
|
"module": "dist/index.js",
|
|
@@ -28,7 +28,7 @@
|
|
|
28
28
|
"dev": "vite",
|
|
29
29
|
"build": "vite build && npm run build:tailwind && npm run build:styles",
|
|
30
30
|
"build:tailwind": "esbuild src/tailwind/index.ts --bundle --platform=node --format=cjs --outfile=dist/tailwind/index.js && tsc -p src/tailwind/tsconfig.json",
|
|
31
|
-
"build:styles": "
|
|
31
|
+
"build:styles": "node scripts/build-styles.mjs",
|
|
32
32
|
"lint": "eslint .",
|
|
33
33
|
"preview": "vite preview",
|
|
34
34
|
"test": "vitest --run",
|
|
@@ -118,4 +118,4 @@
|
|
|
118
118
|
"vite": "^7.2.4",
|
|
119
119
|
"vitest": "^4.0.13"
|
|
120
120
|
}
|
|
121
|
-
}
|
|
121
|
+
}
|