rotion 3.4.1 → 3.5.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.
Files changed (61) hide show
  1. package/README.ja.md +23 -1
  2. package/README.md +23 -1
  3. package/dist/exporter/files.js +56 -22
  4. package/dist/exporter/files.js.map +1 -1
  5. package/dist/exporter/mutex.d.ts +1 -0
  6. package/dist/exporter/mutex.js +30 -2
  7. package/dist/exporter/mutex.js.map +1 -1
  8. package/dist/ui/components/Calendar/Calendar.d.ts +5 -0
  9. package/dist/ui/components/Calendar/Calendar.types.d.ts +19 -0
  10. package/dist/ui/components/Calendar/CalendarCell/CalendarCell.d.ts +4 -0
  11. package/dist/ui/components/Calendar/CalendarCell/CalendarCell.types.d.ts +7 -0
  12. package/dist/ui/components/Calendar/CalendarCell/index.d.ts +2 -0
  13. package/dist/ui/components/Calendar/CalendarEvent/CalendarEvent.d.ts +4 -0
  14. package/dist/ui/components/Calendar/CalendarEvent/CalendarEvent.types.d.ts +10 -0
  15. package/dist/ui/components/Calendar/CalendarEvent/index.d.ts +2 -0
  16. package/dist/ui/components/Calendar/CalendarHeader/CalendarHeader.d.ts +4 -0
  17. package/dist/ui/components/Calendar/CalendarHeader/CalendarHeader.types.d.ts +8 -0
  18. package/dist/ui/components/Calendar/CalendarHeader/index.d.ts +2 -0
  19. package/dist/ui/components/Calendar/CalendarWeek/CalendarWeek.d.ts +4 -0
  20. package/dist/ui/components/Calendar/CalendarWeek/CalendarWeek.types.d.ts +20 -0
  21. package/dist/ui/components/Calendar/CalendarWeek/index.d.ts +2 -0
  22. package/dist/ui/components/Calendar/index.d.ts +2 -0
  23. package/dist/ui/components/Calendar/lib.d.ts +1 -0
  24. package/dist/ui/components/index.d.ts +5 -0
  25. package/dist/ui/esm/components/Calendar/Calendar.js +185 -0
  26. package/dist/ui/esm/components/Calendar/Calendar.js.map +1 -0
  27. package/dist/ui/esm/components/Calendar/Calendar.types.js +3 -0
  28. package/dist/ui/esm/components/Calendar/Calendar.types.js.map +1 -0
  29. package/dist/ui/esm/components/Calendar/CalendarCell/CalendarCell.js +18 -0
  30. package/dist/ui/esm/components/Calendar/CalendarCell/CalendarCell.js.map +1 -0
  31. package/dist/ui/esm/components/Calendar/CalendarCell/CalendarCell.types.js +3 -0
  32. package/dist/ui/esm/components/Calendar/CalendarCell/CalendarCell.types.js.map +1 -0
  33. package/dist/ui/esm/components/Calendar/CalendarCell/index.js +4 -0
  34. package/dist/ui/esm/components/Calendar/CalendarCell/index.js.map +1 -0
  35. package/dist/ui/esm/components/Calendar/CalendarEvent/CalendarEvent.js +103 -0
  36. package/dist/ui/esm/components/Calendar/CalendarEvent/CalendarEvent.js.map +1 -0
  37. package/dist/ui/esm/components/Calendar/CalendarEvent/CalendarEvent.types.js +3 -0
  38. package/dist/ui/esm/components/Calendar/CalendarEvent/CalendarEvent.types.js.map +1 -0
  39. package/dist/ui/esm/components/Calendar/CalendarEvent/index.js +4 -0
  40. package/dist/ui/esm/components/Calendar/CalendarEvent/index.js.map +1 -0
  41. package/dist/ui/esm/components/Calendar/CalendarHeader/CalendarHeader.js +34 -0
  42. package/dist/ui/esm/components/Calendar/CalendarHeader/CalendarHeader.js.map +1 -0
  43. package/dist/ui/esm/components/Calendar/CalendarHeader/CalendarHeader.types.js +3 -0
  44. package/dist/ui/esm/components/Calendar/CalendarHeader/CalendarHeader.types.js.map +1 -0
  45. package/dist/ui/esm/components/Calendar/CalendarHeader/index.js +4 -0
  46. package/dist/ui/esm/components/Calendar/CalendarHeader/index.js.map +1 -0
  47. package/dist/ui/esm/components/Calendar/CalendarWeek/CalendarWeek.js +38 -0
  48. package/dist/ui/esm/components/Calendar/CalendarWeek/CalendarWeek.js.map +1 -0
  49. package/dist/ui/esm/components/Calendar/CalendarWeek/CalendarWeek.types.js +3 -0
  50. package/dist/ui/esm/components/Calendar/CalendarWeek/CalendarWeek.types.js.map +1 -0
  51. package/dist/ui/esm/components/Calendar/CalendarWeek/index.js +4 -0
  52. package/dist/ui/esm/components/Calendar/CalendarWeek/index.js.map +1 -0
  53. package/dist/ui/esm/components/Calendar/index.js +4 -0
  54. package/dist/ui/esm/components/Calendar/index.js.map +1 -0
  55. package/dist/ui/esm/components/Calendar/lib.js +5 -0
  56. package/dist/ui/esm/components/Calendar/lib.js.map +1 -0
  57. package/dist/ui/esm/components/index.js +5 -0
  58. package/dist/ui/esm/components/index.js.map +1 -1
  59. package/dist/ui/index-without-dark.css +1 -1
  60. package/dist/ui/index.css +1 -1
  61. package/package.json +3 -3
