{
  "version": 3,
  "sources": ["../../src/field-types/boolean.tsx"],
  "sourcesContent": ["/**\n * WordPress dependencies\n */\nimport { __ } from '@wordpress/i18n';\n\n/**\n * Internal dependencies\n */\nimport type { NormalizedField, SortDirection } from '../types';\nimport type { FieldType } from '../types/private';\nimport { OPERATOR_IS, OPERATOR_IS_NOT } from '../constants';\nimport isValidElements from './utils/is-valid-elements';\nimport isValidRequiredForBool from './utils/is-valid-required-for-bool';\nimport render from './utils/render-default';\n\nfunction getValueFormatted< Item >( {\n\titem,\n\tfield,\n}: {\n\titem: Item;\n\tfield: NormalizedField< Item >;\n} ): string {\n\tconst value = field.getValue( { item } );\n\n\tif ( value === true ) {\n\t\treturn __( 'True' );\n\t}\n\n\tif ( value === false ) {\n\t\treturn __( 'False' );\n\t}\n\n\treturn '';\n}\n\nfunction isValidCustom< Item >( item: Item, field: NormalizedField< Item > ) {\n\tconst value = field.getValue( { item } );\n\n\tif (\n\t\t! [ undefined, '', null ].includes( value ) &&\n\t\t! [ true, false ].includes( value )\n\t) {\n\t\treturn __( 'Value must be true, false, or undefined' );\n\t}\n\n\treturn null;\n}\n\nconst sort = ( a: any, b: any, direction: SortDirection ) => {\n\tconst boolA = Boolean( a );\n\tconst boolB = Boolean( b );\n\n\tif ( boolA === boolB ) {\n\t\treturn 0;\n\t}\n\n\t// In ascending order, false comes before true\n\tif ( direction === 'asc' ) {\n\t\treturn boolA ? 1 : -1;\n\t}\n\n\t// In descending order, true comes before false\n\treturn boolA ? -1 : 1;\n};\n\nexport default {\n\ttype: 'boolean',\n\trender,\n\tEdit: 'checkbox',\n\tsort,\n\tvalidate: {\n\t\trequired: isValidRequiredForBool,\n\t\telements: isValidElements,\n\t\tcustom: isValidCustom,\n\t},\n\tenableSorting: true,\n\tenableGlobalSearch: false,\n\tdefaultOperators: [ OPERATOR_IS, OPERATOR_IS_NOT ],\n\tvalidOperators: [ OPERATOR_IS, OPERATOR_IS_NOT ],\n\tformat: {},\n\tgetValueFormatted,\n} satisfies FieldType< any >;\n"],
  "mappings": ";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AAAA;AAAA;AAAA;AAAA;AAGA,kBAAmB;AAOnB,uBAA6C;AAC7C,+BAA4B;AAC5B,wCAAmC;AACnC,4BAAmB;AAEnB,SAAS,kBAA2B;AAAA,EACnC;AAAA,EACA;AACD,GAGY;AACX,QAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AAEvC,MAAK,UAAU,MAAO;AACrB,eAAO,gBAAI,MAAO;AAAA,EACnB;AAEA,MAAK,UAAU,OAAQ;AACtB,eAAO,gBAAI,OAAQ;AAAA,EACpB;AAEA,SAAO;AACR;AAEA,SAAS,cAAuB,MAAY,OAAiC;AAC5E,QAAM,QAAQ,MAAM,SAAU,EAAE,KAAK,CAAE;AAEvC,MACC,CAAE,CAAE,QAAW,IAAI,IAAK,EAAE,SAAU,KAAM,KAC1C,CAAE,CAAE,MAAM,KAAM,EAAE,SAAU,KAAM,GACjC;AACD,eAAO,gBAAI,yCAA0C;AAAA,EACtD;AAEA,SAAO;AACR;AAEA,IAAM,OAAO,CAAE,GAAQ,GAAQ,cAA8B;AAC5D,QAAM,QAAQ,QAAS,CAAE;AACzB,QAAM,QAAQ,QAAS,CAAE;AAEzB,MAAK,UAAU,OAAQ;AACtB,WAAO;AAAA,EACR;AAGA,MAAK,cAAc,OAAQ;AAC1B,WAAO,QAAQ,IAAI;AAAA,EACpB;AAGA,SAAO,QAAQ,KAAK;AACrB;AAEA,IAAO,kBAAQ;AAAA,EACd,MAAM;AAAA,EACN,8BAAAA;AAAA,EACA,MAAM;AAAA,EACN;AAAA,EACA,UAAU;AAAA,IACT,UAAU,kCAAAC;AAAA,IACV,UAAU,yBAAAC;AAAA,IACV,QAAQ;AAAA,EACT;AAAA,EACA,eAAe;AAAA,EACf,oBAAoB;AAAA,EACpB,kBAAkB,CAAE,8BAAa,gCAAgB;AAAA,EACjD,gBAAgB,CAAE,8BAAa,gCAAgB;AAAA,EAC/C,QAAQ,CAAC;AAAA,EACT;AACD;",
  "names": ["render", "isValidRequiredForBool", "isValidElements"]
}
