From 14a1bfa1a38b75215a4db117f7e04ccdf5680187 Mon Sep 17 00:00:00 2001 From: Paul Chavard Date: Tue, 4 Jun 2024 23:06:34 +0200 Subject: [PATCH] refactor(js): use superstruct instead of zod --- app/javascript/components/ComboBox.tsx | 7 +- app/javascript/components/react-aria/hooks.ts | 7 +- app/javascript/components/react-aria/props.ts | 129 +++++++++-------- .../controllers/lazy/tiptap_controller.ts | 39 ++++-- app/javascript/shared/tiptap/actions.ts | 21 ++- app/javascript/shared/tiptap/tags.ts | 15 +- app/javascript/shared/utils.ts | 131 ++++++++++-------- bun.lockb | Bin 555324 -> 555332 bytes package.json | 4 +- 9 files changed, 201 insertions(+), 152 deletions(-) diff --git a/app/javascript/components/ComboBox.tsx b/app/javascript/components/ComboBox.tsx index 3bee420c9..d93b957e8 100644 --- a/app/javascript/components/ComboBox.tsx +++ b/app/javascript/components/ComboBox.tsx @@ -15,6 +15,7 @@ import { import { useMemo, useRef, createContext, useContext } from 'react'; import type { RefObject } from 'react'; import { findOrCreateContainerElement } from '@coldwired/react'; +import * as s from 'superstruct'; import { useLabelledBy, @@ -98,7 +99,7 @@ export function SingleComboBox({ form, data, ...props - } = useMemo(() => SingleComboBoxProps.parse(maybeProps), [maybeProps]); + } = useMemo(() => s.create(maybeProps, SingleComboBoxProps), [maybeProps]); const labelledby = useLabelledBy(props.id, ariaLabelledby); const { ref, dispatch } = useDispatchChangeEvent(); @@ -146,7 +147,7 @@ export function MultiComboBox(maybeProps: MultiComboBoxProps) { allowsCustomValue, valueSeparator, ...props - } = useMemo(() => MultiComboBoxProps.parse(maybeProps), [maybeProps]); + } = useMemo(() => s.create(maybeProps, MultiComboBoxProps), [maybeProps]); const labelledby = useLabelledBy(props.id, ariaLabelledby); const { ref, dispatch } = useDispatchChangeEvent(); @@ -235,7 +236,7 @@ export function RemoteComboBox({ form, data, ...props - } = useMemo(() => RemoteComboBoxProps.parse(maybeProps), [maybeProps]); + } = useMemo(() => s.create(maybeProps, RemoteComboBoxProps), [maybeProps]); const labelledby = useLabelledBy(props.id, ariaLabelledby); const { ref, dispatch } = useDispatchChangeEvent(); diff --git a/app/javascript/components/react-aria/hooks.ts b/app/javascript/components/react-aria/hooks.ts index 2c75e8540..e2683b919 100644 --- a/app/javascript/components/react-aria/hooks.ts +++ b/app/javascript/components/react-aria/hooks.ts @@ -9,6 +9,7 @@ import { matchSorter } from 'match-sorter'; import { useDebounceCallback } from 'usehooks-ts'; import { useEvent } from 'react-use-event-hook'; import isEqual from 'react-fast-compare'; +import * as s from 'superstruct'; import { Item } from './props'; @@ -420,9 +421,9 @@ export const createLoader: ( }); if (response.ok) { const json = await response.json(); - const result = Item.array().safeParse(json); - if (result.success) { - const items = matchSorter(result.data, filterText, { + const [err, result] = s.validate(json, s.array(Item), { coerce: true }); + if (!err) { + const items = matchSorter(result, filterText, { keys: ['label'] }); return { diff --git a/app/javascript/components/react-aria/props.ts b/app/javascript/components/react-aria/props.ts index e67ac1096..835b086ea 100644 --- a/app/javascript/components/react-aria/props.ts +++ b/app/javascript/components/react-aria/props.ts @@ -1,72 +1,81 @@ import type { ReactNode } from 'react'; -import { z } from 'zod'; +import * as s from 'superstruct'; import type { Loader } from './hooks'; -export const Item = z.object({ - label: z.string(), - value: z.string(), - data: z.any().optional() +export const Item = s.object({ + label: s.string(), + value: s.string(), + data: s.any() }); -export type Item = z.infer; +export type Item = s.Infer; -const ComboBoxPropsSchema = z - .object({ - id: z.string(), - className: z.string(), - name: z.string(), - label: z.string(), - description: z.string(), - isRequired: z.boolean(), - 'aria-label': z.string(), - 'aria-labelledby': z.string(), - 'aria-describedby': z.string(), - items: z - .array(Item) - .or( - z - .string() - .array() - .transform((items) => - items.map((label) => ({ label, value: label })) - ) - ) - .or( - z - .tuple([z.string(), z.string().or(z.number())]) - .array() - .transform((items) => - items.map(([label, value]) => ({ - label, - value: String(value) - })) - ) - ), - formValue: z.enum(['text', 'key']), - form: z.string(), - data: z.record(z.string()) +const ArrayOfTuples = s.coerce( + s.array(Item), + s.array(s.tuple([s.string(), s.union([s.string(), s.number()])])), + (items) => + items.map(([label, value]) => ({ + label, + value: String(value) + })) +); + +const ArrayOfStrings = s.coerce(s.array(Item), s.array(s.string()), (items) => + items.map((label) => ({ label, value: label })) +); + +const ComboBoxPropsSchema = s.partial( + s.object({ + id: s.string(), + className: s.string(), + name: s.string(), + label: s.string(), + description: s.string(), + isRequired: s.boolean(), + 'aria-label': s.string(), + 'aria-labelledby': s.string(), + 'aria-describedby': s.string(), + items: s.union([s.array(Item), ArrayOfStrings, ArrayOfTuples]), + formValue: s.enums(['text', 'key']), + form: s.string(), + data: s.record(s.string(), s.string()) }) - .partial(); -export const SingleComboBoxProps = ComboBoxPropsSchema.extend({ - selectedKey: z.string().nullable(), - emptyFilterKey: z.string() -}).partial(); -export const MultiComboBoxProps = ComboBoxPropsSchema.extend({ - selectedKeys: z.string().array(), - allowsCustomValue: z.boolean(), - valueSeparator: z.string() -}).partial(); -export const RemoteComboBoxProps = ComboBoxPropsSchema.extend({ - selectedKey: z.string().nullable(), - minimumInputLength: z.number(), - limit: z.number(), - allowsCustomValue: z.boolean() -}).partial(); -export type SingleComboBoxProps = z.infer & { +); +export const SingleComboBoxProps = s.assign( + ComboBoxPropsSchema, + s.partial( + s.object({ + selectedKey: s.nullable(s.string()), + emptyFilterKey: s.string() + }) + ) +); +export const MultiComboBoxProps = s.assign( + ComboBoxPropsSchema, + s.partial( + s.object({ + selectedKeys: s.array(s.string()), + allowsCustomValue: s.boolean(), + valueSeparator: s.string() + }) + ) +); +export const RemoteComboBoxProps = s.assign( + ComboBoxPropsSchema, + s.partial( + s.object({ + selectedKey: s.nullable(s.string()), + minimumInputLength: s.number(), + limit: s.number(), + allowsCustomValue: s.boolean() + }) + ) +); +export type SingleComboBoxProps = s.Infer & { children?: ReactNode; }; -export type MultiComboBoxProps = z.infer; -export type RemoteComboBoxProps = z.infer & { +export type MultiComboBoxProps = s.Infer; +export type RemoteComboBoxProps = s.Infer & { children?: ReactNode; loader: Loader | string; onChange?: (item: Item | null) => void; diff --git a/app/javascript/controllers/lazy/tiptap_controller.ts b/app/javascript/controllers/lazy/tiptap_controller.ts index e80d2e599..58336e926 100644 --- a/app/javascript/controllers/lazy/tiptap_controller.ts +++ b/app/javascript/controllers/lazy/tiptap_controller.ts @@ -1,6 +1,6 @@ -import { Editor, type JSONContent } from '@tiptap/core'; +import { Editor } from '@tiptap/core'; import { isButtonElement, isHTMLElement } from '@coldwired/utils'; -import { z } from 'zod'; +import * as s from 'superstruct'; import { ApplicationController } from '../application_controller'; import { getAction } from '../../shared/tiptap/actions'; @@ -61,7 +61,7 @@ export class TiptapController extends ApplicationController { insertTag(event: MouseEvent) { if (this.#editor && isHTMLElement(event.target)) { - const tag = tagSchema.parse(event.target.dataset); + const tag = s.create(event.target.dataset, tagSchema); const editor = this.#editor .chain() .focus() @@ -77,12 +77,12 @@ export class TiptapController extends ApplicationController { private get content() { const value = this.inputTarget.value; if (value) { - return jsonContentSchema.parse(JSON.parse(value)); + return s.create(JSON.parse(value), jsonContentSchema); } } private get tags(): TagSchema[] { - return this.tagTargets.map((tag) => tagSchema.parse(tag.dataset)); + return this.tagTargets.map((tag) => s.create(tag.dataset, tagSchema)); } private get menuButtons() { @@ -92,13 +92,24 @@ export class TiptapController extends ApplicationController { } } -const jsonContentSchema: z.ZodType = z.object({ - type: z.string().optional(), - text: z.string().optional(), - attrs: z.record(z.any()).optional(), - marks: z - .object({ type: z.string(), attrs: z.record(z.any()).optional() }) - .array() - .optional(), - content: z.lazy(() => z.array(jsonContentSchema).optional()) +const Attrs = s.record(s.string(), s.any()); +const Marks = s.array( + s.type({ + type: s.string(), + attrs: s.optional(Attrs) + }) +); +type JSONContent = { + type?: string; + text?: string; + attrs?: s.Infer; + marks?: s.Infer; + content?: JSONContent[]; +}; +const jsonContentSchema: s.Describe = s.type({ + type: s.optional(s.string()), + text: s.optional(s.string()), + attrs: s.optional(Attrs), + marks: s.optional(Marks), + content: s.lazy(() => s.optional(s.array(jsonContentSchema))) }); diff --git a/app/javascript/shared/tiptap/actions.ts b/app/javascript/shared/tiptap/actions.ts index 727331112..6a1d6fcae 100644 --- a/app/javascript/shared/tiptap/actions.ts +++ b/app/javascript/shared/tiptap/actions.ts @@ -1,5 +1,5 @@ import { Editor } from '@tiptap/core'; -import { z } from 'zod'; +import * as s from 'superstruct'; type EditorAction = { run(): void; @@ -11,7 +11,7 @@ export function getAction( editor: Editor, button: HTMLButtonElement ): EditorAction { - return tiptapActionSchema.parse(button.dataset)(editor); + return s.create(button.dataset, tiptapActionSchema)(editor); } const EDITOR_ACTIONS: Record EditorAction> = { @@ -109,8 +109,15 @@ const EDITOR_ACTIONS: Record EditorAction> = { }) }; -const tiptapActionSchema = z - .object({ - tiptapAction: z.enum(Object.keys(EDITOR_ACTIONS) as [string, ...string[]]) - }) - .transform(({ tiptapAction }) => EDITOR_ACTIONS[tiptapAction]); +const EditorActionFn = s.define<(editor: Editor) => EditorAction>( + 'EditorActionFn', + (fn) => typeof fn == 'function' +); + +const tiptapActionSchema = s.coerce( + EditorActionFn, + s.type({ + tiptapAction: s.enums(Object.keys(EDITOR_ACTIONS) as [string, ...string[]]) + }), + ({ tiptapAction }) => EDITOR_ACTIONS[tiptapAction] +); diff --git a/app/javascript/shared/tiptap/tags.ts b/app/javascript/shared/tiptap/tags.ts index 3a76ca1cd..fc79ffeb5 100644 --- a/app/javascript/shared/tiptap/tags.ts +++ b/app/javascript/shared/tiptap/tags.ts @@ -1,12 +1,17 @@ import type { SuggestionOptions, SuggestionProps } from '@tiptap/suggestion'; -import { z } from 'zod'; +import * as s from 'superstruct'; import tippy, { type Instance as TippyInstance } from 'tippy.js'; import { matchSorter } from 'match-sorter'; -export const tagSchema = z - .object({ tagLabel: z.string(), tagId: z.string() }) - .transform(({ tagId, tagLabel }) => ({ label: tagLabel, id: tagId })); -export type TagSchema = z.infer; +export const tagSchema = s.coerce( + s.object({ label: s.string(), id: s.string() }), + s.type({ + tagLabel: s.string(), + tagId: s.string() + }), + ({ tagId, tagLabel }) => ({ label: tagLabel, id: tagId }) +); +export type TagSchema = s.Infer; class SuggestionMenu { #selectedIndex = 0; diff --git a/app/javascript/shared/utils.ts b/app/javascript/shared/utils.ts index 5a756a850..8602ff8e8 100644 --- a/app/javascript/shared/utils.ts +++ b/app/javascript/shared/utils.ts @@ -1,72 +1,87 @@ import { session } from '@hotwired/turbo'; -import { z } from 'zod'; +import * as s from 'superstruct'; -const Gon = z - .object({ - autosave: z - .object({ - debounce_delay: z.number().default(0), - status_visible_duration: z.number().default(0) - }) - .default({}), - autocomplete: z - .object({ - api_geo_url: z.string().optional(), - api_adresse_url: z.string().optional(), - api_education_url: z.string().optional() - }) - .default({}), - locale: z.string().default('fr'), - matomo: z - .object({ - cookieDomain: z.string().optional(), - domain: z.string().optional(), - enabled: z.boolean().default(false), - host: z.string().optional(), - key: z.string().or(z.number()).nullish() - }) - .default({}), - sentry: z - .object({ - key: z.string().nullish(), - enabled: z.boolean().default(false), - environment: z.string().optional(), - user: z.object({ id: z.string() }).default({ id: '' }), - browser: z.object({ modern: z.boolean() }).default({ modern: false }), - release: z.string().nullish() - }) - .default({}), - crisp: z - .object({ - key: z.string().nullish(), - enabled: z.boolean().default(false), - administrateur: z - .object({ - email: z.string(), - DS_SIGN_IN_COUNT: z.number(), - DS_NB_DEMARCHES_BROUILLONS: z.number(), - DS_NB_DEMARCHES_ACTIVES: z.number(), - DS_NB_DEMARCHES_ARCHIVES: z.number(), - DS_ID: z.number() - }) - .default({ +function nullish(struct: s.Struct) { + return s.optional(s.union([s.literal(null), struct])); +} + +const Gon = s.defaulted( + s.type({ + autosave: s.defaulted( + s.type({ + debounce_delay: s.defaulted(s.number(), 0), + status_visible_duration: s.defaulted(s.number(), 0) + }), + {} + ), + autocomplete: s.defaulted( + s.partial( + s.type({ + api_geo_url: s.string(), + api_adresse_url: s.string(), + api_education_url: s.string() + }) + ), + {} + ), + locale: s.defaulted(s.string(), 'fr'), + matomo: s.defaulted( + s.type({ + cookieDomain: s.optional(s.string()), + domain: s.optional(s.string()), + enabled: s.defaulted(s.boolean(), false), + host: s.optional(s.string()), + key: nullish(s.union([s.string(), s.number()])) + }), + {} + ), + sentry: s.defaulted( + s.type({ + key: nullish(s.string()), + enabled: s.defaulted(s.boolean(), false), + environment: s.optional(s.string()), + user: s.defaulted(s.type({ id: s.string() }), { id: '' }), + browser: s.defaulted(s.type({ modern: s.boolean() }), { + modern: false + }), + release: nullish(s.string()) + }), + {} + ), + crisp: s.defaulted( + s.type({ + key: nullish(s.string()), + enabled: s.defaulted(s.boolean(), false), + administrateur: s.defaulted( + s.type({ + email: s.string(), + DS_SIGN_IN_COUNT: s.number(), + DS_NB_DEMARCHES_BROUILLONS: s.number(), + DS_NB_DEMARCHES_ACTIVES: s.number(), + DS_NB_DEMARCHES_ARCHIVES: s.number(), + DS_ID: s.number() + }), + { email: '', DS_SIGN_IN_COUNT: 0, DS_NB_DEMARCHES_BROUILLONS: 0, DS_NB_DEMARCHES_ACTIVES: 0, DS_NB_DEMARCHES_ARCHIVES: 0, DS_ID: 0 - }) - }) - .default({}), - defaultQuery: z.string().optional(), - defaultVariables: z.string().optional() - }) - .default({}); + } + ) + }), + {} + ), + defaultQuery: s.optional(s.string()), + defaultVariables: s.optional(s.string()) + }), + {} +); declare const window: Window & typeof globalThis & { gon: unknown }; export function getConfig() { - return Gon.parse(window.gon); + return s.create(window.gon, Gon); } export function show(el: Element | null) { diff --git a/bun.lockb b/bun.lockb index 608dba50f0f296e4f8b60dd549f48a635868a277..beab4b76049ce3f26b347be09fc37335f1eb6dcf 100755 GIT binary patch delta 58730 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%0A2|MYrba#s_Xq?ln%dAj~mb{&dV_3*lxn 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 delta 58645 zcma&P2Vhl2^Z$KMk`wNs_Ygu10TBU1hZ_jwiXcUrh=8FQAV44_kkADZRKSLUM_dD< zPec$K3Oii3wl*XT;q-2M_4;)aOqv>))ZtoV>9C z`3#K>1S$jqMfq8oW2S+dmJ0+bf)_y@=z(RACl&TVs4`$$R(?TNK4ogEgJ(g@LnlK; zi4EodqRcUQ`MD_jJ{Snp1|L8u9y$P_1ZYQS9Q0-QLI=`gE$Ef>Bb|TG57B!`wAYW@ z-%7UXxl^sU_!?Dp57ny$0#%Th0Tsy!Ziy9F7^GJ0m`IiAiK?OL)B+i5AaKy&b~W{Q zE{9e^?l4r^O~}-OZySCRRK|0$+?4#h$=L;2fy{!;DWdlT&Oo%VD4z~Q(SuMi>lCA> zShR>A($P9bEBs=pm_NCWHe{5c*F&ZKl~5EGWfx@T=V#6iv<1t6#$*;`j=JNpH$=*%ui8K09kI?%Gd?)*!`-wb9tiar9%AV%kBj>#$r1QsW2 zxjj&6pX4r!j%(%jvA=nG>?d zOrUduZB`caG59jQvs&nWresc=kTNN2_NmLnz=46Hf~?6iWQF=8pPiYLlU*<^aIpvc zmD<0hR`j)}AW-y2D{VLqltBkl+y!=AuPv=LcRf^Quzed%ld(m@G7c)keXy{oe6V1qRdUPh##Rm2iB0N|oT}U8wAb`mu;>~FmMH4qK~rCDLSEh^8CiEX zGd3>1H&WuTzdGs+GiE|&&Lr$z;Vz4f%TA@10556*m3f|#IxZ)3d_f?ovzc$G^p%@8 zWtxmKuOKUT2DC-GmTv@=@#JKWn>Kw)AdsI`ke4$fD=;=32(TE6hC-#jk6W!=oD(pp zs@tkuQsGJ3$`oZ6n^<(NhUpKF~E#bO!C>{b|{`vr}^N1I>DCflCan3Kava zK6*CBLnYby$uGlQ7EG%4ZC~w|{LGmtqw~hj9_4Ni#yJi9Ywm|`Sun1ZAJtx#!?Z6@ zE1IU~XQ#;0n4CF_&|}U9XjjyBn>b0?U9Zzp2aNQuV3~7G(R2+GK&EC($Fj*;aRh6X#?N)_o6k_d9Xb`h#RLJ{+RCd)(igB&UYqmUolO zH;&&pNXz)L1=BL8O)tnQ*yCoF4|S8fOxw$NiKuv;6d=YfFS7=d9F$kGE|4ebK zYgLTvFdeRpYCPFw!ql9=w1S*$)CDHOm$sQuvDXjY$yxd1vswoN)7=3T;|kl7J0%i- zfy#RClC8C6VV-1y?S~R8rXHLkR_UI%% z;s*FtdLNyamou8JxgA0>24m$lfsYYj*DI<|MJ=JZx?_JB6)$WM_=$xi2c_w`*|W08 z%?|imZlT+%Qj2Q)NJY|JW2l(5&7E4QajUoUHFsuaer|T|_`n3PxH&FX^Zj}YTpRup zcUPsP!X7hqPmfL4E@%PfkWsX8hIUy!s7 P#My7v$X5R^qB^(ejvfb# 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 Z)EXf_zC(c{@>>dwP_OH#