effect-start 0.23.0 → 0.25.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/ChildProcess.js +32 -20
- package/dist/Commander.js +377 -293
- package/dist/ContentNegotiation.js +424 -318
- package/dist/Cookies.js +340 -271
- package/dist/Development.js +85 -49
- package/dist/Effectify.js +22 -14
- package/dist/Entity.js +260 -195
- package/dist/Fetch.js +192 -0
- package/dist/FilePathPattern.js +88 -77
- package/dist/FileRouter.js +192 -136
- package/dist/FileRouterCodegen.js +262 -191
- package/dist/FileSystem.js +126 -64
- package/dist/Http.js +96 -77
- package/dist/PathPattern.js +311 -273
- package/dist/PlatformError.js +36 -21
- package/dist/PlatformRuntime.js +65 -40
- package/dist/Route.js +122 -79
- package/dist/RouteBody.js +83 -58
- package/dist/RouteError.js +46 -25
- package/dist/RouteHook.js +58 -34
- package/dist/RouteHttp.js +346 -237
- package/dist/RouteHttpTracer.js +86 -58
- package/dist/RouteMount.js +81 -58
- package/dist/RouteSchema.js +253 -170
- package/dist/RouteSse.js +87 -72
- package/dist/RouteTree.js +99 -73
- package/dist/RouteTrie.js +160 -133
- package/dist/SchemaExtra.js +87 -62
- package/dist/Socket.js +32 -21
- package/dist/SqlIntrospect.js +317 -268
- package/dist/Start.js +55 -25
- package/dist/StartApp.js +3 -21
- package/dist/StreamExtra.js +109 -74
- package/dist/System.js +37 -21
- package/dist/TuplePathPattern.js +64 -58
- package/dist/Unique.js +159 -120
- package/dist/Values.js +48 -32
- package/dist/bun/BunBundle.js +158 -109
- package/dist/bun/BunChildProcessSpawner.js +121 -82
- package/dist/bun/BunImportTrackerPlugin.js +85 -63
- package/dist/bun/BunRoute.js +135 -99
- package/dist/bun/BunRuntime.js +39 -29
- package/dist/bun/BunServer.js +268 -140
- package/dist/bun/BunVirtualFilesPlugin.js +47 -33
- package/dist/bun/_BunEnhancedResolve.js +107 -82
- package/dist/bun/index.js +5 -5
- package/dist/bundler/Bundle.js +82 -38
- package/dist/bundler/BundleFiles.js +140 -82
- package/dist/bundler/BundleRoute.js +49 -38
- package/dist/client/Overlay.js +29 -28
- package/dist/client/ScrollState.js +94 -82
- package/dist/client/index.js +79 -61
- package/dist/console/Console.js +40 -24
- package/dist/console/ConsoleErrors.js +189 -178
- package/dist/console/ConsoleLogger.js +52 -43
- package/dist/console/ConsoleMetrics.js +69 -58
- package/dist/console/ConsoleProcess.js +57 -47
- package/dist/console/ConsoleStore.js +56 -45
- package/dist/console/ConsoleTracer.js +101 -88
- package/dist/console/Simulation.js +714 -563
- package/dist/console/index.js +3 -3
- package/dist/console/routes/tree.js +29 -28
- package/dist/datastar/actions/fetch.js +514 -381
- package/dist/datastar/actions/peek.js +12 -12
- package/dist/datastar/actions/setAll.js +18 -11
- package/dist/datastar/actions/toggleAll.js +18 -11
- package/dist/datastar/attributes/attr.js +48 -47
- package/dist/datastar/attributes/bind.js +186 -167
- package/dist/datastar/attributes/class.js +51 -44
- package/dist/datastar/attributes/computed.js +23 -24
- package/dist/datastar/attributes/effect.js +9 -8
- package/dist/datastar/attributes/indicator.js +32 -29
- package/dist/datastar/attributes/init.js +26 -25
- package/dist/datastar/attributes/jsonSignals.js +32 -29
- package/dist/datastar/attributes/on.js +76 -73
- package/dist/datastar/attributes/onIntersect.js +51 -51
- package/dist/datastar/attributes/onInterval.js +30 -29
- package/dist/datastar/attributes/onSignalPatch.js +49 -40
- package/dist/datastar/attributes/ref.js +10 -9
- package/dist/datastar/attributes/show.js +31 -30
- package/dist/datastar/attributes/signals.js +17 -16
- package/dist/datastar/attributes/style.js +56 -49
- package/dist/datastar/attributes/text.js +28 -25
- package/dist/datastar/engine.js +1079 -933
- package/dist/datastar/index.js +25 -24
- package/dist/datastar/utils.js +203 -155
- package/dist/datastar/watchers/patchElements.js +459 -372
- package/dist/datastar/watchers/patchSignals.js +13 -13
- package/dist/experimental/EncryptedCookies.js +305 -189
- package/dist/experimental/index.js +1 -1
- package/dist/hyper/Hyper.js +22 -17
- package/dist/hyper/HyperHtml.js +138 -123
- package/dist/hyper/HyperNode.js +11 -9
- package/dist/hyper/HyperRoute.js +41 -28
- package/dist/hyper/html.js +27 -27
- package/dist/hyper/index.js +5 -5
- package/dist/hyper/jsx-runtime.js +11 -5
- package/dist/index.js +8 -8
- package/dist/node/NodeFileSystem.js +606 -341
- package/dist/node/NodeUtils.js +21 -18
- package/dist/sql/Sql.js +8 -0
- package/dist/sql/bun/index.js +134 -67
- package/dist/sql/index.js +1 -0
- package/dist/sql/libsql/index.js +156 -0
- package/dist/sql/mssql/docker.js +103 -60
- package/dist/sql/mssql/index.js +182 -101
- package/dist/testing/TestLogger.js +39 -29
- package/dist/testing/index.js +2 -2
- package/dist/testing/utils.js +45 -23
- package/dist/x/cloudflare/CloudflareTunnel.js +61 -28
- package/dist/x/cloudflare/index.js +1 -1
- package/dist/x/tailscale/TailscaleTunnel.js +86 -60
- package/dist/x/tailscale/index.js +1 -1
- package/dist/x/tailwind/TailwindPlugin.js +280 -205
- package/dist/x/tailwind/compile.js +185 -129
- package/dist/x/tailwind/plugin.js +13 -11
- package/package.json +1 -1
- package/src/Development.ts +3 -1
- package/src/Entity.ts +17 -0
- package/src/Fetch.ts +271 -0
- package/src/SqlIntrospect.ts +64 -70
- package/src/Start.ts +24 -22
- package/src/StartApp.ts +11 -0
- package/src/bun/BunServer.ts +89 -16
- package/src/hyper/HyperHtml.ts +0 -1
- package/src/sql/bun/index.ts +1 -1
- package/src/sql/index.ts +1 -0
- package/src/sql/libsql/index.ts +173 -0
- package/src/sql/libsql/libsql.d.ts +39 -0
- package/src/sql/mssql/index.ts +1 -1
- package/src/x/tailscale/TailscaleTunnel.ts +7 -5
- package/dist/BlobStore.d.ts +0 -80
- package/dist/BlobStore.js +0 -19
- package/dist/ChildProcess.d.ts +0 -60
- package/dist/Commander.d.ts +0 -100
- package/dist/ContentNegotiation.d.ts +0 -12
- package/dist/Cookies.d.ts +0 -47
- package/dist/Development.d.ts +0 -39
- package/dist/Effectify.d.ts +0 -209
- package/dist/Entity.d.ts +0 -47
- package/dist/FilePathPattern.d.ts +0 -29
- package/dist/FileRouter.d.ts +0 -56
- package/dist/FileRouterCodegen.d.ts +0 -18
- package/dist/FileRouterPattern.d.ts +0 -9
- package/dist/FileRouterPattern.js +0 -35
- package/dist/FileSystem.d.ts +0 -158
- package/dist/Http.d.ts +0 -37
- package/dist/HttpAppExtra.d.ts +0 -7
- package/dist/HttpAppExtra.js +0 -320
- package/dist/HttpUtils.d.ts +0 -3
- package/dist/HttpUtils.js +0 -11
- package/dist/PathPattern.d.ts +0 -134
- package/dist/PlatformError.d.ts +0 -38
- package/dist/PlatformRuntime.d.ts +0 -27
- package/dist/Route.d.ts +0 -97
- package/dist/RouteBody.d.ts +0 -47
- package/dist/RouteError.d.ts +0 -98
- package/dist/RouteHook.d.ts +0 -12
- package/dist/RouteHttp.d.ts +0 -21
- package/dist/RouteHttpTracer.d.ts +0 -10
- package/dist/RouteMount.d.ts +0 -86
- package/dist/RouteSchema.d.ts +0 -86
- package/dist/RouteSse.d.ts +0 -21
- package/dist/RouteTree.d.ts +0 -57
- package/dist/RouteTrie.d.ts +0 -20
- package/dist/RouterPattern.d.ts +0 -118
- package/dist/RouterPattern.js +0 -269
- package/dist/SchemaExtra.d.ts +0 -7
- package/dist/Socket.d.ts +0 -27
- package/dist/Sql.d.ts +0 -34
- package/dist/Sql.js +0 -5
- package/dist/SqlIntrospect.d.ts +0 -91
- package/dist/Start.d.ts +0 -44
- package/dist/StartApp.d.ts +0 -19
- package/dist/StreamExtra.d.ts +0 -28
- package/dist/System.d.ts +0 -7
- package/dist/TuplePathPattern.d.ts +0 -9
- package/dist/Unique.d.ts +0 -50
- package/dist/Values.d.ts +0 -27
- package/dist/bun/BunBlobStoreDisk.d.ts +0 -6
- package/dist/bun/BunBlobStoreDisk.js +0 -116
- package/dist/bun/BunBlobStoreS3.d.ts +0 -11
- package/dist/bun/BunBlobStoreS3.js +0 -89
- package/dist/bun/BunBlobWatcherDisk.d.ts +0 -6
- package/dist/bun/BunBlobWatcherDisk.js +0 -60
- package/dist/bun/BunBlobWatcherQueue.d.ts +0 -6
- package/dist/bun/BunBlobWatcherQueue.js +0 -17
- package/dist/bun/BunBundle.d.ts +0 -11
- package/dist/bun/BunChildProcessSpawner.d.ts +0 -3
- package/dist/bun/BunHttpServer.d.ts +0 -44
- package/dist/bun/BunHttpServer.js +0 -186
- package/dist/bun/BunHttpServer_web.d.ts +0 -60
- package/dist/bun/BunHttpServer_web.js +0 -252
- package/dist/bun/BunImportTrackerPlugin.d.ts +0 -13
- package/dist/bun/BunPlatformHttpServer.d.ts +0 -10
- package/dist/bun/BunPlatformHttpServer.js +0 -53
- package/dist/bun/BunRoute.d.ts +0 -48
- package/dist/bun/BunRuntime.d.ts +0 -2
- package/dist/bun/BunServer.d.ts +0 -40
- package/dist/bun/BunServerRequest.d.ts +0 -60
- package/dist/bun/BunServerRequest.js +0 -252
- package/dist/bun/BunSql.d.ts +0 -4
- package/dist/bun/BunSql.js +0 -81
- package/dist/bun/BunVirtualFilesPlugin.d.ts +0 -4
- package/dist/bun/_BunEnhancedResolve.d.ts +0 -45
- package/dist/bun/index.d.ts +0 -5
- package/dist/bundler/Bundle.d.ts +0 -61
- package/dist/bundler/BundleFiles.d.ts +0 -13
- package/dist/bundler/BundleHttp.d.ts +0 -45
- package/dist/bundler/BundleHttp.js +0 -176
- package/dist/bundler/BundleRoute.d.ts +0 -27
- package/dist/client/Overlay.d.ts +0 -2
- package/dist/client/ScrollState.d.ts +0 -6
- package/dist/client/index.d.ts +0 -6
- package/dist/console/Console.d.ts +0 -6
- package/dist/console/ConsoleErrors.d.ts +0 -3
- package/dist/console/ConsoleLogger.d.ts +0 -3
- package/dist/console/ConsoleMetrics.d.ts +0 -3
- package/dist/console/ConsoleProcess.d.ts +0 -3
- package/dist/console/ConsoleStore.d.ts +0 -144
- package/dist/console/ConsoleTracer.d.ts +0 -3
- package/dist/console/Simulation.d.ts +0 -2
- package/dist/console/index.d.ts +0 -3
- package/dist/console/routes/errors/route.d.ts +0 -10
- package/dist/console/routes/errors/route.js +0 -47
- package/dist/console/routes/fiberDetail.d.ts +0 -16
- package/dist/console/routes/fiberDetail.js +0 -38
- package/dist/console/routes/fibers/route.d.ts +0 -10
- package/dist/console/routes/fibers/route.js +0 -19
- package/dist/console/routes/git/route.d.ts +0 -11
- package/dist/console/routes/git/route.js +0 -33
- package/dist/console/routes/layout.d.ts +0 -9
- package/dist/console/routes/layout.js +0 -3
- package/dist/console/routes/logs/route.d.ts +0 -10
- package/dist/console/routes/logs/route.js +0 -32
- package/dist/console/routes/metrics/route.d.ts +0 -10
- package/dist/console/routes/metrics/route.js +0 -17
- package/dist/console/routes/route.d.ts +0 -6
- package/dist/console/routes/route.js +0 -5
- package/dist/console/routes/routes/route.d.ts +0 -6
- package/dist/console/routes/routes/route.js +0 -20
- package/dist/console/routes/services/route.d.ts +0 -6
- package/dist/console/routes/services/route.js +0 -12
- package/dist/console/routes/system/route.d.ts +0 -10
- package/dist/console/routes/system/route.js +0 -18
- package/dist/console/routes/traceDetail.d.ts +0 -16
- package/dist/console/routes/traceDetail.js +0 -14
- package/dist/console/routes/traces/route.d.ts +0 -10
- package/dist/console/routes/traces/route.js +0 -39
- package/dist/console/routes/tree.d.ts +0 -153
- package/dist/console/ui/Errors.d.ts +0 -4
- package/dist/console/ui/Errors.js +0 -15
- package/dist/console/ui/Fibers.d.ts +0 -24
- package/dist/console/ui/Fibers.js +0 -121
- package/dist/console/ui/Git.d.ts +0 -20
- package/dist/console/ui/Git.js +0 -95
- package/dist/console/ui/Logs.d.ts +0 -4
- package/dist/console/ui/Logs.js +0 -25
- package/dist/console/ui/Metrics.d.ts +0 -4
- package/dist/console/ui/Metrics.js +0 -26
- package/dist/console/ui/Routes.d.ts +0 -8
- package/dist/console/ui/Routes.js +0 -70
- package/dist/console/ui/Services.d.ts +0 -10
- package/dist/console/ui/Services.js +0 -246
- package/dist/console/ui/Shell.d.ts +0 -10
- package/dist/console/ui/Shell.js +0 -7
- package/dist/console/ui/System.d.ts +0 -4
- package/dist/console/ui/System.js +0 -35
- package/dist/console/ui/Traces.d.ts +0 -12
- package/dist/console/ui/Traces.js +0 -179
- package/dist/datastar/actions/fetch.d.ts +0 -30
- package/dist/datastar/actions/peek.d.ts +0 -1
- package/dist/datastar/actions/setAll.d.ts +0 -1
- package/dist/datastar/actions/toggleAll.d.ts +0 -1
- package/dist/datastar/attributes/attr.d.ts +0 -1
- package/dist/datastar/attributes/bind.d.ts +0 -1
- package/dist/datastar/attributes/class.d.ts +0 -1
- package/dist/datastar/attributes/computed.d.ts +0 -1
- package/dist/datastar/attributes/effect.d.ts +0 -1
- package/dist/datastar/attributes/indicator.d.ts +0 -1
- package/dist/datastar/attributes/init.d.ts +0 -1
- package/dist/datastar/attributes/jsonSignals.d.ts +0 -1
- package/dist/datastar/attributes/on.d.ts +0 -1
- package/dist/datastar/attributes/onIntersect.d.ts +0 -1
- package/dist/datastar/attributes/onInterval.d.ts +0 -1
- package/dist/datastar/attributes/onSignalPatch.d.ts +0 -1
- package/dist/datastar/attributes/ref.d.ts +0 -1
- package/dist/datastar/attributes/show.d.ts +0 -1
- package/dist/datastar/attributes/signals.d.ts +0 -1
- package/dist/datastar/attributes/style.d.ts +0 -1
- package/dist/datastar/attributes/text.d.ts +0 -1
- package/dist/datastar/engine.d.ts +0 -162
- package/dist/datastar/happydom.d.ts +0 -1
- package/dist/datastar/happydom.js +0 -8
- package/dist/datastar/index.d.ts +0 -24
- package/dist/datastar/load.d.ts +0 -24
- package/dist/datastar/load.js +0 -24
- package/dist/datastar/utils.d.ts +0 -51
- package/dist/datastar/watchers/patchElements.d.ts +0 -1
- package/dist/datastar/watchers/patchSignals.d.ts +0 -1
- package/dist/experimental/EncryptedCookies.d.ts +0 -48
- package/dist/experimental/SseHttpResponse.d.ts +0 -7
- package/dist/experimental/SseHttpResponse.js +0 -28
- package/dist/experimental/index.d.ts +0 -1
- package/dist/hyper/Hyper.d.ts +0 -25
- package/dist/hyper/HyperHtml.d.ts +0 -23
- package/dist/hyper/HyperHtml.test.d.ts +0 -1
- package/dist/hyper/HyperHtml.test.js +0 -197
- package/dist/hyper/HyperNode.d.ts +0 -14
- package/dist/hyper/HyperRoute.d.ts +0 -8
- package/dist/hyper/HyperRoute.test.d.ts +0 -1
- package/dist/hyper/HyperRoute.test.js +0 -83
- package/dist/hyper/html.d.ts +0 -11
- package/dist/hyper/index.d.ts +0 -6
- package/dist/hyper/jsx-runtime.d.ts +0 -7
- package/dist/index.d.ts +0 -8
- package/dist/inference_check.d.ts +0 -1
- package/dist/inference_check.js +0 -15
- package/dist/lint/plugin.d.ts +0 -86
- package/dist/lint/plugin.js +0 -341
- package/dist/middlewares/BasicAuthMiddleware.d.ts +0 -8
- package/dist/middlewares/BasicAuthMiddleware.js +0 -22
- package/dist/middlewares/index.d.ts +0 -1
- package/dist/middlewares/index.js +0 -1
- package/dist/node/Effectify.d.ts +0 -209
- package/dist/node/Effectify.js +0 -19
- package/dist/node/FileSystem.d.ts +0 -7
- package/dist/node/FileSystem.js +0 -420
- package/dist/node/NodeFileSystem.d.ts +0 -7
- package/dist/node/NodeUtils.d.ts +0 -2
- package/dist/node/PlatformError.d.ts +0 -46
- package/dist/node/PlatformError.js +0 -43
- package/dist/node/Utils.d.ts +0 -1
- package/dist/node/Utils.js +0 -19
- package/dist/repro_fail.d.ts +0 -1
- package/dist/repro_fail.js +0 -14
- package/dist/sql/bun/index.d.ts +0 -3
- package/dist/sql/mssql/docker.d.ts +0 -2
- package/dist/sql/mssql/index.d.ts +0 -21
- package/dist/testing/TestHttpClient.d.ts +0 -13
- package/dist/testing/TestHttpClient.js +0 -68
- package/dist/testing/TestLogger.d.ts +0 -13
- package/dist/testing/index.d.ts +0 -2
- package/dist/testing/utils.d.ts +0 -9
- package/dist/x/cloudflare/CloudflareTunnel.d.ts +0 -10
- package/dist/x/cloudflare/index.d.ts +0 -1
- package/dist/x/datastar/Datastar.d.ts +0 -6
- package/dist/x/datastar/Datastar.js +0 -47
- package/dist/x/datastar/index.d.ts +0 -1
- package/dist/x/datastar/index.js +0 -1
- package/dist/x/tailscale/TailscaleTunnel.d.ts +0 -15
- package/dist/x/tailscale/index.d.ts +0 -1
- package/dist/x/tailwind/TailwindPlugin.d.ts +0 -23
- package/dist/x/tailwind/compile.d.ts +0 -19
- package/dist/x/tailwind/plugin.d.ts +0 -2
- /package/src/{Sql.ts → sql/Sql.ts} +0 -0
|
@@ -1,154 +1,210 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
1
|
+
import fsPromises from "node:fs/promises"
|
|
2
|
+
import path from "node:path"
|
|
3
|
+
import { pathToFileURL } from "node:url"
|
|
4
|
+
import { compile as _compile, compileAst as _compileAst, Features, Polyfills } from "tailwindcss"
|
|
5
|
+
import * as BunEnhancedResolve from "../../bun/_BunEnhancedResolve"
|
|
6
|
+
|
|
7
|
+
export { Features, Polyfills }
|
|
8
|
+
|
|
9
|
+
function createCompileOptions({
|
|
10
|
+
base,
|
|
11
|
+
from,
|
|
12
|
+
polyfills,
|
|
13
|
+
onDependency,
|
|
14
|
+
|
|
15
|
+
customCssResolver,
|
|
16
|
+
customJsResolver,
|
|
17
|
+
}) {
|
|
18
|
+
return {
|
|
19
|
+
base,
|
|
20
|
+
polyfills,
|
|
21
|
+
from,
|
|
22
|
+
async loadModule(id, base) {
|
|
23
|
+
return loadModule(id, base, onDependency, customJsResolver)
|
|
24
|
+
},
|
|
25
|
+
async loadStylesheet(id, sheetBase) {
|
|
26
|
+
let sheet = await loadStylesheet(id, sheetBase, onDependency, customCssResolver)
|
|
27
|
+
|
|
28
|
+
return sheet
|
|
29
|
+
},
|
|
30
|
+
}
|
|
27
31
|
}
|
|
32
|
+
|
|
28
33
|
async function ensureSourceDetectionRootExists(compiler) {
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
|
|
34
|
+
// Verify if the `source(…)` path exists (until the glob pattern starts)
|
|
35
|
+
if (compiler.root && compiler.root !== "none") {
|
|
36
|
+
let globSymbols = /[*{]/
|
|
37
|
+
let basePath = []
|
|
38
|
+
for (let segment of compiler.root.pattern.split("/")) {
|
|
39
|
+
if (globSymbols.test(segment)) {
|
|
40
|
+
break
|
|
41
|
+
}
|
|
42
|
+
|
|
43
|
+
basePath.push(segment)
|
|
44
|
+
}
|
|
45
|
+
|
|
46
|
+
let exists = await fsPromises
|
|
47
|
+
.stat(path.resolve(compiler.root.base, basePath.join("/")))
|
|
48
|
+
.then((stat) => stat.isDirectory())
|
|
49
|
+
.catch(() => false)
|
|
50
|
+
|
|
51
|
+
if (!exists) {
|
|
52
|
+
throw new Error(
|
|
53
|
+
`The \`source(${compiler.root.pattern})\` does not exist or is not a directory.`,
|
|
54
|
+
)
|
|
46
55
|
}
|
|
56
|
+
}
|
|
47
57
|
}
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
58
|
+
|
|
59
|
+
export async function compileAst(
|
|
60
|
+
ast,
|
|
61
|
+
options,
|
|
62
|
+
) {
|
|
63
|
+
let compiler = await _compileAst(ast, createCompileOptions(options))
|
|
64
|
+
await ensureSourceDetectionRootExists(compiler)
|
|
65
|
+
return compiler
|
|
52
66
|
}
|
|
67
|
+
|
|
53
68
|
export async function compile(css, options) {
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
69
|
+
let compiler = await _compile(css, createCompileOptions(options))
|
|
70
|
+
await ensureSourceDetectionRootExists(compiler)
|
|
71
|
+
return compiler
|
|
57
72
|
}
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
base: path.dirname(resolvedPath),
|
|
68
|
-
module: module.default ?? module,
|
|
69
|
-
};
|
|
70
|
-
}
|
|
71
|
-
let resolvedPath = await resolveJsId(id, base, customJsResolver);
|
|
73
|
+
|
|
74
|
+
export async function loadModule(
|
|
75
|
+
id,
|
|
76
|
+
base,
|
|
77
|
+
_onDependency,
|
|
78
|
+
customJsResolver,
|
|
79
|
+
) {
|
|
80
|
+
if (id[0] !== ".") {
|
|
81
|
+
let resolvedPath = await resolveJsId(id, base, customJsResolver)
|
|
72
82
|
if (!resolvedPath) {
|
|
73
|
-
|
|
83
|
+
throw new Error(`Could not resolve '${id}' from '${base}'`)
|
|
74
84
|
}
|
|
75
|
-
|
|
85
|
+
|
|
86
|
+
let module = await importModule(pathToFileURL(resolvedPath).href)
|
|
76
87
|
return {
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
}
|
|
88
|
+
path: resolvedPath,
|
|
89
|
+
base: path.dirname(resolvedPath),
|
|
90
|
+
module: module.default ?? module,
|
|
91
|
+
}
|
|
92
|
+
}
|
|
93
|
+
|
|
94
|
+
let resolvedPath = await resolveJsId(id, base, customJsResolver)
|
|
95
|
+
if (!resolvedPath) {
|
|
96
|
+
throw new Error(`Could not resolve '${id}' from '${base}'`)
|
|
97
|
+
}
|
|
98
|
+
|
|
99
|
+
let module = await importModule(pathToFileURL(resolvedPath).href + "?id=" + Date.now())
|
|
100
|
+
|
|
101
|
+
return {
|
|
102
|
+
path: resolvedPath,
|
|
103
|
+
base: path.dirname(resolvedPath),
|
|
104
|
+
module: module.default ?? module,
|
|
105
|
+
}
|
|
81
106
|
}
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
107
|
+
|
|
108
|
+
async function loadStylesheet(
|
|
109
|
+
id,
|
|
110
|
+
base,
|
|
111
|
+
onDependency,
|
|
112
|
+
cssResolver,
|
|
113
|
+
) {
|
|
114
|
+
let resolvedPath = await resolveCssId(id, base, cssResolver)
|
|
115
|
+
if (!resolvedPath) throw new Error(`Could not resolve '${id}' from '${base}'`)
|
|
116
|
+
|
|
117
|
+
onDependency(resolvedPath)
|
|
118
|
+
|
|
119
|
+
let file = await fsPromises.readFile(resolvedPath, "utf-8")
|
|
120
|
+
return {
|
|
121
|
+
path: resolvedPath,
|
|
122
|
+
base: path.dirname(resolvedPath),
|
|
123
|
+
content: file,
|
|
124
|
+
}
|
|
93
125
|
}
|
|
126
|
+
|
|
94
127
|
async function importModule(path) {
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
}
|
|
128
|
+
if (typeof globalThis.__tw_load === "function") {
|
|
129
|
+
let module = await globalThis.__tw_load(path)
|
|
130
|
+
if (module) {
|
|
131
|
+
return module
|
|
100
132
|
}
|
|
101
|
-
|
|
133
|
+
}
|
|
134
|
+
|
|
135
|
+
return await import(path)
|
|
102
136
|
}
|
|
137
|
+
|
|
103
138
|
const cssResolver = BunEnhancedResolve.ResolverFactory.createResolver({
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
})
|
|
108
|
-
async function resolveCssId(
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
139
|
+
extensions: [".css"],
|
|
140
|
+
mainFields: ["style"],
|
|
141
|
+
conditionNames: ["style"],
|
|
142
|
+
})
|
|
143
|
+
async function resolveCssId(
|
|
144
|
+
id,
|
|
145
|
+
base,
|
|
146
|
+
customCssResolver,
|
|
147
|
+
) {
|
|
148
|
+
if (typeof globalThis.__tw_resolve === "function") {
|
|
149
|
+
let resolved = globalThis.__tw_resolve(id, base)
|
|
150
|
+
if (resolved) {
|
|
151
|
+
return Promise.resolve(resolved)
|
|
114
152
|
}
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
153
|
+
}
|
|
154
|
+
|
|
155
|
+
if (customCssResolver) {
|
|
156
|
+
let customResolution = await customCssResolver(id, base)
|
|
157
|
+
if (customResolution) {
|
|
158
|
+
return customResolution
|
|
120
159
|
}
|
|
121
|
-
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
return runResolver(cssResolver, id, base)
|
|
122
163
|
}
|
|
164
|
+
|
|
123
165
|
const esmResolver = BunEnhancedResolve.ResolverFactory.createResolver({
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
})
|
|
166
|
+
extensions: [".js", ".json", ".node", ".ts"],
|
|
167
|
+
conditionNames: ["node", "import"],
|
|
168
|
+
mainFields: ["module", "main"],
|
|
169
|
+
})
|
|
170
|
+
|
|
128
171
|
const cjsResolver = BunEnhancedResolve.ResolverFactory.createResolver({
|
|
129
|
-
|
|
130
|
-
|
|
131
|
-
|
|
132
|
-
})
|
|
133
|
-
|
|
134
|
-
|
|
135
|
-
|
|
136
|
-
|
|
137
|
-
|
|
138
|
-
|
|
172
|
+
extensions: [".js", ".json", ".node", ".ts"],
|
|
173
|
+
conditionNames: ["node", "require"],
|
|
174
|
+
mainFields: ["main"],
|
|
175
|
+
})
|
|
176
|
+
|
|
177
|
+
async function resolveJsId(
|
|
178
|
+
id,
|
|
179
|
+
base,
|
|
180
|
+
customJsResolver,
|
|
181
|
+
) {
|
|
182
|
+
if (typeof globalThis.__tw_resolve === "function") {
|
|
183
|
+
let resolved = globalThis.__tw_resolve(id, base)
|
|
184
|
+
if (resolved) {
|
|
185
|
+
return Promise.resolve(resolved)
|
|
139
186
|
}
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
|
|
143
|
-
|
|
144
|
-
|
|
187
|
+
}
|
|
188
|
+
|
|
189
|
+
if (customJsResolver) {
|
|
190
|
+
let customResolution = await customJsResolver(id, base)
|
|
191
|
+
if (customResolution) {
|
|
192
|
+
return customResolution
|
|
145
193
|
}
|
|
146
|
-
|
|
194
|
+
}
|
|
195
|
+
|
|
196
|
+
return runResolver(esmResolver, id, base).catch(() => runResolver(cjsResolver, id, base))
|
|
147
197
|
}
|
|
148
|
-
|
|
149
|
-
|
|
150
|
-
|
|
151
|
-
|
|
152
|
-
|
|
153
|
-
|
|
198
|
+
|
|
199
|
+
function runResolver(
|
|
200
|
+
resolver,
|
|
201
|
+
id,
|
|
202
|
+
base,
|
|
203
|
+
) {
|
|
204
|
+
return new Promise((resolve, reject) =>
|
|
205
|
+
resolver.resolve({}, base, id, {}, (err, result) => {
|
|
206
|
+
if (err) return reject(err)
|
|
207
|
+
resolve(result)
|
|
208
|
+
}),
|
|
209
|
+
)
|
|
154
210
|
}
|
|
@@ -1,15 +1,17 @@
|
|
|
1
|
-
import * as NPath from "node:path"
|
|
2
|
-
import * as NodeUtils from "../../node/NodeUtils.js"
|
|
3
|
-
import * as TailwindPlugin from "./TailwindPlugin.js"
|
|
1
|
+
import * as NPath from "node:path"
|
|
2
|
+
import * as NodeUtils from "../../node/NodeUtils.js"
|
|
3
|
+
import * as TailwindPlugin from "./TailwindPlugin.js"
|
|
4
|
+
|
|
4
5
|
// Append `?dir=` to module identifier to pass custom directory to scan
|
|
5
|
-
const dirParam = URL.parse(import.meta.url)?.searchParams.get("dir")
|
|
6
|
-
const packageJson = await NodeUtils.findClosestPackageJson(process.cwd())
|
|
6
|
+
const dirParam = URL.parse(import.meta.url)?.searchParams.get("dir")
|
|
7
|
+
const packageJson = await NodeUtils.findClosestPackageJson(process.cwd())
|
|
7
8
|
const scanPath = dirParam
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
9
|
+
? NPath.resolve(process.cwd(), dirParam)
|
|
10
|
+
: packageJson
|
|
11
|
+
? NPath.dirname(packageJson)
|
|
12
|
+
: process.cwd()
|
|
13
|
+
|
|
12
14
|
// Export as default to be used in bunfig.toml
|
|
13
15
|
export default TailwindPlugin.make({
|
|
14
|
-
|
|
15
|
-
})
|
|
16
|
+
scanPath,
|
|
17
|
+
})
|
package/package.json
CHANGED
package/src/Development.ts
CHANGED
|
@@ -104,10 +104,12 @@ export const layerWatch = (opts?: {
|
|
|
104
104
|
filter?: (event: FileSystem.WatchEvent) => boolean
|
|
105
105
|
}) => Layer.scoped(Development, watch(opts))
|
|
106
106
|
|
|
107
|
+
export const option = Effect.serviceOption(Development)
|
|
108
|
+
|
|
107
109
|
export const stream = (): Stream.Stream<DevelopmentEvent> =>
|
|
108
110
|
Stream.unwrap(
|
|
109
111
|
Function.pipe(
|
|
110
|
-
|
|
112
|
+
option,
|
|
111
113
|
Effect.map(
|
|
112
114
|
Option.match({
|
|
113
115
|
onNone: () => Stream.empty,
|
package/src/Entity.ts
CHANGED
|
@@ -325,6 +325,23 @@ export function length(self: Entity): number | undefined {
|
|
|
325
325
|
return undefined
|
|
326
326
|
}
|
|
327
327
|
|
|
328
|
+
export function fromResponse(
|
|
329
|
+
response: Response,
|
|
330
|
+
request?: Request,
|
|
331
|
+
): Entity<Effect.Effect<Uint8Array, Error, never>, Error> {
|
|
332
|
+
return make(
|
|
333
|
+
Effect.tryPromise({
|
|
334
|
+
try: () => response.arrayBuffer().then((buf) => new Uint8Array(buf)),
|
|
335
|
+
catch: (e) => (e instanceof Error ? e : new Error(String(e))),
|
|
336
|
+
}),
|
|
337
|
+
{
|
|
338
|
+
headers: Object.fromEntries(response.headers.entries()),
|
|
339
|
+
status: response.status,
|
|
340
|
+
url: response.url || request?.url,
|
|
341
|
+
},
|
|
342
|
+
)
|
|
343
|
+
}
|
|
344
|
+
|
|
328
345
|
function mismatch(expected: Schema.Schema.Any, actual: unknown): ParseResult.ParseError {
|
|
329
346
|
return new ParseResult.ParseError({
|
|
330
347
|
issue: new ParseResult.Type(expected.ast, actual),
|