source: frontend/node_modules/tailwindcss/src/featureFlags.js

Last change on this file was 9af201e, checked in by MBK <marija.karapandzova@…>, 11 days ago

Fix frontend appearance

  • Property mode set to 100644
File size: 1.7 KB
Line 
1import colors from 'picocolors'
2import log from './util/log'
3
4let defaults = {
5 optimizeUniversalDefaults: false,
6 generalizedModifiers: true,
7 disableColorOpacityUtilitiesByDefault: false,
8 relativeContentPathsByDefault: false,
9}
10
11let featureFlags = {
12 future: [
13 'hoverOnlyWhenSupported',
14 'respectDefaultRingColorOpacity',
15 'disableColorOpacityUtilitiesByDefault',
16 'relativeContentPathsByDefault',
17 ],
18 experimental: ['optimizeUniversalDefaults', 'generalizedModifiers'],
19}
20
21export function flagEnabled(config, flag) {
22 if (featureFlags.future.includes(flag)) {
23 return config.future === 'all' || (config?.future?.[flag] ?? defaults[flag] ?? false)
24 }
25
26 if (featureFlags.experimental.includes(flag)) {
27 return (
28 config.experimental === 'all' || (config?.experimental?.[flag] ?? defaults[flag] ?? false)
29 )
30 }
31
32 return false
33}
34
35function experimentalFlagsEnabled(config) {
36 if (config.experimental === 'all') {
37 return featureFlags.experimental
38 }
39
40 return Object.keys(config?.experimental ?? {}).filter(
41 (flag) => featureFlags.experimental.includes(flag) && config.experimental[flag]
42 )
43}
44
45export function issueFlagNotices(config) {
46 if (process.env.JEST_WORKER_ID !== undefined) {
47 return
48 }
49
50 if (experimentalFlagsEnabled(config).length > 0) {
51 let changes = experimentalFlagsEnabled(config)
52 .map((s) => colors.yellow(s))
53 .join(', ')
54
55 log.warn('experimental-flags-enabled', [
56 `You have enabled experimental features: ${changes}`,
57 'Experimental features in Tailwind CSS are not covered by semver, may introduce breaking changes, and can change at any time.',
58 ])
59 }
60}
61
62export default featureFlags
Note: See TracBrowser for help on using the repository browser.