export const builtinCategories = [
  {
    kind: 'category',
    name: 'Logic',
    categorystyle: 'logic_category',
    contents: [
      { kind: 'block', type: 'controls_if' },
      {
        kind: 'block', type: 'logic_compare',
        inputs: {
          A: { shadow: { type: 'math_number', fields: { NUM: 0 } } },
          B: { shadow: { type: 'math_number', fields: { NUM: 0 } } },
        },
      },
      { kind: 'block', type: 'logic_operation' },
      { kind: 'block', type: 'logic_negate' },
      { kind: 'block', type: 'logic_boolean' },
      { kind: 'block', type: 'logic_null' },
      { kind: 'block', type: 'logic_ternary' },
    ],
  },
  {
    kind: 'category',
    name: 'Loops',
    categorystyle: 'loop_category',
    contents: [
      {
        kind: 'block', type: 'controls_repeat_ext',
        inputs: { TIMES: { shadow: { type: 'math_number', fields: { NUM: 10 } } } },
      },
      { kind: 'block', type: 'controls_repeat_forever' },
      {
        kind: 'block', type: 'controls_whileUntil',
        inputs: { BOOL: { shadow: { type: 'logic_boolean', fields: { BOOL: 'TRUE' } } } },
      },
      {
        kind: 'block', type: 'controls_for',
        inputs: {
          FROM: { shadow: { type: 'math_number', fields: { NUM: 1 } } },
          TO: { shadow: { type: 'math_number', fields: { NUM: 10 } } },
          BY: { shadow: { type: 'math_number', fields: { NUM: 1 } } },
        },
      },
      { kind: 'block', type: 'controls_forEach' },
      { kind: 'block', type: 'controls_flow_statements' },
    ],
  },
  {
    kind: 'category',
    name: 'Math',
    categorystyle: 'math_category',
    contents: [
      { kind: 'block', type: 'math_number', fields: { NUM: 0 } },
      { kind: 'block', type: 'math_arithmetic' },
      { kind: 'block', type: 'math_single' },
      { kind: 'block', type: 'math_trig' },
      { kind: 'block', type: 'math_constant' },
      { kind: 'block', type: 'math_number_property' },
      { kind: 'block', type: 'math_round' },
      { kind: 'block', type: 'math_modulo' },
      {
        kind: 'block', type: 'math_constrain',
        inputs: {
          LOW: { shadow: { type: 'math_number', fields: { NUM: 1 } } },
          HIGH: { shadow: { type: 'math_number', fields: { NUM: 100 } } },
        },
      },
      {
        kind: 'block', type: 'math_random_int',
        inputs: {
          FROM: { shadow: { type: 'math_number', fields: { NUM: 1 } } },
          TO: { shadow: { type: 'math_number', fields: { NUM: 100 } } },
        },
      },
      { kind: 'block', type: 'math_random_float' },
    ],
  },
  {
    kind: 'category',
    name: 'Text',
    categorystyle: 'text_category',
    contents: [
      { kind: 'block', type: 'text' },
      { kind: 'block', type: 'text_join' },
      { kind: 'block', type: 'text_append' },
      { kind: 'block', type: 'text_length' },
      { kind: 'block', type: 'text_isEmpty' },
      { kind: 'block', type: 'text_indexOf' },
      { kind: 'block', type: 'text_charAt' },
    ],
  },
  {
    kind: 'category',
    name: 'Variables',
    categorystyle: 'variable_category',
    custom: 'VARIABLE',
  },
  {
    kind: 'category',
    name: 'Functions',
    categorystyle: 'procedure_category',
    custom: 'PROCEDURE',
  },
];
