@eightyfourthousand/data-access 2026.5.5 → 2026.6.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.
@@ -1 +1 @@
1
- export declare const createBrowserClient: () => import("@supabase/supabase-js").SupabaseClient<any, "public", any, any, any>;
1
+ export declare const createBrowserClient: () => import("@supabase/supabase-js").SupabaseClient<any, "public", "public", any, any>;
@@ -3,4 +3,4 @@ import type { DataClient } from './types/client';
3
3
  export declare const createAnonServerClient: () => DataClient;
4
4
  export declare const createServerClient: ({ cookies, }: {
5
5
  cookies: CookieMethodsServer;
6
- }) => import("@supabase/supabase-js").SupabaseClient<any, "public", any, any, any>;
6
+ }) => import("@supabase/supabase-js").SupabaseClient<any, "public", "public", any, any>;
@@ -1 +1 @@
1
- export declare const createServerClient: () => Promise<import("@supabase/supabase-js").SupabaseClient<any, "public", any, any, any>>;
1
+ export declare const createServerClient: () => Promise<import("@supabase/supabase-js").SupabaseClient<any, "public", "public", any, any>>;
package/lib/folio.d.ts CHANGED
@@ -1,11 +1,52 @@
1
1
  import { DataClient, TohokuCatalogEntry } from './types';
2
+ import { Folio, FoliosAround } from './types/folio';
2
3
  type GetWorkFoliosArgs = {
3
4
  client: DataClient;
4
5
  uuid: string;
5
6
  toh: TohokuCatalogEntry;
6
7
  page?: number;
7
8
  size?: number;
9
+ /**
10
+ * Absolute offset into the ordered folio list. When provided, takes
11
+ * precedence over `page` (which is otherwise `page * size`).
12
+ */
13
+ offset?: number;
8
14
  };
9
- export declare const getWorkFolios: ({ client, uuid, toh, page, size, }: GetWorkFoliosArgs) => Promise<import("./types").Folio[]>;
10
- export declare const getFolios: ({ uuid, toh, page, size, }: Omit<GetWorkFoliosArgs, "client">) => Promise<import("./types").Folio[]>;
15
+ export declare const getWorkFolios: ({ client, uuid, toh, page, size, offset, }: GetWorkFoliosArgs) => Promise<Folio[]>;
16
+ type GetWorkFoliosAroundArgs = {
17
+ client: DataClient;
18
+ uuid: string;
19
+ toh: TohokuCatalogEntry;
20
+ folioUuid: string;
21
+ before?: number;
22
+ after?: number;
23
+ };
24
+ /**
25
+ * Fetch a window of folios centered on a target folio, plus flags indicating
26
+ * whether more folios exist before/after the window. Returns `null` when the
27
+ * folio isn't part of the work/toh.
28
+ */
29
+ export declare const getWorkFoliosAround: ({ client, uuid, toh, folioUuid, before, after, }: GetWorkFoliosAroundArgs) => Promise<FoliosAround | null>;
30
+ type FolioLocation = {
31
+ workUuid: string;
32
+ folioUuid: string;
33
+ toh: TohokuCatalogEntry;
34
+ };
35
+ /**
36
+ * Resolve a single folio by its UUID to its parent work + toh. Used by entity
37
+ * lookup to build a deep link into the work's source tab.
38
+ */
39
+ export declare const getFolioLocation: ({ client, uuid, }: {
40
+ client: DataClient;
41
+ uuid: string;
42
+ }) => Promise<FolioLocation | null>;
43
+ /**
44
+ * Batch-fetch folios by their UUIDs, returning a map keyed by folio UUID.
45
+ * Used by the GraphQL folio DataLoader to resolve folio mention display text.
46
+ */
47
+ export declare const getFoliosByUuids: ({ client, uuids, }: {
48
+ client: DataClient;
49
+ uuids: readonly string[];
50
+ }) => Promise<Map<string, Folio>>;
51
+ export declare const getFolios: ({ uuid, toh, page, size, }: Omit<GetWorkFoliosArgs, "client">) => Promise<Folio[]>;
11
52
  export {};
package/lib/folio.js CHANGED
@@ -1,8 +1,8 @@
1
1
  'use server';
2
2
  import { createServerClient } from './client-ssr';
3
3
  import { folioFromDTO } from './types/folio';
