@tamagui/web 1.22.11 → 1.23.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 (80) hide show
  1. package/dist/cjs/constants/accessibilityDirectMap.js +76 -0
  2. package/dist/cjs/constants/accessibilityDirectMap.js.map +6 -0
  3. package/dist/cjs/createTamagui.js +19 -10
  4. package/dist/cjs/createTamagui.js.map +1 -1
  5. package/dist/cjs/helpers/ThemeManager.js +3 -3
  6. package/dist/cjs/helpers/ThemeManager.js.map +1 -1
  7. package/dist/cjs/helpers/accessibilityDirectMap.js +76 -0
  8. package/dist/cjs/helpers/accessibilityDirectMap.js.map +6 -0
  9. package/dist/cjs/helpers/createChainedWeakCache.js +63 -0
  10. package/dist/cjs/helpers/createChainedWeakCache.js.map +6 -0
  11. package/dist/cjs/helpers/getSplitStyles.js +46 -101
  12. package/dist/cjs/helpers/getSplitStyles.js.map +1 -1
  13. package/dist/cjs/helpers/memoizeArgumentsWeak.js +57 -0
  14. package/dist/cjs/helpers/memoizeArgumentsWeak.js.map +6 -0
  15. package/dist/cjs/helpers/memoizeFunctionByArgumentsReference.js +1 -1
  16. package/dist/cjs/helpers/memoizeFunctionByArgumentsReference.js.map +1 -1
  17. package/dist/cjs/hooks/useTheme.js +8 -2
  18. package/dist/cjs/hooks/useTheme.js.map +1 -1
  19. package/dist/esm/constants/accessibilityDirectMap.js +52 -0
  20. package/dist/esm/constants/accessibilityDirectMap.js.map +6 -0
  21. package/dist/esm/constants/accessibilityDirectMap.mjs +52 -0
  22. package/dist/esm/constants/accessibilityDirectMap.mjs.map +6 -0
  23. package/dist/esm/createTamagui.js +19 -10
  24. package/dist/esm/createTamagui.js.map +1 -1
  25. package/dist/esm/createTamagui.mjs +19 -10
  26. package/dist/esm/createTamagui.mjs.map +1 -1
  27. package/dist/esm/helpers/ThemeManager.js +3 -3
  28. package/dist/esm/helpers/ThemeManager.js.map +1 -1
  29. package/dist/esm/helpers/ThemeManager.mjs +3 -3
  30. package/dist/esm/helpers/ThemeManager.mjs.map +1 -1
  31. package/dist/esm/helpers/accessibilityDirectMap.js +52 -0
  32. package/dist/esm/helpers/accessibilityDirectMap.js.map +6 -0
  33. package/dist/esm/helpers/accessibilityDirectMap.mjs +52 -0
  34. package/dist/esm/helpers/accessibilityDirectMap.mjs.map +6 -0
  35. package/dist/esm/helpers/createChainedWeakCache.js +39 -0
  36. package/dist/esm/helpers/createChainedWeakCache.js.map +6 -0
  37. package/dist/esm/helpers/createChainedWeakCache.mjs +39 -0
  38. package/dist/esm/helpers/createChainedWeakCache.mjs.map +6 -0
  39. package/dist/esm/helpers/getSplitStyles.js +43 -98
  40. package/dist/esm/helpers/getSplitStyles.js.map +1 -1
  41. package/dist/esm/helpers/getSplitStyles.mjs +43 -98
  42. package/dist/esm/helpers/getSplitStyles.mjs.map +1 -1
  43. package/dist/esm/helpers/memoizeArgumentsWeak.js +33 -0
  44. package/dist/esm/helpers/memoizeArgumentsWeak.js.map +6 -0
  45. package/dist/esm/helpers/memoizeArgumentsWeak.mjs +33 -0
  46. package/dist/esm/helpers/memoizeArgumentsWeak.mjs.map +6 -0
  47. package/dist/esm/helpers/memoizeFunctionByArgumentsReference.js +1 -1
  48. package/dist/esm/helpers/memoizeFunctionByArgumentsReference.js.map +1 -1
  49. package/dist/esm/helpers/memoizeFunctionByArgumentsReference.mjs +1 -1
  50. package/dist/esm/helpers/memoizeFunctionByArgumentsReference.mjs.map +1 -1
  51. package/dist/esm/hooks/useTheme.js +8 -2
  52. package/dist/esm/hooks/useTheme.js.map +1 -1
  53. package/dist/esm/hooks/useTheme.mjs +8 -2
  54. package/dist/esm/hooks/useTheme.mjs.map +1 -1
  55. package/package.json +9 -9
  56. package/src/constants/accessibilityDirectMap.tsx +51 -0
  57. package/src/createTamagui.ts +28 -10
  58. package/src/helpers/ThemeManager.tsx +8 -4
  59. package/src/helpers/createChainedWeakCache.tsx +39 -0
  60. package/src/helpers/getSplitStyles.tsx +85 -114
  61. package/src/hooks/useTheme.tsx +10 -2
  62. package/src/types.tsx +9 -2
  63. package/types/constants/accessibilityDirectMap.d.ts +2 -0
  64. package/types/constants/accessibilityDirectMap.d.ts.map +1 -0
  65. package/types/createTamagui.d.ts.map +1 -1
  66. package/types/helpers/ThemeManager.d.ts +2 -2
  67. package/types/helpers/ThemeManager.d.ts.map +1 -1
  68. package/types/helpers/accessibilityDirectMap.d.ts +2 -0
  69. package/types/helpers/accessibilityDirectMap.d.ts.map +1 -0
  70. package/types/helpers/createChainedWeakCache.d.ts +5 -0
  71. package/types/helpers/createChainedWeakCache.d.ts.map +1 -0
  72. package/types/helpers/getSplitStyles.d.ts.map +1 -1
  73. package/types/helpers/memoizeArgumentsWeak.d.ts +5 -0
  74. package/types/helpers/memoizeArgumentsWeak.d.ts.map +1 -0
  75. package/types/helpers/memoizeFunctionByArgumentsReference.d.ts +1 -1
  76. package/types/helpers/memoizeFunctionByArgumentsReference.d.ts.map +1 -1
  77. package/types/hooks/useTheme.d.ts.map +1 -1
  78. package/types/types.d.ts +8 -2
  79. package/types/types.d.ts.map +1 -1
  80. package/src/helpers/memoizeFunctionByArgumentsReference.ts +0 -38
@@ -1,38 +0,0 @@
1
- /**
2
- * Unused for now but useful function and could replace various caches we use with some testing
3
- */
4
-
5
- function isObject(arg) {
6
- const t = typeof arg
7
- return (t === 'object' || t === 'function') && arg !== null
8
- }
9
-
10
- class FunctionArgumentCache {
11
- map = new Map()
12
- weakmap = new WeakMap()
13
-
14
- get(args: any[]): any {
15
- let cache = this
16
- for (let value of args) {
17
- const map = cache[isObject(value) ? 'weakmap' : 'map']
18
- cache = map.get(value) || map.set(value, new FunctionArgumentCache()).get(value)
19
- }
20
- return cache
21
- }
22
- }
23
-
24
- function memoize<Fn extends Function>(fn: Fn): Fn {
25
- const cache = new FunctionArgumentCache()
26
-
27
- return function (this: any, ...args: any[]) {
28
- // get (or create) a cache item
29
- const item = cache.get(args)
30
-
31
- if (item.hasOwnProperty('value')) {
32
- console.warn('cached')
33
- return item.value
34
- }
35
-
36
- return (item.value = fn.apply(this, args))
37
- } as any as Fn
38
- }