blokd 0.1.0-beta.0 → 0.1.0-beta.1

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/vite.d.ts CHANGED
@@ -1,4 +1,34 @@
1
- import type { Plugin } from 'vite';
1
+ export type BlokdVitePlugin = {
2
+ name: string;
3
+ enforce?: 'pre' | 'post';
4
+ configResolved?: (config: any) => void | Promise<void>;
5
+ configureServer?: (server: BlokdViteDevServer) => void | Promise<void>;
6
+ resolveId?: (id: string, importer?: string, options?: any) => string | null | undefined | Promise<string | null | undefined>;
7
+ load?: (id: string, options?: any) => string | null | undefined | Promise<string | null | undefined>;
8
+ transform?: (code: string, id: string, options?: any) => string | null | undefined | {
9
+ code: string;
10
+ map?: any;
11
+ } | Promise<string | null | undefined | {
12
+ code: string;
13
+ map?: any;
14
+ }>;
15
+ };
16
+ export type BlokdViteDevServer = {
17
+ moduleGraph: {
18
+ getModuleById(id: string): any;
19
+ invalidateModule(mod: any): void;
20
+ };
21
+ watcher: {
22
+ add(path: string): void;
23
+ on(event: 'add' | 'unlink', listener: (file: string) => void): void;
24
+ };
25
+ ws: {
26
+ send(payload: {
27
+ type: string;
28
+ [key: string]: unknown;
29
+ }): void;
30
+ };
31
+ };
2
32
  export type BlokdPluginOptions = {
3
33
  routesDir?: string;
4
34
  extensions?: string[];
@@ -15,6 +45,6 @@ export declare function assertNoDuplicateRoutes(routesDir: string, files: string
15
45
  export declare function layoutFilesFor(routesDir: string, file: string, extensions: string[]): string[];
16
46
  export declare function nearestSpecialFile(routesDir: string, file: string, name: '_error' | '_404', extensions: string[]): string | null;
17
47
  export declare function makeManifestCode(root: string, routesDir: string, extensions?: string[], strictRoutes?: boolean, analyzeClient?: boolean): string;
18
- export declare function blokd(options?: BlokdPluginOptions): Plugin;
48
+ export declare function blokd(options?: BlokdPluginOptions): BlokdVitePlugin;
19
49
  export default blokd;
20
50
  //# sourceMappingURL=vite.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"vite.d.ts","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,MAAM,EAAiB,MAAM,MAAM,CAAC;AAElD,MAAM,MAAM,kBAAkB,GAAG;IAC/B,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,yEAAyE;IACzE,YAAY,CAAC,EAAE,OAAO,CAAC;IACvB,wEAAwE;IACxE,aAAa,CAAC,EAAE,OAAO,CAAC;CACzB,CAAC;AAKF,wBAAgB,KAAK,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAE1C;AAED,wBAAgB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,EAAE,KAAK,GAAE,MAAM,EAAO,GAAG,MAAM,EAAE,CAS5F;AAED,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAQrD;AAED,wBAAgB,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,MAAM,CAKvE;AAED,wBAAgB,uBAAuB,CAAC,SAAS,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,GAAG,IAAI,CAQhF;AAcD,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,EAAE,CAU9F;AAED,wBAAgB,kBAAkB,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,QAAQ,GAAG,MAAM,EAAE,UAAU,EAAE,MAAM,EAAE,GAAG,MAAM,GAAG,IAAI,CAShI;AAkHD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,EAAE,UAAU,WAAiC,EAAE,YAAY,UAAO,EAAE,aAAa,UAAO,GAAG,MAAM,CAgChK;AA8HD,wBAAgB,KAAK,CAAC,OAAO,GAAE,kBAAuB,GAAG,MAAM,CA8C9D;AAED,eAAe,KAAK,CAAC"}
1
+ {"version":3,"file":"vite.d.ts","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":"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"}
package/dist/vite.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"vite.js","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"vite.js","sourceRoot":"","sources":["../src/vite.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,13 +1,12 @@
1
1
  {
2
2
  "name": "blokd",
3
- "version": "0.1.0-beta.0",
3
+ "version": "0.1.0-beta.1",
4
4
  "description": "Blokd: tiny production-oriented Hono-native meta-framework with Solid-familiar signals, Web APIs, SSR, routing, and resumable islands.",
5
5
  "type": "module",
6
6
  "license": "MIT",
7
7
  "sideEffects": false,
8
8
  "files": [
9
9
  "dist",
10
- "src",
11
10
  "README.md",
12
11
  "LICENSE"
13
12
  ],
@@ -70,6 +69,11 @@
70
69
  "@babel/core": ">=7.24 <8",
71
70
  "hono": ">=4.5 <5"
72
71
  },
72
+ "devDependencies": {
73
+ "@types/node": ">=20 <23",
74
+ "typescript": ">=5.5 <6",
75
+ "vite": ">=6 <9"
76
+ },
73
77
  "peerDependencies": {
74
78
  "vite": ">=6 <9"
75
79
  },
package/src/client.ts DELETED
@@ -1,50 +0,0 @@
1
- export { render, hydrate } from './jsx-runtime.js';
2
- export { startResumability, registerResumable, unregisterResumable, resumable, Island } from './resume.js';
3
-
4
- export type EnhanceOptions = {
5
- root?: Document | Element;
6
- onNavigate?: (url: URL) => void | Promise<void>;
7
- onSubmit?: (form: HTMLFormElement, submitter: HTMLElement | null) => void | Promise<void>;
8
- };
9
-
10
- function closestAnchor(target: EventTarget | null): HTMLAnchorElement | null {
11
- return target instanceof Element ? target.closest('a[href]') : null;
12
- }
13
-
14
- function isEligibleAnchor(anchor: HTMLAnchorElement, event: MouseEvent): boolean {
15
- if (event.defaultPrevented || event.button !== 0) return false;
16
- if (event.metaKey || event.ctrlKey || event.shiftKey || event.altKey) return false;
17
- if (anchor.target && anchor.target !== '_self') return false;
18
- if (anchor.hasAttribute('download')) return false;
19
- const url = new URL(anchor.href, location.href);
20
- return url.origin === location.origin;
21
- }
22
-
23
- export function enhance(options: EnhanceOptions = {}): () => void {
24
- const root = options.root ?? document;
25
-
26
- const click = (event: Event) => {
27
- if (!(event instanceof MouseEvent)) return;
28
- const anchor = closestAnchor(event.target);
29
- if (!anchor || !isEligibleAnchor(anchor, event)) return;
30
- if (!options.onNavigate) return;
31
- event.preventDefault();
32
- void options.onNavigate(new URL(anchor.href, location.href));
33
- };
34
-
35
- const submit = (event: Event) => {
36
- const form = event.target;
37
- if (!(form instanceof HTMLFormElement)) return;
38
- if (!options.onSubmit) return;
39
- const submitter = event instanceof SubmitEvent && event.submitter instanceof HTMLElement ? event.submitter : null;
40
- event.preventDefault();
41
- void options.onSubmit(form, submitter);
42
- };
43
-
44
- root.addEventListener('click', click);
45
- root.addEventListener('submit', submit);
46
- return () => {
47
- root.removeEventListener('click', click);
48
- root.removeEventListener('submit', submit);
49
- };
50
- }
package/src/core.ts DELETED
@@ -1,234 +0,0 @@
1
- export type Accessor<T> = () => T;
2
- export type Setter<T> = {
3
- (value: T): T;
4
- (updater: (previous: T) => T): T;
5
- };
6
-
7
- export type SignalOptions<T> = {
8
- /**
9
- * Custom equality comparator. Set to false to always notify subscribers.
10
- */
11
- equals?: false | ((previous: T, next: T) => boolean);
12
- };
13
-
14
- type Source = Set<Computation>;
15
- type CleanupFn = () => void;
16
-
17
- type Owner = {
18
- owner: Owner | null;
19
- owned: Set<Computation | Owner>;
20
- cleanups: CleanupFn[];
21
- disposed: boolean;
22
- };
23
-
24
- type Computation = Owner & {
25
- fn: () => void;
26
- deps: Source[];
27
- running: boolean;
28
- stale: boolean;
29
- };
30
-
31
- let currentObserver: Computation | null = null;
32
- let currentOwner: Owner | null = null;
33
- let batchDepth = 0;
34
- let effectsEnabled = true;
35
- let flushing = false;
36
- const queue = new Set<Computation>();
37
-
38
- function createOwner(parent: Owner | null): Owner {
39
- const owner: Owner = { owner: parent, owned: new Set(), cleanups: [], disposed: false };
40
- parent?.owned.add(owner);
41
- return owner;
42
- }
43
-
44
- function removeFromParent(owner: Owner): void {
45
- owner.owner?.owned.delete(owner);
46
- }
47
-
48
- function cleanupDeps(comp: Computation): void {
49
- for (const source of comp.deps) source.delete(comp);
50
- comp.deps.length = 0;
51
- }
52
-
53
- function runCleanups(owner: Owner): void {
54
- const cleanups = owner.cleanups.splice(0);
55
- for (let i = cleanups.length - 1; i >= 0; i--) cleanups[i]!();
56
- }
57
-
58
- function disposeOwner(owner: Owner): void {
59
- if (owner.disposed) return;
60
- owner.disposed = true;
61
- for (const child of Array.from(owner.owned)) disposeOwner(child);
62
- owner.owned.clear();
63
- if ('deps' in owner) cleanupDeps(owner as Computation);
64
- runCleanups(owner);
65
- queue.delete(owner as Computation);
66
- removeFromParent(owner);
67
- }
68
-
69
- function createComputation(fn: () => void, parent: Owner | null): Computation {
70
- const comp: Computation = {
71
- owner: parent,
72
- owned: new Set(),
73
- cleanups: [],
74
- disposed: false,
75
- fn,
76
- deps: [],
77
- running: false,
78
- stale: false
79
- };
80
- parent?.owned.add(comp);
81
- return comp;
82
- }
83
-
84
- function runComputation(comp: Computation): void {
85
- if (comp.disposed || comp.running) return;
86
- comp.stale = false;
87
- cleanupDeps(comp);
88
- runCleanups(comp);
89
- for (const child of Array.from(comp.owned)) disposeOwner(child);
90
- comp.owned.clear();
91
-
92
- const previousObserver = currentObserver;
93
- const previousOwner = currentOwner;
94
- currentObserver = comp;
95
- currentOwner = comp;
96
- comp.running = true;
97
- try {
98
- comp.fn();
99
- } finally {
100
- comp.running = false;
101
- currentObserver = previousObserver;
102
- currentOwner = previousOwner;
103
- }
104
- }
105
-
106
- function schedule(comp: Computation): void {
107
- if (comp.disposed) return;
108
- comp.stale = true;
109
- queue.add(comp);
110
- if (batchDepth === 0) flush();
111
- }
112
-
113
- function flush(): void {
114
- if (batchDepth > 0 || flushing) return;
115
- flushing = true;
116
- try {
117
- let guard = 0;
118
- while (queue.size > 0) {
119
- if (++guard > 100000) throw new Error('Reactive update limit exceeded. Check for cyclic effects.');
120
- const pending = Array.from(queue);
121
- queue.clear();
122
- for (const comp of pending) runComputation(comp);
123
- }
124
- } finally {
125
- flushing = false;
126
- }
127
- }
128
-
129
- function shouldNotify<T>(previous: T, next: T, options?: SignalOptions<T>): boolean {
130
- if (options?.equals === false) return true;
131
- const equals = options?.equals ?? Object.is;
132
- return !equals(previous, next);
133
- }
134
-
135
- export function signal<T>(initial: T, options?: SignalOptions<T>): [Accessor<T>, Setter<T>] {
136
- let value = initial;
137
- const subscribers: Source = new Set();
138
-
139
- const read: Accessor<T> = () => {
140
- if (currentObserver && !subscribers.has(currentObserver)) {
141
- subscribers.add(currentObserver);
142
- currentObserver.deps.push(subscribers);
143
- }
144
- return value;
145
- };
146
-
147
- const write: Setter<T> = ((next: T | ((previous: T) => T)) => {
148
- const nextValue = typeof next === 'function' ? (next as (previous: T) => T)(value) : next;
149
- if (!shouldNotify(value, nextValue, options)) return value;
150
- value = nextValue;
151
- for (const comp of Array.from(subscribers)) schedule(comp);
152
- return value;
153
- }) as Setter<T>;
154
-
155
- return [read, write];
156
- }
157
-
158
- export function effect(fn: () => void): () => void {
159
- if (!effectsEnabled) return () => undefined;
160
- const comp = createComputation(fn, currentOwner);
161
- runComputation(comp);
162
- return () => disposeOwner(comp);
163
- }
164
-
165
- export function cleanup(fn: CleanupFn): void {
166
- if (!currentOwner) throw new Error('cleanup() must be called inside root(), effect(), render(), hydrate(), or a component render scope.');
167
- currentOwner.cleanups.push(fn);
168
- }
169
-
170
- export function memo<T>(fn: () => T, options?: SignalOptions<T>): Accessor<T> {
171
- if (!effectsEnabled) return () => fn();
172
- const [value, setValue] = signal<T>(undefined as T, options);
173
- effect(() => setValue(fn()));
174
- return value;
175
- }
176
-
177
- export function batch<T>(fn: () => T): T {
178
- batchDepth++;
179
- try {
180
- return fn();
181
- } finally {
182
- batchDepth--;
183
- flush();
184
- }
185
- }
186
-
187
- export function untrack<T>(fn: () => T): T {
188
- const previous = currentObserver;
189
- currentObserver = null;
190
- try {
191
- return fn();
192
- } finally {
193
- currentObserver = previous;
194
- }
195
- }
196
-
197
- export function root<T>(fn: (dispose: () => void) => T): T {
198
- const owner = createOwner(currentOwner);
199
- const previousOwner = currentOwner;
200
- currentOwner = owner;
201
- try {
202
- return fn(() => disposeOwner(owner));
203
- } finally {
204
- currentOwner = previousOwner;
205
- }
206
- }
207
-
208
- export function getOwner(): unknown {
209
- return currentOwner;
210
- }
211
-
212
- export function runWithOwner<T>(owner: unknown, fn: () => T): T {
213
- const previousOwner = currentOwner;
214
- currentOwner = owner as Owner | null;
215
- try {
216
- return fn();
217
- } finally {
218
- currentOwner = previousOwner;
219
- }
220
- }
221
-
222
- export function runWithEffectsDisabled<T>(fn: () => T): T {
223
- const previous = effectsEnabled;
224
- effectsEnabled = false;
225
- try {
226
- return fn();
227
- } finally {
228
- effectsEnabled = previous;
229
- }
230
- }
231
-
232
- export function dispose(owner: unknown): void {
233
- if (owner && typeof owner === 'object' && 'owned' in owner) disposeOwner(owner as Owner);
234
- }
package/src/dom.ts DELETED
@@ -1,142 +0,0 @@
1
- import { cleanup, effect, root } from './core.js';
2
- import { dynamic, type Renderable } from './jsx-runtime.js';
3
-
4
- export { render, hydrate, dynamic } from './jsx-runtime.js';
5
-
6
- export type ShowProps<T> = {
7
- when: T | false | null | undefined;
8
- fallback?: Renderable;
9
- children?: Renderable | ((value: NonNullable<T>) => Renderable);
10
- };
11
-
12
- export function Show<T>(props: ShowProps<T>): Renderable {
13
- const resolve = () => {
14
- const when = props.when;
15
- if (when) return typeof props.children === 'function'
16
- ? (props.children as (value: NonNullable<T>) => Renderable)(when as NonNullable<T>)
17
- : props.children;
18
- return props.fallback ?? null;
19
- };
20
- if (typeof document === 'undefined') return resolve();
21
- return dynamic(resolve);
22
- }
23
-
24
- export type ForProps<T> = {
25
- each: readonly T[] | null | undefined;
26
- by?: (item: T, index: number) => string | number;
27
- fallback?: Renderable;
28
- children: (item: T, index: () => number) => Renderable;
29
- };
30
-
31
- export function For<T>(props: ForProps<T>): Renderable {
32
- if (typeof document === 'undefined') {
33
- const items = props.each ?? [];
34
- if (items.length === 0) return props.fallback ?? null;
35
- return items.map((item, index) => props.children(item, () => index));
36
- }
37
-
38
- if (!props.by) {
39
- return dynamic(() => {
40
- const items = props.each ?? [];
41
- if (items.length === 0) return props.fallback ?? null;
42
- return items.map((item, index) => props.children(item, () => index));
43
- });
44
- }
45
-
46
- const start = document.createComment('bd-for');
47
- const end = document.createComment('/bd-for');
48
- const fragment = document.createDocumentFragment();
49
- fragment.append(start, end);
50
-
51
- type Row = { key: string | number; nodes: Node[]; dispose: () => void; item: T; index: () => number; setIndex: (value: number) => void };
52
- const rows = new Map<string | number, Row>();
53
-
54
- const normalizeNodes = (value: Renderable): Node[] => {
55
- const host = document.createDocumentFragment();
56
- // Dynamic child creation is delegated through the JSX runtime by appending into a disposable root.
57
- root(dispose => {
58
- rowsDisposers.push(dispose);
59
- const append = (v: Renderable): void => {
60
- if (v === null || v === undefined || v === false || v === true) return;
61
- if (Array.isArray(v)) { for (const n of v) append(n); return; }
62
- if (v instanceof Node) { host.appendChild(v); return; }
63
- host.appendChild(document.createTextNode(String(v)));
64
- };
65
- append(value);
66
- });
67
- return Array.from(host.childNodes);
68
- };
69
-
70
- let rowsDisposers: Array<() => void> = [];
71
-
72
- const clear = () => {
73
- for (const row of rows.values()) row.dispose();
74
- rows.clear();
75
- let node = start.nextSibling;
76
- while (node && node !== end) {
77
- const next = node.nextSibling;
78
- node.parentNode?.removeChild(node);
79
- node = next;
80
- }
81
- };
82
-
83
- effect(() => {
84
- const items = props.each ?? [];
85
- if (items.length === 0) {
86
- clear();
87
- if (props.fallback !== undefined) {
88
- const fallbackNodes = normalizeNodes(props.fallback);
89
- for (const node of fallbackNodes) end.parentNode?.insertBefore(node, end);
90
- }
91
- return;
92
- }
93
-
94
- const nextKeys = new Set<string | number>();
95
- const orderedRows: Row[] = [];
96
-
97
- items.forEach((item, index) => {
98
- const key = props.by!(item, index);
99
- nextKeys.add(key);
100
- let row = rows.get(key);
101
- if (!row || row.item !== item) {
102
- row?.dispose();
103
- for (const node of row?.nodes ?? []) node.parentNode?.removeChild(node);
104
- let currentIndex = index;
105
- let disposeRow: () => void = () => {};
106
- const nodes = root(dispose => {
107
- disposeRow = dispose;
108
- const rendered = props.children(item, () => currentIndex);
109
- const host = document.createDocumentFragment();
110
- const append = (v: Renderable): void => {
111
- if (v === null || v === undefined || v === false || v === true) return;
112
- if (Array.isArray(v)) { for (const child of v) append(child); return; }
113
- if (v instanceof Node) { host.appendChild(v); return; }
114
- host.appendChild(document.createTextNode(String(v)));
115
- };
116
- append(rendered);
117
- return Array.from(host.childNodes);
118
- });
119
- row = { key, item, nodes, dispose: disposeRow, index: () => currentIndex, setIndex: value => { currentIndex = value; } };
120
- rows.set(key, row);
121
- } else {
122
- row.setIndex(index);
123
- }
124
- orderedRows.push(row);
125
- });
126
-
127
- for (const [key, row] of Array.from(rows.entries())) {
128
- if (!nextKeys.has(key)) {
129
- row.dispose();
130
- for (const node of row.nodes) node.parentNode?.removeChild(node);
131
- rows.delete(key);
132
- }
133
- }
134
-
135
- for (const row of orderedRows) {
136
- for (const node of row.nodes) end.parentNode?.insertBefore(node, end);
137
- }
138
- });
139
-
140
- cleanup(clear);
141
- return fragment;
142
- }