app-studio 0.7.18 → 0.8.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 (103) hide show
  1. package/README.md +11 -1
  2. package/dist/native/index.cjs +3360 -0
  3. package/dist/native/index.cjs.map +1 -0
  4. package/dist/native/index.d.mts +251 -0
  5. package/dist/native/index.d.ts +251 -0
  6. package/dist/native/index.js +3268 -0
  7. package/dist/native/index.js.map +1 -0
  8. package/dist/viewAnimation-B4BIoOwQ.d.mts +2246 -0
  9. package/dist/viewAnimation-B4BIoOwQ.d.ts +2246 -0
  10. package/dist/web/app-studio.umd.production.min.global.js +28 -0
  11. package/dist/web/app-studio.umd.production.min.global.js.map +1 -0
  12. package/dist/web/index.cjs +6109 -0
  13. package/dist/web/index.cjs.map +1 -0
  14. package/dist/web/index.d.mts +624 -0
  15. package/dist/web/index.d.ts +624 -0
  16. package/dist/web/index.js +6008 -0
  17. package/dist/web/index.js.map +1 -0
  18. package/docs/README.md +10 -0
  19. package/package.json +76 -14
  20. package/dist/app-studio.cjs.development.js +0 -6754
  21. package/dist/app-studio.cjs.development.js.map +0 -1
  22. package/dist/app-studio.cjs.production.min.js +0 -2
  23. package/dist/app-studio.cjs.production.min.js.map +0 -1
  24. package/dist/app-studio.esm.js +0 -6650
  25. package/dist/app-studio.esm.js.map +0 -1
  26. package/dist/app-studio.umd.development.js +0 -6757
  27. package/dist/app-studio.umd.development.js.map +0 -1
  28. package/dist/app-studio.umd.production.min.js +0 -2
  29. package/dist/app-studio.umd.production.min.js.map +0 -1
  30. package/dist/components/Form.d.ts +0 -17
  31. package/dist/components/Image.d.ts +0 -7
  32. package/dist/components/Skeleton.d.ts +0 -3
  33. package/dist/components/Text/Text.props.d.ts +0 -27
  34. package/dist/components/Text/Text.type.d.ts +0 -3
  35. package/dist/components/Text/Text.utils.d.ts +0 -2
  36. package/dist/components/Text/Text.view.d.ts +0 -20
  37. package/dist/components/Text.d.ts +0 -5
  38. package/dist/components/View.d.ts +0 -16
  39. package/dist/components/Wrapper.d.ts +0 -4
  40. package/dist/element/Animation.d.ts +0 -1164
  41. package/dist/element/Element.d.ts +0 -4
  42. package/dist/element/Element.types.d.ts +0 -123
  43. package/dist/element/css.d.ts +0 -50
  44. package/dist/element/utils.d.ts +0 -4
  45. package/dist/hooks/useActive.d.ts +0 -2
  46. package/dist/hooks/useClickOutside.d.ts +0 -6
  47. package/dist/hooks/useElementPosition.d.ts +0 -39
  48. package/dist/hooks/useFocus.d.ts +0 -2
  49. package/dist/hooks/useHover.d.ts +0 -2
  50. package/dist/hooks/useIframeStyles.d.ts +0 -41
  51. package/dist/hooks/useInView.d.ts +0 -11
  52. package/dist/hooks/useKeyPress.d.ts +0 -1
  53. package/dist/hooks/useMount.d.ts +0 -1
  54. package/dist/hooks/useOnScreen.d.ts +0 -6
  55. package/dist/hooks/useResponsive.d.ts +0 -59
  56. package/dist/hooks/useScroll.d.ts +0 -49
  57. package/dist/hooks/useWindowSize.d.ts +0 -4
  58. package/dist/index.d.ts +0 -33
  59. package/dist/index.js +0 -8
  60. package/dist/providers/Analytics.d.ts +0 -9
  61. package/dist/providers/Responsive.d.ts +0 -58
  62. package/dist/providers/StyleRegistry.d.ts +0 -32
  63. package/dist/providers/Theme.d.ts +0 -46
  64. package/dist/providers/WindowSize.d.ts +0 -11
  65. package/dist/stories/AnimateOn.stories.d.ts +0 -30
  66. package/dist/stories/Animation.stories.d.ts +0 -35
  67. package/dist/stories/BorderColor.stories.d.ts +0 -4
  68. package/dist/stories/Color.stories.d.ts +0 -4
  69. package/dist/stories/ColorAlpha.stories.d.ts +0 -5
  70. package/dist/stories/Component.stories.d.ts +0 -7
  71. package/dist/stories/CrossBrowserCompatibility.stories.d.ts +0 -6
  72. package/dist/stories/CssCascadeOrder.stories.d.ts +0 -10
  73. package/dist/stories/EmptyBeforeExample.stories.d.ts +0 -7
  74. package/dist/stories/EventHandlers.stories.d.ts +0 -6
  75. package/dist/stories/GradientColors.stories.d.ts +0 -6
  76. package/dist/stories/GroupPeer.stories.d.ts +0 -7
  77. package/dist/stories/Hooks.stories.d.ts +0 -17
  78. package/dist/stories/IframeCSSSupport.stories.d.ts +0 -28
  79. package/dist/stories/IframeSupport.stories.d.ts +0 -20
  80. package/dist/stories/Image.stories.d.ts +0 -6
  81. package/dist/stories/Scroll.stories.d.ts +0 -9
  82. package/dist/stories/ScrollAnimation.stories.d.ts +0 -36
  83. package/dist/stories/ScrollTimeline.stories.d.ts +0 -6
  84. package/dist/stories/Skeleton.stories.d.ts +0 -5
  85. package/dist/stories/Text.stories.d.ts +0 -18
  86. package/dist/stories/VendorPrefix.stories.d.ts +0 -6
  87. package/dist/stories/View.stories.d.ts +0 -10
  88. package/dist/stories/ViewAnimation.stories.d.ts +0 -33
  89. package/dist/test/CssVariablesTest.d.ts +0 -3
  90. package/dist/test/LowercaseVendorPrefixTest.d.ts +0 -3
  91. package/dist/test/VendorPrefixTest.d.ts +0 -3
  92. package/dist/test/WebkitTextStrokeTest.d.ts +0 -3
  93. package/dist/types/scrollAnimation.types.d.ts +0 -75
  94. package/dist/utils/colors.d.ts +0 -21
  95. package/dist/utils/constants.d.ts +0 -24
  96. package/dist/utils/cssProperties.d.ts +0 -8
  97. package/dist/utils/env.d.ts +0 -15
  98. package/dist/utils/hash.d.ts +0 -4
  99. package/dist/utils/shadow.d.ts +0 -10
  100. package/dist/utils/style.d.ts +0 -22
  101. package/dist/utils/typography.d.ts +0 -45
  102. package/dist/utils/vendorPrefixes.d.ts +0 -19
  103. package/dist/utils/viewAnimation.d.ts +0 -138
