basalt-core 0.1.0 → 0.2.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/dist/cli/desktop.d.ts.map +1 -1
- package/dist/cli/desktop.js +53 -4
- package/dist/cli/desktop.js.map +1 -1
- package/native/CMakeLists.txt +34 -1
- package/native/cmake/Skia.cmake +29 -6
- package/native/core/SkiaViewComponent.cpp +11 -0
- package/native/core/SkiaViewComponent.h +50 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"desktop.d.ts","sourceRoot":"","sources":["../../cli/desktop.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAUH,OAAO,KAAK,EAAC,eAAe,EAAC,MAAM,cAAc,CAAC;AAKlD;;;;;;;;;;GAUG;AAEH;;;;GAIG;AACH,MAAM,MAAM,MAAM,GAAG;IACnB,QAAQ,EAAE,eAAe,CAAC;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,wDAAwD;IACxD,aAAa,CAAC,EAAE,MAAM,EAAE,CAAC;CAC1B,CAAC;AAEF,gFAAgF;AAChF;;;;GAIG;AACH,MAAM,MAAM,kBAAkB,GAAG;IAC/B,MAAM,EAAE,UAAU,GAAG,WAAW,CAAC;IACjC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;CACf,CAAC;AAEF;;;;;GAKG;AACH,MAAM,MAAM,eAAe,GAAG;IAC5B,IAAI,EAAE,MAAM,EAAE,CAAC;IACf,KAAK,EAAE,MAAM,EAAE,CAAC;CACjB,CAAC;AAEF,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,eAAe,EAAE,MAAM,CAAC;CACzB,CAAC;AAEF,uCAAuC;AACvC,MAAM,MAAM,UAAU,GAAG;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,KAAK,CAAC,EAAE,OAAO,CAAC;IAChB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,gEAAgE;IAChE,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,6EAA6E;IAC7E,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,6DAA6D;IAC7D,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,2CAA2C;IAC3C,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAAC;IACvB,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,CAAC;AAEF,qBAAa,WAAY,SAAQ,KAAK;CAAG;AAEzC;;;;;;;GAOG;AACH,wBAAgB,YAAY,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAYlD;AAED;;;;;;;GAOG;AACH,wBAAgB,UAAU,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,EAAE,CAmB7F;AAED,wBAAgB,WAAW,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,UAAU,EAAE,MAAM,EAAE,MAAM,GAAG,MAAM,CAiB5F;AAsBD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,kBAAkB,CAAC,eAAe,EAAE,MAAM,GAAG,kBAAkB,CAuB9E;
|
|
1
|
+
{"version":3,"file":"desktop.d.ts","sourceRoot":"","sources":["../../cli/desktop.ts"],"names":[],"mappings":"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"}
|
package/dist/cli/desktop.js
CHANGED
|
@@ -213,6 +213,26 @@ function findPackage(name, from) {
|
|
|
213
213
|
dir = parent;
|
|
214
214
|
}
|
|
215
215
|
}
|
|
216
|
+
/**
|
|
217
|
+
* The major version an installed package declares, or null when it does not say
|
|
218
|
+
* one a number can be read out of.
|
|
219
|
+
*
|
|
220
|
+
* Only the major, because that is the granularity of the questions asked of it:
|
|
221
|
+
* a C++ API that moved between 2.x and 3.x is a major's worth of difference by
|
|
222
|
+
* definition, and a platform asking about a minor would be pinning the app's
|
|
223
|
+
* choice of graphics library to a patch release.
|
|
224
|
+
*/
|
|
225
|
+
function packageMajor(dir) {
|
|
226
|
+
let declared;
|
|
227
|
+
try {
|
|
228
|
+
declared = JSON.parse(fs.readFileSync(path.join(dir, 'package.json'), 'utf8'));
|
|
229
|
+
}
|
|
230
|
+
catch {
|
|
231
|
+
return null;
|
|
232
|
+
}
|
|
233
|
+
const major = Number.parseInt(String(declared?.version ?? ''), 10);
|
|
234
|
+
return Number.isNaN(major) ? null : major;
|
|
235
|
+
}
|
|
216
236
|
/**
|
|
217
237
|
* The optional native halves an app brings with it, as CMake definitions.
|
|
218
238
|
*
|
|
@@ -345,7 +365,8 @@ function optionalNativeModules(projectRoot, platform) {
|
|
|
345
365
|
define('BASALT_WORKLETS', worklets);
|
|
346
366
|
notes.push(`worklets, from ${worklets}`);
|
|
347
367
|
}
|
|
348
|
-
//
|
|
368
|
+
// Skia, if the archives for this target are there and the major is one this
|
|
369
|
+
// platform's host half can build.
|
|
349
370
|
//
|
|
350
371
|
// A question about the *archives*, not the platform. macOS has published
|
|
351
372
|
// ones; Linux and Windows have whatever scripts/build_skia_linux.sh and its
|
|
@@ -367,7 +388,24 @@ function optionalNativeModules(projectRoot, platform) {
|
|
|
367
388
|
// TurboModuleRegistry.getEnforcing in its own JavaScript, so an app that
|
|
368
389
|
// merely imports it does not start, and that exception carries nothing about
|
|
369
390
|
// the build decision behind it. This is the only place it can be explained.
|
|
370
|
-
|
|
391
|
+
//
|
|
392
|
+
// ## Two names and two major versions, which are different questions
|
|
393
|
+
//
|
|
394
|
+
// The library moved house: `react-native-skia`, unscoped, is the same project
|
|
395
|
+
// under its maintainer's own name, and `@shopify/react-native-skia` is the
|
|
396
|
+
// 2.x line it left behind. The unscoped one publishes both -- a `release-2.x`
|
|
397
|
+
// tag at 2.15.1 and a `latest` of 3.x -- so the name does not tell you the
|
|
398
|
+
// major and the major is what decides whether this platform can build it.
|
|
399
|
+
//
|
|
400
|
+
// 3.x replaced Ganesh with Skia Graphite over Dawn. That is not a flag: the
|
|
401
|
+
// six Apple sources cmake/Skia.cmake borrows are deleted in it, and the
|
|
402
|
+
// replacement takes a `CAMetalLayer` or an `ANativeWindow` and nothing else.
|
|
403
|
+
// So a 3.x install is found, named, and declined here, which is the whole
|
|
404
|
+
// reason this reads the version at all -- handing a 3.x path to Skia.cmake
|
|
405
|
+
// fails on a missing MetalContext.mm, which reads like a broken install.
|
|
406
|
+
const skia = findPackage('react-native-skia', projectRoot) ??
|
|
407
|
+
findPackage('@shopify/react-native-skia', projectRoot);
|
|
408
|
+
const skiaMajor = skia == null ? null : packageMajor(skia);
|
|
371
409
|
const skiaArchive = {
|
|
372
410
|
macos: path.join('libs', 'macos', 'libskia.xcframework'),
|
|
373
411
|
windows: path.join('libs', 'windows', 'x86_64', 'skia.lib'),
|
|
@@ -378,7 +416,18 @@ function optionalNativeModules(projectRoot, platform) {
|
|
|
378
416
|
linux: path.join('libs', 'linux', process.arch === 'arm64' ? 'aarch64' : 'x86_64', 'libskia.a'),
|
|
379
417
|
};
|
|
380
418
|
const archive = skia != null ? path.join(skia, skiaArchive[platform] ?? '') : null;
|
|
381
|
-
if (skia != null &&
|
|
419
|
+
if (skia != null && skiaMajor != null && skiaMajor >= 3) {
|
|
420
|
+
notes.push(`not building Skia (${skia}, ${skiaMajor}.x): this platform's half is ` +
|
|
421
|
+
'Ganesh, and 3.x is Graphite over Dawn -- MetalContext, MetalWindowContext, ' +
|
|
422
|
+
'RNSkMetalCanvasProvider, RNSkAppleView, RNSkAppleVideo and ' +
|
|
423
|
+
'SkiaCVPixelBufferUtils are all deleted in it, and RNSkWindowSurface ' +
|
|
424
|
+
'replaces them over a CAMetalLayer. Install the 2.x line ' +
|
|
425
|
+
'(`react-native-skia@release-2.x`, or `@shopify/react-native-skia`) until ' +
|
|
426
|
+
"basalt-skia carries the Graphite half. This host will have no " +
|
|
427
|
+
"RNSkiaModule, and importing the package at all -- not rendering with it, " +
|
|
428
|
+
"importing it -- ends the app at getEnforcing('RNSkiaModule').");
|
|
429
|
+
}
|
|
430
|
+
else if (skia != null && archive != null && fs.existsSync(archive)) {
|
|
382
431
|
define('BASALT_SKIA', skia);
|
|
383
432
|
notes.push(`Skia, from ${skia}`);
|
|
384
433
|
}
|
|
@@ -388,7 +437,7 @@ function optionalNativeModules(projectRoot, platform) {
|
|
|
388
437
|
: `Nobody publishes any for ${platform}: the package ships Apple and ` +
|
|
389
438
|
'Android archives and nothing else. scripts/build_skia_linux.sh builds ' +
|
|
390
439
|
'them, and puts them where this looked.';
|
|
391
|
-
notes.push(`not building
|
|
440
|
+
notes.push(`not building Skia (${skia}): no archives at ` +
|
|
392
441
|
`${archive}. ${how} This host will have no RNSkiaModule, and importing ` +
|
|
393
442
|
'the package at all -- not rendering with it, importing it -- ends the ' +
|
|
394
443
|
"app at getEnforcing('RNSkiaModule'). Import it behind a check if this " +
|
package/dist/cli/desktop.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"desktop.js","sourceRoot":"","sources":["../../cli/desktop.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"desktop.js","sourceRoot":"","sources":["../../cli/desktop.ts"],"names":[],"mappings":"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"}
|
package/native/CMakeLists.txt
CHANGED
|
@@ -193,6 +193,22 @@ if(DEFINED RN_DIR)
|
|
|
193
193
|
get_property(basalt_package_installers GLOBAL PROPERTY BASALT_PACKAGE_EXPO_INSTALLERS)
|
|
194
194
|
get_property(basalt_package_core_sources GLOBAL PROPERTY BASALT_PACKAGE_CORE_SOURCES)
|
|
195
195
|
get_property(basalt_package_includes GLOBAL PROPERTY BASALT_PACKAGE_INCLUDES)
|
|
196
|
+
# And the ones that are somebody else's headers, which cannot be held to
|
|
197
|
+
# this project's warnings: Skia's trip `-Wpedantic` on a variadic macro, as
|
|
198
|
+
# React Native's own trip several, which is why those are `SYSTEM` too. A
|
|
199
|
+
# package says which of its include directories are its own and which are a
|
|
200
|
+
# dependency's.
|
|
201
|
+
get_property(basalt_package_system_includes GLOBAL PROPERTY BASALT_PACKAGE_SYSTEM_INCLUDES)
|
|
202
|
+
# And what a package wants *said* about itself, as preprocessor definitions.
|
|
203
|
+
#
|
|
204
|
+
# The hosts already have `BASALT_HAS_SKIA` and `BASALT_HAS_WORKLETS`, both set
|
|
205
|
+
# by a cmake/ file in this package for a dependency this package knows about.
|
|
206
|
+
# A capability package in somebody else's node_modules cannot reach either, and
|
|
207
|
+
# the first one that needed to is basalt-skia: whether the installed Skia is
|
|
208
|
+
# Graphite decides which of two canvases the AppKit mounting manager calls, and
|
|
209
|
+
# which surface the platform context makes. PUBLIC, so it reaches the host
|
|
210
|
+
# packages and their tests and not only core's own sources.
|
|
211
|
+
get_property(basalt_package_definitions GLOBAL PROPERTY BASALT_PACKAGE_DEFINITIONS)
|
|
196
212
|
|
|
197
213
|
# A semicolon by character code: CMake treats `;` as a list separator, and
|
|
198
214
|
# escaping it as `\;` survives into the generated file rather than becoming
|
|
@@ -310,6 +326,7 @@ if(DEFINED RN_DIR)
|
|
|
310
326
|
core/TestQuitFile.cpp
|
|
311
327
|
# What a <Canvas> from @shopify/react-native-skia mounts; see the header.
|
|
312
328
|
core/SkiaPictureViewComponent.cpp
|
|
329
|
+
core/SkiaViewComponent.cpp
|
|
313
330
|
# globalThis.__turboModuleProxy, which a bridgeless runtime does not get; see
|
|
314
331
|
# the header.
|
|
315
332
|
core/TurboModuleProxy.cpp
|
|
@@ -354,7 +371,13 @@ if(DEFINED RN_DIR)
|
|
|
354
371
|
target_compile_definitions(basalt_core PUBLIC
|
|
355
372
|
BASALT_REACT_NATIVE_VERSION="${RN_VERSION}"
|
|
356
373
|
BASALT_RN_MINOR=${RN_MINOR})
|
|
374
|
+
if(basalt_package_definitions)
|
|
375
|
+
target_compile_definitions(basalt_core PUBLIC ${basalt_package_definitions})
|
|
376
|
+
endif()
|
|
357
377
|
target_include_directories(basalt_core PUBLIC core ${basalt_package_includes})
|
|
378
|
+
if(basalt_package_system_includes)
|
|
379
|
+
target_include_directories(basalt_core SYSTEM PUBLIC ${basalt_package_system_includes})
|
|
380
|
+
endif()
|
|
358
381
|
target_include_directories(basalt_core SYSTEM PUBLIC
|
|
359
382
|
${RN_DIR}/ReactCommon
|
|
360
383
|
${RN_DIR}/ReactCommon/jsi
|
|
@@ -367,7 +390,17 @@ if(DEFINED RN_DIR)
|
|
|
367
390
|
# "iosswitch" and which are ordinary portable C++ apart from the one
|
|
368
391
|
# measurement core/DesktopControls.cpp supplies. Android's needs fbjni;
|
|
369
392
|
# this one needs nothing.
|
|
370
|
-
${RN_DIR}/ReactCommon/react/renderer/components/switch/iosswitch
|
|
393
|
+
${RN_DIR}/ReactCommon/react/renderer/components/switch/iosswitch
|
|
394
|
+
# Hermes' public headers, which core already links and until now only its
|
|
395
|
+
# own directory could include. `include_directories()` in ThirdParty.cmake
|
|
396
|
+
# is directory-scoped, so a test in a *host* package linking core could
|
|
397
|
+
# call into Hermes and not include <hermes/hermes.h> -- which is what a
|
|
398
|
+
# test that wants a real jsi::Runtime needs, and the first one that wanted
|
|
399
|
+
# one is basalt-skia's. The same two directories ThirdParty.cmake names,
|
|
400
|
+
# for the same reason: RN's jsi is used rather than Hermes' vendored copy,
|
|
401
|
+
# so API/ and public/ only.
|
|
402
|
+
${HERMES_DIR}/API
|
|
403
|
+
${HERMES_DIR}/public)
|
|
371
404
|
# libcurl, because core/HttpClient.cpp is here. It used to be named only on
|
|
372
405
|
# basalt_gtk_mounting, which worked for exactly as long as the GTK host was the only
|
|
373
406
|
# thing linking core: the archive member goes unreferenced until something
|
package/native/cmake/Skia.cmake
CHANGED
|
@@ -65,9 +65,35 @@ endif()
|
|
|
65
65
|
|
|
66
66
|
if(NOT EXISTS ${SKIA_CPP_DIR}/rnskia/RNSkManager.cpp)
|
|
67
67
|
message(FATAL_ERROR
|
|
68
|
-
"no
|
|
69
|
-
"BASALT_SKIA should name an installed
|
|
70
|
-
"the one in the app's node_modules.")
|
|
68
|
+
"no React Native Skia C++ at ${SKIA_CPP_DIR}.\n"
|
|
69
|
+
"BASALT_SKIA should name an installed react-native-skia or "
|
|
70
|
+
"@shopify/react-native-skia, the one in the app's node_modules.")
|
|
71
|
+
endif()
|
|
72
|
+
|
|
73
|
+
file(READ ${SKIA_DIR}/package.json SKIA_PACKAGE_JSON)
|
|
74
|
+
string(JSON SKIA_VERSION GET "${SKIA_PACKAGE_JSON}" version)
|
|
75
|
+
|
|
76
|
+
# 3.x is a different renderer, not a newer one.
|
|
77
|
+
#
|
|
78
|
+
# It replaced Ganesh with Skia Graphite over Dawn, and this file is the Ganesh
|
|
79
|
+
# half: six of the seven Apple sources it borrows below do not exist in 3.x, and
|
|
80
|
+
# their replacement -- RNSkWindowSurface, which is portable C++ rather than
|
|
81
|
+
# Objective-C++ -- configures a CAMetalLayer or an ANativeWindow as a Dawn
|
|
82
|
+
# surface and nothing else, so neither GTK nor Win32 can use it as shipped
|
|
83
|
+
# either. backlog/compatibility.md records what each of the three would take.
|
|
84
|
+
#
|
|
85
|
+
# Said here as well as in the CLI because BASALT_SKIA can be set by hand, and
|
|
86
|
+
# the failure it saves is a bad one: `MetalContext.mm does not exist`, from a
|
|
87
|
+
# source list, naming a file nobody deleted. A version is the actual reason and
|
|
88
|
+
# this is the first place that knows it.
|
|
89
|
+
string(REGEX MATCH "^[0-9]+" SKIA_MAJOR "${SKIA_VERSION}")
|
|
90
|
+
if(SKIA_MAJOR AND SKIA_MAJOR GREATER_EQUAL 3)
|
|
91
|
+
message(FATAL_ERROR
|
|
92
|
+
"Skia ${SKIA_VERSION} at ${SKIA_DIR} is Graphite over Dawn, and this "
|
|
93
|
+
"platform's half is Ganesh.\n"
|
|
94
|
+
"Install the 2.x line -- `react-native-skia@release-2.x`, or "
|
|
95
|
+
"`@shopify/react-native-skia` -- or configure without BASALT_SKIA, "
|
|
96
|
+
"until basalt-skia carries the Graphite half.")
|
|
71
97
|
endif()
|
|
72
98
|
|
|
73
99
|
# The binaries are not in the package's `files`: they are downloaded, by the
|
|
@@ -96,9 +122,6 @@ if(NOT APPLE AND NOT WIN32 AND NOT EXISTS ${SKIA_LIBS_DIR}/libskia.a)
|
|
|
96
122
|
"its libs/linux/x86_64 here.")
|
|
97
123
|
endif()
|
|
98
124
|
|
|
99
|
-
file(READ ${SKIA_DIR}/package.json SKIA_PACKAGE_JSON)
|
|
100
|
-
string(JSON SKIA_VERSION GET "${SKIA_PACKAGE_JSON}" version)
|
|
101
|
-
|
|
102
125
|
# Every prebuilt archive the package imports on Apple, each a universal slice.
|
|
103
126
|
# Named rather than globbed: a missing one is a link error in somebody else's
|
|
104
127
|
# symbols, and a list says which we expected.
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
#include "SkiaViewComponent.h"
|
|
2
|
+
|
|
3
|
+
namespace facebook::react {
|
|
4
|
+
|
|
5
|
+
// The name the package's JavaScript registers, from
|
|
6
|
+
// `codegenNativeComponent("SkiaView")` in
|
|
7
|
+
// lib/module/specs/SkiaViewNativeComponent.js. 3.x's name; 2.x's is
|
|
8
|
+
// "SkiaPictureView", beside this.
|
|
9
|
+
extern const char SkiaViewComponentName[] = "SkiaView";
|
|
10
|
+
|
|
11
|
+
} // namespace facebook::react
|
|
@@ -0,0 +1,50 @@
|
|
|
1
|
+
// `SkiaView`, which is what a `<Canvas>` from react-native-skia 3.x mounts.
|
|
2
|
+
//
|
|
3
|
+
// The 2.x one is `SkiaPictureView`, in core/SkiaPictureViewComponent.h beside
|
|
4
|
+
// this, and the rename is the whole difference as far as a component registry
|
|
5
|
+
// is concerned: `lib/module/specs/SkiaViewNativeComponent.js` is
|
|
6
|
+
// `codegenNativeComponent("SkiaView")` where it used to say the longer name.
|
|
7
|
+
// Both are registered, because which one an app mounts is decided by the Skia
|
|
8
|
+
// it installed and a host binary does not know which that is until the app's
|
|
9
|
+
// JavaScript runs.
|
|
10
|
+
//
|
|
11
|
+
// Plain `ViewProps`, for the reason the 2.x header spells out at length: a
|
|
12
|
+
// `<Canvas>` does not carry its content in props. It records in JavaScript and
|
|
13
|
+
// pushes the result through the Skia JSI API keyed by an id, and the only thing
|
|
14
|
+
// the native side needs from props is which id it is -- `nativeID`, an ordinary
|
|
15
|
+
// `ViewProps` field that arrives whatever a view config says.
|
|
16
|
+
//
|
|
17
|
+
// What is dropped, which is a shorter list than 2.x's: `opaque`,
|
|
18
|
+
// `highBitDepth`, `androidSurfaceType`, `androidZOrderOnTop` and
|
|
19
|
+
// `pointerEvents`. The two Android ones select a backing view there and mean
|
|
20
|
+
// nothing to a CAMetalLayer. `opaque` and `highBitDepth` are the backing
|
|
21
|
+
// store's format -- an opaque layer and ten bits a channel -- and a canvas
|
|
22
|
+
// without them draws the same picture into an eight-bit one. `pointerEvents`
|
|
23
|
+
// is already a `ViewProps` field and is handled where every other view's is.
|
|
24
|
+
// When one is wanted it belongs in a props class here and in the peer, which
|
|
25
|
+
// is the same call core/ExpoImageComponent.h makes about blurhash.
|
|
26
|
+
//
|
|
27
|
+
// Registered unconditionally, like the 2.x one and like ExpoImage: it costs a
|
|
28
|
+
// name in a registry, and the alternative is a host that has to be rebuilt to
|
|
29
|
+
// run an app that draws. Without Skia in the build the view mounts and stays
|
|
30
|
+
// empty -- and an app that draws has already failed at
|
|
31
|
+
// `getEnforcing('RNSkiaModule')` long before, which is the error that says
|
|
32
|
+
// what is actually missing.
|
|
33
|
+
|
|
34
|
+
#pragma once
|
|
35
|
+
|
|
36
|
+
#include <react/renderer/components/view/ConcreteViewShadowNode.h>
|
|
37
|
+
#include <react/renderer/components/view/ViewEventEmitter.h>
|
|
38
|
+
#include <react/renderer/components/view/ViewProps.h>
|
|
39
|
+
#include <react/renderer/core/ConcreteComponentDescriptor.h>
|
|
40
|
+
|
|
41
|
+
namespace facebook::react {
|
|
42
|
+
|
|
43
|
+
extern const char SkiaViewComponentName[];
|
|
44
|
+
|
|
45
|
+
using SkiaViewShadowNode =
|
|
46
|
+
ConcreteViewShadowNode<SkiaViewComponentName, ViewProps, ViewEventEmitter>;
|
|
47
|
+
|
|
48
|
+
using SkiaViewComponentDescriptor = ConcreteComponentDescriptor<SkiaViewShadowNode>;
|
|
49
|
+
|
|
50
|
+
} // namespace facebook::react
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "basalt-core",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.2.0",
|
|
4
4
|
"description": "React Native on the desktop, over React Native's own C++ core rather than a fork. The shared half: the platform module, the Metro configuration that resolves it, the bundler, and the C++ that is not about a toolkit.",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|