one 2.7.4 → 2.7.6
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/android/src/main/java/com/margelo/nitro/one/HybridOneFileSystem.kt +2 -10
- package/android/src/main/java/com/margelo/nitro/one/HybridOneFonts.kt +4 -2
- package/android/src/main/java/com/margelo/nitro/one/HybridOneSpeechSynthesis.kt +8 -4
- package/android/src/main/java/com/margelo/nitro/one/OneAtomicWrite.kt +19 -0
- package/android/src/main/java/com/margelo/nitro/one/OneUpdatesLauncher.kt +2 -8
- package/android/src/main/java/dev/onejs/onenative/OneNativeComposeNodeView.kt +3 -2
- package/android/src/main/java/dev/onejs/onenative/OneNativePagerManager.kt +2 -0
- package/dist/cjs/cli/buildPageWorker.cjs +2 -1
- package/dist/cjs/cli/buildPageWorker.native.cjs +2 -1
- package/dist/cjs/cli/buildPageWorker.native.js +2 -1
- package/dist/cjs/cli/buildPageWorker.native.js.map +1 -1
- package/dist/cjs/cli/workerPool.cjs +4 -1
- package/dist/cjs/cli/workerPool.native.cjs +6 -1
- package/dist/cjs/cli/workerPool.native.js +6 -1
- package/dist/cjs/cli/workerPool.native.js.map +1 -1
- package/dist/cjs/platform/compose.android.cjs +2 -2
- package/dist/cjs/platform/compose.android.js +2 -2
- package/dist/cjs/platform/compose.android.js.map +1 -1
- package/dist/cjs/platform/generated/Controls.native.cjs +6 -6
- package/dist/cjs/platform/generated/Controls.native.js +6 -6
- package/dist/cjs/platform/generated/Controls.native.js.map +1 -1
- package/dist/cjs/platform/syncStore.cjs +15 -5
- package/dist/cjs/platform/syncStore.native.cjs +20 -8
- package/dist/cjs/platform/syncStore.native.js +20 -8
- package/dist/cjs/platform/syncStore.native.js.map +1 -1
- package/dist/esm/cli/buildPageWorker.mjs +2 -1
- package/dist/esm/cli/buildPageWorker.mjs.map +1 -1
- package/dist/esm/cli/buildPageWorker.native.js +2 -1
- package/dist/esm/cli/buildPageWorker.native.js.map +1 -1
- package/dist/esm/cli/workerPool.mjs +4 -1
- package/dist/esm/cli/workerPool.mjs.map +1 -1
- package/dist/esm/cli/workerPool.native.js +6 -1
- package/dist/esm/cli/workerPool.native.js.map +1 -1
- package/dist/esm/platform/compose.android.js +3 -3
- package/dist/esm/platform/compose.android.js.map +1 -1
- package/dist/esm/platform/generated/Controls.native.js +7 -7
- package/dist/esm/platform/generated/Controls.native.js.map +1 -1
- package/dist/esm/platform/syncStore.mjs +14 -5
- package/dist/esm/platform/syncStore.mjs.map +1 -1
- package/dist/esm/platform/syncStore.native.js +19 -8
- package/dist/esm/platform/syncStore.native.js.map +1 -1
- package/package.json +15 -15
- package/src/cli/buildPageWorker.ts +4 -1
- package/src/cli/workerPool.test.ts +62 -0
- package/src/cli/workerPool.ts +5 -1
- package/src/platform/compose.android.tsx +5 -3
- package/src/platform/generated/Controls.native.tsx +7 -7
- package/src/platform/syncNativeState.ts +1 -1
- package/src/platform/syncStore.ts +21 -10
- package/types/cli/workerPool.d.ts.map +1 -1
- package/types/platform/compose.android.d.ts.map +1 -1
- package/types/platform/syncStore.d.ts +1 -0
- package/types/platform/syncStore.d.ts.map +1 -1
|
@@ -69,11 +69,7 @@ class HybridOneFileSystem : HybridOneFileSystemSpec() {
|
|
|
69
69
|
}
|
|
70
70
|
}
|
|
71
71
|
}
|
|
72
|
-
|
|
73
|
-
try {
|
|
74
|
-
FileOutputStream(staging).use { it.write(bytes) }
|
|
75
|
-
Os.rename(staging.path, target.path)
|
|
76
|
-
} finally { staging.delete() }
|
|
72
|
+
writeAtomically(target, bytes)
|
|
77
73
|
}
|
|
78
74
|
|
|
79
75
|
override fun copy(fromUri: String, toUri: String): Promise<Unit> = query("copy") {
|
|
@@ -458,11 +454,7 @@ class HybridOneFileSystem : HybridOneFileSystemSpec() {
|
|
|
458
454
|
FileOutputStream(target, true).use { it.write(data) }
|
|
459
455
|
return
|
|
460
456
|
}
|
|
461
|
-
|
|
462
|
-
try {
|
|
463
|
-
FileOutputStream(staging).use { it.write(data) }
|
|
464
|
-
Os.rename(staging.path, target.path)
|
|
465
|
-
} finally { staging.delete() }
|
|
457
|
+
writeAtomically(target, data)
|
|
466
458
|
}
|
|
467
459
|
|
|
468
460
|
private fun entryName(name: String): String {
|
|
@@ -130,7 +130,7 @@ class HybridOneFonts : HybridOneFontsSpec() {
|
|
|
130
130
|
val file = File(directory, "$resourceName.ttf")
|
|
131
131
|
if (!file.isFile) {
|
|
132
132
|
directory.mkdirs()
|
|
133
|
-
file
|
|
133
|
+
writeAtomically(file, bytes)
|
|
134
134
|
}
|
|
135
135
|
return file
|
|
136
136
|
}
|
|
@@ -148,8 +148,10 @@ class HybridOneFonts : HybridOneFontsSpec() {
|
|
|
148
148
|
if (bytes.isEmpty()) {
|
|
149
149
|
throw OneNativeError("E_FONTS_DOWNLOAD", "Fonts.load: \"$name\" downloaded zero bytes")
|
|
150
150
|
}
|
|
151
|
+
// concurrent loads of one font (a strictmode double mount) each
|
|
152
|
+
// write this file while another may have mapped it for Typeface.
|
|
151
153
|
directory.mkdirs()
|
|
152
|
-
file
|
|
154
|
+
writeAtomically(file, bytes)
|
|
153
155
|
return file
|
|
154
156
|
}
|
|
155
157
|
}
|
|
@@ -190,10 +190,11 @@ class HybridOneSpeechSynthesis : HybridOneSpeechSynthesisSpec() {
|
|
|
190
190
|
override fun stop(): Promise<Unit> {
|
|
191
191
|
val promise = Promise<Unit>()
|
|
192
192
|
main.post {
|
|
193
|
-
//
|
|
194
|
-
//
|
|
195
|
-
val dropped =
|
|
193
|
+
// every utterance settles here, so isSpeaking is false once stop
|
|
194
|
+
// resolves; the engine's later onStop finds nothing live.
|
|
195
|
+
val dropped = live.values.toList() + waiting
|
|
196
196
|
waiting.clear()
|
|
197
|
+
live.clear()
|
|
197
198
|
engine?.stop()
|
|
198
199
|
dropped.forEach {
|
|
199
200
|
it.onEvent(SpeechSynthesisEvent(SpeechSynthesisEventType.STOPPED, null))
|
|
@@ -209,9 +210,12 @@ class HybridOneSpeechSynthesis : HybridOneSpeechSynthesisSpec() {
|
|
|
209
210
|
|
|
210
211
|
override fun resume(): Promise<Unit> = Promise.resolved(Unit)
|
|
211
212
|
|
|
213
|
+
// speaking or queued on this synthesizer, as AVSpeechSynthesizer reports
|
|
214
|
+
// on ios. the engine's own isSpeaking spans every app and stays true
|
|
215
|
+
// until its playback thread finishes the item that already sent onDone.
|
|
212
216
|
override fun isSpeaking(): Promise<Boolean> {
|
|
213
217
|
val promise = Promise<Boolean>()
|
|
214
|
-
main.post { promise.resolve(
|
|
218
|
+
main.post { promise.resolve(waiting.isNotEmpty() || live.isNotEmpty()) }
|
|
215
219
|
return promise
|
|
216
220
|
}
|
|
217
221
|
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
package com.margelo.nitro.one
|
|
2
|
+
|
|
3
|
+
import android.system.Os
|
|
4
|
+
import java.io.File
|
|
5
|
+
import java.io.FileOutputStream
|
|
6
|
+
|
|
7
|
+
// replaces a file whole: the bytes go to a sibling temp file that renames
|
|
8
|
+
// over the target, so a reader that already opened or mapped the old file
|
|
9
|
+
// keeps it intact and nobody sees a partial write. truncating in place
|
|
10
|
+
// faults a reader that mapped the file (SIGBUS).
|
|
11
|
+
internal fun writeAtomically(target: File, bytes: ByteArray) {
|
|
12
|
+
val staging = File.createTempFile(".one-write-", null, target.parentFile)
|
|
13
|
+
try {
|
|
14
|
+
FileOutputStream(staging).use { it.write(bytes) }
|
|
15
|
+
Os.rename(staging.path, target.path)
|
|
16
|
+
} finally {
|
|
17
|
+
staging.delete()
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -294,14 +294,8 @@ object OneUpdatesLauncher {
|
|
|
294
294
|
val launching = state.launching
|
|
295
295
|
if (launching != null) json.put("launching", launching)
|
|
296
296
|
else json.put("launching", JSONObject.NULL)
|
|
297
|
-
|
|
298
|
-
|
|
299
|
-
val tmp = File(dir, "$STATE_FILE_NAME.tmp")
|
|
300
|
-
tmp.writeText(json.toString())
|
|
301
|
-
if (!tmp.renameTo(stateFile())) {
|
|
302
|
-
tmp.copyTo(stateFile(), overwrite = true)
|
|
303
|
-
tmp.delete()
|
|
304
|
-
}
|
|
297
|
+
directory().mkdirs()
|
|
298
|
+
writeAtomically(stateFile(), json.toString().toByteArray())
|
|
305
299
|
}
|
|
306
300
|
|
|
307
301
|
// MARK: - shared helpers
|
|
@@ -9,7 +9,6 @@ import android.graphics.PorterDuffColorFilter
|
|
|
9
9
|
import android.graphics.drawable.Animatable
|
|
10
10
|
import android.net.Uri
|
|
11
11
|
import android.os.Build
|
|
12
|
-
import android.view.View
|
|
13
12
|
import android.view.ViewGroup
|
|
14
13
|
import androidx.compose.foundation.BorderStroke
|
|
15
14
|
import androidx.compose.foundation.background
|
|
@@ -995,8 +994,10 @@ private class OneNativeControlledValue<T>(initial: T) {
|
|
|
995
994
|
|
|
996
995
|
class OneNativeComposeNodeView(context: Context) : ReactViewGroup(context) {
|
|
997
996
|
private val composeView =
|
|
997
|
+
// no view id: react native takes the nearest ancestor with a positive
|
|
998
|
+
// id as the react tag of a touch, so a generated id here sent taps on
|
|
999
|
+
// compose controls to whatever react view shared that number.
|
|
998
1000
|
ComposeView(context).apply {
|
|
999
|
-
id = View.generateViewId()
|
|
1000
1001
|
layoutParams =
|
|
1001
1002
|
ViewGroup.LayoutParams(
|
|
1002
1003
|
ViewGroup.LayoutParams.MATCH_PARENT,
|
|
@@ -66,6 +66,8 @@ class OneNativePagerView(val reactContext: ThemedReactContext) : FrameLayout(rea
|
|
|
66
66
|
layoutParams = ViewGroup.LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT)
|
|
67
67
|
isSaveEnabled = false
|
|
68
68
|
pager.isSaveEnabled = false
|
|
69
|
+
// the internal recycler is not a react view; a positive id becomes a touch target tag.
|
|
70
|
+
pager.getChildAt(0).id = View.NO_ID
|
|
69
71
|
pager.adapter = adapter
|
|
70
72
|
addView(pager, LayoutParams(LayoutParams.MATCH_PARENT, LayoutParams.MATCH_PARENT))
|
|
71
73
|
pager.registerOnPageChangeCallback(object : ViewPager2.OnPageChangeCallback() {
|
|
@@ -50,10 +50,11 @@ import_node_worker_threads.parentPort.on("message", async (msg) => {
|
|
|
50
50
|
const result = await runWithAsyncLocalContext(async () => {
|
|
51
51
|
return await buildPage(msg.args.serverEntry, msg.args.routerRoot, msg.args.path, msg.args.relativeId, msg.args.params, msg.args.foundRoute, msg.args.clientManifestEntry, msg.args.staticDir, msg.args.clientDir, msg.args.builtMiddlewares, msg.args.serverJsPath, msg.args.preloads, msg.args.allCSS, msg.args.layoutCSS, msg.args.routePreloads, msg.args.allCSSContents, msg.args.criticalPreloads, msg.args.deferredPreloads, msg.args.useAfterLCP, msg.args.useAfterLCPAggressive);
|
|
52
52
|
});
|
|
53
|
+
const { loaderData: _loaderData, cssContents: _cssContents, ...buildInfo } = result;
|
|
53
54
|
import_node_worker_threads.parentPort.postMessage({
|
|
54
55
|
type: "done",
|
|
55
56
|
id: msg.id,
|
|
56
|
-
result
|
|
57
|
+
result: buildInfo
|
|
57
58
|
});
|
|
58
59
|
} catch (err) {
|
|
59
60
|
import_node_worker_threads.parentPort.postMessage({
|
|
@@ -52,10 +52,11 @@ import_worker_threads.parentPort.on("message", async function(msg) {
|
|
|
52
52
|
var result = await runWithAsyncLocalContext(async function() {
|
|
53
53
|
return await buildPage(msg.args.serverEntry, msg.args.routerRoot, msg.args.path, msg.args.relativeId, msg.args.params, msg.args.foundRoute, msg.args.clientManifestEntry, msg.args.staticDir, msg.args.clientDir, msg.args.builtMiddlewares, msg.args.serverJsPath, msg.args.preloads, msg.args.allCSS, msg.args.layoutCSS, msg.args.routePreloads, msg.args.allCSSContents, msg.args.criticalPreloads, msg.args.deferredPreloads, msg.args.useAfterLCP, msg.args.useAfterLCPAggressive);
|
|
54
54
|
});
|
|
55
|
+
var { loaderData: _loaderData, cssContents: _cssContents, ...buildInfo } = result;
|
|
55
56
|
import_worker_threads.parentPort.postMessage({
|
|
56
57
|
type: "done",
|
|
57
58
|
id: msg.id,
|
|
58
|
-
result
|
|
59
|
+
result: buildInfo
|
|
59
60
|
});
|
|
60
61
|
} catch (err) {
|
|
61
62
|
import_worker_threads.parentPort.postMessage({
|
|
@@ -52,10 +52,11 @@ import_worker_threads.parentPort.on("message", async function(msg) {
|
|
|
52
52
|
var result = await runWithAsyncLocalContext(async function() {
|
|
53
53
|
return await buildPage(msg.args.serverEntry, msg.args.routerRoot, msg.args.path, msg.args.relativeId, msg.args.params, msg.args.foundRoute, msg.args.clientManifestEntry, msg.args.staticDir, msg.args.clientDir, msg.args.builtMiddlewares, msg.args.serverJsPath, msg.args.preloads, msg.args.allCSS, msg.args.layoutCSS, msg.args.routePreloads, msg.args.allCSSContents, msg.args.criticalPreloads, msg.args.deferredPreloads, msg.args.useAfterLCP, msg.args.useAfterLCPAggressive);
|
|
54
54
|
});
|
|
55
|
+
var { loaderData: _loaderData, cssContents: _cssContents, ...buildInfo } = result;
|
|
55
56
|
import_worker_threads.parentPort.postMessage({
|
|
56
57
|
type: "done",
|
|
57
58
|
id: msg.id,
|
|
58
|
-
result
|
|
59
|
+
result: buildInfo
|
|
59
60
|
});
|
|
60
61
|
} catch (err) {
|
|
61
62
|
import_worker_threads.parentPort.postMessage({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"buildPageWorker.native.js","names":[],"sources":["cjs/cli/buildPageWorker.native.js"],"sourcesContent":["\"use strict\";\nvar import_worker_threads = require(\"worker_threads\");\nvar import_workerImport = require(\"../utils/workerImport\");\nvar import_setServerGlobals = require(\"../server/setServerGlobals\");\nconst import_meta = {};\nif (!import_worker_threads.parentPort) {\n console.error(\"Must be run as a worker thread\");\n process.exit(1);\n}\n(0, import_setServerGlobals.setServerGlobals)();\nif (!process.env.NODE_ENV) {\n process.env.NODE_ENV = \"production\";\n}\nvar buildPageFn = null;\nvar runWithAsyncLocalContextFn = null;\nvar initialized = false;\nasync function ensureImports() {\n if (!buildPageFn) {\n var mod = await (0, import_workerImport.workerImport)(\"./buildPage\", import_meta.url);\n buildPageFn = mod.buildPage;\n }\n if (!runWithAsyncLocalContextFn) {\n var mod1 = await (0, import_workerImport.workerImport)(\"../vite/one-server-only\", import_meta.url);\n runWithAsyncLocalContextFn = mod1.runWithAsyncLocalContext;\n }\n return {\n buildPage: buildPageFn,\n runWithAsyncLocalContext: runWithAsyncLocalContextFn\n };\n}\nasync function initializeWorker(oneOptions) {\n if (initialized) return;\n if (!oneOptions) {\n throw new Error(\"Worker must receive oneOptions from main thread\");\n }\n globalThis[\"__vxrnPluginConfig__\"] = oneOptions;\n initialized = true;\n}\nimport_worker_threads.parentPort.on(\"message\", async function(msg) {\n if (msg.type === \"init\") {\n await initializeWorker(msg.oneOptions);\n import_worker_threads.parentPort.postMessage({\n type: \"init-done\",\n id: msg.id\n });\n return;\n }\n if (msg.type === \"build\") {\n try {\n var { buildPage, runWithAsyncLocalContext } = await ensureImports();\n var result = await runWithAsyncLocalContext(async function() {\n return await buildPage(msg.args.serverEntry, msg.args.routerRoot, msg.args.path, msg.args.relativeId, msg.args.params, msg.args.foundRoute, msg.args.clientManifestEntry, msg.args.staticDir, msg.args.clientDir, msg.args.builtMiddlewares, msg.args.serverJsPath, msg.args.preloads, msg.args.allCSS, msg.args.layoutCSS, msg.args.routePreloads, msg.args.allCSSContents, msg.args.criticalPreloads, msg.args.deferredPreloads, msg.args.useAfterLCP, msg.args.useAfterLCPAggressive);\n });\n import_worker_threads.parentPort.postMessage({\n type: \"done\",\n id: msg.id,\n result\n });\n } catch (err) {\n import_worker_threads.parentPort.postMessage({\n type: \"error\",\n id: msg.id,\n error: err instanceof Error ? err.message : String(err),\n stack: err instanceof Error ? err.stack : void 0\n });\n }\n }\n});\nimport_worker_threads.parentPort.postMessage({\n type: \"ready\"\n});\n//# sourceMappingURL=buildPageWorker.js.map\n"],"mappings":";;;AACA,IAAI,wBAAwB,QAAQ,gBAAgB;AACpD,IAAI,sBAAsB,QAAQ,iCAAuB;AACzD,IAAI,0BAA0B,QAAQ,sCAA4B;AAClE,MAAM,cAAc,CAAC;AACrB,IAAI,CAAC,sBAAsB,YAAY;CACrC,QAAQ,MAAM,gCAAgC;CAC9C,QAAQ,KAAK,CAAC;AAChB;CACC,GAAG,wBAAwB,iBAAgB,CAAE;AAC9C,IAAI,CAAC,QAAQ,IAAI,UAAU;CACzB,QAAQ,IAAI,WAAW;AACzB;AACA,IAAI,cAAc;AAClB,IAAI,6BAA6B;AACjC,IAAI,cAAc;AAClB,eAAe,gBAAgB;CAC7B,IAAI,CAAC,aAAa;EAChB,IAAI,MAAM,OAAO,GAAG,oBAAoB,aAAY,CAAE,eAAe,YAAY,GAAG;EACpF,cAAc,IAAI;CACpB;CACA,IAAI,CAAC,4BAA4B;EAC/B,IAAI,OAAO,OAAO,GAAG,oBAAoB,aAAY,CAAE,2BAA2B,YAAY,GAAG;EACjG,6BAA6B,KAAK;CACpC;CACA,OAAO;EACL,WAAW;EACX,0BAA0B;CAC5B;AACF;AACA,eAAe,iBAAiB,YAAY;CAC1C,IAAI,aAAa;CACjB,IAAI,CAAC,YAAY;EACf,MAAM,IAAI,MAAM,iDAAiD;CACnE;CACA,WAAW,0BAA0B;CACrC,cAAc;AAChB;AACA,sBAAsB,WAAW,GAAG,WAAW,eAAe,KAAK;CACjE,IAAI,IAAI,SAAS,QAAQ;EACvB,MAAM,iBAAiB,IAAI,UAAU;EACrC,sBAAsB,WAAW,YAAY;GAC3C,MAAM;GACN,IAAI,IAAI;EACV,CAAC;EACD;CACF;CACA,IAAI,IAAI,SAAS,SAAS;EACxB,IAAI;GACF,IAAI,EAAE,WAAW,6BAA6B,MAAM,cAAc;GAClE,IAAI,SAAS,MAAM,yBAAyB,iBAAiB;IAC3D,OAAO,MAAM,UAAU,IAAI,KAAK,aAAa,IAAI,KAAK,YAAY,IAAI,KAAK,MAAM,IAAI,KAAK,YAAY,IAAI,KAAK,QAAQ,IAAI,KAAK,YAAY,IAAI,KAAK,qBAAqB,IAAI,KAAK,WAAW,IAAI,KAAK,WAAW,IAAI,KAAK,kBAAkB,IAAI,KAAK,cAAc,IAAI,KAAK,UAAU,IAAI,KAAK,QAAQ,IAAI,KAAK,WAAW,IAAI,KAAK,eAAe,IAAI,KAAK,gBAAgB,IAAI,KAAK,kBAAkB,IAAI,KAAK,kBAAkB,IAAI,KAAK,aAAa,IAAI,KAAK,qBAAqB;GACzd,CAAC;GACD,sBAAsB,WAAW,YAAY;IAC3C,MAAM;IACN,IAAI,IAAI;IACR;
|
|
1
|
+
{"version":3,"file":"buildPageWorker.native.js","names":[],"sources":["cjs/cli/buildPageWorker.native.js"],"sourcesContent":["\"use strict\";\nvar import_worker_threads = require(\"worker_threads\");\nvar import_workerImport = require(\"../utils/workerImport\");\nvar import_setServerGlobals = require(\"../server/setServerGlobals\");\nconst import_meta = {};\nif (!import_worker_threads.parentPort) {\n console.error(\"Must be run as a worker thread\");\n process.exit(1);\n}\n(0, import_setServerGlobals.setServerGlobals)();\nif (!process.env.NODE_ENV) {\n process.env.NODE_ENV = \"production\";\n}\nvar buildPageFn = null;\nvar runWithAsyncLocalContextFn = null;\nvar initialized = false;\nasync function ensureImports() {\n if (!buildPageFn) {\n var mod = await (0, import_workerImport.workerImport)(\"./buildPage\", import_meta.url);\n buildPageFn = mod.buildPage;\n }\n if (!runWithAsyncLocalContextFn) {\n var mod1 = await (0, import_workerImport.workerImport)(\"../vite/one-server-only\", import_meta.url);\n runWithAsyncLocalContextFn = mod1.runWithAsyncLocalContext;\n }\n return {\n buildPage: buildPageFn,\n runWithAsyncLocalContext: runWithAsyncLocalContextFn\n };\n}\nasync function initializeWorker(oneOptions) {\n if (initialized) return;\n if (!oneOptions) {\n throw new Error(\"Worker must receive oneOptions from main thread\");\n }\n globalThis[\"__vxrnPluginConfig__\"] = oneOptions;\n initialized = true;\n}\nimport_worker_threads.parentPort.on(\"message\", async function(msg) {\n if (msg.type === \"init\") {\n await initializeWorker(msg.oneOptions);\n import_worker_threads.parentPort.postMessage({\n type: \"init-done\",\n id: msg.id\n });\n return;\n }\n if (msg.type === \"build\") {\n try {\n var { buildPage, runWithAsyncLocalContext } = await ensureImports();\n var result = await runWithAsyncLocalContext(async function() {\n return await buildPage(msg.args.serverEntry, msg.args.routerRoot, msg.args.path, msg.args.relativeId, msg.args.params, msg.args.foundRoute, msg.args.clientManifestEntry, msg.args.staticDir, msg.args.clientDir, msg.args.builtMiddlewares, msg.args.serverJsPath, msg.args.preloads, msg.args.allCSS, msg.args.layoutCSS, msg.args.routePreloads, msg.args.allCSSContents, msg.args.criticalPreloads, msg.args.deferredPreloads, msg.args.useAfterLCP, msg.args.useAfterLCPAggressive);\n });\n var { loaderData: _loaderData, cssContents: _cssContents, ...buildInfo } = result;\n import_worker_threads.parentPort.postMessage({\n type: \"done\",\n id: msg.id,\n result: buildInfo\n });\n } catch (err) {\n import_worker_threads.parentPort.postMessage({\n type: \"error\",\n id: msg.id,\n error: err instanceof Error ? err.message : String(err),\n stack: err instanceof Error ? err.stack : void 0\n });\n }\n }\n});\nimport_worker_threads.parentPort.postMessage({\n type: \"ready\"\n});\n//# sourceMappingURL=buildPageWorker.js.map\n"],"mappings":";;;AACA,IAAI,wBAAwB,QAAQ,gBAAgB;AACpD,IAAI,sBAAsB,QAAQ,iCAAuB;AACzD,IAAI,0BAA0B,QAAQ,sCAA4B;AAClE,MAAM,cAAc,CAAC;AACrB,IAAI,CAAC,sBAAsB,YAAY;CACrC,QAAQ,MAAM,gCAAgC;CAC9C,QAAQ,KAAK,CAAC;AAChB;CACC,GAAG,wBAAwB,iBAAgB,CAAE;AAC9C,IAAI,CAAC,QAAQ,IAAI,UAAU;CACzB,QAAQ,IAAI,WAAW;AACzB;AACA,IAAI,cAAc;AAClB,IAAI,6BAA6B;AACjC,IAAI,cAAc;AAClB,eAAe,gBAAgB;CAC7B,IAAI,CAAC,aAAa;EAChB,IAAI,MAAM,OAAO,GAAG,oBAAoB,aAAY,CAAE,eAAe,YAAY,GAAG;EACpF,cAAc,IAAI;CACpB;CACA,IAAI,CAAC,4BAA4B;EAC/B,IAAI,OAAO,OAAO,GAAG,oBAAoB,aAAY,CAAE,2BAA2B,YAAY,GAAG;EACjG,6BAA6B,KAAK;CACpC;CACA,OAAO;EACL,WAAW;EACX,0BAA0B;CAC5B;AACF;AACA,eAAe,iBAAiB,YAAY;CAC1C,IAAI,aAAa;CACjB,IAAI,CAAC,YAAY;EACf,MAAM,IAAI,MAAM,iDAAiD;CACnE;CACA,WAAW,0BAA0B;CACrC,cAAc;AAChB;AACA,sBAAsB,WAAW,GAAG,WAAW,eAAe,KAAK;CACjE,IAAI,IAAI,SAAS,QAAQ;EACvB,MAAM,iBAAiB,IAAI,UAAU;EACrC,sBAAsB,WAAW,YAAY;GAC3C,MAAM;GACN,IAAI,IAAI;EACV,CAAC;EACD;CACF;CACA,IAAI,IAAI,SAAS,SAAS;EACxB,IAAI;GACF,IAAI,EAAE,WAAW,6BAA6B,MAAM,cAAc;GAClE,IAAI,SAAS,MAAM,yBAAyB,iBAAiB;IAC3D,OAAO,MAAM,UAAU,IAAI,KAAK,aAAa,IAAI,KAAK,YAAY,IAAI,KAAK,MAAM,IAAI,KAAK,YAAY,IAAI,KAAK,QAAQ,IAAI,KAAK,YAAY,IAAI,KAAK,qBAAqB,IAAI,KAAK,WAAW,IAAI,KAAK,WAAW,IAAI,KAAK,kBAAkB,IAAI,KAAK,cAAc,IAAI,KAAK,UAAU,IAAI,KAAK,QAAQ,IAAI,KAAK,WAAW,IAAI,KAAK,eAAe,IAAI,KAAK,gBAAgB,IAAI,KAAK,kBAAkB,IAAI,KAAK,kBAAkB,IAAI,KAAK,aAAa,IAAI,KAAK,qBAAqB;GACzd,CAAC;GACD,IAAI,EAAE,YAAY,aAAa,aAAa,cAAc,GAAG,cAAc;GAC3E,sBAAsB,WAAW,YAAY;IAC3C,MAAM;IACN,IAAI,IAAI;IACR,QAAQ;GACV,CAAC;EACH,SAAS,KAAK;GACZ,sBAAsB,WAAW,YAAY;IAC3C,MAAM;IACN,IAAI,IAAI;IACR,OAAO,eAAe,QAAQ,IAAI,UAAU,OAAO,GAAG;IACtD,OAAO,eAAe,QAAQ,IAAI,QAAQ,KAAK;GACjD,CAAC;EACH;CACF;AACF,CAAC;AACD,sBAAsB,WAAW,YAAY,EAC3C,MAAM,QACR,CAAC"}
|
|
@@ -135,7 +135,10 @@ var BuildWorkerPool = class {
|
|
|
135
135
|
return new Promise((resolve, reject) => {
|
|
136
136
|
const pending = {
|
|
137
137
|
id,
|
|
138
|
-
resolve
|
|
138
|
+
resolve: (result) => resolve({
|
|
139
|
+
...result,
|
|
140
|
+
cssContents: args.allCSSContents
|
|
141
|
+
}),
|
|
139
142
|
reject
|
|
140
143
|
};
|
|
141
144
|
this.taskQueue.push({
|
|
@@ -205,7 +205,12 @@ var BuildWorkerPool = /* @__PURE__ */ (function() {
|
|
|
205
205
|
return new Promise(function(resolve, reject) {
|
|
206
206
|
var pending = {
|
|
207
207
|
id,
|
|
208
|
-
resolve
|
|
208
|
+
resolve: function resolve1(result) {
|
|
209
|
+
return resolve({
|
|
210
|
+
...result,
|
|
211
|
+
cssContents: args.allCSSContents
|
|
212
|
+
});
|
|
213
|
+
},
|
|
209
214
|
reject
|
|
210
215
|
};
|
|
211
216
|
_this.taskQueue.push({
|
|
@@ -205,7 +205,12 @@ var BuildWorkerPool = /* @__PURE__ */ (function() {
|
|
|
205
205
|
return new Promise(function(resolve, reject) {
|
|
206
206
|
var pending = {
|
|
207
207
|
id,
|
|
208
|
-
resolve
|
|
208
|
+
resolve: function resolve1(result) {
|
|
209
|
+
return resolve({
|
|
210
|
+
...result,
|
|
211
|
+
cssContents: args.allCSSContents
|
|
212
|
+
});
|
|
213
|
+
},
|
|
209
214
|
reject
|
|
210
215
|
};
|
|
211
216
|
_this.taskQueue.push({
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workerPool.native.js","names":[],"sources":["cjs/cli/workerPool.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar workerPool_exports = {};\n__export(workerPool_exports, {\n BuildWorkerPool: () => BuildWorkerPool,\n getWorkerPool: () => getWorkerPool,\n terminateWorkerPool: () => terminateWorkerPool\n});\nmodule.exports = __toCommonJS(workerPool_exports);\nvar import_worker_threads = require(\"worker_threads\");\nvar import_os = require(\"os\");\nvar import_url = require(\"url\");\nvar import_path = require(\"path\");\nconst import_meta = {};\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else obj[key] = value;\n return obj;\n}\nvar workerDirectory = typeof __dirname === \"string\" ? (0, import_path.join)(__dirname, \"..\", \"..\", \"esm\", \"cli\") : (0, import_path.dirname)((0, import_url.fileURLToPath)(import_meta.url));\nvar BuildWorkerPool = /* @__PURE__ */ (function() {\n \"use strict\";\n function BuildWorkerPool2() {\n var _this, _loop = function(i2) {\n var worker = new import_worker_threads.Worker(workerPath);\n worker.on(\"message\", function(msg) {\n if (msg.type === \"ready\") {\n _this1.readyCount++;\n _this1.available.push(worker);\n if (_this1.readyCount === size) {\n _this1._resolveReady();\n }\n } else if (msg.type === \"init-done\") {\n _this1.initCount++;\n if (_this1.initCount === size) {\n _this1._resolveInitialized();\n }\n _this1.dispatch();\n } else if (msg.type === \"done\" || msg.type === \"error\") {\n var pending = _this1.pendingById.get(msg.id);\n if (pending) {\n _this1.pendingById.delete(msg.id);\n if (msg.type === \"done\") {\n pending.resolve(msg.result);\n } else {\n pending.reject(new Error(msg.error));\n }\n }\n _this1.available.push(worker);\n _this1.dispatch();\n }\n });\n worker.on(\"error\", function(err) {\n console.error(\"[BuildWorkerPool] Worker error:\", err);\n });\n _this.workers.push(worker);\n };\n var _this1 = this;\n var size = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : Math.max(1, (0, import_os.cpus)().length - 1);\n _class_call_check(this, BuildWorkerPool2);\n _define_property(this, \"workers\", []);\n _define_property(this, \"available\", []);\n _define_property(this, \"taskQueue\", []);\n _define_property(this, \"pendingById\", /* @__PURE__ */ new Map());\n _define_property(this, \"nextId\", 0);\n _define_property(this, \"readyCount\", 0);\n _define_property(this, \"initCount\", 0);\n _define_property(this, \"_ready\", void 0);\n _define_property(this, \"_resolveReady\", void 0);\n _define_property(this, \"_initialized\", void 0);\n _define_property(this, \"_resolveInitialized\", void 0);\n _define_property(this, \"_terminated\", false);\n this._ready = new Promise(function(resolve) {\n _this1._resolveReady = resolve;\n });\n this._initialized = new Promise(function(resolve) {\n _this1._resolveInitialized = resolve;\n });\n var workerPath = (0, import_path.join)(workerDirectory, \"buildPageWorker.mjs\");\n for (var i = 0; i < size; i++) _this = this, _loop(i);\n }\n _create_class(BuildWorkerPool2, [\n {\n key: \"size\",\n get: function get() {\n return this.workers.length;\n }\n },\n {\n key: \"initialize\",\n value: (\n // initialize all workers with pre-loaded config from main thread\n async function initialize(oneOptions) {\n await this._ready;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.workers[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var worker = _step.value;\n worker.postMessage({\n type: \"init\",\n id: this.nextId++,\n oneOptions\n });\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n await this._initialized;\n }\n )\n },\n {\n key: \"dispatch\",\n value: function dispatch() {\n while (this.available.length > 0 && this.taskQueue.length > 0) {\n var worker = this.available.shift();\n var { msg, pending } = this.taskQueue.shift();\n this.pendingById.set(pending.id, pending);\n worker.postMessage(msg);\n }\n }\n },\n {\n key: \"buildPage\",\n value: async function buildPage(args) {\n var _this = this;\n var _args_foundRoute_layouts, _args_foundRoute_middlewares;\n if (this._terminated) {\n throw new Error(\"Worker pool has been terminated\");\n }\n var serializedRoute = {\n type: args.foundRoute.type,\n file: args.foundRoute.file,\n // only keep serializable layout data\n layouts: (_args_foundRoute_layouts = args.foundRoute.layouts) === null || _args_foundRoute_layouts === void 0 ? void 0 : _args_foundRoute_layouts.map(function(layout) {\n return {\n contextKey: layout.contextKey,\n loaderServerPath: layout.loaderServerPath,\n layoutRenderMode: layout.layoutRenderMode\n };\n }),\n // only keep contextKey from middlewares\n middlewares: (_args_foundRoute_middlewares = args.foundRoute.middlewares) === null || _args_foundRoute_middlewares === void 0 ? void 0 : _args_foundRoute_middlewares.map(function(mw) {\n return {\n contextKey: mw.contextKey\n };\n })\n };\n var id = this.nextId++;\n var msg = {\n type: \"build\",\n id,\n args: {\n ...args,\n foundRoute: serializedRoute\n }\n };\n return new Promise(function(resolve, reject) {\n var pending = {\n id,\n resolve,\n reject\n };\n _this.taskQueue.push({\n msg,\n pending\n });\n _this.dispatch();\n });\n }\n },\n {\n key: \"terminate\",\n value: async function terminate() {\n this._terminated = true;\n await Promise.all(this.workers.map(function(w) {\n return w.terminate();\n }));\n this.workers = [];\n this.available = [];\n }\n }\n ]);\n return BuildWorkerPool2;\n})();\nvar pool = null;\nfunction getWorkerPool(size) {\n if (!pool) {\n pool = new BuildWorkerPool(size);\n }\n return pool;\n}\nasync function terminateWorkerPool() {\n if (pool) {\n await pool.terminate();\n pool = null;\n }\n}\n//# sourceMappingURL=workerPool.js.map\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"workerPool.native.js","names":[],"sources":["cjs/cli/workerPool.native.js"],"sourcesContent":["\"use strict\";\nvar __defProp = Object.defineProperty;\nvar __getOwnPropDesc = Object.getOwnPropertyDescriptor;\nvar __getOwnPropNames = Object.getOwnPropertyNames;\nvar __hasOwnProp = Object.prototype.hasOwnProperty;\nvar __export = (target, all) => {\n for (var name in all)\n __defProp(target, name, { get: all[name], enumerable: true });\n};\nvar __copyProps = (to, from, except, desc) => {\n if (from && typeof from === \"object\" || typeof from === \"function\") {\n for (let key of __getOwnPropNames(from))\n if (!__hasOwnProp.call(to, key) && key !== except)\n __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });\n }\n return to;\n};\nvar __toCommonJS = (mod) => __copyProps(__defProp({}, \"__esModule\", { value: true }), mod);\nvar workerPool_exports = {};\n__export(workerPool_exports, {\n BuildWorkerPool: () => BuildWorkerPool,\n getWorkerPool: () => getWorkerPool,\n terminateWorkerPool: () => terminateWorkerPool\n});\nmodule.exports = __toCommonJS(workerPool_exports);\nvar import_worker_threads = require(\"worker_threads\");\nvar import_os = require(\"os\");\nvar import_url = require(\"url\");\nvar import_path = require(\"path\");\nconst import_meta = {};\nfunction _class_call_check(instance, Constructor) {\n if (!(instance instanceof Constructor)) throw new TypeError(\"Cannot call a class as a function\");\n}\nfunction _defineProperties(target, props) {\n for (var i = 0; i < props.length; i++) {\n var descriptor = props[i];\n descriptor.enumerable = descriptor.enumerable || false;\n descriptor.configurable = true;\n if (\"value\" in descriptor) descriptor.writable = true;\n Object.defineProperty(target, descriptor.key, descriptor);\n }\n}\nfunction _create_class(Constructor, protoProps, staticProps) {\n if (protoProps) _defineProperties(Constructor.prototype, protoProps);\n if (staticProps) _defineProperties(Constructor, staticProps);\n return Constructor;\n}\nfunction _define_property(obj, key, value) {\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else obj[key] = value;\n return obj;\n}\nvar workerDirectory = typeof __dirname === \"string\" ? (0, import_path.join)(__dirname, \"..\", \"..\", \"esm\", \"cli\") : (0, import_path.dirname)((0, import_url.fileURLToPath)(import_meta.url));\nvar BuildWorkerPool = /* @__PURE__ */ (function() {\n \"use strict\";\n function BuildWorkerPool2() {\n var _this, _loop = function(i2) {\n var worker = new import_worker_threads.Worker(workerPath);\n worker.on(\"message\", function(msg) {\n if (msg.type === \"ready\") {\n _this1.readyCount++;\n _this1.available.push(worker);\n if (_this1.readyCount === size) {\n _this1._resolveReady();\n }\n } else if (msg.type === \"init-done\") {\n _this1.initCount++;\n if (_this1.initCount === size) {\n _this1._resolveInitialized();\n }\n _this1.dispatch();\n } else if (msg.type === \"done\" || msg.type === \"error\") {\n var pending = _this1.pendingById.get(msg.id);\n if (pending) {\n _this1.pendingById.delete(msg.id);\n if (msg.type === \"done\") {\n pending.resolve(msg.result);\n } else {\n pending.reject(new Error(msg.error));\n }\n }\n _this1.available.push(worker);\n _this1.dispatch();\n }\n });\n worker.on(\"error\", function(err) {\n console.error(\"[BuildWorkerPool] Worker error:\", err);\n });\n _this.workers.push(worker);\n };\n var _this1 = this;\n var size = arguments.length > 0 && arguments[0] !== void 0 ? arguments[0] : Math.max(1, (0, import_os.cpus)().length - 1);\n _class_call_check(this, BuildWorkerPool2);\n _define_property(this, \"workers\", []);\n _define_property(this, \"available\", []);\n _define_property(this, \"taskQueue\", []);\n _define_property(this, \"pendingById\", /* @__PURE__ */ new Map());\n _define_property(this, \"nextId\", 0);\n _define_property(this, \"readyCount\", 0);\n _define_property(this, \"initCount\", 0);\n _define_property(this, \"_ready\", void 0);\n _define_property(this, \"_resolveReady\", void 0);\n _define_property(this, \"_initialized\", void 0);\n _define_property(this, \"_resolveInitialized\", void 0);\n _define_property(this, \"_terminated\", false);\n this._ready = new Promise(function(resolve) {\n _this1._resolveReady = resolve;\n });\n this._initialized = new Promise(function(resolve) {\n _this1._resolveInitialized = resolve;\n });\n var workerPath = (0, import_path.join)(workerDirectory, \"buildPageWorker.mjs\");\n for (var i = 0; i < size; i++) _this = this, _loop(i);\n }\n _create_class(BuildWorkerPool2, [\n {\n key: \"size\",\n get: function get() {\n return this.workers.length;\n }\n },\n {\n key: \"initialize\",\n value: (\n // initialize all workers with pre-loaded config from main thread\n async function initialize(oneOptions) {\n await this._ready;\n var _iteratorNormalCompletion = true, _didIteratorError = false, _iteratorError = void 0;\n try {\n for (var _iterator = this.workers[Symbol.iterator](), _step; !(_iteratorNormalCompletion = (_step = _iterator.next()).done); _iteratorNormalCompletion = true) {\n var worker = _step.value;\n worker.postMessage({\n type: \"init\",\n id: this.nextId++,\n oneOptions\n });\n }\n } catch (err) {\n _didIteratorError = true;\n _iteratorError = err;\n } finally {\n try {\n if (!_iteratorNormalCompletion && _iterator.return != null) {\n _iterator.return();\n }\n } finally {\n if (_didIteratorError) {\n throw _iteratorError;\n }\n }\n }\n await this._initialized;\n }\n )\n },\n {\n key: \"dispatch\",\n value: function dispatch() {\n while (this.available.length > 0 && this.taskQueue.length > 0) {\n var worker = this.available.shift();\n var { msg, pending } = this.taskQueue.shift();\n this.pendingById.set(pending.id, pending);\n worker.postMessage(msg);\n }\n }\n },\n {\n key: \"buildPage\",\n value: async function buildPage(args) {\n var _this = this;\n var _args_foundRoute_layouts, _args_foundRoute_middlewares;\n if (this._terminated) {\n throw new Error(\"Worker pool has been terminated\");\n }\n var serializedRoute = {\n type: args.foundRoute.type,\n file: args.foundRoute.file,\n // only keep serializable layout data\n layouts: (_args_foundRoute_layouts = args.foundRoute.layouts) === null || _args_foundRoute_layouts === void 0 ? void 0 : _args_foundRoute_layouts.map(function(layout) {\n return {\n contextKey: layout.contextKey,\n loaderServerPath: layout.loaderServerPath,\n layoutRenderMode: layout.layoutRenderMode\n };\n }),\n // only keep contextKey from middlewares\n middlewares: (_args_foundRoute_middlewares = args.foundRoute.middlewares) === null || _args_foundRoute_middlewares === void 0 ? void 0 : _args_foundRoute_middlewares.map(function(mw) {\n return {\n contextKey: mw.contextKey\n };\n })\n };\n var id = this.nextId++;\n var msg = {\n type: \"build\",\n id,\n args: {\n ...args,\n foundRoute: serializedRoute\n }\n };\n return new Promise(function(resolve, reject) {\n var pending = {\n id,\n resolve: function resolve1(result) {\n return resolve({\n ...result,\n cssContents: args.allCSSContents\n });\n },\n reject\n };\n _this.taskQueue.push({\n msg,\n pending\n });\n _this.dispatch();\n });\n }\n },\n {\n key: \"terminate\",\n value: async function terminate() {\n this._terminated = true;\n await Promise.all(this.workers.map(function(w) {\n return w.terminate();\n }));\n this.workers = [];\n this.available = [];\n }\n }\n ]);\n return BuildWorkerPool2;\n})();\nvar pool = null;\nfunction getWorkerPool(size) {\n if (!pool) {\n pool = new BuildWorkerPool(size);\n }\n return pool;\n}\nasync function terminateWorkerPool() {\n if (pool) {\n await pool.terminate();\n pool = null;\n }\n}\n//# sourceMappingURL=workerPool.js.map\n"],"mappings":"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"}
|
|
@@ -1234,7 +1234,7 @@ function TextField(param) {
|
|
|
1234
1234
|
var syncHandle = (0, import_syncNativeState.syncHandleOf)(text);
|
|
1235
1235
|
var syncedText = (0, import_syncNativeState.useSyncValue)(text);
|
|
1236
1236
|
var controlled = (0, import_controlled.useControlled)(function(event) {
|
|
1237
|
-
|
|
1237
|
+
(0, import_syncStore.publishNativeSyncState)(syncHandle);
|
|
1238
1238
|
onTextChange(event.text);
|
|
1239
1239
|
}, revision);
|
|
1240
1240
|
var controlledFocus = (0, import_controlled.useControlled)(function(event) {
|
|
@@ -1795,7 +1795,7 @@ function SyncSwitch(param) {
|
|
|
1795
1795
|
disabled: !enabled,
|
|
1796
1796
|
familyOptions: { syncCallbackId: callbackId },
|
|
1797
1797
|
onNativeComposeNodeBooleanValueChange: function onNativeComposeNodeBooleanValueChange() {
|
|
1798
|
-
return
|
|
1798
|
+
return (0, import_syncStore.publishNativeSyncState)(isOn);
|
|
1799
1799
|
}
|
|
1800
1800
|
});
|
|
1801
1801
|
}
|
|
@@ -1234,7 +1234,7 @@ function TextField(param) {
|
|
|
1234
1234
|
var syncHandle = (0, import_syncNativeState.syncHandleOf)(text);
|
|
1235
1235
|
var syncedText = (0, import_syncNativeState.useSyncValue)(text);
|
|
1236
1236
|
var controlled = (0, import_controlled.useControlled)(function(event) {
|
|
1237
|
-
|
|
1237
|
+
(0, import_syncStore.publishNativeSyncState)(syncHandle);
|
|
1238
1238
|
onTextChange(event.text);
|
|
1239
1239
|
}, revision);
|
|
1240
1240
|
var controlledFocus = (0, import_controlled.useControlled)(function(event) {
|
|
@@ -1795,7 +1795,7 @@ function SyncSwitch(param) {
|
|
|
1795
1795
|
disabled: !enabled,
|
|
1796
1796
|
familyOptions: { syncCallbackId: callbackId },
|
|
1797
1797
|
onNativeComposeNodeBooleanValueChange: function onNativeComposeNodeBooleanValueChange() {
|
|
1798
|
-
return
|
|
1798
|
+
return (0, import_syncStore.publishNativeSyncState)(isOn);
|
|
1799
1799
|
}
|
|
1800
1800
|
});
|
|
1801
1801
|
}
|