UNPKG

@baseplate-dev/react-generators

Version:

React Generators for Baseplate

35 lines 1.38 kB
import { tsCodeFragment } from '@baseplate-dev/core-generators'; import { createGenerator, createGeneratorTask } from '@baseplate-dev/sync'; import { z } from 'zod'; import { adminCrudColumnContainerProvider } from '../_providers/admin-crud-column-container.js'; const descriptorSchema = z.object({ id: z.string().min(1), label: z.string().min(1), order: z.number().int().nonnegative(), modelField: z.string().min(1), }); export const adminCrudTextColumnGenerator = createGenerator({ name: 'admin/admin-crud-text-column', generatorFileUrl: import.meta.url, descriptorSchema, getInstanceName: (descriptor) => descriptor.id, buildTasks: ({ label, order, modelField }) => ({ main: createGeneratorTask({ dependencies: { adminCrudColumnContainer: adminCrudColumnContainerProvider, }, run({ adminCrudColumnContainer }) { adminCrudColumnContainer.addColumn({ label, order, display: { content: (itemName) => tsCodeFragment(`{${itemName}.${modelField}}`), graphQLFields: [{ name: modelField }], }, }); return {}; }, }), }), }); //# sourceMappingURL=admin-crud-text-column.generator.js.map