@gjsify/react-native 0.43.0 → 0.45.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/README.md +127 -31
- package/lib/esm/apis/alert.js +1 -0
- package/lib/esm/apis/appearance.js +1 -0
- package/lib/esm/apis/color-scheme.js +1 -1
- package/lib/esm/apis/dimensions.js +1 -0
- package/lib/esm/apis/display.js +1 -0
- package/lib/esm/apis/index.js +1 -1
- package/lib/esm/apis/keyboard.js +1 -0
- package/lib/esm/components.js +1 -1
- package/lib/esm/generated/own-exports.js +1 -0
- package/lib/esm/generated/unsupported-exports.js +1 -1
- package/lib/esm/generated/unsupported-router-exports.js +1 -0
- package/lib/esm/hooks.js +1 -1
- package/lib/esm/index.js +1 -1
- package/lib/esm/lists/components.js +1 -0
- package/lib/esm/lists/controller.js +1 -0
- package/lib/esm/parent-context.js +1 -0
- package/lib/esm/press.js +1 -0
- package/lib/esm/primitives/intents.js +1 -1
- package/lib/esm/primitives/resolve.js +1 -1
- package/lib/esm/primitives/table.js +1 -1
- package/lib/esm/router/errors.js +1 -0
- package/lib/esm/router/index.js +1 -0
- package/lib/esm/router/navigation.js +1 -0
- package/lib/esm/router/root.js +1 -0
- package/lib/esm/router/routes.js +1 -0
- package/lib/esm/router/screens.js +1 -0
- package/lib/esm/router/stack.js +1 -0
- package/lib/esm/router/tabs.js +1 -0
- package/lib/esm/solid/index.js +1 -1
- package/lib/esm/stylesheet.js +1 -0
- package/lib/esm/support-table.js +1 -1
- package/lib/types/apis/alert.d.ts +46 -0
- package/lib/types/apis/appearance.d.ts +28 -0
- package/lib/types/apis/color-scheme.d.ts +21 -0
- package/lib/types/apis/dimensions.d.ts +42 -0
- package/lib/types/apis/display.d.ts +87 -0
- package/lib/types/apis/index.d.ts +10 -1
- package/lib/types/apis/keyboard.d.ts +22 -0
- package/lib/types/components.d.ts +166 -10
- package/lib/types/generated/own-exports.d.ts +1 -0
- package/lib/types/generated/unsupported-exports.d.ts +0 -19
- package/lib/types/generated/unsupported-router-exports.d.ts +17 -0
- package/lib/types/hooks.d.ts +16 -0
- package/lib/types/index.d.ts +10 -6
- package/lib/types/lists/components.d.ts +102 -0
- package/lib/types/lists/controller.d.ts +45 -0
- package/lib/types/lists/lists.spec.d.ts +2 -0
- package/lib/types/parent-context.d.ts +15 -0
- package/lib/types/press.d.ts +27 -0
- package/lib/types/primitives/index.d.ts +2 -2
- package/lib/types/primitives/resolve.d.ts +36 -0
- package/lib/types/primitives/table.d.ts +79 -2
- package/lib/types/router/errors.d.ts +37 -0
- package/lib/types/router/index.d.ts +10 -0
- package/lib/types/router/navigation.d.ts +72 -0
- package/lib/types/router/root.d.ts +24 -0
- package/lib/types/router/router.spec.d.ts +2 -0
- package/lib/types/router/routes.d.ts +90 -0
- package/lib/types/router/routes.spec.d.ts +2 -0
- package/lib/types/router/screens.d.ts +48 -0
- package/lib/types/router/stack.d.ts +118 -0
- package/lib/types/router/tabs.d.ts +36 -0
- package/lib/types/solid/index.d.ts +9 -4
- package/lib/types/stylesheet.d.ts +75 -0
- package/lib/types/stylesheet.spec.d.ts +2 -0
- package/lib/types/support-table.d.ts +36 -2
- package/package.json +19 -5
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { OWN_EXPORT_NAMES } from './generated/own-exports.js';
|
|
1
2
|
/** What this layer does about a React Native export. */
|
|
2
3
|
export type SupportStatus =
|
|
3
4
|
/** Implemented. */
|
|
@@ -16,7 +17,13 @@ export type SupportStatus =
|
|
|
16
17
|
export type SupportTier = 'P1' | 'P2' | 'P3';
|
|
17
18
|
export interface SupportEntry {
|
|
18
19
|
readonly status: SupportStatus;
|
|
19
|
-
/**
|
|
20
|
+
/**
|
|
21
|
+
* When. Required on `planned` and `partial`, absent on `refused` and
|
|
22
|
+
* `not-reachable` — neither is a schedule. Optional elsewhere: a `supported`
|
|
23
|
+
* or `no-desktop-meaning` name was answered rather than scheduled, so the
|
|
24
|
+
* converse ("not refused, therefore tiered") is measurably false and
|
|
25
|
+
* `support-table.spec.ts` pins the narrower rule that holds.
|
|
26
|
+
*/
|
|
20
27
|
readonly tier?: SupportTier;
|
|
21
28
|
/** The GTK or Adwaita counterpart, where there is one. */
|
|
22
29
|
readonly gtk?: string;
|
|
@@ -26,13 +33,40 @@ export interface SupportEntry {
|
|
|
26
33
|
readonly limits?: readonly string[];
|
|
27
34
|
}
|
|
28
35
|
export declare const SUPPORT_TABLE: Readonly<Record<string, SupportEntry>>;
|
|
36
|
+
export declare const ROUTER_SUPPORT_TABLE: Readonly<Record<string, SupportEntry>>;
|
|
29
37
|
/** Every name `react-native` publicly exports, as this table claims to cover it. */
|
|
30
38
|
export declare const SUPPORTED_NAMES: readonly string[];
|
|
39
|
+
/** Every `expo-router` name the routing surface declares a status for. */
|
|
40
|
+
export declare const ROUTER_NAMES: readonly string[];
|
|
41
|
+
/**
|
|
42
|
+
* Is `name` one of this layer's OWN exports rather than a React Native one?
|
|
43
|
+
*
|
|
44
|
+
* `configureStyle`, `resetStyleConfig` and `styleConfig` carry § 3's token scales,
|
|
45
|
+
* `primitives` is L2, and the table plus its readers are public. None is a React
|
|
46
|
+
* Native name, so none has — or should have — a table entry.
|
|
47
|
+
*/
|
|
48
|
+
export declare const isOwnExport: (name: string) => boolean;
|
|
49
|
+
export { OWN_EXPORT_NAMES };
|
|
50
|
+
/**
|
|
51
|
+
* May a build import `name` from this package?
|
|
52
|
+
*
|
|
53
|
+
* TWO POPULATIONS, and the tables answer FIRST. A name react-native exports is the
|
|
54
|
+
* tables' to judge, whatever else claims it; only a name no table has heard of falls
|
|
55
|
+
* through to the layer's own exports. That order is the safety property: the derived
|
|
56
|
+
* list can add names, never promote a `planned` one, so a mistake upstream of it
|
|
57
|
+
* cannot turn `import { Modal }` into a green build.
|
|
58
|
+
*
|
|
59
|
+
* A name in NEITHER population is still refused — which is the whole difference
|
|
60
|
+
* between this and "anything the table does not know is fine", the shape that would
|
|
61
|
+
* pass every typo.
|
|
62
|
+
*/
|
|
31
63
|
export declare const isImportable: (name: string) => boolean;
|
|
32
64
|
/**
|
|
33
65
|
* The sentence a build error and a runtime throw both print.
|
|
34
66
|
*
|
|
35
67
|
* One function so the two cannot drift into describing the same gap differently —
|
|
36
|
-
* which is the whole reason the table is data rather than prose in two places.
|
|
68
|
+
* which is the whole reason the table is data rather than prose in two places. It
|
|
69
|
+
* covers BOTH tables, and prints the module the name belongs to, so a reader who
|
|
70
|
+
* imported `Tabs` from the wrong entry point learns which one has it.
|
|
37
71
|
*/
|
|
38
72
|
export declare function explainUnsupported(name: string): string;
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@gjsify/react-native",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.45.0",
|
|
4
4
|
"description": "The React Native view vocabulary rendered onto GTK4/Adwaita, over @gjsify/gtk-host",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"module": "lib/esm/index.js",
|
|
@@ -14,6 +14,10 @@
|
|
|
14
14
|
"types": "./lib/types/solid/index.d.ts",
|
|
15
15
|
"default": "./lib/esm/solid/index.js"
|
|
16
16
|
},
|
|
17
|
+
"./router": {
|
|
18
|
+
"types": "./lib/types/router/index.d.ts",
|
|
19
|
+
"default": "./lib/esm/router/index.js"
|
|
20
|
+
},
|
|
17
21
|
"./support-table": {
|
|
18
22
|
"types": "./lib/types/support-table.d.ts",
|
|
19
23
|
"default": "./lib/esm/support-table.js"
|
|
@@ -46,15 +50,23 @@
|
|
|
46
50
|
"react-native"
|
|
47
51
|
],
|
|
48
52
|
"dependencies": {
|
|
49
|
-
"@gjsify/adwaita-app": "^0.
|
|
50
|
-
"@gjsify/gtk-host": "^0.
|
|
53
|
+
"@gjsify/adwaita-app": "^0.45.0",
|
|
54
|
+
"@gjsify/gtk-host": "^0.45.0"
|
|
51
55
|
},
|
|
52
56
|
"peerDependencies": {
|
|
57
|
+
"@react-navigation/core": "^7.21.13",
|
|
58
|
+
"@react-navigation/routers": "^7.6.4",
|
|
53
59
|
"react": "^19.2.0",
|
|
54
60
|
"react-reconciler": "^0.33.0",
|
|
55
61
|
"solid-js": "^1.9.0"
|
|
56
62
|
},
|
|
57
63
|
"peerDependenciesMeta": {
|
|
64
|
+
"@react-navigation/core": {
|
|
65
|
+
"optional": true
|
|
66
|
+
},
|
|
67
|
+
"@react-navigation/routers": {
|
|
68
|
+
"optional": true
|
|
69
|
+
},
|
|
58
70
|
"react": {
|
|
59
71
|
"optional": true
|
|
60
72
|
},
|
|
@@ -66,8 +78,10 @@
|
|
|
66
78
|
}
|
|
67
79
|
},
|
|
68
80
|
"devDependencies": {
|
|
69
|
-
"@gjsify/cli": "^0.
|
|
70
|
-
"@
|
|
81
|
+
"@gjsify/cli": "^0.45.0",
|
|
82
|
+
"@react-navigation/core": "^7.21.13",
|
|
83
|
+
"@react-navigation/routers": "^7.6.4",
|
|
84
|
+
"@gjsify/unit": "^0.45.0",
|
|
71
85
|
"@girs/adw-1": "^4.1.0",
|
|
72
86
|
"@girs/gdk-4.0": "^4.1.0",
|
|
73
87
|
"@girs/gjs": "^4.1.0",
|