4
- export const getWorkFolios = async ({ client, uuid, toh, page = 0, size = 10, }) => {
5
- const start = page * size;
4
+ export const getWorkFolios = async ({ client, uuid, toh, page = 0, size = 10, offset, }) => {
5
+ const start = offset ?? page * size;
6
6
  const end = start + size - 1;
7
7
  const { data, error } = await client
8
8
  .from('tibetan_works_folios')
@@ -24,6 +24,95 @@ export const getWorkFolios = async ({ client, uuid, toh, page = 0, size = 10, })
24
24
  }
25
25
  return data.map((dto) => folioFromDTO(dto));
26
26
  };
27
+ /**
28
+ * Fetch a window of folios centered on a target folio, plus flags indicating
29
+ * whether more folios exist before/after the window. Returns `null` when the
30
+ * folio isn't part of the work/toh.
31
+ */
32
+ export const getWorkFoliosAround = async ({ client, uuid, toh, folioUuid, before = 10, after = 10, }) => {
33
+ // Resolve the target folio's position within the ordered list. Selecting
34
+ // only the uuid keeps this cheap even for works with many folios.
35
+ const { data, error } = await client
36
+ .from('tibetan_works_folios')
37
+ .select('folio_uuid')
38
+ .eq('work_uuid', uuid)
39
+ .eq('toh', toh)
40
+ .order('volume_number', { ascending: true })
41
+ .order('folio_number', { ascending: true })
42
+ .order('side', { ascending: true });
43
+ if (error) {
44
+ console.error('Error fetching folio index:', error);
45
+ return null;
46
+ }
47
+ const total = data.length;
48
+ const index = data.findIndex((row) => row.folio_uuid === folioUuid);
49
+ if (index === -1) {
50
+ return null;
51
+ }
52
+ const startIndex = Math.max(0, index - before);
53
+ const endIndex = Math.min(total - 1, index + after);
54
+ const folios = await getWorkFolios({
55
+ client,
56
+ uuid,
57
+ toh,
58
+ offset: startIndex,
59
+ size: endIndex - startIndex + 1,
60
+ });
61
+ return {
62
+ folios,
63
+ startIndex,
64
+ hasMoreBefore: startIndex > 0,
65
+ hasMoreAfter: endIndex < total - 1,
66
+ };
67
+ };
68
+ /**
69
+ * Resolve a single folio by its UUID to its parent work + toh. Used by entity
70
+ * lookup to build a deep link into the work's source tab.
71
+ */
72
+ export const getFolioLocation = async ({ client, uuid, }) => {
73
+ const { data, error } = await client
74
+ .from('tibetan_works_folios')
75
+ .select('work_uuid, folio_uuid, toh')
76
+ .eq('folio_uuid', uuid)
77
+ .single();
78
+ if (error || !data) {
79
+ console.error('Error fetching folio location:', error);
80
+ return null;
81
+ }
82
+ return {
83
+ workUuid: data.work_uuid,
84
+ folioUuid: data.folio_uuid,
85
+ toh: data.toh,
86
+ };
87
+ };
88
+ /**
89
+ * Batch-fetch folios by their UUIDs, returning a map keyed by folio UUID.
90
+ * Used by the GraphQL folio DataLoader to resolve folio mention display text.
91
+ */
92
+ export const getFoliosByUuids = async ({ client, uuids, }) => {
93
+ const foliosByUuid = new Map();
94
+ if (uuids.length === 0) {
95
+ return foliosByUuid;
96
+ }
97
+ const { data, error } = await client
98
+ .from('tibetan_works_folios')
99
+ .select(`
100
+ folio_uuid,
101
+ content::text,
102
+ volume_number::int4,
103
+ folio_number::int4,
104
+ side::text`)
105
+ .in('folio_uuid', uuids);
106
+ if (error) {
107
+ console.error('Error fetching folios by uuids:', error);
108
+ return foliosByUuid;
109
+ }
110
+ for (const dto of data) {
111
+ const folio = folioFromDTO(dto);
112
+ foliosByUuid.set(folio.uuid, folio);
113
+ }
114
+ return foliosByUuid;
115
+ };
27
116
  export const getFolios = async ({ uuid, toh, page = 0, size = 10, }) => {
28
117
  const client = await createServerClient();
29
118
  return getWorkFolios({ client, uuid, toh, page, size });
package/lib/folio.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"folio.js","sourceRoot":"","sources":["../../../../libs/data-access/src/lib/folio.ts"],"names":[],"mappings":"AAAA,YAAY,CAAC;AAEb,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAElD,OAAO,EAAY,YAAY,EAAE,MAAM,eAAe,CAAC;AAUvD,MAAM,CAAC,MAAM,aAAa,GAAG,KAAK,EAAE,EAClC,MAAM,EACN,IAAI,EACJ,GAAG,EACH,IAAI,GAAG,CAAC,EACR,IAAI,GAAG,EAAE,GACS,EAAE,EAAE;IACtB,MAAM,KAAK,GAAG,IAAI,GAAG,IAAI,CAAC;IAC1B,MAAM,GAAG,GAAG,KAAK,GAAG,IAAI,GAAG,CAAC,CAAC;IAC7B,MAAM,EAAE,IAAI,EAAE,KAAK,EAAE,GAAG,MAAM,MAAM;SACjC,IAAI,CAAC,sBAAsB,CAAC;SAC5B,MAAM,CACL;;;;;iBAKW,CACZ;SACA,EAAE,CAAC,WAAW,EAAE,IAAI,CAAC;SACrB,EAAE,CAAC,KAAK,EAAE,GAAG,CAAC;SACd,KAAK,CAAC,eAAe,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;SAC3C,KAAK,CAAC,cAAc,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;SAC1C,KAAK,CAAC,MAAM,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC;SAClC,KAAK,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;IAErB,IAAI,KAAK,EAAE,CAAC;QACV,OAAO,CAAC,KAAK,CAAC,wBAAwB,EAAE,KAAK,CAAC,CAAC;QAC/C,OAAO,EAAE,CAAC;IACZ,CAAC;IAED,OAAO,IAAI,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,YAAY,CAAC,GAAe,CAAC,CAAC,CAAC;AAC1D,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,EAAE,EAC9B,IAAI,EACJ,GAAG,EACH,IAAI,GAAG,CAAC,EACR,IAAI,GAAG,EAAE,GACyB,EAAE,EAAE;IACtC,MAAM,MAAM,GAAG,MAAM,kBAAkB,EAAE,CAAC;IAC1C,OAAO,aAAa,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC;AAC1D,CAAC,CAAC"}
1
+ {"version":3,"file":"folio.js","sourceRoot":"","sources":["../../../../libs/data-access/src/lib/folio.ts"],"names":[],"mappings":"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"}
@@ -4,8 +4,10 @@ import { getPassage, getPassageUuidByXmlId } from './passage';
4
4
  import { getTranslationMetadataByToh, getTranslationMetadataByUuid, } from './publications';
