create-hollware 0.9.0 → 0.10.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/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "create-hollware",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.10.0",
|
|
4
4
|
"description": "Create a new Hollware project.",
|
|
5
5
|
"homepage": "https://hollware.com",
|
|
6
6
|
"bugs": {
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"@types/node": "24.19.2",
|
|
36
36
|
"publint": "0.3.25",
|
|
37
37
|
"typescript": "7.0.2",
|
|
38
|
-
"vite-plus": "1.
|
|
38
|
+
"vite-plus": "1.2.0"
|
|
39
39
|
},
|
|
40
40
|
"engines": {
|
|
41
41
|
"node": ">=24.11.0"
|
package/template/package.json
CHANGED
|
@@ -15,18 +15,18 @@
|
|
|
15
15
|
"dependencies": {
|
|
16
16
|
"@hollware/core": "HOLLWARE_VERSION",
|
|
17
17
|
"@hollware/server": "HOLLWARE_VERSION",
|
|
18
|
-
"zod": "4.6.
|
|
18
|
+
"zod": "4.6.7"
|
|
19
19
|
},
|
|
20
20
|
"devDependencies": {
|
|
21
|
-
"@cloudflare/vite-plugin": "1.
|
|
22
|
-
"@cloudflare/vitest-plugin": "1.4.
|
|
21
|
+
"@cloudflare/vite-plugin": "1.64.0",
|
|
22
|
+
"@cloudflare/vitest-plugin": "1.4.3",
|
|
23
23
|
"@hollware/admin": "HOLLWARE_VERSION",
|
|
24
24
|
"hollware": "HOLLWARE_VERSION",
|
|
25
25
|
"typescript": "7.0.2",
|
|
26
|
-
"vite": "npm:@voidzero-dev/vite-plus-core@1.
|
|
27
|
-
"vite-plus": "1.
|
|
28
|
-
"vitest": "5.0.
|
|
29
|
-
"wrangler": "4.
|
|
26
|
+
"vite": "npm:@voidzero-dev/vite-plus-core@1.2.0",
|
|
27
|
+
"vite-plus": "1.2.0",
|
|
28
|
+
"vitest": "5.0.4",
|
|
29
|
+
"wrangler": "4.151.0"
|
|
30
30
|
},
|
|
31
31
|
"overrides": {
|
|
32
32
|
"vite": "$vite"
|
|
@@ -31,8 +31,8 @@ export default defineConfig({
|
|
|
31
31
|
name: 'starter:workerd',
|
|
32
32
|
include: ['test/**/*.workerd.test.ts'],
|
|
33
33
|
setupFiles: ['test/apply-migrations.ts'],
|
|
34
|
-
//
|
|
35
|
-
//
|
|
34
|
+
// Off: @cloudflare/vitest-plugin reads Vitest's module cache from workerd since 1.4.3
|
|
35
|
+
// (cloudflare/workers-sdk#15618), but it saved no time here (server:workerd, 13 s either way).
|
|
36
36
|
fsModuleCache: false,
|
|
37
37
|
},
|
|
38
38
|
})
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/* eslint-disable */
|
|
2
2
|
// Generated by Wrangler by running `wrangler types` (hash: 9df54bbb9b67e268beea963d16f621d4)
|
|
3
|
-
// Runtime types generated with workerd@1.
|
|
3
|
+
// Runtime types generated with workerd@1.20261012.1 2026-10-06 global_fetch_strictly_public,no_nodejs_compat,no_nodejs_compat_v2
|
|
4
4
|
interface __BaseEnv_Env {
|
|
5
5
|
OAUTH_KV: KVNamespace;
|
|
6
6
|
DB: D1Database;
|
|
@@ -3323,13 +3323,7 @@ declare abstract class SqlStorageStatement {
|
|
|
3323
3323
|
}
|
|
3324
3324
|
type SqlStorageValue = ArrayBuffer | string | number | null;
|
|
3325
3325
|
declare abstract class SqlStorageCursor<T extends Record<string, SqlStorageValue>> {
|
|
3326
|
-
next():
|
|
3327
|
-
done?: false;
|
|
3328
|
-
value: T;
|
|
3329
|
-
} | {
|
|
3330
|
-
done: true;
|
|
3331
|
-
value?: never;
|
|
3332
|
-
};
|
|
3326
|
+
next(): IteratorResult<T, undefined>;
|
|
3333
3327
|
toArray(): T[];
|
|
3334
3328
|
one(): T;
|
|
3335
3329
|
raw<U extends SqlStorageValue[]>(): IterableIterator<U>;
|
|
@@ -3655,6 +3649,7 @@ interface Tracing {
|
|
|
3655
3649
|
}
|
|
3656
3650
|
declare abstract class Span {
|
|
3657
3651
|
get isTraced(): boolean;
|
|
3652
|
+
spanContext(): TracingSpanContext;
|
|
3658
3653
|
setAttribute(key: string, value: boolean | number | string): this;
|
|
3659
3654
|
setAttributes(attributes: Record<string, boolean | number | string | undefined>): this;
|
|
3660
3655
|
recordException(exception: string | {
|
|
@@ -3682,6 +3677,11 @@ interface TracingSpanStatus {
|
|
|
3682
3677
|
code: TracingSpanStatusCode;
|
|
3683
3678
|
message?: string;
|
|
3684
3679
|
}
|
|
3680
|
+
interface TracingSpanContext {
|
|
3681
|
+
traceId: string;
|
|
3682
|
+
spanId: string;
|
|
3683
|
+
traceFlags: number;
|
|
3684
|
+
}
|
|
3685
3685
|
/**
|
|
3686
3686
|
* Represents the identity of a user authenticated via Cloudflare Access.
|
|
3687
3687
|
* This matches the result of calling /cdn-cgi/access/get-identity.
|
|
@@ -13238,20 +13238,30 @@ interface Disposable {
|
|
|
13238
13238
|
}
|
|
13239
13239
|
declare module 'cloudflare:durable-objects' {
|
|
13240
13240
|
/**
|
|
13241
|
-
* Marks
|
|
13242
|
-
* to
|
|
13241
|
+
* Marks Durable Object methods as safe to run more than once. The runtime may then retry calls
|
|
13242
|
+
* to them after a disconnect that might have happened after the method started. It does not
|
|
13243
13243
|
* enable retries or change how many are made.
|
|
13244
13244
|
*
|
|
13245
|
+
* Mark methods on the class prototype, for example from a static block:
|
|
13246
|
+
*
|
|
13247
|
+
* ```ts
|
|
13248
|
+
* class Counter extends DurableObject {
|
|
13249
|
+
* static {
|
|
13250
|
+
* retryable(this.prototype.reset);
|
|
13251
|
+
* }
|
|
13252
|
+
* async reset() {}
|
|
13253
|
+
* }
|
|
13254
|
+
* ```
|
|
13255
|
+
*
|
|
13256
|
+
* The mark is on the function itself. A subclass inherits it, but an override, a bound copy, or
|
|
13257
|
+
* a wrapper is not marked unless it is also passed to `retryable()`.
|
|
13258
|
+
*
|
|
13245
13259
|
* Each attempt creates its own return value, so if the method returns an `RpcTarget`, its
|
|
13246
13260
|
* `[Symbol.dispose]()` may run once per attempt.
|
|
13247
13261
|
*
|
|
13248
|
-
*
|
|
13249
|
-
* outermost (first in source order) so it marks the method that is finally installed.
|
|
13250
|
-
* Otherwise `@retryable` has no effect, and constructing the object logs a warning.
|
|
13251
|
-
* Requires standard (not `experimentalDecorators`) decorators and a bundler that transforms
|
|
13252
|
-
* them, such as Wrangler.
|
|
13262
|
+
* @throws TypeError if an argument is not a function.
|
|
13253
13263
|
*/
|
|
13254
|
-
export function retryable
|
|
13264
|
+
export function retryable(...methods: ((...args: never[]) => unknown)[]): void;
|
|
13255
13265
|
}
|
|
13256
13266
|
/**
|
|
13257
13267
|
* The returned data after sending an email
|
|
@@ -13393,7 +13403,10 @@ declare module "cloudflare:email" {
|
|
|
13393
13403
|
* Evaluation context for targeting rules.
|
|
13394
13404
|
* Keys are attribute names (e.g. "userId", "country"), values are the attribute values.
|
|
13395
13405
|
*/
|
|
13396
|
-
type
|
|
13406
|
+
type FlagshipEvaluationContextValue = string | number | boolean | null | FlagshipEvaluationContextValue[] | {
|
|
13407
|
+
[key: string]: FlagshipEvaluationContextValue;
|
|
13408
|
+
};
|
|
13409
|
+
type FlagshipEvaluationContext = Record<string, FlagshipEvaluationContextValue>;
|
|
13397
13410
|
interface FlagshipEvaluationDetails<T> {
|
|
13398
13411
|
flagKey: string;
|
|
13399
13412
|
value: T;
|
|
@@ -13402,6 +13415,7 @@ interface FlagshipEvaluationDetails<T> {
|
|
|
13402
13415
|
errorCode?: string | undefined;
|
|
13403
13416
|
errorMessage?: string | undefined;
|
|
13404
13417
|
}
|
|
13418
|
+
type FlagshipWidenedValue<T> = T extends boolean ? boolean : T extends string ? string : T extends number ? number : T;
|
|
13405
13419
|
interface FlagshipEvaluationError extends Error {
|
|
13406
13420
|
}
|
|
13407
13421
|
/**
|
|
@@ -13429,8 +13443,23 @@ declare abstract class Flagship {
|
|
|
13429
13443
|
* @param flagKey The key of the flag to evaluate.
|
|
13430
13444
|
* @param defaultValue Optional default value returned when evaluation fails.
|
|
13431
13445
|
* @param context Optional evaluation context for targeting rules.
|
|
13446
|
+
* @deprecated Use getValue() instead.
|
|
13432
13447
|
*/
|
|
13433
13448
|
get(flagKey: string, defaultValue?: unknown, context?: FlagshipEvaluationContext): Promise<unknown>;
|
|
13449
|
+
/**
|
|
13450
|
+
* Get a flag value, inferring its expected type from the default value.
|
|
13451
|
+
* @param flagKey The key of the flag to evaluate.
|
|
13452
|
+
* @param defaultValue Default value returned when evaluation fails or the flag type does not match.
|
|
13453
|
+
* @param context Optional evaluation context for targeting rules.
|
|
13454
|
+
*/
|
|
13455
|
+
getValue<T extends boolean | string | number | Record<string, unknown> | unknown[]>(flagKey: string, defaultValue: T, context?: FlagshipEvaluationContext): Promise<FlagshipWidenedValue<T>>;
|
|
13456
|
+
/**
|
|
13457
|
+
* Get a flag value with full evaluation details, inferring its expected type from the default value.
|
|
13458
|
+
* @param flagKey The key of the flag to evaluate.
|
|
13459
|
+
* @param defaultValue Default value returned when evaluation fails or the flag type does not match.
|
|
13460
|
+
* @param context Optional evaluation context for targeting rules.
|
|
13461
|
+
*/
|
|
13462
|
+
getDetails<T extends boolean | string | number | Record<string, unknown> | unknown[]>(flagKey: string, defaultValue: T, context?: FlagshipEvaluationContext): Promise<FlagshipEvaluationDetails<FlagshipWidenedValue<T>>>;
|
|
13434
13463
|
/**
|
|
13435
13464
|
* Get a boolean flag value.
|
|
13436
13465
|
* @param flagKey The key of the flag to evaluate.
|
|
@@ -14231,7 +14260,7 @@ declare namespace Rpc {
|
|
|
14231
14260
|
// Structured cloneables
|
|
14232
14261
|
BaseType
|
|
14233
14262
|
// Structured cloneable composites
|
|
14234
|
-
| Map<T extends Map<infer U, unknown> ? Serializable<U> : never, T extends Map<unknown, infer U> ? Serializable<U> : never> | Set<T extends Set<infer U> ? Serializable<U> : never> | ReadonlyArray<T extends ReadonlyArray<infer U> ? Serializable<U> : never> | {
|
|
14263
|
+
| Map<T extends Map<infer U, unknown> ? Serializable<U> : never, T extends Map<unknown, infer U> ? Serializable<U> : never> | Set<T extends Set<infer U> ? Serializable<U> : never> | ReadonlyMap<T extends ReadonlyMap<infer U, unknown> ? Serializable<U> : never, T extends ReadonlyMap<unknown, infer U> ? Serializable<U> : never> | ReadonlySet<T extends ReadonlySet<infer U> ? Serializable<U> : never> | ReadonlyArray<T extends ReadonlyArray<infer U> ? Serializable<U> : never> | {
|
|
14235
14264
|
[K in keyof T]: K extends number | string ? Serializable<T[K]> : never;
|
|
14236
14265
|
}
|
|
14237
14266
|
// Special types
|
|
@@ -14249,7 +14278,7 @@ declare namespace Rpc {
|
|
|
14249
14278
|
type BaseType = void | undefined | null | boolean | number | bigint | string | TypedArray | ArrayBuffer | DataView | Date | Error | RegExp | ReadableStream<Uint8Array> | WritableStream<Uint8Array> | Request | Response | Headers;
|
|
14250
14279
|
// Recursively rewrite all `Stubable` types with `Stub`s
|
|
14251
14280
|
// prettier-ignore
|
|
14252
|
-
type Stubify<T> = T extends Stubable ? Stub<T> : T extends Map<infer K, infer V> ? Map<Stubify<K>, Stubify<V>> : T extends Set<infer V> ? Set<Stubify<V>> : T extends Array<infer V> ? Array<Stubify<V>> : T extends ReadonlyArray<infer V> ? ReadonlyArray<Stubify<V>> : T extends BaseType ? T : T extends {
|
|
14281
|
+
type Stubify<T> = T extends Stubable ? Stub<T> : T extends Map<infer K, infer V> ? Map<Stubify<K>, Stubify<V>> : T extends Set<infer V> ? Set<Stubify<V>> : T extends ReadonlyMap<infer K, infer V> ? ReadonlyMap<Stubify<K>, Stubify<V>> : T extends ReadonlySet<infer V> ? ReadonlySet<Stubify<V>> : T extends Array<infer V> ? Array<Stubify<V>> : T extends ReadonlyArray<infer V> ? ReadonlyArray<Stubify<V>> : T extends BaseType ? T : T extends {
|
|
14253
14282
|
[key: string | number]: any;
|
|
14254
14283
|
} ? {
|
|
14255
14284
|
[K in keyof T]: Stubify<T[K]>;
|
|
@@ -14258,7 +14287,7 @@ declare namespace Rpc {
|
|
|
14258
14287
|
// Note we use `StubBase` instead of `Stub` here to avoid circular dependencies:
|
|
14259
14288
|
// `Stub` depends on `Provider`, which depends on `Unstubify`, which would depend on `Stub`.
|
|
14260
14289
|
// prettier-ignore
|
|
14261
|
-
type Unstubify<T> = T extends StubBase<infer V> ? V : T extends Map<infer K, infer V> ? Map<Unstubify<K>, Unstubify<V>> : T extends Set<infer V> ? Set<Unstubify<V>> : T extends Array<infer V> ? Array<Unstubify<V>> : T extends ReadonlyArray<infer V> ? ReadonlyArray<Unstubify<V>> : T extends BaseType ? T : T extends {
|
|
14290
|
+
type Unstubify<T> = T extends StubBase<infer V> ? V : T extends Map<infer K, infer V> ? Map<Unstubify<K>, Unstubify<V>> : T extends Set<infer V> ? Set<Unstubify<V>> : T extends ReadonlyMap<infer K, infer V> ? ReadonlyMap<Unstubify<K>, Unstubify<V>> : T extends ReadonlySet<infer V> ? ReadonlySet<Unstubify<V>> : T extends Array<infer V> ? Array<Unstubify<V>> : T extends ReadonlyArray<infer V> ? ReadonlyArray<Unstubify<V>> : T extends BaseType ? T : T extends {
|
|
14262
14291
|
[key: string | number]: unknown;
|
|
14263
14292
|
} ? {
|
|
14264
14293
|
[K in keyof T]: Unstubify<T[K]>;
|