package/README.ja.md CHANGED
@@ -134,7 +134,7 @@ export default function MyPage({ blocks }) {
134
134
  Notionデータベースをさまざまな形式で表示:
135
135
 
136
136
  ```tsx
137
- import { Gallery, Table, List } from 'rotion/ui'
137
+ import { Gallery, Table, List, Calendar } from 'rotion/ui'
138
138
  import { FetchDatabase } from 'rotion'
139
139
 
140
140
  const db = await FetchDatabase({ database_id: 'YOUR_DATABASE_ID' })
@@ -147,6 +147,27 @@ const db = await FetchDatabase({ database_id: 'YOUR_DATABASE_ID' })
147
147
 
148
148
  // リストビュー
149
149
  <List db={db} keys={['Name', 'Tags']} />
150
+
151
+ // カレンダービュー
152
+ <Calendar db={db} date="Date" keys={['Name', 'Tags']} />
153
+ ```
154
+
155
+ ##### Calendar オプション
156
+
157
+ カレンダービューは月単位のグリッドを描画します。`start` と `end` を持つ複数日のイベントは、対象のセルにまたがる1本の帯としてレンダリングされ、週境界では帯が分割されて続きが描かれます。
158
+
159
+ ```tsx
160
+ <Calendar
161
+ db={db}
162
+ date="Date" // 必須: 使用するdateプロパティ名
163
+ keys={['Name', 'Tags']} // イベント帯の中に表示するプロパティ
164
+ options={{
165
+ initialDate: '2026-04-01', // YYYY-MM-DD または YYYY-MM (既定: 今日)
166
+ weekStart: 'monday', // 'sunday' | 'monday' (既定: 'sunday')
167
+ locale: 'ja-JP', // navigator.language を上書き
168
+ href: { Name: '/blog/[id]' }, // 他のビューと同じ href/link/query API
169
+ }}
170
+ />
150
171
  ```
151
172
 
152
173
  主なエクスポート
@@ -165,6 +186,7 @@ const db = await FetchDatabase({ database_id: 'YOUR_DATABASE_ID' })
165
186
  - `Gallery` - ギャラリービュー
166
187
  - `Table` - テーブルビュー
167
188
  - `List` - リストビュー
189
+ - `Calendar` - 月単位のカレンダービュー(指定したdateプロパティに従って予定を配置)
168
190
 
169
191
  **ページとブロック:**
170
192
  - `Page` - Notionページ全体を表示
package/README.md CHANGED
@@ -133,7 +133,7 @@ export default function MyPage({ blocks }) {
133
133
  Display Notion databases in different formats:
134
134
 
135
135
  ```tsx
136
- import { Gallery, Table, List } from 'rotion/ui'
136
+ import { Gallery, Table, List, Calendar } from 'rotion/ui'
137
137
  import { FetchDatabase } from 'rotion'
138
138
 
139
139
  const db = await FetchDatabase({ database_id: 'YOUR_DATABASE_ID' })
@@ -146,6 +146,27 @@ const db = await FetchDatabase({ database_id: 'YOUR_DATABASE_ID' })
146
146
 
147
147
  // List view
148
148
  <List db={db} keys={['Name', 'Tags']} />
149
+
150
+ // Calendar view
151
+ <Calendar db={db} date="Date" keys={['Name', 'Tags']} />
152
+ ```
153
+
154
+ ##### Calendar options
155
+
156
+ Calendar view renders a monthly grid. Multi-day events (date properties with both `start` and `end`) are drawn as a single bar that spans the matching cells, with continuation across week boundaries.
157
+
158
+ ```tsx
159
+ <Calendar
160
+ db={db}
161
+ date="Date" // required: name of the date property
162
+ keys={['Name', 'Tags']} // properties to render inside each event bar
163
+ options={{
164
+ initialDate: '2026-04-01', // YYYY-MM-DD or YYYY-MM (default: today)
165
+ weekStart: 'monday', // 'sunday' | 'monday' (default: 'sunday')
166
+ locale: 'ja-JP', // overrides navigator.language for labels
167
+ href: { Name: '/blog/[id]' }, // same href/link/query API as other views
168
+ }}
169
+ />
149
170
  ```
150
171
 
151
172
  Main Exports
@@ -164,6 +185,7 @@ Main Exports
164
185
  - `Gallery` – Gallery view for databases
165
186
  - `Table` – Table view for databases
166
187
  - `List` – List view for databases
188
+ - `Calendar` – Monthly calendar view for databases (events placed on a date property)
167
189
 
168
190
  **Page & Blocks:**
169
191
  - `Page` – Renders a complete Notion page
@@ -1,5 +1,6 @@
1
1
  import fs from 'fs';
2
2
  import { mkdir, stat, unlink } from 'node:fs/promises';
3
+ import { pipeline } from 'node:stream/promises';
3
4
  import https from 'https';
4
5
  import http from 'http';
5
6
  import path from 'path';
@@ -162,15 +163,21 @@ export async function saveFile(fileUrl, prefix) {
162
163
  throw new Error(`retry download to ${urlWithoutQuerystring} but failed`);
163
164
  }
164
165
  }
166
+ // Use stream.pipeline so that source-side errors (request abort,
167
+ // socket close, network stall after `req.setTimeout` fires) reject
168
+ // and clean up the write stream instead of leaving the
169
+ // `writeStream.on('finish')` promise dangling forever.
165
170
  const writeStream = fs.createWriteStream(filePath);
166
- res.pipe(writeStream);
167
- await res.end;
168
- await new Promise((resolve, reject) => {
169
- writeStream.on('finish', resolve);
170
- writeStream.on('error', reject);
171
- });
171
+ await pipeline(res, writeStream);
172
172
  }
