@tamagui/linear-gradient 1.0.4

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 (111) hide show
  1. package/dist/cjs/BubbleSelect.js +44 -0
  2. package/dist/cjs/BubbleSelect.js.map +7 -0
  3. package/dist/cjs/LinearGradient.js +74 -0
  4. package/dist/cjs/LinearGradient.js.map +7 -0
  5. package/dist/cjs/Select.js +480 -0
  6. package/dist/cjs/Select.js.map +7 -0
  7. package/dist/cjs/SelectContent.js +76 -0
  8. package/dist/cjs/SelectContent.js.map +7 -0
  9. package/dist/cjs/SelectContent.native.js +31 -0
  10. package/dist/cjs/SelectContent.native.js.map +7 -0
  11. package/dist/cjs/SelectImpl.js +301 -0
  12. package/dist/cjs/SelectImpl.js.map +7 -0
  13. package/dist/cjs/SelectImpl.native.js +37 -0
  14. package/dist/cjs/SelectImpl.native.js.map +7 -0
  15. package/dist/cjs/SelectScrollButton.js +161 -0
  16. package/dist/cjs/SelectScrollButton.js.map +7 -0
  17. package/dist/cjs/SelectScrollButton.native.js +32 -0
  18. package/dist/cjs/SelectScrollButton.native.js.map +7 -0
  19. package/dist/cjs/SelectViewport.js +126 -0
  20. package/dist/cjs/SelectViewport.js.map +7 -0
  21. package/dist/cjs/SelectViewport.native.js +62 -0
  22. package/dist/cjs/SelectViewport.native.js.map +7 -0
  23. package/dist/cjs/constants.js +47 -0
  24. package/dist/cjs/constants.js.map +7 -0
  25. package/dist/cjs/context.js +49 -0
  26. package/dist/cjs/context.js.map +7 -0
  27. package/dist/cjs/index.js +19 -0
  28. package/dist/cjs/index.js.map +7 -0
  29. package/dist/cjs/linear-gradient.js +29 -0
  30. package/dist/cjs/linear-gradient.js.map +7 -0
  31. package/dist/cjs/types.js +17 -0
  32. package/dist/cjs/types.js.map +7 -0
  33. package/dist/cjs/useSelectBreakpointActive.js +39 -0
  34. package/dist/cjs/useSelectBreakpointActive.js.map +7 -0
  35. package/dist/esm/BubbleSelect.js +25 -0
  36. package/dist/esm/BubbleSelect.js.map +7 -0
  37. package/dist/esm/LinearGradient.js +51 -0
  38. package/dist/esm/LinearGradient.js.map +7 -0
  39. package/dist/esm/Select.js +452 -0
  40. package/dist/esm/Select.js.map +7 -0
  41. package/dist/esm/SelectContent.js +52 -0
  42. package/dist/esm/SelectContent.js.map +7 -0
  43. package/dist/esm/SelectContent.native.js +7 -0
  44. package/dist/esm/SelectContent.native.js.map +7 -0
  45. package/dist/esm/SelectImpl.js +286 -0
  46. package/dist/esm/SelectImpl.js.map +7 -0
  47. package/dist/esm/SelectImpl.native.js +13 -0
  48. package/dist/esm/SelectImpl.native.js.map +7 -0
  49. package/dist/esm/SelectScrollButton.js +130 -0
  50. package/dist/esm/SelectScrollButton.js.map +7 -0
  51. package/dist/esm/SelectScrollButton.native.js +7 -0
  52. package/dist/esm/SelectScrollButton.native.js.map +7 -0
  53. package/dist/esm/SelectViewport.js +95 -0
  54. package/dist/esm/SelectViewport.js.map +7 -0
  55. package/dist/esm/SelectViewport.native.js +32 -0
  56. package/dist/esm/SelectViewport.native.js.map +7 -0
  57. package/dist/esm/constants.js +17 -0
  58. package/dist/esm/constants.js.map +7 -0
  59. package/dist/esm/context.js +21 -0
  60. package/dist/esm/context.js.map +7 -0
  61. package/dist/esm/index.js +2 -0
  62. package/dist/esm/index.js.map +7 -0
  63. package/dist/esm/linear-gradient.js +5 -0
  64. package/dist/esm/linear-gradient.js.map +7 -0
  65. package/dist/esm/types.js +1 -0
  66. package/dist/esm/types.js.map +7 -0
  67. package/dist/esm/useSelectBreakpointActive.js +14 -0
  68. package/dist/esm/useSelectBreakpointActive.js.map +7 -0
  69. package/dist/jsx/BubbleSelect.js +25 -0
  70. package/dist/jsx/BubbleSelect.js.map +7 -0
  71. package/dist/jsx/LinearGradient.js +39 -0
  72. package/dist/jsx/LinearGradient.js.map +7 -0
  73. package/dist/jsx/Select.js +326 -0
  74. package/dist/jsx/Select.js.map +7 -0
  75. package/dist/jsx/SelectContent.js +30 -0
  76. package/dist/jsx/SelectContent.js.map +7 -0
  77. package/dist/jsx/SelectContent.native.js +7 -0
  78. package/dist/jsx/SelectContent.native.js.map +7 -0
  79. package/dist/jsx/SelectImpl.js +259 -0
  80. package/dist/jsx/SelectImpl.js.map +7 -0
  81. package/dist/jsx/SelectImpl.native.js +10 -0
  82. package/dist/jsx/SelectImpl.native.js.map +7 -0
  83. package/dist/jsx/SelectScrollButton.js +103 -0
  84. package/dist/jsx/SelectScrollButton.js.map +7 -0
  85. package/dist/jsx/SelectScrollButton.native.js +7 -0
  86. package/dist/jsx/SelectScrollButton.native.js.map +7 -0
  87. package/dist/jsx/SelectViewport.js +73 -0
  88. package/dist/jsx/SelectViewport.js.map +7 -0
  89. package/dist/jsx/SelectViewport.native.js +18 -0
  90. package/dist/jsx/SelectViewport.native.js.map +7 -0
  91. package/dist/jsx/constants.js +17 -0
  92. package/dist/jsx/constants.js.map +7 -0
  93. package/dist/jsx/context.js +15 -0
  94. package/dist/jsx/context.js.map +7 -0
  95. package/dist/jsx/index.js +2 -0
  96. package/dist/jsx/index.js.map +7 -0
  97. package/dist/jsx/linear-gradient.js +5 -0
  98. package/dist/jsx/linear-gradient.js.map +7 -0
  99. package/dist/jsx/types.js +1 -0
  100. package/dist/jsx/types.js.map +7 -0
  101. package/dist/jsx/useSelectBreakpointActive.js +14 -0
  102. package/dist/jsx/useSelectBreakpointActive.js.map +7 -0
  103. package/package.json +43 -0
  104. package/src/LinearGradient.tsx +64 -0
  105. package/src/index.ts +1 -0
  106. package/src/linear-gradient.d.ts +3 -0
  107. package/src/linear-gradient.d.ts.map +1 -0
  108. package/src/linear-gradient.ts +2 -0
  109. package/types/LinearGradient.d.ts +10 -0
  110. package/types/index.d.ts +2 -0
  111. package/types/linear-gradient.d.ts +3 -0
