@hamak/microkernel-impl 0.5.8 → 0.5.9
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/es2015/runtime/host.js +7 -1
- package/dist/es2015/runtime/registries.js +22 -0
- package/dist/runtime/host.d.ts.map +1 -1
- package/dist/runtime/host.js +7 -1
- package/dist/runtime/host.js.map +1 -1
- package/dist/runtime/registries.d.ts +2 -1
- package/dist/runtime/registries.d.ts.map +1 -1
- package/dist/runtime/registries.js +22 -0
- package/dist/runtime/registries.js.map +1 -1
- package/package.json +1 -1
|
@@ -8,13 +8,14 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
8
|
});
|
|
9
9
|
};
|
|
10
10
|
import { Container } from './di.js';
|
|
11
|
-
import { createCommandRegistry, createHooks, createViewRegistry } from './registries.js';
|
|
11
|
+
import { createCommandRegistry, createHooks, createStyleRegistry, createViewRegistry } from './registries.js';
|
|
12
12
|
import { PluginRegistry } from './loader.js';
|
|
13
13
|
function createSharedRegistries() {
|
|
14
14
|
return {
|
|
15
15
|
commands: createCommandRegistry(),
|
|
16
16
|
views: createViewRegistry(),
|
|
17
17
|
hooks: createHooks(),
|
|
18
|
+
styles: createStyleRegistry(),
|
|
18
19
|
};
|
|
19
20
|
}
|
|
20
21
|
function createInitContext(container, registries, env) {
|
|
@@ -31,6 +32,10 @@ function createInitContext(container, registries, env) {
|
|
|
31
32
|
on: (ev, fn) => registries.hooks.on(ev, fn),
|
|
32
33
|
emit: (ev, ...a) => registries.hooks.emit(ev, ...a)
|
|
33
34
|
},
|
|
35
|
+
styles: {
|
|
36
|
+
register: (id, css) => registries.styles.register(id, css),
|
|
37
|
+
unregister: (id) => registries.styles.unregister(id)
|
|
38
|
+
},
|
|
34
39
|
env,
|
|
35
40
|
};
|
|
36
41
|
}
|
|
@@ -40,6 +45,7 @@ function createActivateContext(container, registries, env) {
|
|
|
40
45
|
commands: registries.commands,
|
|
41
46
|
views: registries.views,
|
|
42
47
|
hooks: registries.hooks,
|
|
48
|
+
styles: registries.styles,
|
|
43
49
|
env,
|
|
44
50
|
};
|
|
45
51
|
}
|
|
@@ -4,3 +4,25 @@ export function createHooks() { const map = new Map(); return { on(e, f) { if (!
|
|
|
4
4
|
export function createCommandRegistry() { const h = new Map(); return { register(id, fn) { h.set(id, fn); }, run(id, ...a) { const fn = h.get(id); if (!fn)
|
|
5
5
|
throw new Error(`Command not found: ${id}`); return fn(...a); }, has(id) { return h.has(id); } }; }
|
|
6
6
|
export function createViewRegistry() { const s = new Map(); return { register(slot, v) { var _a; const arr = (_a = s.get(slot)) !== null && _a !== void 0 ? _a : []; arr.push(v); s.set(slot, arr); }, list(slot) { var _a; return [...((_a = s.get(slot)) !== null && _a !== void 0 ? _a : [])]; } }; }
|
|
7
|
+
export function createStyleRegistry() {
|
|
8
|
+
const styles = new Map();
|
|
9
|
+
const listeners = new Set();
|
|
10
|
+
const snapshot = () => [...styles].map(([id, css]) => ({ id, css }));
|
|
11
|
+
const emit = () => { const s = snapshot(); for (const l of listeners)
|
|
12
|
+
l(s); };
|
|
13
|
+
return {
|
|
14
|
+
register(id, css) {
|
|
15
|
+
styles.set(id, css);
|
|
16
|
+
emit();
|
|
17
|
+
return {
|
|
18
|
+
update: (next) => { styles.set(id, next); emit(); },
|
|
19
|
+
dispose: () => { if (styles.delete(id))
|
|
20
|
+
emit(); },
|
|
21
|
+
};
|
|
22
|
+
},
|
|
23
|
+
unregister(id) { if (styles.delete(id))
|
|
24
|
+
emit(); },
|
|
25
|
+
list() { return snapshot(); },
|
|
26
|
+
subscribe(l) { listeners.add(l); l(snapshot()); return () => { listeners.delete(l); }; },
|
|
27
|
+
};
|
|
28
|
+
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../src/runtime/host.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,
|
|
1
|
+
{"version":3,"file":"host.d.ts","sourceRoot":"","sources":["../../src/runtime/host.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,UAAU,EAAE,KAAK,EAAE,cAAc,EAAE,QAAQ,EAAuD,MAAM,wBAAwB,CAAC;AAChK,OAAO,EAAE,SAAS,EAAwB,MAAM,MAAM,CAAC;AAGvD,OAAO,KAAK,EAAyB,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAElF,MAAM,WAAW,UAAU;IACzB,kEAAkE;IAClE,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AA2DD,qBAAa,IAAK,YAAW,KAAK;IAChC,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAiB;IAC3C,OAAO,CAAC,GAAG,CAAC,CAAsB;IAClC,OAAO,CAAC,MAAM,CAAa;IAC3B,iBAAiB,CAAC,EAAE,eAAe,CAAC;gBAExB,gBAAgB,GAAE,QAAQ,EAAO,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAE,UAAe;IAa3F,WAAW,CAAC,SAAS,EAAE,KAAK,CAAC,MAAM,GAAC,cAAc,CAAC,GAAG,OAAO,CAAC,IAAI,CAAC;IAIzE;;;;;OAKG;IACH,cAAc,CAAC,IAAI,EAAE,MAAM,EAAE,QAAQ,EAAE,cAAc,EAAE,MAAM,EAAE,YAAY,GAAG,IAAI;IAIlF;;;;OAIG;IACH,SAAS,CAAC,IAAI,EAAE,MAAM,GAAG,cAAc,GAAG,SAAS;IAInD;;;OAGG;IACH,WAAW,IAAI,cAAc,EAAE;IAIzB,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAqEzC,eAAe,CAAC,SAAS,GAAE,QAAQ,EAAO,EAAE,GAAG,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,UAAU;CAMnF"}
|
package/dist/runtime/host.js
CHANGED
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
import { Container } from './di.js';
|
|
2
|
-
import { createCommandRegistry, createHooks, createViewRegistry } from './registries.js';
|
|
2
|
+
import { createCommandRegistry, createHooks, createStyleRegistry, createViewRegistry } from './registries.js';
|
|
3
3
|
import { PluginRegistry } from './loader.js';
|
|
4
4
|
function createSharedRegistries() {
|
|
5
5
|
return {
|
|
6
6
|
commands: createCommandRegistry(),
|
|
7
7
|
views: createViewRegistry(),
|
|
8
8
|
hooks: createHooks(),
|
|
9
|
+
styles: createStyleRegistry(),
|
|
9
10
|
};
|
|
10
11
|
}
|
|
11
12
|
function createInitContext(container, registries, env) {
|
|
@@ -22,6 +23,10 @@ function createInitContext(container, registries, env) {
|
|
|
22
23
|
on: (ev, fn) => registries.hooks.on(ev, fn),
|
|
23
24
|
emit: (ev, ...a) => registries.hooks.emit(ev, ...a)
|
|
24
25
|
},
|
|
26
|
+
styles: {
|
|
27
|
+
register: (id, css) => registries.styles.register(id, css),
|
|
28
|
+
unregister: (id) => registries.styles.unregister(id)
|
|
29
|
+
},
|
|
25
30
|
env,
|
|
26
31
|
};
|
|
27
32
|
}
|
|
@@ -31,6 +36,7 @@ function createActivateContext(container, registries, env) {
|
|
|
31
36
|
commands: registries.commands,
|
|
32
37
|
views: registries.views,
|
|
33
38
|
hooks: registries.hooks,
|
|
39
|
+
styles: registries.styles,
|
|
34
40
|
env,
|
|
35
41
|
};
|
|
36
42
|
}
|
package/dist/runtime/host.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"host.js","sourceRoot":"","sources":["../../src/runtime/host.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAwB,MAAM,MAAM,CAAC;AACvD,OAAO,EAAE,qBAAqB,EAAE,WAAW,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;
|
|
1
|
+
{"version":3,"file":"host.js","sourceRoot":"","sources":["../../src/runtime/host.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
|
-
import type { CommandRegistry, Hooks, ViewRegistry } from '@hamak/microkernel-api';
|
|
1
|
+
import type { CommandRegistry, Hooks, StyleRegistry, ViewRegistry } from '@hamak/microkernel-api';
|
|
2
2
|
export declare function createHooks(): Hooks;
|
|
3
3
|
export declare function createCommandRegistry(): CommandRegistry;
|
|
4
4
|
export declare function createViewRegistry(): ViewRegistry;
|
|
5
|
+
export declare function createStyleRegistry(): StyleRegistry;
|
|
5
6
|
//# sourceMappingURL=registries.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registries.d.ts","sourceRoot":"","sources":["../../src/runtime/registries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;
|
|
1
|
+
{"version":3,"file":"registries.d.ts","sourceRoot":"","sources":["../../src/runtime/registries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,KAAK,EAAqB,aAAa,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AACrH,wBAAgB,WAAW,IAAI,KAAK,CAA2T;AAC/V,wBAAgB,qBAAqB,IAAI,eAAe,CAAmR;AAC3U,wBAAgB,kBAAkB,IAAI,YAAY,CAAiM;AACnP,wBAAgB,mBAAmB,IAAI,aAAa,CAiBnD"}
|
|
@@ -4,4 +4,26 @@ export function createHooks() { const map = new Map(); return { on(e, f) { if (!
|
|
|
4
4
|
export function createCommandRegistry() { const h = new Map(); return { register(id, fn) { h.set(id, fn); }, run(id, ...a) { const fn = h.get(id); if (!fn)
|
|
5
5
|
throw new Error(`Command not found: ${id}`); return fn(...a); }, has(id) { return h.has(id); } }; }
|
|
6
6
|
export function createViewRegistry() { const s = new Map(); return { register(slot, v) { const arr = s.get(slot) ?? []; arr.push(v); s.set(slot, arr); }, list(slot) { return [...(s.get(slot) ?? [])]; } }; }
|
|
7
|
+
export function createStyleRegistry() {
|
|
8
|
+
const styles = new Map();
|
|
9
|
+
const listeners = new Set();
|
|
10
|
+
const snapshot = () => [...styles].map(([id, css]) => ({ id, css }));
|
|
11
|
+
const emit = () => { const s = snapshot(); for (const l of listeners)
|
|
12
|
+
l(s); };
|
|
13
|
+
return {
|
|
14
|
+
register(id, css) {
|
|
15
|
+
styles.set(id, css);
|
|
16
|
+
emit();
|
|
17
|
+
return {
|
|
18
|
+
update: (next) => { styles.set(id, next); emit(); },
|
|
19
|
+
dispose: () => { if (styles.delete(id))
|
|
20
|
+
emit(); },
|
|
21
|
+
};
|
|
22
|
+
},
|
|
23
|
+
unregister(id) { if (styles.delete(id))
|
|
24
|
+
emit(); },
|
|
25
|
+
list() { return snapshot(); },
|
|
26
|
+
subscribe(l) { listeners.add(l); l(snapshot()); return () => { listeners.delete(l); }; },
|
|
27
|
+
};
|
|
28
|
+
}
|
|
7
29
|
//# sourceMappingURL=registries.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"registries.js","sourceRoot":"","sources":["../../src/runtime/registries.ts"],"names":[],"mappings":"AACA,MAAM,UAAU,WAAW,KAAY,MAAM,GAAG,GAAG,IAAI,GAAG,EAAmC,CAAC,CAAC,OAAO,EAAE,EAAE,CAAC,CAAS,EAAC,CAAwB,IAAG,IAAG,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC;QAAE,GAAG,CAAC,GAAG,CAAC,CAAC,EAAC,IAAI,GAAG,EAAE,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,CAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,GAAG,CAAC,CAAS,EAAC,CAAwB,IAAG,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,CAAS,EAAC,GAAG,CAAQ,IAAG,KAAI,MAAM,EAAE,IAAI,GAAG,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,EAAE;QAAE,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;AAC/V,MAAM,UAAU,qBAAqB,KAAsB,MAAM,CAAC,GAAC,IAAI,GAAG,EAA4B,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,EAAU,EAAC,EAAqB,IAAE,CAAC,CAAC,GAAG,CAAC,EAAE,EAAC,EAAE,CAAC,CAAC,CAAA,CAAC,EAAE,GAAG,CAAC,EAAU,EAAC,GAAG,CAAQ,IAAE,MAAM,EAAE,GAAC,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAC,IAAG,CAAC,EAAE;QAAE,MAAM,IAAI,KAAK,CAAC,sBAAsB,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAA,CAAC,EAAE,GAAG,CAAC,EAAU,IAAE,OAAO,CAAC,CAAC,GAAG,CAAC,EAAE,CAAC,CAAC,CAAA,CAAC,EAAE,CAAC,CAAC,CAAC;AAC3U,MAAM,UAAU,kBAAkB,KAAmB,MAAM,CAAC,GAAC,IAAI,GAAG,EAAgB,CAAC,CAAC,OAAO,EAAE,QAAQ,CAAC,IAAY,EAAC,CAAM,IAAG,MAAM,GAAG,GAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAE,EAAE,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,EAAC,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,IAAI,CAAC,IAAY,IAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,GAAG,CAAC,IAAI,CAAC,IAAE,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC"}
|
|
1
|
+
{"version":3,"file":"registries.js","sourceRoot":"","sources":["../../src/runtime/registries.ts"],"names":[],"mappings":"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"}
|