MCPcopy Create free account
hub / github.com/UsefulSoftwareCo/executor / encodeValues

Function encodeValues

packages/core/fumadb/src/adapters/kysely/query.ts:175–197  ·  view source on GitHub ↗

* Transform object keys and encode values (e.g. for SQLite, date -> number)

(
    values: Record<string, unknown>,
    table: AnyTable,
    generateDefault: boolean
  )

Source from the content-addressed store, hash-verified

173 * Transform object keys and encode values (e.g. for SQLite, date -> number)
174 */
175 function encodeValues(
176 values: Record<string, unknown>,
177 table: AnyTable,
178 generateDefault: boolean
179 ) {
180 const result: Record<string, unknown> = {};
181
182 for (const k in table.columns) {
183 const col = table.columns[k];
184 let value = values[k];
185
186 if (generateDefault && value === undefined) {
187 // prefer generating them on runtime to avoid SQLite's problem with column default value being ignored when insert
188 value = col.generateDefaultValue();
189 }
190
191 if (value !== undefined) {
192 result[col.names.sql] = serialize(value, col, provider);
193 }
194 }
195
196 return result;
197 }
198
199 /**
200 * Transform object keys and decode values

Callers 4

createFunction · 0.85
updateManyFunction · 0.85
upsertFunction · 0.85
createManyFunction · 0.85

Calls 2

serializeFunction · 0.90
generateDefaultValueMethod · 0.80

Tested by

no test coverage detected