package/docs/README.md CHANGED
@@ -48,6 +48,16 @@ function App() {
48
48
  }
49
49
  ```
50
50
 
51
+ ### React Native
52
+
53
+ React Native 0.79+ apps can use the same package name:
54
+
55
+ ```tsx
56
+ import { View, Text, Button, ThemeProvider, ResponsiveProvider } from 'app-studio';
57
+ ```
58
+
59
+ Metro resolves the package to App-Studio's native build through the `react-native` export condition. Use `app-studio/native` or `app-studio/web` only when you need an explicit platform subpath. Native exposes the cross-platform primitives/providers; web-only props such as `_hover`, pseudo-elements, CSS animations, and HTML `as` values are accepted as no-ops.
60
+
51
61
  ## Core Concepts
52
62
 
53
63
  ### Element Component
package/package.json CHANGED
@@ -1,14 +1,53 @@
1
1
  {
2
- "version": "0.7.18",
2
+ "version": "0.8.0",
3
3
  "name": "app-studio",
4
4
  "description": "App Studio is a responsive and themeable framework to build cross platform applications",
5
5
  "repository": "git@github.com:rize-network/app-studio.git",
6
6
  "license": "MIT",
7
7
  "bugs": "https://github.com/rize-network/app-studio/issues",
8
- "main": "dist/index.js",
9
- "module": "dist/app-studio.esm.js",
10
- "unpkg": "dist/app-studio.umd.production.min.js",
11
- "typings": "dist/index.d.ts",
8
+ "main": "dist/web/index.cjs",
9
+ "module": "dist/web/index.js",
10
+ "unpkg": "dist/web/app-studio.umd.production.min.global.js",
11
+ "typings": "dist/web/index.d.ts",
12
+ "types": "dist/web/index.d.ts",
13
+ "react-native": "dist/native/index.js",
14
+ "exports": {
15
+ ".": {
16
+ "react-native": {
17
+ "types": "./dist/native/index.d.ts",
18
+ "import": "./dist/native/index.js",
19
+ "require": "./dist/native/index.cjs",
20
+ "default": "./dist/native/index.js"
21
+ },
22
+ "browser": {
23
+ "types": "./dist/web/index.d.ts",
24
+ "import": "./dist/web/index.js",
25
+ "require": "./dist/web/index.cjs",
26
+ "default": "./dist/web/index.js"
27
+ },
28
+ "import": {
29
+ "types": "./dist/web/index.d.ts",
30
+ "default": "./dist/web/index.js"
31
+ },
32
+ "require": {
33
+ "types": "./dist/web/index.d.ts",
34
+ "default": "./dist/web/index.cjs"
35
+ }
36
+ },
37
+ "./web": {
38
+ "types": "./dist/web/index.d.ts",
39
+ "import": "./dist/web/index.js",
40
+ "require": "./dist/web/index.cjs",
41
+ "default": "./dist/web/index.js"
42
+ },
43
+ "./native": {
44
+ "types": "./dist/native/index.d.ts",
45
+ "import": "./dist/native/index.js",
46
+ "require": "./dist/native/index.cjs",
47
+ "default": "./dist/native/index.js"
48
+ },
49
+ "./package.json": "./package.json"
50
+ },
12
51
  "sideEffects": false,
13
52
  "keywords": [
14
53
  "react",
@@ -29,8 +68,11 @@
29
68
  "node": ">=10"
30
69
  },
31
70
  "scripts": {
32
- "start": "tsdx watch --format cjs,esm,umd",
33
- "build": "tsdx build --format cjs,esm,umd",
71
+ "start": "tsup --watch",
72
+ "build": "tsup",
73
+ "typecheck": "npm run typecheck:web && npm run typecheck:native",
74
+ "typecheck:web": "tsc -p tsconfig.web.json --noEmit",
75
+ "typecheck:native": "tsc -p tsconfig.native.json --noEmit",
34
76
  "test": "tsdx test --passWithNoTests",
35
77
  "test:e2e": "ts-node test/webdriver/data-testid.test.ts && ts-node test/webdriver/component-tests.test.ts && ts-node test/webdriver/form-components.test.ts",
36
78
  "lint": "npm run eslint && npm run prettier",
@@ -53,6 +95,12 @@
53
95
  "setupFilesAfterEnv": [
54
96
  "./test/setupTests.ts"
55
97
  ],
98
+ "moduleNameMapper": {
99
+ "^react-native$": "<rootDir>/test/jest/native/reactNativeMock.tsx"
100
+ },
101
+ "transformIgnorePatterns": [
102
+ "node_modules/(?!(@react-native|react-native|@testing-library/react-native)/)"
103
+ ],
56
104
  "testMatch": [
57
105
  "<rootDir>/test/jest/**/*.test.{ts,tsx}"
58
106
  ]
@@ -74,16 +122,16 @@
74
122
  },
75
123
  "size-limit": [
76
124
  {
77
- "path": "dist/app-studio.cjs.production.min.js",
78
- "limit": "25 KB"
125
+ "path": "dist/web/index.cjs",
126
+ "limit": "180 KB"
79
127
  },
80
128
  {
81
- "path": "dist/app-studio.esm.js",
82
- "limit": "25 KB"
129
+ "path": "dist/web/index.js",
130
+ "limit": "180 KB"
83
131
  },
84
132
  {
85
- "path": "dist/app-studio.umd.production.min.js",
86
- "limit": "25 KB"
133
+ "path": "dist/web/app-studio.umd.production.min.global.js",
134
+ "limit": "125 KB"
87
135
  }
88
136
  ],
89
137
  "dependencies": {
@@ -112,7 +160,10 @@
112
160
  "@testing-library/jest-dom": "^6.9.1",
113
161
  "@testing-library/react": "^12.1.5",
114
162
  "@testing-library/react-hooks": "^8.0.1",
163
+ "@testing-library/react-native": "^13.3.3",
115
164
  "@types/color": "^3.0.6",
165
+ "@types/jest": "^30.0.0",
166
+ "@types/node": "^20.19.39",
116
167
  "@types/react": "^17.0.0",
117
168
  "@types/react-dom": "^17.0.0",
118
169
  "@types/selenium-webdriver": "^4.35.5",
@@ -139,6 +190,7 @@
139
190
  "prettier": "^3.0.3",
140
191
  "react": "^17.0.2",
141
192
  "react-dom": "^17.0.2",
193
+ "react-native": "^0.79.7",
142
194
  "react-test-renderer": "^17.0.2",
143
195
  "release-it": "^16.2.1",
144
196
  "rollup-plugin-terser": "^7.0.2",
@@ -148,10 +200,20 @@
148
200
  "ts-node": "^10.9.2",
149
201
  "tsdx": "^0.14.1",
150
202
  "tslib": "^2.6.2",
203
+ "tsup": "^8.5.1",
151
204
  "typescript": "^5.2.2"
152
205
  },
153
206
  "peerDependencies": {
154
207
  "react": ">=17",
155
- "react-dom": ">=17"
208
+ "react-dom": ">=17",
209
+ "react-native": ">=0.79"
210
+ },
211
+ "peerDependenciesMeta": {
212
+ "react-dom": {
213
+ "optional": true
214
+ },
215
+ "react-native": {
216
+ "optional": true
217
+ }
156
218
  }
157
219
  }