diff --git a/apps/frontend/app/api/v1/osograph/schema/resolvers/data-model.ts b/apps/frontend/app/api/v1/osograph/schema/resolvers/data-model.ts index 61832e669..1b024272b 100644 --- a/apps/frontend/app/api/v1/osograph/schema/resolvers/data-model.ts +++ b/apps/frontend/app/api/v1/osograph/schema/resolvers/data-model.ts @@ -109,7 +109,7 @@ export const dataModelResolvers = { const { data: latestRevision } = await supabase .from("model_revision") - .select("revision_number, hash") + .select("*") .eq("model_id", validatedInput.dataModelId) .order("revision_number", { ascending: false }) .limit(1) @@ -152,8 +152,8 @@ export const dataModelResolvers = { language: validatedInput.language, code: validatedInput.code, cron: validatedInput.cron, - start: validatedInput.start, - end: validatedInput.end, + start: validatedInput.start?.toISOString() ?? null, + end: validatedInput.end?.toISOString() ?? null, schema: validatedInput.schema.map((col) => ({ name: col.name, type: col.type, diff --git a/apps/frontend/app/api/v1/osograph/utils/resolver-helpers.ts b/apps/frontend/app/api/v1/osograph/utils/resolver-helpers.ts index 58cb3837e..6e58a46e9 100644 --- a/apps/frontend/app/api/v1/osograph/utils/resolver-helpers.ts +++ b/apps/frontend/app/api/v1/osograph/utils/resolver-helpers.ts @@ -4,7 +4,10 @@ import { type Connection, emptyConnection, } from "@/app/api/v1/osograph/utils/connection"; -import type { ConnectionArgs } from "@/app/api/v1/osograph/utils/pagination"; +import type { + ConnectionArgs, + FilterableConnectionArgs, +} from "@/app/api/v1/osograph/utils/pagination"; import { getFetchLimit, getPaginationParams, @@ -54,7 +57,7 @@ export async function getUserOrganizationIds( export async function getUserOrganizationsConnection( userId: string, - args: ConnectionArgs, + args: FilterableConnectionArgs, additionalPredicate?: Partial>, ) { const supabase = createAdminClient(); @@ -101,6 +104,8 @@ export async function getUserOrganizationsConnection( supabase, "organizations", predicate, + undefined, + args.single, ); if (orgError) { diff --git a/apps/frontend/app/api/v1/osograph/utils/validation.ts b/apps/frontend/app/api/v1/osograph/utils/validation.ts index fd79f1d73..96692053a 100644 --- a/apps/frontend/app/api/v1/osograph/utils/validation.ts +++ b/apps/frontend/app/api/v1/osograph/utils/validation.ts @@ -162,8 +162,8 @@ export const CreateDataModelRevisionSchema = z.object({ language: z.string(), code: z.string(), cron: z.string(), - start: z.string().datetime().optional(), - end: z.string().datetime().optional(), + start: z.date().optional(), + end: z.date().optional(), schema: z.array(DataModelColumnSchema), dependsOn: z.array(DataModelDependencySchema).optional(), partitionedBy: z.array(z.string()).optional(), diff --git a/apps/frontend/components/widgets/form-builder.tsx b/apps/frontend/components/widgets/form-builder.tsx index 6a2cb19cf..984fd8adc 100644 --- a/apps/frontend/components/widgets/form-builder.tsx +++ b/apps/frontend/components/widgets/form-builder.tsx @@ -285,7 +285,11 @@ const RenderField: React.FC = ({
@@ -350,7 +354,7 @@ const FormBuilder: React.FC = React.forwardRef( ref, () => ({ submit: () => { - void form.handleSubmit(onSubmit)(); + onSubmit(form.getValues()); }, }), [form.handleSubmit, onSubmit], diff --git a/apps/frontend/components/widgets/monaco-editor.tsx b/apps/frontend/components/widgets/monaco-editor.tsx index d4e848b9e..0502a1db2 100644 --- a/apps/frontend/components/widgets/monaco-editor.tsx +++ b/apps/frontend/components/widgets/monaco-editor.tsx @@ -18,11 +18,11 @@ const MonacoEditorMeta: CodeComponentMeta = { name: "MonacoEditor", description: "Monaco editor", props: { - defaultValue: { - type: "string", - }, value: { type: "string", + editOnly: true, + displayName: "Initial value", + uncontrolledProp: "defaultValue", }, onChange: { type: "eventHandler", diff --git a/apps/frontend/lib/clients/oso-app/oso-app.ts b/apps/frontend/lib/clients/oso-app/oso-app.ts index 3b33e3090..1367e2944 100644 --- a/apps/frontend/lib/clients/oso-app/oso-app.ts +++ b/apps/frontend/lib/clients/oso-app/oso-app.ts @@ -2745,6 +2745,15 @@ class OsoAppClient { kindOptions: any; }>, ) { + ensure(args.dataModelId, "Missing dataModelId argument"); + ensure(args.name, "Missing name argument"); + ensure(args.displayName, "Missing displayName argument"); + ensure(args.language, "Missing language argument"); + ensure(args.code, "Missing code argument"); + ensure(args.cron, "Missing cron argument"); + ensure(args.schema, "Missing schema argument"); + ensure(args.kind, "Missing kind argument"); + const CREATE_DATA_MODEL_REVISION_MUTATION = gql(` mutation CreateDataModelRevision($input: CreateDataModelRevisionInput!) { createDataModelRevision(input: $input) {