@impulse-ui-native/toolkit 2.0.0 → 2.0.1

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 (2) hide show
  1. package/README.md +63 -0
  2. package/package.json +19 -19
package/README.md ADDED
@@ -0,0 +1,63 @@
1
+ # @impulse-ui-native/toolkit
2
+
3
+ The complete Impulse UI Native public API from a single package. It combines the theme, primitives, components, overlays, utilities, data helpers, icons, and shared types.
4
+
5
+ ## Installation
6
+
7
+ ```sh
8
+ pnpm add @impulse-ui-native/toolkit
9
+ ```
10
+
11
+ Install the native peer dependencies required by the features you use:
12
+
13
+ ```sh
14
+ pnpm add @shopify/flash-list react-native-gesture-handler react-native-reanimated react-native-safe-area-context react-native-svg react-native-worklets
15
+ ```
16
+
17
+ ## Setup
18
+
19
+ At minimum, wrap themed components with `ThemeProvider`. Mount `LayerCenter` once when using registered flyouts such as `Select` and the date/time pickers.
20
+
21
+ ```tsx
22
+ import { GestureHandlerRootView } from "react-native-gesture-handler";
23
+ import { SafeAreaProvider } from "react-native-safe-area-context";
24
+
25
+ import { LayerCenter, ThemeProvider } from "@impulse-ui-native/toolkit";
26
+
27
+ export function App() {
28
+ return (
29
+ <GestureHandlerRootView style={{ flex: 1 }}>
30
+ <SafeAreaProvider>
31
+ <ThemeProvider>
32
+ {/* application */}
33
+ <LayerCenter />
34
+ </ThemeProvider>
35
+ </SafeAreaProvider>
36
+ </GestureHandlerRootView>
37
+ );
38
+ }
39
+ ```
40
+
41
+ Follow the installation instructions for Gesture Handler, Reanimated, and Worklets in your React Native or Expo project as well.
42
+
43
+ ## Included APIs
44
+
45
+ - Foundations: `core`, `types`, `theme`, and `primitives`.
46
+ - Inputs: `Input`, `Select`, and `MultiSelect`.
47
+ - Date and time: `DatePicker`, `DateRangePicker`, `DatetimePicker`, `DatetimeRangePicker`, and `TimePicker`.
48
+ - Feedback: `Skeleton`, `DataView`, `LoadingView`, `EmptyView`, and `ErrorView`.
49
+ - Navigation and overlays: `Stepper`, `Flyout`, `LayerCenter`, the flyout registry, and portal primitives.
50
+ - Assets and infrastructure: the icon library, `EchoInstance`, echo hooks, and endpoint factories.
51
+
52
+ All exports come from the package root:
53
+
54
+ ```tsx
55
+ import {
56
+ Button,
57
+ Input,
58
+ Select,
59
+ ThemeProvider,
60
+ } from "@impulse-ui-native/toolkit";
61
+ ```
62
+
63
+ Install an individual `@impulse-ui-native/*` package instead when you need a smaller, more explicit dependency surface.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@impulse-ui-native/toolkit",
3
- "version": "2.0.0",
3
+ "version": "2.0.1",
4
4
  "source": "src/index.ts",
5
5
  "module": "dist/index.js",
6
6
  "types": "dist/index.d.mts",
@@ -18,22 +18,22 @@
18
18
  "LICENSE"
19
19
  ],
20
20
  "dependencies": {
21
- "@impulse-ui-native/echo": "2.0.0",
22
- "@impulse-ui-native/icon": "2.0.0",
23
- "@impulse-ui-native/flyout": "2.0.0",
24
- "@impulse-ui-native/core": "2.0.0",
25
- "@impulse-ui-native/endpoint": "2.0.0",
26
- "@impulse-ui-native/stepper": "2.0.0",
27
- "@impulse-ui-native/types": "2.0.0",
28
- "@impulse-ui-native/input": "2.0.0",
29
- "@impulse-ui-native/layers": "2.0.0",
30
- "@impulse-ui-native/data-state": "2.0.0",
31
- "@impulse-ui-native/primitives": "2.0.0",
32
- "@impulse-ui-native/theme": "2.0.0",
33
- "@impulse-ui-native/datetime": "2.0.0",
34
- "@impulse-ui-native/select": "2.0.0",
35
- "@impulse-ui-native/skeleton": "2.0.0",
36
- "@impulse-ui-native/portal": "2.0.0"
21
+ "@impulse-ui-native/core": "2.0.1",
22
+ "@impulse-ui-native/flyout": "2.0.1",
23
+ "@impulse-ui-native/echo": "2.0.1",
24
+ "@impulse-ui-native/icon": "2.0.1",
25
+ "@impulse-ui-native/endpoint": "2.0.1",
26
+ "@impulse-ui-native/stepper": "2.0.1",
27
+ "@impulse-ui-native/input": "2.0.1",
28
+ "@impulse-ui-native/layers": "2.0.1",
29
+ "@impulse-ui-native/types": "2.0.1",
30
+ "@impulse-ui-native/theme": "2.0.1",
31
+ "@impulse-ui-native/primitives": "2.0.1",
32
+ "@impulse-ui-native/data-state": "2.0.1",
33
+ "@impulse-ui-native/skeleton": "2.0.1",
34
+ "@impulse-ui-native/portal": "2.0.1",
35
+ "@impulse-ui-native/select": "2.0.1",
36
+ "@impulse-ui-native/datetime": "2.0.1"
37
37
  },
38
38
  "devDependencies": {
39
39
  "@types/react": "~19.2.14",
@@ -43,8 +43,8 @@
43
43
  "react-native": "0.83.6",
44
44
  "typescript": "~5.9.2",
45
45
  "@impulse-ui-native/eslint-config": "1.0.0",
46
- "@impulse-ui-native/prettier-config": "1.0.0",
47
- "@impulse-ui-native/tsconfig": "1.0.0"
46
+ "@impulse-ui-native/tsconfig": "1.0.0",
47
+ "@impulse-ui-native/prettier-config": "1.0.0"
48
48
  },
49
49
  "peerDependencies": {
50
50
  "@shopify/flash-list": ">=2",