Skip to content

Commit

Permalink
✨🚧Implemented BooleanField
Browse files Browse the repository at this point in the history
  • Loading branch information
carefree0910 committed Apr 30, 2023
1 parent ecfb6f7 commit 2cd8c95
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 0 deletions.
25 changes: 25 additions & 0 deletions cfdraw/.web/src/plugins/components/Fields/BooleanField.tsx
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
import { observer } from "mobx-react-lite";

import type { IField } from "@/schema/plugins";
import type { IBooleanField } from "@/schema/fields";
import { titleCaseWord } from "@/utils/misc";
import { getMetaField, setMetaField } from "@/stores/meta";
import CFSwitch from "@/components/CFSwitch";
import { useDefaultFieldValue } from "./utils";

export interface BooleanFieldProps extends IField<IBooleanField> {}
function BooleanField({ field, definition }: BooleanFieldProps) {
useDefaultFieldValue({ field, definition });

return (
<CFSwitch
label={definition.label ?? titleCaseWord(field)}
value={getMetaField(field)}
setValue={(value) => setMetaField(field, value)}
tooltip={definition.tooltip}
{...definition.props}
/>
);
}

export default observer(BooleanField);
3 changes: 3 additions & 0 deletions cfdraw/.web/src/plugins/components/Fields/index.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -7,6 +7,7 @@ import type { IDefinitions } from "@/schema/fields";
import TextField from "./TextField";
import NumberField from "./NumberField";
import SelectField from "./SelectField";
import BooleanField from "./BooleanField";

interface IUseDefinitions extends FlexProps {
definitions: IDefinitions;
Expand All @@ -32,6 +33,8 @@ export function useDefinitions({ definitions, numColumns, rowGap, ...others }: I
Field = NumberField;
} else if (definition.type === "select") {
Field = SelectField;
} else if (definition.type === "boolean") {
Field = BooleanField;
}
if (!Field) return;
const props = definition.props ?? {};
Expand Down

0 comments on commit 2cd8c95

Please sign in to comment.