dprint_plugin_json/configuration/types.rs
1use dprint_core::configuration::*;
2use dprint_core::generate_str_to_from;
3use serde::{Deserialize, Serialize};
4
5#[derive(Debug, Clone, PartialEq, Copy, Serialize, Deserialize)]
6#[serde(rename_all = "camelCase")]
7pub enum TrailingCommaKind {
8 /// Always format with trailing commas. Beware: trailing commas can cause many JSON parsers to fail.
9 Always,
10 /// Use trailing commas in JSONC files and do not use trailing commas in JSON files. (Default)
11 Jsonc,
12 /// Keep the trailing comma if it exists.
13 Maintain,
14 /// Never format with trailing commas.
15 Never,
16}
17
18generate_str_to_from![
19 TrailingCommaKind,
20 [Always, "always"],
21 [Maintain, "maintain"],
22 [Never, "never"],
23 [Jsonc, "jsonc"]
24];