From fbece4d642f59f4e8ef8bbf9a1e58cdbf6674a1e Mon Sep 17 00:00:00 2001 From: Thu Pham Date: Fri, 8 Mar 2024 09:35:30 -0800 Subject: [PATCH] More WIP and debugging --- src/controls/DatetimeControl.test.tsx | 17 ++++++++ .../controls/DatetimeControl.stories.tsx | 39 +++++++++++++++++-- 2 files changed, 53 insertions(+), 3 deletions(-) diff --git a/src/controls/DatetimeControl.test.tsx b/src/controls/DatetimeControl.test.tsx index 6026eca..3c4d4c0 100644 --- a/src/controls/DatetimeControl.test.tsx +++ b/src/controls/DatetimeControl.test.tsx @@ -3,7 +3,24 @@ import { render } from "../common/test-render" import { screen } from "@testing-library/react" import { datetimeSchema, datetimeUISchema, datetimeUISchemaWithRule } from "../testSchemas/datetimeSchema" +import { isDateTimeControl, rankWith } from "@jsonforms/core" +describe("DatetimeControlTester", () => { + test("tester works", () => { + const uiSchema = { + type: "Control", + scope: "#/properties/datetime", + } + const schema = { + type: "string", + title: "The Future is Now", + format: "date-time", + } + const context = {rootSchema: datetimeSchema, config: {}} + + expect(rankWith(1, isDateTimeControl)(uiSchema, schema, context)).toBe(1) + }) +}) describe("DatetimeControl", () => { const timestamp = "2023-07-18T01:02:01.182Z" const title = "The Future is Now" diff --git a/src/stories/controls/DatetimeControl.stories.tsx b/src/stories/controls/DatetimeControl.stories.tsx index 91ab6d8..915b619 100644 --- a/src/stories/controls/DatetimeControl.stories.tsx +++ b/src/stories/controls/DatetimeControl.stories.tsx @@ -3,6 +3,7 @@ import { cellRegistryEntries, rendererRegistryEntries } from "../../renderers"; import { StorybookAntDJsonForm } from "../../common/StorybookAntDJsonForm"; import { datetimeSchema, datetimeUISchema } from "../../testSchemas/datetimeSchema"; import { JsonForms } from "@jsonforms/react"; +import { DatetimeControl } from "../../controls/DatetimeControl"; const meta: Meta = { title: "Control/Datetime", @@ -15,10 +16,14 @@ const meta: Meta = { ] }, argTypes: { - rendererRegistryEntries: {}, + rendererRegistryEntries: { table: { disable: true } }, + uiSchemaRegistryEntries: { table: { disable: true } }, jsonSchema: { control: "object", - } + }, + data: {table: {disable: true}}, + config: {control: "object"}, + onChange: {table: {disable: true, action: "on-change"}}, } }; @@ -33,7 +38,7 @@ export const Datetime: Story = { }, } -export const DateTimeControl: Story = { +export const DateTimeControlUsingJsonForms: Story = { render: () => ( ), +} + +export const DateTimeControlComponent: Story = { + argTypes: { + rendererRegistryEntries: { table: { disable: true } }, + uiSchemaRegistryEntries: { table: { disable: true } }, + jsonSchema: { + control: "object", + }, + data: {table: {disable: true}}, + config: {control: "object"}, + onChange: {table: {disable: true, action: "on-change"}}, + }, + render: () => ( + console.log(result)} + label="Datetime" + uischema={datetimeUISchema["elements"][0]} + errors="" + rootSchema={{}} + id="" + enabled={true} + visible={true} + /> + ), } \ No newline at end of file