Merge branch 'feature-frontend-clean-architecture-layering-contract' into develop

This commit is contained in:
donghyeon-ka
2026-07-25 20:40:21 +09:00
3 changed files with 20 additions and 3 deletions
+18 -2
View File
@@ -12,10 +12,26 @@
* }} ports * }} ports
*/ */
export function createApplication(ports) { export function createApplication(ports) {
/**
* @param {unknown} query
* @param {import("./ports/resource-ports.js").RequestContext} [context]
*/
function queryResources(query, context) {
return ports.resources.query.execute(query, context);
}
/**
* @param {unknown} command
* @param {import("./ports/resource-ports.js").RequestContext} [context]
*/
function commandResources(command, context) {
return ports.resources.command.execute(command, context);
}
return Object.freeze({ return Object.freeze({
resources: Object.freeze({ resources: Object.freeze({
query: (query, context) => ports.resources.query.execute(query, context), query: queryResources,
command: (command, context) => ports.resources.command.execute(command, context), command: commandResources,
}), }),
cache: ports.cache, cache: ports.cache,
storage: ports.storage, storage: ports.storage,
+1
View File
@@ -5,6 +5,7 @@
* }} ClockPort * }} ClockPort
*/ */
/** @type {ClockPort} */
export const systemClock = Object.freeze({ export const systemClock = Object.freeze({
now: () => Date.now(), now: () => Date.now(),
sleep(milliseconds, signal) { sleep(milliseconds, signal) {
+1 -1
View File
@@ -22,7 +22,7 @@
/** /**
* @template Value * @template Value
* @typedef {{ ok: true, value: Value, meta?: Record<string, unknown> } | * @typedef {{ ok: true, value: Value, meta?: Record<string, unknown> } |
* { ok: false, error: import("../../contracts/errors.js").ApiFailure }} Result * { ok: false, error: unknown }} Result
*/ */
export {}; export {};