173
173
  catch (e) {
174
+ // Best-effort cleanup of any partial bytes pipeline managed to write
175
+ // before failing — otherwise the next call hits the existsSync()
176
+ // fast-path and serves a corrupted cached file.
177
+ try {
178
+ await unlink(filePath);
179
+ }
180
+ catch { }
174
181
  const errorMessage = `saveFile download error -- path: ${filePath}, url: ${fileUrl}, message: ${e}`;
175
182
  if (debug) {
176
183
  console.log(errorMessage);
@@ -248,15 +255,21 @@ export const saveImage = async (imageUrl, prefix) => {
248
255
  throw new Error(`retry download to ${urlWithoutQuerystring} but failed`);
249
256
  }
250
257
  }
258
+ // Use stream.pipeline so that source-side errors (request abort,
259
+ // socket close, network stall after `req.setTimeout` fires) reject
260
+ // and clean up the write stream instead of leaving the
261
+ // `writeStream.on('finish')` promise dangling forever.
251
262
  const writeStream = fs.createWriteStream(filePath);
252
- res.pipe(writeStream);
253
- await res.end;
254
- await new Promise((resolve, reject) => {
255
- writeStream.on('finish', resolve);
256
- writeStream.on('error', reject);
257
- });
263
+ await pipeline(res, writeStream);
258
264
  }
