@tamagui/web 1.101.7 → 1.102.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.
- package/dist/cjs/createComponent.native.js +6 -2
- package/dist/cjs/createComponent.native.js.map +1 -1
- package/dist/cjs/createVariable.native.js +5 -1
- package/dist/cjs/createVariable.native.js.map +1 -1
- package/dist/cjs/createVariables.native.js +7 -2
- package/dist/cjs/createVariables.native.js.map +1 -1
- package/dist/cjs/helpers/getSplitStyles.native.js +2 -2
- package/dist/cjs/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/cjs/helpers/isObj.native.js +5 -1
- package/dist/cjs/helpers/isObj.native.js.map +1 -1
- package/dist/cjs/helpers/normalizeValueWithProperty.native.js +5 -1
- package/dist/cjs/helpers/normalizeValueWithProperty.native.js.map +1 -1
- package/dist/cjs/hooks/useTheme.native.js +5 -1
- package/dist/cjs/hooks/useTheme.native.js.map +1 -1
- package/dist/esm/createComponent.native.js +6 -2
- package/dist/esm/createComponent.native.js.map +1 -1
- package/dist/esm/createVariable.native.js +5 -1
- package/dist/esm/createVariable.native.js.map +1 -1
- package/dist/esm/createVariables.native.js +5 -1
- package/dist/esm/createVariables.native.js.map +1 -1
- package/dist/esm/helpers/getSplitStyles.native.js +2 -2
- package/dist/esm/helpers/getSplitStyles.native.js.map +1 -1
- package/dist/esm/helpers/isObj.native.js +5 -1
- package/dist/esm/helpers/isObj.native.js.map +1 -1
- package/dist/esm/helpers/normalizeValueWithProperty.native.js +5 -1
- package/dist/esm/helpers/normalizeValueWithProperty.native.js.map +1 -1
- package/dist/esm/hooks/useTheme.native.js +5 -1
- package/dist/esm/hooks/useTheme.native.js.map +1 -1
- package/package.json +11 -11
- package/src/types.tsx +144 -83
- package/types/hooks/useConfiguration.d.ts.map +1 -1
- package/types/types.d.ts +131 -70
- package/types/types.d.ts.map +1 -1
package/src/types.tsx
CHANGED
|
@@ -491,53 +491,81 @@ type AllowedStyleValuesSetting =
|
|
|
491
491
|
type AutocompleteSpecificTokensSetting = boolean | 'except-special'
|
|
492
492
|
|
|
493
493
|
type GenericTamaguiSettings = {
|
|
494
|
+
// TODO
|
|
495
|
+
/**
|
|
496
|
+
* When true, Tamagui will always prefer a more specific style prop over a
|
|
497
|
+
* less specific one.
|
|
498
|
+
*
|
|
499
|
+
* By default, Tamagui processes all style props in order of definition on the
|
|
500
|
+
* object. This is a bit strange to most people, but it gets around many
|
|
501
|
+
* annoying issues with specificity. You can see our docs on this here:
|
|
502
|
+
* https://tamagui.dev/docs/intro/styles#style-order-is-important
|
|
503
|
+
*
|
|
504
|
+
* But this can be confusing in simple cases, like when you do:
|
|
505
|
+
*
|
|
506
|
+
* <View paddingTop={0} padding={10} />
|
|
507
|
+
*
|
|
508
|
+
* This would set paddingTop ultimately to be 10, because padding comes after
|
|
509
|
+
* paddingTop. When this setting is set to true, paddingTop will always beat
|
|
510
|
+
* padding, because it is more specific.
|
|
511
|
+
*
|
|
512
|
+
* For variants, it will still take the prop order as definitive.
|
|
513
|
+
*
|
|
514
|
+
*
|
|
515
|
+
* @default false
|
|
516
|
+
*/
|
|
517
|
+
// preferSpecificStyleProps?: boolean
|
|
518
|
+
|
|
494
519
|
/**
|
|
495
520
|
* Set up allowed values on style props, this is only a type-level validation.
|
|
496
521
|
*
|
|
497
|
-
* "strict" - only allows tokens for any token-enabled properties
|
|
498
|
-
*
|
|
499
|
-
* "somewhat-strict" - allow tokens or:
|
|
500
|
-
*
|
|
501
|
-
*
|
|
502
|
-
*
|
|
503
|
-
* for color: named colors or rgba/hsla strings
|
|
504
|
-
* "somewhat-strict-web" - same as somewhat-strict but allows for web-specific tokens
|
|
522
|
+
* "strict" - only allows tokens for any token-enabled properties "strict-web"
|
|
523
|
+
* - same as strict but allows for web-specific tokens like auto/inherit
|
|
524
|
+
* "somewhat-strict" - allow tokens or: for space/size: string% or numbers for
|
|
525
|
+
* radius: number for zIndex: number for color: named colors or rgba/hsla
|
|
526
|
+
* strings "somewhat-strict-web" - same as somewhat-strict but allows for
|
|
527
|
+
* web-specific tokens
|
|
505
528
|
*
|
|
506
|
-
* @default false - allows any string (or number for styles that accept
|
|
529
|
+
* @default false - allows any string (or number for styles that accept
|
|
530
|
+
* numbers)
|
|
507
531
|
*
|
|
508
532
|
*/
|
|
509
533
|
allowedStyleValues?: AllowedStyleValuesSetting
|
|
510
534
|
|
|
511
535
|
/**
|
|
512
|
-
* Set up if "specific tokens" ($color.name) are added to the types where
|
|
513
|
-
* The VSCode autocomplete puts specific tokens above the
|
|
514
|
-
*
|
|
536
|
+
* Set up if "specific tokens" ($color.name) are added to the types where
|
|
537
|
+
* tokens are allowed. The VSCode autocomplete puts specific tokens above the
|
|
538
|
+
* regular ones, which leads to worse DX. If true this setting removes the
|
|
539
|
+
* specific token from types for the defined categories.
|
|
515
540
|
*
|
|
516
|
-
* If set to "except-special", specific tokens will autocomplete only if they
|
|
517
|
-
* one of the special token groups: space, size, radius,
|
|
541
|
+
* If set to "except-special", specific tokens will autocomplete only if they
|
|
542
|
+
* don't normally use one of the special token groups: space, size, radius,
|
|
543
|
+
* zIndex, color.
|
|
518
544
|
*
|
|
519
545
|
* @default except-special
|
|
520
546
|
*/
|
|
521
547
|
autocompleteSpecificTokens?: AutocompleteSpecificTokensSetting
|
|
522
548
|
|
|
523
549
|
/**
|
|
524
|
-
* Will change the behavior of media styles. By default they have a fixed
|
|
525
|
-
* always override any $theme- or $platform- styles. With
|
|
526
|
-
* the same precedence as the theme and
|
|
527
|
-
* determines if they
|
|
550
|
+
* Will change the behavior of media styles. By default they have a fixed
|
|
551
|
+
* specificity: they always override any $theme- or $platform- styles. With
|
|
552
|
+
* this enabled, media styles will have the same precedence as the theme and
|
|
553
|
+
* platform styles, meaning that the order of the props determines if they
|
|
554
|
+
* override.
|
|
528
555
|
*
|
|
529
556
|
* @default false
|
|
530
557
|
*/
|
|
531
558
|
mediaPropOrder?: boolean
|
|
532
559
|
|
|
533
560
|
/**
|
|
534
|
-
* On iOS, this enables a mode where Tamagui returns color values using
|
|
535
|
-
* This is a React Native built in feature, you can read the
|
|
536
|
-
*
|
|
561
|
+
* On iOS, this enables a mode where Tamagui returns color values using
|
|
562
|
+
* `DynamicColorIOS` This is a React Native built in feature, you can read the
|
|
563
|
+
* docs here: https://reactnative.dev/docs/dynamiccolorios
|
|
537
564
|
*
|
|
538
|
-
* We're working to make this enabled by default without any setting, but
|
|
539
|
-
* support inversing and/or changing to light/dark at any point
|
|
540
|
-
* support for either of these cases when
|
|
565
|
+
* We're working to make this enabled by default without any setting, but
|
|
566
|
+
* Tamagui themes support inversing and/or changing to light/dark at any point
|
|
567
|
+
* in the tree. We haven't implemented support for either of these cases when
|
|
568
|
+
* combined with this feature.
|
|
541
569
|
*
|
|
542
570
|
* So - as long as you:
|
|
543
571
|
*
|
|
@@ -545,26 +573,14 @@ type GenericTamaguiSettings = {
|
|
|
545
573
|
* 2. Don't use <Theme inverse> or themeInverse
|
|
546
574
|
* 3. Always change light/dark alongside the Appearance.colorScheme
|
|
547
575
|
*
|
|
548
|
-
* Then this feature is safe to turn on and will significantly speed up
|
|
576
|
+
* Then this feature is safe to turn on and will significantly speed up
|
|
577
|
+
* dark/light re-renders.
|
|
549
578
|
*/
|
|
550
579
|
fastSchemeChange?: boolean
|
|
551
580
|
|
|
552
581
|
/**
|
|
553
|
-
*
|
|
554
|
-
*
|
|
555
|
-
*
|
|
556
|
-
* But it does support taking any property inside of these attributes, historically, and it
|
|
557
|
-
* can be useful especially on native where props like maxFontSizeMultiplier or minimumFontScale
|
|
558
|
-
* should be style props but aren't.
|
|
559
|
-
*
|
|
560
|
-
* On the web, in the future, we aim to enable a full 0-runtime mode which would enforce the default
|
|
561
|
-
* "style" setting here. But if you're willing to accept that it maybe slow, set to "all" for more power
|
|
562
|
-
*/
|
|
563
|
-
// subStyleProps?: 'style' | 'all'
|
|
564
|
-
|
|
565
|
-
/**
|
|
566
|
-
* On Web, this allows changing the behavior of container groups which by default uses
|
|
567
|
-
* `container-type: inline-size`.
|
|
582
|
+
* On Web, this allows changing the behavior of container groups which by
|
|
583
|
+
* default uses `container-type: inline-size`.
|
|
568
584
|
*/
|
|
569
585
|
webContainerType?:
|
|
570
586
|
| 'normal'
|
|
@@ -1295,39 +1311,6 @@ interface ExtraStyleProps {
|
|
|
1295
1311
|
scrollbarWidth?: Properties['scrollbarWidth']
|
|
1296
1312
|
pointerEvents?: ViewProps['pointerEvents']
|
|
1297
1313
|
|
|
1298
|
-
/**
|
|
1299
|
-
* @deprecated Use `gap`
|
|
1300
|
-
*/
|
|
1301
|
-
space?: SpaceValue
|
|
1302
|
-
/**
|
|
1303
|
-
* @deprecated Use `gap`
|
|
1304
|
-
*/
|
|
1305
|
-
spaceDirection?: SpaceDirection
|
|
1306
|
-
/**
|
|
1307
|
-
* @deprecated can implement your own hook or component
|
|
1308
|
-
*/
|
|
1309
|
-
separator?: ReactNode
|
|
1310
|
-
|
|
1311
|
-
/**
|
|
1312
|
-
* Animations are defined using `createTamagui` typically in a tamagui.config.ts file.
|
|
1313
|
-
* Pass a string animation here and it uses an animation driver to execute it.
|
|
1314
|
-
*
|
|
1315
|
-
* See: https://tamagui.dev/docs/core/animations
|
|
1316
|
-
*/
|
|
1317
|
-
animation?: AnimationProp | null
|
|
1318
|
-
|
|
1319
|
-
/**
|
|
1320
|
-
* Pass an array of strings containing the long style property names
|
|
1321
|
-
* which will be exclusively animated.
|
|
1322
|
-
*/
|
|
1323
|
-
animateOnly?: string[]
|
|
1324
|
-
|
|
1325
|
-
/**
|
|
1326
|
-
* If you'd like this component to not attach to the nearest parent AnimatePresence,
|
|
1327
|
-
* set this to `false` and it will pass through to the next animated child.
|
|
1328
|
-
*/
|
|
1329
|
-
animatePresence?: boolean
|
|
1330
|
-
|
|
1331
1314
|
/**
|
|
1332
1315
|
* The point at which transforms originate from.
|
|
1333
1316
|
*/
|
|
@@ -1340,6 +1323,7 @@ interface ExtraStyleProps {
|
|
|
1340
1323
|
| 'bottom'
|
|
1341
1324
|
| TwoValueTransformOrigin
|
|
1342
1325
|
| `${TwoValueTransformOrigin} ${Px}`
|
|
1326
|
+
|
|
1343
1327
|
/**
|
|
1344
1328
|
* Web-only style property. Will be omitted on native.
|
|
1345
1329
|
*/
|
|
@@ -1392,6 +1376,10 @@ interface ExtraStyleProps {
|
|
|
1392
1376
|
* Web-only style property. Will be omitted on native.
|
|
1393
1377
|
*/
|
|
1394
1378
|
clipPath?: Properties['clipPath']
|
|
1379
|
+
/**
|
|
1380
|
+
* Web-only style property. Will be omitted on native.
|
|
1381
|
+
*/
|
|
1382
|
+
containerType?: Properties['containerType']
|
|
1395
1383
|
/**
|
|
1396
1384
|
* Web-only style property. Will be omitted on native.
|
|
1397
1385
|
*/
|
|
@@ -1492,6 +1480,47 @@ interface ExtraStyleProps {
|
|
|
1492
1480
|
* Web-only style property. Will be omitted on native.
|
|
1493
1481
|
*/
|
|
1494
1482
|
maskType?: Properties['maskType']
|
|
1483
|
+
/**
|
|
1484
|
+
* Web-only style property. Will be omitted on native.
|
|
1485
|
+
*/
|
|
1486
|
+
gridRow?: Properties['gridRow']
|
|
1487
|
+
/**
|
|
1488
|
+
* Web-only style property. Will be omitted on native.
|
|
1489
|
+
*/
|
|
1490
|
+
gridRowEnd?: Properties['gridRowEnd']
|
|
1491
|
+
/**
|
|
1492
|
+
* Web-only style property. Will be omitted on native.
|
|
1493
|
+
*/
|
|
1494
|
+
gridRowGap?: Properties['gridRowGap']
|
|
1495
|
+
/**
|
|
1496
|
+
* Web-only style property. Will be omitted on native.
|
|
1497
|
+
*/
|
|
1498
|
+
gridRowStart?: Properties['gridRowStart']
|
|
1499
|
+
/**
|
|
1500
|
+
* Web-only style property. Will be omitted on native.
|
|
1501
|
+
*/
|
|
1502
|
+
gridColumn?: Properties['gridColumn']
|
|
1503
|
+
/**
|
|
1504
|
+
* Web-only style property. Will be omitted on native.
|
|
1505
|
+
*/
|
|
1506
|
+
gridColumnEnd?: Properties['gridColumnEnd']
|
|
1507
|
+
/**
|
|
1508
|
+
* Web-only style property. Will be omitted on native.
|
|
1509
|
+
*/
|
|
1510
|
+
gridColumnGap?: Properties['gridColumnGap']
|
|
1511
|
+
/**
|
|
1512
|
+
* Web-only style property. Will be omitted on native.
|
|
1513
|
+
*/
|
|
1514
|
+
gridColumnStart?: Properties['gridColumnStart']
|
|
1515
|
+
/**
|
|
1516
|
+
* Web-only style property. Will be omitted on native.
|
|
1517
|
+
*/
|
|
1518
|
+
gridTemplateColumns?: Properties['gridTemplateColumns']
|
|
1519
|
+
/**
|
|
1520
|
+
* Web-only style property. Will be omitted on native.
|
|
1521
|
+
*/
|
|
1522
|
+
gridTemplateAreas?: Properties['gridTemplateAreas']
|
|
1523
|
+
|
|
1495
1524
|
borderInlineColor?: ColorTokens
|
|
1496
1525
|
borderInlineStartColor?: ColorTokens
|
|
1497
1526
|
borderInlineEndColor?: ColorTokens
|
|
@@ -1538,25 +1567,57 @@ interface ExtraStyleProps {
|
|
|
1538
1567
|
export interface ExtendBaseStackProps {}
|
|
1539
1568
|
export interface ExtendBaseTextProps {}
|
|
1540
1569
|
|
|
1541
|
-
interface
|
|
1570
|
+
interface ExtraBaseProps {
|
|
1571
|
+
/**
|
|
1572
|
+
* @deprecated Use `gap`
|
|
1573
|
+
*/
|
|
1574
|
+
space?: SpaceValue
|
|
1575
|
+
/**
|
|
1576
|
+
* @deprecated Use `gap`
|
|
1577
|
+
*/
|
|
1578
|
+
spaceDirection?: SpaceDirection
|
|
1579
|
+
/**
|
|
1580
|
+
* @deprecated can implement your own hook or component
|
|
1581
|
+
*/
|
|
1582
|
+
separator?: ReactNode
|
|
1583
|
+
|
|
1584
|
+
/**
|
|
1585
|
+
* Animations are defined using `createTamagui` typically in a tamagui.config.ts file.
|
|
1586
|
+
* Pass a string animation here and it uses an animation driver to execute it.
|
|
1587
|
+
*
|
|
1588
|
+
* See: https://tamagui.dev/docs/core/animations
|
|
1589
|
+
*/
|
|
1590
|
+
animation?: AnimationProp | null
|
|
1591
|
+
|
|
1592
|
+
/**
|
|
1593
|
+
* Pass an array of strings containing the long style property names
|
|
1594
|
+
* which will be exclusively animated.
|
|
1595
|
+
*/
|
|
1596
|
+
animateOnly?: string[]
|
|
1597
|
+
|
|
1598
|
+
/**
|
|
1599
|
+
* If you'd like this component to not attach to the nearest parent AnimatePresence,
|
|
1600
|
+
* set this to `false` and it will pass through to the next animated child.
|
|
1601
|
+
*/
|
|
1602
|
+
animatePresence?: boolean
|
|
1603
|
+
}
|
|
1604
|
+
|
|
1605
|
+
interface ExtendedBaseProps
|
|
1542
1606
|
extends TransformStyleProps,
|
|
1543
1607
|
ExtendBaseTextProps,
|
|
1544
1608
|
ExtendBaseStackProps,
|
|
1545
|
-
ExtraStyleProps
|
|
1609
|
+
ExtraStyleProps,
|
|
1610
|
+
ExtraBaseProps {
|
|
1546
1611
|
display?: 'inherit' | 'none' | 'inline' | 'block' | 'contents' | 'flex' | 'inline-flex'
|
|
1547
1612
|
}
|
|
1548
1613
|
|
|
1549
1614
|
export interface StackStyleBase
|
|
1550
|
-
extends Omit<ViewStyle, keyof
|
|
1551
|
-
|
|
1552
|
-
ExtraStyleProps,
|
|
1553
|
-
OverrideNonStyledProps {}
|
|
1615
|
+
extends Omit<ViewStyle, keyof ExtendedBaseProps | 'elevation'>,
|
|
1616
|
+
ExtendedBaseProps {}
|
|
1554
1617
|
|
|
1555
1618
|
export interface TextStylePropsBase
|
|
1556
|
-
extends Omit<RNTextStyle, keyof
|
|
1557
|
-
|
|
1558
|
-
ExtraStyleProps,
|
|
1559
|
-
OverrideNonStyledProps {
|
|
1619
|
+
extends Omit<RNTextStyle, keyof ExtendedBaseProps>,
|
|
1620
|
+
ExtendedBaseProps {
|
|
1560
1621
|
ellipse?: boolean
|
|
1561
1622
|
textDecorationDistance?: number
|
|
1562
1623
|
textOverflow?: Properties['textOverflow']
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useConfiguration.d.ts","sourceRoot":"","sources":["../../src/hooks/useConfiguration.tsx"],"names":[],"mappings":"AAKA,eAAO,MAAM,gBAAgB;;;;;;;;;;
|
|
1
|
+
{"version":3,"file":"useConfiguration.d.ts","sourceRoot":"","sources":["../../src/hooks/useConfiguration.tsx"],"names":[],"mappings":"AAKA,eAAO,MAAM,gBAAgB;;;;;;;;;;uBASqjiB,CAAC;aAAe,CAAC;;;;aAA43B,CAAC;YAAqB,CAAC;cAAsB,CAAC;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAD5gkB,CAAA"}
|
package/types/types.d.ts
CHANGED
|
@@ -289,50 +289,75 @@ type AllowedStyleValuesSettingPerCategory = {
|
|
|
289
289
|
type AllowedStyleValuesSetting = AllowedValueSettingBase | AllowedStyleValuesSettingPerCategory;
|
|
290
290
|
type AutocompleteSpecificTokensSetting = boolean | 'except-special';
|
|
291
291
|
type GenericTamaguiSettings = {
|
|
292
|
+
/**
|
|
293
|
+
* When true, Tamagui will always prefer a more specific style prop over a
|
|
294
|
+
* less specific one.
|
|
295
|
+
*
|
|
296
|
+
* By default, Tamagui processes all style props in order of definition on the
|
|
297
|
+
* object. This is a bit strange to most people, but it gets around many
|
|
298
|
+
* annoying issues with specificity. You can see our docs on this here:
|
|
299
|
+
* https://tamagui.dev/docs/intro/styles#style-order-is-important
|
|
300
|
+
*
|
|
301
|
+
* But this can be confusing in simple cases, like when you do:
|
|
302
|
+
*
|
|
303
|
+
* <View paddingTop={0} padding={10} />
|
|
304
|
+
*
|
|
305
|
+
* This would set paddingTop ultimately to be 10, because padding comes after
|
|
306
|
+
* paddingTop. When this setting is set to true, paddingTop will always beat
|
|
307
|
+
* padding, because it is more specific.
|
|
308
|
+
*
|
|
309
|
+
* For variants, it will still take the prop order as definitive.
|
|
310
|
+
*
|
|
311
|
+
*
|
|
312
|
+
* @default false
|
|
313
|
+
*/
|
|
292
314
|
/**
|
|
293
315
|
* Set up allowed values on style props, this is only a type-level validation.
|
|
294
316
|
*
|
|
295
|
-
* "strict" - only allows tokens for any token-enabled properties
|
|
296
|
-
*
|
|
297
|
-
* "somewhat-strict" - allow tokens or:
|
|
298
|
-
*
|
|
299
|
-
*
|
|
300
|
-
*
|
|
301
|
-
* for color: named colors or rgba/hsla strings
|
|
302
|
-
* "somewhat-strict-web" - same as somewhat-strict but allows for web-specific tokens
|
|
317
|
+
* "strict" - only allows tokens for any token-enabled properties "strict-web"
|
|
318
|
+
* - same as strict but allows for web-specific tokens like auto/inherit
|
|
319
|
+
* "somewhat-strict" - allow tokens or: for space/size: string% or numbers for
|
|
320
|
+
* radius: number for zIndex: number for color: named colors or rgba/hsla
|
|
321
|
+
* strings "somewhat-strict-web" - same as somewhat-strict but allows for
|
|
322
|
+
* web-specific tokens
|
|
303
323
|
*
|
|
304
|
-
* @default false - allows any string (or number for styles that accept
|
|
324
|
+
* @default false - allows any string (or number for styles that accept
|
|
325
|
+
* numbers)
|
|
305
326
|
*
|
|
306
327
|
*/
|
|
307
328
|
allowedStyleValues?: AllowedStyleValuesSetting;
|
|
308
329
|
/**
|
|
309
|
-
* Set up if "specific tokens" ($color.name) are added to the types where
|
|
310
|
-
* The VSCode autocomplete puts specific tokens above the
|
|
311
|
-
*
|
|
330
|
+
* Set up if "specific tokens" ($color.name) are added to the types where
|
|
331
|
+
* tokens are allowed. The VSCode autocomplete puts specific tokens above the
|
|
332
|
+
* regular ones, which leads to worse DX. If true this setting removes the
|
|
333
|
+
* specific token from types for the defined categories.
|
|
312
334
|
*
|
|
313
|
-
* If set to "except-special", specific tokens will autocomplete only if they
|
|
314
|
-
* one of the special token groups: space, size, radius,
|
|
335
|
+
* If set to "except-special", specific tokens will autocomplete only if they
|
|
336
|
+
* don't normally use one of the special token groups: space, size, radius,
|
|
337
|
+
* zIndex, color.
|
|
315
338
|
*
|
|
316
339
|
* @default except-special
|
|
317
340
|
*/
|
|
318
341
|
autocompleteSpecificTokens?: AutocompleteSpecificTokensSetting;
|
|
319
342
|
/**
|
|
320
|
-
* Will change the behavior of media styles. By default they have a fixed
|
|
321
|
-
* always override any $theme- or $platform- styles. With
|
|
322
|
-
* the same precedence as the theme and
|
|
323
|
-
* determines if they
|
|
343
|
+
* Will change the behavior of media styles. By default they have a fixed
|
|
344
|
+
* specificity: they always override any $theme- or $platform- styles. With
|
|
345
|
+
* this enabled, media styles will have the same precedence as the theme and
|
|
346
|
+
* platform styles, meaning that the order of the props determines if they
|
|
347
|
+
* override.
|
|
324
348
|
*
|
|
325
349
|
* @default false
|
|
326
350
|
*/
|
|
327
351
|
mediaPropOrder?: boolean;
|
|
328
352
|
/**
|
|
329
|
-
* On iOS, this enables a mode where Tamagui returns color values using
|
|
330
|
-
* This is a React Native built in feature, you can read the
|
|
331
|
-
*
|
|
353
|
+
* On iOS, this enables a mode where Tamagui returns color values using
|
|
354
|
+
* `DynamicColorIOS` This is a React Native built in feature, you can read the
|
|
355
|
+
* docs here: https://reactnative.dev/docs/dynamiccolorios
|
|
332
356
|
*
|
|
333
|
-
* We're working to make this enabled by default without any setting, but
|
|
334
|
-
* support inversing and/or changing to light/dark at any point
|
|
335
|
-
* support for either of these cases when
|
|
357
|
+
* We're working to make this enabled by default without any setting, but
|
|
358
|
+
* Tamagui themes support inversing and/or changing to light/dark at any point
|
|
359
|
+
* in the tree. We haven't implemented support for either of these cases when
|
|
360
|
+
* combined with this feature.
|
|
336
361
|
*
|
|
337
362
|
* So - as long as you:
|
|
338
363
|
*
|
|
@@ -340,23 +365,13 @@ type GenericTamaguiSettings = {
|
|
|
340
365
|
* 2. Don't use <Theme inverse> or themeInverse
|
|
341
366
|
* 3. Always change light/dark alongside the Appearance.colorScheme
|
|
342
367
|
*
|
|
343
|
-
* Then this feature is safe to turn on and will significantly speed up
|
|
368
|
+
* Then this feature is safe to turn on and will significantly speed up
|
|
369
|
+
* dark/light re-renders.
|
|
344
370
|
*/
|
|
345
371
|
fastSchemeChange?: boolean;
|
|
346
372
|
/**
|
|
347
|
-
*
|
|
348
|
-
*
|
|
349
|
-
*
|
|
350
|
-
* But it does support taking any property inside of these attributes, historically, and it
|
|
351
|
-
* can be useful especially on native where props like maxFontSizeMultiplier or minimumFontScale
|
|
352
|
-
* should be style props but aren't.
|
|
353
|
-
*
|
|
354
|
-
* On the web, in the future, we aim to enable a full 0-runtime mode which would enforce the default
|
|
355
|
-
* "style" setting here. But if you're willing to accept that it maybe slow, set to "all" for more power
|
|
356
|
-
*/
|
|
357
|
-
/**
|
|
358
|
-
* On Web, this allows changing the behavior of container groups which by default uses
|
|
359
|
-
* `container-type: inline-size`.
|
|
373
|
+
* On Web, this allows changing the behavior of container groups which by
|
|
374
|
+
* default uses `container-type: inline-size`.
|
|
360
375
|
*/
|
|
361
376
|
webContainerType?: 'normal' | 'size' | 'inline-size' | 'inherit' | 'initial' | 'revert' | 'revert-layer' | 'unset';
|
|
362
377
|
};
|
|
@@ -710,35 +725,6 @@ interface ExtraStyleProps {
|
|
|
710
725
|
*/
|
|
711
726
|
scrollbarWidth?: Properties['scrollbarWidth'];
|
|
712
727
|
pointerEvents?: ViewProps['pointerEvents'];
|
|
713
|
-
/**
|
|
714
|
-
* @deprecated Use `gap`
|
|
715
|
-
*/
|
|
716
|
-
space?: SpaceValue;
|
|
717
|
-
/**
|
|
718
|
-
* @deprecated Use `gap`
|
|
719
|
-
*/
|
|
720
|
-
spaceDirection?: SpaceDirection;
|
|
721
|
-
/**
|
|
722
|
-
* @deprecated can implement your own hook or component
|
|
723
|
-
*/
|
|
724
|
-
separator?: ReactNode;
|
|
725
|
-
/**
|
|
726
|
-
* Animations are defined using `createTamagui` typically in a tamagui.config.ts file.
|
|
727
|
-
* Pass a string animation here and it uses an animation driver to execute it.
|
|
728
|
-
*
|
|
729
|
-
* See: https://tamagui.dev/docs/core/animations
|
|
730
|
-
*/
|
|
731
|
-
animation?: AnimationProp | null;
|
|
732
|
-
/**
|
|
733
|
-
* Pass an array of strings containing the long style property names
|
|
734
|
-
* which will be exclusively animated.
|
|
735
|
-
*/
|
|
736
|
-
animateOnly?: string[];
|
|
737
|
-
/**
|
|
738
|
-
* If you'd like this component to not attach to the nearest parent AnimatePresence,
|
|
739
|
-
* set this to `false` and it will pass through to the next animated child.
|
|
740
|
-
*/
|
|
741
|
-
animatePresence?: boolean;
|
|
742
728
|
/**
|
|
743
729
|
* The point at which transforms originate from.
|
|
744
730
|
*/
|
|
@@ -795,6 +781,10 @@ interface ExtraStyleProps {
|
|
|
795
781
|
* Web-only style property. Will be omitted on native.
|
|
796
782
|
*/
|
|
797
783
|
clipPath?: Properties['clipPath'];
|
|
784
|
+
/**
|
|
785
|
+
* Web-only style property. Will be omitted on native.
|
|
786
|
+
*/
|
|
787
|
+
containerType?: Properties['containerType'];
|
|
798
788
|
/**
|
|
799
789
|
* Web-only style property. Will be omitted on native.
|
|
800
790
|
*/
|
|
@@ -895,6 +885,46 @@ interface ExtraStyleProps {
|
|
|
895
885
|
* Web-only style property. Will be omitted on native.
|
|
896
886
|
*/
|
|
897
887
|
maskType?: Properties['maskType'];
|
|
888
|
+
/**
|
|
889
|
+
* Web-only style property. Will be omitted on native.
|
|
890
|
+
*/
|
|
891
|
+
gridRow?: Properties['gridRow'];
|
|
892
|
+
/**
|
|
893
|
+
* Web-only style property. Will be omitted on native.
|
|
894
|
+
*/
|
|
895
|
+
gridRowEnd?: Properties['gridRowEnd'];
|
|
896
|
+
/**
|
|
897
|
+
* Web-only style property. Will be omitted on native.
|
|
898
|
+
*/
|
|
899
|
+
gridRowGap?: Properties['gridRowGap'];
|
|
900
|
+
/**
|
|
901
|
+
* Web-only style property. Will be omitted on native.
|
|
902
|
+
*/
|
|
903
|
+
gridRowStart?: Properties['gridRowStart'];
|
|
904
|
+
/**
|
|
905
|
+
* Web-only style property. Will be omitted on native.
|
|
906
|
+
*/
|
|
907
|
+
gridColumn?: Properties['gridColumn'];
|
|
908
|
+
/**
|
|
909
|
+
* Web-only style property. Will be omitted on native.
|
|
910
|
+
*/
|
|
911
|
+
gridColumnEnd?: Properties['gridColumnEnd'];
|
|
912
|
+
/**
|
|
913
|
+
* Web-only style property. Will be omitted on native.
|
|
914
|
+
*/
|
|
915
|
+
gridColumnGap?: Properties['gridColumnGap'];
|
|
916
|
+
/**
|
|
917
|
+
* Web-only style property. Will be omitted on native.
|
|
918
|
+
*/
|
|
919
|
+
gridColumnStart?: Properties['gridColumnStart'];
|
|
920
|
+
/**
|
|
921
|
+
* Web-only style property. Will be omitted on native.
|
|
922
|
+
*/
|
|
923
|
+
gridTemplateColumns?: Properties['gridTemplateColumns'];
|
|
924
|
+
/**
|
|
925
|
+
* Web-only style property. Will be omitted on native.
|
|
926
|
+
*/
|
|
927
|
+
gridTemplateAreas?: Properties['gridTemplateAreas'];
|
|
898
928
|
borderInlineColor?: ColorTokens;
|
|
899
929
|
borderInlineStartColor?: ColorTokens;
|
|
900
930
|
borderInlineEndColor?: ColorTokens;
|
|
@@ -941,12 +971,43 @@ export interface ExtendBaseStackProps {
|
|
|
941
971
|
}
|
|
942
972
|
export interface ExtendBaseTextProps {
|
|
943
973
|
}
|
|
944
|
-
interface
|
|
974
|
+
interface ExtraBaseProps {
|
|
975
|
+
/**
|
|
976
|
+
* @deprecated Use `gap`
|
|
977
|
+
*/
|
|
978
|
+
space?: SpaceValue;
|
|
979
|
+
/**
|
|
980
|
+
* @deprecated Use `gap`
|
|
981
|
+
*/
|
|
982
|
+
spaceDirection?: SpaceDirection;
|
|
983
|
+
/**
|
|
984
|
+
* @deprecated can implement your own hook or component
|
|
985
|
+
*/
|
|
986
|
+
separator?: ReactNode;
|
|
987
|
+
/**
|
|
988
|
+
* Animations are defined using `createTamagui` typically in a tamagui.config.ts file.
|
|
989
|
+
* Pass a string animation here and it uses an animation driver to execute it.
|
|
990
|
+
*
|
|
991
|
+
* See: https://tamagui.dev/docs/core/animations
|
|
992
|
+
*/
|
|
993
|
+
animation?: AnimationProp | null;
|
|
994
|
+
/**
|
|
995
|
+
* Pass an array of strings containing the long style property names
|
|
996
|
+
* which will be exclusively animated.
|
|
997
|
+
*/
|
|
998
|
+
animateOnly?: string[];
|
|
999
|
+
/**
|
|
1000
|
+
* If you'd like this component to not attach to the nearest parent AnimatePresence,
|
|
1001
|
+
* set this to `false` and it will pass through to the next animated child.
|
|
1002
|
+
*/
|
|
1003
|
+
animatePresence?: boolean;
|
|
1004
|
+
}
|
|
1005
|
+
interface ExtendedBaseProps extends TransformStyleProps, ExtendBaseTextProps, ExtendBaseStackProps, ExtraStyleProps, ExtraBaseProps {
|
|
945
1006
|
display?: 'inherit' | 'none' | 'inline' | 'block' | 'contents' | 'flex' | 'inline-flex';
|
|
946
1007
|
}
|
|
947
|
-
export interface StackStyleBase extends Omit<ViewStyle, keyof
|
|
1008
|
+
export interface StackStyleBase extends Omit<ViewStyle, keyof ExtendedBaseProps | 'elevation'>, ExtendedBaseProps {
|
|
948
1009
|
}
|
|
949
|
-
export interface TextStylePropsBase extends Omit<RNTextStyle, keyof
|
|
1010
|
+
export interface TextStylePropsBase extends Omit<RNTextStyle, keyof ExtendedBaseProps>, ExtendedBaseProps {
|
|
950
1011
|
ellipse?: boolean;
|
|
951
1012
|
textDecorationDistance?: number;
|
|
952
1013
|
textOverflow?: Properties['textOverflow'];
|