Function serialize

Serializes an object or array of objects into a flat list of field entries. You can customize the process using before (pre-processing per item) and after (post-processing per field).

const data = { a: 1, b: { c: 2 } };
const entries = await serialize(data);
// entries[0] => { path: 'a', value: '1', type: 'number', uuid: '...' }
  • Parameters

    • data: any
    • opts: {
          after?: ((path: string, value: string | number | boolean, metaInfo: Record<string, any>) => Promise<
              | undefined
              | null
              | string
              | number
              | boolean>);
          before?: ((element: any, index: number) => Promise<
              | undefined
              | null
              | false
              | Record<string, any>>);
          groupKey?: string;
          metaIdentifier?: string;
      } = {}
      • Optionalafter?: ((path: string, value: string | number | boolean, metaInfo: Record<string, any>) => Promise<
            | undefined
            | null
            | string
            | number
            | boolean>)
          • (path, value, metaInfo): Promise<
                | undefined
                | null
                | string
                | number
                | boolean>
          • Parameters

            • path: string
            • value: string | number | boolean
            • metaInfo: Record<string, any>

            Returns Promise<
                | undefined
                | null
                | string
                | number
                | boolean>

      • Optionalbefore?: ((element: any, index: number) => Promise<
            | undefined
            | null
            | false
            | Record<string, any>>)
          • (element, index): Promise<
                | undefined
                | null
                | false
                | Record<string, any>>
          • Parameters

            • element: any
            • index: number

            Returns Promise<
                | undefined
                | null
                | false
                | Record<string, any>>

      • OptionalgroupKey?: string
      • OptionalmetaIdentifier?: string

    Returns Promise<(false | {
        path: string;
        type:
            | "string"
            | "number"
            | "bigint"
            | "boolean"
            | "symbol"
            | "undefined"
            | "object"
            | "function";
        value: string;
    })[]>