rune-lab 0.3.0 → 0.4.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 +1 -1
- package/dist/core/design-tokens/props.d.ts +52 -0
- package/dist/core/design-tokens/props.d.ts.map +1 -0
- package/dist/core/design-tokens/props.js +34 -0
- package/dist/core/exchange-rate/strategies.d.ts +52 -0
- package/dist/core/exchange-rate/strategies.d.ts.map +1 -0
- package/dist/core/exchange-rate/strategies.js +72 -0
- package/dist/core/index.d.ts +8 -3
- package/dist/core/index.d.ts.map +1 -1
- package/dist/core/index.js +8 -3
- package/dist/core/internal/message-resolver.d.ts +1 -1
- package/dist/core/internal/message-resolver.d.ts.map +1 -1
- package/dist/core/layout/types.d.ts +60 -0
- package/dist/core/layout/types.d.ts.map +1 -0
- package/dist/core/layout/types.js +4 -0
- package/dist/core/money/index.d.ts +1 -1
- package/dist/core/money/index.d.ts.map +1 -1
- package/dist/core/money/index.js +1 -1
- package/dist/core/money/money-primitive.d.ts +101 -0
- package/dist/core/money/money-primitive.d.ts.map +1 -0
- package/dist/core/money/money-primitive.js +161 -0
- package/dist/core/money/money.d.ts +74 -2
- package/dist/core/money/money.d.ts.map +1 -1
- package/dist/core/money/money.js +120 -2
- package/dist/core/shortcuts/types.d.ts +60 -0
- package/dist/core/shortcuts/types.d.ts.map +1 -0
- package/dist/core/shortcuts/types.js +4 -0
- package/dist/index.d.ts +4 -3
- package/dist/index.js +6 -4
- package/dist/state/api.svelte.js +2 -2
- package/dist/state/app.svelte.js +1 -1
- package/dist/state/auth/index.d.ts +2 -2
- package/dist/state/auth/index.js +1 -1
- package/dist/state/auth/session.svelte.d.ts +1 -1
- package/dist/state/auth/session.svelte.js +7 -5
- package/dist/state/auth/types.d.ts +1 -1
- package/dist/state/cart.svelte.d.ts +1 -1
- package/dist/state/cart.svelte.js +1 -1
- package/dist/state/commands.svelte.d.ts +7 -7
- package/dist/state/commands.svelte.js +1 -1
- package/dist/state/composables/useMoney.d.ts +19 -3
- package/dist/state/composables/useMoney.js +70 -6
- package/dist/state/composables/useMoneyFilter.d.ts +20 -0
- package/dist/state/composables/useMoneyFilter.js +81 -0
- package/dist/state/composables/usePersistence.d.ts +1 -1
- package/dist/state/composables/usePersistence.js +1 -1
- package/dist/state/composables/useRuneLab.d.ts +1 -1
- package/dist/state/composables/useRuneLab.js +2 -2
- package/dist/state/composables/useShortcuts.d.ts +33 -0
- package/dist/state/composables/useShortcuts.js +75 -0
- package/dist/state/context.d.ts +1 -0
- package/dist/state/context.js +1 -0
- package/dist/state/createConfigStore.svelte.d.ts +4 -31
- package/dist/state/createConfigStore.svelte.js +62 -51
- package/dist/state/currency.svelte.d.ts +13 -9
- package/dist/state/currency.svelte.js +26 -10
- package/dist/state/currency.test.d.ts +1 -0
- package/dist/state/currency.test.js +35 -0
- package/dist/state/exchange-rate.svelte.d.ts +43 -0
- package/dist/state/exchange-rate.svelte.js +145 -0
- package/dist/state/exchange-rate.test.d.ts +1 -0
- package/dist/state/exchange-rate.test.js +75 -0
- package/dist/state/index.d.ts +26 -19
- package/dist/state/index.js +25 -18
- package/dist/state/language.svelte.d.ts +3 -10
- package/dist/state/language.svelte.js +4 -5
- package/dist/state/layout.svelte.d.ts +1 -1
- package/dist/state/layout.svelte.js +4 -4
- package/dist/state/persistence/drivers.d.ts +1 -1
- package/dist/state/persistence/drivers.js +9 -7
- package/dist/state/persistence/drivers.test.d.ts +1 -0
- package/dist/state/persistence/drivers.test.js +79 -0
- package/dist/state/persistence/provider.d.ts +23 -0
- package/dist/state/persistence/provider.js +43 -0
- package/dist/state/persistence/provider.test.d.ts +1 -0
- package/dist/state/persistence/provider.test.js +51 -0
- package/dist/state/registry/index.d.ts +44 -0
- package/dist/state/registry/index.js +58 -0
- package/dist/state/registry/registry.test.d.ts +1 -0
- package/dist/state/registry/registry.test.js +112 -0
- package/dist/state/registry/types.d.ts +20 -0
- package/dist/state/registry/types.js +3 -0
- package/dist/state/shortcuts.svelte.js +4 -4
- package/dist/state/theme.svelte.d.ts +3 -10
- package/dist/state/theme.svelte.js +8 -8
- package/dist/state/toast-bridge.d.ts +1 -1
- package/dist/state/toast.svelte.js +1 -1
- package/dist/ui/components/ApiMonitor.svelte +2 -2
- package/dist/ui/components/Icon.svelte +1 -1
- package/dist/ui/components/RuneProvider.svelte +28 -8
- package/dist/ui/components/RuneProvider.svelte.d.ts +12 -5
- package/dist/ui/components/Toaster.svelte +1 -1
- package/dist/ui/components/money/MoneyDisplay.svelte +91 -18
- package/dist/ui/components/money/MoneyDisplay.svelte.d.ts +15 -3
- package/dist/ui/components/money/MoneyDisplay.svelte.test.d.ts +1 -1
- package/dist/ui/components/money/MoneyDisplay.svelte.test.js +45 -2
- package/dist/ui/components/money/MoneyInput.svelte +123 -42
- package/dist/ui/components/money/MoneyInput.svelte.d.ts +14 -5
- package/dist/ui/features/command-palette/CommandPalette.svelte +3 -3
- package/dist/ui/features/config/APP_CONFIGURATIONS.d.ts +29 -0
- package/dist/ui/features/config/APP_CONFIGURATIONS.js +38 -0
- package/dist/ui/features/config/CurrencySelector.svelte +10 -36
- package/dist/ui/features/config/LanguageSelector.svelte +10 -33
- package/dist/ui/features/config/ResourceSelector.svelte +92 -0
- package/dist/ui/features/config/ResourceSelector.svelte.d.ts +25 -0
- package/dist/ui/features/config/ThemeSelector.svelte +11 -34
- package/dist/ui/features/shortcuts/ShortcutBinder.svelte +17 -0
- package/dist/ui/features/shortcuts/ShortcutBinder.svelte.d.ts +7 -0
- package/dist/ui/features/shortcuts/ShortcutPalette.svelte +3 -3
- package/dist/ui/index.d.ts +5 -1
- package/dist/ui/index.js +8 -3
- package/dist/ui/layout/ConnectedNavigationPanel.svelte +7 -8
- package/dist/ui/layout/ConnectedNavigationPanel.svelte.d.ts +1 -1
- package/dist/ui/layout/ConnectedWorkspaceStrip.svelte +5 -3
- package/dist/ui/layout/ConnectedWorkspaceStrip.svelte.d.ts +1 -1
- package/dist/ui/layout/NavigationPanel.svelte +1 -1
- package/dist/ui/layout/NavigationPanel.svelte.d.ts +1 -1
- package/dist/ui/layout/WorkspaceLayout.svelte +9 -1
- package/dist/ui/layout/WorkspaceLayout.svelte.d.ts +7 -0
- package/dist/ui/layout/WorkspaceStrip.svelte +1 -1
- package/dist/ui/layout/WorkspaceStrip.svelte.d.ts +1 -1
- package/dist/ui/layout/connection-factory.d.ts +50 -0
- package/dist/ui/layout/connection-factory.js +58 -0
- package/dist/ui/layout/index.d.ts +2 -2
- package/dist/ui/layout/index.js +1 -1
- package/dist/ui/paraglide/README.md +53 -0
- package/dist/ui/paraglide/runtime.d.ts +105 -124
- package/dist/ui/paraglide/runtime.js +162 -127
- package/dist/ui/paraglide/server.d.ts +6 -17
- package/dist/ui/paraglide/server.js +11 -20
- package/dist/ui/primitives/DatePicker.svelte +1 -1
- package/package.json +8 -8
- package/dist/state/daisyui.d.ts +0 -4
|
@@ -1,6 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Server middleware that handles locale-based routing and request processing.
|
|
3
3
|
*
|
|
4
|
+
* Configure `disableAsyncLocalStorage` when generating Paraglide with
|
|
5
|
+
* `paraglideVitePlugin()` or `compile()`, not when calling
|
|
6
|
+
* `paraglideMiddleware()`. Keep AsyncLocalStorage enabled by default and
|
|
7
|
+
* only disable it for runtimes that lack `AsyncLocalStorage` support and
|
|
8
|
+
* guarantee request isolation.
|
|
9
|
+
*
|
|
4
10
|
* This middleware performs several key functions:
|
|
5
11
|
*
|
|
6
12
|
* 1. Determines the locale for the incoming request using configured strategies
|
|
@@ -50,23 +56,6 @@
|
|
|
50
56
|
*
|
|
51
57
|
* @example
|
|
52
58
|
* ```typescript
|
|
53
|
-
* // Usage in serverless environments like Cloudflare Workers
|
|
54
|
-
* // ⚠️ WARNING: This should ONLY be used in serverless environments like Cloudflare Workers.
|
|
55
|
-
* // Disabling AsyncLocalStorage in traditional server environments risks cross-request pollution where state from
|
|
56
|
-
* // one request could leak into another concurrent request.
|
|
57
|
-
* export default {
|
|
58
|
-
* fetch: async (request) => {
|
|
59
|
-
* return paraglideMiddleware(
|
|
60
|
-
* request,
|
|
61
|
-
* ({ request, locale }) => handleRequest(request, locale),
|
|
62
|
-
* { disableAsyncLocalStorage: true }
|
|
63
|
-
* );
|
|
64
|
-
* }
|
|
65
|
-
* };
|
|
66
|
-
* ```
|
|
67
|
-
*
|
|
68
|
-
* @example
|
|
69
|
-
* ```typescript
|
|
70
59
|
* // Usage with frameworks that handle URL localization/delocalization themselves
|
|
71
60
|
* //
|
|
72
61
|
* // Some frameworks like TanStack Router handle URL localization and delocalization
|
|
@@ -5,6 +5,12 @@ import * as runtime from "./runtime.js";
|
|
|
5
5
|
/**
|
|
6
6
|
* Server middleware that handles locale-based routing and request processing.
|
|
7
7
|
*
|
|
8
|
+
* Configure `disableAsyncLocalStorage` when generating Paraglide with
|
|
9
|
+
* `paraglideVitePlugin()` or `compile()`, not when calling
|
|
10
|
+
* `paraglideMiddleware()`. Keep AsyncLocalStorage enabled by default and
|
|
11
|
+
* only disable it for runtimes that lack `AsyncLocalStorage` support and
|
|
12
|
+
* guarantee request isolation.
|
|
13
|
+
*
|
|
8
14
|
* This middleware performs several key functions:
|
|
9
15
|
*
|
|
10
16
|
* 1. Determines the locale for the incoming request using configured strategies
|
|
@@ -54,23 +60,6 @@ import * as runtime from "./runtime.js";
|
|
|
54
60
|
*
|
|
55
61
|
* @example
|
|
56
62
|
* ```typescript
|
|
57
|
-
* // Usage in serverless environments like Cloudflare Workers
|
|
58
|
-
* // ⚠️ WARNING: This should ONLY be used in serverless environments like Cloudflare Workers.
|
|
59
|
-
* // Disabling AsyncLocalStorage in traditional server environments risks cross-request pollution where state from
|
|
60
|
-
* // one request could leak into another concurrent request.
|
|
61
|
-
* export default {
|
|
62
|
-
* fetch: async (request) => {
|
|
63
|
-
* return paraglideMiddleware(
|
|
64
|
-
* request,
|
|
65
|
-
* ({ request, locale }) => handleRequest(request, locale),
|
|
66
|
-
* { disableAsyncLocalStorage: true }
|
|
67
|
-
* );
|
|
68
|
-
* }
|
|
69
|
-
* };
|
|
70
|
-
* ```
|
|
71
|
-
*
|
|
72
|
-
* @example
|
|
73
|
-
* ```typescript
|
|
74
63
|
* // Usage with frameworks that handle URL localization/delocalization themselves
|
|
75
64
|
* //
|
|
76
65
|
* // Some frameworks like TanStack Router handle URL localization and delocalization
|
|
@@ -168,7 +157,9 @@ export async function paraglideMiddleware(request, resolve, callbacks) {
|
|
|
168
157
|
/** @type {[string, import("./runtime.js").Locale]} */ (messageCall.split(":"));
|
|
169
158
|
messages.push(`${id}: ${compiledBundles[id]?.[locale]}`);
|
|
170
159
|
}
|
|
171
|
-
|
|
160
|
+
// Prevent translated content from terminating the inline script tag.
|
|
161
|
+
const escapedMessages = messages.join(",").replace(/<\/(script)/gi, "<\\/$1");
|
|
162
|
+
const script = `<script>globalThis.__paraglide = globalThis.__paraglide ?? {}; globalThis.__paraglide.ssr = { ${escapedMessages} }</script>`;
|
|
172
163
|
// Insert the script before the closing head tag
|
|
173
164
|
const newBody = body.replace("</head>", `${script}</head>`);
|
|
174
165
|
// Create a new response with the modified body
|
|
@@ -213,8 +204,8 @@ function cloneRequestWithFallback(request) {
|
|
|
213
204
|
* native AsyncLocalStorage is not available or disabled.
|
|
214
205
|
*
|
|
215
206
|
* This mock implementation mimics the behavior of the native AsyncLocalStorage
|
|
216
|
-
* but doesn't require the async_hooks module. It's
|
|
217
|
-
*
|
|
207
|
+
* but doesn't require the async_hooks module. It's used as a fallback when
|
|
208
|
+
* the runtime does not expose AsyncLocalStorage or when it has been disabled.
|
|
218
209
|
*
|
|
219
210
|
* @returns {import("./runtime.js").ParaglideAsyncLocalStorage}
|
|
220
211
|
*/
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "rune-lab",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.4.0",
|
|
4
4
|
"description": "Modern toolkit for Svelte 5 Runes applications.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "MIT",
|
|
@@ -13,7 +13,7 @@
|
|
|
13
13
|
"dev:ui": "bun run --cwd src/sdk/ui dev",
|
|
14
14
|
"build:ui": "bun run --cwd src/sdk/ui build",
|
|
15
15
|
"compile:i18n": "paraglide-js compile --project ./src/sdk/ui/src/i18n/project.inlang --outdir ./src/sdk/ui/src/lib/paraglide",
|
|
16
|
-
"build:index": "bun run scripts/build-index.
|
|
16
|
+
"build:index": "bun run scripts/build-index.ts"
|
|
17
17
|
},
|
|
18
18
|
"workspaces": [
|
|
19
19
|
"src/sdk/*"
|
|
@@ -43,11 +43,11 @@
|
|
|
43
43
|
"./package.json": "./package.json"
|
|
44
44
|
},
|
|
45
45
|
"peerDependencies": {
|
|
46
|
-
"svelte": "^5.
|
|
46
|
+
"svelte": "^5.55.0",
|
|
47
47
|
"tailwindcss": "^4.2.2",
|
|
48
48
|
"daisyui": "^5.5.19",
|
|
49
49
|
"dinero.js": "npm:dinero.js@^2.0.2",
|
|
50
|
-
"better-auth": "^1.5.
|
|
50
|
+
"better-auth": "^1.5.6"
|
|
51
51
|
},
|
|
52
52
|
"peerDependenciesMeta": {
|
|
53
53
|
"better-auth": {
|
|
@@ -75,8 +75,8 @@
|
|
|
75
75
|
"jsdom": "^29.0.1",
|
|
76
76
|
"publint": "^0.3.18",
|
|
77
77
|
"svelte-check": "npm:svelte-check@^4.4.5",
|
|
78
|
-
"typescript": "npm:typescript@^
|
|
79
|
-
"vite": "npm:vite@^8.0.
|
|
80
|
-
"vitest": "^4.1.
|
|
78
|
+
"typescript": "npm:typescript@^6.0.2",
|
|
79
|
+
"vite": "npm:vite@^8.0.2",
|
|
80
|
+
"vitest": "^4.1.1"
|
|
81
81
|
}
|
|
82
|
-
}
|
|
82
|
+
}
|
package/dist/state/daisyui.d.ts
DELETED