5
5
  import { panelAndTabForContentType } from './panel-url';
6
6
  import { getGlossaryInstance } from './glossary';
7
+ import { getFolioLocation } from './folio';
7
8
  const ALLOWED_TYPES = [
8
9
  'bibliography',
10
+ 'folio',
9
11
  'glossary',
10
12
  'passage',
11
13
  'translation',
@@ -43,6 +45,22 @@ export const lookupEntityWithClient = async ({ client, type, entity, prefix = ''
43
45
  path = `${prefix}/${workUuid}?${query.toString()}`;
44
46
  }
45
47
  break;
48
+ case 'folio':
49
+ {
50
+ const item = await getFolioLocation({ client, uuid: entity });
51
+ if (!item?.workUuid || !item.folioUuid) {
52
+ return {};
53
+ }
54
+ workUuid = item.workUuid;
55
+ uuid = item.folioUuid;
56
+ const { panel, tab } = panelAndTabForContentType('source');
57
+ query.set(panel, `open:${tab}:${uuid}`);
58
+ if (item.toh) {
59
+ query.set('toh', item.toh);
60
+ }
61
+ path = `${prefix}/${workUuid}?${query.toString()}`;
62
+ }
63
+ break;
46
64
  case 'glossary':
47
65
  {
48
66
  const item = await getGlossaryInstance({ client, uuid: entity });
@@ -1 +1 @@
1
- {"version":3,"file":"lookup-entity.js","sourceRoot":"","sources":["../../../../libs/data-access/src/lib/lookup-entity.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"lookup-entity.js","sourceRoot":"","sources":["../../../../libs/data-access/src/lib/lookup-entity.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,kBAAkB,EAAE,MAAM,cAAc,CAAC;AAClD,OAAO,EAAE,oBAAoB,EAAE,MAAM,gBAAgB,CAAC;AACtD,OAAO,EAAE,UAAU,EAAE,qBAAqB,EAAE,MAAM,WAAW,CAAC;AAC9D,OAAO,EACL,2BAA2B,EAC3B,4BAA4B,GAC7B,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,yBAAyB,EAAE,MAAM,aAAa,CAAC;AACxD,OAAO,EAAE,mBAAmB,EAAE,MAAM,YAAY,CAAC;AACjD,OAAO,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAG3C,MAAM,aAAa,GAAG;IACpB,cAAc;IACd,OAAO;IACP,UAAU;IACV,SAAS;IACT,aAAa;IACb,MAAM;CACP,CAAC;AASF,MAAM,CAAC,MAAM,YAAY,GAAG,KAAK,EAAE,EACjC,IAAI,EACJ,MAAM,EACN,MAAM,GAAG,EAAE,EACX,KAAK,EACL,YAAY,GAOb,EAAmC,EAAE;IACpC,IAAI,CAAC,aAAa,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QAClC,OAAO,EAAE,CAAC;IACZ,CAAC;IACD,MAAM,MAAM,GAAG,MAAM,kBAAkB,EAAE,CAAC;IAC1C,OAAO,MAAM,sBAAsB,CAAC;QAClC,MAAM;QACN,IAAI;QACJ,MAAM;QACN,MAAM;QACN,KAAK;QACL,YAAY;KACb,CAAC,CAAC;AACL,CAAC,CAAC;AAEF,MAAM,CAAC,MAAM,sBAAsB,GAAG,KAAK,EAAE,EAC3C,MAAM,EACN,IAAI,EACJ,MAAM,EACN,MAAM,GAAG,EAAE,EACX,KAAK,EACL,YAAY,GAQb,EAAmC,EAAE;IACpC,IAAI,IAAwB,CAAC;IAC7B,IAAI,QAA4B,CAAC;IACjC,IAAI,IAAwB,CAAC;IAE7B,MAAM,KAAK,GAAG,YAAY,IAAI,IAAI,eAAe,EAAE,CAAC;IAEpD,QAAQ,IAAI,EAAE,CAAC;QACb,KAAK,cAAc;YACjB,CAAC;gBACC,MAAM,IAAI,GAAG,MAAM,oBAAoB,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;gBAClE,IAAI,CAAC,IAAI,EAAE,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAClC,OAAO,EAAE,CAAC;gBACZ,CAAC;gBAED,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;gBACzB,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;gBACjB,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,qBAAqB,IAAI,EAAE,CAAC,CAAC;gBAChD,IAAI,GAAG,GAAG,MAAM,IAAI,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;YACrD,CAAC;YACD,MAAM;QACR,KAAK,OAAO;YACV,CAAC;gBACC,MAAM,IAAI,GAAG,MAAM,gBAAgB,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;gBAC9D,IAAI,CAAC,IAAI,EAAE,QAAQ,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,CAAC;oBACvC,OAAO,EAAE,CAAC;gBACZ,CAAC;gBAED,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;gBACzB,IAAI,GAAG,IAAI,CAAC,SAAS,CAAC;gBACtB,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,yBAAyB,CAAC,QAAQ,CAAC,CAAC;gBAE3D,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC;gBACxC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;oBACb,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC7B,CAAC;gBAED,IAAI,GAAG,GAAG,MAAM,IAAI,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;YACrD,CAAC;YACD,MAAM;QACR,KAAK,UAAU;YACb,CAAC;gBACC,MAAM,IAAI,GAAG,MAAM,mBAAmB,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;gBACjE,IAAI,CAAC,IAAI,EAAE,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAClC,OAAO,EAAE,CAAC;gBACZ,CAAC;gBAED,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;gBACzB,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;gBACjB,KAAK,CAAC,GAAG,CAAC,OAAO,EAAE,iBAAiB,IAAI,EAAE,CAAC,CAAC;gBAC5C,IAAI,GAAG,GAAG,MAAM,IAAI,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;YACrD,CAAC;YACD,MAAM;QACR,KAAK,SAAS;YACZ,CAAC;gBACC,MAAM,IAAI,GAAG,MAAM,UAAU,CAAC,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,CAAC,CAAC;gBACxD,IAAI,CAAC,IAAI,EAAE,QAAQ,IAAI,CAAC,IAAI,CAAC,IAAI,EAAE,CAAC;oBAClC,OAAO,EAAE,CAAC;gBACZ,CAAC;gBAED,QAAQ,GAAG,IAAI,CAAC,QAAQ,CAAC;gBACzB,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;gBACjB,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC;gBAC/C,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;gBAEtE,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;gBACpB,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC;gBACxC,IAAI,IAAI,CAAC,GAAG,EAAE,CAAC;oBACb,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,IAAI,CAAC,GAAG,CAAC,CAAC;gBAC7B,CAAC;gBAED,IAAI,GAAG,GAAG,MAAM,IAAI,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;YACrD,CAAC;YACD,MAAM;QACR,KAAK,aAAa;YAChB,CAAC;gBACC,MAAM,GAAG,GAAG,MAAM,CAAC,OAAO,CAAC,OAAO,EAAE,EAAE,CAAC,CAAC;gBACxC,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC;gBAEtB,IAAI,KAAK,EAAE,CAAC;oBACV,MAAM,IAAI,GAAG,MAAM,qBAAqB,CAAC,EAAE,MAAM,EAAE,KAAK,EAAE,CAAC,CAAC;oBAC5D,MAAM,QAAQ,GAAG,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,IAAI,SAAS,CAAC;oBAC/C,MAAM,EAAE,KAAK,EAAE,GAAG,EAAE,GAAG,yBAAyB,CAAC,IAAI,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;oBAEtE,IAAI,GAAG,IAAI,EAAE,IAAI,CAAC;oBAClB,QAAQ,GAAG,IAAI,EAAE,QAAQ,CAAC;oBAE1B,IAAI,IAAI,IAAI,QAAQ,EAAE,CAAC;wBACrB,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;wBACpB,KAAK,CAAC,GAAG,CAAC,KAAK,EAAE,QAAQ,GAAG,IAAI,IAAI,EAAE,CAAC,CAAC;wBAExC,IAAI,GAAG,GAAG,MAAM,IAAI,QAAQ,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;wBACnD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;oBACzC,CAAC;gBACH,CAAC;gBAED,MAAM,IAAI,GAAG,MAAM,2BAA2B,CAAC,EAAE,MAAM,EAAE,GAAG,EAAE,CAAC,CAAC;gBAEhE,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;oBAChB,OAAO,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;gBACjB,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;gBACrB,IAAI,GAAG,GAAG,MAAM,IAAI,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;YACjD,CAAC;YACD,MAAM;QACR,KAAK,MAAM;YACT,CAAC;gBACC,MAAM,IAAI,GAAG,MAAM,4BAA4B,CAAC;oBAC9C,MAAM;oBACN,IAAI,EAAE,MAAM;iBACb,CAAC,CAAC;gBACH,IAAI,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC;oBAChB,OAAO,EAAE,CAAC;gBACZ,CAAC;gBAED,IAAI,GAAG,IAAI,CAAC,IAAI,CAAC;gBACjB,QAAQ,GAAG,IAAI,CAAC,IAAI,CAAC;gBACrB,IAAI,GAAG,GAAG,MAAM,IAAI,IAAI,CAAC,IAAI,IAAI,KAAK,CAAC,QAAQ,EAAE,EAAE,CAAC;YACtD,CAAC;YACD,MAAM;QACR,OAAO,CAAC,CAAC,CAAC;YACR,OAAO,EAAE,CAAC;QACZ,CAAC;IACH,CAAC;IAED,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE,CAAC;AACzC,CAAC,CAAC"}
package/lib/panel-url.js CHANGED
@@ -21,20 +21,15 @@ export const urlForPanelContent = ({ location, hash, contentType, }) => {
21
21
  return baseUrl.toString();
22
22
  };
23
23
  export const entityTypeForContentType = (contentType) => {
24
- if (['compare', 'source', ...BODY_ITEM_TYPES].includes(contentType)) {
24
+ if (contentType === 'source') {
25
+ return 'folio';
26
+ }
27
+ if (['compare', ...BODY_ITEM_TYPES].includes(contentType)) {
25
28
  return 'passage';
26
29
  }
27
30
  return contentType;
28
31
  };
29
32
  export const urlForEntity = ({ location, uuid, contentType, }) => {
30
- // TODO: support folios in the entity endpoint
31
- if (contentType === 'source') {
32
- return urlForPanelContent({
33
- location,
34
- hash: uuid,
35
- contentType,
36
- });
37
- }
38
33
  const { origin, href, search } = location;
39
34
  const searchParams = new URLSearchParams(search);
40
35
  if (!contentType) {
@@ -1 +1 @@
1
- {"version":3,"file":"panel-url.js","sourceRoot":"","sources":["../../../../libs/data-access/src/lib/panel-url.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"panel-url.js","sourceRoot":"","sources":["../../../../libs/data-access/src/lib/panel-url.ts"],"names":[],"mappings":"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"}
@@ -14,4 +14,10 @@ export type Folio = {
14
14
  folio: number;
15
15
  side: FolioSide;
16
16
  };
17
+ export type FoliosAround = {
18
+ folios: Folio[];
19
+ startIndex: number;
20
+ hasMoreBefore: boolean;
21
+ hasMoreAfter: boolean;
22
+ };
17
23
  export declare const folioFromDTO: (dto: FolioDTO) => Folio;
@@ -1 +1 @@
1
- {"version":3,"file":"folio.js","sourceRoot":"","sources":["../../../../../libs/data-access/src/lib/types/folio.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,CAAU,CAAC;AAmB/C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAa,EAAS,EAAE;IACnD,OAAO;QACL,IAAI,EAAE,GAAG,CAAC,UAAU;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE;QAC1B,MAAM,EAAE,GAAG,CAAC,aAAa;QACzB,KAAK,EAAE,GAAG,CAAC,YAAY;QACvB,IAAI,EAAE,GAAG,CAAC,IAAI;KACf,CAAC;AACJ,CAAC,CAAC"}
1
+ {"version":3,"file":"folio.js","sourceRoot":"","sources":["../../../../../libs/data-access/src/lib/types/folio.ts"],"names":[],"mappings":"AAAA,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,CAAU,CAAC;AA0B/C,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,GAAa,EAAS,EAAE;IACnD,OAAO;QACL,IAAI,EAAE,GAAG,CAAC,UAAU;QACpB,OAAO,EAAE,GAAG,CAAC,OAAO,IAAI,EAAE;QAC1B,MAAM,EAAE,GAAG,CAAC,aAAa;QACzB,KAAK,EAAE,GAAG,CAAC,YAAY;QACvB,IAAI,EAAE,GAAG,CAAC,IAAI;KACf,CAAC;AACJ,CAAC,CAAC"}
@@ -1 +1,7 @@
1
1
  export type SemVer = `${number}.${number}.${number}`;
2
+ /**
3
+ * Whether a publication version represents a published work. A major version
4
+ * below 1 (e.g. `0.x.x`) is considered in-progress / not yet published.
5
+ * An undefined or unparseable version is treated as published (don't gate).
6
+ */
7
+ export declare const isPublishedVersion: (version?: SemVer) => boolean;
@@ -1,2 +1,13 @@
1
- export {};
1
+ /**
2
+ * Whether a publication version represents a published work. A major version
3
+ * below 1 (e.g. `0.x.x`) is considered in-progress / not yet published.
4
+ * An undefined or unparseable version is treated as published (don't gate).
5
+ */
6
+ export const isPublishedVersion = (version) => {
7
+ if (!version) {
8
+ return true;
9
+ }
10
+ const major = Number(version.split('.')[0]);
11
+ return Number.isFinite(major) && major >= 1;
12
+ };
2
13
  //# sourceMappingURL=semver.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"semver.js","sourceRoot":"","sources":["../../../../../libs/data-access/src/lib/types/semver.ts"],"names":[],"mappings":""}
1
+ {"version":3,"file":"semver.js","sourceRoot":"","sources":["../../../../../libs/data-access/src/lib/types/semver.ts"],"names":[],"mappings":"AAEA;;;;GAIG;AACH,MAAM,CAAC,MAAM,kBAAkB,GAAG,CAAC,OAAgB,EAAW,EAAE;IAC9D,IAAI,CAAC,OAAO,EAAE,CAAC;QACb,OAAO,IAAI,CAAC;IACd,CAAC;IACD,MAAM,KAAK,GAAG,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;IAC5C,OAAO,MAAM,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC;AAC9C,CAAC,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eightyfourthousand/data-access",
3
- "version": "2026.5.5",
3
+ "version": "2026.6.0",
4
4
  "description": "Shared data access clients, DTO mappers, and domain types for 84000 applications.",
5
5
  "private": false,
6
6
  "repository": {
@@ -18,11 +18,11 @@
18
18
  },
19
19
  "dependencies": {
20
20
  "@eightyfourthousand/lib-utils": "^2026.5.5",
21
- "@supabase/ssr": "^0.5.2",
22
- "@supabase/supabase-js": "^2.48.1",
23
- "@tiptap/core": "^3.13.0",
21
+ "@supabase/ssr": "^0.10.3",
22
+ "@supabase/supabase-js": "^2.106.2",
23
+ "@tiptap/core": "^3.23.6",
24
24
  "jwt-decode": "^4.0.0",
25
- "resend": "^6.9.2"
25
+ "resend": "^6.12.4"
26
26
  },
27
27
  "peerDependencies": {
28
28
  "next": "^16.0.0",