@datum-cloud/datum-ui 0.1.0 → 0.2.0-alpha.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.
Files changed (60) hide show
  1. package/dist/chunk-CtajNgzt.mjs +36 -0
  2. package/dist/close.icon-DgjsP0sw.mjs +23 -0
  3. package/dist/close.icon-DgjsP0sw.mjs.map +1 -0
  4. package/dist/components/index.d.mts +27 -0
  5. package/dist/components/index.d.mts.map +1 -0
  6. package/dist/components/index.mjs +252 -0
  7. package/dist/components/index.mjs.map +1 -0
  8. package/dist/datum.provider-CsG2KNNc.d.mts +30 -0
  9. package/dist/datum.provider-CsG2KNNc.d.mts.map +1 -0
  10. package/dist/datum.provider-D6VMjSV0.mjs +38 -0
  11. package/dist/datum.provider-D6VMjSV0.mjs.map +1 -0
  12. package/dist/fonts/AllianceNo1-Medium.ttf +0 -0
  13. package/dist/fonts/AllianceNo1-Regular.ttf +0 -0
  14. package/dist/fonts/AllianceNo1-SemiBold.ttf +0 -0
  15. package/dist/fonts/FTRegolaNeue-Medium.woff2 +0 -0
  16. package/dist/fonts/FTRegolaNeue-Regular.woff2 +0 -0
  17. package/dist/fonts/FTRegolaNeue-Semibold.woff2 +0 -0
  18. package/dist/hooks/index.d.mts +3 -0
  19. package/dist/hooks/index.mjs +5 -0
  20. package/dist/icon-wrapper-BTllM5Re.mjs +62 -0
  21. package/dist/icon-wrapper-BTllM5Re.mjs.map +1 -0
  22. package/dist/icons/index.d.mts +3 -0
  23. package/dist/icons/index.mjs +5 -0
  24. package/dist/index-DH2XEEjO.d.mts +3995 -0
  25. package/dist/index-DH2XEEjO.d.mts.map +1 -0
  26. package/dist/index.d.mts +29 -50
  27. package/dist/index.d.mts.map +1 -0
  28. package/dist/index.mjs +251 -3479
  29. package/dist/index.mjs.map +1 -0
  30. package/dist/providers/index.d.mts +3 -0
  31. package/dist/providers/index.mjs +4 -0
  32. package/dist/spinner.icon-q9zisVlw.d.mts +46 -0
  33. package/dist/spinner.icon-q9zisVlw.d.mts.map +1 -0
  34. package/dist/style.css +7096 -0
  35. package/dist/style.css.map +1 -0
  36. package/dist/theme-script-B_TkiYs4.mjs +8841 -0
  37. package/dist/theme-script-B_TkiYs4.mjs.map +1 -0
  38. package/dist/theme.provider-DpFLwtHe.mjs +135 -0
  39. package/dist/theme.provider-DpFLwtHe.mjs.map +1 -0
  40. package/dist/types-BoL47uxV.d.mts +34 -0
  41. package/dist/types-BoL47uxV.d.mts.map +1 -0
  42. package/dist/use-copy-to-clipboard-D5U8bWsn.mjs +117 -0
  43. package/dist/use-copy-to-clipboard-D5U8bWsn.mjs.map +1 -0
  44. package/dist/use-debounce-BYB-jPeX.mjs +25 -0
  45. package/dist/use-debounce-BYB-jPeX.mjs.map +1 -0
  46. package/dist/use-debounce-Dg9zNz9U.d.mts +19 -0
  47. package/dist/use-debounce-Dg9zNz9U.d.mts.map +1 -0
  48. package/dist/utils/index.d.mts +3 -0
  49. package/dist/utils/index.mjs +4 -0
  50. package/package.json +129 -50
  51. package/LICENSE +0 -21
  52. package/README.md +0 -42
  53. package/dist/index.d.ts +0 -52
  54. package/dist/index.js +0 -3529
  55. package/src/styles/custom.css +0 -27
  56. package/src/styles/fonts.css +0 -51
  57. package/src/styles/root.css +0 -28
  58. package/src/styles/themes/alpha.css +0 -421
  59. package/src/styles/tokens/brand-tokens.css +0 -57
  60. package/src/styles/tokens/figma-tokens.css +0 -624
package/dist/index.mjs CHANGED
@@ -1,3489 +1,261 @@
1
- var __defProp = Object.defineProperty;
2
- var __defProps = Object.defineProperties;
3
- var __getOwnPropDescs = Object.getOwnPropertyDescriptors;
4
- var __getOwnPropSymbols = Object.getOwnPropertySymbols;
5
- var __hasOwnProp = Object.prototype.hasOwnProperty;
6
- var __propIsEnum = Object.prototype.propertyIsEnumerable;
7
- var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
8
- var __spreadValues = (a, b) => {
9
- for (var prop in b || (b = {}))
10
- if (__hasOwnProp.call(b, prop))
11
- __defNormalProp(a, prop, b[prop]);
12
- if (__getOwnPropSymbols)
13
- for (var prop of __getOwnPropSymbols(b)) {
14
- if (__propIsEnum.call(b, prop))
15
- __defNormalProp(a, prop, b[prop]);
16
- }
17
- return a;
18
- };
19
- var __spreadProps = (a, b) => __defProps(a, __getOwnPropDescs(b));
20
- var __objRest = (source, exclude) => {
21
- var target = {};
22
- for (var prop in source)
23
- if (__hasOwnProp.call(source, prop) && exclude.indexOf(prop) < 0)
24
- target[prop] = source[prop];
25
- if (source != null && __getOwnPropSymbols)
26
- for (var prop of __getOwnPropSymbols(source)) {
27
- if (exclude.indexOf(prop) < 0 && __propIsEnum.call(source, prop))
28
- target[prop] = source[prop];
29
- }
30
- return target;
31
- };
1
+ import './style.css';
2
+ import { n as __reExport, t as __exportAll } from "./chunk-CtajNgzt.mjs";
3
+ import { $ as SidebarGroupAction, $n as SheetClose, $t as FormSwitch, A as TaskPanel, An as DropdownMenuPortal, Ar as CalendarDayButton, At as getGutter, B as TaskQueueProvider, Bn as AvatarStack, Bt as useFormContext, C as localInputStringToUtc, Cn as DropzoneEmptyState, Cr as Card, Ct as startProgress, D as TaskQueueDropdown, Dn as DropdownMenuGroup, Dr as CardHeader, Dt as Col, E as zonedDateToUtcString, En as DropdownMenuContent, Er as CardFooter, Et as InputNumber, F as getContextLabel, Fn as DropdownMenuSub, Fr as badgeVariants, Ft as GRID_PREFIX, G as createOrgMetadata, Gn as Textarea, Gt as StepperControls, H as detectStorage, Hn as Autocomplete, Ht as useField, I as matchesCurrentScope, In as DropdownMenuSubContent, Ir as Alert, It as RESPONSIVE_ARRAY, J as TagsInput, Jn as TabsLinkTrigger, Jt as defineStepper, K as createProjectMetadata, Kn as Tabs, Kt as FormStep, L as useCurrentScope, Ln as DropdownMenuSubTrigger, Lr as AlertDescription, Lt as RESPONSIVE_MAP, M as TaskPanelCounter, Mn as DropdownMenuRadioItem, Mr as Button, Mt as registerMediaQuery, N as TaskPanelActions, Nn as DropdownMenuSeparator, Nr as buttonVariants, Nt as GRID_BREAKPOINTS, O as TaskSummaryDialog, On as DropdownMenuItem, Or as CardTitle, Ot as Row, P as TaskPanelHeader, Pn as DropdownMenuShortcut, Pr as Badge, Pt as GRID_COLUMNS, Q as SidebarGroup, Qn as Sheet, Qt as FormTextarea, R as useTasksWithLabels, Rn as DropdownMenuTrigger, Rr as AlertTitle, Rt as Form, S as getTimezoneOffset, Sn as DropzoneContent, Sr as Checkbox, St as configureProgress, T as utcToLocalInputString, Tn as DropdownMenuCheckboxItem, Tr as CardDescription, Tt as MoreActions, U as RedisTaskStorage, Un as LoaderOverlay, Ut as InputWithAddons, V as TaskQueue, Vn as avatarStackVariants, Vt as useFieldContext, W as LocalTaskStorage, Wn as Tooltip, Wt as StepperNavigation, X as SidebarContent, Xn as TabsTrigger, Xt as useWatch, Y as Sidebar, Yn as TabsList, Yt as FormWhen, Z as SidebarFooter, Zn as Switch, Zt as useWatchAll, _ as formatTimezoneLabel, _n as FormButton, _r as RadioGroup, _t as SidebarTrigger, a as formatDateForInput, an as FormRadioItem, ar as SheetTitle, at as SidebarMenu, b as getDefaultTimezoneOptions, bn as EmptyContent, br as Input, bt as NavMain, c as DEFAULT_PRESETS, cn as FormField, cr as SelectContent, ct as SidebarMenuButton, d as getPresetByShortcut, dn as FormDescription, dr as SelectLabel, dt as SidebarMenuSub, en as FormSubmit, er as SheetContent, et as SidebarGroupContent, f as getPresetRange, fn as FormCustom, fr as SelectScrollDownButton, ft as SidebarMenuSubButton, g as createTimezoneOption, gn as FormCheckbox, gr as SelectValue, gt as SidebarSeparator, h as CustomRangePanel, hn as Toaster, hr as SelectTrigger, ht as SidebarRail, i as TimeRangePicker, in as FormRadioGroup, ir as SheetOverlay, it as SidebarInset, j as TaskPanelItem, jn as DropdownMenuRadioGroup, jr as LinkButton, jt as getResponsiveValue, k as TaskQueueTrigger, kn as DropdownMenuLabel, kr as Calendar, kt as RowContext, l as getDefaultPreset, ln as FormError, lr as SelectGroup, lt as SidebarMenuItem, m as QuickRangesPanel, mn as useToast, mr as SelectSeparator, mt as SidebarProvider, n as ClientOnly, nn as FormSelectItem, nr as SheetFooter, nt as SidebarHeader, o as formatSingleTimeDisplay, on as FormInput, or as SheetTrigger, ot as SidebarMenuAction, p as TimezoneSelector, pn as FormCopyBox, pr as SelectScrollUpButton, pt as SidebarMenuSubItem, q as createUserMetadata, qn as TabsContent, qt as FormStepper, r as toApiTimeRange, rn as FormRoot, rr as SheetHeader, rt as SidebarInput, s as formatTimeRangeDisplay, sn as FormFieldArray, sr as Select, st as SidebarMenuBadge, t as ThemeScript, tn as FormSelect, tr as SheetDescription, tt as SidebarGroupLabel, u as getPresetByKey, un as FormDialog, ur as SelectItem, ut as SidebarMenuSkeleton, v as formatUtcForDisplay, vn as FormAutocomplete, vr as RadioGroupItem, vt as useSidebar, w as utcStringToZonedDate, wn as DropdownMenu, wr as CardContent, wt as stopProgress, x as getShortTimezoneDisplay, xn as Dropzone, xr as Dialog, xt as PageTitle, y as getBrowserTimezone, yn as FileInputButton, yr as Label, yt as AppSidebar, z as useTaskQueue, zn as CalendarDatePicker, zt as useStepper } from "./theme-script-B_TkiYs4.mjs";
4
+ import { n as SpinnerIcon, t as Icon } from "./icon-wrapper-BTllM5Re.mjs";
5
+ import { t as CloseIcon } from "./close.icon-DgjsP0sw.mjs";
6
+ import { n as toast, t as useCopyToClipboard } from "./use-copy-to-clipboard-D5U8bWsn.mjs";
7
+ import { n as useTheme, t as ThemeProvider } from "./theme.provider-DpFLwtHe.mjs";
8
+ import { t as components_exports } from "./components/index.mjs";
9
+ import { t as useDebounce } from "./use-debounce-BYB-jPeX.mjs";
10
+ import { t as DatumProvider } from "./datum.provider-D6VMjSV0.mjs";
11
+ import { cn } from "./utils/index.mjs";
32
12
 
33
- // src/button/button.tsx
34
- import * as React from "react";
13
+ export * from "@repo/shadcn/ui/breadcrumb"
35
14
 
36
- // ../../node_modules/.pnpm/clsx@2.1.1/node_modules/clsx/dist/clsx.mjs
37
- function r(e) {
38
- var t, f, n = "";
39
- if ("string" == typeof e || "number" == typeof e) n += e;
40
- else if ("object" == typeof e) if (Array.isArray(e)) {
41
- var o = e.length;
42
- for (t = 0; t < o; t++) e[t] && (f = r(e[t])) && (n && (n += " "), n += f);
43
- } else for (f in e) e[f] && (n && (n += " "), n += f);
44
- return n;
45
- }
46
- function clsx() {
47
- for (var e, t, f = 0, n = "", o = arguments.length; f < o; f++) (e = arguments[f]) && (t = r(e)) && (n && (n += " "), n += t);
48
- return n;
49
- }
15
+ export * from "@repo/shadcn/ui/button-group"
50
16
 