@@ -0,0 +1,5 @@
1
+ import { LinearGradient } from "expo-linear-gradient";
2
+ export {
3
+ LinearGradient
4
+ };
5
+ //# sourceMappingURL=linear-gradient.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/linear-gradient.ts"],
4
+ "sourcesContent": ["export { LinearGradient } from 'expo-linear-gradient'\nexport type { LinearGradientProps } from 'expo-linear-gradient'\n"],
5
+ "mappings": "AAAA,SAAS,sBAAsB;",
6
+ "names": []
7
+ }
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=types.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": [],
4
+ "sourcesContent": [],
5
+ "mappings": "",
6
+ "names": []
7
+ }
@@ -0,0 +1,14 @@
1
+ import { useMedia } from "@tamagui/core";
2
+ const useSelectBreakpointActive = (sheetBreakpoint) => {
3
+ const media = useMedia();
4
+ return sheetBreakpoint ? media[sheetBreakpoint] : false;
5
+ };
6
+ const useShowSelectSheet = (context) => {
7
+ const breakpointActive = useSelectBreakpointActive(context.sheetBreakpoint);
8
+ return context.open === false ? false : breakpointActive;
9
+ };
10
+ export {
11
+ useSelectBreakpointActive,
12
+ useShowSelectSheet
13
+ };
14
+ //# sourceMappingURL=useSelectBreakpointActive.js.map
@@ -0,0 +1,7 @@
1
+ {
2
+ "version": 3,
3
+ "sources": ["../../src/useSelectBreakpointActive.tsx"],
4
+ "sourcesContent": ["import { useMedia } from '@tamagui/core'\n\nimport { SelectContextValue } from './types'\n\nexport const useSelectBreakpointActive = (\n sheetBreakpoint: SelectContextValue['sheetBreakpoint'],\n) => {\n const media = useMedia()\n return sheetBreakpoint ? media[sheetBreakpoint] : false\n}\n\nexport const useShowSelectSheet = (context: SelectContextValue) => {\n const breakpointActive = useSelectBreakpointActive(context.sheetBreakpoint)\n return context.open === false ? false : breakpointActive\n}\n"],
5
+ "mappings": "AAAA,SAAS,gBAAgB;AAIlB,MAAM,4BAA4B,CACvC,oBACG;AACH,QAAM,QAAQ,SAAS;AACvB,SAAO,kBAAkB,MAAM,mBAAmB;AACpD;AAEO,MAAM,qBAAqB,CAAC,YAAgC;AACjE,QAAM,mBAAmB,0BAA0B,QAAQ,eAAe;AAC1E,SAAO,QAAQ,SAAS,QAAQ,QAAQ;AAC1C;",
6
+ "names": []
7
+ }
package/package.json ADDED
@@ -0,0 +1,43 @@
1
+ {
2
+ "name": "@tamagui/linear-gradient",
3
+ "version": "1.0.4",
4
+ "sideEffects": [
5
+ "*.css"
6
+ ],
7
+ "source": "src/index.ts",
8
+ "types": "./types/index.d.ts",
9
+ "main": "dist/cjs",
10
+ "module": "dist/esm",
11
+ "module:jsx": "dist/jsx",
12
+ "files": [
13
+ "src",
14
+ "types",
15
+ "dist"
16
+ ],
17
+ "scripts": {
18
+ "build": "tamagui-build",
19
+ "watch": "tamagui-build --watch",
20
+ "clean": "tamagui-build clean",
21
+ "clean:build": "tamagui-build clean:build",
22
+ "lint": "../../node_modules/.bin/rome check src",
23
+ "lint:fix": "../../node_modules/.bin/rome check --apply-suggested src"
24
+ },
25
+ "dependencies": {
26
+ "@tamagui/core": "^1.0.4",
27
+ "@tamagui/stacks": "^1.0.4"
28
+ },
29
+ "peerDependencies": {
30
+ "expo-linear-gradient": "*",
31
+ "react": "*",
32
+ "react-dom": "*"
33
+ },
34
+ "devDependencies": {
35
+ "@tamagui/build": "^1.0.4",
36
+ "expo-linear-gradient": "^12.0.1",
37
+ "react": "^18.2.0",
38
+ "react-dom": "^18.2.0"
39
+ },
40
+ "publishConfig": {
41
+ "access": "public"
42
+ }
43
+ }
@@ -0,0 +1,64 @@
1
+ import {
2
+ ColorTokens,
3
+ ThemeTokens,
4
+ getVariable,
5
+ styled,
6
+ themeable,
7
+ useTheme,
8
+ } from '@tamagui/core'
9
+ import { YStack, YStackProps } from '@tamagui/stacks'
10
+ import * as React from 'react'
11
+ import { StyleSheet, View } from 'react-native'
12
+
13
+ import {
14
+ LinearGradient as ExpoLinearGradient,
15
+ LinearGradientProps as ExpoLinearGradientProps,
16
+ } from './linear-gradient'
17
+
18
+ //
19
+ export type LinearGradientProps = Omit<ExpoLinearGradientProps, 'colors'> &
20
+ Omit<YStackProps, 'children' | keyof ExpoLinearGradientProps> & {
21
+ colors?: (ColorTokens | ThemeTokens | (string & {}))[]
22
+ }
23
+
24
+ export const LinearGradient: React.ForwardRefExoticComponent<
25
+ LinearGradientProps & React.RefAttributes<HTMLElement | View>
26
+ > = YStack.extractable(
27
+ themeable(
28
+ React.forwardRef((props: LinearGradientProps, ref) => {
29
+ const { start, end, colors: colorsProp, locations, children, ...stackProps } = props
30
+ const colors = useThemeColors(colorsProp || [])
31
+ return (
32
+ // @ts-ignore
33
+ <LinearGradientFrame ref={ref} {...stackProps}>
34
+ <ExpoLinearGradient
35
+ start={start}
36
+ end={end}
37
+ colors={colors}
38
+ locations={locations}
39
+ style={StyleSheet.absoluteFill}
40
+ >
41
+ {children}
42
+ </ExpoLinearGradient>
43
+ </LinearGradientFrame>
44
+ )
45
+ })
46
+ )
47
+ ) as any
48
+
49
+ const LinearGradientFrame = styled(YStack, {
50
+ name: 'LinearGradient',
51
+ overflow: 'hidden',
52
+ position: 'relative',
53
+ })
54
+
55
+ // resolve tamagui theme values
56
+ const useThemeColors = (colors: string[]) => {
57
+ const theme = useTheme()
58
+ return colors.map((color) => {
59
+ if (color[0] === '$') {
60
+ return getVariable(theme[color] || color)
61
+ }
62
+ return color
63
+ })
64
+ }
package/src/index.ts ADDED
@@ -0,0 +1 @@
1
+ export * from './LinearGradient'
@@ -0,0 +1,3 @@
1
+ export { LinearGradient } from 'expo-linear-gradient';
2
+ export type { LinearGradientProps } from 'expo-linear-gradient';
3
+ //# sourceMappingURL=linear-gradient.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"linear-gradient.d.ts","sourceRoot":"","sources":["linear-gradient.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,MAAM,sBAAsB,CAAA;AACrD,YAAY,EAAE,mBAAmB,EAAE,MAAM,sBAAsB,CAAA"}
@@ -0,0 +1,2 @@
1
+ export { LinearGradient } from 'expo-linear-gradient'
2
+ export type { LinearGradientProps } from 'expo-linear-gradient'
@@ -0,0 +1,10 @@
1
+ import { ColorTokens, ThemeTokens } from '@tamagui/core';
2
+ import { YStackProps } from '@tamagui/stacks';
3
+ import * as React from 'react';
4
+ import { View } from 'react-native';
5
+ import { LinearGradientProps as ExpoLinearGradientProps } from './linear-gradient';
6
+ export type LinearGradientProps = Omit<ExpoLinearGradientProps, 'colors'> & Omit<YStackProps, 'children' | keyof ExpoLinearGradientProps> & {
7
+ colors?: (ColorTokens | ThemeTokens | (string & {}))[];
8
+ };
9
+ export declare const LinearGradient: React.ForwardRefExoticComponent<LinearGradientProps & React.RefAttributes<HTMLElement | View>>;
10
+ //# sourceMappingURL=LinearGradient.d.ts.map
@@ -0,0 +1,2 @@
1
+ export * from './LinearGradient';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1,3 @@
1
+ export { LinearGradient } from 'expo-linear-gradient';
2
+ export type { LinearGradientProps } from 'expo-linear-gradient';
3
+ //# sourceMappingURL=linear-gradient.d.ts.map