259
265
  catch (e) {
266
+ // Best-effort cleanup of any partial bytes pipeline managed to write
267
+ // before failing — otherwise the next call hits the existsSync()
268
+ // fast-path and serves a corrupted cached file.
269
+ try {
270
+ await unlink(filePath);
271
+ }
272
+ catch { }
260
273
  const errorMessage = `saveImage download error -- path: ${filePath}, url: ${imageUrl}, message: ${e}`;
261
274
  if (debug) {
262
275
  console.log(errorMessage);
@@ -267,6 +280,21 @@ export const saveImage = async (imageUrl, prefix) => {
267
280
  if (ext === '.ico' || ext === '.svg') {
268
281
  return { path: urlPath };
269
282
  }
283
+ // Source is already webp — re-encoding it would point sharp at the same
284
+ // path for input and output ("Cannot use same file for input and output")
285
+ // and discard width/height. Just measure metadata and return.
286
+ if (ext === '.webp') {
287
+ try {
288
+ const meta = await sharp(filePath).metadata();
289
+ return { path: urlPath, width: meta.width, height: meta.height };
290
+ }
291
+ catch (e) {
292
+ if (debug) {
293
+ console.log(`sharp.metadata() error -- path: ${urlPath}, message: ${e}`);
294
+ }
295
+ return { path: urlPath };
296
+ }
297
+ }
270
298
  /* Convert HEIC/HEIF to PNG first if needed */
271
299
  let processFilePath = filePath;
272
300
  let processUrlPath = urlPath;
@@ -424,17 +452,23 @@ export const imageRegexps = [
424
452
  /name="og:image"\s+content="([^"]+)"/,
425
453
  /name="twitter:image"\s+content="([^"]+)"/,
426
454
  ];
