rotion 0.0.3 → 0.0.4

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,4 +1,6 @@
1
- import { reqAPIWithBackoff, notion } from './api.js';
1
+ import { notion, reqAPIWithBackoffAndCache } from './api.js';
2
+ import { savePageIcon } from './page.js';
3
+ import { saveDatabaseIcon } from './database.js';
2
4
  export const FetchBreadcrumbs = async ({ type, id, limit }) => {
3
5
  let breadcrumbs = [];
4
6
  const max = limit === undefined ? 5 : limit;
@@ -22,7 +24,8 @@ export const FetchBreadcrumbs = async ({ type, id, limit }) => {
22
24
  while (count < max && isNext) {
23
25
  switch (nextType) {
24
26
  case 'block_id': {
25
- const res = await reqAPIWithBackoff({
27
+ const res = await reqAPIWithBackoffAndCache({
28
+ name: 'notion.blocks.retrieve',
26
29
  func: notion.blocks.retrieve,
27
30
  args: { block_id: nextID },
28
31
  count: 3,
@@ -37,11 +40,13 @@ export const FetchBreadcrumbs = async ({ type, id, limit }) => {
37
40
  break;
38
41
  }
39
42
  case 'page_id': {
40
- const page = await reqAPIWithBackoff({
43
+ const page = await reqAPIWithBackoffAndCache({
44
+ name: 'notion.page.retrieve',
41
45
  func: notion.pages.retrieve,
42
46
  args: { page_id: nextID },
43
47
  count: 3,
44
48
  });
49
+ await savePageIcon(page);
45
50
  nextType = page.parent.type;
46
51
  nextID = getID(page.parent);
47
52
  const name = page.properties.title.type === 'title' ? page.properties.title.title.map(v => v.plain_text).join('') : '';
@@ -69,11 +74,13 @@ export const FetchBreadcrumbs = async ({ type, id, limit }) => {
69
74
  break;
70
75
  }
71
76
  case 'database_id': {
72
- const db = await reqAPIWithBackoff({
77
+ const db = await reqAPIWithBackoffAndCache({
78
+ name: 'notion.database.retrieve',
73
79
  func: notion.databases.retrieve,
74
80
  args: { database_id: nextID },
75
81
  count: 3,
76
82
  });
83
+ await saveDatabaseIcon(db);
77
84
  nextType = db.parent.type;
78
85
  nextID = getID(db.parent);
79
86
  const name = db.title.map(v => v.plain_text).join('');
@@ -1 +1 @@
1
- {"version":3,"file":"breadcrumbs.js","sourceRoot":"","sources":["../../src/exporter/breadcrumbs.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,iBAAiB,EAAE,MAAM,EAAE,MAAM,UAAU,CAAA;AAgBpD,MAAM,CAAC,MAAM,gBAAgB,GAAG,KAAK,EAAE,EAAE,IAAI,EAAE,EAAE,EAAE,KAAK,EAAyB,EAA0B,EAAE;IAC3G,IAAI,WAAW,GAAkB,EAAE,CAAA;IACnC,MAAM,GAAG,GAAG,KAAK,KAAK,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,KAAK,CAAA;IAC3C,IAAI,KAAK,GAAG,CAAC,CAAA;IACb,IAAI,QAAQ,GAAG,IAAI,CAAA;IACnB,IAAI,MAAM,GAAG,EAAE,CAAA;IACf,IAAI,MAAM,GAAG,IAAI,CAAA;IAEjB,MAAM,KAAK,GAAG,CAAC,MAAc,EAAE,EAAE;QAC/B,QAAQ,MAAM,CAAC,IAAI,EAAE,CAAC;YACpB,KAAK,UAAU;gBACb,OAAO,MAAM,CAAC,QAAQ,CAAA;YACxB,KAAK,SAAS;gBACZ,OAAO,MAAM,CAAC,OAAO,CAAA;YACvB,KAAK,aAAa;gBAChB,OAAO,MAAM,CAAC,WAAW,CAAA;YAC3B,KAAK,WAAW;gBACd,MAAM,GAAG,KAAK,CAAA;gBACd,OAAO,EAAE,CAAA;QACb,CAAC;IACH,CAAC,CAAA;IAED,OAAO,KAAK,GAAG,GAAG,IAAI,MAAM,EAAE,CAAC;QAC7B,QAAQ,QAAQ,EAAE,CAAC;YACjB,KAAK,UAAU,CAAC,CAAC,CAAC;gBAChB,MAAM,GAAG,GAAG,MAAM,iBAAiB,CAAmB;oBACpD,IAAI,EAAE,MAAM,CAAC,MAAM,CAAC,QAAQ;oBAC5B,IAAI,EAAE,EAAE,QAAQ,EAAE,MAAM,EAAE;oBAC1B,KAAK,EAAE,CAAC;iBACT,CAAC,CAAA;gBACF,IAAI,QAAQ,IAAI,GAAG,EAAE,CAAC;oBACpB,QAAQ,GAAG,GAAG,CAAC,MAAM,CAAC,IAAI,CAAA;oBAC1B,MAAM,GAAG,KAAK,CAAC,GAAG,CAAC,MAAM,CAAC,CAAA;gBAC5B,CAAC;qBAAM,CAAC;oBACN,MAAM,GAAG,KAAK,CAAA;gBAChB,CAAC;gBACD,MAAK;YACP,CAAC;YACD,KAAK,SAAS,CAAC,CAAC,CAAC;gBACf,MAAM,IAAI,GAAG,MAAM,iBAAiB,CAAoB;oBACtD,IAAI,EAAE,MAAM,CAAC,KAAK,CAAC,QAAQ;oBAC3B,IAAI,EAAE,EAAE,OAAO,EAAE,MAAM,EAAE;oBACzB,KAAK,EAAE,CAAC;iBACT,CAAC,CAAA;gBACF,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,IAAI,CAAA;gBAC3B,MAAM,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,CAAA;gBAC3B,MAAM,IAAI,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAAC,CAAC,CAAC,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;gBACtH,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;oBAChC,WAAW,CAAC,OAAO,CAAC;wBAClB,IAAI;wBACJ,IAAI,EAAE;4BACJ,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;4BACpB,KAAK,EAAE,IAAI,CAAC,IAAI,CAAC,KAAK;yBACvB;qBACF,CAAC,CAAA;gBACJ,CAAC;qBAAM,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,UAAU,IAAI,IAAI,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;oBACxE,MAAM,GAAG,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;oBACvF,WAAW,CAAC,OAAO,CAAC;wBAClB,IAAI;wBACJ,IAAI,EAAE;4BACJ,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI;4BACpB,GAAG;4BACH,GAAG,EAAE,GAAG;yBACT;qBACF,CAAC,CAAA;gBACJ,CAAC;gBACD,KAAK,EAAE,CAAA;gBACP,MAAK;YACP,CAAC;YACD,KAAK,aAAa,CAAC,CAAC,CAAC;gBACnB,MAAM,EAAE,GAAG,MAAM,iBAAiB,CAAwB;oBACxD,IAAI,EAAE,MAAM,CAAC,SAAS,CAAC,QAAQ;oBAC/B,IAAI,EAAE,EAAE,WAAW,EAAE,MAAM,EAAE;oBAC7B,KAAK,EAAE,CAAC;iBACT,CAAC,CAAA;gBACF,QAAQ,GAAG,EAAE,CAAC,MAAM,CAAC,IAAI,CAAA;gBACzB,MAAM,GAAG,KAAK,CAAC,EAAE,CAAC,MAAM,CAAC,CAAA;gBACzB,MAAM,IAAI,GAAG,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;gBACrD,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,OAAO,EAAE,CAAC;oBAC9B,WAAW,CAAC,OAAO,CAAC;wBAClB,IAAI;wBACJ,IAAI,EAAE;4BACJ,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI;4BAClB,KAAK,EAAE,EAAE,CAAC,IAAI,CAAC,KAAK;yBACrB;qBACF,CAAC,CAAA;gBACJ,CAAC;qBAAM,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,UAAU,IAAI,EAAE,CAAC,IAAI,EAAE,IAAI,KAAK,MAAM,EAAE,CAAC;oBACpE,MAAM,GAAG,GAAG,EAAE,CAAC,IAAI,CAAC,IAAI,KAAK,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,QAAQ,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAA;oBACjF,WAAW,CAAC,OAAO,CAAC;wBAClB,IAAI;wBACJ,IAAI,EAAE;4BACJ,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,IAAI;4BAClB,GAAG;4BACH,GAAG,EAAE,GAAG;yBACT;qBACF,CAAC,CAAA;gBACJ,CAAC;gBACD,KAAK,EAAE,CAAA;gBACP,MAAK;YACP,CAAC;YACD,KAAK,WAAW;gBACd,MAAM,GAAG,KAAK,CAAA;gBACd,MAAK;QACT,CAAC;IACH,CAAC;IAED,OAAO,WAAW,CAAA;AACpB,CAAC,CAAA"}
1
+ {"version":3,"file":"breadcrumbs.js","sourceRoot":"","sources":["../../src/exporter/breadcrumbs.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import type { QueryDatabaseParameters, QueryDatabaseResponseEx } from './types.js';
1
+ import type { QueryDatabaseParameters, QueryDatabaseResponseEx, GetDatabaseResponseEx } from './types.js';
2
2
  export interface FetchDatabaseArgs extends QueryDatabaseParameters {
3
3
  }
4
4
  export interface FetchDatabaseRes extends QueryDatabaseResponseEx {
@@ -8,3 +8,5 @@ export interface FetchDatabaseRes extends QueryDatabaseResponseEx {
8
8
  * And create cache that includes filepath of downloaded images.
9
9
  */
10
10
  export declare const FetchDatabase: (params: FetchDatabaseArgs) => Promise<FetchDatabaseRes>;
11
+ export declare function saveDatabaseCover(db: GetDatabaseResponseEx): Promise<void>;
12
+ export declare function saveDatabaseIcon(db: GetDatabaseResponseEx): Promise<void>;
@@ -1,6 +1,7 @@
1
1
  import { reqAPIWithBackoff, reqAPIWithBackoffAndCache, notion, } from './api.js';
2
2
  import { cacheDir, incrementalCache, } from './variables.js';
3
3
  import { atoh, createDirWhenNotfound, saveImage, readCache, writeCache, isAvailableCache, isEmpty, } from './files.js';
4
+ import { savePageCover, savePageIcon, } from './page.js';
4
5
  /**
5
6
  * FetchDatabase retrieves database and download images in from blocks.
6
7
  * And create cache that includes filepath of downloaded images.
@@ -48,11 +49,8 @@ export const FetchDatabase = async (params) => {
48
49
  }
49
50
  for (const result of allres.results) {
50
51
  const page = result;
51
- // Save page cover files
52
- if ('cover' in page && page.cover != null) {
53
- const imageUrl = (page.cover.type === 'external') ? page.cover.external.url : page.cover.file.url;
54
- page.cover.src = await saveImage(imageUrl, `page-cover-${page.id}`);
55
- }
52
+ await savePageCover(page);
53
+ await savePageIcon(page);
56
54
  // Set page property items
57
55
  page.property_items = [];
58
56
  for (const [, v] of Object.entries(page.properties)) {
@@ -81,12 +79,32 @@ export const FetchDatabase = async (params) => {
81
79
  args: { database_id },
82
80
  count: 3,
83
81
  });
84
- if ('cover' in meta && meta.cover !== null) {
85
- const imageUrl = (meta.cover.type === 'external') ? meta.cover.external.url : meta.cover.file.url;
86
- meta.cover.src = await saveImage(imageUrl, `database-cover-${database_id}`);
87
- }
82
+ await saveDatabaseCover(meta);
83
+ await saveDatabaseIcon(meta);
88
84
  allres.meta = meta;
89
85
  await writeCache(cacheFile, allres);
90
86
  return allres;
91
87
  };
88
+ export async function saveDatabaseCover(db) {
89
+ if (db.cover === undefined || db.cover === null) {
90
+ return;
91
+ }
92
+ if (db.cover.type === 'external') {
93
+ db.cover.src = await saveImage(db.cover.external.url, `database-cover-${db.id}`);
94
+ }
95
+ else if (db.cover.type === 'file') {
96
+ db.cover.src = await saveImage(db.cover.file.url, `database-cover-${db.id}`);
97
+ }
98
+ }
99
+ export async function saveDatabaseIcon(db) {
100
+ if (db.icon === undefined || db.icon === null) {
101
+ return;
102
+ }
103
+ if (db.icon.type === 'external') {
104
+ db.icon.src = await saveImage(db.icon.external.url, `database-icon-${db.id}`);
105
+ }
106
+ else if (db.icon.type === 'file') {
107
+ db.icon.src = await saveImage(db.icon.file.url, `database-icon-${db.id}`);
108
+ }
109
+ }
92
110
  //# sourceMappingURL=database.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/exporter/database.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"database.js","sourceRoot":"","sources":["../../src/exporter/database.ts"],"names":[],"mappings":"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"}
@@ -2,3 +2,4 @@ export * from './blocks.js';
2
2
  export * from './database.js';
3
3
  export * from './page.js';
4
4
  export * from './types.js';
5
+ export * from './breadcrumbs.js';
@@ -2,4 +2,5 @@ export * from './blocks.js';
2
2
  export * from './database.js';
3
3
  export * from './page.js';
4
4
  export * from './types.js';
5
+ export * from './breadcrumbs.js';
5
6
  //# sourceMappingURL=index.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/exporter/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/exporter/index.ts"],"names":[],"mappings":"AAAA,cAAc,aAAa,CAAA;AAC3B,cAAc,eAAe,CAAA;AAC7B,cAAc,WAAW,CAAA;AACzB,cAAc,YAAY,CAAA;AAC1B,cAAc,kBAAkB,CAAA"}
@@ -1,4 +1,4 @@
1
- import type { GetPageResponseEx } from './types.js';
1
+ import type { GetPageResponseEx, PageObjectResponseEx } from './types.js';
2
2
  export interface FetchPageArgs {
3
3
  page_id: string;
4
4
  last_edited_time?: string;
@@ -11,3 +11,5 @@ export interface FetchPageRes extends GetPageResponseEx {
11
11
  * The last_edited_time of 2nd args is for ROTION_INCREMENTAL_CACHE.
12
12
  */
13
13
  export declare const FetchPage: ({ page_id, last_edited_time }: FetchPageArgs) => Promise<FetchPageRes>;
14
+ export declare function savePageCover(page: GetPageResponseEx | PageObjectResponseEx): Promise<void>;
15
+ export declare function savePageIcon(page: GetPageResponseEx | PageObjectResponseEx): Promise<void>;
@@ -52,23 +52,31 @@ export const FetchPage = async ({ page_id, last_edited_time }) => {
52
52
  }
53
53
  page.meta = list;
54
54
  }
55
- if ('cover' in page && page.cover !== null) {
56
- if (page.cover.type === 'external') {
57
- page.cover.src = await saveImage(page.cover.external.url, `page-cover-${page.id}`);
58
- }
59
- else if (page.cover.type === 'file') {
60
- page.cover.src = await saveImage(page.cover.file.url, `page-cover-${page.id}`);
61
- }
62
- }
63
- if ('icon' in page && page.icon !== null) {
64
- if (page.icon.type === 'external') {
65
- page.icon.src = await saveImage(page.icon.external.url, `page-icon-${page.id}`);
66
- }
67
- else if (page.icon.type === 'file') {
68
- page.icon.src = await saveImage(page.icon.file.url, `page-icon-${page.id}`);
69
- }
70
- }
55
+ await savePageCover(page);
56
+ await savePageIcon(page);
71
57
  await writeCache(cacheFile, page);
72
58
  return page;
73
59
  };
60
+ export async function savePageCover(page) {
61
+ if (page.cover === undefined || page.cover === null) {
62
+ return;
63
+ }
64
+ if (page.cover.type === 'external') {
65
+ page.cover.src = await saveImage(page.cover.external.url, `page-cover-${page.id}`);
66
+ }
67
+ else if (page.cover.type === 'file') {
68
+ page.cover.src = await saveImage(page.cover.file.url, `page-cover-${page.id}`);
69
+ }
70
+ }
71
+ export async function savePageIcon(page) {
72
+ if (page.icon === undefined || page.icon === null) {
73
+ return;
74
+ }
75
+ if (page.icon.type === 'external') {
76
+ page.icon.src = await saveImage(page.icon.external.url, `page-icon-${page.id}`);
77
+ }
78
+ else if (page.icon.type === 'file') {
79
+ page.icon.src = await saveImage(page.icon.file.url, `page-icon-${page.id}`);
80
+ }
81
+ }
74
82
  //# sourceMappingURL=page.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"page.js","sourceRoot":"","sources":["../../src/exporter/page.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"page.js","sourceRoot":"","sources":["../../src/exporter/page.ts"],"names":[],"mappings":"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"}
@@ -450,6 +450,23 @@ export type PageObjectResponseEx = PageObjectResponse & {
450
450
  expiry_time: string;
451
451
  };
452
452
  } | null;
453
+ icon: {
454
+ type: 'emoji';
455
+ emoji: EmojiRequest;
456
+ } | {
457
+ src: string;
458
+ type: 'external';
459
+ external: {
460
+ url: TextRequest;
461
+ };
462
+ } | {
463
+ src: string;
464
+ type: 'file';
465
+ file: {
466
+ url: string;
467
+ expiry_time: string;
468
+ };
469
+ } | null;
453
470
  };
454
471
  export type GetDatabaseResponseEx = DatabaseObjectResponse & {
455
472
  icon: {
@@ -0,0 +1,12 @@
1
+ import type { MentionIcon } from './types.js';
2
+ export interface FetchBreadcrumbsProps {
3
+ type: 'page_id' | 'database_id' | 'block_id' | 'workspace';
4
+ id: string;
5
+ limit?: number;
6
+ }
7
+ export type BreadcrumbsIcon = MentionIcon;
8
+ export interface Breadcrumbs {
9
+ name: string;
10
+ icon: BreadcrumbsIcon;
11
+ }
12
+ export declare const FetchBreadcrumbs: ({ type, id, limit }: FetchBreadcrumbsProps) => Promise<Breadcrumbs[]>;
@@ -1,4 +1,4 @@
1
- import type { QueryDatabaseParameters, QueryDatabaseResponseEx } from './types.js';
1
+ import type { QueryDatabaseParameters, QueryDatabaseResponseEx, GetDatabaseResponseEx } from './types.js';
2
2
  export interface FetchDatabaseArgs extends QueryDatabaseParameters {
3
3
  }
4
4
  export interface FetchDatabaseRes extends QueryDatabaseResponseEx {
@@ -8,3 +8,5 @@ export interface FetchDatabaseRes extends QueryDatabaseResponseEx {
8
8
  * And create cache that includes filepath of downloaded images.
9
9
  */
10
10
  export declare const FetchDatabase: (params: FetchDatabaseArgs) => Promise<FetchDatabaseRes>;
11
+ export declare function saveDatabaseCover(db: GetDatabaseResponseEx): Promise<void>;
12
+ export declare function saveDatabaseIcon(db: GetDatabaseResponseEx): Promise<void>;
@@ -2,3 +2,4 @@ export * from './blocks.js';
2
2
  export * from './database.js';
3
3
  export * from './page.js';
4
4
  export * from './types.js';
5
+ export * from './breadcrumbs.js';
@@ -1,4 +1,4 @@
1
- import type { GetPageResponseEx } from './types.js';
1
+ import type { GetPageResponseEx, PageObjectResponseEx } from './types.js';
2
2
  export interface FetchPageArgs {
3
3
  page_id: string;
4
4
  last_edited_time?: string;
@@ -11,3 +11,5 @@ export interface FetchPageRes extends GetPageResponseEx {
11
11
  * The last_edited_time of 2nd args is for ROTION_INCREMENTAL_CACHE.
12
12
  */
13
13
  export declare const FetchPage: ({ page_id, last_edited_time }: FetchPageArgs) => Promise<FetchPageRes>;
14
+ export declare function savePageCover(page: GetPageResponseEx | PageObjectResponseEx): Promise<void>;
15
+ export declare function savePageIcon(page: GetPageResponseEx | PageObjectResponseEx): Promise<void>;
@@ -450,6 +450,23 @@ export type PageObjectResponseEx = PageObjectResponse & {
450
450
  expiry_time: string;
451
451
  };
452
452
  } | null;
453
+ icon: {
454
+ type: 'emoji';
455
+ emoji: EmojiRequest;
456
+ } | {
457
+ src: string;
458
+ type: 'external';
459
+ external: {
460
+ url: TextRequest;
461
+ };
462
+ } | {
463
+ src: string;
464
+ type: 'file';
465
+ file: {
466
+ url: string;
467
+ expiry_time: string;
468
+ };
469
+ } | null;
453
470
  };
454
471
  export type GetDatabaseResponseEx = DatabaseObjectResponse & {
455
472
  icon: {
@@ -0,0 +1,12 @@
1
+ import type { MentionIcon } from './types.js';
2
+ export interface FetchBreadcrumbsProps {
3
+ type: 'page_id' | 'database_id' | 'block_id' | 'workspace';
4
+ id: string;
5
+ limit?: number;
6
+ }
7
+ export type BreadcrumbsIcon = MentionIcon;
8
+ export interface Breadcrumbs {
9
+ name: string;
10
+ icon: BreadcrumbsIcon;
11
+ }
12
+ export declare const FetchBreadcrumbs: ({ type, id, limit }: FetchBreadcrumbsProps) => Promise<Breadcrumbs[]>;
@@ -1,4 +1,4 @@
1
- import type { QueryDatabaseParameters, QueryDatabaseResponseEx } from './types.js';
1
+ import type { QueryDatabaseParameters, QueryDatabaseResponseEx, GetDatabaseResponseEx } from './types.js';
2
2
  export interface FetchDatabaseArgs extends QueryDatabaseParameters {
3
3
  }
4
4
  export interface FetchDatabaseRes extends QueryDatabaseResponseEx {
@@ -8,3 +8,5 @@ export interface FetchDatabaseRes extends QueryDatabaseResponseEx {
8
8
  * And create cache that includes filepath of downloaded images.
9
9
  */
10
10
  export declare const FetchDatabase: (params: FetchDatabaseArgs) => Promise<FetchDatabaseRes>;
11
+ export declare function saveDatabaseCover(db: GetDatabaseResponseEx): Promise<void>;
12
+ export declare function saveDatabaseIcon(db: GetDatabaseResponseEx): Promise<void>;
@@ -2,3 +2,4 @@ export * from './blocks.js';
2
2
  export * from './database.js';
3
3
  export * from './page.js';
4
4
  export * from './types.js';
5
+ export * from './breadcrumbs.js';
@@ -1,4 +1,4 @@
1
- import type { GetPageResponseEx } from './types.js';
1
+ import type { GetPageResponseEx, PageObjectResponseEx } from './types.js';
2
2
  export interface FetchPageArgs {
3
3
  page_id: string;
4
4
  last_edited_time?: string;
@@ -11,3 +11,5 @@ export interface FetchPageRes extends GetPageResponseEx {
11
11
  * The last_edited_time of 2nd args is for ROTION_INCREMENTAL_CACHE.
12
12
  */
13
13
  export declare const FetchPage: ({ page_id, last_edited_time }: FetchPageArgs) => Promise<FetchPageRes>;
14
+ export declare function savePageCover(page: GetPageResponseEx | PageObjectResponseEx): Promise<void>;
15
+ export declare function savePageIcon(page: GetPageResponseEx | PageObjectResponseEx): Promise<void>;
@@ -450,6 +450,23 @@ export type PageObjectResponseEx = PageObjectResponse & {
450
450
  expiry_time: string;
451
451
  };
452
452
  } | null;
453
+ icon: {
454
+ type: 'emoji';
455
+ emoji: EmojiRequest;
456
+ } | {
457
+ src: string;
458
+ type: 'external';
459
+ external: {
460
+ url: TextRequest;
461
+ };
462
+ } | {
463
+ src: string;
464
+ type: 'file';
465
+ file: {
466
+ url: string;
467
+ expiry_time: string;
468
+ };
469
+ } | null;
453
470
  };
454
471
  export type GetDatabaseResponseEx = DatabaseObjectResponse & {
455
472
  icon: {
@@ -233,6 +233,23 @@ type PageObjectResponseEx = PageObjectResponse & {
233
233
  expiry_time: string;
234
234
  };
235
235
  } | null;
236
+ icon: {
237
+ type: 'emoji';
238
+ emoji: EmojiRequest;
239
+ } | {
240
+ src: string;
241
+ type: 'external';
242
+ external: {
243
+ url: TextRequest;
244
+ };
245
+ } | {
246
+ src: string;
247
+ type: 'file';
248
+ file: {
249
+ url: string;
250
+ expiry_time: string;
251
+ };
252
+ } | null;
236
253
  };
237
254
  type GetDatabaseResponseEx = DatabaseObjectResponse & {
238
255
  icon: {
@@ -0,0 +1,12 @@
1
+ import type { MentionIcon } from './types.js';
2
+ export interface FetchBreadcrumbsProps {
3
+ type: 'page_id' | 'database_id' | 'block_id' | 'workspace';
4
+ id: string;
5
+ limit?: number;
6
+ }
7
+ export type BreadcrumbsIcon = MentionIcon;
8
+ export interface Breadcrumbs {
9
+ name: string;
10
+ icon: BreadcrumbsIcon;
11
+ }
12
+ export declare const FetchBreadcrumbs: ({ type, id, limit }: FetchBreadcrumbsProps) => Promise<Breadcrumbs[]>;
@@ -1,4 +1,4 @@
1
- import type { QueryDatabaseParameters, QueryDatabaseResponseEx } from './types.js';
1
+ import type { QueryDatabaseParameters, QueryDatabaseResponseEx, GetDatabaseResponseEx } from './types.js';
2
2
  export interface FetchDatabaseArgs extends QueryDatabaseParameters {
3
3
  }
4
4
  export interface FetchDatabaseRes extends QueryDatabaseResponseEx {
@@ -8,3 +8,5 @@ export interface FetchDatabaseRes extends QueryDatabaseResponseEx {
8
8
  * And create cache that includes filepath of downloaded images.
9
9
  */
10
10
  export declare const FetchDatabase: (params: FetchDatabaseArgs) => Promise<FetchDatabaseRes>;
11
+ export declare function saveDatabaseCover(db: GetDatabaseResponseEx): Promise<void>;
12
+ export declare function saveDatabaseIcon(db: GetDatabaseResponseEx): Promise<void>;
@@ -2,3 +2,4 @@ export * from './blocks.js';
2
2
  export * from './database.js';
3
3
  export * from './page.js';
4
4
  export * from './types.js';
5
+ export * from './breadcrumbs.js';
@@ -1,4 +1,4 @@
1
- import type { GetPageResponseEx } from './types.js';
1
+ import type { GetPageResponseEx, PageObjectResponseEx } from './types.js';
2
2
  export interface FetchPageArgs {
3
3
  page_id: string;
4
4
  last_edited_time?: string;
@@ -11,3 +11,5 @@ export interface FetchPageRes extends GetPageResponseEx {
11
11
  * The last_edited_time of 2nd args is for ROTION_INCREMENTAL_CACHE.
12
12
  */
13
13
  export declare const FetchPage: ({ page_id, last_edited_time }: FetchPageArgs) => Promise<FetchPageRes>;
14
+ export declare function savePageCover(page: GetPageResponseEx | PageObjectResponseEx): Promise<void>;
15
+ export declare function savePageIcon(page: GetPageResponseEx | PageObjectResponseEx): Promise<void>;
@@ -450,6 +450,23 @@ export type PageObjectResponseEx = PageObjectResponse & {
450
450
  expiry_time: string;
451
451
  };
452
452
  } | null;
453
+ icon: {
454
+ type: 'emoji';
455
+ emoji: EmojiRequest;
456
+ } | {
457
+ src: string;
458
+ type: 'external';
459
+ external: {
460
+ url: TextRequest;
461
+ };
462
+ } | {
463
+ src: string;
464
+ type: 'file';
465
+ file: {
466
+ url: string;
467
+ expiry_time: string;
468
+ };
469
+ } | null;
453
470
  };
454
471
  export type GetDatabaseResponseEx = DatabaseObjectResponse & {
455
472
  icon: {
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "rotion",
3
- "version": "0.0.3",
3
+ "version": "0.0.4",
4
4
  "license": "MIT",
5
5
  "repository": "linyows/rotion",
6
6
  "description": "This is react components that uses the notion API to display the notion's database and page.",