51
- // ../../node_modules/.pnpm/tailwind-merge@3.4.0/node_modules/tailwind-merge/dist/bundle-mjs.mjs
52
- var concatArrays = (array1, array2) => {
53
- const combinedArray = new Array(array1.length + array2.length);
54
- for (let i = 0; i < array1.length; i++) {
55
- combinedArray[i] = array1[i];
56
- }
57
- for (let i = 0; i < array2.length; i++) {
58
- combinedArray[array1.length + i] = array2[i];
59
- }
60
- return combinedArray;
61
- };
62
- var createClassValidatorObject = (classGroupId, validator) => ({
63
- classGroupId,
64
- validator
65
- });
66
- var createClassPartObject = (nextPart = /* @__PURE__ */ new Map(), validators = null, classGroupId) => ({
67
- nextPart,
68
- validators,
69
- classGroupId
70
- });
71
- var CLASS_PART_SEPARATOR = "-";
72
- var EMPTY_CONFLICTS = [];
73
- var ARBITRARY_PROPERTY_PREFIX = "arbitrary..";
74
- var createClassGroupUtils = (config) => {
75
- const classMap = createClassMap(config);
76
- const {
77
- conflictingClassGroups,
78
- conflictingClassGroupModifiers
79
- } = config;
80
- const getClassGroupId = (className) => {
81
- if (className.startsWith("[") && className.endsWith("]")) {
82
- return getGroupIdForArbitraryProperty(className);
83
- }
84
- const classParts = className.split(CLASS_PART_SEPARATOR);
85
- const startIndex = classParts[0] === "" && classParts.length > 1 ? 1 : 0;
86
- return getGroupRecursive(classParts, startIndex, classMap);
87
- };
88
- const getConflictingClassGroupIds = (classGroupId, hasPostfixModifier) => {
89
- if (hasPostfixModifier) {
90
- const modifierConflicts = conflictingClassGroupModifiers[classGroupId];
91
- const baseConflicts = conflictingClassGroups[classGroupId];
92
- if (modifierConflicts) {
93
- if (baseConflicts) {
94
- return concatArrays(baseConflicts, modifierConflicts);
95
- }
96
- return modifierConflicts;
97
- }
98
- return baseConflicts || EMPTY_CONFLICTS;
99
- }
100
- return conflictingClassGroups[classGroupId] || EMPTY_CONFLICTS;
101
- };
102
- return {
103
- getClassGroupId,
104
- getConflictingClassGroupIds
105
- };
106
- };
107
- var getGroupRecursive = (classParts, startIndex, classPartObject) => {
108
- const classPathsLength = classParts.length - startIndex;
109
- if (classPathsLength === 0) {
110
- return classPartObject.classGroupId;
111
- }
112
- const currentClassPart = classParts[startIndex];
113
- const nextClassPartObject = classPartObject.nextPart.get(currentClassPart);
114
- if (nextClassPartObject) {
115
- const result = getGroupRecursive(classParts, startIndex + 1, nextClassPartObject);
116
- if (result) return result;
117
- }
118
- const validators = classPartObject.validators;
119
- if (validators === null) {
120
- return void 0;
121
- }
122
- const classRest = startIndex === 0 ? classParts.join(CLASS_PART_SEPARATOR) : classParts.slice(startIndex).join(CLASS_PART_SEPARATOR);
123
- const validatorsLength = validators.length;
124
- for (let i = 0; i < validatorsLength; i++) {
125
- const validatorObj = validators[i];
126
- if (validatorObj.validator(classRest)) {
127
- return validatorObj.classGroupId;
128
- }
129
- }
130
- return void 0;
131
- };
132
- var getGroupIdForArbitraryProperty = (className) => className.slice(1, -1).indexOf(":") === -1 ? void 0 : (() => {
133
- const content = className.slice(1, -1);
134
- const colonIndex = content.indexOf(":");
135
- const property = content.slice(0, colonIndex);
136
- return property ? ARBITRARY_PROPERTY_PREFIX + property : void 0;
137
- })();
138
- var createClassMap = (config) => {
139
- const {
140
- theme,
141
- classGroups
142
- } = config;
143
- return processClassGroups(classGroups, theme);
144
- };
145
- var processClassGroups = (classGroups, theme) => {
146
- const classMap = createClassPartObject();
147
- for (const classGroupId in classGroups) {
148
- const group = classGroups[classGroupId];
149
- processClassesRecursively(group, classMap, classGroupId, theme);
150
- }
151
- return classMap;
152
- };
153
- var processClassesRecursively = (classGroup, classPartObject, classGroupId, theme) => {
154
- const len = classGroup.length;
155
- for (let i = 0; i < len; i++) {
156
- const classDefinition = classGroup[i];
157
- processClassDefinition(classDefinition, classPartObject, classGroupId, theme);
158
- }
159
- };
160
- var processClassDefinition = (classDefinition, classPartObject, classGroupId, theme) => {
161
- if (typeof classDefinition === "string") {
162
- processStringDefinition(classDefinition, classPartObject, classGroupId);
163
- return;
164
- }
165
- if (typeof classDefinition === "function") {
166
- processFunctionDefinition(classDefinition, classPartObject, classGroupId, theme);
167
- return;
168
- }
169
- processObjectDefinition(classDefinition, classPartObject, classGroupId, theme);
170
- };
171
- var processStringDefinition = (classDefinition, classPartObject, classGroupId) => {
172
- const classPartObjectToEdit = classDefinition === "" ? classPartObject : getPart(classPartObject, classDefinition);
173
- classPartObjectToEdit.classGroupId = classGroupId;
174
- };
175
- var processFunctionDefinition = (classDefinition, classPartObject, classGroupId, theme) => {
176
- if (isThemeGetter(classDefinition)) {
177
- processClassesRecursively(classDefinition(theme), classPartObject, classGroupId, theme);
178
- return;
179
- }
180
- if (classPartObject.validators === null) {
181
- classPartObject.validators = [];
182
- }
183
- classPartObject.validators.push(createClassValidatorObject(classGroupId, classDefinition));
184
- };
185
- var processObjectDefinition = (classDefinition, classPartObject, classGroupId, theme) => {
186
- const entries = Object.entries(classDefinition);
187
- const len = entries.length;
188
- for (let i = 0; i < len; i++) {
189
- const [key, value] = entries[i];
190
- processClassesRecursively(value, getPart(classPartObject, key), classGroupId, theme);
191
- }
192
- };
193
- var getPart = (classPartObject, path) => {
194
- let current = classPartObject;
195
- const parts = path.split(CLASS_PART_SEPARATOR);
196
- const len = parts.length;
197
- for (let i = 0; i < len; i++) {
198
- const part = parts[i];
199
- let next = current.nextPart.get(part);
200
- if (!next) {
201
- next = createClassPartObject();
202
- current.nextPart.set(part, next);
203
- }
204
- current = next;
205
- }
206
- return current;
207
- };
208
- var isThemeGetter = (func) => "isThemeGetter" in func && func.isThemeGetter === true;
209
- var createLruCache = (maxCacheSize) => {
210
- if (maxCacheSize < 1) {
211
- return {
212
- get: () => void 0,
213
- set: () => {
214
- }
215
- };
216
- }
217
- let cacheSize = 0;
218
- let cache = /* @__PURE__ */ Object.create(null);
219
- let previousCache = /* @__PURE__ */ Object.create(null);
220
- const update = (key, value) => {
221
- cache[key] = value;
222
- cacheSize++;
223
- if (cacheSize > maxCacheSize) {
224
- cacheSize = 0;
225
- previousCache = cache;
226
- cache = /* @__PURE__ */ Object.create(null);
227
- }
228
- };
229
- return {
230
- get(key) {
231
- let value = cache[key];
232
- if (value !== void 0) {
233
- return value;
234
- }
235
- if ((value = previousCache[key]) !== void 0) {
236
- update(key, value);
237
- return value;
238
- }
239
- },
240
- set(key, value) {
241
- if (key in cache) {
242
- cache[key] = value;
243
- } else {
244
- update(key, value);
245
- }
246
- }
247
- };
248
- };
249
- var IMPORTANT_MODIFIER = "!";
250
- var MODIFIER_SEPARATOR = ":";
251
- var EMPTY_MODIFIERS = [];
252
- var createResultObject = (modifiers, hasImportantModifier, baseClassName, maybePostfixModifierPosition, isExternal) => ({
253
- modifiers,
254
- hasImportantModifier,
255
- baseClassName,
256
- maybePostfixModifierPosition,
257
- isExternal
258
- });
259
- var createParseClassName = (config) => {
260
- const {
261
- prefix,
262
- experimentalParseClassName
263
- } = config;
264
- let parseClassName = (className) => {
265
- const modifiers = [];
266
- let bracketDepth = 0;
267
- let parenDepth = 0;
268
- let modifierStart = 0;
269
- let postfixModifierPosition;
270
- const len = className.length;
271
- for (let index = 0; index < len; index++) {
272
- const currentCharacter = className[index];
273
- if (bracketDepth === 0 && parenDepth === 0) {
274
- if (currentCharacter === MODIFIER_SEPARATOR) {
275
- modifiers.push(className.slice(modifierStart, index));
276
- modifierStart = index + 1;
277
- continue;
278
- }
279
- if (currentCharacter === "/") {
280
- postfixModifierPosition = index;
281
- continue;
282
- }
283
- }
284
- if (currentCharacter === "[") bracketDepth++;
285
- else if (currentCharacter === "]") bracketDepth--;
286
- else if (currentCharacter === "(") parenDepth++;
287
- else if (currentCharacter === ")") parenDepth--;
288
- }
289
- const baseClassNameWithImportantModifier = modifiers.length === 0 ? className : className.slice(modifierStart);
290
- let baseClassName = baseClassNameWithImportantModifier;
291
- let hasImportantModifier = false;
292
- if (baseClassNameWithImportantModifier.endsWith(IMPORTANT_MODIFIER)) {
293
- baseClassName = baseClassNameWithImportantModifier.slice(0, -1);
294
- hasImportantModifier = true;
295
- } else if (
296
- /**
297
- * In Tailwind CSS v3 the important modifier was at the start of the base class name. This is still supported for legacy reasons.
298
- * @see https://github.com/dcastil/tailwind-merge/issues/513#issuecomment-2614029864
299
- */
300
- baseClassNameWithImportantModifier.startsWith(IMPORTANT_MODIFIER)
301
- ) {
302
- baseClassName = baseClassNameWithImportantModifier.slice(1);
303
- hasImportantModifier = true;
304
- }
305
- const maybePostfixModifierPosition = postfixModifierPosition && postfixModifierPosition > modifierStart ? postfixModifierPosition - modifierStart : void 0;
306
- return createResultObject(modifiers, hasImportantModifier, baseClassName, maybePostfixModifierPosition);
307
- };
308
- if (prefix) {
309
- const fullPrefix = prefix + MODIFIER_SEPARATOR;
310
- const parseClassNameOriginal = parseClassName;
311
- parseClassName = (className) => className.startsWith(fullPrefix) ? parseClassNameOriginal(className.slice(fullPrefix.length)) : createResultObject(EMPTY_MODIFIERS, false, className, void 0, true);
312
- }
313
- if (experimentalParseClassName) {
314
- const parseClassNameOriginal = parseClassName;
315
- parseClassName = (className) => experimentalParseClassName({
316
- className,
317
- parseClassName: parseClassNameOriginal
318
- });
319
- }
320
- return parseClassName;
321
- };
322
- var createSortModifiers = (config) => {
323
- const modifierWeights = /* @__PURE__ */ new Map();
324
- config.orderSensitiveModifiers.forEach((mod, index) => {
325
- modifierWeights.set(mod, 1e6 + index);
326
- });
327
- return (modifiers) => {
328
- const result = [];
329
- let currentSegment = [];
330
- for (let i = 0; i < modifiers.length; i++) {
331
- const modifier = modifiers[i];
332
- const isArbitrary = modifier[0] === "[";
333
- const isOrderSensitive = modifierWeights.has(modifier);
334
- if (isArbitrary || isOrderSensitive) {
335
- if (currentSegment.length > 0) {
336
- currentSegment.sort();
337
- result.push(...currentSegment);
338
- currentSegment = [];
339
- }
340
- result.push(modifier);
341
- } else {
342
- currentSegment.push(modifier);
343
- }
344
- }
345
- if (currentSegment.length > 0) {
346
- currentSegment.sort();
347
- result.push(...currentSegment);
348
- }
349
- return result;
350
- };
351
- };
352
- var createConfigUtils = (config) => __spreadValues({
353
- cache: createLruCache(config.cacheSize),
354
- parseClassName: createParseClassName(config),
355
- sortModifiers: createSortModifiers(config)
356
- }, createClassGroupUtils(config));
357
- var SPLIT_CLASSES_REGEX = /\s+/;
358
- var mergeClassList = (classList, configUtils) => {
359
- const {
360
- parseClassName,
361
- getClassGroupId,
362
- getConflictingClassGroupIds,
363
- sortModifiers
364
- } = configUtils;
365
- const classGroupsInConflict = [];
366
- const classNames = classList.trim().split(SPLIT_CLASSES_REGEX);
367
- let result = "";
368
- for (let index = classNames.length - 1; index >= 0; index -= 1) {
369
- const originalClassName = classNames[index];
370
- const {
371
- isExternal,
372
- modifiers,
373
- hasImportantModifier,
374
- baseClassName,
375
- maybePostfixModifierPosition
376
- } = parseClassName(originalClassName);
377
- if (isExternal) {
378
- result = originalClassName + (result.length > 0 ? " " + result : result);
379
- continue;
380
- }
381
- let hasPostfixModifier = !!maybePostfixModifierPosition;
382
- let classGroupId = getClassGroupId(hasPostfixModifier ? baseClassName.substring(0, maybePostfixModifierPosition) : baseClassName);
383
- if (!classGroupId) {
384
- if (!hasPostfixModifier) {
385
- result = originalClassName + (result.length > 0 ? " " + result : result);
386
- continue;
387
- }
388
- classGroupId = getClassGroupId(baseClassName);
389
- if (!classGroupId) {
390
- result = originalClassName + (result.length > 0 ? " " + result : result);
391
- continue;
392
- }
393
- hasPostfixModifier = false;
394
- }
395
- const variantModifier = modifiers.length === 0 ? "" : modifiers.length === 1 ? modifiers[0] : sortModifiers(modifiers).join(":");
396
- const modifierId = hasImportantModifier ? variantModifier + IMPORTANT_MODIFIER : variantModifier;
397
- const classId = modifierId + classGroupId;
398
- if (classGroupsInConflict.indexOf(classId) > -1) {
399
- continue;
400
- }
401
- classGroupsInConflict.push(classId);
402
- const conflictGroups = getConflictingClassGroupIds(classGroupId, hasPostfixModifier);
403
- for (let i = 0; i < conflictGroups.length; ++i) {
404
- const group = conflictGroups[i];
405
- classGroupsInConflict.push(modifierId + group);
406
- }
407
- result = originalClassName + (result.length > 0 ? " " + result : result);
408
- }
409
- return result;
410
- };
411
- var twJoin = (...classLists) => {
412
- let index = 0;
413
- let argument;
414
- let resolvedValue;
415
- let string = "";
416
- while (index < classLists.length) {
417
- if (argument = classLists[index++]) {
418
- if (resolvedValue = toValue(argument)) {
419
- string && (string += " ");
420
- string += resolvedValue;
421
- }
422
- }
423
- }
424
- return string;
425
- };
426
- var toValue = (mix) => {
427
- if (typeof mix === "string") {
428
- return mix;
429
- }
430
- let resolvedValue;
431
- let string = "";
432
- for (let k = 0; k < mix.length; k++) {
433
- if (mix[k]) {
434
- if (resolvedValue = toValue(mix[k])) {
435
- string && (string += " ");
436
- string += resolvedValue;
437
- }
438
- }
439
- }
440
- return string;
441
- };
442
- var createTailwindMerge = (createConfigFirst, ...createConfigRest) => {
443
- let configUtils;
444
- let cacheGet;
445
- let cacheSet;
446
- let functionToCall;
447
- const initTailwindMerge = (classList) => {
448
- const config = createConfigRest.reduce((previousConfig, createConfigCurrent) => createConfigCurrent(previousConfig), createConfigFirst());
449
- configUtils = createConfigUtils(config);
450
- cacheGet = configUtils.cache.get;
451
- cacheSet = configUtils.cache.set;
452
- functionToCall = tailwindMerge;
453
- return tailwindMerge(classList);
454
- };
455
- const tailwindMerge = (classList) => {
456
- const cachedResult = cacheGet(classList);
457
- if (cachedResult) {
458
- return cachedResult;
459
- }
460
- const result = mergeClassList(classList, configUtils);
461
- cacheSet(classList, result);
462
- return result;
463
- };
464
- functionToCall = initTailwindMerge;
465
- return (...args) => functionToCall(twJoin(...args));
466
- };
467
- var fallbackThemeArr = [];
468
- var fromTheme = (key) => {
469
- const themeGetter = (theme) => theme[key] || fallbackThemeArr;
470
- themeGetter.isThemeGetter = true;
471
- return themeGetter;
472
- };
473
- var arbitraryValueRegex = /^\[(?:(\w[\w-]*):)?(.+)\]$/i;
474
- var arbitraryVariableRegex = /^\((?:(\w[\w-]*):)?(.+)\)$/i;
475
- var fractionRegex = /^\d+\/\d+$/;
476
- var tshirtUnitRegex = /^(\d+(\.\d+)?)?(xs|sm|md|lg|xl)$/;
477
- var lengthUnitRegex = /\d+(%|px|r?em|[sdl]?v([hwib]|min|max)|pt|pc|in|cm|mm|cap|ch|ex|r?lh|cq(w|h|i|b|min|max))|\b(calc|min|max|clamp)\(.+\)|^0$/;
478
- var colorFunctionRegex = /^(rgba?|hsla?|hwb|(ok)?(lab|lch)|color-mix)\(.+\)$/;
479
- var shadowRegex = /^(inset_)?-?((\d+)?\.?(\d+)[a-z]+|0)_-?((\d+)?\.?(\d+)[a-z]+|0)/;
480
- var imageRegex = /^(url|image|image-set|cross-fade|element|(repeating-)?(linear|radial|conic)-gradient)\(.+\)$/;
481
- var isFraction = (value) => fractionRegex.test(value);
482
- var isNumber = (value) => !!value && !Number.isNaN(Number(value));
483
- var isInteger = (value) => !!value && Number.isInteger(Number(value));
484
- var isPercent = (value) => value.endsWith("%") && isNumber(value.slice(0, -1));
485
- var isTshirtSize = (value) => tshirtUnitRegex.test(value);
486
- var isAny = () => true;
487
- var isLengthOnly = (value) => (
488
- // `colorFunctionRegex` check is necessary because color functions can have percentages in them which which would be incorrectly classified as lengths.
489
- // For example, `hsl(0 0% 0%)` would be classified as a length without this check.
490
- // I could also use lookbehind assertion in `lengthUnitRegex` but that isn't supported widely enough.
491
- lengthUnitRegex.test(value) && !colorFunctionRegex.test(value)
492
- );
493
- var isNever = () => false;
494
- var isShadow = (value) => shadowRegex.test(value);
495
- var isImage = (value) => imageRegex.test(value);
496
- var isAnyNonArbitrary = (value) => !isArbitraryValue(value) && !isArbitraryVariable(value);
497
- var isArbitrarySize = (value) => getIsArbitraryValue(value, isLabelSize, isNever);
498
- var isArbitraryValue = (value) => arbitraryValueRegex.test(value);
499
- var isArbitraryLength = (value) => getIsArbitraryValue(value, isLabelLength, isLengthOnly);
500
- var isArbitraryNumber = (value) => getIsArbitraryValue(value, isLabelNumber, isNumber);
501
- var isArbitraryPosition = (value) => getIsArbitraryValue(value, isLabelPosition, isNever);
502
- var isArbitraryImage = (value) => getIsArbitraryValue(value, isLabelImage, isImage);
503
- var isArbitraryShadow = (value) => getIsArbitraryValue(value, isLabelShadow, isShadow);
504
- var isArbitraryVariable = (value) => arbitraryVariableRegex.test(value);
505
- var isArbitraryVariableLength = (value) => getIsArbitraryVariable(value, isLabelLength);
506
- var isArbitraryVariableFamilyName = (value) => getIsArbitraryVariable(value, isLabelFamilyName);
507
- var isArbitraryVariablePosition = (value) => getIsArbitraryVariable(value, isLabelPosition);
508
- var isArbitraryVariableSize = (value) => getIsArbitraryVariable(value, isLabelSize);
509
- var isArbitraryVariableImage = (value) => getIsArbitraryVariable(value, isLabelImage);
510
- var isArbitraryVariableShadow = (value) => getIsArbitraryVariable(value, isLabelShadow, true);
511
- var getIsArbitraryValue = (value, testLabel, testValue) => {
512
- const result = arbitraryValueRegex.exec(value);
513
- if (result) {
514
- if (result[1]) {
515
- return testLabel(result[1]);
516
- }
517
- return testValue(result[2]);
518
- }
519
- return false;
520
- };
521
- var getIsArbitraryVariable = (value, testLabel, shouldMatchNoLabel = false) => {
522
- const result = arbitraryVariableRegex.exec(value);
523
- if (result) {
524
- if (result[1]) {
525
- return testLabel(result[1]);
526
- }
527
- return shouldMatchNoLabel;
528
- }
529
- return false;
530
- };
531
- var isLabelPosition = (label) => label === "position" || label === "percentage";
532
- var isLabelImage = (label) => label === "image" || label === "url";
533
- var isLabelSize = (label) => label === "length" || label === "size" || label === "bg-size";
534
- var isLabelLength = (label) => label === "length";
535
- var isLabelNumber = (label) => label === "number";
536
- var isLabelFamilyName = (label) => label === "family-name";
537
- var isLabelShadow = (label) => label === "shadow";
538
- var getDefaultConfig = () => {
539
- const themeColor = fromTheme("color");
540
- const themeFont = fromTheme("font");
541
- const themeText = fromTheme("text");
542
- const themeFontWeight = fromTheme("font-weight");
543
- const themeTracking = fromTheme("tracking");
544
- const themeLeading = fromTheme("leading");
545
- const themeBreakpoint = fromTheme("breakpoint");
546
- const themeContainer = fromTheme("container");
547
- const themeSpacing = fromTheme("spacing");
548
- const themeRadius = fromTheme("radius");
549
- const themeShadow = fromTheme("shadow");
550
- const themeInsetShadow = fromTheme("inset-shadow");
551
- const themeTextShadow = fromTheme("text-shadow");
552
- const themeDropShadow = fromTheme("drop-shadow");
553
- const themeBlur = fromTheme("blur");
554
- const themePerspective = fromTheme("perspective");
555
- const themeAspect = fromTheme("aspect");
556
- const themeEase = fromTheme("ease");
557
- const themeAnimate = fromTheme("animate");
558
- const scaleBreak = () => ["auto", "avoid", "all", "avoid-page", "page", "left", "right", "column"];
559
- const scalePosition = () => [
560
- "center",
561
- "top",
562
- "bottom",
563
- "left",
564
- "right",
565
- "top-left",
566
- // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
567
- "left-top",
568
- "top-right",
569
- // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
570
- "right-top",
571
- "bottom-right",
572
- // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
573
- "right-bottom",
574
- "bottom-left",
575
- // Deprecated since Tailwind CSS v4.1.0, see https://github.com/tailwindlabs/tailwindcss/pull/17378
576
- "left-bottom"
577
- ];
578
- const scalePositionWithArbitrary = () => [...scalePosition(), isArbitraryVariable, isArbitraryValue];
579
- const scaleOverflow = () => ["auto", "hidden", "clip", "visible", "scroll"];
580
- const scaleOverscroll = () => ["auto", "contain", "none"];
581
- const scaleUnambiguousSpacing = () => [isArbitraryVariable, isArbitraryValue, themeSpacing];
582
- const scaleInset = () => [isFraction, "full", "auto", ...scaleUnambiguousSpacing()];
583
- const scaleGridTemplateColsRows = () => [isInteger, "none", "subgrid", isArbitraryVariable, isArbitraryValue];
584
- const scaleGridColRowStartAndEnd = () => ["auto", {
585
- span: ["full", isInteger, isArbitraryVariable, isArbitraryValue]
586
- }, isInteger, isArbitraryVariable, isArbitraryValue];
587
- const scaleGridColRowStartOrEnd = () => [isInteger, "auto", isArbitraryVariable, isArbitraryValue];
588
- const scaleGridAutoColsRows = () => ["auto", "min", "max", "fr", isArbitraryVariable, isArbitraryValue];
589
- const scaleAlignPrimaryAxis = () => ["start", "end", "center", "between", "around", "evenly", "stretch", "baseline", "center-safe", "end-safe"];
590
- const scaleAlignSecondaryAxis = () => ["start", "end", "center", "stretch", "center-safe", "end-safe"];
591
- const scaleMargin = () => ["auto", ...scaleUnambiguousSpacing()];
592
- const scaleSizing = () => [isFraction, "auto", "full", "dvw", "dvh", "lvw", "lvh", "svw", "svh", "min", "max", "fit", ...scaleUnambiguousSpacing()];
593
- const scaleColor = () => [themeColor, isArbitraryVariable, isArbitraryValue];
594
- const scaleBgPosition = () => [...scalePosition(), isArbitraryVariablePosition, isArbitraryPosition, {
595
- position: [isArbitraryVariable, isArbitraryValue]
596
- }];
597
- const scaleBgRepeat = () => ["no-repeat", {
598
- repeat: ["", "x", "y", "space", "round"]
599
- }];
600
- const scaleBgSize = () => ["auto", "cover", "contain", isArbitraryVariableSize, isArbitrarySize, {
601
- size: [isArbitraryVariable, isArbitraryValue]
602
- }];
603
- const scaleGradientStopPosition = () => [isPercent, isArbitraryVariableLength, isArbitraryLength];
604
- const scaleRadius = () => [
605
- // Deprecated since Tailwind CSS v4.0.0
606
- "",
607
- "none",
608
- "full",
609
- themeRadius,
610
- isArbitraryVariable,
611
- isArbitraryValue
612
- ];
613
- const scaleBorderWidth = () => ["", isNumber, isArbitraryVariableLength, isArbitraryLength];
614
- const scaleLineStyle = () => ["solid", "dashed", "dotted", "double"];
615
- const scaleBlendMode = () => ["normal", "multiply", "screen", "overlay", "darken", "lighten", "color-dodge", "color-burn", "hard-light", "soft-light", "difference", "exclusion", "hue", "saturation", "color", "luminosity"];
616
- const scaleMaskImagePosition = () => [isNumber, isPercent, isArbitraryVariablePosition, isArbitraryPosition];
617
- const scaleBlur = () => [
618
- // Deprecated since Tailwind CSS v4.0.0
619
- "",
620
- "none",
621
- themeBlur,
622
- isArbitraryVariable,
623
- isArbitraryValue
624
- ];
625
- const scaleRotate = () => ["none", isNumber, isArbitraryVariable, isArbitraryValue];
626
- const scaleScale = () => ["none", isNumber, isArbitraryVariable, isArbitraryValue];
627
- const scaleSkew = () => [isNumber, isArbitraryVariable, isArbitraryValue];
628
- const scaleTranslate = () => [isFraction, "full", ...scaleUnambiguousSpacing()];
629
- return {
630
- cacheSize: 500,
631
- theme: {
632
- animate: ["spin", "ping", "pulse", "bounce"],
633
- aspect: ["video"],
634
- blur: [isTshirtSize],
635
- breakpoint: [isTshirtSize],
636
- color: [isAny],
637
- container: [isTshirtSize],
638
- "drop-shadow": [isTshirtSize],
639
- ease: ["in", "out", "in-out"],
640
- font: [isAnyNonArbitrary],
641
- "font-weight": ["thin", "extralight", "light", "normal", "medium", "semibold", "bold", "extrabold", "black"],
642
- "inset-shadow": [isTshirtSize],
643
- leading: ["none", "tight", "snug", "normal", "relaxed", "loose"],
644
- perspective: ["dramatic", "near", "normal", "midrange", "distant", "none"],
645
- radius: [isTshirtSize],
646
- shadow: [isTshirtSize],
647
- spacing: ["px", isNumber],
648
- text: [isTshirtSize],
649
- "text-shadow": [isTshirtSize],
650
- tracking: ["tighter", "tight", "normal", "wide", "wider", "widest"]
651
- },
652
- classGroups: {
653
- // --------------
654
- // --- Layout ---
655
- // --------------
656
- /**
657
- * Aspect Ratio
658
- * @see https://tailwindcss.com/docs/aspect-ratio
659
- */
660
- aspect: [{
661
- aspect: ["auto", "square", isFraction, isArbitraryValue, isArbitraryVariable, themeAspect]
662
- }],
663
- /**
664
- * Container
665
- * @see https://tailwindcss.com/docs/container
666
- * @deprecated since Tailwind CSS v4.0.0
667
- */
668
- container: ["container"],
669
- /**
670
- * Columns
671
- * @see https://tailwindcss.com/docs/columns
672
- */
673
- columns: [{
674
- columns: [isNumber, isArbitraryValue, isArbitraryVariable, themeContainer]
675
- }],
676
- /**
677
- * Break After
678
- * @see https://tailwindcss.com/docs/break-after
679
- */
680
- "break-after": [{
681
- "break-after": scaleBreak()
682
- }],
683
- /**
684
- * Break Before
685
- * @see https://tailwindcss.com/docs/break-before
686
- */
687
- "break-before": [{
688
- "break-before": scaleBreak()
689
- }],
690
- /**
691
- * Break Inside
692
- * @see https://tailwindcss.com/docs/break-inside
693
- */
694
- "break-inside": [{
695
- "break-inside": ["auto", "avoid", "avoid-page", "avoid-column"]
696
- }],
697
- /**
698
- * Box Decoration Break
699
- * @see https://tailwindcss.com/docs/box-decoration-break
700
- */
701
- "box-decoration": [{
702
- "box-decoration": ["slice", "clone"]
703
- }],
704
- /**
705
- * Box Sizing
706
- * @see https://tailwindcss.com/docs/box-sizing
707
- */
708
- box: [{
709
- box: ["border", "content"]
710
- }],
711
- /**
712
- * Display
713
- * @see https://tailwindcss.com/docs/display
714
- */
715
- display: ["block", "inline-block", "inline", "flex", "inline-flex", "table", "inline-table", "table-caption", "table-cell", "table-column", "table-column-group", "table-footer-group", "table-header-group", "table-row-group", "table-row", "flow-root", "grid", "inline-grid", "contents", "list-item", "hidden"],
716
- /**
717
- * Screen Reader Only
718
- * @see https://tailwindcss.com/docs/display#screen-reader-only
719
- */
720
- sr: ["sr-only", "not-sr-only"],
721
- /**
722
- * Floats
723
- * @see https://tailwindcss.com/docs/float
724
- */
725
- float: [{
726
- float: ["right", "left", "none", "start", "end"]
727
- }],
728
- /**
729
- * Clear
730
- * @see https://tailwindcss.com/docs/clear
731
- */
732
- clear: [{
733
- clear: ["left", "right", "both", "none", "start", "end"]
734
- }],
735
- /**
736
- * Isolation
737
- * @see https://tailwindcss.com/docs/isolation
738
- */
739
- isolation: ["isolate", "isolation-auto"],
740
- /**
741
- * Object Fit
742
- * @see https://tailwindcss.com/docs/object-fit
743
- */
744
- "object-fit": [{
745
- object: ["contain", "cover", "fill", "none", "scale-down"]
746
- }],
747
- /**
748
- * Object Position
749
- * @see https://tailwindcss.com/docs/object-position
750
- */
751
- "object-position": [{
752
- object: scalePositionWithArbitrary()
753
- }],
754
- /**
755
- * Overflow
756
- * @see https://tailwindcss.com/docs/overflow
757
- */
758
- overflow: [{
759
- overflow: scaleOverflow()
760
- }],
761
- /**
762
- * Overflow X
763
- * @see https://tailwindcss.com/docs/overflow
764
- */
765
- "overflow-x": [{
766
- "overflow-x": scaleOverflow()
767
- }],
768
- /**
769
- * Overflow Y
770
- * @see https://tailwindcss.com/docs/overflow
771
- */
772
- "overflow-y": [{
773
- "overflow-y": scaleOverflow()
774
- }],
775
- /**
776
- * Overscroll Behavior
777
- * @see https://tailwindcss.com/docs/overscroll-behavior
778
- */
779
- overscroll: [{
780
- overscroll: scaleOverscroll()
781
- }],
782
- /**
783
- * Overscroll Behavior X
784
- * @see https://tailwindcss.com/docs/overscroll-behavior
785
- */
786
- "overscroll-x": [{
787
- "overscroll-x": scaleOverscroll()
788
- }],
789
- /**
790
- * Overscroll Behavior Y
791
- * @see https://tailwindcss.com/docs/overscroll-behavior
792
- */
793
- "overscroll-y": [{
794
- "overscroll-y": scaleOverscroll()
795
- }],
796
- /**
797
- * Position
798
- * @see https://tailwindcss.com/docs/position
799
- */
800
- position: ["static", "fixed", "absolute", "relative", "sticky"],
801
- /**
802
- * Top / Right / Bottom / Left
803
- * @see https://tailwindcss.com/docs/top-right-bottom-left
804
- */
805
- inset: [{
806
- inset: scaleInset()
807
- }],
808
- /**
809
- * Right / Left
810
- * @see https://tailwindcss.com/docs/top-right-bottom-left
811
- */
812
- "inset-x": [{
813
- "inset-x": scaleInset()
814
- }],
815
- /**
816
- * Top / Bottom
817
- * @see https://tailwindcss.com/docs/top-right-bottom-left
818
- */
819
- "inset-y": [{
820
- "inset-y": scaleInset()
821
- }],
822
- /**
823
- * Start
824
- * @see https://tailwindcss.com/docs/top-right-bottom-left
825
- */
826
- start: [{
827
- start: scaleInset()
828
- }],
829
- /**
830
- * End
831
- * @see https://tailwindcss.com/docs/top-right-bottom-left
832
- */
833
- end: [{
834
- end: scaleInset()
835
- }],
836
- /**
837
- * Top
838
- * @see https://tailwindcss.com/docs/top-right-bottom-left
839
- */
840
- top: [{
841
- top: scaleInset()
842
- }],
843
- /**
844
- * Right
845
- * @see https://tailwindcss.com/docs/top-right-bottom-left
846
- */
847
- right: [{
848
- right: scaleInset()
849
- }],
850
- /**
851
- * Bottom
852
- * @see https://tailwindcss.com/docs/top-right-bottom-left
853
- */
854
- bottom: [{
855
- bottom: scaleInset()
856
- }],
857
- /**
858
- * Left
859
- * @see https://tailwindcss.com/docs/top-right-bottom-left
860
- */
861
- left: [{
862
- left: scaleInset()
863
- }],
864
- /**
865
- * Visibility
866
- * @see https://tailwindcss.com/docs/visibility
867
- */
868
- visibility: ["visible", "invisible", "collapse"],
869
- /**
870
- * Z-Index
871
- * @see https://tailwindcss.com/docs/z-index
872
- */
873
- z: [{
874
- z: [isInteger, "auto", isArbitraryVariable, isArbitraryValue]
875
- }],
876
- // ------------------------
877
- // --- Flexbox and Grid ---
878
- // ------------------------
879
- /**
880
- * Flex Basis
881
- * @see https://tailwindcss.com/docs/flex-basis
882
- */
883
- basis: [{
884
- basis: [isFraction, "full", "auto", themeContainer, ...scaleUnambiguousSpacing()]
885
- }],
886
- /**
887
- * Flex Direction
888
- * @see https://tailwindcss.com/docs/flex-direction
889
- */
890
- "flex-direction": [{
891
- flex: ["row", "row-reverse", "col", "col-reverse"]
892
- }],
893
- /**
894
- * Flex Wrap
895
- * @see https://tailwindcss.com/docs/flex-wrap
896
- */
897
- "flex-wrap": [{
898
- flex: ["nowrap", "wrap", "wrap-reverse"]
899
- }],
900
- /**
901
- * Flex
902
- * @see https://tailwindcss.com/docs/flex
903
- */
904
- flex: [{
905
- flex: [isNumber, isFraction, "auto", "initial", "none", isArbitraryValue]
906
- }],
907
- /**
908
- * Flex Grow
909
- * @see https://tailwindcss.com/docs/flex-grow
910
- */
911
- grow: [{
912
- grow: ["", isNumber, isArbitraryVariable, isArbitraryValue]
913
- }],
914
- /**
915
- * Flex Shrink
916
- * @see https://tailwindcss.com/docs/flex-shrink
917
- */
918
- shrink: [{
919
- shrink: ["", isNumber, isArbitraryVariable, isArbitraryValue]
920
- }],
921
- /**
922
- * Order
923
- * @see https://tailwindcss.com/docs/order
924
- */
925
- order: [{
926
- order: [isInteger, "first", "last", "none", isArbitraryVariable, isArbitraryValue]
927
- }],
928
- /**
929
- * Grid Template Columns
930
- * @see https://tailwindcss.com/docs/grid-template-columns
931
- */
932
- "grid-cols": [{
933
- "grid-cols": scaleGridTemplateColsRows()
934
- }],
935
- /**
936
- * Grid Column Start / End
937
- * @see https://tailwindcss.com/docs/grid-column
938
- */
939
- "col-start-end": [{
940
- col: scaleGridColRowStartAndEnd()
941
- }],
942
- /**
943
- * Grid Column Start
944
- * @see https://tailwindcss.com/docs/grid-column
945
- */
946
- "col-start": [{
947
- "col-start": scaleGridColRowStartOrEnd()
948
- }],
949
- /**
950
- * Grid Column End
951
- * @see https://tailwindcss.com/docs/grid-column
952
- */
953
- "col-end": [{
954
- "col-end": scaleGridColRowStartOrEnd()
955
- }],
956
- /**
957
- * Grid Template Rows
958
- * @see https://tailwindcss.com/docs/grid-template-rows
959
- */
960
- "grid-rows": [{
961
- "grid-rows": scaleGridTemplateColsRows()
962
- }],
963
- /**
964
- * Grid Row Start / End
965
- * @see https://tailwindcss.com/docs/grid-row
966
- */
967
- "row-start-end": [{
968
- row: scaleGridColRowStartAndEnd()
969
- }],
970
- /**
971
- * Grid Row Start
972
- * @see https://tailwindcss.com/docs/grid-row
973
- */
974
- "row-start": [{
975
- "row-start": scaleGridColRowStartOrEnd()
976
- }],
977
- /**
978
- * Grid Row End
979
- * @see https://tailwindcss.com/docs/grid-row
980
- */
981
- "row-end": [{
982
- "row-end": scaleGridColRowStartOrEnd()
983
- }],
984
- /**
985
- * Grid Auto Flow
986
- * @see https://tailwindcss.com/docs/grid-auto-flow
987
- */
988
- "grid-flow": [{
989
- "grid-flow": ["row", "col", "dense", "row-dense", "col-dense"]
990
- }],
991
- /**
992
- * Grid Auto Columns
993
- * @see https://tailwindcss.com/docs/grid-auto-columns
994
- */
995
- "auto-cols": [{
996
- "auto-cols": scaleGridAutoColsRows()
997
- }],
998
- /**
999
- * Grid Auto Rows
1000
- * @see https://tailwindcss.com/docs/grid-auto-rows
1001
- */
1002
- "auto-rows": [{
1003
- "auto-rows": scaleGridAutoColsRows()
1004
- }],
1005
- /**
1006
- * Gap
1007
- * @see https://tailwindcss.com/docs/gap
1008
- */
1009
- gap: [{
1010
- gap: scaleUnambiguousSpacing()
1011
- }],
1012
- /**
1013
- * Gap X
1014
- * @see https://tailwindcss.com/docs/gap
1015
- */
1016
- "gap-x": [{
1017
- "gap-x": scaleUnambiguousSpacing()
1018
- }],
1019
- /**
1020
- * Gap Y
1021
- * @see https://tailwindcss.com/docs/gap
1022
- */
1023
- "gap-y": [{
1024
- "gap-y": scaleUnambiguousSpacing()
1025
- }],
1026
- /**
1027
- * Justify Content
1028
- * @see https://tailwindcss.com/docs/justify-content
1029
- */
1030
- "justify-content": [{
1031
- justify: [...scaleAlignPrimaryAxis(), "normal"]
1032
- }],
1033
- /**
1034
- * Justify Items
1035
- * @see https://tailwindcss.com/docs/justify-items
1036
- */
1037
- "justify-items": [{
1038
- "justify-items": [...scaleAlignSecondaryAxis(), "normal"]
1039
- }],
1040
- /**
1041
- * Justify Self
1042
- * @see https://tailwindcss.com/docs/justify-self
1043
- */
1044
- "justify-self": [{
1045
- "justify-self": ["auto", ...scaleAlignSecondaryAxis()]
1046
- }],
1047
- /**
1048
- * Align Content
1049
- * @see https://tailwindcss.com/docs/align-content
1050
- */
1051
- "align-content": [{
1052
- content: ["normal", ...scaleAlignPrimaryAxis()]
1053
- }],
1054
- /**
1055
- * Align Items
1056
- * @see https://tailwindcss.com/docs/align-items
1057
- */
1058
- "align-items": [{
1059
- items: [...scaleAlignSecondaryAxis(), {
1060
- baseline: ["", "last"]
1061
- }]
1062
- }],
1063
- /**
1064
- * Align Self
1065
- * @see https://tailwindcss.com/docs/align-self
1066
- */
1067
- "align-self": [{
1068
- self: ["auto", ...scaleAlignSecondaryAxis(), {
1069
- baseline: ["", "last"]
1070
- }]
1071
- }],
1072
- /**
1073
- * Place Content
1074
- * @see https://tailwindcss.com/docs/place-content
1075
- */
1076
- "place-content": [{
1077
- "place-content": scaleAlignPrimaryAxis()
1078
- }],
1079
- /**
1080
- * Place Items
1081
- * @see https://tailwindcss.com/docs/place-items
1082
- */
1083
- "place-items": [{
1084
- "place-items": [...scaleAlignSecondaryAxis(), "baseline"]
1085
- }],
1086
- /**
1087
- * Place Self
1088
- * @see https://tailwindcss.com/docs/place-self
1089
- */
1090
- "place-self": [{
1091
- "place-self": ["auto", ...scaleAlignSecondaryAxis()]
1092
- }],
1093
- // Spacing
1094
- /**
1095
- * Padding
1096
- * @see https://tailwindcss.com/docs/padding
1097
- */
1098
- p: [{
1099
- p: scaleUnambiguousSpacing()
1100
- }],
1101
- /**
1102
- * Padding X
1103
- * @see https://tailwindcss.com/docs/padding
1104
- */
1105
- px: [{
1106
- px: scaleUnambiguousSpacing()
1107
- }],
1108
- /**
1109
- * Padding Y
1110
- * @see https://tailwindcss.com/docs/padding
1111
- */
1112
- py: [{
1113
- py: scaleUnambiguousSpacing()
1114
- }],
1115
- /**
1116
- * Padding Start
1117
- * @see https://tailwindcss.com/docs/padding
1118
- */
1119
- ps: [{
1120
- ps: scaleUnambiguousSpacing()
1121
- }],
1122
- /**
1123
- * Padding End
1124
- * @see https://tailwindcss.com/docs/padding
1125
- */
1126
- pe: [{
1127
- pe: scaleUnambiguousSpacing()
1128
- }],
1129
- /**
1130
- * Padding Top
1131
- * @see https://tailwindcss.com/docs/padding
1132
- */
1133
- pt: [{
1134
- pt: scaleUnambiguousSpacing()
1135
- }],
1136
- /**
1137
- * Padding Right
1138
- * @see https://tailwindcss.com/docs/padding
1139
- */
1140
- pr: [{
1141
- pr: scaleUnambiguousSpacing()
1142
- }],
1143
- /**
1144
- * Padding Bottom
1145
- * @see https://tailwindcss.com/docs/padding
1146
- */
1147
- pb: [{
1148
- pb: scaleUnambiguousSpacing()
1149
- }],
1150
- /**
1151
- * Padding Left
1152
- * @see https://tailwindcss.com/docs/padding
1153
- */
1154
- pl: [{
1155
- pl: scaleUnambiguousSpacing()
1156
- }],
1157
- /**
1158
- * Margin
1159
- * @see https://tailwindcss.com/docs/margin
1160
- */
1161
- m: [{
1162
- m: scaleMargin()
1163
- }],
1164
- /**
1165
- * Margin X
1166
- * @see https://tailwindcss.com/docs/margin
1167
- */
1168
- mx: [{
1169
- mx: scaleMargin()
1170
- }],
1171
- /**
1172
- * Margin Y
1173
- * @see https://tailwindcss.com/docs/margin
1174
- */
1175
- my: [{
1176
- my: scaleMargin()
1177
- }],
1178
- /**
1179
- * Margin Start
1180
- * @see https://tailwindcss.com/docs/margin
1181
- */
1182
- ms: [{
1183
- ms: scaleMargin()
1184
- }],
1185
- /**
1186
- * Margin End
1187
- * @see https://tailwindcss.com/docs/margin
1188
- */
1189
- me: [{
1190
- me: scaleMargin()
1191
- }],
1192
- /**
1193
- * Margin Top
1194
- * @see https://tailwindcss.com/docs/margin
1195
- */
1196
- mt: [{
1197
- mt: scaleMargin()
1198
- }],
1199
- /**
1200
- * Margin Right
1201
- * @see https://tailwindcss.com/docs/margin
1202
- */
1203
- mr: [{
1204
- mr: scaleMargin()
1205
- }],
1206
- /**
1207
- * Margin Bottom
1208
- * @see https://tailwindcss.com/docs/margin
1209
- */
1210
- mb: [{
1211
- mb: scaleMargin()
1212
- }],
1213
- /**
1214
- * Margin Left
1215
- * @see https://tailwindcss.com/docs/margin
1216
- */
1217
- ml: [{
1218
- ml: scaleMargin()
1219
- }],
1220
- /**
1221
- * Space Between X
1222
- * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1223
- */
1224
- "space-x": [{
1225
- "space-x": scaleUnambiguousSpacing()
1226
- }],
1227
- /**
1228
- * Space Between X Reverse
1229
- * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1230
- */
1231
- "space-x-reverse": ["space-x-reverse"],
1232
- /**
1233
- * Space Between Y
1234
- * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1235
- */
1236
- "space-y": [{
1237
- "space-y": scaleUnambiguousSpacing()
1238
- }],
1239
- /**
1240
- * Space Between Y Reverse
1241
- * @see https://tailwindcss.com/docs/margin#adding-space-between-children
1242
- */
1243
- "space-y-reverse": ["space-y-reverse"],
1244
- // --------------
1245
- // --- Sizing ---
1246
- // --------------
1247
- /**
1248
- * Size
1249
- * @see https://tailwindcss.com/docs/width#setting-both-width-and-height
1250
- */
1251
- size: [{
1252
- size: scaleSizing()
1253
- }],
1254
- /**
1255
- * Width
1256
- * @see https://tailwindcss.com/docs/width
1257
- */
1258
- w: [{
1259
- w: [themeContainer, "screen", ...scaleSizing()]
1260
- }],
1261
- /**
1262
- * Min-Width
1263
- * @see https://tailwindcss.com/docs/min-width
1264
- */
1265
- "min-w": [{
1266
- "min-w": [
1267
- themeContainer,
1268
- "screen",
1269
- /** Deprecated. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1270
- "none",
1271
- ...scaleSizing()
1272
- ]
1273
- }],
1274
- /**
1275
- * Max-Width
1276
- * @see https://tailwindcss.com/docs/max-width
1277
- */
1278
- "max-w": [{
1279
- "max-w": [
1280
- themeContainer,
1281
- "screen",
1282
- "none",
1283
- /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1284
- "prose",
1285
- /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1286
- {
1287
- screen: [themeBreakpoint]
1288
- },
1289
- ...scaleSizing()
1290
- ]
1291
- }],
1292
- /**
1293
- * Height
1294
- * @see https://tailwindcss.com/docs/height
1295
- */
1296
- h: [{
1297
- h: ["screen", "lh", ...scaleSizing()]
1298
- }],
1299
- /**
1300
- * Min-Height
1301
- * @see https://tailwindcss.com/docs/min-height
1302
- */
1303
- "min-h": [{
1304
- "min-h": ["screen", "lh", "none", ...scaleSizing()]
1305
- }],
1306
- /**
1307
- * Max-Height
1308
- * @see https://tailwindcss.com/docs/max-height
1309
- */
1310
- "max-h": [{
1311
- "max-h": ["screen", "lh", ...scaleSizing()]
1312
- }],
1313
- // ------------------
1314
- // --- Typography ---
1315
- // ------------------
1316
- /**
1317
- * Font Size
1318
- * @see https://tailwindcss.com/docs/font-size
1319
- */
1320
- "font-size": [{
1321
- text: ["base", themeText, isArbitraryVariableLength, isArbitraryLength]
1322
- }],
1323
- /**
1324
- * Font Smoothing
1325
- * @see https://tailwindcss.com/docs/font-smoothing
1326
- */
1327
- "font-smoothing": ["antialiased", "subpixel-antialiased"],
1328
- /**
1329
- * Font Style
1330
- * @see https://tailwindcss.com/docs/font-style
1331
- */
1332
- "font-style": ["italic", "not-italic"],
1333
- /**
1334
- * Font Weight
1335
- * @see https://tailwindcss.com/docs/font-weight
1336
- */
1337
- "font-weight": [{
1338
- font: [themeFontWeight, isArbitraryVariable, isArbitraryNumber]
1339
- }],
1340
- /**
1341
- * Font Stretch
1342
- * @see https://tailwindcss.com/docs/font-stretch
1343
- */
1344
- "font-stretch": [{
1345
- "font-stretch": ["ultra-condensed", "extra-condensed", "condensed", "semi-condensed", "normal", "semi-expanded", "expanded", "extra-expanded", "ultra-expanded", isPercent, isArbitraryValue]
1346
- }],
1347
- /**
1348
- * Font Family
1349
- * @see https://tailwindcss.com/docs/font-family
1350
- */
1351
- "font-family": [{
1352
- font: [isArbitraryVariableFamilyName, isArbitraryValue, themeFont]
1353
- }],
1354
- /**
1355
- * Font Variant Numeric
1356
- * @see https://tailwindcss.com/docs/font-variant-numeric
1357
- */
1358
- "fvn-normal": ["normal-nums"],
1359
- /**
1360
- * Font Variant Numeric
1361
- * @see https://tailwindcss.com/docs/font-variant-numeric
1362
- */
1363
- "fvn-ordinal": ["ordinal"],
1364
- /**
1365
- * Font Variant Numeric
1366
- * @see https://tailwindcss.com/docs/font-variant-numeric
1367
- */
1368
- "fvn-slashed-zero": ["slashed-zero"],
1369
- /**
1370
- * Font Variant Numeric
1371
- * @see https://tailwindcss.com/docs/font-variant-numeric
1372
- */
1373
- "fvn-figure": ["lining-nums", "oldstyle-nums"],
1374
- /**
1375
- * Font Variant Numeric
1376
- * @see https://tailwindcss.com/docs/font-variant-numeric
1377
- */
1378
- "fvn-spacing": ["proportional-nums", "tabular-nums"],
1379
- /**
1380
- * Font Variant Numeric
1381
- * @see https://tailwindcss.com/docs/font-variant-numeric
1382
- */
1383
- "fvn-fraction": ["diagonal-fractions", "stacked-fractions"],
1384
- /**
1385
- * Letter Spacing
1386
- * @see https://tailwindcss.com/docs/letter-spacing
1387
- */
1388
- tracking: [{
1389
- tracking: [themeTracking, isArbitraryVariable, isArbitraryValue]
1390
- }],
1391
- /**
1392
- * Line Clamp
1393
- * @see https://tailwindcss.com/docs/line-clamp
1394
- */
1395
- "line-clamp": [{
1396
- "line-clamp": [isNumber, "none", isArbitraryVariable, isArbitraryNumber]
1397
- }],
1398
- /**
1399
- * Line Height
1400
- * @see https://tailwindcss.com/docs/line-height
1401
- */
1402
- leading: [{
1403
- leading: [
1404
- /** Deprecated since Tailwind CSS v4.0.0. @see https://github.com/tailwindlabs/tailwindcss.com/issues/2027#issuecomment-2620152757 */
1405
- themeLeading,
1406
- ...scaleUnambiguousSpacing()
1407
- ]
1408
- }],
1409
- /**
1410
- * List Style Image
1411
- * @see https://tailwindcss.com/docs/list-style-image
1412
- */
1413
- "list-image": [{
1414
- "list-image": ["none", isArbitraryVariable, isArbitraryValue]
1415
- }],
1416
- /**
1417
- * List Style Position
1418
- * @see https://tailwindcss.com/docs/list-style-position
1419
- */
1420
- "list-style-position": [{
1421
- list: ["inside", "outside"]
1422
- }],
1423
- /**
1424
- * List Style Type
1425
- * @see https://tailwindcss.com/docs/list-style-type
1426
- */
1427
- "list-style-type": [{
1428
- list: ["disc", "decimal", "none", isArbitraryVariable, isArbitraryValue]
1429
- }],
1430
- /**
1431
- * Text Alignment
1432
- * @see https://tailwindcss.com/docs/text-align
1433
- */
1434
- "text-alignment": [{
1435
- text: ["left", "center", "right", "justify", "start", "end"]
1436
- }],
1437
- /**
1438
- * Placeholder Color
1439
- * @deprecated since Tailwind CSS v3.0.0
1440
- * @see https://v3.tailwindcss.com/docs/placeholder-color
1441
- */
1442
- "placeholder-color": [{
1443
- placeholder: scaleColor()
1444
- }],
1445
- /**
1446
- * Text Color
1447
- * @see https://tailwindcss.com/docs/text-color
1448
- */
1449
- "text-color": [{
1450
- text: scaleColor()
1451
- }],
1452
- /**
1453
- * Text Decoration
1454
- * @see https://tailwindcss.com/docs/text-decoration
1455
- */
1456
- "text-decoration": ["underline", "overline", "line-through", "no-underline"],
1457
- /**
1458
- * Text Decoration Style
1459
- * @see https://tailwindcss.com/docs/text-decoration-style
1460
- */
1461
- "text-decoration-style": [{
1462
- decoration: [...scaleLineStyle(), "wavy"]
1463
- }],
1464
- /**
1465
- * Text Decoration Thickness
1466
- * @see https://tailwindcss.com/docs/text-decoration-thickness
1467
- */
1468
- "text-decoration-thickness": [{
1469
- decoration: [isNumber, "from-font", "auto", isArbitraryVariable, isArbitraryLength]
1470
- }],
1471
- /**
1472
- * Text Decoration Color
1473
- * @see https://tailwindcss.com/docs/text-decoration-color
1474
- */
1475
- "text-decoration-color": [{
1476
- decoration: scaleColor()
1477
- }],
1478
- /**
1479
- * Text Underline Offset
1480
- * @see https://tailwindcss.com/docs/text-underline-offset
1481
- */
1482
- "underline-offset": [{
1483
- "underline-offset": [isNumber, "auto", isArbitraryVariable, isArbitraryValue]
1484
- }],
1485
- /**
1486
- * Text Transform
1487
- * @see https://tailwindcss.com/docs/text-transform
1488
- */
1489
- "text-transform": ["uppercase", "lowercase", "capitalize", "normal-case"],
1490
- /**
1491
- * Text Overflow
1492
- * @see https://tailwindcss.com/docs/text-overflow
1493
- */
1494
- "text-overflow": ["truncate", "text-ellipsis", "text-clip"],
1495
- /**
1496
- * Text Wrap
1497
- * @see https://tailwindcss.com/docs/text-wrap
1498
- */
1499
- "text-wrap": [{
1500
- text: ["wrap", "nowrap", "balance", "pretty"]
1501
- }],
1502
- /**
1503
- * Text Indent
1504
- * @see https://tailwindcss.com/docs/text-indent
1505
- */
1506
- indent: [{
1507
- indent: scaleUnambiguousSpacing()
1508
- }],
1509
- /**
1510
- * Vertical Alignment
1511
- * @see https://tailwindcss.com/docs/vertical-align
1512
- */
1513
- "vertical-align": [{
1514
- align: ["baseline", "top", "middle", "bottom", "text-top", "text-bottom", "sub", "super", isArbitraryVariable, isArbitraryValue]
1515
- }],
1516
- /**
1517
- * Whitespace
1518
- * @see https://tailwindcss.com/docs/whitespace
1519
- */
1520
- whitespace: [{
1521
- whitespace: ["normal", "nowrap", "pre", "pre-line", "pre-wrap", "break-spaces"]
1522
- }],
1523
- /**
1524
- * Word Break
1525
- * @see https://tailwindcss.com/docs/word-break
1526
- */
1527
- break: [{
1528
- break: ["normal", "words", "all", "keep"]
1529
- }],
1530
- /**
1531
- * Overflow Wrap
1532
- * @see https://tailwindcss.com/docs/overflow-wrap
1533
- */
1534
- wrap: [{
1535
- wrap: ["break-word", "anywhere", "normal"]
1536
- }],
1537
- /**
1538
- * Hyphens
1539
- * @see https://tailwindcss.com/docs/hyphens
1540
- */
1541
- hyphens: [{
1542
- hyphens: ["none", "manual", "auto"]
1543
- }],
1544
- /**
1545
- * Content
1546
- * @see https://tailwindcss.com/docs/content
1547
- */
1548
- content: [{
1549
- content: ["none", isArbitraryVariable, isArbitraryValue]
1550
- }],
1551
- // -------------------
1552
- // --- Backgrounds ---
1553
- // -------------------
1554
- /**
1555
- * Background Attachment
1556
- * @see https://tailwindcss.com/docs/background-attachment
1557
- */
1558
- "bg-attachment": [{
1559
- bg: ["fixed", "local", "scroll"]
1560
- }],
1561
- /**
1562
- * Background Clip
1563
- * @see https://tailwindcss.com/docs/background-clip
1564
- */
1565
- "bg-clip": [{
1566
- "bg-clip": ["border", "padding", "content", "text"]
1567
- }],
1568
- /**
1569
- * Background Origin
1570
- * @see https://tailwindcss.com/docs/background-origin
1571
- */
1572
- "bg-origin": [{
1573
- "bg-origin": ["border", "padding", "content"]
1574
- }],
1575
- /**
1576
- * Background Position
1577
- * @see https://tailwindcss.com/docs/background-position
1578
- */
1579
- "bg-position": [{
1580
- bg: scaleBgPosition()
1581
- }],
1582
- /**
1583
- * Background Repeat
1584
- * @see https://tailwindcss.com/docs/background-repeat
1585
- */
1586
- "bg-repeat": [{
1587
- bg: scaleBgRepeat()
1588
- }],
1589
- /**
1590
- * Background Size
1591
- * @see https://tailwindcss.com/docs/background-size
1592
- */
1593
- "bg-size": [{
1594
- bg: scaleBgSize()
1595
- }],
1596
- /**
1597
- * Background Image
1598
- * @see https://tailwindcss.com/docs/background-image
1599
- */
1600
- "bg-image": [{
1601
- bg: ["none", {
1602
- linear: [{
1603
- to: ["t", "tr", "r", "br", "b", "bl", "l", "tl"]
1604
- }, isInteger, isArbitraryVariable, isArbitraryValue],
1605
- radial: ["", isArbitraryVariable, isArbitraryValue],
1606
- conic: [isInteger, isArbitraryVariable, isArbitraryValue]
1607
- }, isArbitraryVariableImage, isArbitraryImage]
1608
- }],
1609
- /**
1610
- * Background Color
1611
- * @see https://tailwindcss.com/docs/background-color
1612
- */
1613
- "bg-color": [{
1614
- bg: scaleColor()
1615
- }],
1616
- /**
1617
- * Gradient Color Stops From Position
1618
- * @see https://tailwindcss.com/docs/gradient-color-stops
1619
- */
1620
- "gradient-from-pos": [{
1621
- from: scaleGradientStopPosition()
1622
- }],
1623
- /**
1624
- * Gradient Color Stops Via Position
1625
- * @see https://tailwindcss.com/docs/gradient-color-stops
1626
- */
1627
- "gradient-via-pos": [{
1628
- via: scaleGradientStopPosition()
1629
- }],
1630
- /**
1631
- * Gradient Color Stops To Position
1632
- * @see https://tailwindcss.com/docs/gradient-color-stops
1633
- */
1634
- "gradient-to-pos": [{
1635
- to: scaleGradientStopPosition()
1636
- }],
1637
- /**
1638
- * Gradient Color Stops From
1639
- * @see https://tailwindcss.com/docs/gradient-color-stops
1640
- */
1641
- "gradient-from": [{
1642
- from: scaleColor()
1643
- }],
1644
- /**
1645
- * Gradient Color Stops Via
1646
- * @see https://tailwindcss.com/docs/gradient-color-stops
1647
- */
1648
- "gradient-via": [{
1649
- via: scaleColor()
1650
- }],
1651
- /**
1652
- * Gradient Color Stops To
1653
- * @see https://tailwindcss.com/docs/gradient-color-stops
1654
- */
1655
- "gradient-to": [{
1656
- to: scaleColor()
1657
- }],
1658
- // ---------------
1659
- // --- Borders ---
1660
- // ---------------
1661
- /**
1662
- * Border Radius
1663
- * @see https://tailwindcss.com/docs/border-radius
1664
- */
1665
- rounded: [{
1666
- rounded: scaleRadius()
1667
- }],
1668
- /**
1669
- * Border Radius Start
1670
- * @see https://tailwindcss.com/docs/border-radius
1671
- */
1672
- "rounded-s": [{
1673
- "rounded-s": scaleRadius()
1674
- }],
1675
- /**
1676
- * Border Radius End
1677
- * @see https://tailwindcss.com/docs/border-radius
1678
- */
1679
- "rounded-e": [{
1680
- "rounded-e": scaleRadius()
1681
- }],
1682
- /**
1683
- * Border Radius Top
1684
- * @see https://tailwindcss.com/docs/border-radius
1685
- */
1686
- "rounded-t": [{
1687
- "rounded-t": scaleRadius()
1688
- }],
1689
- /**
1690
- * Border Radius Right
1691
- * @see https://tailwindcss.com/docs/border-radius
1692
- */
1693
- "rounded-r": [{
1694
- "rounded-r": scaleRadius()
1695
- }],
1696
- /**
1697
- * Border Radius Bottom
1698
- * @see https://tailwindcss.com/docs/border-radius
1699
- */
1700
- "rounded-b": [{
1701
- "rounded-b": scaleRadius()
1702
- }],
1703
- /**
1704
- * Border Radius Left
1705
- * @see https://tailwindcss.com/docs/border-radius
1706
- */
1707
- "rounded-l": [{
1708
- "rounded-l": scaleRadius()
1709
- }],
1710
- /**
1711
- * Border Radius Start Start
1712
- * @see https://tailwindcss.com/docs/border-radius
1713
- */
1714
- "rounded-ss": [{
1715
- "rounded-ss": scaleRadius()
1716
- }],
1717
- /**
1718
- * Border Radius Start End
1719
- * @see https://tailwindcss.com/docs/border-radius
1720
- */
1721
- "rounded-se": [{
1722
- "rounded-se": scaleRadius()
1723
- }],
1724
- /**
1725
- * Border Radius End End
1726
- * @see https://tailwindcss.com/docs/border-radius
1727
- */
1728
- "rounded-ee": [{
1729
- "rounded-ee": scaleRadius()
1730
- }],
1731
- /**
1732
- * Border Radius End Start
1733
- * @see https://tailwindcss.com/docs/border-radius
1734
- */
1735
- "rounded-es": [{
1736
- "rounded-es": scaleRadius()
1737
- }],
1738
- /**
1739
- * Border Radius Top Left
1740
- * @see https://tailwindcss.com/docs/border-radius
1741
- */
1742
- "rounded-tl": [{
1743
- "rounded-tl": scaleRadius()
1744
- }],
1745
- /**
1746
- * Border Radius Top Right
1747
- * @see https://tailwindcss.com/docs/border-radius
1748
- */
1749
- "rounded-tr": [{
1750
- "rounded-tr": scaleRadius()
1751
- }],
1752
- /**
1753
- * Border Radius Bottom Right
1754
- * @see https://tailwindcss.com/docs/border-radius
1755
- */
1756
- "rounded-br": [{
1757
- "rounded-br": scaleRadius()
1758
- }],
1759
- /**
1760
- * Border Radius Bottom Left
1761
- * @see https://tailwindcss.com/docs/border-radius
1762
- */
1763
- "rounded-bl": [{
1764
- "rounded-bl": scaleRadius()
1765
- }],
1766
- /**
1767
- * Border Width
1768
- * @see https://tailwindcss.com/docs/border-width
1769
- */
1770
- "border-w": [{
1771
- border: scaleBorderWidth()
1772
- }],
1773
- /**
1774
- * Border Width X
1775
- * @see https://tailwindcss.com/docs/border-width
1776
- */
1777
- "border-w-x": [{
1778
- "border-x": scaleBorderWidth()
1779
- }],
1780
- /**
1781
- * Border Width Y
1782
- * @see https://tailwindcss.com/docs/border-width
1783
- */
1784
- "border-w-y": [{
1785
- "border-y": scaleBorderWidth()
1786
- }],
1787
- /**
1788
- * Border Width Start
1789
- * @see https://tailwindcss.com/docs/border-width
1790
- */
1791
- "border-w-s": [{
1792
- "border-s": scaleBorderWidth()
1793
- }],
1794
- /**
1795
- * Border Width End
1796
- * @see https://tailwindcss.com/docs/border-width
1797
- */
1798
- "border-w-e": [{
1799
- "border-e": scaleBorderWidth()
1800
- }],
1801
- /**
1802
- * Border Width Top
1803
- * @see https://tailwindcss.com/docs/border-width
1804
- */
1805
- "border-w-t": [{
1806
- "border-t": scaleBorderWidth()
1807
- }],
1808
- /**
1809
- * Border Width Right
1810
- * @see https://tailwindcss.com/docs/border-width
1811
- */
1812
- "border-w-r": [{
1813
- "border-r": scaleBorderWidth()
1814
- }],
1815
- /**
1816
- * Border Width Bottom
1817
- * @see https://tailwindcss.com/docs/border-width
1818
- */
1819
- "border-w-b": [{
1820
- "border-b": scaleBorderWidth()
1821
- }],
1822
- /**
1823
- * Border Width Left
1824
- * @see https://tailwindcss.com/docs/border-width
1825
- */
1826
- "border-w-l": [{
1827
- "border-l": scaleBorderWidth()
1828
- }],
1829
- /**
1830
- * Divide Width X
1831
- * @see https://tailwindcss.com/docs/border-width#between-children
1832
- */
1833
- "divide-x": [{
1834
- "divide-x": scaleBorderWidth()
1835
- }],
1836
- /**
1837
- * Divide Width X Reverse
1838
- * @see https://tailwindcss.com/docs/border-width#between-children
1839
- */
1840
- "divide-x-reverse": ["divide-x-reverse"],
1841
- /**
1842
- * Divide Width Y
1843
- * @see https://tailwindcss.com/docs/border-width#between-children
1844
- */
1845
- "divide-y": [{
1846
- "divide-y": scaleBorderWidth()
1847
- }],
1848
- /**
1849
- * Divide Width Y Reverse
1850
- * @see https://tailwindcss.com/docs/border-width#between-children
1851
- */
1852
- "divide-y-reverse": ["divide-y-reverse"],
1853
- /**
1854
- * Border Style
1855
- * @see https://tailwindcss.com/docs/border-style
1856
- */
1857
- "border-style": [{
1858
- border: [...scaleLineStyle(), "hidden", "none"]
1859
- }],
1860
- /**
1861
- * Divide Style
1862
- * @see https://tailwindcss.com/docs/border-style#setting-the-divider-style
1863
- */
1864
- "divide-style": [{
1865
- divide: [...scaleLineStyle(), "hidden", "none"]
1866
- }],
1867
- /**
1868
- * Border Color
1869
- * @see https://tailwindcss.com/docs/border-color
1870
- */
1871
- "border-color": [{
1872
- border: scaleColor()
1873
- }],
1874
- /**
1875
- * Border Color X
1876
- * @see https://tailwindcss.com/docs/border-color
1877
- */
1878
- "border-color-x": [{
1879
- "border-x": scaleColor()
1880
- }],
1881
- /**
1882
- * Border Color Y
1883
- * @see https://tailwindcss.com/docs/border-color
1884
- */
1885
- "border-color-y": [{
1886
- "border-y": scaleColor()
1887
- }],
1888
- /**
1889
- * Border Color S
1890
- * @see https://tailwindcss.com/docs/border-color
1891
- */
1892
- "border-color-s": [{
1893
- "border-s": scaleColor()
1894
- }],
1895
- /**
1896
- * Border Color E
1897
- * @see https://tailwindcss.com/docs/border-color
1898
- */
1899
- "border-color-e": [{
1900
- "border-e": scaleColor()
1901
- }],
1902
- /**
1903
- * Border Color Top
1904
- * @see https://tailwindcss.com/docs/border-color
1905
- */
1906
- "border-color-t": [{
1907
- "border-t": scaleColor()
1908
- }],
1909
- /**
1910
- * Border Color Right
1911
- * @see https://tailwindcss.com/docs/border-color
1912
- */
1913
- "border-color-r": [{
1914
- "border-r": scaleColor()
1915
- }],
1916
- /**
1917
- * Border Color Bottom
1918
- * @see https://tailwindcss.com/docs/border-color
1919
- */
1920
- "border-color-b": [{
1921
- "border-b": scaleColor()
1922
- }],
1923
- /**
1924
- * Border Color Left
1925
- * @see https://tailwindcss.com/docs/border-color
1926
- */
1927
- "border-color-l": [{
1928
- "border-l": scaleColor()
1929
- }],
1930
- /**
1931
- * Divide Color
1932
- * @see https://tailwindcss.com/docs/divide-color
1933
- */
1934
- "divide-color": [{
1935
- divide: scaleColor()
1936
- }],
1937
- /**
1938
- * Outline Style
1939
- * @see https://tailwindcss.com/docs/outline-style
1940
- */
1941
- "outline-style": [{
1942
- outline: [...scaleLineStyle(), "none", "hidden"]
1943
- }],
1944
- /**
1945
- * Outline Offset
1946
- * @see https://tailwindcss.com/docs/outline-offset
1947
- */
1948
- "outline-offset": [{
1949
- "outline-offset": [isNumber, isArbitraryVariable, isArbitraryValue]
1950
- }],
1951
- /**
1952
- * Outline Width
1953
- * @see https://tailwindcss.com/docs/outline-width
1954
- */
1955
- "outline-w": [{
1956
- outline: ["", isNumber, isArbitraryVariableLength, isArbitraryLength]
1957
- }],
1958
- /**
1959
- * Outline Color
1960
- * @see https://tailwindcss.com/docs/outline-color
1961
- */
1962
- "outline-color": [{
1963
- outline: scaleColor()
1964
- }],
1965
- // ---------------
1966
- // --- Effects ---
1967
- // ---------------
1968
- /**
1969
- * Box Shadow
1970
- * @see https://tailwindcss.com/docs/box-shadow
1971
- */
1972
- shadow: [{
1973
- shadow: [
1974
- // Deprecated since Tailwind CSS v4.0.0
1975
- "",
1976
- "none",
1977
- themeShadow,
1978
- isArbitraryVariableShadow,
1979
- isArbitraryShadow
1980
- ]
1981
- }],
1982
- /**
1983
- * Box Shadow Color
1984
- * @see https://tailwindcss.com/docs/box-shadow#setting-the-shadow-color
1985
- */
1986
- "shadow-color": [{
1987
- shadow: scaleColor()
1988
- }],
1989
- /**
1990
- * Inset Box Shadow
1991
- * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-shadow
1992
- */
1993
- "inset-shadow": [{
1994
- "inset-shadow": ["none", themeInsetShadow, isArbitraryVariableShadow, isArbitraryShadow]
1995
- }],
1996
- /**
1997
- * Inset Box Shadow Color
1998
- * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-shadow-color
1999
- */
2000
- "inset-shadow-color": [{
2001
- "inset-shadow": scaleColor()
2002
- }],
2003
- /**
2004
- * Ring Width
2005
- * @see https://tailwindcss.com/docs/box-shadow#adding-a-ring
2006
- */
2007
- "ring-w": [{
2008
- ring: scaleBorderWidth()
2009
- }],
2010
- /**
2011
- * Ring Width Inset
2012
- * @see https://v3.tailwindcss.com/docs/ring-width#inset-rings
2013
- * @deprecated since Tailwind CSS v4.0.0
2014
- * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
2015
- */
2016
- "ring-w-inset": ["ring-inset"],
2017
- /**
2018
- * Ring Color
2019
- * @see https://tailwindcss.com/docs/box-shadow#setting-the-ring-color
2020
- */
2021
- "ring-color": [{
2022
- ring: scaleColor()
2023
- }],
2024
- /**
2025
- * Ring Offset Width
2026
- * @see https://v3.tailwindcss.com/docs/ring-offset-width
2027
- * @deprecated since Tailwind CSS v4.0.0
2028
- * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
2029
- */
2030
- "ring-offset-w": [{
2031
- "ring-offset": [isNumber, isArbitraryLength]
2032
- }],
2033
- /**
2034
- * Ring Offset Color
2035
- * @see https://v3.tailwindcss.com/docs/ring-offset-color
2036
- * @deprecated since Tailwind CSS v4.0.0
2037
- * @see https://github.com/tailwindlabs/tailwindcss/blob/v4.0.0/packages/tailwindcss/src/utilities.ts#L4158
2038
- */
2039
- "ring-offset-color": [{
2040
- "ring-offset": scaleColor()
2041
- }],
2042
- /**
2043
- * Inset Ring Width
2044
- * @see https://tailwindcss.com/docs/box-shadow#adding-an-inset-ring
2045
- */
2046
- "inset-ring-w": [{
2047
- "inset-ring": scaleBorderWidth()
2048
- }],
2049
- /**
2050
- * Inset Ring Color
2051
- * @see https://tailwindcss.com/docs/box-shadow#setting-the-inset-ring-color
2052
- */
2053
- "inset-ring-color": [{
2054
- "inset-ring": scaleColor()
2055
- }],
2056
- /**
2057
- * Text Shadow
2058
- * @see https://tailwindcss.com/docs/text-shadow
2059
- */
2060
- "text-shadow": [{
2061
- "text-shadow": ["none", themeTextShadow, isArbitraryVariableShadow, isArbitraryShadow]
2062
- }],
2063
- /**
2064
- * Text Shadow Color
2065
- * @see https://tailwindcss.com/docs/text-shadow#setting-the-shadow-color
2066
- */
2067
- "text-shadow-color": [{
2068
- "text-shadow": scaleColor()
2069
- }],
2070
- /**
2071
- * Opacity
2072
- * @see https://tailwindcss.com/docs/opacity
2073
- */
2074
- opacity: [{
2075
- opacity: [isNumber, isArbitraryVariable, isArbitraryValue]
2076
- }],
2077
- /**
2078
- * Mix Blend Mode
2079
- * @see https://tailwindcss.com/docs/mix-blend-mode
2080
- */
2081
- "mix-blend": [{
2082
- "mix-blend": [...scaleBlendMode(), "plus-darker", "plus-lighter"]
2083
- }],
2084
- /**
2085
- * Background Blend Mode
2086
- * @see https://tailwindcss.com/docs/background-blend-mode
2087
- */
2088
- "bg-blend": [{
2089
- "bg-blend": scaleBlendMode()
2090
- }],
2091
- /**
2092
- * Mask Clip
2093
- * @see https://tailwindcss.com/docs/mask-clip
2094
- */
2095
- "mask-clip": [{
2096
- "mask-clip": ["border", "padding", "content", "fill", "stroke", "view"]
2097
- }, "mask-no-clip"],
2098
- /**
2099
- * Mask Composite
2100
- * @see https://tailwindcss.com/docs/mask-composite
2101
- */
2102
- "mask-composite": [{
2103
- mask: ["add", "subtract", "intersect", "exclude"]
2104
- }],
2105
- /**
2106
- * Mask Image
2107
- * @see https://tailwindcss.com/docs/mask-image
2108
- */
2109
- "mask-image-linear-pos": [{
2110
- "mask-linear": [isNumber]
2111
- }],
2112
- "mask-image-linear-from-pos": [{
2113
- "mask-linear-from": scaleMaskImagePosition()
2114
- }],
2115
- "mask-image-linear-to-pos": [{
2116
- "mask-linear-to": scaleMaskImagePosition()
2117
- }],
2118
- "mask-image-linear-from-color": [{
2119
- "mask-linear-from": scaleColor()
2120
- }],
2121
- "mask-image-linear-to-color": [{
2122
- "mask-linear-to": scaleColor()
2123
- }],
2124
- "mask-image-t-from-pos": [{
2125
- "mask-t-from": scaleMaskImagePosition()
2126
- }],
2127
- "mask-image-t-to-pos": [{
2128
- "mask-t-to": scaleMaskImagePosition()
2129
- }],
2130
- "mask-image-t-from-color": [{
2131
- "mask-t-from": scaleColor()
2132
- }],
2133
- "mask-image-t-to-color": [{
2134
- "mask-t-to": scaleColor()
2135
- }],
2136
- "mask-image-r-from-pos": [{
2137
- "mask-r-from": scaleMaskImagePosition()
2138
- }],
2139
- "mask-image-r-to-pos": [{
2140
- "mask-r-to": scaleMaskImagePosition()
2141
- }],
2142
- "mask-image-r-from-color": [{
2143
- "mask-r-from": scaleColor()
2144
- }],
2145
- "mask-image-r-to-color": [{
2146
- "mask-r-to": scaleColor()
2147
- }],
2148
- "mask-image-b-from-pos": [{
2149
- "mask-b-from": scaleMaskImagePosition()
2150
- }],
2151
- "mask-image-b-to-pos": [{
2152
- "mask-b-to": scaleMaskImagePosition()
2153
- }],
2154
- "mask-image-b-from-color": [{
2155
- "mask-b-from": scaleColor()
2156
- }],
2157
- "mask-image-b-to-color": [{
2158
- "mask-b-to": scaleColor()
2159
- }],
2160
- "mask-image-l-from-pos": [{
2161
- "mask-l-from": scaleMaskImagePosition()
2162
- }],
2163
- "mask-image-l-to-pos": [{
2164
- "mask-l-to": scaleMaskImagePosition()
2165
- }],
2166
- "mask-image-l-from-color": [{
2167
- "mask-l-from": scaleColor()
2168
- }],
2169
- "mask-image-l-to-color": [{
2170
- "mask-l-to": scaleColor()
2171
- }],
2172
- "mask-image-x-from-pos": [{
2173
- "mask-x-from": scaleMaskImagePosition()
2174
- }],
2175
- "mask-image-x-to-pos": [{
2176
- "mask-x-to": scaleMaskImagePosition()
2177
- }],
2178
- "mask-image-x-from-color": [{
2179
- "mask-x-from": scaleColor()
2180
- }],
2181
- "mask-image-x-to-color": [{
2182
- "mask-x-to": scaleColor()
2183
- }],
2184
- "mask-image-y-from-pos": [{
2185
- "mask-y-from": scaleMaskImagePosition()
2186
- }],
2187
- "mask-image-y-to-pos": [{
2188
- "mask-y-to": scaleMaskImagePosition()
2189
- }],
2190
- "mask-image-y-from-color": [{
2191
- "mask-y-from": scaleColor()
2192
- }],
2193
- "mask-image-y-to-color": [{
2194
- "mask-y-to": scaleColor()
2195
- }],
2196
- "mask-image-radial": [{
2197
- "mask-radial": [isArbitraryVariable, isArbitraryValue]
2198
- }],
2199
- "mask-image-radial-from-pos": [{
2200
- "mask-radial-from": scaleMaskImagePosition()
2201
- }],
2202
- "mask-image-radial-to-pos": [{
2203
- "mask-radial-to": scaleMaskImagePosition()
2204
- }],
2205
- "mask-image-radial-from-color": [{
2206
- "mask-radial-from": scaleColor()
2207
- }],
2208
- "mask-image-radial-to-color": [{
2209
- "mask-radial-to": scaleColor()
2210
- }],
2211
- "mask-image-radial-shape": [{
2212
- "mask-radial": ["circle", "ellipse"]
2213
- }],
2214
- "mask-image-radial-size": [{
2215
- "mask-radial": [{
2216
- closest: ["side", "corner"],
2217
- farthest: ["side", "corner"]
2218
- }]
2219
- }],
2220
- "mask-image-radial-pos": [{
2221
- "mask-radial-at": scalePosition()
2222
- }],
2223
- "mask-image-conic-pos": [{
2224
- "mask-conic": [isNumber]
2225
- }],
2226
- "mask-image-conic-from-pos": [{
2227
- "mask-conic-from": scaleMaskImagePosition()
2228
- }],
2229
- "mask-image-conic-to-pos": [{
2230
- "mask-conic-to": scaleMaskImagePosition()
2231
- }],
2232
- "mask-image-conic-from-color": [{
2233
- "mask-conic-from": scaleColor()
2234
- }],
2235
- "mask-image-conic-to-color": [{
2236
- "mask-conic-to": scaleColor()
2237
- }],
2238
- /**
2239
- * Mask Mode
2240
- * @see https://tailwindcss.com/docs/mask-mode
2241
- */
2242
- "mask-mode": [{
2243
- mask: ["alpha", "luminance", "match"]
2244
- }],
2245
- /**
2246
- * Mask Origin
2247
- * @see https://tailwindcss.com/docs/mask-origin
2248
- */
2249
- "mask-origin": [{
2250
- "mask-origin": ["border", "padding", "content", "fill", "stroke", "view"]
2251
- }],
2252
- /**
2253
- * Mask Position
2254
- * @see https://tailwindcss.com/docs/mask-position
2255
- */
2256
- "mask-position": [{
2257
- mask: scaleBgPosition()
2258
- }],
2259
- /**
2260
- * Mask Repeat
2261
- * @see https://tailwindcss.com/docs/mask-repeat
2262
- */
2263
- "mask-repeat": [{
2264
- mask: scaleBgRepeat()
2265
- }],
2266
- /**
2267
- * Mask Size
2268
- * @see https://tailwindcss.com/docs/mask-size
2269
- */
2270
- "mask-size": [{
2271
- mask: scaleBgSize()
2272
- }],
2273
- /**
2274
- * Mask Type
2275
- * @see https://tailwindcss.com/docs/mask-type
2276
- */
2277
- "mask-type": [{
2278
- "mask-type": ["alpha", "luminance"]
2279
- }],
2280
- /**
2281
- * Mask Image
2282
- * @see https://tailwindcss.com/docs/mask-image
2283
- */
2284
- "mask-image": [{
2285
- mask: ["none", isArbitraryVariable, isArbitraryValue]
2286
- }],
2287
- // ---------------
2288
- // --- Filters ---
2289
- // ---------------
2290
- /**
2291
- * Filter
2292
- * @see https://tailwindcss.com/docs/filter
2293
- */
2294
- filter: [{
2295
- filter: [
2296
- // Deprecated since Tailwind CSS v3.0.0
2297
- "",
2298
- "none",
2299
- isArbitraryVariable,
2300
- isArbitraryValue
2301
- ]
2302
- }],
2303
- /**
2304
- * Blur
2305
- * @see https://tailwindcss.com/docs/blur
2306
- */
2307
- blur: [{
2308
- blur: scaleBlur()
2309
- }],
2310
- /**
2311
- * Brightness
2312
- * @see https://tailwindcss.com/docs/brightness
2313
- */
2314
- brightness: [{
2315
- brightness: [isNumber, isArbitraryVariable, isArbitraryValue]
2316
- }],
2317
- /**
2318
- * Contrast
2319
- * @see https://tailwindcss.com/docs/contrast
2320
- */
2321
- contrast: [{
2322
- contrast: [isNumber, isArbitraryVariable, isArbitraryValue]
2323
- }],
2324
- /**
2325
- * Drop Shadow
2326
- * @see https://tailwindcss.com/docs/drop-shadow
2327
- */
2328
- "drop-shadow": [{
2329
- "drop-shadow": [
2330
- // Deprecated since Tailwind CSS v4.0.0
2331
- "",
2332
- "none",
2333
- themeDropShadow,
2334
- isArbitraryVariableShadow,
2335
- isArbitraryShadow
2336
- ]
2337
- }],
2338
- /**
2339
- * Drop Shadow Color
2340
- * @see https://tailwindcss.com/docs/filter-drop-shadow#setting-the-shadow-color
2341
- */
2342
- "drop-shadow-color": [{
2343
- "drop-shadow": scaleColor()
2344
- }],
2345
- /**
2346
- * Grayscale
2347
- * @see https://tailwindcss.com/docs/grayscale
2348
- */
2349
- grayscale: [{
2350
- grayscale: ["", isNumber, isArbitraryVariable, isArbitraryValue]
2351
- }],
2352
- /**
2353
- * Hue Rotate
2354
- * @see https://tailwindcss.com/docs/hue-rotate
2355
- */
2356
- "hue-rotate": [{
2357
- "hue-rotate": [isNumber, isArbitraryVariable, isArbitraryValue]
2358
- }],
2359
- /**
2360
- * Invert
2361
- * @see https://tailwindcss.com/docs/invert
2362
- */
2363
- invert: [{
2364
- invert: ["", isNumber, isArbitraryVariable, isArbitraryValue]
2365
- }],
2366
- /**
2367
- * Saturate
2368
- * @see https://tailwindcss.com/docs/saturate
2369
- */
2370
- saturate: [{
2371
- saturate: [isNumber, isArbitraryVariable, isArbitraryValue]
2372
- }],
2373
- /**
2374
- * Sepia
2375
- * @see https://tailwindcss.com/docs/sepia
2376
- */
2377
- sepia: [{
2378
- sepia: ["", isNumber, isArbitraryVariable, isArbitraryValue]
2379
- }],
2380
- /**
2381
- * Backdrop Filter
2382
- * @see https://tailwindcss.com/docs/backdrop-filter
2383
- */
2384
- "backdrop-filter": [{
2385
- "backdrop-filter": [
2386
- // Deprecated since Tailwind CSS v3.0.0
2387
- "",
2388
- "none",
2389
- isArbitraryVariable,
2390
- isArbitraryValue
2391
- ]
2392
- }],
2393
- /**
2394
- * Backdrop Blur
2395
- * @see https://tailwindcss.com/docs/backdrop-blur
2396
- */
2397
- "backdrop-blur": [{
2398
- "backdrop-blur": scaleBlur()
2399
- }],
2400
- /**
2401
- * Backdrop Brightness
2402
- * @see https://tailwindcss.com/docs/backdrop-brightness
2403
- */
2404
- "backdrop-brightness": [{
2405
- "backdrop-brightness": [isNumber, isArbitraryVariable, isArbitraryValue]
2406
- }],
2407
- /**
2408
- * Backdrop Contrast
2409
- * @see https://tailwindcss.com/docs/backdrop-contrast
2410
- */
2411
- "backdrop-contrast": [{
2412
- "backdrop-contrast": [isNumber, isArbitraryVariable, isArbitraryValue]
2413
- }],
2414
- /**
2415
- * Backdrop Grayscale
2416
- * @see https://tailwindcss.com/docs/backdrop-grayscale
2417
- */
2418
- "backdrop-grayscale": [{
2419
- "backdrop-grayscale": ["", isNumber, isArbitraryVariable, isArbitraryValue]
2420
- }],
2421
- /**
2422
- * Backdrop Hue Rotate
2423
- * @see https://tailwindcss.com/docs/backdrop-hue-rotate
2424
- */
2425
- "backdrop-hue-rotate": [{
2426
- "backdrop-hue-rotate": [isNumber, isArbitraryVariable, isArbitraryValue]
2427
- }],
2428
- /**
2429
- * Backdrop Invert
2430
- * @see https://tailwindcss.com/docs/backdrop-invert
2431
- */
2432
- "backdrop-invert": [{
2433
- "backdrop-invert": ["", isNumber, isArbitraryVariable, isArbitraryValue]
2434
- }],
2435
- /**
2436
- * Backdrop Opacity
2437
- * @see https://tailwindcss.com/docs/backdrop-opacity
2438
- */
2439
- "backdrop-opacity": [{
2440
- "backdrop-opacity": [isNumber, isArbitraryVariable, isArbitraryValue]
2441
- }],
2442
- /**
2443
- * Backdrop Saturate
2444
- * @see https://tailwindcss.com/docs/backdrop-saturate
2445
- */
2446
- "backdrop-saturate": [{
2447
- "backdrop-saturate": [isNumber, isArbitraryVariable, isArbitraryValue]
2448
- }],
2449
- /**
2450
- * Backdrop Sepia
2451
- * @see https://tailwindcss.com/docs/backdrop-sepia
2452
- */
2453
- "backdrop-sepia": [{
2454
- "backdrop-sepia": ["", isNumber, isArbitraryVariable, isArbitraryValue]
2455
- }],
2456
- // --------------
2457
- // --- Tables ---
2458
- // --------------
2459
- /**
2460
- * Border Collapse
2461
- * @see https://tailwindcss.com/docs/border-collapse
2462
- */
2463
- "border-collapse": [{
2464
- border: ["collapse", "separate"]
2465
- }],
2466
- /**
2467
- * Border Spacing
2468
- * @see https://tailwindcss.com/docs/border-spacing
2469
- */
2470
- "border-spacing": [{
2471
- "border-spacing": scaleUnambiguousSpacing()
2472
- }],
2473
- /**
2474
- * Border Spacing X
2475
- * @see https://tailwindcss.com/docs/border-spacing
2476
- */
2477
- "border-spacing-x": [{
2478
- "border-spacing-x": scaleUnambiguousSpacing()
2479
- }],
2480
- /**
2481
- * Border Spacing Y
2482
- * @see https://tailwindcss.com/docs/border-spacing
2483
- */
2484
- "border-spacing-y": [{
2485
- "border-spacing-y": scaleUnambiguousSpacing()
2486
- }],
2487
- /**
2488
- * Table Layout
2489
- * @see https://tailwindcss.com/docs/table-layout
2490
- */
2491
- "table-layout": [{
2492
- table: ["auto", "fixed"]
2493
- }],
2494
- /**
2495
- * Caption Side
2496
- * @see https://tailwindcss.com/docs/caption-side
2497
- */
2498
- caption: [{
2499
- caption: ["top", "bottom"]
2500
- }],
2501
- // ---------------------------------
2502
- // --- Transitions and Animation ---
2503
- // ---------------------------------
2504
- /**
2505
- * Transition Property
2506
- * @see https://tailwindcss.com/docs/transition-property
2507
- */
2508
- transition: [{
2509
- transition: ["", "all", "colors", "opacity", "shadow", "transform", "none", isArbitraryVariable, isArbitraryValue]
2510
- }],
2511
- /**
2512
- * Transition Behavior
2513
- * @see https://tailwindcss.com/docs/transition-behavior
2514
- */
2515
- "transition-behavior": [{
2516
- transition: ["normal", "discrete"]
2517
- }],
2518
- /**
2519
- * Transition Duration
2520
- * @see https://tailwindcss.com/docs/transition-duration
2521
- */
2522
- duration: [{
2523
- duration: [isNumber, "initial", isArbitraryVariable, isArbitraryValue]
2524
- }],
2525
- /**
2526
- * Transition Timing Function
2527
- * @see https://tailwindcss.com/docs/transition-timing-function
2528
- */
2529
- ease: [{
2530
- ease: ["linear", "initial", themeEase, isArbitraryVariable, isArbitraryValue]
2531
- }],
2532
- /**
2533
- * Transition Delay
2534
- * @see https://tailwindcss.com/docs/transition-delay
2535
- */
2536
- delay: [{
2537
- delay: [isNumber, isArbitraryVariable, isArbitraryValue]
2538
- }],
2539
- /**
2540
- * Animation
2541
- * @see https://tailwindcss.com/docs/animation
2542
- */
2543
- animate: [{
2544
- animate: ["none", themeAnimate, isArbitraryVariable, isArbitraryValue]
2545
- }],
2546
- // ------------------
2547
- // --- Transforms ---
2548
- // ------------------
2549
- /**
2550
- * Backface Visibility
2551
- * @see https://tailwindcss.com/docs/backface-visibility
2552
- */
2553
- backface: [{
2554
- backface: ["hidden", "visible"]
2555
- }],
2556
- /**
2557
- * Perspective
2558
- * @see https://tailwindcss.com/docs/perspective
2559
- */
2560
- perspective: [{
2561
- perspective: [themePerspective, isArbitraryVariable, isArbitraryValue]
2562
- }],
2563
- /**
2564
- * Perspective Origin
2565
- * @see https://tailwindcss.com/docs/perspective-origin
2566
- */
2567
- "perspective-origin": [{
2568
- "perspective-origin": scalePositionWithArbitrary()
2569
- }],
2570
- /**
2571
- * Rotate
2572
- * @see https://tailwindcss.com/docs/rotate
2573
- */
2574
- rotate: [{
2575
- rotate: scaleRotate()
2576
- }],
2577
- /**
2578
- * Rotate X
2579
- * @see https://tailwindcss.com/docs/rotate
2580
- */
2581
- "rotate-x": [{
2582
- "rotate-x": scaleRotate()
2583
- }],
2584
- /**
2585
- * Rotate Y
2586
- * @see https://tailwindcss.com/docs/rotate
2587
- */
2588
- "rotate-y": [{
2589
- "rotate-y": scaleRotate()
2590
- }],
2591
- /**
2592
- * Rotate Z
2593
- * @see https://tailwindcss.com/docs/rotate
2594
- */
2595
- "rotate-z": [{
2596
- "rotate-z": scaleRotate()
2597
- }],
2598
- /**
2599
- * Scale
2600
- * @see https://tailwindcss.com/docs/scale
2601
- */
2602
- scale: [{
2603
- scale: scaleScale()
2604
- }],
2605
- /**
2606
- * Scale X
2607
- * @see https://tailwindcss.com/docs/scale
2608
- */
2609
- "scale-x": [{
2610
- "scale-x": scaleScale()
2611
- }],
2612
- /**
2613
- * Scale Y
2614
- * @see https://tailwindcss.com/docs/scale
2615
- */
2616
- "scale-y": [{
2617
- "scale-y": scaleScale()
2618
- }],
2619
- /**
2620
- * Scale Z
2621
- * @see https://tailwindcss.com/docs/scale
2622
- */
2623
- "scale-z": [{
2624
- "scale-z": scaleScale()
2625
- }],
2626
- /**
2627
- * Scale 3D
2628
- * @see https://tailwindcss.com/docs/scale
2629
- */
2630
- "scale-3d": ["scale-3d"],
2631
- /**
2632
- * Skew
2633
- * @see https://tailwindcss.com/docs/skew
2634
- */
2635
- skew: [{
2636
- skew: scaleSkew()
2637
- }],
2638
- /**
2639
- * Skew X
2640
- * @see https://tailwindcss.com/docs/skew
2641
- */
2642
- "skew-x": [{
2643
- "skew-x": scaleSkew()
2644
- }],
2645
- /**
2646
- * Skew Y
2647
- * @see https://tailwindcss.com/docs/skew
2648
- */
2649
- "skew-y": [{
2650
- "skew-y": scaleSkew()
2651
- }],
2652
- /**
2653
- * Transform
2654
- * @see https://tailwindcss.com/docs/transform
2655
- */
2656
- transform: [{
2657
- transform: [isArbitraryVariable, isArbitraryValue, "", "none", "gpu", "cpu"]
2658
- }],
2659
- /**
2660
- * Transform Origin
2661
- * @see https://tailwindcss.com/docs/transform-origin
2662
- */
2663
- "transform-origin": [{
2664
- origin: scalePositionWithArbitrary()
2665
- }],
2666
- /**
2667
- * Transform Style
2668
- * @see https://tailwindcss.com/docs/transform-style
2669
- */
2670
- "transform-style": [{
2671
- transform: ["3d", "flat"]
2672
- }],
2673
- /**
2674
- * Translate
2675
- * @see https://tailwindcss.com/docs/translate
2676
- */
2677
- translate: [{
2678
- translate: scaleTranslate()
2679
- }],
2680
- /**
2681
- * Translate X
2682
- * @see https://tailwindcss.com/docs/translate
2683
- */
2684
- "translate-x": [{
2685
- "translate-x": scaleTranslate()
2686
- }],
2687
- /**
2688
- * Translate Y
2689
- * @see https://tailwindcss.com/docs/translate
2690
- */
2691
- "translate-y": [{
2692
- "translate-y": scaleTranslate()
2693
- }],
2694
- /**
2695
- * Translate Z
2696
- * @see https://tailwindcss.com/docs/translate
2697
- */
2698
- "translate-z": [{
2699
- "translate-z": scaleTranslate()
2700
- }],
2701
- /**
2702
- * Translate None
2703
- * @see https://tailwindcss.com/docs/translate
2704
- */
2705
- "translate-none": ["translate-none"],
2706
- // ---------------------
2707
- // --- Interactivity ---
2708
- // ---------------------
2709
- /**
2710
- * Accent Color
2711
- * @see https://tailwindcss.com/docs/accent-color
2712
- */
2713
- accent: [{
2714
- accent: scaleColor()
2715
- }],
2716
- /**
2717
- * Appearance
2718
- * @see https://tailwindcss.com/docs/appearance
2719
- */
2720
- appearance: [{
2721
- appearance: ["none", "auto"]
2722
- }],
2723
- /**
2724
- * Caret Color
2725
- * @see https://tailwindcss.com/docs/just-in-time-mode#caret-color-utilities
2726
- */
2727
- "caret-color": [{
2728
- caret: scaleColor()
2729
- }],
2730
- /**
2731
- * Color Scheme
2732
- * @see https://tailwindcss.com/docs/color-scheme
2733
- */
2734
- "color-scheme": [{
2735
- scheme: ["normal", "dark", "light", "light-dark", "only-dark", "only-light"]
2736
- }],
2737
- /**
2738
- * Cursor
2739
- * @see https://tailwindcss.com/docs/cursor
2740
- */
2741
- cursor: [{
2742
- cursor: ["auto", "default", "pointer", "wait", "text", "move", "help", "not-allowed", "none", "context-menu", "progress", "cell", "crosshair", "vertical-text", "alias", "copy", "no-drop", "grab", "grabbing", "all-scroll", "col-resize", "row-resize", "n-resize", "e-resize", "s-resize", "w-resize", "ne-resize", "nw-resize", "se-resize", "sw-resize", "ew-resize", "ns-resize", "nesw-resize", "nwse-resize", "zoom-in", "zoom-out", isArbitraryVariable, isArbitraryValue]
2743
- }],
2744
- /**
2745
- * Field Sizing
2746
- * @see https://tailwindcss.com/docs/field-sizing
2747
- */
2748
- "field-sizing": [{
2749
- "field-sizing": ["fixed", "content"]
2750
- }],
2751
- /**
2752
- * Pointer Events
2753
- * @see https://tailwindcss.com/docs/pointer-events
2754
- */
2755
- "pointer-events": [{
2756
- "pointer-events": ["auto", "none"]
2757
- }],
2758
- /**
2759
- * Resize
2760
- * @see https://tailwindcss.com/docs/resize
2761
- */
2762
- resize: [{
2763
- resize: ["none", "", "y", "x"]
2764
- }],
2765
- /**
2766
- * Scroll Behavior
2767
- * @see https://tailwindcss.com/docs/scroll-behavior
2768
- */
2769
- "scroll-behavior": [{
2770
- scroll: ["auto", "smooth"]
2771
- }],
2772
- /**
2773
- * Scroll Margin
2774
- * @see https://tailwindcss.com/docs/scroll-margin
2775
- */
2776
- "scroll-m": [{
2777
- "scroll-m": scaleUnambiguousSpacing()
2778
- }],
2779
- /**
2780
- * Scroll Margin X
2781
- * @see https://tailwindcss.com/docs/scroll-margin
2782
- */
2783
- "scroll-mx": [{
2784
- "scroll-mx": scaleUnambiguousSpacing()
2785
- }],
2786
- /**
2787
- * Scroll Margin Y
2788
- * @see https://tailwindcss.com/docs/scroll-margin
2789
- */
2790
- "scroll-my": [{
2791
- "scroll-my": scaleUnambiguousSpacing()
2792
- }],
2793
- /**
2794
- * Scroll Margin Start
2795
- * @see https://tailwindcss.com/docs/scroll-margin
2796
- */
2797
- "scroll-ms": [{
2798
- "scroll-ms": scaleUnambiguousSpacing()
2799
- }],
2800
- /**
2801
- * Scroll Margin End
2802
- * @see https://tailwindcss.com/docs/scroll-margin
2803
- */
2804
- "scroll-me": [{
2805
- "scroll-me": scaleUnambiguousSpacing()
2806
- }],
2807
- /**
2808
- * Scroll Margin Top
2809
- * @see https://tailwindcss.com/docs/scroll-margin
2810
- */
2811
- "scroll-mt": [{
2812
- "scroll-mt": scaleUnambiguousSpacing()
2813
- }],
2814
- /**
2815
- * Scroll Margin Right
2816
- * @see https://tailwindcss.com/docs/scroll-margin
2817
- */
2818
- "scroll-mr": [{
2819
- "scroll-mr": scaleUnambiguousSpacing()
2820
- }],
2821
- /**
2822
- * Scroll Margin Bottom
2823
- * @see https://tailwindcss.com/docs/scroll-margin
2824
- */
2825
- "scroll-mb": [{
2826
- "scroll-mb": scaleUnambiguousSpacing()
2827
- }],
2828
- /**
2829
- * Scroll Margin Left
2830
- * @see https://tailwindcss.com/docs/scroll-margin
2831
- */
2832
- "scroll-ml": [{
2833
- "scroll-ml": scaleUnambiguousSpacing()
2834
- }],
2835
- /**
2836
- * Scroll Padding
2837
- * @see https://tailwindcss.com/docs/scroll-padding
2838
- */
2839
- "scroll-p": [{
2840
- "scroll-p": scaleUnambiguousSpacing()
2841
- }],
2842
- /**
2843
- * Scroll Padding X
2844
- * @see https://tailwindcss.com/docs/scroll-padding
2845
- */
2846
- "scroll-px": [{
2847
- "scroll-px": scaleUnambiguousSpacing()
2848
- }],
2849
- /**
2850
- * Scroll Padding Y
2851
- * @see https://tailwindcss.com/docs/scroll-padding
2852
- */
2853
- "scroll-py": [{
2854
- "scroll-py": scaleUnambiguousSpacing()
2855
- }],
2856
- /**
2857
- * Scroll Padding Start
2858
- * @see https://tailwindcss.com/docs/scroll-padding
2859
- */
2860
- "scroll-ps": [{
2861
- "scroll-ps": scaleUnambiguousSpacing()
2862
- }],
2863
- /**
2864
- * Scroll Padding End
2865
- * @see https://tailwindcss.com/docs/scroll-padding
2866
- */
2867
- "scroll-pe": [{
2868
- "scroll-pe": scaleUnambiguousSpacing()
2869
- }],
2870
- /**
2871
- * Scroll Padding Top
2872
- * @see https://tailwindcss.com/docs/scroll-padding
2873
- */
2874
- "scroll-pt": [{
2875
- "scroll-pt": scaleUnambiguousSpacing()
2876
- }],
2877
- /**
2878
- * Scroll Padding Right
2879
- * @see https://tailwindcss.com/docs/scroll-padding
2880
- */
2881
- "scroll-pr": [{
2882
- "scroll-pr": scaleUnambiguousSpacing()
2883
- }],
2884
- /**
2885
- * Scroll Padding Bottom
2886
- * @see https://tailwindcss.com/docs/scroll-padding
2887
- */
2888
- "scroll-pb": [{
2889
- "scroll-pb": scaleUnambiguousSpacing()
2890
- }],
2891
- /**
2892
- * Scroll Padding Left
2893
- * @see https://tailwindcss.com/docs/scroll-padding
2894
- */
2895
- "scroll-pl": [{
2896
- "scroll-pl": scaleUnambiguousSpacing()
2897
- }],
2898
- /**
2899
- * Scroll Snap Align
2900
- * @see https://tailwindcss.com/docs/scroll-snap-align
2901
- */
2902
- "snap-align": [{
2903
- snap: ["start", "end", "center", "align-none"]
2904
- }],
2905
- /**
2906
- * Scroll Snap Stop
2907
- * @see https://tailwindcss.com/docs/scroll-snap-stop
2908
- */
2909
- "snap-stop": [{
2910
- snap: ["normal", "always"]
2911
- }],
2912
- /**
2913
- * Scroll Snap Type
2914
- * @see https://tailwindcss.com/docs/scroll-snap-type
2915
- */
2916
- "snap-type": [{
2917
- snap: ["none", "x", "y", "both"]
2918
- }],
2919
- /**
2920
- * Scroll Snap Type Strictness
2921
- * @see https://tailwindcss.com/docs/scroll-snap-type
2922
- */
2923
- "snap-strictness": [{
2924
- snap: ["mandatory", "proximity"]
2925
- }],
2926
- /**
2927
- * Touch Action
2928
- * @see https://tailwindcss.com/docs/touch-action
2929
- */
2930
- touch: [{
2931
- touch: ["auto", "none", "manipulation"]
2932
- }],
2933
- /**
2934
- * Touch Action X
2935
- * @see https://tailwindcss.com/docs/touch-action
2936
- */
2937
- "touch-x": [{
2938
- "touch-pan": ["x", "left", "right"]
2939
- }],
2940
- /**
2941
- * Touch Action Y
2942
- * @see https://tailwindcss.com/docs/touch-action
2943
- */
2944
- "touch-y": [{
2945
- "touch-pan": ["y", "up", "down"]
2946
- }],
2947
- /**
2948
- * Touch Action Pinch Zoom
2949
- * @see https://tailwindcss.com/docs/touch-action
2950
- */
2951
- "touch-pz": ["touch-pinch-zoom"],
2952
- /**
2953
- * User Select
2954
- * @see https://tailwindcss.com/docs/user-select
2955
- */
2956
- select: [{
2957
- select: ["none", "text", "all", "auto"]
2958
- }],
2959
- /**
2960
- * Will Change
2961
- * @see https://tailwindcss.com/docs/will-change
2962
- */
2963
- "will-change": [{
2964
- "will-change": ["auto", "scroll", "contents", "transform", isArbitraryVariable, isArbitraryValue]
2965
- }],
2966
- // -----------
2967
- // --- SVG ---
2968
- // -----------
2969
- /**
2970
- * Fill
2971
- * @see https://tailwindcss.com/docs/fill
2972
- */
2973
- fill: [{
2974
- fill: ["none", ...scaleColor()]
2975
- }],
2976
- /**
2977
- * Stroke Width
2978
- * @see https://tailwindcss.com/docs/stroke-width
2979
- */
2980
- "stroke-w": [{
2981
- stroke: [isNumber, isArbitraryVariableLength, isArbitraryLength, isArbitraryNumber]
2982
- }],
2983
- /**
2984
- * Stroke
2985
- * @see https://tailwindcss.com/docs/stroke
2986
- */
2987
- stroke: [{
2988
- stroke: ["none", ...scaleColor()]
2989
- }],
2990
- // ---------------------
2991
- // --- Accessibility ---
2992
- // ---------------------
2993
- /**
2994
- * Forced Color Adjust
2995
- * @see https://tailwindcss.com/docs/forced-color-adjust
2996
- */
2997
- "forced-color-adjust": [{
2998
- "forced-color-adjust": ["auto", "none"]
2999
- }]
3000
- },
3001
- conflictingClassGroups: {
3002
- overflow: ["overflow-x", "overflow-y"],
3003
- overscroll: ["overscroll-x", "overscroll-y"],
3004
- inset: ["inset-x", "inset-y", "start", "end", "top", "right", "bottom", "left"],
3005
- "inset-x": ["right", "left"],
3006
- "inset-y": ["top", "bottom"],
3007
- flex: ["basis", "grow", "shrink"],
3008
- gap: ["gap-x", "gap-y"],
3009
- p: ["px", "py", "ps", "pe", "pt", "pr", "pb", "pl"],
3010
- px: ["pr", "pl"],
3011
- py: ["pt", "pb"],
3012
- m: ["mx", "my", "ms", "me", "mt", "mr", "mb", "ml"],
3013
- mx: ["mr", "ml"],
3014
- my: ["mt", "mb"],
3015
- size: ["w", "h"],
3016
- "font-size": ["leading"],
3017
- "fvn-normal": ["fvn-ordinal", "fvn-slashed-zero", "fvn-figure", "fvn-spacing", "fvn-fraction"],
3018
- "fvn-ordinal": ["fvn-normal"],
3019
- "fvn-slashed-zero": ["fvn-normal"],
3020
- "fvn-figure": ["fvn-normal"],
3021
- "fvn-spacing": ["fvn-normal"],
3022
- "fvn-fraction": ["fvn-normal"],
3023
- "line-clamp": ["display", "overflow"],
3024
- rounded: ["rounded-s", "rounded-e", "rounded-t", "rounded-r", "rounded-b", "rounded-l", "rounded-ss", "rounded-se", "rounded-ee", "rounded-es", "rounded-tl", "rounded-tr", "rounded-br", "rounded-bl"],
3025
- "rounded-s": ["rounded-ss", "rounded-es"],
3026
- "rounded-e": ["rounded-se", "rounded-ee"],
3027
- "rounded-t": ["rounded-tl", "rounded-tr"],
3028
- "rounded-r": ["rounded-tr", "rounded-br"],
3029
- "rounded-b": ["rounded-br", "rounded-bl"],
3030
- "rounded-l": ["rounded-tl", "rounded-bl"],
3031
- "border-spacing": ["border-spacing-x", "border-spacing-y"],
3032
- "border-w": ["border-w-x", "border-w-y", "border-w-s", "border-w-e", "border-w-t", "border-w-r", "border-w-b", "border-w-l"],
3033
- "border-w-x": ["border-w-r", "border-w-l"],
3034
- "border-w-y": ["border-w-t", "border-w-b"],
3035
- "border-color": ["border-color-x", "border-color-y", "border-color-s", "border-color-e", "border-color-t", "border-color-r", "border-color-b", "border-color-l"],
3036
- "border-color-x": ["border-color-r", "border-color-l"],
3037
- "border-color-y": ["border-color-t", "border-color-b"],
3038
- translate: ["translate-x", "translate-y", "translate-none"],
3039
- "translate-none": ["translate", "translate-x", "translate-y", "translate-z"],
3040
- "scroll-m": ["scroll-mx", "scroll-my", "scroll-ms", "scroll-me", "scroll-mt", "scroll-mr", "scroll-mb", "scroll-ml"],
3041
- "scroll-mx": ["scroll-mr", "scroll-ml"],
3042
- "scroll-my": ["scroll-mt", "scroll-mb"],
3043
- "scroll-p": ["scroll-px", "scroll-py", "scroll-ps", "scroll-pe", "scroll-pt", "scroll-pr", "scroll-pb", "scroll-pl"],
3044
- "scroll-px": ["scroll-pr", "scroll-pl"],
3045
- "scroll-py": ["scroll-pt", "scroll-pb"],
3046
- touch: ["touch-x", "touch-y", "touch-pz"],
3047
- "touch-x": ["touch"],
3048
- "touch-y": ["touch"],
3049
- "touch-pz": ["touch"]
3050
- },
3051
- conflictingClassGroupModifiers: {
3052
- "font-size": ["leading"]
3053
- },
3054
- orderSensitiveModifiers: ["*", "**", "after", "backdrop", "before", "details-content", "file", "first-letter", "first-line", "marker", "placeholder", "selection"]
3055
- };
3056
- };
3057
- var twMerge = /* @__PURE__ */ createTailwindMerge(getDefaultConfig);
17
+ export * from "@repo/shadcn/ui/chart"
3058
18
 
3059
- // ../shadcn/lib/utils.ts
3060
- function cn(...inputs) {
3061
- return twMerge(clsx(inputs));
3062
- }
19
+ export * from "@repo/shadcn/ui/collapsible"
3063
20
 
3064
- // src/button/button.tsx
3065
- import { cva as cva2 } from "class-variance-authority";
21
+ export * from "@repo/shadcn/ui/command"
3066
22
 
3067
- // src/icons/icon-wrapper.tsx
3068
- import { jsx } from "react/jsx-runtime";
3069
- function Icon(_a) {
3070
- var _b = _a, {
3071
- icon: IconComponent,
3072
- strokeWidth = 1,
3073
- absoluteStrokeWidth = true,
3074
- size = 16
3075
- } = _b, props = __objRest(_b, [
3076
- "icon",
3077
- "strokeWidth",
3078
- "absoluteStrokeWidth",
3079
- "size"
3080
- ]);
3081
- return /* @__PURE__ */ jsx(
3082
- IconComponent,
3083
- __spreadProps(__spreadValues({}, props), {
3084
- strokeWidth,
3085
- absoluteStrokeWidth,
3086
- size
3087
- })
3088
- );
3089
- }
23
+ export * from "@repo/shadcn/ui/hover-card"
3090
24
 
3091
- // src/icons/spinner-icon.tsx
3092
- import { cva } from "class-variance-authority";
3093
- import { jsx as jsx2, jsxs } from "react/jsx-runtime";
3094
- var spinnerVariants = cva("animate-spin", {
3095
- variants: {
3096
- size: {
3097
- xs: "size-3",
3098
- sm: "size-4",
3099
- md: "size-6",
3100
- lg: "size-8",
3101
- xl: "size-10",
3102
- "2xl": "size-12",
3103
- "3xl": "size-14",
3104
- "4xl": "size-16",
3105
- "5xl": "size-18",
3106
- "6xl": "size-20",
3107
- "7xl": "size-22",
3108
- "8xl": "size-24",
3109
- "9xl": "size-26"
3110
- }
3111
- },
3112
- defaultVariants: {
3113
- size: "md"
3114
- }
3115
- });
3116
- var SpinnerIcon = (_a) => {
3117
- var _b = _a, {
3118
- size,
3119
- className,
3120
- trackClassName = "text-border",
3121
- indicatorClassName = "text-primary"
3122
- } = _b, props = __objRest(_b, [
3123
- "size",
3124
- "className",
3125
- "trackClassName",
3126
- "indicatorClassName"
3127
- ]);
3128
- return /* @__PURE__ */ jsxs(
3129
- "svg",
3130
- __spreadProps(__spreadValues({
3131
- viewBox: "0 0 64 64",
3132
- fill: "none",
3133
- xmlns: "http://www.w3.org/2000/svg",
3134
- className: cn(spinnerVariants({ size }), className)
3135
- }, props), {
3136
- children: [
3137
- /* @__PURE__ */ jsx2(
3138
- "path",
3139
- {
3140
- d: "M32 3C35.8083 3 39.5794 3.75011 43.0978 5.20749C46.6163 6.66488 49.8132 8.80101 52.5061 11.4939C55.199 14.1868 57.3351 17.3837 58.7925 20.9022C60.2499 24.4206 61 28.1917 61 32C61 35.8083 60.2499 39.5794 58.7925 43.0978C57.3351 46.6163 55.199 49.8132 52.5061 52.5061C49.8132 55.199 46.6163 57.3351 43.0978 58.7925C39.5794 60.2499 35.8083 61 32 61C28.1917 61 24.4206 60.2499 20.9022 58.7925C17.3837 57.3351 14.1868 55.199 11.4939 52.5061C8.801 49.8132 6.66487 46.6163 5.20749 43.0978C3.7501 39.5794 3 35.8083 3 32C3 28.1917 3.75011 24.4206 5.2075 20.9022C6.66489 17.3837 8.80101 14.1868 11.4939 11.4939C14.1868 8.80099 17.3838 6.66487 20.9022 5.20749C24.4206 3.7501 28.1917 3 32 3L32 3Z",
3141
- stroke: "currentColor",
3142
- strokeWidth: "5",
3143
- strokeLinecap: "round",
3144
- strokeLinejoin: "round",
3145
- className: trackClassName
3146
- }
3147
- ),
3148
- /* @__PURE__ */ jsx2(
3149
- "path",
3150
- {
3151
- d: "M32 3C36.5778 3 41.0906 4.08374 45.1692 6.16256C49.2477 8.24138 52.7762 11.2562 55.466 14.9605C58.1558 18.6647 59.9304 22.9531 60.6448 27.4748C61.3591 31.9965 60.9928 36.6232 59.5759 40.9762",
3152
- stroke: "currentColor",
3153
- strokeWidth: "5",
3154
- strokeLinecap: "round",
3155
- strokeLinejoin: "round",
3156
- className: indicatorClassName
3157
- }
3158
- )
3159
- ]
3160
- })
3161
- );
3162
- };
25
+ export * from "@repo/shadcn/ui/input-group"
26
+
27
+ export * from "@repo/shadcn/ui/map"
28
+
29
+ export * from "@repo/shadcn/ui/place-autocomplete"
3163
30
 
3164
- // src/icons/close-icon.tsx
3165
- import { jsx as jsx3 } from "react/jsx-runtime";
3166
- var CloseIcon = ({
3167
- className,
3168
- fill = "fill-foreground"
3169
- }) => {
3170
- return /* @__PURE__ */ jsx3(
3171
- "svg",
3172
- {
3173
- width: "17",
3174
- height: "17",
3175
- viewBox: "0 0 17 17",
3176
- fill: "none",
3177
- xmlns: "http://www.w3.org/2000/svg",
3178
- className: cn("transition-opacity hover:opacity-90", className),
3179
- children: /* @__PURE__ */ jsx3(
3180
- "path",
3181
- {
3182
- opacity: "0.2",
3183
- d: "M2.38191 2.38176C5.55755 -0.793655 10.7065 -0.793755 13.8821 2.38176C17.0576 5.55733 17.0575 10.7063 13.8821 13.8819C10.7064 17.0576 5.55755 17.0575 2.38191 13.8819C-0.793671 10.7063 -0.793707 5.55738 2.38191 2.38176ZM6.76887 8.15117L4.4107 10.5093L5.76346 11.8621L8.12163 9.50393L10.486 11.8683L11.8388 10.5156L9.47439 8.15117L11.8519 5.77366L10.4991 4.42091L8.12163 6.79841L5.75034 4.42712L4.39758 5.77988L6.76887 8.15117Z",
3184
- className: fill
3185
- }
3186
- )
3187
- }
3188
- );
3189
- };
31
+ export * from "@repo/shadcn/ui/popover"
3190
32
 
3191
- // src/button/button.tsx
3192
- import { Fragment, jsx as jsx4, jsxs as jsxs2 } from "react/jsx-runtime";
3193
- var buttonVariants = cva2(
3194
- "inline-flex items-center justify-center gap-2 whitespace-nowrap rounded-lg text-sm font-medium transition-colors focus-visible:outline-none focus-visible:ring-1 focus-visible:ring-ring disabled:opacity-50",
3195
- {
3196
- variants: {
3197
- type: {
3198
- primary: "",
3199
- secondary: "",
3200
- tertiary: "",
3201
- quaternary: "",
3202
- warning: "",
3203
- danger: "",
3204
- success: ""
3205
- },
3206
- theme: {
3207
- solid: "",
3208
- light: "",
3209
- outline: "border",
3210
- borderless: "border-0 bg-transparent",
3211
- link: "text-primary underline-offset-2 underline hover:opacity-80"
3212
- },
3213
- size: {
3214
- xs: "h-7 px-2.5 text-xs",
3215
- small: "h-9 px-3 text-xs",
3216
- default: "h-9 px-4 py-2",
3217
- large: "h-11 px-8 text-base",
3218
- icon: "h-9 w-9",
3219
- link: "px-0 py-0"
3220
- },
3221
- block: {
3222
- true: "w-full",
3223
- false: ""
3224
- }
3225
- },
3226
- compoundVariants: [
3227
- // Primary button variants
3228
- {
3229
- type: "primary",
3230
- theme: "solid",
3231
- className: "bg-btn-primary border border-primary text-primary-foreground hover:bg-primary active:bg-primary disabled:bg-primary/60"
3232
- },
3233
- {
3234
- type: "primary",
3235
- theme: "light",
3236
- className: "bg-gray-200 text-primary hover:bg-gray-300 active:bg-gray-400 dark:bg-gray-700 dark:hover:bg-gray-600 dark:active:bg-gray-500"
3237
- },
3238
- {
3239
- type: "primary",
3240
- theme: "outline",
3241
- className: "border-primary text-primary hover:bg-primary hover:text-primary-foreground active:bg-primary/90 active:text-primary-foreground"
3242
- },
3243
- {
3244
- type: "primary",
3245
- theme: "borderless",
3246
- className: "text-primary hover:bg-gray-200 active:bg-gray-300 dark:hover:bg-gray-700 dark:active:bg-gray-600"
3247
- },
3248
- // Secondary button variants
3249
- {
3250
- type: "secondary",
3251
- theme: "solid",
3252
- className: "bg-btn-secondary border border-secondary text-secondary-foreground hover:bg-secondary active:bg-secondary disabled:bg-secondary/60"
3253
- },
3254
- {
3255
- type: "secondary",
3256
- theme: "light",
3257
- className: "bg-gray-200 text-secondary hover:bg-gray-300 active:bg-gray-400 dark:bg-gray-700 dark:hover:bg-gray-600 dark:active:bg-gray-500"
3258
- },
3259
- {
3260
- type: "secondary",
3261
- theme: "outline",
3262
- className: "border-secondary/90 hover:border-secondary text-secondary active:bg-secondary/90 active:text-secondary-foreground"
3263
- },
3264
- {
3265
- type: "secondary",
3266
- theme: "borderless",
3267
- className: "text-secondary hover:bg-gray-200 active:bg-gray-300 dark:hover:bg-gray-700 dark:active:bg-gray-600"
3268
- },
3269
- // Tertiary button variants
3270
- {
3271
- type: "tertiary",
3272
- theme: "solid",
3273
- className: "bg-btn-tertiary border border-tertiary text-tertiary-foreground hover:bg-tertiary active:bg-tertiary disabled:bg-tertiary/60"
3274
- },
3275
- {
3276
- type: "tertiary",
3277
- theme: "light",
3278
- className: "bg-gray-200 text-tertiary hover:bg-gray-300 active:bg-gray-400 dark:bg-gray-700 dark:hover:bg-gray-600 dark:active:bg-gray-500"
3279
- },
3280
- {
3281
- type: "tertiary",
3282
- theme: "outline",
3283
- className: "border-tertiary text-tertiary hover:bg-tertiary hover:text-tertiary-foreground active:bg-tertiary/90 active:text-tertiary-foreground"
3284
- },
3285
- {
3286
- type: "tertiary",
3287
- theme: "borderless",
3288
- className: "text-tertiary hover:bg-gray-200 active:bg-gray-300 dark:hover:bg-gray-700 dark:active:bg-gray-600"
3289
- },
3290
- // Quaternary button variants
3291
- {
3292
- type: "quaternary",
3293
- theme: "solid",
3294
- className: "bg-btn-quaternary border border-quaternary text-quaternary-foreground hover:bg-quaternary active:bg-quaternary disabled:bg-quaternary/60"
3295
- },
3296
- {
3297
- type: "quaternary",
3298
- theme: "light",
3299
- className: "bg-gray-200 text-quaternary-foreground hover:bg-gray-300 active:bg-gray-400 dark:bg-gray-700 dark:hover:bg-gray-600 dark:active:bg-gray-500 dark:text-quaternary-foreground"
3300
- },
3301
- {
3302
- type: "quaternary",
3303
- theme: "outline",
3304
- className: "border-quaternary text-quaternary-foreground hover:border-btn-quaternary-hover hover:text-quaternary-foreground active:bg-quaternary/90 active:text-quaternary-foreground"
3305
- },
3306
- {
3307
- type: "quaternary",
3308
- theme: "borderless",
3309
- className: "text-quaternary-foreground hover:bg-gray-200 active:bg-gray-300 dark:hover:bg-gray-700 dark:active:bg-gray-600"
3310
- },
3311
- // Warning button variants
3312
- {
3313
- type: "warning",
3314
- theme: "solid",
3315
- className: "bg-yellow-600 text-white hover:bg-yellow-700 active:bg-yellow-800 dark:bg-yellow-500 dark:hover:bg-yellow-600 dark:active:bg-yellow-700"
3316
- },
3317
- {
3318
- type: "warning",
3319
- theme: "light",
3320
- className: "bg-gray-200 text-yellow-600 hover:bg-gray-300 active:bg-gray-400 dark:bg-gray-700 dark:text-yellow-400 dark:hover:bg-gray-600 dark:active:bg-gray-500"
3321
- },
3322
- {
3323
- type: "warning",
3324
- theme: "outline",
3325
- className: "border-yellow-600 text-yellow-600 hover:bg-yellow-600 hover:text-white active:bg-yellow-700 active:text-white dark:border-yellow-500 dark:text-yellow-500 dark:hover:bg-yellow-500 dark:hover:text-white dark:active:bg-yellow-600 dark:active:text-white"
3326
- },
3327
- {
3328
- type: "warning",
3329
- theme: "borderless",
3330
- className: "text-yellow-600 hover:bg-gray-200 active:bg-gray-300 dark:text-yellow-400 dark:hover:bg-gray-700 dark:active:bg-gray-600"
3331
- },
3332
- // Danger button variants
3333
- {
3334
- type: "danger",
3335
- theme: "solid",
3336
- className: "bg-destructive text-destructive-foreground hover:bg-destructive/90 active:bg-destructive/80"
3337
- },
3338
- {
3339
- type: "danger",
3340
- theme: "light",
3341
- className: "bg-gray-200 text-destructive hover:bg-gray-300 active:bg-gray-400 dark:bg-gray-700 dark:hover:bg-gray-600 dark:active:bg-gray-500"
3342
- },
3343
- {
3344
- type: "danger",
3345
- theme: "outline",
3346
- className: "border-destructive text-destructive hover:bg-destructive hover:text-destructive-foreground active:bg-destructive/90 active:text-destructive-foreground"
3347
- },
3348
- {
3349
- type: "danger",
3350
- theme: "borderless",
3351
- className: "text-destructive hover:bg-gray-200 active:bg-gray-300 dark:hover:bg-gray-700 dark:active:bg-gray-600"
3352
- },
3353
- // Success button variants
3354
- {
3355
- type: "success",
3356
- theme: "solid",
3357
- className: "bg-green-600 text-white hover:bg-green-700 active:bg-green-800 dark:bg-green-500 dark:hover:bg-green-600 dark:active:bg-green-700"
3358
- },
3359
- {
3360
- type: "success",
3361
- theme: "light",
3362
- className: "bg-gray-200 text-green-600 hover:bg-gray-300 active:bg-gray-400 dark:bg-gray-700 dark:text-green-400 dark:hover:bg-gray-600 dark:active:bg-gray-500"
3363
- },
3364
- {
3365
- type: "success",
3366
- theme: "outline",
3367
- className: "border-green-600 text-green-600 hover:bg-green-600 hover:text-white active:bg-green-700 active:text-white dark:border-green-500 dark:text-green-500 dark:hover:bg-green-500 dark:hover:text-white dark:active:bg-green-600 dark:active:text-white"
3368
- },
3369
- {
3370
- type: "success",
3371
- theme: "borderless",
3372
- className: "text-green-600 hover:bg-gray-200 active:bg-gray-300 dark:text-green-400 dark:hover:bg-gray-700 dark:active:bg-gray-600"
3373
- }
3374
- ],
3375
- defaultVariants: {
3376
- type: "primary",
3377
- theme: "solid",
3378
- size: "default",
3379
- block: false
3380
- }
3381
- }
3382
- );
3383
- var Button = React.forwardRef(
3384
- (_a, ref) => {
3385
- var _b = _a, {
3386
- className,
3387
- type,
3388
- theme,
3389
- size,
3390
- block,
3391
- loading = false,
3392
- disabled,
3393
- icon,
3394
- iconPosition = "left",
3395
- loadingIcon,
3396
- htmlType = "button",
3397
- children
3398
- } = _b, props = __objRest(_b, [
3399
- "className",
3400
- "type",
3401
- "theme",
3402
- "size",
3403
- "block",
3404
- "loading",
3405
- "disabled",
3406
- "icon",
3407
- "iconPosition",
3408
- "loadingIcon",
3409
- "htmlType",
3410
- "children"
3411
- ]);
3412
- const isDisabled = disabled || loading;
3413
- const isIconOnly = (icon || loading) && !children;
3414
- const showIcon = !loading && icon;
3415
- const getLoadingIcon = () => {
3416
- return loadingIcon || /* @__PURE__ */ jsx4(
3417
- SpinnerIcon,
3418
- {
3419
- size: size === "small" ? "xs" : size === "large" ? "sm" : "md",
3420
- "aria-hidden": "true"
3421
- }
3422
- );
3423
- };
3424
- const showLoadingIcon = loading && (isIconOnly ? getLoadingIcon() : /* @__PURE__ */ jsx4(SpinnerIcon, { size: "sm", "aria-hidden": "true" }));
3425
- const getIconOnlyClass = () => {
3426
- if (!isIconOnly || size === "icon") return "";
3427
- if (size === "small") return "w-8 px-0";
3428
- if (size === "large") return "w-11 px-0";
3429
- return "w-9 px-0";
3430
- };
3431
- return /* @__PURE__ */ jsx4(
3432
- "button",
3433
- __spreadProps(__spreadValues({
3434
- className: cn(buttonVariants({ type, theme, size, block }), getIconOnlyClass(), className),
3435
- ref,
3436
- disabled: isDisabled,
3437
- type: htmlType
3438
- }, props), {
3439
- children: isIconOnly ? loading ? showLoadingIcon : showIcon && icon : /* @__PURE__ */ jsxs2(Fragment, { children: [
3440
- showLoadingIcon && showLoadingIcon,
3441
- showIcon && iconPosition === "left" && icon,
3442
- children,
3443
- showIcon && iconPosition === "right" && icon
3444
- ] })
3445
- })
3446
- );
3447
- }
3448
- );
3449
- Button.displayName = "Button";
33
+ export * from "@repo/shadcn/ui/separator"
34
+
35
+ export * from "@repo/shadcn/ui/skeleton"
36
+
37
+ export * from "@repo/shadcn/ui/spinner"
38
+
39
+ export * from "@repo/shadcn/ui/table"
40
+
41
+ export * from "@repo/shadcn/ui/visuallyhidden"
42
+
43
+ //#region src/index.ts
44
+ var src_exports = /* @__PURE__ */ __exportAll({
45
+ AbsoluteRangePanel: () => CustomRangePanel,
46
+ Alert: () => Alert,
47
+ AlertDescription: () => AlertDescription,
48
+ AlertTitle: () => AlertTitle,
49
+ AppSidebar: () => AppSidebar,
50
+ Autocomplete: () => Autocomplete,
51
+ AvatarStack: () => AvatarStack,
52
+ Badge: () => Badge,
53
+ Button: () => Button,
54
+ Calendar: () => Calendar,
55
+ CalendarDatePicker: () => CalendarDatePicker,
56
+ CalendarDayButton: () => CalendarDayButton,
57
+ Card: () => Card,
58
+ CardContent: () => CardContent,
59
+ CardDescription: () => CardDescription,
60
+ CardFooter: () => CardFooter,
61
+ CardHeader: () => CardHeader,
62
+ CardTitle: () => CardTitle,
63
+ Checkbox: () => Checkbox,
64
+ ClientOnly: () => ClientOnly,
65
+ CloseIcon: () => CloseIcon,
66
+ Col: () => Col,
67
+ CustomRangePanel: () => CustomRangePanel,
68
+ DEFAULT_PRESETS: () => DEFAULT_PRESETS,
69
+ DatumProvider: () => DatumProvider,
70
+ Dialog: () => Dialog,
71
+ DropdownMenu: () => DropdownMenu,
72
+ DropdownMenuCheckboxItem: () => DropdownMenuCheckboxItem,
73
+ DropdownMenuContent: () => DropdownMenuContent,
74
+ DropdownMenuGroup: () => DropdownMenuGroup,
75
+ DropdownMenuItem: () => DropdownMenuItem,
76
+ DropdownMenuLabel: () => DropdownMenuLabel,
77
+ DropdownMenuPortal: () => DropdownMenuPortal,
78
+ DropdownMenuRadioGroup: () => DropdownMenuRadioGroup,
79
+ DropdownMenuRadioItem: () => DropdownMenuRadioItem,
80
+ DropdownMenuSeparator: () => DropdownMenuSeparator,
81
+ DropdownMenuShortcut: () => DropdownMenuShortcut,
82
+ DropdownMenuSub: () => DropdownMenuSub,
83
+ DropdownMenuSubContent: () => DropdownMenuSubContent,
84
+ DropdownMenuSubTrigger: () => DropdownMenuSubTrigger,
85
+ DropdownMenuTrigger: () => DropdownMenuTrigger,
86
+ Dropzone: () => Dropzone,
87
+ DropzoneContent: () => DropzoneContent,
88
+ DropzoneEmptyState: () => DropzoneEmptyState,
89
+ EmptyContent: () => EmptyContent,
90
+ FileInputButton: () => FileInputButton,
91
+ Form: () => Form,
92
+ FormAutocomplete: () => FormAutocomplete,
93
+ FormButton: () => FormButton,
94
+ FormCheckbox: () => FormCheckbox,
95
+ FormCopyBox: () => FormCopyBox,
96
+ FormCustom: () => FormCustom,
97
+ FormDescription: () => FormDescription,
98
+ FormDialog: () => FormDialog,
99
+ FormError: () => FormError,
100
+ FormField: () => FormField,
101
+ FormFieldArray: () => FormFieldArray,
102
+ FormInput: () => FormInput,
103
+ FormRadioGroup: () => FormRadioGroup,
104
+ FormRadioItem: () => FormRadioItem,
105
+ FormRoot: () => FormRoot,
106
+ FormSelect: () => FormSelect,
107
+ FormSelectItem: () => FormSelectItem,
108
+ FormStep: () => FormStep,
109
+ FormStepper: () => FormStepper,
110
+ FormSubmit: () => FormSubmit,
111
+ FormSwitch: () => FormSwitch,
112
+ FormTextarea: () => FormTextarea,
113
+ FormWhen: () => FormWhen,
114
+ GRID_BREAKPOINTS: () => GRID_BREAKPOINTS,
115
+ GRID_COLUMNS: () => GRID_COLUMNS,
116
+ GRID_PREFIX: () => GRID_PREFIX,
117
+ Icon: () => Icon,
118
+ Input: () => Input,
119
+ InputNumber: () => InputNumber,
120
+ InputWithAddons: () => InputWithAddons,
121
+ Label: () => Label,
122
+ LinkButton: () => LinkButton,
123
+ LoaderOverlay: () => LoaderOverlay,
124
+ LocalTaskStorage: () => LocalTaskStorage,
125
+ MoreActions: () => MoreActions,
126
+ NavMain: () => NavMain,
127
+ PageTitle: () => PageTitle,
128
+ QuickRangesPanel: () => QuickRangesPanel,
129
+ RESPONSIVE_ARRAY: () => RESPONSIVE_ARRAY,
130
+ RESPONSIVE_MAP: () => RESPONSIVE_MAP,
131
+ RadioGroup: () => RadioGroup,
132
+ RadioGroupItem: () => RadioGroupItem,
133
+ RedisTaskStorage: () => RedisTaskStorage,
134
+ Row: () => Row,
135
+ RowContext: () => RowContext,
136
+ Select: () => Select,
137
+ SelectContent: () => SelectContent,
138
+ SelectGroup: () => SelectGroup,
139
+ SelectItem: () => SelectItem,
140
+ SelectLabel: () => SelectLabel,
141
+ SelectScrollDownButton: () => SelectScrollDownButton,
142
+ SelectScrollUpButton: () => SelectScrollUpButton,
143
+ SelectSeparator: () => SelectSeparator,
144
+ SelectTrigger: () => SelectTrigger,
145
+ SelectValue: () => SelectValue,
146
+ Sheet: () => Sheet,
147
+ SheetClose: () => SheetClose,
148
+ SheetContent: () => SheetContent,
149
+ SheetDescription: () => SheetDescription,
150
+ SheetFooter: () => SheetFooter,
151
+ SheetHeader: () => SheetHeader,
152
+ SheetOverlay: () => SheetOverlay,
153
+ SheetTitle: () => SheetTitle,
154
+ SheetTrigger: () => SheetTrigger,
155
+ Sidebar: () => Sidebar,
156
+ SidebarContent: () => SidebarContent,
157
+ SidebarFooter: () => SidebarFooter,
158
+ SidebarGroup: () => SidebarGroup,
159
+ SidebarGroupAction: () => SidebarGroupAction,
160
+ SidebarGroupContent: () => SidebarGroupContent,
161
+ SidebarGroupLabel: () => SidebarGroupLabel,
162
+ SidebarHeader: () => SidebarHeader,
163
+ SidebarInput: () => SidebarInput,
164
+ SidebarInset: () => SidebarInset,
165
+ SidebarMenu: () => SidebarMenu,
166
+ SidebarMenuAction: () => SidebarMenuAction,
167
+ SidebarMenuBadge: () => SidebarMenuBadge,
168
+ SidebarMenuButton: () => SidebarMenuButton,
169
+ SidebarMenuItem: () => SidebarMenuItem,
170
+ SidebarMenuSkeleton: () => SidebarMenuSkeleton,
171
+ SidebarMenuSub: () => SidebarMenuSub,
172
+ SidebarMenuSubButton: () => SidebarMenuSubButton,
173
+ SidebarMenuSubItem: () => SidebarMenuSubItem,
174
+ SidebarProvider: () => SidebarProvider,
175
+ SidebarRail: () => SidebarRail,
176
+ SidebarSeparator: () => SidebarSeparator,
177
+ SidebarTrigger: () => SidebarTrigger,
178
+ SpinnerIcon: () => SpinnerIcon,
179
+ StepperControls: () => StepperControls,
180
+ StepperNavigation: () => StepperNavigation,
181
+ Switch: () => Switch,
182
+ Tabs: () => Tabs,
183
+ TabsContent: () => TabsContent,
184
+ TabsLinkTrigger: () => TabsLinkTrigger,
185
+ TabsList: () => TabsList,
186
+ TabsTrigger: () => TabsTrigger,
187
+ TagsInput: () => TagsInput,
188
+ TaskPanel: () => TaskPanel,
189
+ TaskPanelActions: () => TaskPanelActions,
190
+ TaskPanelCounter: () => TaskPanelCounter,
191
+ TaskPanelHeader: () => TaskPanelHeader,
192
+ TaskPanelItem: () => TaskPanelItem,
193
+ TaskQueue: () => TaskQueue,
194
+ TaskQueueDropdown: () => TaskQueueDropdown,
195
+ TaskQueueProvider: () => TaskQueueProvider,
196
+ TaskQueueTrigger: () => TaskQueueTrigger,
197
+ TaskSummaryDialog: () => TaskSummaryDialog,
198
+ Textarea: () => Textarea,
199
+ ThemeProvider: () => ThemeProvider,
200
+ ThemeScript: () => ThemeScript,
201
+ TimeRangePicker: () => TimeRangePicker,
202
+ TimezoneSelector: () => TimezoneSelector,
203
+ Toaster: () => Toaster,
204
+ Tooltip: () => Tooltip,
205
+ avatarStackVariants: () => avatarStackVariants,
206
+ badgeVariants: () => badgeVariants,
207
+ buttonVariants: () => buttonVariants,
208
+ cn: () => cn,
209
+ configureProgress: () => configureProgress,
210
+ createOrgMetadata: () => createOrgMetadata,
211
+ createProjectMetadata: () => createProjectMetadata,
212
+ createTimezoneOption: () => createTimezoneOption,
213
+ createUserMetadata: () => createUserMetadata,
214
+ defineStepper: () => defineStepper,
215
+ detectStorage: () => detectStorage,
216
+ formatDateForInput: () => formatDateForInput,
217
+ formatSingleTimeDisplay: () => formatSingleTimeDisplay,
218
+ formatTimeRangeDisplay: () => formatTimeRangeDisplay,
219
+ formatTimezoneLabel: () => formatTimezoneLabel,
220
+ formatUtcForDisplay: () => formatUtcForDisplay,
221
+ getBrowserTimezone: () => getBrowserTimezone,
222
+ getContextLabel: () => getContextLabel,
223
+ getDefaultPreset: () => getDefaultPreset,
224
+ getDefaultTimezoneOptions: () => getDefaultTimezoneOptions,
225
+ getGutter: () => getGutter,
226
+ getPresetByKey: () => getPresetByKey,
227
+ getPresetByShortcut: () => getPresetByShortcut,
228
+ getPresetRange: () => getPresetRange,
229
+ getResponsiveValue: () => getResponsiveValue,
230
+ getShortTimezoneDisplay: () => getShortTimezoneDisplay,
231
+ getTimezoneOffset: () => getTimezoneOffset,
232
+ localInputStringToUtc: () => localInputStringToUtc,
233
+ matchesCurrentScope: () => matchesCurrentScope,
234
+ registerMediaQuery: () => registerMediaQuery,
235
+ startProgress: () => startProgress,
236
+ stopProgress: () => stopProgress,
237
+ toApiTimeRange: () => toApiTimeRange,
238
+ toast: () => toast,
239
+ useCopyToClipboard: () => useCopyToClipboard,
240
+ useCurrentScope: () => useCurrentScope,
241
+ useDebounce: () => useDebounce,
242
+ useField: () => useField,
243
+ useFieldContext: () => useFieldContext,
244
+ useFormContext: () => useFormContext,
245
+ useSidebar: () => useSidebar,
246
+ useStepper: () => useStepper,
247
+ useTaskQueue: () => useTaskQueue,
248
+ useTasksWithLabels: () => useTasksWithLabels,
249
+ useTheme: () => useTheme,
250
+ useToast: () => useToast,
251
+ useWatch: () => useWatch,
252
+ useWatchAll: () => useWatchAll,
253
+ utcStringToZonedDate: () => utcStringToZonedDate,
254
+ utcToLocalInputString: () => utcToLocalInputString,
255
+ zonedDateToUtcString: () => zonedDateToUtcString
256
+ });
257
+ __reExport(src_exports, components_exports);
3450
258
 
3451
- // src/button/link-button.tsx
3452
- import * as React2 from "react";
3453
- import { Link } from "react-router";
3454
- import { Fragment as Fragment2, jsx as jsx5, jsxs as jsxs3 } from "react/jsx-runtime";
3455
- var LinkButton = React2.forwardRef(
3456
- (_a, ref) => {
3457
- var _b = _a, { className, type, theme, size, block, icon, iconPosition = "left", children } = _b, props = __objRest(_b, ["className", "type", "theme", "size", "block", "icon", "iconPosition", "children"]);
3458
- const isIconOnly = icon && !children;
3459
- const getIconOnlyClass = () => {
3460
- if (!isIconOnly || size === "icon") return "";
3461
- if (size === "small") return "w-8 px-0";
3462
- if (size === "large") return "w-11 px-0";
3463
- return "w-9 px-0";
3464
- };
3465
- return /* @__PURE__ */ jsx5(
3466
- Link,
3467
- __spreadProps(__spreadValues({
3468
- className: cn(buttonVariants({ type, theme, size, block }), getIconOnlyClass(), className),
3469
- ref
3470
- }, props), {
3471
- children: isIconOnly ? icon : /* @__PURE__ */ jsxs3(Fragment2, { children: [
3472
- icon && iconPosition === "left" && icon,
3473
- children,
3474
- icon && iconPosition === "right" && icon
3475
- ] })
3476
- })
3477
- );
3478
- }
3479
- );
3480
- LinkButton.displayName = "LinkButton";
3481
- export {
3482
- Button,
3483
- CloseIcon,
3484
- Icon,
3485
- LinkButton,
3486
- SpinnerIcon,
3487
- buttonVariants,
3488
- cn
3489
- };
259
+ //#endregion
260
+ export { CustomRangePanel as AbsoluteRangePanel, CustomRangePanel, Alert, AlertDescription, AlertTitle, AppSidebar, Autocomplete, AvatarStack, Badge, Button, Calendar, CalendarDatePicker, CalendarDayButton, Card, CardContent, CardDescription, CardFooter, CardHeader, CardTitle, Checkbox, ClientOnly, CloseIcon, Col, DEFAULT_PRESETS, DatumProvider, Dialog, DropdownMenu, DropdownMenuCheckboxItem, DropdownMenuContent, DropdownMenuGroup, DropdownMenuItem, DropdownMenuLabel, DropdownMenuPortal, DropdownMenuRadioGroup, DropdownMenuRadioItem, DropdownMenuSeparator, DropdownMenuShortcut, DropdownMenuSub, DropdownMenuSubContent, DropdownMenuSubTrigger, DropdownMenuTrigger, Dropzone, DropzoneContent, DropzoneEmptyState, EmptyContent, FileInputButton, Form, FormAutocomplete, FormButton, FormCheckbox, FormCopyBox, FormCustom, FormDescription, FormDialog, FormError, FormField, FormFieldArray, FormInput, FormRadioGroup, FormRadioItem, FormRoot, FormSelect, FormSelectItem, FormStep, FormStepper, FormSubmit, FormSwitch, FormTextarea, FormWhen, GRID_BREAKPOINTS, GRID_COLUMNS, GRID_PREFIX, Icon, Input, InputNumber, InputWithAddons, Label, LinkButton, LoaderOverlay, LocalTaskStorage, MoreActions, NavMain, PageTitle, QuickRangesPanel, RESPONSIVE_ARRAY, RESPONSIVE_MAP, RadioGroup, RadioGroupItem, RedisTaskStorage, Row, RowContext, Select, SelectContent, SelectGroup, SelectItem, SelectLabel, SelectScrollDownButton, SelectScrollUpButton, SelectSeparator, SelectTrigger, SelectValue, Sheet, SheetClose, SheetContent, SheetDescription, SheetFooter, SheetHeader, SheetOverlay, SheetTitle, SheetTrigger, Sidebar, SidebarContent, SidebarFooter, SidebarGroup, SidebarGroupAction, SidebarGroupContent, SidebarGroupLabel, SidebarHeader, SidebarInput, SidebarInset, SidebarMenu, SidebarMenuAction, SidebarMenuBadge, SidebarMenuButton, SidebarMenuItem, SidebarMenuSkeleton, SidebarMenuSub, SidebarMenuSubButton, SidebarMenuSubItem, SidebarProvider, SidebarRail, SidebarSeparator, SidebarTrigger, SpinnerIcon, StepperControls, StepperNavigation, Switch, Tabs, TabsContent, TabsLinkTrigger, TabsList, TabsTrigger, TagsInput, TaskPanel, TaskPanelActions, TaskPanelCounter, TaskPanelHeader, TaskPanelItem, TaskQueue, TaskQueueDropdown, TaskQueueProvider, TaskQueueTrigger, TaskSummaryDialog, Textarea, ThemeProvider, ThemeScript, TimeRangePicker, TimezoneSelector, Toaster, Tooltip, avatarStackVariants, badgeVariants, buttonVariants, cn, configureProgress, createOrgMetadata, createProjectMetadata, createTimezoneOption, createUserMetadata, defineStepper, detectStorage, formatDateForInput, formatSingleTimeDisplay, formatTimeRangeDisplay, formatTimezoneLabel, formatUtcForDisplay, getBrowserTimezone, getContextLabel, getDefaultPreset, getDefaultTimezoneOptions, getGutter, getPresetByKey, getPresetByShortcut, getPresetRange, getResponsiveValue, getShortTimezoneDisplay, getTimezoneOffset, localInputStringToUtc, matchesCurrentScope, registerMediaQuery, startProgress, stopProgress, toApiTimeRange, toast, useCopyToClipboard, useCurrentScope, useDebounce, useField, useFieldContext, useFormContext, useSidebar, useStepper, useTaskQueue, useTasksWithLabels, useTheme, useToast, useWatch, useWatchAll, utcStringToZonedDate, utcToLocalInputString, zonedDateToUtcString };
261
+ //# sourceMappingURL=index.mjs.map