mirror of https://github.com/buster-so/buster.git
stubbed in report lists
This commit is contained in:
parent
7cf8b10c07
commit
cf5d549af3
|
@ -34,14 +34,18 @@
|
||||||
"@hono/zod-validator": "^0.7.2",
|
"@hono/zod-validator": "^0.7.2",
|
||||||
"@supabase/supabase-js": "catalog:",
|
"@supabase/supabase-js": "catalog:",
|
||||||
"@trigger.dev/sdk": "catalog:",
|
"@trigger.dev/sdk": "catalog:",
|
||||||
"drizzle-orm": "catalog:",
|
|
||||||
"ai": "catalog:",
|
"ai": "catalog:",
|
||||||
|
"drizzle-orm": "catalog:",
|
||||||
"hono": "catalog:",
|
"hono": "catalog:",
|
||||||
"hono-pino": "^0.10.1",
|
"hono-pino": "^0.10.1",
|
||||||
|
"lodash-es": "^4.17.21",
|
||||||
"pino": "^9.7.0",
|
"pino": "^9.7.0",
|
||||||
"pino-pretty": "^13.0.0",
|
"pino-pretty": "^13.0.0",
|
||||||
"typescript": "5.8.3",
|
|
||||||
"tsup": "catalog:",
|
"tsup": "catalog:",
|
||||||
|
"typescript": "5.8.3",
|
||||||
"zod": "catalog:"
|
"zod": "catalog:"
|
||||||
|
},
|
||||||
|
"devDependencies": {
|
||||||
|
"@types/lodash-es": "^4.17.12"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -2,7 +2,7 @@ import type { User } from '@buster/database';
|
||||||
import type {
|
import type {
|
||||||
GetReportsListRequest,
|
GetReportsListRequest,
|
||||||
GetReportsListResponse,
|
GetReportsListResponse,
|
||||||
ReportResponse,
|
ReportListItem,
|
||||||
} from '@buster/server-shared/reports';
|
} from '@buster/server-shared/reports';
|
||||||
import { GetReportsListRequestSchema } from '@buster/server-shared/reports';
|
import { GetReportsListRequestSchema } from '@buster/server-shared/reports';
|
||||||
import { zValidator } from '@hono/zod-validator';
|
import { zValidator } from '@hono/zod-validator';
|
||||||
|
@ -12,27 +12,14 @@ async function getReportsListHandler(
|
||||||
request: GetReportsListRequest,
|
request: GetReportsListRequest,
|
||||||
user: User
|
user: User
|
||||||
): Promise<GetReportsListResponse> {
|
): Promise<GetReportsListResponse> {
|
||||||
const stubbedReports: ReportResponse[] = [
|
const stubbedReports: ReportListItem[] = [
|
||||||
{
|
{
|
||||||
id: 'report-1',
|
id: 'report-1',
|
||||||
name: 'Sales Analysis Q4',
|
name: 'Sales Analysis Q4',
|
||||||
file_name: 'sales_analysis_q4.md',
|
file_name: 'sales_analysis_q4.md',
|
||||||
description: 'Quarterly sales performance analysis',
|
description: 'Quarterly sales performance analysis',
|
||||||
created_by: user.id,
|
created_by: user.id,
|
||||||
created_at: '2024-01-15T10:00:00Z',
|
|
||||||
updated_at: '2024-01-20T14:30:00Z',
|
updated_at: '2024-01-20T14:30:00Z',
|
||||||
deleted_at: null,
|
|
||||||
publicly_accessible: false,
|
|
||||||
content: [
|
|
||||||
{
|
|
||||||
type: 'h1' as const,
|
|
||||||
children: [{ text: 'Sales Analysis Q4' }],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
type: 'p' as const,
|
|
||||||
children: [{ text: 'This report analyzes our Q4 sales performance.' }],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 'report-2',
|
id: 'report-2',
|
||||||
|
@ -40,16 +27,7 @@ async function getReportsListHandler(
|
||||||
file_name: 'customer_metrics.md',
|
file_name: 'customer_metrics.md',
|
||||||
description: 'Key customer engagement metrics',
|
description: 'Key customer engagement metrics',
|
||||||
created_by: user.id,
|
created_by: user.id,
|
||||||
created_at: '2024-01-10T09:00:00Z',
|
|
||||||
updated_at: '2024-01-18T16:45:00Z',
|
updated_at: '2024-01-18T16:45:00Z',
|
||||||
deleted_at: null,
|
|
||||||
publicly_accessible: true,
|
|
||||||
content: [
|
|
||||||
{
|
|
||||||
type: 'h1' as const,
|
|
||||||
children: [{ text: 'Customer Metrics' }],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
id: 'report-3',
|
id: 'report-3',
|
||||||
|
@ -57,22 +35,7 @@ async function getReportsListHandler(
|
||||||
file_name: 'marketing_campaign_results.md',
|
file_name: 'marketing_campaign_results.md',
|
||||||
description: 'Analysis of recent marketing campaigns',
|
description: 'Analysis of recent marketing campaigns',
|
||||||
created_by: user.id,
|
created_by: user.id,
|
||||||
created_at: '2024-01-05T08:30:00Z',
|
|
||||||
updated_at: '2024-01-12T11:15:00Z',
|
updated_at: '2024-01-12T11:15:00Z',
|
||||||
deleted_at: null,
|
|
||||||
publicly_accessible: false,
|
|
||||||
content: [
|
|
||||||
{
|
|
||||||
type: 'h1' as const,
|
|
||||||
children: [{ text: 'Marketing Campaign Results' }],
|
|
||||||
},
|
|
||||||
{
|
|
||||||
type: 'p' as const,
|
|
||||||
children: [
|
|
||||||
{ text: 'Overview of our recent marketing initiatives and their performance.' },
|
|
||||||
],
|
|
||||||
},
|
|
||||||
],
|
|
||||||
},
|
},
|
||||||
];
|
];
|
||||||
|
|
||||||
|
@ -80,7 +43,7 @@ async function getReportsListHandler(
|
||||||
// Page is 1-based, so we need to subtract 1 for array indexing
|
// Page is 1-based, so we need to subtract 1 for array indexing
|
||||||
const startIndex = (page - 1) * page_size;
|
const startIndex = (page - 1) * page_size;
|
||||||
const endIndex = startIndex + page_size;
|
const endIndex = startIndex + page_size;
|
||||||
const paginatedReports = stubbedReports.slice(startIndex, endIndex);
|
const paginatedReports: ReportListItem[] = stubbedReports.slice(startIndex, endIndex);
|
||||||
|
|
||||||
const result: GetReportsListResponse = {
|
const result: GetReportsListResponse = {
|
||||||
data: paginatedReports,
|
data: paginatedReports,
|
||||||
|
|
|
@ -0,0 +1,55 @@
|
||||||
|
import type { User } from '@buster/database';
|
||||||
|
import type {
|
||||||
|
GetReportIndividualResponse,
|
||||||
|
ReportIndividualResponse,
|
||||||
|
} from '@buster/server-shared/reports';
|
||||||
|
import { zValidator } from '@hono/zod-validator';
|
||||||
|
import { Hono } from 'hono';
|
||||||
|
import { HTTPException } from 'hono/http-exception';
|
||||||
|
|
||||||
|
async function getReportHandler(
|
||||||
|
reportId: string,
|
||||||
|
user: User
|
||||||
|
): Promise<GetReportIndividualResponse> {
|
||||||
|
return {
|
||||||
|
id: reportId,
|
||||||
|
name: 'Sales Analysis Q4',
|
||||||
|
file_name: 'sales_analysis_q4.md',
|
||||||
|
description: 'Quarterly sales performance analysis',
|
||||||
|
created_by: user.id,
|
||||||
|
created_at: '2024-01-15T10:00:00Z',
|
||||||
|
updated_at: '2024-01-20T14:30:00Z',
|
||||||
|
deleted_at: null,
|
||||||
|
publicly_accessible: false,
|
||||||
|
content: [
|
||||||
|
{
|
||||||
|
type: 'h1',
|
||||||
|
children: [{ text: 'Sales Analysis Q4' }],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'p',
|
||||||
|
children: [{ text: 'This report analyzes our Q4 sales performance.' }],
|
||||||
|
},
|
||||||
|
{
|
||||||
|
type: 'metric',
|
||||||
|
metricId: '123',
|
||||||
|
children: [{ text: '' }],
|
||||||
|
caption: [{ text: 'This is a metric' }],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
const app = new Hono().get('/', async (c) => {
|
||||||
|
const reportId = c.req.param('id');
|
||||||
|
const user = c.get('busterUser');
|
||||||
|
|
||||||
|
if (!reportId) {
|
||||||
|
throw new HTTPException(404, { message: 'Report ID is required' });
|
||||||
|
}
|
||||||
|
|
||||||
|
const response: GetReportIndividualResponse = await getReportHandler(reportId, user);
|
||||||
|
return c.json(response);
|
||||||
|
});
|
||||||
|
|
||||||
|
export default app;
|
|
@ -1,9 +1,5 @@
|
||||||
import type { User } from '@buster/database';
|
import type { User } from '@buster/database';
|
||||||
import type {
|
import type { UpdateReportRequest, UpdateReportResponse } from '@buster/server-shared/reports';
|
||||||
ReportResponse,
|
|
||||||
UpdateReportRequest,
|
|
||||||
UpdateReportResponse,
|
|
||||||
} from '@buster/server-shared/reports';
|
|
||||||
import { UpdateReportRequestSchema } from '@buster/server-shared/reports';
|
import { UpdateReportRequestSchema } from '@buster/server-shared/reports';
|
||||||
import { zValidator } from '@hono/zod-validator';
|
import { zValidator } from '@hono/zod-validator';
|
||||||
import { Hono } from 'hono';
|
import { Hono } from 'hono';
|
||||||
|
@ -14,7 +10,7 @@ async function updateReportHandler(
|
||||||
request: UpdateReportRequest,
|
request: UpdateReportRequest,
|
||||||
user: User
|
user: User
|
||||||
): Promise<UpdateReportResponse> {
|
): Promise<UpdateReportResponse> {
|
||||||
const existingReport: ReportResponse = {
|
const existingReport: UpdateReportResponse = {
|
||||||
id: reportId,
|
id: reportId,
|
||||||
name: 'Sales Analysis Q4',
|
name: 'Sales Analysis Q4',
|
||||||
file_name: 'sales_analysis_q4.md',
|
file_name: 'sales_analysis_q4.md',
|
||||||
|
@ -42,7 +38,7 @@ async function updateReportHandler(
|
||||||
|
|
||||||
const updatedReport: UpdateReportResponse = {
|
const updatedReport: UpdateReportResponse = {
|
||||||
...existingReport,
|
...existingReport,
|
||||||
...(request as Partial<ReportResponse>),
|
...(request as Partial<UpdateReportResponse>),
|
||||||
updated_at: new Date().toISOString(),
|
updated_at: new Date().toISOString(),
|
||||||
};
|
};
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
import { Hono } from 'hono';
|
||||||
|
import { requireAuth } from '../../../../middleware/auth';
|
||||||
|
import GET from './GET';
|
||||||
|
import PUT from './PUT';
|
||||||
|
|
||||||
|
const app = new Hono().route('/', GET).route('/', PUT);
|
||||||
|
|
||||||
|
export default app;
|
|
@ -1,11 +1,8 @@
|
||||||
import { Hono } from 'hono';
|
import { Hono } from 'hono';
|
||||||
import { requireAuth } from '../../../middleware/auth';
|
import { requireAuth } from '../../../middleware/auth';
|
||||||
import GET from './GET';
|
import GET from './GET';
|
||||||
import PUT_ID from './[id]';
|
import individualReport from './[id]';
|
||||||
|
|
||||||
const app = new Hono()
|
const app = new Hono().use('*', requireAuth).route('/', GET).route('/:id', individualReport);
|
||||||
.use('*', requireAuth)
|
|
||||||
.route('/', GET)
|
|
||||||
.route('/:id', PUT_ID);
|
|
||||||
|
|
||||||
export default app;
|
export default app;
|
||||||
|
|
|
@ -2,7 +2,16 @@ import { z } from 'zod';
|
||||||
import type { ReportElement, ReportElements } from './report-elements';
|
import type { ReportElement, ReportElements } from './report-elements';
|
||||||
import { ReportElementSchema } from './report-elements';
|
import { ReportElementSchema } from './report-elements';
|
||||||
|
|
||||||
const ReportResponseSchema: z.ZodType<{
|
export const ReportListItemSchema = z.object({
|
||||||
|
id: z.string(),
|
||||||
|
name: z.string(),
|
||||||
|
file_name: z.string(),
|
||||||
|
description: z.string(),
|
||||||
|
created_by: z.string(),
|
||||||
|
updated_at: z.string(),
|
||||||
|
});
|
||||||
|
|
||||||
|
export const ReportIndividualResponseSchema: z.ZodType<{
|
||||||
id: string;
|
id: string;
|
||||||
name: string;
|
name: string;
|
||||||
file_name: string;
|
file_name: string;
|
||||||
|
@ -26,7 +35,5 @@ const ReportResponseSchema: z.ZodType<{
|
||||||
content: z.array(ReportElementSchema) as z.ZodType<ReportElements>,
|
content: z.array(ReportElementSchema) as z.ZodType<ReportElements>,
|
||||||
});
|
});
|
||||||
|
|
||||||
// Export base schema for operations like .pick()
|
export type ReportListItem = z.infer<typeof ReportListItemSchema>;
|
||||||
export { ReportResponseSchema };
|
export type ReportIndividualResponse = z.infer<typeof ReportIndividualResponseSchema>;
|
||||||
|
|
||||||
export type ReportResponse = z.infer<typeof ReportResponseSchema>;
|
|
||||||
|
|
|
@ -2,7 +2,6 @@ import { z } from 'zod';
|
||||||
import { PaginatedRequestSchema } from '../type-utilities/pagination';
|
import { PaginatedRequestSchema } from '../type-utilities/pagination';
|
||||||
import type { ReportElement, ReportElements } from './report-elements';
|
import type { ReportElement, ReportElements } from './report-elements';
|
||||||
import { ReportElementSchema } from './report-elements';
|
import { ReportElementSchema } from './report-elements';
|
||||||
import { ReportResponseSchema } from './reports.types';
|
|
||||||
|
|
||||||
export const GetReportsListRequestSchema = PaginatedRequestSchema;
|
export const GetReportsListRequestSchema = PaginatedRequestSchema;
|
||||||
|
|
||||||
|
|
|
@ -1,9 +1,10 @@
|
||||||
import type { z } from 'zod';
|
import type { z } from 'zod';
|
||||||
import { PaginatedResponseSchema } from '../type-utilities/pagination';
|
import { PaginatedResponseSchema } from '../type-utilities/pagination';
|
||||||
import { ReportResponseSchema } from './reports.types';
|
import { ReportIndividualResponseSchema, ReportListItemSchema } from './reports.types';
|
||||||
|
|
||||||
export const GetReportsListResponseSchema = PaginatedResponseSchema(ReportResponseSchema);
|
export const GetReportsListResponseSchema = PaginatedResponseSchema(ReportListItemSchema);
|
||||||
export const UpdateReportResponseSchema = ReportResponseSchema;
|
export const UpdateReportResponseSchema = ReportIndividualResponseSchema;
|
||||||
|
|
||||||
export type GetReportsListResponse = z.infer<typeof GetReportsListResponseSchema>;
|
export type GetReportsListResponse = z.infer<typeof GetReportsListResponseSchema>;
|
||||||
export type UpdateReportResponse = z.infer<typeof UpdateReportResponseSchema>;
|
export type UpdateReportResponse = z.infer<typeof UpdateReportResponseSchema>;
|
||||||
|
export type GetReportIndividualResponse = z.infer<typeof ReportIndividualResponseSchema>;
|
||||||
|
|
|
@ -175,6 +175,9 @@ importers:
|
||||||
hono-pino:
|
hono-pino:
|
||||||
specifier: ^0.10.1
|
specifier: ^0.10.1
|
||||||
version: 0.10.1(hono@4.8.4)(pino@9.7.0)
|
version: 0.10.1(hono@4.8.4)(pino@9.7.0)
|
||||||
|
lodash-es:
|
||||||
|
specifier: ^4.17.21
|
||||||
|
version: 4.17.21
|
||||||
pino:
|
pino:
|
||||||
specifier: ^9.7.0
|
specifier: ^9.7.0
|
||||||
version: 9.7.0
|
version: 9.7.0
|
||||||
|
@ -190,6 +193,10 @@ importers:
|
||||||
zod:
|
zod:
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 3.25.1
|
version: 3.25.1
|
||||||
|
devDependencies:
|
||||||
|
'@types/lodash-es':
|
||||||
|
specifier: ^4.17.12
|
||||||
|
version: 4.17.12
|
||||||
|
|
||||||
apps/trigger:
|
apps/trigger:
|
||||||
dependencies:
|
dependencies:
|
||||||
|
@ -298,10 +305,10 @@ importers:
|
||||||
version: 49.2.4(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3)
|
version: 49.2.4(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3)
|
||||||
'@platejs/autoformat':
|
'@platejs/autoformat':
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 49.0.0(platejs@49.2.4(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
version: 49.0.0(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||||
'@platejs/basic-nodes':
|
'@platejs/basic-nodes':
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 49.0.0(platejs@49.2.4(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
version: 49.0.0(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||||
'@platejs/basic-styles':
|
'@platejs/basic-styles':
|
||||||
specifier: ^49.0.0
|
specifier: ^49.0.0
|
||||||
version: 49.0.0(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
version: 49.0.0(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||||
|
@ -352,7 +359,7 @@ importers:
|
||||||
version: 49.2.0(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
version: 49.2.0(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||||
'@platejs/markdown':
|
'@platejs/markdown':
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 49.2.1(platejs@49.2.4(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3)
|
version: 49.2.1(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3)
|
||||||
'@platejs/math':
|
'@platejs/math':
|
||||||
specifier: ^49.0.0
|
specifier: ^49.0.0
|
||||||
version: 49.0.0(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
version: 49.0.0(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||||
|
@ -1038,13 +1045,13 @@ importers:
|
||||||
version: link:../vitest-config
|
version: link:../vitest-config
|
||||||
'@platejs/autoformat':
|
'@platejs/autoformat':
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 49.0.0(platejs@49.2.4(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
version: 49.0.0(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||||
'@platejs/basic-nodes':
|
'@platejs/basic-nodes':
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 49.0.0(platejs@49.2.4(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
version: 49.0.0(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||||
'@platejs/markdown':
|
'@platejs/markdown':
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 49.2.1(platejs@49.2.4(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3)
|
version: 49.2.1(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3)
|
||||||
platejs:
|
platejs:
|
||||||
specifier: 'catalog:'
|
specifier: 'catalog:'
|
||||||
version: 49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1))
|
version: 49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1))
|
||||||
|
@ -5771,6 +5778,9 @@ packages:
|
||||||
'@types/katex@0.16.7':
|
'@types/katex@0.16.7':
|
||||||
resolution: {integrity: sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==}
|
resolution: {integrity: sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==}
|
||||||
|
|
||||||
|
'@types/lodash-es@4.17.12':
|
||||||
|
resolution: {integrity: sha512-0NgftHUcV4v34VhXm8QBSftKVXtbkBG3ViCjs6+eJ5a6y6Mi/jiFGPc1sC7QK+9BFhWrURE3EOggmWaSxL9OzQ==}
|
||||||
|
|
||||||
'@types/lodash@4.17.20':
|
'@types/lodash@4.17.20':
|
||||||
resolution: {integrity: sha512-H3MHACvFUEiujabxhaI/ImO6gUrd8oOurg7LQtS7mbwIXA/cUqWrvBsaeJ23aZEPk1TAYkurjfMbSELfoCXlGA==}
|
resolution: {integrity: sha512-H3MHACvFUEiujabxhaI/ImO6gUrd8oOurg7LQtS7mbwIXA/cUqWrvBsaeJ23aZEPk1TAYkurjfMbSELfoCXlGA==}
|
||||||
|
|
||||||
|
@ -6773,6 +6783,7 @@ packages:
|
||||||
|
|
||||||
bun@1.2.18:
|
bun@1.2.18:
|
||||||
resolution: {integrity: sha512-OR+EpNckoJN4tHMVZPaTPxDj2RgpJgJwLruTIFYbO3bQMguLd0YrmkWKYqsiihcLgm2ehIjF/H1RLfZiRa7+qQ==}
|
resolution: {integrity: sha512-OR+EpNckoJN4tHMVZPaTPxDj2RgpJgJwLruTIFYbO3bQMguLd0YrmkWKYqsiihcLgm2ehIjF/H1RLfZiRa7+qQ==}
|
||||||
|
cpu: [arm64, x64, aarch64]
|
||||||
os: [darwin, linux, win32]
|
os: [darwin, linux, win32]
|
||||||
hasBin: true
|
hasBin: true
|
||||||
|
|
||||||
|
@ -16479,7 +16490,7 @@ snapshots:
|
||||||
|
|
||||||
'@platejs/ai@49.2.4(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3)':
|
'@platejs/ai@49.2.4(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3)':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@platejs/markdown': 49.2.1(platejs@49.2.4(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3)
|
'@platejs/markdown': 49.2.1(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3)
|
||||||
'@platejs/selection': 49.2.4(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
'@platejs/selection': 49.2.4(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)
|
||||||
lodash: 4.17.21
|
lodash: 4.17.21
|
||||||
platejs: 49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1))
|
platejs: 49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1))
|
||||||
|
@ -16489,14 +16500,14 @@ snapshots:
|
||||||
- supports-color
|
- supports-color
|
||||||
- typescript
|
- typescript
|
||||||
|
|
||||||
'@platejs/autoformat@49.0.0(platejs@49.2.4(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
|
'@platejs/autoformat@49.0.0(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
|
||||||
dependencies:
|
dependencies:
|
||||||
lodash: 4.17.21
|
lodash: 4.17.21
|
||||||
platejs: 49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1))
|
platejs: 49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1))
|
||||||
react: 18.3.1
|
react: 18.3.1
|
||||||
react-dom: 18.3.1(react@18.3.1)
|
react-dom: 18.3.1(react@18.3.1)
|
||||||
|
|
||||||
'@platejs/basic-nodes@49.0.0(platejs@49.2.4(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
|
'@platejs/basic-nodes@49.0.0(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)':
|
||||||
dependencies:
|
dependencies:
|
||||||
platejs: 49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1))
|
platejs: 49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1))
|
||||||
react: 18.3.1
|
react: 18.3.1
|
||||||
|
@ -16552,7 +16563,7 @@ snapshots:
|
||||||
html-entities: 2.6.0
|
html-entities: 2.6.0
|
||||||
is-hotkey: 0.2.0
|
is-hotkey: 0.2.0
|
||||||
jotai: 2.8.4(@types/react@18.3.23)(react@18.3.1)
|
jotai: 2.8.4(@types/react@18.3.23)(react@18.3.1)
|
||||||
jotai-optics: 0.4.0(jotai@2.8.4(react@18.3.1))(optics-ts@2.4.1)
|
jotai-optics: 0.4.0(jotai@2.8.4(@types/react@18.3.23)(react@18.3.1))(optics-ts@2.4.1)
|
||||||
jotai-x: 2.3.3(@types/react@18.3.23)(jotai@2.8.4(@types/react@18.3.23)(react@18.3.1))(react@18.3.1)
|
jotai-x: 2.3.3(@types/react@18.3.23)(jotai@2.8.4(@types/react@18.3.23)(react@18.3.1))(react@18.3.1)
|
||||||
lodash: 4.17.21
|
lodash: 4.17.21
|
||||||
nanoid: 5.1.5
|
nanoid: 5.1.5
|
||||||
|
@ -16563,7 +16574,7 @@ snapshots:
|
||||||
slate-react: 0.117.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)
|
slate-react: 0.117.1(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)
|
||||||
use-deep-compare: 1.3.0(react@18.3.1)
|
use-deep-compare: 1.3.0(react@18.3.1)
|
||||||
zustand: 5.0.7(@types/react@18.3.23)(immer@10.1.1)(react@18.3.1)(use-sync-external-store@1.5.0(react@18.3.1))
|
zustand: 5.0.7(@types/react@18.3.23)(immer@10.1.1)(react@18.3.1)(use-sync-external-store@1.5.0(react@18.3.1))
|
||||||
zustand-x: 6.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(zustand@5.0.7(immer@10.1.1)(react@18.3.1)(use-sync-external-store@1.5.0(react@18.3.1)))
|
zustand-x: 6.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(zustand@5.0.7(@types/react@18.3.23)(immer@10.1.1)(react@18.3.1)(use-sync-external-store@1.5.0(react@18.3.1)))
|
||||||
transitivePeerDependencies:
|
transitivePeerDependencies:
|
||||||
- '@types/react'
|
- '@types/react'
|
||||||
- immer
|
- immer
|
||||||
|
@ -16654,7 +16665,7 @@ snapshots:
|
||||||
react: 18.3.1
|
react: 18.3.1
|
||||||
react-dom: 18.3.1(react@18.3.1)
|
react-dom: 18.3.1(react@18.3.1)
|
||||||
|
|
||||||
'@platejs/markdown@49.2.1(platejs@49.2.4(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3)':
|
'@platejs/markdown@49.2.1(platejs@49.2.4(@types/react@18.3.23)(immer@10.1.1)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(slate-dom@0.116.0(slate@0.117.0))(slate@0.117.0)(use-sync-external-store@1.5.0(react@18.3.1)))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.8.3)':
|
||||||
dependencies:
|
dependencies:
|
||||||
marked: 15.0.12
|
marked: 15.0.12
|
||||||
mdast-util-math: 3.0.0
|
mdast-util-math: 3.0.0
|
||||||
|
@ -18761,6 +18772,10 @@ snapshots:
|
||||||
|
|
||||||
'@types/katex@0.16.7': {}
|
'@types/katex@0.16.7': {}
|
||||||
|
|
||||||
|
'@types/lodash-es@4.17.12':
|
||||||
|
dependencies:
|
||||||
|
'@types/lodash': 4.17.20
|
||||||
|
|
||||||
'@types/lodash@4.17.20': {}
|
'@types/lodash@4.17.20': {}
|
||||||
|
|
||||||
'@types/mdast@4.0.4':
|
'@types/mdast@4.0.4':
|
||||||
|
@ -19207,14 +19222,14 @@ snapshots:
|
||||||
msw: 2.10.4(@types/node@20.19.4)(typescript@5.8.3)
|
msw: 2.10.4(@types/node@20.19.4)(typescript@5.8.3)
|
||||||
vite: 6.3.5(@types/node@20.19.4)(jiti@2.4.2)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(tsx@4.20.3)(yaml@2.8.0)
|
vite: 6.3.5(@types/node@20.19.4)(jiti@2.4.2)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(tsx@4.20.3)(yaml@2.8.0)
|
||||||
|
|
||||||
'@vitest/mocker@3.2.4(msw@2.10.4(@types/node@24.0.10)(typescript@5.8.3))(vite@6.3.5(@types/node@20.19.4)(jiti@2.4.2)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(tsx@4.20.3)(yaml@2.8.0))':
|
'@vitest/mocker@3.2.4(msw@2.10.4(@types/node@24.0.10)(typescript@5.8.3))(vite@6.3.5(@types/node@24.0.10)(jiti@2.4.2)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(tsx@4.20.3)(yaml@2.8.0))':
|
||||||
dependencies:
|
dependencies:
|
||||||
'@vitest/spy': 3.2.4
|
'@vitest/spy': 3.2.4
|
||||||
estree-walker: 3.0.3
|
estree-walker: 3.0.3
|
||||||
magic-string: 0.30.17
|
magic-string: 0.30.17
|
||||||
optionalDependencies:
|
optionalDependencies:
|
||||||
msw: 2.10.4(@types/node@24.0.10)(typescript@5.8.3)
|
msw: 2.10.4(@types/node@24.0.10)(typescript@5.8.3)
|
||||||
vite: 6.3.5(@types/node@20.19.4)(jiti@2.4.2)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(tsx@4.20.3)(yaml@2.8.0)
|
vite: 6.3.5(@types/node@24.0.10)(jiti@2.4.2)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(tsx@4.20.3)(yaml@2.8.0)
|
||||||
|
|
||||||
'@vitest/pretty-format@2.0.5':
|
'@vitest/pretty-format@2.0.5':
|
||||||
dependencies:
|
dependencies:
|
||||||
|
@ -22519,7 +22534,7 @@ snapshots:
|
||||||
|
|
||||||
jose@5.10.0: {}
|
jose@5.10.0: {}
|
||||||
|
|
||||||
jotai-optics@0.4.0(jotai@2.8.4(react@18.3.1))(optics-ts@2.4.1):
|
jotai-optics@0.4.0(jotai@2.8.4(@types/react@18.3.23)(react@18.3.1))(optics-ts@2.4.1):
|
||||||
dependencies:
|
dependencies:
|
||||||
jotai: 2.8.4(@types/react@18.3.23)(react@18.3.1)
|
jotai: 2.8.4(@types/react@18.3.23)(react@18.3.1)
|
||||||
optics-ts: 2.4.1
|
optics-ts: 2.4.1
|
||||||
|
@ -26543,7 +26558,7 @@ snapshots:
|
||||||
dependencies:
|
dependencies:
|
||||||
'@types/chai': 5.2.2
|
'@types/chai': 5.2.2
|
||||||
'@vitest/expect': 3.2.4
|
'@vitest/expect': 3.2.4
|
||||||
'@vitest/mocker': 3.2.4(msw@2.10.4(@types/node@24.0.10)(typescript@5.8.3))(vite@6.3.5(@types/node@20.19.4)(jiti@2.4.2)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(tsx@4.20.3)(yaml@2.8.0))
|
'@vitest/mocker': 3.2.4(msw@2.10.4(@types/node@24.0.10)(typescript@5.8.3))(vite@6.3.5(@types/node@24.0.10)(jiti@2.4.2)(lightningcss@1.30.1)(sass@1.89.2)(terser@5.43.1)(tsx@4.20.3)(yaml@2.8.0))
|
||||||
'@vitest/pretty-format': 3.2.4
|
'@vitest/pretty-format': 3.2.4
|
||||||
'@vitest/runner': 3.2.4
|
'@vitest/runner': 3.2.4
|
||||||
'@vitest/snapshot': 3.2.4
|
'@vitest/snapshot': 3.2.4
|
||||||
|
@ -26950,7 +26965,7 @@ snapshots:
|
||||||
|
|
||||||
zod@3.25.1: {}
|
zod@3.25.1: {}
|
||||||
|
|
||||||
zustand-x@6.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(zustand@5.0.7(immer@10.1.1)(react@18.3.1)(use-sync-external-store@1.5.0(react@18.3.1))):
|
zustand-x@6.1.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(scheduler@0.23.2)(zustand@5.0.7(@types/react@18.3.23)(immer@10.1.1)(react@18.3.1)(use-sync-external-store@1.5.0(react@18.3.1))):
|
||||||
dependencies:
|
dependencies:
|
||||||
immer: 10.1.1
|
immer: 10.1.1
|
||||||
lodash.mapvalues: 4.6.0
|
lodash.mapvalues: 4.6.0
|
||||||
|
|
Loading…
Reference in New Issue