455
+ // URL captures use `[^"\s>]+?` (lazy) followed by a lookahead requiring
456
+ // `"`, whitespace, `>`, or `/>` so that an unquoted href like
457
+ // `href=/foo.svg/>` captures `/foo.svg` and not `/foo.svg/`. Without this
458
+ // the trailing `/` of a self-closing tag bleeds into the saved filename
459
+ // and breaks downstream sharp processing. `[^"]+` is preserved for
460
+ // non-URL captures (e.g. `sizes="..."`).
427
461
  export const iconRegexps = [
428
- /<link\s+href="?([^"]+)"?\s+rel="icon"/,
429
- /<link\s+rel="icon"\s+href="?([^"]+)"?\s*?\/?>/,
430
- /<link\s+rel="icon".*?href="?([^"]+)"?/,
431
- /<link\s+rel="shortcut icon"\s+type="image\/x-icon"\s+href="?([^"]+)"?\s?\/?>/,
432
- /<link\s+rel="shortcut icon"\s+href="?([^"\s>]+)"?\s?\/?>/,
433
- /<link\s+href="?([^"]+)"?\s+rel="(shortcut icon|icon shortcut)"(\s+type="image\/x-icon")?\s?\/?>/,
434
- /<link\s+href="?([^"]+)"?\s+rel="icon"\s+sizes="[^"]+"\s+type="image\/[^"]"\s*\/?>/,
435
- /type="image\/x-icon"\s+href="?([^"]+)"?/,
436
- /rel="icon"\s+href="?([^"]+)"?/,
437
- /rel="shortcut icon"\s+href="?([^"\s>]+)"?/,
462
+ /<link\s+href="?([^"\s>]+?(?=["\s>]|\/>))"?\s+rel="icon"/,
463
+ /<link\s+rel="icon"\s+href="?([^"\s>]+?(?=["\s>]|\/>))"?\s*?\/?>/,
464
+ /<link\s+rel="icon".*?href="?([^"\s>]+?(?=["\s>]|\/>))"?/,
465
+ /<link\s+rel="shortcut icon"\s+type="image\/x-icon"\s+href="?([^"\s>]+?(?=["\s>]|\/>))"?\s?\/?>/,
466
+ /<link\s+rel="shortcut icon"\s+href="?([^"\s>]+?(?=["\s>]|\/>))"?\s?\/?>/,
467
+ /<link\s+href="?([^"\s>]+?(?=["\s>]|\/>))"?\s+rel="(shortcut icon|icon shortcut)"(\s+type="image\/x-icon")?\s?\/?>/,
468
+ /<link\s+href="?([^"\s>]+?(?=["\s>]|\/>))"?\s+rel="icon"\s+sizes="[^"]+"\s+type="image\/[^"]"\s*\/?>/,
469
+ /type="image\/x-icon"\s+href="?([^"\s>]+?(?=["\s>]|\/>))"?/,
470
+ /rel="icon"\s+href="?([^"\s>]+?(?=["\s>]|\/>))"?/,
471
+ /rel="shortcut icon"\s+href="?([^"\s>]+?(?=["\s>]|\/>))"?/,
438
472
  ];
439
473
  export const findImage = (html) => {
440
474
  const img = html.match(/<img\s(.*?)\s?\/?>/);
@@ -1 +1 @@
1
- {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/exporter/files.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"files.js","sourceRoot":"","sources":["../../src/exporter/files.ts"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ interface LockOptions {
2
2
  timeout?: number;
3
3
  retryInterval?: number;
4
4
  maxAge?: number;
5
+ operationTimeout?: number;
5
6
  }
6
7
  /**
7
8
  * Performs exclusive control using file-based mutex
@@ -7,6 +7,9 @@ const DEFAULT_OPTIONS = {
7
7
  // inside a single critical section.
8
8
  retryInterval: 100, // 100ms
9
9
  maxAge: 60000, // 1 minute
10
+ operationTimeout: 600000, // 10 minutes — same upper bound as `timeout` so a
11
+ // hanging operation cannot keep the lock past the
12
+ // window in which other waiters would give up.
10
13
  };
11
14
  /**
12
15
  * Performs exclusive control using file-based mutex
@@ -34,9 +37,10 @@ export async function withFileLock(key, operation, options = {}) {
34
37
  if (debug) {
35
38
  console.log(`Lock acquired: ${key} (pid: ${process.pid})`);
36
39
  }
37
- // Execute operation
40
+ // Execute operation, bounded by operationTimeout so a hanging
41
+ // operation cannot wedge the lock indefinitely.
38
42
  try {
39
- const result = await operation();
43
+ const result = await runWithOperationTimeout(operation, opts.operationTimeout, key);
40
44
  return result;
41
45
  }
42
46
  finally {
@@ -91,6 +95,30 @@ function isProcessAlive(pid) {
91
95
  return false;
92
96
  }
93
97
  }
98
+ /**
99
+ * Race the operation against an operation-level timeout. The operation may
100
+ * still continue running after the timeout fires (we cannot synchronously
101
+ * cancel an arbitrary Promise), but the lock will be released and an error
102
+ * propagated so peers waiting on the same lock can make progress.
103
+ */
104
+ async function runWithOperationTimeout(operation, operationTimeout, key) {
105
+ let timer;
106
+ const timeoutPromise = new Promise((_resolve, reject) => {
107
+ timer = setTimeout(() => {
108
+ reject(new Error(`operation timed out for "${key}" after ${operationTimeout}ms`));
109
+ }, operationTimeout);
110
+ // Don't keep the event loop alive solely for the timeout.
111
+ if (typeof timer.unref === 'function')
112
+ timer.unref();
113
+ });
114
+ try {
115
+ return await Promise.race([operation(), timeoutPromise]);
116
+ }
117
+ finally {
118
+ if (timer)
119
+ clearTimeout(timer);
120
+ }
121
+ }
94
122
  /**
95
123
  * Release lock
96
124
  */
@@ -1 +1 @@
1
- {"version":3,"file":"mutex.js","sourceRoot":"","sources":["../../src/exporter/mutex.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"mutex.js","sourceRoot":"","sources":["../../src/exporter/mutex.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,5 @@
1
+ import type { CalendarProps } from './Calendar.types';
2
+
3
+
4
+ declare const Calendar: ({ keys, date, db, options }: CalendarProps) => import("react/jsx-runtime").JSX.Element;
5
+ export default Calendar;
@@ -0,0 +1,19 @@
1
+ import type { ParsedUrlQueryInput } from 'node:querystring';
2
+ import type { QueryDatabaseResponseEx } from '../../../exporter/index.js';
3
+ import type { Link } from '../types.js';
4
+ export interface CalendarProps {
5
+ keys: string[];
6
+ date: string;
7
+ db: QueryDatabaseResponseEx;
8
+ options?: CalendarOptions;
9
+ }
10
+ export interface CalendarOptions {
11
+ href?: {
12
+ [key: string]: string;
13
+ };
14
+ link?: Link;
15
+ query?: ParsedUrlQueryInput;
16
+ initialDate?: string;
17
+ weekStart?: 'sunday' | 'monday';
18
+ locale?: string;
19
+ }
@@ -0,0 +1,4 @@
1
+ import type { CalendarCellProps } from './CalendarCell.types';
2
+
3
+ declare const CalendarCell: ({ year, month, day, inMonth, isToday }: CalendarCellProps) => import("react/jsx-runtime").JSX.Element;
4
+ export default CalendarCell;
@@ -0,0 +1,7 @@
1
+ export interface CalendarCellProps {
2
+ year: number;
3
+ month: number;
4
+ day: number;
5
+ inMonth: boolean;
6
+ isToday: boolean;
7
+ }
@@ -0,0 +1,2 @@
1
+ import CalendarCell from './CalendarCell.js';
2
+ export { CalendarCell };
@@ -0,0 +1,4 @@
1
+ import type { CalendarEventProps } from './CalendarEvent.types';
2
+
3
+ declare const CalendarEvent: ({ page, keys, date, options, continuationLeft, continuationRight }: CalendarEventProps) => import("react/jsx-runtime").JSX.Element;
4
+ export default CalendarEvent;
@@ -0,0 +1,10 @@
1
+ import type { PageObjectResponseEx } from '../../../../exporter/index.js';
2
+ import type { CalendarOptions } from '../Calendar.types.js';
3
+ export interface CalendarEventProps {
4
+ page: PageObjectResponseEx;
5
+ keys: string[];
6
+ date: string;
7
+ options?: CalendarOptions;
8
+ continuationLeft?: boolean;
9
+ continuationRight?: boolean;
10
+ }
@@ -0,0 +1,2 @@
1
+ import CalendarEvent from './CalendarEvent.js';
2
+ export { CalendarEvent };
@@ -0,0 +1,4 @@
1
+ import type { CalendarHeaderProps } from './CalendarHeader.types';
2
+
3
+ declare const CalendarHeader: ({ year, month, locale, onPrev, onNext, onToday }: CalendarHeaderProps) => import("react/jsx-runtime").JSX.Element;
4
+ export default CalendarHeader;
@@ -0,0 +1,8 @@
1
+ export interface CalendarHeaderProps {
2
+ year: number;
3
+ month: number;
4
+ locale?: string;
5
+ onPrev: () => void;
6
+ onNext: () => void;
7
+ onToday: () => void;
8
+ }
@@ -0,0 +1,2 @@
1
+ import CalendarHeader from './CalendarHeader.js';
2
+ export { CalendarHeader };
@@ -0,0 +1,4 @@
1
+ import type { CalendarWeekProps } from './CalendarWeek.types';
2
+
3
+ declare const CalendarWeek: ({ weekStart, monthInView, todayKey, placed, slotCount, keys, date, options }: CalendarWeekProps) => import("react/jsx-runtime").JSX.Element;
4
+ export default CalendarWeek;
@@ -0,0 +1,20 @@
1
+ import type { PageObjectResponseEx } from '../../../../exporter/index.js';
2
+ import type { CalendarOptions } from '../Calendar.types.js';
3
+ export interface PlacedEvent {
4
+ page: PageObjectResponseEx;
5
+ startCol: number;
6
+ span: number;
7
+ slot: number;
8
+ isStart: boolean;
9
+ isEnd: boolean;
10
+ }
11
+ export interface CalendarWeekProps {
12
+ weekStart: Date;
13
+ monthInView: number;
14
+ todayKey: string;
15
+ placed: PlacedEvent[];
16
+ slotCount: number;
17
+ keys: string[];
18
+ date: string;
19
+ options?: CalendarOptions;
20
+ }
@@ -0,0 +1,2 @@
1
+ import CalendarWeek from './CalendarWeek.js';
2
+ export { CalendarWeek };
@@ -0,0 +1,2 @@
1
+ import Calendar from './Calendar.js';
2
+ export { Calendar };
@@ -0,0 +1 @@
1
+ export declare function dateKey(d: Date): string;
@@ -1,3 +1,8 @@
1
+ export * from './Calendar/index.js';
2
+ export * from './Calendar/CalendarCell/index.js';
3
+ export * from './Calendar/CalendarEvent/index.js';
4
+ export * from './Calendar/CalendarHeader/index.js';
5
+ export * from './Calendar/CalendarWeek/index.js';
1
6
  export * from './Checkbox/index.js';
2
7
  export * from './Gallery/GalleryCard/index.js';
3
8
  export * from './Gallery/GalleryCheckboxField/index.js';