@aiquants/daily-report 0.29.0 → 0.30.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/CHANGELOG.md +43 -0
- package/README.md +69 -52
- package/dist/client.d.mts +5 -3
- package/dist/client.d.ts +5 -3
- package/dist/client.js +4 -4
- package/dist/client.mjs +4 -4
- package/dist/{comment-adapter-5bAtR4qb.d.ts → ids-stream-BR5RSj5u.d.ts} +22 -2
- package/dist/{comment-adapter-lV2ZB_vH.d.mts → ids-stream-DvB2h1dj.d.mts} +22 -2
- package/dist/index.d.mts +2 -2
- package/dist/index.d.ts +2 -2
- package/dist/server.d.mts +52 -131
- package/dist/server.d.ts +52 -131
- package/dist/server.js +4 -4
- package/dist/server.mjs +4 -4
- package/dist/styles/daily-report.standalone.css +1 -1
- package/dist/{ids-stream-CWuIDrIO.d.mts → types-DkERw8NE.d.mts} +1 -22
- package/dist/{ids-stream-CWuIDrIO.d.ts → types-DkERw8NE.d.ts} +1 -22
- package/package.json +3 -3
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
import {
|
|
2
|
+
import { d as DailyReportExternalComment, g as DailyReportPostedComment, D as DailyReportItem } from "./types-DkERw8NE.js";
|
|
3
3
|
declare const DAILY_REPORT_SSE_TERMINAL_EVENTS: readonly [
|
|
4
4
|
"auth-required",
|
|
5
5
|
"forbidden",
|
|
@@ -2491,4 +2491,24 @@ type UIComment = {
|
|
|
2491
2491
|
isLegacy: boolean;
|
|
2492
2492
|
};
|
|
2493
2493
|
declare const mergeComments: (legacyComments: DailyReportExternalComment[], modernComments: DailyReportPostedComment[], currentUserId: string | null | undefined, unknownAuthorName: string) => UIComment[];
|
|
2494
|
-
|
|
2494
|
+
type DailyReportIdsStreamCursor = {
|
|
2495
|
+
businessDate: string | null;
|
|
2496
|
+
reportHubId: number;
|
|
2497
|
+
};
|
|
2498
|
+
type DailyReportIdsStreamChunkLine = {
|
|
2499
|
+
kind: "chunk";
|
|
2500
|
+
items: DailyReportItem[];
|
|
2501
|
+
nextCursor: DailyReportIdsStreamCursor | null;
|
|
2502
|
+
isLast: boolean;
|
|
2503
|
+
total?: number;
|
|
2504
|
+
provisional?: boolean;
|
|
2505
|
+
snapshot?: string;
|
|
2506
|
+
restarted?: boolean;
|
|
2507
|
+
streamAnchor?: string | null;
|
|
2508
|
+
};
|
|
2509
|
+
type DailyReportSseStreamAnchor = {
|
|
2510
|
+
readonly lastEventId: string | null;
|
|
2511
|
+
readonly revision: number;
|
|
2512
|
+
};
|
|
2513
|
+
declare const isIdsStreamChunkLine: (line: unknown) => line is DailyReportIdsStreamChunkLine;
|
|
2514
|
+
export { type DailyReportSseTerminalEvent as D, type UIComment as U, type DailyReportSseMessage as a, type DailyReportSseStreamAnchor as b, DAILY_REPORT_SSE_CURSOR_PARAM as c, DAILY_REPORT_SSE_HEARTBEAT_MS as d, DAILY_REPORT_SSE_TERMINAL_EVENTS as e, type DailyReportIdsStreamChunkLine as f, commentAddMessageSchema as g, commentDeleteMessageSchema as h, connectedMessageSchema as i, dailyReportDetailSchema as j, dailyReportExternalCommentSchema as k, dailyReportInterviewerSchema as l, dailyReportLabelDefSchema as m, dailyReportPostedCommentSchema as n, dailyReportSseMessageSchema as o, isDailyReportSseStreamId as p, isIdsStreamChunkLine as q, mergeComments as r, reportCreateMessageSchema as s, reportDeleteMessageSchema as t, reportPublishMessageSchema as u, reportUpdateMessageSchema as v, statusUpdateMessageSchema as w };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { z } from "zod";
|
|
2
|
-
import {
|
|
2
|
+
import { d as DailyReportExternalComment, g as DailyReportPostedComment, D as DailyReportItem } from "./types-DkERw8NE.mjs";
|
|
3
3
|
declare const DAILY_REPORT_SSE_TERMINAL_EVENTS: readonly [
|
|
4
4
|
"auth-required",
|
|
5
5
|
"forbidden",
|
|
@@ -2491,4 +2491,24 @@ type UIComment = {
|
|
|
2491
2491
|
isLegacy: boolean;
|
|
2492
2492
|
};
|
|
2493
2493
|
declare const mergeComments: (legacyComments: DailyReportExternalComment[], modernComments: DailyReportPostedComment[], currentUserId: string | null | undefined, unknownAuthorName: string) => UIComment[];
|
|
2494
|
-
|
|
2494
|
+
type DailyReportIdsStreamCursor = {
|
|
2495
|
+
businessDate: string | null;
|
|
2496
|
+
reportHubId: number;
|
|
2497
|
+
};
|
|
2498
|
+
type DailyReportIdsStreamChunkLine = {
|
|
2499
|
+
kind: "chunk";
|
|
2500
|
+
items: DailyReportItem[];
|
|
2501
|
+
nextCursor: DailyReportIdsStreamCursor | null;
|
|
2502
|
+
isLast: boolean;
|
|
2503
|
+
total?: number;
|
|
2504
|
+
provisional?: boolean;
|
|
2505
|
+
snapshot?: string;
|
|
2506
|
+
restarted?: boolean;
|
|
2507
|
+
streamAnchor?: string | null;
|
|
2508
|
+
};
|
|
2509
|
+
type DailyReportSseStreamAnchor = {
|
|
2510
|
+
readonly lastEventId: string | null;
|
|
2511
|
+
readonly revision: number;
|
|
2512
|
+
};
|
|
2513
|
+
declare const isIdsStreamChunkLine: (line: unknown) => line is DailyReportIdsStreamChunkLine;
|
|
2514
|
+
export { type DailyReportSseTerminalEvent as D, type UIComment as U, type DailyReportSseMessage as a, type DailyReportSseStreamAnchor as b, DAILY_REPORT_SSE_CURSOR_PARAM as c, DAILY_REPORT_SSE_HEARTBEAT_MS as d, DAILY_REPORT_SSE_TERMINAL_EVENTS as e, type DailyReportIdsStreamChunkLine as f, commentAddMessageSchema as g, commentDeleteMessageSchema as h, connectedMessageSchema as i, dailyReportDetailSchema as j, dailyReportExternalCommentSchema as k, dailyReportInterviewerSchema as l, dailyReportLabelDefSchema as m, dailyReportPostedCommentSchema as n, dailyReportSseMessageSchema as o, isDailyReportSseStreamId as p, isIdsStreamChunkLine as q, mergeComments as r, reportCreateMessageSchema as s, reportDeleteMessageSchema as t, reportPublishMessageSchema as u, reportUpdateMessageSchema as v, statusUpdateMessageSchema as w };
|
package/dist/index.d.mts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export {
|
|
1
|
+
export { c as DAILY_REPORT_SSE_CURSOR_PARAM, d as DAILY_REPORT_SSE_HEARTBEAT_MS, e as DAILY_REPORT_SSE_TERMINAL_EVENTS, f as DailyReportIdsStreamChunkLine, a as DailyReportSseMessage, b as DailyReportSseStreamAnchor, g as commentAddMessageSchema, h as commentDeleteMessageSchema, i as connectedMessageSchema, j as dailyReportDetailSchema, k as dailyReportExternalCommentSchema, l as dailyReportInterviewerSchema, m as dailyReportLabelDefSchema, n as dailyReportPostedCommentSchema, o as dailyReportSseMessageSchema, p as isDailyReportSseStreamId, q as isIdsStreamChunkLine, r as mergeComments, s as reportCreateMessageSchema, t as reportDeleteMessageSchema, u as reportPublishMessageSchema, v as reportUpdateMessageSchema, w as statusUpdateMessageSchema } from "./ids-stream-DvB2h1dj.mjs";
|
|
2
|
+
export { c as DailyReportAttachmentSummary, b as DailyReportDetail, d as DailyReportExternalComment, e as DailyReportInterviewer, D as DailyReportItem, f as DailyReportLabelDef, g as DailyReportPostedComment, a as DailyReportUser } from "./types-DkERw8NE.mjs";
|
|
3
3
|
import "zod";
|
|
4
4
|
type DailyReportAttachmentThumbnailBox = {
|
|
5
5
|
readonly maxWidth: number;
|
package/dist/index.d.ts
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
export {
|
|
2
|
-
export {
|
|
1
|
+
export { c as DAILY_REPORT_SSE_CURSOR_PARAM, d as DAILY_REPORT_SSE_HEARTBEAT_MS, e as DAILY_REPORT_SSE_TERMINAL_EVENTS, f as DailyReportIdsStreamChunkLine, a as DailyReportSseMessage, b as DailyReportSseStreamAnchor, g as commentAddMessageSchema, h as commentDeleteMessageSchema, i as connectedMessageSchema, j as dailyReportDetailSchema, k as dailyReportExternalCommentSchema, l as dailyReportInterviewerSchema, m as dailyReportLabelDefSchema, n as dailyReportPostedCommentSchema, o as dailyReportSseMessageSchema, p as isDailyReportSseStreamId, q as isIdsStreamChunkLine, r as mergeComments, s as reportCreateMessageSchema, t as reportDeleteMessageSchema, u as reportPublishMessageSchema, v as reportUpdateMessageSchema, w as statusUpdateMessageSchema } from "./ids-stream-BR5RSj5u.js";
|
|
2
|
+
export { c as DailyReportAttachmentSummary, b as DailyReportDetail, d as DailyReportExternalComment, e as DailyReportInterviewer, D as DailyReportItem, f as DailyReportLabelDef, g as DailyReportPostedComment, a as DailyReportUser } from "./types-DkERw8NE.js";
|
|
3
3
|
import "zod";
|
|
4
4
|
type DailyReportAttachmentThumbnailBox = {
|
|
5
5
|
readonly maxWidth: number;
|
package/dist/server.d.mts
CHANGED
|
@@ -1,14 +1,7 @@
|
|
|
1
|
-
import { g as DailyReportInterviewer, e as DailyReportExternalComment, D as DailyReportItem, b as DailyReportDetail, d as DailyReportAttachmentSummary, i as DailyReportPostedComment } from "./ids-stream-CWuIDrIO.mjs";
|
|
2
|
-
export { k as DAILY_REPORT_IDS_STREAM_ENDPOINT } from "./ids-stream-CWuIDrIO.mjs";
|
|
3
|
-
import { TransactionRetryOptions } from "@aiquants/mssql";
|
|
4
1
|
import * as drizzle_orm_mssql_core from "drizzle-orm/mssql-core";
|
|
5
2
|
import { AnyMsSqlColumn } from "drizzle-orm/mssql-core";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
info(message?: unknown, ...optionalParams: unknown[]): void;
|
|
9
|
-
warn(message?: unknown, ...optionalParams: unknown[]): void;
|
|
10
|
-
error(message?: unknown, ...optionalParams: unknown[]): void;
|
|
11
|
-
}
|
|
3
|
+
import { e as DailyReportInterviewer, d as DailyReportExternalComment, D as DailyReportItem, b as DailyReportDetail, c as DailyReportAttachmentSummary, g as DailyReportPostedComment } from "./types-DkERw8NE.mjs";
|
|
4
|
+
import { TransactionRetryOptions } from "@aiquants/mssql";
|
|
12
5
|
type RedisStreamMessage = {
|
|
13
6
|
id: string;
|
|
14
7
|
message: Record<string, string>;
|
|
@@ -161,6 +154,12 @@ declare class SqlResultCache {
|
|
|
161
154
|
invalidatePrefix: (prefix: string) => void;
|
|
162
155
|
private cleanExpired;
|
|
163
156
|
}
|
|
157
|
+
interface DailyReportLogger {
|
|
158
|
+
debug(message?: unknown, ...optionalParams: unknown[]): void;
|
|
159
|
+
info(message?: unknown, ...optionalParams: unknown[]): void;
|
|
160
|
+
warn(message?: unknown, ...optionalParams: unknown[]): void;
|
|
161
|
+
error(message?: unknown, ...optionalParams: unknown[]): void;
|
|
162
|
+
}
|
|
164
163
|
type ExternalReportFields = {
|
|
165
164
|
content?: string | null;
|
|
166
165
|
employeeName?: string | null;
|
|
@@ -179,6 +178,10 @@ type DailyReportExternalSource = {
|
|
|
179
178
|
mapRow: (row: Record<string, unknown>) => ExternalReportFields;
|
|
180
179
|
};
|
|
181
180
|
declare const transformJsonArray: <TRaw, TResult>(payload: string | null, label: string, mapper: (raw: TRaw) => TResult | null, logger?: DailyReportLogger) => TResult[];
|
|
181
|
+
type ResourceRouteArgs = {
|
|
182
|
+
request: Request;
|
|
183
|
+
params: Record<string, string | undefined>;
|
|
184
|
+
};
|
|
182
185
|
type DailyReportUserTable = {
|
|
183
186
|
id: AnyMsSqlColumn;
|
|
184
187
|
displayName: AnyMsSqlColumn;
|
|
@@ -1584,38 +1587,6 @@ declare function createDailyReportService(config: DailyReportServiceConfig): {
|
|
|
1584
1587
|
updateDailyReportInternal: (tx: DailyReportDb, hubId: number, data: Partial<DailyReportInternalRow>) => Promise<void>;
|
|
1585
1588
|
deleteDailyReportLabel: (tx: DailyReportDb, hubId: number, labelId: number) => Promise<void>;
|
|
1586
1589
|
};
|
|
1587
|
-
declare const isStreamIdLte: (a: string, b: string) => boolean;
|
|
1588
|
-
type DailyReportSseReaderConfig = {
|
|
1589
|
-
redis?: DailyReportRedisProvider;
|
|
1590
|
-
streamKey: string;
|
|
1591
|
-
cache: SqlResultCache;
|
|
1592
|
-
logger?: DailyReportLogger;
|
|
1593
|
-
};
|
|
1594
|
-
declare class DailyReportSseReader implements DailyReportSseReaderPort {
|
|
1595
|
-
private readonly config;
|
|
1596
|
-
private _source;
|
|
1597
|
-
private _lastId;
|
|
1598
|
-
private _positioning;
|
|
1599
|
-
private _generation;
|
|
1600
|
-
private readonly _logger;
|
|
1601
|
-
constructor(config: DailyReportSseReaderConfig);
|
|
1602
|
-
ready(): Promise<void>;
|
|
1603
|
-
subscribe(onEntry: (entry: StreamEntry) => void, onError: (err: Error) => void): () => void;
|
|
1604
|
-
destroy(): Promise<void>;
|
|
1605
|
-
private _position;
|
|
1606
|
-
private _readTail;
|
|
1607
|
-
private _createSource;
|
|
1608
|
-
private _start;
|
|
1609
|
-
private _readLoop;
|
|
1610
|
-
private _invalidateCaches;
|
|
1611
|
-
}
|
|
1612
|
-
declare const generateETag: (data: unknown) => string;
|
|
1613
|
-
type LoaderArgs = {
|
|
1614
|
-
request: Request;
|
|
1615
|
-
params: Record<string, string | undefined>;
|
|
1616
|
-
};
|
|
1617
|
-
declare const DAILY_REPORT_SSE_VISIBILITY_REFRESH_MS = 60000;
|
|
1618
|
-
declare const DAILY_REPORT_SSE_CATCH_UP_BATCH = 1000;
|
|
1619
1590
|
type DailyReportHandlersConfig = {
|
|
1620
1591
|
authenticate: DailyReportAuthenticate;
|
|
1621
1592
|
resolveVisibleSourceTypes?: DailyReportResolveVisibleSourceTypes;
|
|
@@ -1633,9 +1604,9 @@ type DailyReportHandlersConfig = {
|
|
|
1633
1604
|
enableDevCacheClear?: boolean;
|
|
1634
1605
|
logger?: DailyReportLogger;
|
|
1635
1606
|
};
|
|
1636
|
-
|
|
1607
|
+
type DailyReportHandlers = {
|
|
1637
1608
|
index: {
|
|
1638
|
-
loader: (
|
|
1609
|
+
loader: (args: ResourceRouteArgs) => Promise<{
|
|
1639
1610
|
data: {
|
|
1640
1611
|
user: {
|
|
1641
1612
|
id: string;
|
|
@@ -1646,16 +1617,43 @@ declare function createDailyReportHandlers(config: DailyReportHandlersConfig): {
|
|
|
1646
1617
|
}>;
|
|
1647
1618
|
};
|
|
1648
1619
|
api: {
|
|
1649
|
-
loader: (args:
|
|
1650
|
-
action: (args:
|
|
1620
|
+
loader: (args: ResourceRouteArgs) => Promise<Response>;
|
|
1621
|
+
action: (args: ResourceRouteArgs) => Promise<Response>;
|
|
1651
1622
|
};
|
|
1652
1623
|
sse: {
|
|
1653
|
-
loader: (args:
|
|
1624
|
+
loader: (args: ResourceRouteArgs) => Promise<Response>;
|
|
1654
1625
|
};
|
|
1655
1626
|
attachment: {
|
|
1656
|
-
loader: (args:
|
|
1627
|
+
loader: (args: ResourceRouteArgs) => Promise<Response>;
|
|
1657
1628
|
};
|
|
1658
1629
|
};
|
|
1630
|
+
declare function createDailyReportHandlers(config: DailyReportHandlersConfig): DailyReportHandlers;
|
|
1631
|
+
declare const isStreamIdLte: (a: string, b: string) => boolean;
|
|
1632
|
+
type DailyReportSseReaderConfig = {
|
|
1633
|
+
redis?: DailyReportRedisProvider;
|
|
1634
|
+
streamKey: string;
|
|
1635
|
+
cache: SqlResultCache;
|
|
1636
|
+
logger?: DailyReportLogger;
|
|
1637
|
+
};
|
|
1638
|
+
declare class DailyReportSseReader implements DailyReportSseReaderPort {
|
|
1639
|
+
private readonly config;
|
|
1640
|
+
private _source;
|
|
1641
|
+
private _lastId;
|
|
1642
|
+
private _positioning;
|
|
1643
|
+
private _generation;
|
|
1644
|
+
private readonly _logger;
|
|
1645
|
+
constructor(config: DailyReportSseReaderConfig);
|
|
1646
|
+
ready(): Promise<void>;
|
|
1647
|
+
subscribe(onEntry: (entry: StreamEntry) => void, onError: (err: Error) => void): () => void;
|
|
1648
|
+
destroy(): Promise<void>;
|
|
1649
|
+
private _position;
|
|
1650
|
+
private _readTail;
|
|
1651
|
+
private _createSource;
|
|
1652
|
+
private _start;
|
|
1653
|
+
private _readLoop;
|
|
1654
|
+
private _invalidateCaches;
|
|
1655
|
+
}
|
|
1656
|
+
declare const generateETag: (data: unknown) => string;
|
|
1659
1657
|
declare const jsonResponseWithETag: (request: Request, cookie: string | null, payload: Record<string, unknown>, status?: number, logger?: DailyReportLogger) => Response;
|
|
1660
1658
|
type SharpHeaderLike = {
|
|
1661
1659
|
width: number;
|
|
@@ -1749,6 +1747,8 @@ declare const DAILY_REPORT_SHARP_THUMBNAIL_DECODE_WORK_MODEL: Readonly<{
|
|
|
1749
1747
|
}>;
|
|
1750
1748
|
declare const predictSharpThumbnailWorkingSetBytes: (source: Uint8Array, format: DailyReportAttachmentThumbnailSourceFormat, header: SharpHeaderLike) => number | null;
|
|
1751
1749
|
declare const createSharpThumbnailRenderer: (sharp: SharpLike) => DailyReportAttachmentThumbnailRenderer;
|
|
1750
|
+
declare const DAILY_REPORT_SSE_VISIBILITY_REFRESH_MS = 60000;
|
|
1751
|
+
declare const DAILY_REPORT_SSE_CATCH_UP_BATCH = 1000;
|
|
1752
1752
|
type DailyReportServerConfig = Omit<DailyReportServiceConfig, "cache" | "epochs"> & {
|
|
1753
1753
|
authenticate: DailyReportAuthenticate;
|
|
1754
1754
|
resolveVisibleSourceTypes?: DailyReportResolveVisibleSourceTypes;
|
|
@@ -1762,92 +1762,13 @@ type DailyReportServerConfig = Omit<DailyReportServiceConfig, "cache" | "epochs"
|
|
|
1762
1762
|
cacheDefaultTtlMs?: number;
|
|
1763
1763
|
externalSources?: DailyReportExternalSource[];
|
|
1764
1764
|
};
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
loader: ({ request }: {
|
|
1768
|
-
request: Request;
|
|
1769
|
-
params: Record<string, string | undefined>;
|
|
1770
|
-
}) => Promise<{
|
|
1771
|
-
data: {
|
|
1772
|
-
user: {
|
|
1773
|
-
id: string;
|
|
1774
|
-
};
|
|
1775
|
-
userId: string | null;
|
|
1776
|
-
};
|
|
1777
|
-
headers: Headers;
|
|
1778
|
-
}>;
|
|
1779
|
-
};
|
|
1780
|
-
api: {
|
|
1781
|
-
loader: (args: {
|
|
1782
|
-
request: Request;
|
|
1783
|
-
params: Record<string, string | undefined>;
|
|
1784
|
-
}) => Promise<Response>;
|
|
1785
|
-
action: (args: {
|
|
1786
|
-
request: Request;
|
|
1787
|
-
params: Record<string, string | undefined>;
|
|
1788
|
-
}) => Promise<Response>;
|
|
1789
|
-
};
|
|
1790
|
-
sse: {
|
|
1791
|
-
loader: (args: {
|
|
1792
|
-
request: Request;
|
|
1793
|
-
params: Record<string, string | undefined>;
|
|
1794
|
-
}) => Promise<Response>;
|
|
1795
|
-
};
|
|
1796
|
-
attachment: {
|
|
1797
|
-
loader: (args: {
|
|
1798
|
-
request: Request;
|
|
1799
|
-
params: Record<string, string | undefined>;
|
|
1800
|
-
}) => Promise<Response>;
|
|
1801
|
-
};
|
|
1802
|
-
service: {
|
|
1803
|
-
streamKey: string;
|
|
1804
|
-
streamMaxLen: number;
|
|
1805
|
-
attachmentDelivery: DailyReportAttachmentDelivery;
|
|
1806
|
-
clearCache: () => Promise<void>;
|
|
1807
|
-
invalidateHubReadCaches: (hubIds: readonly number[], businessDates: readonly string[]) => Promise<void>;
|
|
1808
|
-
getUserIdByExternalId: (externalId: string) => Promise<number | null>;
|
|
1809
|
-
getDailyReportIdsByExternalId: (scope: DailyReportViewerScope, externalId: string, { forceRefresh, snapshot, ttlMsOverride, onFetchStart }?: SqlResultCacheQueryOptions & {
|
|
1810
|
-
onFetchStart?: () => void;
|
|
1811
|
-
}) => Promise<DailyReportIdsSource>;
|
|
1812
|
-
getDailyReportIdsFirstPageByExternalId: (scope: DailyReportViewerScope, externalId: string, limit: number) => Promise<DailyReportItem[]>;
|
|
1813
|
-
readSseStreamAnchor: () => Promise<string | null>;
|
|
1814
|
-
getDailyReportsByBusinessDate: (scope: DailyReportViewerScope, businessDate: string, { forceRefresh, snapshot, ttlMsOverride }?: SqlResultCacheQueryOptions) => Promise<DailyReportDetail[]>;
|
|
1815
|
-
getDailyReportsByBusinessDateByExternalId: (scope: DailyReportViewerScope, businessDate: string, externalId: string, { forceRefresh, snapshot, ttlMsOverride }?: SqlResultCacheQueryOptions) => Promise<DailyReportDetail[]>;
|
|
1816
|
-
getDailyReportDetailById: (scope: DailyReportViewerScope, reportHubId: number, userId: number, { forceRefresh, snapshot, ttlMsOverride }?: SqlResultCacheQueryOptions) => Promise<DailyReportDetail | null>;
|
|
1817
|
-
getDailyReportDetailByIdByExternalId: (scope: DailyReportViewerScope, reportHubId: number, externalId: string, options?: SqlResultCacheQueryOptions) => Promise<DailyReportDetail | null>;
|
|
1818
|
-
getDraftLabelId: () => Promise<number | null>;
|
|
1819
|
-
getAttachmentsByHubIds: (hubIds: number[]) => Promise<Map<number, DailyReportAttachmentSummary[]>>;
|
|
1820
|
-
getAttachmentForUser: (scope: DailyReportViewerScope, attachmentId: number, userId: number) => Promise<{
|
|
1821
|
-
fileName: string;
|
|
1822
|
-
filePath: string;
|
|
1823
|
-
fileType: string | null;
|
|
1824
|
-
fileSize: number | null;
|
|
1825
|
-
} | null>;
|
|
1826
|
-
markAttachmentMissing: (attachmentId: number) => Promise<void>;
|
|
1827
|
-
markAttachmentPresent: (attachmentId: number) => Promise<void>;
|
|
1828
|
-
setStarStatus: (scope: DailyReportViewerScope, userId: number, reportHubId: number, businessDate: string | null, isStarred: boolean, clientTempId: string) => Promise<DailyReportUserStatusRow>;
|
|
1829
|
-
setReadStatus: (scope: DailyReportViewerScope, userId: number, reportHubId: number, businessDate: string | null, isRead: boolean, clientTempId: string) => Promise<DailyReportUserStatusRow>;
|
|
1830
|
-
addComment: (scope: DailyReportViewerScope, userId: number, reportHubId: number, content: string, businessDate: string | null, clientTempId: string) => Promise<DailyReportPostedComment>;
|
|
1831
|
-
deleteComment: (scope: DailyReportViewerScope, userId: number, reportHubId: number, commentId: number, businessDate: string | null, clientTempId: string) => Promise<void>;
|
|
1832
|
-
createDailyReport: (userId: number, businessDate: string, clientTempId: string) => Promise<DailyReportDetail>;
|
|
1833
|
-
updateDailyReport: (reportHubId: number, userId: number, data: {
|
|
1834
|
-
title?: string;
|
|
1835
|
-
content?: string;
|
|
1836
|
-
}, clientTempId: string) => Promise<void>;
|
|
1837
|
-
publishDailyReport: (reportHubId: number, userId: number, clientTempId: string) => Promise<DailyReportDetail | null>;
|
|
1838
|
-
deleteDailyReport: (reportHubId: number, userId: number, clientTempId: string) => Promise<void>;
|
|
1839
|
-
findDailyReportHubById: (tx: DailyReportDb, reportHubId: number) => Promise<DailyReportHubRow[]>;
|
|
1840
|
-
updateDailyReportHub: (tx: DailyReportDb, reportHubId: number, data: Partial<DailyReportHubRow>) => Promise<void>;
|
|
1841
|
-
updateDailyReportInternal: (tx: DailyReportDb, hubId: number, data: Partial<DailyReportInternalRow>) => Promise<void>;
|
|
1842
|
-
deleteDailyReportLabel: (tx: DailyReportDb, hubId: number, labelId: number) => Promise<void>;
|
|
1843
|
-
};
|
|
1765
|
+
type DailyReportServer = DailyReportHandlers & {
|
|
1766
|
+
service: DailyReportService;
|
|
1844
1767
|
cache: SqlResultCache;
|
|
1845
|
-
epochs:
|
|
1846
|
-
getEpoch(epochKey: string): Promise<number | null>;
|
|
1847
|
-
incrementEpoch(epochKey: string): Promise<void>;
|
|
1848
|
-
};
|
|
1768
|
+
epochs: EpochStore;
|
|
1849
1769
|
sseReader: DailyReportSseReader;
|
|
1850
1770
|
streamKey: string;
|
|
1851
1771
|
knownSourceTypes: readonly string[];
|
|
1852
1772
|
};
|
|
1853
|
-
|
|
1773
|
+
declare function createDailyReportServer(config: DailyReportServerConfig): DailyReportServer;
|
|
1774
|
+
export { DAILY_REPORT_ATTACHMENT_THUMBNAIL_MAX_OUTPUT_BYTES, DAILY_REPORT_ATTACHMENT_THUMBNAIL_OUTPUT_MEDIA_TYPES, DAILY_REPORT_SHARP_THUMBNAIL_DECODE_BUDGET_BYTES, DAILY_REPORT_SHARP_THUMBNAIL_DECODE_WORK_MODEL, DAILY_REPORT_SHARP_THUMBNAIL_WORKING_SET_MODEL, DAILY_REPORT_SSE_CATCH_UP_BATCH, DAILY_REPORT_SSE_VISIBILITY_REFRESH_MS, type DailyReportAttachmentDelivery, type DailyReportAttachmentError, type DailyReportAttachmentFailure, type DailyReportAttachmentThumbnail, type DailyReportAttachmentThumbnailOutputMediaType, type DailyReportAttachmentThumbnailRenderer, type DailyReportAttachmentThumbnailSourceFormat, type DailyReportAuthResult, type DailyReportAuthenticate, type DailyReportDb, type DailyReportHandlers, type DailyReportHandlersConfig, type DailyReportIdCodec, type DailyReportReadAttachment, type DailyReportRedisProvider, type DailyReportServer, type DailyReportServerConfig, type DailyReportServiceConfig, DailyReportSseReader, type DailyReportSseReaderPort, type DailyReportTables, DailyReportViewerScope, type ExternalReportFields, type SharpLike, SqlResultCache, type StreamEntry, createDailyReportHandlers, createDailyReportServer, createDailyReportService, createEpochStore, createSharpThumbnailRenderer, defineDailyReportSchema, generateETag, isStreamIdLte, jsonResponseWithETag, predictSharpThumbnailWorkingSetBytes, transformJsonArray };
|
package/dist/server.d.ts
CHANGED
|
@@ -1,14 +1,7 @@
|
|
|
1
|
-
import { g as DailyReportInterviewer, e as DailyReportExternalComment, D as DailyReportItem, b as DailyReportDetail, d as DailyReportAttachmentSummary, i as DailyReportPostedComment } from "./ids-stream-CWuIDrIO.js";
|
|
2
|
-
export { k as DAILY_REPORT_IDS_STREAM_ENDPOINT } from "./ids-stream-CWuIDrIO.js";
|
|
3
|
-
import { TransactionRetryOptions } from "@aiquants/mssql";
|
|
4
1
|
import * as drizzle_orm_mssql_core from "drizzle-orm/mssql-core";
|
|
5
2
|
import { AnyMsSqlColumn } from "drizzle-orm/mssql-core";
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
info(message?: unknown, ...optionalParams: unknown[]): void;
|
|
9
|
-
warn(message?: unknown, ...optionalParams: unknown[]): void;
|
|
10
|
-
error(message?: unknown, ...optionalParams: unknown[]): void;
|
|
11
|
-
}
|
|
3
|
+
import { e as DailyReportInterviewer, d as DailyReportExternalComment, D as DailyReportItem, b as DailyReportDetail, c as DailyReportAttachmentSummary, g as DailyReportPostedComment } from "./types-DkERw8NE.js";
|
|
4
|
+
import { TransactionRetryOptions } from "@aiquants/mssql";
|
|
12
5
|
type RedisStreamMessage = {
|
|
13
6
|
id: string;
|
|
14
7
|
message: Record<string, string>;
|
|
@@ -161,6 +154,12 @@ declare class SqlResultCache {
|
|
|
161
154
|
invalidatePrefix: (prefix: string) => void;
|
|
162
155
|
private cleanExpired;
|
|
163
156
|
}
|
|
157
|
+
interface DailyReportLogger {
|
|
158
|
+
debug(message?: unknown, ...optionalParams: unknown[]): void;
|
|
159
|
+
info(message?: unknown, ...optionalParams: unknown[]): void;
|
|
160
|
+
warn(message?: unknown, ...optionalParams: unknown[]): void;
|
|
161
|
+
error(message?: unknown, ...optionalParams: unknown[]): void;
|
|
162
|
+
}
|
|
164
163
|
type ExternalReportFields = {
|
|
165
164
|
content?: string | null;
|
|
166
165
|
employeeName?: string | null;
|
|
@@ -179,6 +178,10 @@ type DailyReportExternalSource = {
|
|
|
179
178
|
mapRow: (row: Record<string, unknown>) => ExternalReportFields;
|
|
180
179
|
};
|
|
181
180
|
declare const transformJsonArray: <TRaw, TResult>(payload: string | null, label: string, mapper: (raw: TRaw) => TResult | null, logger?: DailyReportLogger) => TResult[];
|
|
181
|
+
type ResourceRouteArgs = {
|
|
182
|
+
request: Request;
|
|
183
|
+
params: Record<string, string | undefined>;
|
|
184
|
+
};
|
|
182
185
|
type DailyReportUserTable = {
|
|
183
186
|
id: AnyMsSqlColumn;
|
|
184
187
|
displayName: AnyMsSqlColumn;
|
|
@@ -1584,38 +1587,6 @@ declare function createDailyReportService(config: DailyReportServiceConfig): {
|
|
|
1584
1587
|
updateDailyReportInternal: (tx: DailyReportDb, hubId: number, data: Partial<DailyReportInternalRow>) => Promise<void>;
|
|
1585
1588
|
deleteDailyReportLabel: (tx: DailyReportDb, hubId: number, labelId: number) => Promise<void>;
|
|
1586
1589
|
};
|
|
1587
|
-
declare const isStreamIdLte: (a: string, b: string) => boolean;
|
|
1588
|
-
type DailyReportSseReaderConfig = {
|
|
1589
|
-
redis?: DailyReportRedisProvider;
|
|
1590
|
-
streamKey: string;
|
|
1591
|
-
cache: SqlResultCache;
|
|
1592
|
-
logger?: DailyReportLogger;
|
|
1593
|
-
};
|
|
1594
|
-
declare class DailyReportSseReader implements DailyReportSseReaderPort {
|
|
1595
|
-
private readonly config;
|
|
1596
|
-
private _source;
|
|
1597
|
-
private _lastId;
|
|
1598
|
-
private _positioning;
|
|
1599
|
-
private _generation;
|
|
1600
|
-
private readonly _logger;
|
|
1601
|
-
constructor(config: DailyReportSseReaderConfig);
|
|
1602
|
-
ready(): Promise<void>;
|
|
1603
|
-
subscribe(onEntry: (entry: StreamEntry) => void, onError: (err: Error) => void): () => void;
|
|
1604
|
-
destroy(): Promise<void>;
|
|
1605
|
-
private _position;
|
|
1606
|
-
private _readTail;
|
|
1607
|
-
private _createSource;
|
|
1608
|
-
private _start;
|
|
1609
|
-
private _readLoop;
|
|
1610
|
-
private _invalidateCaches;
|
|
1611
|
-
}
|
|
1612
|
-
declare const generateETag: (data: unknown) => string;
|
|
1613
|
-
type LoaderArgs = {
|
|
1614
|
-
request: Request;
|
|
1615
|
-
params: Record<string, string | undefined>;
|
|
1616
|
-
};
|
|
1617
|
-
declare const DAILY_REPORT_SSE_VISIBILITY_REFRESH_MS = 60000;
|
|
1618
|
-
declare const DAILY_REPORT_SSE_CATCH_UP_BATCH = 1000;
|
|
1619
1590
|
type DailyReportHandlersConfig = {
|
|
1620
1591
|
authenticate: DailyReportAuthenticate;
|
|
1621
1592
|
resolveVisibleSourceTypes?: DailyReportResolveVisibleSourceTypes;
|
|
@@ -1633,9 +1604,9 @@ type DailyReportHandlersConfig = {
|
|
|
1633
1604
|
enableDevCacheClear?: boolean;
|
|
1634
1605
|
logger?: DailyReportLogger;
|
|
1635
1606
|
};
|
|
1636
|
-
|
|
1607
|
+
type DailyReportHandlers = {
|
|
1637
1608
|
index: {
|
|
1638
|
-
loader: (
|
|
1609
|
+
loader: (args: ResourceRouteArgs) => Promise<{
|
|
1639
1610
|
data: {
|
|
1640
1611
|
user: {
|
|
1641
1612
|
id: string;
|
|
@@ -1646,16 +1617,43 @@ declare function createDailyReportHandlers(config: DailyReportHandlersConfig): {
|
|
|
1646
1617
|
}>;
|
|
1647
1618
|
};
|
|
1648
1619
|
api: {
|
|
1649
|
-
loader: (args:
|
|
1650
|
-
action: (args:
|
|
1620
|
+
loader: (args: ResourceRouteArgs) => Promise<Response>;
|
|
1621
|
+
action: (args: ResourceRouteArgs) => Promise<Response>;
|
|
1651
1622
|
};
|
|
1652
1623
|
sse: {
|
|
1653
|
-
loader: (args:
|
|
1624
|
+
loader: (args: ResourceRouteArgs) => Promise<Response>;
|
|
1654
1625
|
};
|
|
1655
1626
|
attachment: {
|
|
1656
|
-
loader: (args:
|
|
1627
|
+
loader: (args: ResourceRouteArgs) => Promise<Response>;
|
|
1657
1628
|
};
|
|
1658
1629
|
};
|
|
1630
|
+
declare function createDailyReportHandlers(config: DailyReportHandlersConfig): DailyReportHandlers;
|
|
1631
|
+
declare const isStreamIdLte: (a: string, b: string) => boolean;
|
|
1632
|
+
type DailyReportSseReaderConfig = {
|
|
1633
|
+
redis?: DailyReportRedisProvider;
|
|
1634
|
+
streamKey: string;
|
|
1635
|
+
cache: SqlResultCache;
|
|
1636
|
+
logger?: DailyReportLogger;
|
|
1637
|
+
};
|
|
1638
|
+
declare class DailyReportSseReader implements DailyReportSseReaderPort {
|
|
1639
|
+
private readonly config;
|
|
1640
|
+
private _source;
|
|
1641
|
+
private _lastId;
|
|
1642
|
+
private _positioning;
|
|
1643
|
+
private _generation;
|
|
1644
|
+
private readonly _logger;
|
|
1645
|
+
constructor(config: DailyReportSseReaderConfig);
|
|
1646
|
+
ready(): Promise<void>;
|
|
1647
|
+
subscribe(onEntry: (entry: StreamEntry) => void, onError: (err: Error) => void): () => void;
|
|
1648
|
+
destroy(): Promise<void>;
|
|
1649
|
+
private _position;
|
|
1650
|
+
private _readTail;
|
|
1651
|
+
private _createSource;
|
|
1652
|
+
private _start;
|
|
1653
|
+
private _readLoop;
|
|
1654
|
+
private _invalidateCaches;
|
|
1655
|
+
}
|
|
1656
|
+
declare const generateETag: (data: unknown) => string;
|
|
1659
1657
|
declare const jsonResponseWithETag: (request: Request, cookie: string | null, payload: Record<string, unknown>, status?: number, logger?: DailyReportLogger) => Response;
|
|
1660
1658
|
type SharpHeaderLike = {
|
|
1661
1659
|
width: number;
|
|
@@ -1749,6 +1747,8 @@ declare const DAILY_REPORT_SHARP_THUMBNAIL_DECODE_WORK_MODEL: Readonly<{
|
|
|
1749
1747
|
}>;
|
|
1750
1748
|
declare const predictSharpThumbnailWorkingSetBytes: (source: Uint8Array, format: DailyReportAttachmentThumbnailSourceFormat, header: SharpHeaderLike) => number | null;
|
|
1751
1749
|
declare const createSharpThumbnailRenderer: (sharp: SharpLike) => DailyReportAttachmentThumbnailRenderer;
|
|
1750
|
+
declare const DAILY_REPORT_SSE_VISIBILITY_REFRESH_MS = 60000;
|
|
1751
|
+
declare const DAILY_REPORT_SSE_CATCH_UP_BATCH = 1000;
|
|
1752
1752
|
type DailyReportServerConfig = Omit<DailyReportServiceConfig, "cache" | "epochs"> & {
|
|
1753
1753
|
authenticate: DailyReportAuthenticate;
|
|
1754
1754
|
resolveVisibleSourceTypes?: DailyReportResolveVisibleSourceTypes;
|
|
@@ -1762,92 +1762,13 @@ type DailyReportServerConfig = Omit<DailyReportServiceConfig, "cache" | "epochs"
|
|
|
1762
1762
|
cacheDefaultTtlMs?: number;
|
|
1763
1763
|
externalSources?: DailyReportExternalSource[];
|
|
1764
1764
|
};
|
|
1765
|
-
|
|
1766
|
-
|
|
1767
|
-
loader: ({ request }: {
|
|
1768
|
-
request: Request;
|
|
1769
|
-
params: Record<string, string | undefined>;
|
|
1770
|
-
}) => Promise<{
|
|
1771
|
-
data: {
|
|
1772
|
-
user: {
|
|
1773
|
-
id: string;
|
|
1774
|
-
};
|
|
1775
|
-
userId: string | null;
|
|
1776
|
-
};
|
|
1777
|
-
headers: Headers;
|
|
1778
|
-
}>;
|
|
1779
|
-
};
|
|
1780
|
-
api: {
|
|
1781
|
-
loader: (args: {
|
|
1782
|
-
request: Request;
|
|
1783
|
-
params: Record<string, string | undefined>;
|
|
1784
|
-
}) => Promise<Response>;
|
|
1785
|
-
action: (args: {
|
|
1786
|
-
request: Request;
|
|
1787
|
-
params: Record<string, string | undefined>;
|
|
1788
|
-
}) => Promise<Response>;
|
|
1789
|
-
};
|
|
1790
|
-
sse: {
|
|
1791
|
-
loader: (args: {
|
|
1792
|
-
request: Request;
|
|
1793
|
-
params: Record<string, string | undefined>;
|
|
1794
|
-
}) => Promise<Response>;
|
|
1795
|
-
};
|
|
1796
|
-
attachment: {
|
|
1797
|
-
loader: (args: {
|
|
1798
|
-
request: Request;
|
|
1799
|
-
params: Record<string, string | undefined>;
|
|
1800
|
-
}) => Promise<Response>;
|
|
1801
|
-
};
|
|
1802
|
-
service: {
|
|
1803
|
-
streamKey: string;
|
|
1804
|
-
streamMaxLen: number;
|
|
1805
|
-
attachmentDelivery: DailyReportAttachmentDelivery;
|
|
1806
|
-
clearCache: () => Promise<void>;
|
|
1807
|
-
invalidateHubReadCaches: (hubIds: readonly number[], businessDates: readonly string[]) => Promise<void>;
|
|
1808
|
-
getUserIdByExternalId: (externalId: string) => Promise<number | null>;
|
|
1809
|
-
getDailyReportIdsByExternalId: (scope: DailyReportViewerScope, externalId: string, { forceRefresh, snapshot, ttlMsOverride, onFetchStart }?: SqlResultCacheQueryOptions & {
|
|
1810
|
-
onFetchStart?: () => void;
|
|
1811
|
-
}) => Promise<DailyReportIdsSource>;
|
|
1812
|
-
getDailyReportIdsFirstPageByExternalId: (scope: DailyReportViewerScope, externalId: string, limit: number) => Promise<DailyReportItem[]>;
|
|
1813
|
-
readSseStreamAnchor: () => Promise<string | null>;
|
|
1814
|
-
getDailyReportsByBusinessDate: (scope: DailyReportViewerScope, businessDate: string, { forceRefresh, snapshot, ttlMsOverride }?: SqlResultCacheQueryOptions) => Promise<DailyReportDetail[]>;
|
|
1815
|
-
getDailyReportsByBusinessDateByExternalId: (scope: DailyReportViewerScope, businessDate: string, externalId: string, { forceRefresh, snapshot, ttlMsOverride }?: SqlResultCacheQueryOptions) => Promise<DailyReportDetail[]>;
|
|
1816
|
-
getDailyReportDetailById: (scope: DailyReportViewerScope, reportHubId: number, userId: number, { forceRefresh, snapshot, ttlMsOverride }?: SqlResultCacheQueryOptions) => Promise<DailyReportDetail | null>;
|
|
1817
|
-
getDailyReportDetailByIdByExternalId: (scope: DailyReportViewerScope, reportHubId: number, externalId: string, options?: SqlResultCacheQueryOptions) => Promise<DailyReportDetail | null>;
|
|
1818
|
-
getDraftLabelId: () => Promise<number | null>;
|
|
1819
|
-
getAttachmentsByHubIds: (hubIds: number[]) => Promise<Map<number, DailyReportAttachmentSummary[]>>;
|
|
1820
|
-
getAttachmentForUser: (scope: DailyReportViewerScope, attachmentId: number, userId: number) => Promise<{
|
|
1821
|
-
fileName: string;
|
|
1822
|
-
filePath: string;
|
|
1823
|
-
fileType: string | null;
|
|
1824
|
-
fileSize: number | null;
|
|
1825
|
-
} | null>;
|
|
1826
|
-
markAttachmentMissing: (attachmentId: number) => Promise<void>;
|
|
1827
|
-
markAttachmentPresent: (attachmentId: number) => Promise<void>;
|
|
1828
|
-
setStarStatus: (scope: DailyReportViewerScope, userId: number, reportHubId: number, businessDate: string | null, isStarred: boolean, clientTempId: string) => Promise<DailyReportUserStatusRow>;
|
|
1829
|
-
setReadStatus: (scope: DailyReportViewerScope, userId: number, reportHubId: number, businessDate: string | null, isRead: boolean, clientTempId: string) => Promise<DailyReportUserStatusRow>;
|
|
1830
|
-
addComment: (scope: DailyReportViewerScope, userId: number, reportHubId: number, content: string, businessDate: string | null, clientTempId: string) => Promise<DailyReportPostedComment>;
|
|
1831
|
-
deleteComment: (scope: DailyReportViewerScope, userId: number, reportHubId: number, commentId: number, businessDate: string | null, clientTempId: string) => Promise<void>;
|
|
1832
|
-
createDailyReport: (userId: number, businessDate: string, clientTempId: string) => Promise<DailyReportDetail>;
|
|
1833
|
-
updateDailyReport: (reportHubId: number, userId: number, data: {
|
|
1834
|
-
title?: string;
|
|
1835
|
-
content?: string;
|
|
1836
|
-
}, clientTempId: string) => Promise<void>;
|
|
1837
|
-
publishDailyReport: (reportHubId: number, userId: number, clientTempId: string) => Promise<DailyReportDetail | null>;
|
|
1838
|
-
deleteDailyReport: (reportHubId: number, userId: number, clientTempId: string) => Promise<void>;
|
|
1839
|
-
findDailyReportHubById: (tx: DailyReportDb, reportHubId: number) => Promise<DailyReportHubRow[]>;
|
|
1840
|
-
updateDailyReportHub: (tx: DailyReportDb, reportHubId: number, data: Partial<DailyReportHubRow>) => Promise<void>;
|
|
1841
|
-
updateDailyReportInternal: (tx: DailyReportDb, hubId: number, data: Partial<DailyReportInternalRow>) => Promise<void>;
|
|
1842
|
-
deleteDailyReportLabel: (tx: DailyReportDb, hubId: number, labelId: number) => Promise<void>;
|
|
1843
|
-
};
|
|
1765
|
+
type DailyReportServer = DailyReportHandlers & {
|
|
1766
|
+
service: DailyReportService;
|
|
1844
1767
|
cache: SqlResultCache;
|
|
1845
|
-
epochs:
|
|
1846
|
-
getEpoch(epochKey: string): Promise<number | null>;
|
|
1847
|
-
incrementEpoch(epochKey: string): Promise<void>;
|
|
1848
|
-
};
|
|
1768
|
+
epochs: EpochStore;
|
|
1849
1769
|
sseReader: DailyReportSseReader;
|
|
1850
1770
|
streamKey: string;
|
|
1851
1771
|
knownSourceTypes: readonly string[];
|
|
1852
1772
|
};
|
|
1853
|
-
|
|
1773
|
+
declare function createDailyReportServer(config: DailyReportServerConfig): DailyReportServer;
|
|
1774
|
+
export { DAILY_REPORT_ATTACHMENT_THUMBNAIL_MAX_OUTPUT_BYTES, DAILY_REPORT_ATTACHMENT_THUMBNAIL_OUTPUT_MEDIA_TYPES, DAILY_REPORT_SHARP_THUMBNAIL_DECODE_BUDGET_BYTES, DAILY_REPORT_SHARP_THUMBNAIL_DECODE_WORK_MODEL, DAILY_REPORT_SHARP_THUMBNAIL_WORKING_SET_MODEL, DAILY_REPORT_SSE_CATCH_UP_BATCH, DAILY_REPORT_SSE_VISIBILITY_REFRESH_MS, type DailyReportAttachmentDelivery, type DailyReportAttachmentError, type DailyReportAttachmentFailure, type DailyReportAttachmentThumbnail, type DailyReportAttachmentThumbnailOutputMediaType, type DailyReportAttachmentThumbnailRenderer, type DailyReportAttachmentThumbnailSourceFormat, type DailyReportAuthResult, type DailyReportAuthenticate, type DailyReportDb, type DailyReportHandlers, type DailyReportHandlersConfig, type DailyReportIdCodec, type DailyReportReadAttachment, type DailyReportRedisProvider, type DailyReportServer, type DailyReportServerConfig, type DailyReportServiceConfig, DailyReportSseReader, type DailyReportSseReaderPort, type DailyReportTables, DailyReportViewerScope, type ExternalReportFields, type SharpLike, SqlResultCache, type StreamEntry, createDailyReportHandlers, createDailyReportServer, createDailyReportService, createEpochStore, createSharpThumbnailRenderer, defineDailyReportSchema, generateETag, isStreamIdLte, jsonResponseWithETag, predictSharpThumbnailWorkingSetBytes, transformJsonArray };
|