Skip to content

Commit

Permalink
fix: sanitize enum values
Browse files Browse the repository at this point in the history
  • Loading branch information
davidenke committed Dec 17, 2024
1 parent 6c0b848 commit 0ec1c26
Showing 1 changed file with 2 additions and 1 deletion.
3 changes: 2 additions & 1 deletion src/transformers/field-select.transform.ts
Original file line number Diff line number Diff line change
@@ -1,12 +1,13 @@
import type { CmsFieldBase, CmsFieldSelect } from 'decap-cms-core';

import { escapeString } from '../utils/format.utils.js';
import type { Transformer } from '../utils/transform.utils.js';

// https://decapcms.org/docs/widgets/#select
export const transformSelectField: Transformer<CmsFieldBase & CmsFieldSelect> = ({ options }) => {
const items = options.map(option => (typeof option === 'string' ? option : option.value));
return {
compiled: `z.enum([${items.map(i => `'${i}'`).join(',')}])`,
compiled: `z.enum([${items.map(i => `'${escapeString(i)}'`).join(',')}])`,
dependencies: ['z'],
};
};

0 comments on commit 0ec1c26

Please sign in to comment.