{
  "concat-array": {
    "name": "Append Array",
    "category": "Array",
    "released": "direct",
    "description": "Add one array to the end of another",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": {
        "kind": "array",
        "items": "primitive"
      }
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "values",
        "type": {
          "kind": "array",
          "items": "primitive"
        },
        "displayName": "Values"
      },
      {
        "name": "toAppend",
        "type": {
          "kind": "array",
          "items": "primitive"
        },
        "displayName": "To append"
      }
    ]
  },
  "array-contains": {
    "name": "Array Contains Element",
    "category": "Array",
    "released": "direct",
    "description": "True if array contains the element. False otherwise.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "boolean"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "values",
        "type": {
          "kind": "array",
          "items": "primitive"
        },
        "displayName": "Values"
      },
      {
        "name": "toFind",
        "type": "primitive",
        "displayName": "To find"
      }
    ]
  },
  "array-length": {
    "name": "Array Length",
    "category": "Array",
    "released": "direct",
    "description": "Get the length of an array.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "number"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "array",
        "type": {
          "kind": "array",
          "items": "primitive"
        },
        "displayName": "Array"
      }
    ]
  },
  "duplicated-items": {
    "name": "Duplicated Items",
    "category": "Array",
    "released": "direct",
    "description": "Find items duplicated in an array",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": {
        "kind": "array",
        "items": "string"
      }
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "values",
        "type": {
          "kind": "array",
          "items": "string"
        },
        "displayName": "Values"
      }
    ]
  },
  "index-in-array": {
    "name": "Find Element Index",
    "category": "Array",
    "released": "direct",
    "description": "Finds the first index of an element in an array",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "number"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "values",
        "type": {
          "kind": "array",
          "items": "primitive"
        },
        "displayName": "Values"
      },
      {
        "name": "toFind",
        "type": "primitive",
        "displayName": "To find"
      }
    ]
  },
  "remove-from": {
    "name": "Remove Element",
    "category": "Array",
    "released": "direct",
    "description": "Remove all instances of an item from an array",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": {
        "kind": "array",
        "items": "primitive"
      }
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "values",
        "type": {
          "kind": "array",
          "items": "primitive"
        },
        "displayName": "Values"
      },
      {
        "name": "toRemove",
        "type": "primitive",
        "displayName": "To remove"
      }
    ]
  },
  "remove-all": {
    "name": "Remove Elements",
    "category": "Array",
    "released": "direct",
    "description": "Remove all elements in an array from another array",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": {
        "kind": "array",
        "items": "primitive"
      }
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "values",
        "type": {
          "kind": "array",
          "items": "primitive"
        },
        "displayName": "Values"
      },
      {
        "name": "toRemove",
        "type": {
          "kind": "array",
          "items": "primitive"
        },
        "displayName": "To remove"
      }
    ]
  },
  "reverse-array": {
    "name": "Reverse Array",
    "category": "Array",
    "released": "direct",
    "description": "Reverses the order of items in an array",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": {
        "kind": "array",
        "items": "primitive"
      }
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "array",
        "type": {
          "kind": "array",
          "items": "primitive"
        },
        "displayName": "Array"
      }
    ]
  },
  "as-array": {
    "name": "Single Element Array",
    "category": "Array",
    "released": "direct",
    "description": "Convert a solitary value to an array",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": {
        "kind": "array",
        "items": "primitive"
      }
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "value",
        "type": "primitive",
        "displayName": "Value"
      }
    ]
  },
  "slice-array": {
    "name": "Slice Array",
    "category": "Array",
    "released": "direct",
    "description": "Produces a subsection of an array by specifying the start and end indices",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": {
        "kind": "array",
        "items": "primitive"
      }
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "values",
        "type": {
          "kind": "array",
          "items": "primitive"
        },
        "displayName": "Values"
      },
      {
        "name": "start",
        "type": "number",
        "displayName": "Start"
      },
      {
        "name": "end",
        "type": "number",
        "displayName": "End"
      }
    ]
  },
  "sort-array": {
    "name": "Sort Array",
    "category": "Array",
    "released": "direct",
    "description": "Sort the items in an array",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": {
        "kind": "array",
        "items": "primitive"
      }
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "values",
        "type": {
          "kind": "array",
          "items": "primitive"
        },
        "displayName": "Values"
      }
    ]
  },
  "uniq": {
    "name": "Unique Elements",
    "category": "Array",
    "released": "direct",
    "description": "Remove duplicate entries from an array",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": {
        "kind": "array",
        "items": "string"
      }
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M19 11H5m14 0a2 2 0 012 2v6a2 2 0 01-2 2H5a2 2 0 01-2-2v-6a2 2 0 012-2m14 0V9a2 2 0 00-2-2M5 11V9a2 2 0 012-2m0 0V5a2 2 0 012-2h6a2 2 0 012 2v2M7 7h10\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "values",
        "type": {
          "kind": "array",
          "items": "string"
        },
        "displayName": "Values"
      }
    ]
  },
  "fast-formula-parser": {
    "name": "Excel Formula",
    "category": "Code",
    "released": "direct",
    "description": "Run Excel formulas",
    "author": "Chris Ozgo <chris.ozgo@heyglide.com>",
    "result": {
      "type": "primitive"
    },
    "about": "Uses [lesterlyu.github.io/fast-formula-parser](https://lesterlyu.github.io/fast-formula-parser) to evaluate Excel formulas.",
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M10 20l4-16m4 4l4 4-4 4M6 16l-4-4 4-4\" />\n</svg>\n    ",
    "params": [
      {
        "name": "formula",
        "displayName": "Formula",
        "type": "string"
      },
      {
        "name": "A1",
        "displayName": "A1",
        "type": "primitive"
      },
      {
        "name": "A2",
        "displayName": "A2",
        "type": "primitive"
      },
      {
        "name": "A3",
        "displayName": "A3",
        "type": "primitive"
      },
      {
        "name": "A4",
        "displayName": "A4",
        "type": "primitive"
      },
      {
        "name": "A5",
        "displayName": "A5",
        "type": "primitive"
      }
    ]
  },
  "hyperformula": {
    "name": "Hyperformula",
    "category": "Code",
    "description": "Run Excel formulas",
    "author": "David Siegel <david@glideapps.com>",
    "result": {
      "type": "primitive"
    },
    "about": "\n      Uses [handsontable.github.io/hyperformula](https://handsontable.github.io/hyperformula) to evaluate\n      Excel formulas.\n    ",
    "icon": "<svg width=\"41\" height=\"44\" viewBox=\"0 0 41 44\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path fill-rule=\"evenodd\" clip-rule=\"evenodd\" d=\"M30.802 1.61791C32.2704 0.484412 34.0962 -0.0858159 35.9487 0.0104718H40.6196L38.3202 4.0615H35.9127C35.2336 4.01682 34.5631 4.23344 34.0385 4.66699C33.518 5.22337 33.1787 5.92466 33.0654 6.67808L26.4122 37.7528C26.067 39.5449 25.1304 41.1693 23.7524 42.366C22.2845 43.5066 20.4547 44.0799 18.5985 43.9807H15.5089L15.5078 43.9861H10.4044L14.849 21.527C14.9408 21.1299 14.9868 20.7236 14.9859 20.316C15.0128 19.9308 14.9594 19.5442 14.8292 19.1806C14.6989 18.817 14.4945 18.4845 14.229 18.204C13.5913 17.6788 12.7751 17.4205 11.9512 17.4832C10.7477 17.4322 9.56904 17.8362 8.64988 18.6149C7.69907 19.5239 7.07776 20.7234 6.88386 22.0244L5.13947 31.0059H0L4.87276 6.57716H10.0122L8.36155 14.9099C9.90333 13.6526 11.8438 12.9879 13.8326 13.0357C15.5452 12.9446 17.2282 13.509 18.5396 14.6143C19.135 15.1912 19.5991 15.8897 19.9001 16.6622C20.2011 17.4347 20.3321 18.263 20.284 19.0906C20.2821 19.8008 20.2048 20.5088 20.0533 21.2027L16.3186 39.9224H18.6417C18.9779 39.9484 19.316 39.9076 19.6364 39.8024C19.9567 39.6973 20.2532 39.5298 20.5087 39.3097C21.0365 38.7613 21.3772 38.0598 21.4818 37.3059L28.135 6.23117C28.4858 4.43947 29.4244 2.81601 30.802 1.61791Z\" fill=\"currentColor\"/>\n</svg>\n",
    "video": "https://www.youtube.com/watch?v=JJXUmACTDdk",
    "params": [
      {
        "name": "formula",
        "displayName": "Formula",
        "type": "string"
      },
      {
        "name": "A1",
        "displayName": "A1",
        "type": "primitive"
      },
      {
        "name": "A2",
        "displayName": "A2",
        "type": "primitive"
      },
      {
        "name": "A3",
        "displayName": "A3",
        "type": "primitive"
      },
      {
        "name": "A4",
        "displayName": "A4",
        "type": "primitive"
      },
      {
        "name": "A5",
        "displayName": "A5",
        "type": "primitive"
      }
    ]
  },
  "hell-yes-code": {
    "name": "JavaScript",
    "category": "Code",
    "released": "sandboxed",
    "description": "Runs JavaScript",
    "author": "Mark Probst <mark@glideapps.com>",
    "result": {
      "type": "primitive"
    },
    "about": "Inludes [lodash](https://lodash.com/docs).",
    "icon": "<svg width=\"48\" height=\"48\" viewBox=\"0 0 48 48\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n      <path d=\"M34.4381 11.774C34.1931 11.474 33.9761 11.205 33.7931 10.968C33.6822 10.8233 33.5338 10.7117 33.3641 10.6452C33.1943 10.5787 33.0096 10.5599 32.8299 10.5908C32.6502 10.6217 32.4824 10.7011 32.3446 10.8205C32.2068 10.9398 32.1043 11.0946 32.0481 11.268C31.4977 12.9485 30.6607 14.521 29.5741 15.916C29.6381 11.944 28.8511 4.93503 23.0951 1.16003C22.944 1.06079 22.7688 1.00435 22.5882 0.996737C22.4076 0.989122 22.2283 1.03061 22.0693 1.11679C21.9104 1.20296 21.7779 1.3306 21.6857 1.48613C21.5936 1.64166 21.5453 1.81926 21.5461 2.00003C21.5461 5.27603 19.7911 8.76703 16.7401 11.575C13.7881 14.293 6.92906 21.476 7.00006 29.433C7.05006 34.973 9.87106 42.633 17.0271 45.674C17.1341 42.197 18.6511 39.728 20.1351 37.348C21.5451 35.084 22.8781 32.948 23.0001 29.959C23.0077 29.7673 23.0703 29.5819 23.1805 29.4248C23.2906 29.2677 23.4436 29.1456 23.6213 29.073C23.7989 29.0005 23.9936 28.9806 24.1823 29.0157C24.3709 29.0508 24.5454 29.1395 24.6851 29.271C28.7181 33.071 30.8791 38.701 30.9851 45.571C36.1181 43.382 40.3221 38.611 40.9421 30.85C41.7431 20.771 36.8091 14.694 34.4381 11.774Z\" fill=\"currentColor\"/>\n    </svg>\n    ",
    "video": "https://www.youtube.com/watch?v=c-I5S_zTwAc",
    "params": [
      {
        "name": "code",
        "displayName": "JavaScript code",
        "type": "string"
      },
      {
        "name": "p1",
        "displayName": "p1",
        "type": "primitive"
      },
      {
        "name": "p2",
        "displayName": "p2",
        "type": "primitive"
      },
      {
        "name": "p3",
        "displayName": "p3",
        "type": "primitive"
      }
    ]
  },
  "create-json-object": {
    "name": "Make JSON Object",
    "category": "Code",
    "released": "direct",
    "description": "Returns a JSON Object String",
    "author": "Ian Leatherbury <ian@glideapps.com>",
    "result": {
      "type": "primitive"
    },
    "icon": "<svg width=\"48\" height=\"48\" viewBox=\"0 0 48 48\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n      <path d=\"M34.4381 11.774C34.1931 11.474 33.9761 11.205 33.7931 10.968C33.6822 10.8233 33.5338 10.7117 33.3641 10.6452C33.1943 10.5787 33.0096 10.5599 32.8299 10.5908C32.6502 10.6217 32.4824 10.7011 32.3446 10.8205C32.2068 10.9398 32.1043 11.0946 32.0481 11.268C31.4977 12.9485 30.6607 14.521 29.5741 15.916C29.6381 11.944 28.8511 4.93503 23.0951 1.16003C22.944 1.06079 22.7688 1.00435 22.5882 0.996737C22.4076 0.989122 22.2283 1.03061 22.0693 1.11679C21.9104 1.20296 21.7779 1.3306 21.6857 1.48613C21.5936 1.64166 21.5453 1.81926 21.5461 2.00003C21.5461 5.27603 19.7911 8.76703 16.7401 11.575C13.7881 14.293 6.92906 21.476 7.00006 29.433C7.05006 34.973 9.87106 42.633 17.0271 45.674C17.1341 42.197 18.6511 39.728 20.1351 37.348C21.5451 35.084 22.8781 32.948 23.0001 29.959C23.0077 29.7673 23.0703 29.5819 23.1805 29.4248C23.2906 29.2677 23.4436 29.1456 23.6213 29.073C23.7989 29.0005 23.9936 28.9806 24.1823 29.0157C24.3709 29.0508 24.5454 29.1395 24.6851 29.271C28.7181 33.071 30.8791 38.701 30.9851 45.571C36.1181 43.382 40.3221 38.611 40.9421 30.85C41.7431 20.771 36.8091 14.694 34.4381 11.774Z\" fill=\"currentColor\"/>\n    </svg>\n    ",
    "deprecated": true,
    "params": [
      {
        "name": "k1",
        "displayName": "k1",
        "type": "string"
      },
      {
        "name": "v1",
        "displayName": "v1",
        "type": "primitive"
      },
      {
        "name": "k2",
        "displayName": "k2",
        "type": "string"
      },
      {
        "name": "v2",
        "displayName": "v2",
        "type": "primitive"
      },
      {
        "name": "k3",
        "displayName": "k3",
        "type": "string"
      },
      {
        "name": "v3",
        "displayName": "v3",
        "type": "primitive"
      },
      {
        "name": "k4",
        "displayName": "k4",
        "type": "string"
      },
      {
        "name": "v4",
        "displayName": "v4",
        "type": "primitive"
      },
      {
        "name": "k5",
        "displayName": "k5",
        "type": "string"
      },
      {
        "name": "v5",
        "displayName": "v5",
        "type": "primitive"
      },
      {
        "name": "k6",
        "displayName": "k6",
        "type": "string"
      },
      {
        "name": "v6",
        "displayName": "v6",
        "type": "primitive"
      },
      {
        "name": "k7",
        "displayName": "k7",
        "type": "string"
      },
      {
        "name": "v7",
        "displayName": "v7",
        "type": "primitive"
      },
      {
        "name": "k8",
        "displayName": "k8",
        "type": "string"
      },
      {
        "name": "v8",
        "displayName": "v8",
        "type": "primitive"
      },
      {
        "name": "k9",
        "displayName": "k9",
        "type": "string"
      },
      {
        "name": "v9",
        "displayName": "v9",
        "type": "primitive"
      },
      {
        "name": "k10",
        "displayName": "k10",
        "type": "string"
      },
      {
        "name": "v10",
        "displayName": "v10",
        "type": "primitive"
      },
      {
        "name": "k11",
        "displayName": "k11",
        "type": "string"
      },
      {
        "name": "v11",
        "displayName": "v11",
        "type": "primitive"
      },
      {
        "name": "k12",
        "displayName": "k12",
        "type": "string"
      },
      {
        "name": "v12",
        "displayName": "v12",
        "type": "primitive"
      }
    ]
  },
  "sha256": {
    "name": "SHA256 Hash",
    "category": "Cryptography",
    "released": "direct",
    "description": "The SHA256 column takes a string value and returns the 256 length string hash.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "about": "The SHA256 column provides the ability to return a 256 length hash of any input according to the SHA256 algorithm",
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M11 4a2 2 0 114 0v1a1 1 0 001 1h3a1 1 0 011 1v3a1 1 0 01-1 1h-1a2 2 0 100 4h1a1 1 0 011 1v3a1 1 0 01-1 1h-3a1 1 0 01-1-1v-1a2 2 0 10-4 0v1a1 1 0 01-1 1H7a1 1 0 01-1-1v-3a1 1 0 00-1-1H4a2 2 0 110-4h1a1 1 0 001-1V7a1 1 0 011-1h3a1 1 0 001-1V4z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "input",
        "type": "string",
        "displayName": "Input"
      }
    ]
  },
  "fetch": {
    "name": "Fetch JSON",
    "category": "Data & APIs",
    "released": "sandboxed",
    "description": "Fetch and optionally transform JSON",
    "author": "David Siegel <david@glideapps.com>",
    "result": {
      "type": "primitive"
    },
    "about": "\n      Given a URL, this column fetches JSON data at that URL. An optional [jq query](https://stedolan.github.io/jq/manual/#Basicfilters) transforms the JSON.\n    ",
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M3 15a4 4 0 004 4h9a5 5 0 10-.1-9.999 5.002 5.002 0 10-9.78 2.096A4.001 4.001 0 003 15z\" />\n</svg>\n",
    "video": "https://www.youtube.com/watch?v=EvpwhGeiH0U",
    "deprecated": true,
    "params": [
      {
        "name": "url",
        "displayName": "URL",
        "type": "string"
      },
      {
        "name": "query",
        "displayName": "JQ Query",
        "type": "string"
      }
    ]
  },
  "url-parts": {
    "name": "Get Part of URL",
    "category": "Data & APIs",
    "released": "direct",
    "description": "Extract pieces of a URL.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M3 15a4 4 0 004 4h9a5 5 0 10-.1-9.999 5.002 5.002 0 10-9.78 2.096A4.001 4.001 0 003 15z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "uri",
        "type": "uri",
        "displayName": "URL"
      },
      {
        "name": "part",
        "type": "string",
        "displayName": "Part (all, filename, hash, host, hostname, pathname, protocol, search, or parameter name)"
      }
    ]
  },
  "translate": {
    "name": "Google Translate",
    "category": "Data & APIs",
    "description": "Translate from one language to another",
    "author": "David Siegel <david@glideapps.com>",
    "result": {
      "type": "string"
    },
    "about": "\n      Find supported languages at [cloud.google.com/translate/docs/languages](https://cloud.google.com/translate/docs/languages).\n    ",
    "icon": "\n      <svg width=\"48\" height=\"48\" viewBox=\"0 0 48 48\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n        <path d=\"M25.74 30.15L20.66 25.13L20.72 25.07C24.2 21.19 26.68 16.73 28.14 12.01H34V8H20V4H16V8H2V11.98H24.34C22.99 15.84 20.88 19.5 18 22.7C16.14 20.63 14.6 18.38 13.38 16H9.38C10.84 19.26 12.84 22.34 15.34 25.12L5.17 35.17L8 38L18 28L24.22 34.22L25.74 30.15ZM37 20H33L24 44H28L30.25 38H39.75L42 44H46L37 20ZM31.75 34L35 25.33L38.25 34H31.75Z\" fill=\"currentColor\"/>\n      </svg>\n    ",
    "video": "https://www.youtube.com/watch?v=A3knNbGfXh4",
    "params": [
      {
        "name": "text",
        "displayName": "Text",
        "type": "string"
      },
      {
        "name": "language",
        "displayName": "Target Language",
        "type": "string"
      },
      {
        "name": "key",
        "displayName": "API Key",
        "type": "string"
      }
    ]
  },
  "sentiment": {
    "name": "Text Sentiment",
    "category": "Data & APIs",
    "description": "Is this comment positive or negative? Find out the tone.",
    "author": "twinword inc. <help@twinword.com>",
    "result": {
      "type": "primitive"
    },
    "about": "\n    Subscribe and get an API key at [rapidapi.com/twinword/api/sentiment-analysis](https://rapidapi.com/twinword/api/sentiment-analysis/).\n  ",
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M3 15a4 4 0 004 4h9a5 5 0 10-.1-9.999 5.002 5.002 0 10-9.78 2.096A4.001 4.001 0 003 15z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      },
      {
        "name": "apiKey",
        "type": "string",
        "displayName": "API Key"
      },
      {
        "name": "interpretation",
        "type": "string",
        "displayName": "Result (sentiment, score, full)"
      }
    ]
  },
  "jq": {
    "name": "Transform JSON",
    "category": "Data & APIs",
    "released": "direct",
    "description": "Transform JSON with JQ",
    "author": "David Siegel <david@glideapps.com>",
    "result": {
      "type": "string"
    },
    "about": "Learn more about jq at https://stedolan.github.io/jq/",
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M3 15a4 4 0 004 4h9a5 5 0 10-.1-9.999 5.002 5.002 0 10-9.78 2.096A4.001 4.001 0 003 15z\" />\n</svg>\n",
    "video": "https://www.youtube.com/watch?v=EvpwhGeiH0U",
    "deprecated": true,
    "params": [
      {
        "name": "json",
        "displayName": "JSON",
        "type": "string"
      },
      {
        "name": "query",
        "displayName": "JQ Query",
        "type": "string"
      }
    ]
  },
  "date-difference": {
    "name": "Date Difference",
    "category": "Date & Time",
    "released": "direct",
    "description": "Get the number of days, weeks, months, or years between dates. Accuracy is casual by default, but you can use 'longterm' accuracy for a pedantic 400-year calendar.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "number"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "startDate",
        "type": "date-time",
        "displayName": "Start Date"
      },
      {
        "name": "endDate",
        "type": "date-time",
        "displayName": "End Date"
      },
      {
        "name": "unit",
        "type": "string",
        "displayName": "Unit (days, weeks, months, years)"
      },
      {
        "name": "conversionAccuracy",
        "type": "string",
        "displayName": "Accuracy (casual, longterm)"
      }
    ]
  },
  "format-date": {
    "name": "Format Date",
    "category": "Date & Time",
    "released": "direct",
    "description": "Powerful date & time formatting with luxon.",
    "author": "luxon <https://moment.github.io/luxon>",
    "result": {
      "type": "string"
    },
    "about": "\n    Learn about date formatting in [luxon's documentation](https://moment.github.io/luxon/#/formatting?id=table-of-tokens).\n  ",
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "date",
        "type": "date-time",
        "displayName": "Date"
      },
      {
        "name": "format",
        "type": "string",
        "displayName": "Format"
      }
    ]
  },
  "format-duration": {
    "name": "Format Duration",
    "category": "Date & Time",
    "released": "direct",
    "description": "Format a duration in seconds into text like '1:30'.",
    "author": "luxon <https://moment.github.io/luxon>",
    "result": {
      "type": "string"
    },
    "about": "\n    Learn about date formatting in [luxon's documentation](https://moment.github.io/luxon/#/formatting?id=table-of-tokens).\n  ",
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "seconds",
        "type": "number",
        "displayName": "Seconds"
      },
      {
        "name": "format",
        "type": "string",
        "displayName": "Format (e.g. mm:ss)"
      }
    ]
  },
  "rrule": {
    "name": "Next Recurring Event",
    "category": "Date & Time",
    "description": "Find the next time a recurring event will occur",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "start",
        "type": "date-time",
        "displayName": "First time event occurred"
      },
      {
        "name": "recurrence",
        "type": "string",
        "displayName": "eg. 'every 2 weeks', 'every month'"
      },
      {
        "name": "after",
        "type": "date-time",
        "displayName": "Find next event after this time (default now)"
      }
    ]
  },
  "time-ago": {
    "name": "Relative Time",
    "category": "Date & Time",
    "released": "direct",
    "description": "Given a date, returns a string with the relative time (e.g. '1 day ago').",
    "author": "Nikolay Kuchumov <gitlab.com/catamphetamine>",
    "result": {
      "type": "string"
    },
    "about": "\n    Learn more at [gitlab.com/catamphetamine/javascript-time-ago](https://gitlab.com/catamphetamine/javascript-time-ago).\n  ",
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "date",
        "type": "date-time",
        "displayName": "Date"
      },
      {
        "name": "now",
        "type": "date-time",
        "displayName": "Now"
      },
      {
        "name": "style",
        "type": "string",
        "displayName": "Style (round, mini, twitter)"
      }
    ]
  },
  "parse-date": {
    "name": "Text to Date",
    "category": "Date & Time",
    "released": "direct",
    "description": "Convert text to a date.",
    "author": "luxon <https://moment.github.io/luxon>",
    "result": {
      "type": "date-time"
    },
    "about": "\n    Learn about date formatting in [luxon's documentation](https://moment.github.io/luxon/#/formatting?id=table-of-tokens).\n  ",
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M8 7V3m8 4V3m-9 8h10M5 21h14a2 2 0 002-2V7a2 2 0 00-2-2H5a2 2 0 00-2 2v12a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      },
      {
        "name": "format",
        "type": "string",
        "displayName": "Format (see https://gl.ink/date-format)"
      },
      {
        "name": "locale",
        "type": "string",
        "displayName": "Locale"
      },
      {
        "name": "zone",
        "type": "string",
        "displayName": "Timezone"
      }
    ]
  },
  "decode": {
    "name": "Decode Text",
    "category": "Encoding",
    "released": "direct",
    "description": "Decode text in a variety of formats.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M7 20l4-16m2 16l4-16M6 9h14M4 15h14\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      },
      {
        "name": "encoding",
        "type": "string",
        "displayName": "Encoding (base64, url)"
      }
    ]
  },
  "encode": {
    "name": "Encode Text",
    "category": "Encoding",
    "released": "direct",
    "description": "Encode text in a variety of formats.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M7 20l4-16m2 16l4-16M6 9h14M4 15h14\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      },
      {
        "name": "encoding",
        "type": "string",
        "displayName": "Encoding (base64, url)"
      }
    ]
  },
  "styletext": {
    "name": "Style Text",
    "category": "Fun",
    "description": "Make text into smallcaps, cursive, upside down, etc. Output is copy-pastable!",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text to style"
      },
      {
        "name": "style",
        "type": "string",
        "displayName": "Style (script, gothic, smallcaps, doublestruck, fullwidth, superscript)"
      }
    ]
  },
  "urbit-name": {
    "name": "Urbit Name",
    "category": "Fun",
    "description": "Galaxy, star, and planet names in the Urbit computational metaverse.",
    "author": "urbit Project <urbit.org>",
    "result": {
      "type": "string"
    },
    "about": "\n    This is just a playful implementation of Urbit names. Don't expect reliable or faithful\n    results when compared to official implementation.\n\n\n    More details [on Stack Overflow](https://stackoverflow.com/questions/38139453/how-are-urbit-phonetic-names-encoded).\n  ",
    "icon": "\n  <svg width=\"48\" height=\"48\" viewBox=\"0 0 32 32\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n    <circle cx=\"16\" cy=\"16\" r=\"13\" fill=\"none\" stroke=\"currentColor\" stroke-width=\"2\"/>\n    <path d=\"M22 14.0488H19.6306C19.4522 15.0976 18.9936 15.7317 18.1783 15.7317C16.7006 15.7317 15.8599 14 13.5669 14C11.3503 14 10.1783 15.3659 10 17.9756H12.3694C12.5478 16.9024 13.0064 16.2683 13.8471 16.2683C15.3248 16.2683 16.1146 18 18.4586 18C20.6242 18 21.8217 16.6341 22 14.0488Z\" fill=\"currentColor\"/>\n  </svg>\n  ",
    "video": "https://www.youtube.com/watch?v=M04AKTCDavc",
    "params": [
      {
        "name": "value",
        "type": "primitive",
        "displayName": "Value"
      },
      {
        "name": "kind",
        "type": "string",
        "displayName": "Kind (galaxy, star, planet)"
      }
    ]
  },
  "falsey": {
    "name": "Is Falsey",
    "category": "General",
    "released": "direct",
    "description": "True if value is false or false-like, otherwise false.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "boolean"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M11 4a2 2 0 114 0v1a1 1 0 001 1h3a1 1 0 011 1v3a1 1 0 01-1 1h-1a2 2 0 100 4h1a1 1 0 011 1v3a1 1 0 01-1 1h-3a1 1 0 01-1-1v-1a2 2 0 10-4 0v1a1 1 0 01-1 1H7a1 1 0 01-1-1v-3a1 1 0 00-1-1H4a2 2 0 110-4h1a1 1 0 001-1V7a1 1 0 011-1h3a1 1 0 001-1V4z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "value",
        "type": "primitive",
        "displayName": "Value"
      }
    ]
  },
  "truthy": {
    "name": "Is Truthy",
    "category": "General",
    "released": "direct",
    "description": "True if value is true or true-like, otherwise false.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "boolean"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M11 4a2 2 0 114 0v1a1 1 0 001 1h3a1 1 0 011 1v3a1 1 0 01-1 1h-1a2 2 0 100 4h1a1 1 0 011 1v3a1 1 0 01-1 1h-3a1 1 0 01-1-1v-1a2 2 0 10-4 0v1a1 1 0 01-1 1H7a1 1 0 01-1-1v-3a1 1 0 00-1-1H4a2 2 0 110-4h1a1 1 0 001-1V7a1 1 0 011-1h3a1 1 0 001-1V4z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "value",
        "type": "primitive",
        "displayName": "Value"
      }
    ]
  },
  "not": {
    "name": "Not",
    "category": "General",
    "released": "direct",
    "description": "True becomes false. False (and blank) become true.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "boolean"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M11 4a2 2 0 114 0v1a1 1 0 001 1h3a1 1 0 011 1v3a1 1 0 01-1 1h-1a2 2 0 100 4h1a1 1 0 011 1v3a1 1 0 01-1 1h-3a1 1 0 01-1-1v-1a2 2 0 10-4 0v1a1 1 0 01-1 1H7a1 1 0 01-1-1v-3a1 1 0 00-1-1H4a2 2 0 110-4h1a1 1 0 001-1V7a1 1 0 011-1h3a1 1 0 001-1V4z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "value",
        "type": "boolean",
        "displayName": "Value"
      }
    ]
  },
  "app-icon": {
    "name": "Glide App Icon",
    "category": "Glide",
    "description": "Gets a Glide app's icon",
    "author": "David Siegel <david@glideapps.com>",
    "result": {
      "type": "image-uri"
    },
    "about": "\n      Given a URL to a Glide app or page, this column produces a link to the icon for that app or page.\n    ",
    "icon": "\n        <svg\n          width=\"48\"\n          height=\"48\"\n          viewBox=\"0 0 26 27\"\n          fill=\"none\"\n          xmlns=\"http://www.w3.org/2000/svg\"\n        >\n          <path\n            d=\"M0 14.85L14.3 0V7.29C14.3 11.4653 11.0406 14.85 7.02 14.85H0Z\"\n            fill=\"currentColor\"\n          />\n          <path\n            d=\"M11.7 19.71C11.7 15.5347 14.9594 12.15 18.98 12.15H26L11.7 27V19.71Z\"\n            fill=\"currentColor\"\n          />\n        </svg>\n    ",
    "params": [
      {
        "name": "url",
        "displayName": "Glide URL",
        "type": "uri"
      }
    ]
  },
  "glide-brand-image": {
    "name": "Glide Brand Image",
    "category": "Glide",
    "description": "Glide 3D Data Shapes",
    "author": "David Siegel <david@glideapps.com>",
    "result": {
      "type": "image-uri"
    },
    "icon": "\n        <svg\n          width=\"48\"\n          height=\"48\"\n          viewBox=\"0 0 26 27\"\n          fill=\"none\"\n          xmlns=\"http://www.w3.org/2000/svg\"\n        >\n          <path\n            d=\"M0 14.85L14.3 0V7.29C14.3 11.4653 11.0406 14.85 7.02 14.85H0Z\"\n            fill=\"currentColor\"\n          />\n          <path\n            d=\"M11.7 19.71C11.7 15.5347 14.9594 12.15 18.98 12.15H26L11.7 27V19.71Z\"\n            fill=\"currentColor\"\n          />\n        </svg>\n    ",
    "params": [
      {
        "name": "category",
        "displayName": "Category (3d, avatar, or gradient)",
        "type": "string"
      },
      {
        "name": "random",
        "displayName": "Seed Value",
        "type": "string"
      }
    ]
  },
  "adjust-color": {
    "name": "Adjust Color",
    "category": "Image",
    "released": "direct",
    "description": "Modifies a color by brightening, darkening, saturating, and adjusting transparency.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "color",
        "type": "string",
        "displayName": "Color"
      },
      {
        "name": "brighten",
        "type": "number",
        "displayName": "Brighten"
      },
      {
        "name": "saturate",
        "type": "number",
        "displayName": "Saturate"
      },
      {
        "name": "luminance",
        "type": "number",
        "displayName": "Luminance"
      },
      {
        "name": "transparency",
        "type": "number",
        "displayName": "Transparency"
      }
    ]
  },
  "barcode": {
    "name": "Barcode",
    "category": "Image",
    "released": "direct",
    "description": "Generate barcodes.",
    "author": "lindell <github.com/lindell/JsBarcode>",
    "result": {
      "type": "image-uri"
    },
    "about": "\n        JsBarcode is a barcode generator written in JavaScript. It supports multiple barcode formats and works in browsers and with Node.js.\n    \n    Learn more at [lindell.me/JsBarcode](https://lindell.me/JsBarcode/).\n    ",
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "content",
        "type": "string",
        "displayName": "Content"
      }
    ]
  },
  "color-palette": {
    "name": "Color Palette",
    "category": "Image",
    "released": "direct",
    "description": "Create a palette of colors from a start and end color.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": {
        "kind": "array",
        "items": "string"
      }
    },
    "icon": "<svg xmlns=\"http://www.w3.org/2000/svg\" height=\"48\" width=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M7 21a4 4 0 01-4-4V5a2 2 0 012-2h4a2 2 0 012 2v12a4 4 0 01-4 4zm0 0h12a2 2 0 002-2v-4a2 2 0 00-2-2h-2.343M11 7.343l1.657-1.657a2 2 0 012.828 0l2.829 2.829a2 2 0 010 2.828l-8.486 8.485M7 17h.01\" />\n</svg>",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "start",
        "type": "string",
        "displayName": "Start Color"
      },
      {
        "name": "end",
        "type": "string",
        "displayName": "End Color"
      },
      {
        "name": "number",
        "type": "number",
        "displayName": "Number of Colors"
      }
    ]
  },
  "doodle": {
    "name": "Doodle Ipsum",
    "category": "Image",
    "description": "Generate random illustrations from data",
    "author": "David Siegel <david@glideapps.com>",
    "result": {
      "type": "image-uri"
    },
    "about": "\n      [Doodle Ipsum](https://doodleipsum.com) is the *lorem ipsum* of illustrations. Learn more at [doodleipsum.com](https://doodleipsum.com).\n    ",
    "icon": "\n      <svg width=\"48\" height=\"48\" viewBox=\"0 0 48 48\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n        <path d=\"M37 26C42.5228 26 47 21.5228 47 16C47 10.4772 42.5228 6 37 6C31.4772 6 27 10.4772 27 16C27 21.5228 31.4772 26 37 26Z\" fill=\"currentColor\"/>\n        <path d=\"M27 27H11C10.4477 27 10 27.4477 10 28V44C10 44.5523 10.4477 45 11 45H27C27.5523 45 28 44.5523 28 44V28C28 27.4477 27.5523 27 27 27Z\" fill=\"currentColor\"/>\n        <path d=\"M3.99981 21H21.9998C22.1768 21 22.3506 20.9529 22.5035 20.8638C22.6564 20.7746 22.7829 20.6464 22.87 20.4923C22.9572 20.3383 23.0019 20.1639 22.9995 19.9869C22.9972 19.8099 22.948 19.6367 22.8568 19.485L13.8568 4.48498C13.7612 4.34597 13.6333 4.23229 13.484 4.15375C13.3347 4.07522 13.1685 4.03418 12.9998 4.03418C12.8311 4.03418 12.6649 4.07522 12.5156 4.15375C12.3663 4.23229 12.2384 4.34597 12.1428 4.48498L3.14281 19.485C3.05166 19.6367 3.00241 19.8099 3.00009 19.9869C2.99777 20.1639 3.04246 20.3383 3.12961 20.4923C3.21675 20.6464 3.34323 20.7746 3.49611 20.8638C3.649 20.9529 3.82281 21 3.99981 21Z\" fill=\"currentColor\"/>\n      </svg>\n    ",
    "video": "https://www.youtube.com/watch?v=kvUU1N-B_Ok",
    "params": [
      {
        "name": "size",
        "displayName": "Size",
        "type": "number"
      },
      {
        "name": "category",
        "displayName": "Category (random|flat|hand-drawn|outline|abstract|avatar)",
        "type": "string"
      },
      {
        "name": "random",
        "displayName": "Random Seed",
        "type": "primitive"
      }
    ]
  },
  "gravatar": {
    "name": "Email to Photo",
    "category": "Image",
    "released": "direct",
    "description": "Uses gravatar.com to find a person's photo given their email address.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "image-uri"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "email",
        "type": "string",
        "displayName": "Email"
      },
      {
        "name": "size",
        "type": "number",
        "displayName": "Size"
      }
    ]
  },
  "heroicons": {
    "name": "Hero Icons",
    "category": "Image",
    "released": "direct",
    "description": "Beautiful hand-crafted SVG icons, by the makers of Tailwind CSS.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "image-uri"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "name",
        "type": "string",
        "displayName": "Name (See heroicons.com)"
      },
      {
        "name": "style",
        "type": "string",
        "displayName": "Style (solid, outline, mini)"
      },
      {
        "name": "size",
        "type": "number",
        "displayName": "Size"
      },
      {
        "name": "color",
        "type": "string",
        "displayName": "Color"
      },
      {
        "name": "backgroundColor",
        "type": "string",
        "displayName": "Background Color"
      },
      {
        "name": "padding",
        "type": "number",
        "displayName": "Padding"
      }
    ]
  },
  "color-to-image": {
    "name": "Image from Color",
    "category": "Image",
    "released": "direct",
    "description": "Get an image based on a CSS color.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "image-uri"
    },
    "about": "You can use any valid [CSS color](https://developer.mozilla.org/en-US/docs/Web/CSS/color).",
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M4 16l4.586-4.586a2 2 0 012.828 0L16 16m-2-2l1.586-1.586a2 2 0 012.828 0L20 14m-6-6h.01M6 20h12a2 2 0 002-2V6a2 2 0 00-2-2H6a2 2 0 00-2 2v12a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "color",
        "type": "string",
        "displayName": "Color"
      }
    ]
  },
  "qrcode": {
    "name": "QR Code",
    "category": "Image",
    "released": "direct",
    "description": "Generate QR codes from any value.",
    "author": "David Siegel <david@glideapps.com>",
    "result": {
      "type": "image-uri"
    },
    "icon": "<svg width=\"48\" height=\"48\" viewBox=\"0 0 48 48\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n      <path d=\"M16 2H2V16H16V2ZM14 14H4V4H14V14Z\" fill=\"currentColor\"/>\n      <path d=\"M31 42H29V46H46V44H31V42Z\" fill=\"currentColor\"/>\n      <path d=\"M12 6H6V12H12V6Z\" fill=\"currentColor\"/>\n      <path d=\"M2 46H16V32H2V46ZM4 34H14V44H4V34Z\" fill=\"currentColor\"/>\n      <path d=\"M12 36H6V42H12V36Z\" fill=\"currentColor\"/>\n      <path d=\"M32 2V16H46V2H32ZM44 14H34V4H44V14Z\" fill=\"currentColor\"/>\n      <path d=\"M42 6H36V12H42V6Z\" fill=\"currentColor\"/>\n      <path d=\"M46 18H42V22H46V18Z\" fill=\"currentColor\"/>\n      <path d=\"M6 26H2V30H6V26Z\" fill=\"currentColor\"/>\n      <path d=\"M23 18H15V20H25V16V14H27V10H25H23H21V6H23V8H30V2H28V6H25V2H24H20H19V12H23V14H19V16H23V18Z\" fill=\"currentColor\"/>\n      <path d=\"M5 24H9H11H12V26H8V28H12V30H20V28H14V26V22H11V19H9V22H7V18H2V20H5V24Z\" fill=\"currentColor\"/>\n      <path d=\"M24 42V37H20V33H18V39H22V42H18V44H22V46H27V44H24V42Z\" fill=\"currentColor\"/>\n      <path d=\"M34 22H30V17H28V24H38V22H36V20H39V18H36H34H32V20H34V22Z\" fill=\"currentColor\"/>\n      <path d=\"M32 40H35V42H39V40V38V35H35V38H32V35H30V38H28V30H26V28H24V22H17V26H19V24H22V28V32H26V38V40H28H30H32Z\" fill=\"currentColor\"/>\n      <path d=\"M44 27H41H39H34V31H32V27H30V33H36V29H39V32H41V29H44V35H41V41H46V39H43V37H46V29V27V24H44V27Z\" fill=\"currentColor\"/>\n      </svg>\n      ",
    "video": "https://www.youtube.com/watch?v=142TGhaTMtI",
    "params": [
      {
        "name": "content",
        "type": "primitive",
        "displayName": "Content"
      },
      {
        "name": "size",
        "type": "number",
        "displayName": "Size"
      }
    ]
  },
  "youtube-thumbnail": {
    "name": "YouTube Thumbnail",
    "category": "Image",
    "released": "direct",
    "description": "Display video thumbnail images",
    "author": "David Siegel <david@glideapps.com>",
    "result": {
      "type": "image-uri"
    },
    "icon": "\n      <svg width=\"48\" height=\"48\" viewBox=\"0 0 48 48\" fill=\"none\" xmlns=\"http://www.w3.org/2000/svg\">\n<path d=\"M47.5 14.4C47.5 14.4 47 11.1 45.6 9.59998C43.8 7.69998 41.7 7.69998 40.8 7.59998C34.1 7.09998 24 7.09998 24 7.09998C24 7.09998 13.9 7.09998 7.2 7.59998C6.3 7.69998 4.2 7.69998 2.4 9.59998C1 11.1 0.5 14.4 0.5 14.4C0.5 14.4 0 18.3 0 22.2V25.8C0 29.7 0.5 33.6 0.5 33.6C0.5 33.6 1 36.9 2.4 38.4C4.2 40.3 6.6 40.3 7.7 40.5C11.5 40.9 24 41 24 41C24 41 34.1 41 40.8 40.5C41.7 40.4 43.8 40.4 45.6 38.5C47 37 47.5 33.7 47.5 33.7C47.5 33.7 48 29.8 48 25.9V22.3C48 18.3 47.5 14.4 47.5 14.4ZM19 30.2V16.7L32 23.5L19 30.2Z\" fill=\"currentColor\"/>\n</svg>\n    ",
    "params": [
      {
        "name": "videoUrl",
        "displayName": "Video URL",
        "type": "uri"
      }
    ]
  },
  "classify": {
    "name": "Classify Text",
    "category": "Machine Learning",
    "description": "Categorize text based on examples.",
    "author": "ttezel <https://github.com/ttezel/bayes>",
    "result": {
      "type": "string"
    },
    "about": "\n      The Classify Text column takes training data in the form of text values, and known categories for those text values. When it sees new text values without categories provided, it tries to infer the category based on the examples it's seen.\n\n      **This is just a proof of concept. Because Glide does not guarantee that all columns are evaluated (it only evaluates columns required to show the current screen), this will usually not produce good results.**",
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 3v2m6-2v2M9 19v2m6-2v2M5 9H3m2 6H3m18-6h-2m2 6h-2M7 19h10a2 2 0 002-2V7a2 2 0 00-2-2H7a2 2 0 00-2 2v10a2 2 0 002 2zM9 9h6v6H9V9z\" />\n</svg>\n",
    "video": "https://www.youtube.com/watch?v=Qu9MM8YAAM0",
    "params": [
      {
        "name": "phrase",
        "type": "string",
        "displayName": "Phrase"
      },
      {
        "name": "category",
        "type": "string",
        "displayName": "Training Data"
      },
      {
        "name": "id",
        "type": "string",
        "displayName": "Classifier ID"
      }
    ]
  },
  "compact-integer": {
    "name": "Abbreviate Number",
    "category": "Number",
    "released": "direct",
    "description": "Converts an integer into its most compact representation.",
    "author": "HubSpot <https://github.com/HubSpot/humanize>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\"\n          height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 7h6m0 10v-3m-3 3h.01M9 17h.01M9 14h.01M12 14h.01M15 11h.01M12 11h.01M9 11h.01M7 21h10a2 2 0 002-2V5a2 2 0 00-2-2H7a2 2 0 00-2 2v14a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "number",
        "type": "number",
        "displayName": "Number"
      },
      {
        "name": "decimals",
        "type": "number",
        "displayName": "Decimal Places"
      }
    ]
  },
  "clamp": {
    "name": "Clamp",
    "category": "Number",
    "released": "direct",
    "description": "Clamps a number within inclusive lower and upper bounds.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "number"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\"\n          height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 7h6m0 10v-3m-3 3h.01M9 17h.01M9 14h.01M12 14h.01M15 11h.01M12 11h.01M9 11h.01M7 21h10a2 2 0 002-2V5a2 2 0 00-2-2H7a2 2 0 00-2 2v14a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "number",
        "type": "number",
        "displayName": "Number"
      },
      {
        "name": "lower",
        "type": "number",
        "displayName": "Lower Bound"
      },
      {
        "name": "upper",
        "type": "number",
        "displayName": "Upper Bound"
      }
    ]
  },
  "unit-converter": {
    "name": "Convert Units",
    "category": "Number",
    "released": "direct",
    "description": "Convert a quantity from one unit to another.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "number"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\"\n          height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 7h6m0 10v-3m-3 3h.01M9 17h.01M9 14h.01M12 14h.01M15 11h.01M12 11h.01M9 11h.01M7 21h10a2 2 0 002-2V5a2 2 0 00-2-2H7a2 2 0 00-2 2v14a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "number",
        "type": "number",
        "displayName": "Number"
      },
      {
        "name": "from",
        "type": "string",
        "displayName": "From unit (see https://gl.ink/units)"
      },
      {
        "name": "to",
        "type": "string",
        "displayName": "To unit"
      }
    ]
  },
  "file-size": {
    "name": "File Size",
    "category": "Number",
    "released": "direct",
    "description": "Formats the value like a 'human-readable' file size (i.e. '13 KB', '4.1 MB', '102 bytes', etc).",
    "author": "HubSpot <https://github.com/HubSpot/humanize>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\"\n          height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 7h6m0 10v-3m-3 3h.01M9 17h.01M9 14h.01M12 14h.01M15 11h.01M12 11h.01M9 11h.01M7 21h10a2 2 0 002-2V5a2 2 0 00-2-2H7a2 2 0 00-2 2v14a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "fileSize",
        "type": "number",
        "displayName": "File Size"
      }
    ]
  },
  "fit-polynomial": {
    "name": "Interpolate (Polynomial)",
    "category": "Number",
    "description": "Given some example points, interpolate the value for an input. This uses a polynomial to exactly fit all the given example points.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "number"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\"\n          height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 7h6m0 10v-3m-3 3h.01M9 17h.01M9 14h.01M12 14h.01M15 11h.01M12 11h.01M9 11h.01M7 21h10a2 2 0 002-2V5a2 2 0 00-2-2H7a2 2 0 00-2 2v14a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "input",
        "type": "number",
        "displayName": "Input"
      },
      {
        "name": "fit_inputs",
        "type": {
          "kind": "array",
          "items": "number"
        },
        "displayName": "Example Inputs"
      },
      {
        "name": "fit_outputs",
        "type": {
          "kind": "array",
          "items": "number"
        },
        "displayName": "Example Outputs"
      }
    ]
  },
  "ordinal": {
    "name": "Ordinal",
    "category": "Number",
    "released": "direct",
    "description": "Converts an integer to its ordinal as a string. e.g. 22nd",
    "author": "HubSpot <https://github.com/HubSpot/humanize>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\"\n          height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 7h6m0 10v-3m-3 3h.01M9 17h.01M9 14h.01M12 14h.01M15 11h.01M12 11h.01M9 11h.01M7 21h10a2 2 0 002-2V5a2 2 0 00-2-2H7a2 2 0 00-2 2v14a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "number",
        "type": "number",
        "displayName": "Number"
      }
    ]
  },
  "random": {
    "name": "Random Number",
    "category": "Number",
    "released": "direct",
    "description": "Turn any value into a stable random number.",
    "author": "davidbau <github.com/davidbau/seedrandom>",
    "result": {
      "type": "number"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\"\n          height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 7h6m0 10v-3m-3 3h.01M9 17h.01M9 14h.01M12 14h.01M15 11h.01M12 11h.01M9 11h.01M7 21h10a2 2 0 002-2V5a2 2 0 00-2-2H7a2 2 0 00-2 2v14a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.youtube.com/watch?v=GtOt7EBNEwQ",
    "params": [
      {
        "name": "seed",
        "type": "primitive",
        "displayName": "Seed"
      }
    ]
  },
  "dice": {
    "name": "Roll Dice",
    "category": "Number",
    "released": "direct",
    "description": "Roll dice of various sizes.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "number"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\"\n          height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 7h6m0 10v-3m-3 3h.01M9 17h.01M9 14h.01M12 14h.01M15 11h.01M12 11h.01M9 11h.01M7 21h10a2 2 0 002-2V5a2 2 0 00-2-2H7a2 2 0 00-2 2v14a2 2 0 002 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "seed",
        "type": "primitive",
        "displayName": "Roll Seed"
      },
      {
        "name": "sides",
        "type": "number",
        "displayName": "Sides (default is 6)"
      }
    ]
  },
  "capitalize": {
    "name": "Capitalize Text",
    "category": "Text",
    "released": "direct",
    "description": "Converts the first character of string to upper case and the remaining to lower case.",
    "author": "lodash Project <lodash.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      }
    ]
  },
  "regex-matchany": {
    "name": "Check Text Matches",
    "category": "Text",
    "released": "direct",
    "description": "Check that text matches a regular expression.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "boolean"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      },
      {
        "name": "regex",
        "type": "string",
        "displayName": "Regular Expression"
      }
    ]
  },
  "regex": {
    "name": "Extract Matching Text",
    "category": "Text",
    "released": "direct",
    "description": "Extract text matching a regular expression.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      },
      {
        "name": "regex",
        "type": "string",
        "displayName": "Regular Expression"
      }
    ]
  },
  "regex-matchmany": {
    "name": "Extract Multiple Matching Text",
    "category": "Text",
    "released": "direct",
    "description": "Extract text matching a regular expression, returning an array of matches.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": {
        "kind": "array",
        "items": "string"
      }
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      },
      {
        "name": "regex",
        "type": "string",
        "displayName": "Regular Expression"
      }
    ]
  },
  "initials": {
    "name": "Initials",
    "category": "Text",
    "released": "direct",
    "description": "Get initials for text.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      },
      {
        "name": "separator",
        "type": "string",
        "displayName": "Separator"
      },
      {
        "name": "ignoreLowercase",
        "type": "boolean",
        "displayName": "Ignore Lowercase"
      }
    ]
  },
  "kebab-case": {
    "name": "Kebab Case",
    "category": "Text",
    "released": "direct",
    "description": "\"hello world\" → \"hello-world\"",
    "author": "lodash Project <lodash.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      }
    ]
  },
  "lorem-ipsum": {
    "name": "Lorem Ipsum",
    "category": "Text",
    "released": "direct",
    "description": "Produces a 'lorem ipsum' style string",
    "author": "knicklabs <github.com/knicklabs/lorem-ipsum.js>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "numberOfSentences",
        "type": "number",
        "displayName": "Number of Sentences"
      }
    ]
  },
  "lowercase": {
    "name": "Lowercase Text",
    "category": "Text",
    "released": "direct",
    "description": "Converts string to lower case.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      }
    ]
  },
  "markdown": {
    "name": "Markdown to HTML",
    "category": "Text",
    "released": "sandboxed",
    "description": "Convert markdown to HTML.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "markdown",
        "type": "string",
        "displayName": "Markdown"
      },
      {
        "name": "inline",
        "type": "boolean",
        "displayName": "Inline"
      }
    ]
  },
  "nano-id": {
    "name": "Nano Id",
    "category": "Text",
    "description": "A tiny (108 bytes), secure, URL-friendly, unique string ID generator for JavaScript",
    "author": "Andrey Sitnik <https://github.com/ai/nanoid>",
    "result": {
      "type": "string"
    },
    "about": "\n        A tiny, secure, URL-friendly, unique string ID generator for JavaScript.",
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "seed",
        "type": "string",
        "displayName": "Seed"
      },
      {
        "name": "length",
        "type": "number",
        "displayName": "Length"
      },
      {
        "name": "alphabet",
        "type": "string",
        "displayName": "Custom Alphabet"
      }
    ]
  },
  "pad": {
    "name": "Pad Text",
    "category": "Text",
    "released": "direct",
    "description": "Pads string on the left and right sides if it's shorter than length. Padding characters are truncated if they can't be evenly divided by length.",
    "author": "lodash Project <lodash.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      },
      {
        "name": "length",
        "type": "number",
        "displayName": "Length"
      },
      {
        "name": "chars",
        "type": "string",
        "displayName": "Padding"
      }
    ]
  },
  "pad-end": {
    "name": "Pad Text at End",
    "category": "Text",
    "released": "direct",
    "description": "Pads string on the right side if it's shorter than length. Padding characters are truncated if they exceed length.",
    "author": "lodash Project <lodash.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      },
      {
        "name": "length",
        "type": "number",
        "displayName": "Length"
      },
      {
        "name": "chars",
        "type": "string",
        "displayName": "Padding"
      }
    ]
  },
  "pad-start": {
    "name": "Pad Text at Start",
    "category": "Text",
    "released": "direct",
    "description": "Pads string on the left side if it's shorter than length. Padding characters are truncated if they exceed length.",
    "author": "lodash Project <lodash.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      },
      {
        "name": "length",
        "type": "number",
        "displayName": "Length"
      },
      {
        "name": "chars",
        "type": "string",
        "displayName": "Padding"
      }
    ]
  },
  "parts-of-speech": {
    "name": "Parts of Speech Extractor",
    "category": "Text",
    "released": "direct",
    "description": "Parts of Speech extractor",
    "author": "WinkJS <https://github.com/winkjs/wink-nlp>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "sentence",
        "type": "string",
        "displayName": "Sentence"
      },
      {
        "name": "pos",
        "type": "string",
        "displayName": "https://winkjs.org/wink-nlp/part-of-speech.html"
      }
    ]
  },
  "pluralize": {
    "name": "Pluralize Text",
    "category": "Text",
    "released": "direct",
    "description": "Returns the plural version of a given word if the value is not 1. The default suffix is 's'.",
    "author": "HubSpot <https://github.com/HubSpot/humanize>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "number",
        "type": "number",
        "displayName": "Number"
      },
      {
        "name": "singular",
        "type": "string",
        "displayName": "One"
      },
      {
        "name": "plural",
        "type": "string",
        "displayName": "Many"
      },
      {
        "name": "zero",
        "type": "string",
        "displayName": "Zero (default: same as Many)"
      },
      {
        "name": "includeNumber",
        "type": "boolean",
        "displayName": "Include Number"
      }
    ]
  },
  "prefix-string": {
    "name": "Prefix Array of Text",
    "category": "Text",
    "description": "Returns an array of prefixed text from a given prefix and text value that are joined together.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": {
        "kind": "array",
        "items": "string"
      }
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": {
          "kind": "array",
          "items": "string"
        },
        "displayName": "Text"
      },
      {
        "name": "prefix",
        "type": "string",
        "displayName": "Prefix"
      }
    ]
  },
  "deburr": {
    "name": "Remove Text Accents",
    "category": "Text",
    "released": "direct",
    "description": "Deburrs string by converting Latin-1 Supplement and Latin Extended-A letters to basic Latin letters and removing combining diacritical marks.",
    "author": "lodash Project <lodash.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      }
    ]
  },
  "repeat": {
    "name": "Repeat Text",
    "category": "Text",
    "released": "direct",
    "description": "Repeats the given string n times.",
    "author": "lodash Project <lodash.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      },
      {
        "name": "n",
        "type": "number",
        "displayName": "Repetitions"
      }
    ]
  },
  "replace-all": {
    "name": "Replace All",
    "category": "Text",
    "released": "direct",
    "description": "Replace every occurrence of some text with some other text.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      },
      {
        "name": "x",
        "type": "string",
        "displayName": "Replace This"
      },
      {
        "name": "y",
        "type": "string",
        "displayName": "With This"
      }
    ]
  },
  "start-case": {
    "name": "Start Case",
    "category": "Text",
    "released": "direct",
    "description": "\"hello world\" → \"Hello World\"",
    "author": "lodash Project <lodash.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      }
    ]
  },
  "is-email": {
    "name": "Text is Email",
    "category": "Text",
    "released": "direct",
    "description": "Indicates whether text is an email.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "boolean"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "email",
        "type": "string",
        "displayName": "Email"
      }
    ]
  },
  "is-url": {
    "name": "Text is URL",
    "category": "Text",
    "released": "direct",
    "description": "Indicates whether text is a URL.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "boolean"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "url",
        "type": "string",
        "displayName": "Url"
      },
      {
        "name": "requireProtocol",
        "type": "boolean",
        "displayName": "Require Protocol (e.g. 'https://')"
      }
    ]
  },
  "text-length": {
    "name": "Text Length",
    "category": "Text",
    "released": "direct",
    "description": "Gets the length of a text snippet",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "number"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      }
    ]
  },
  "text-index": {
    "name": "Text Offset",
    "category": "Text",
    "released": "direct",
    "description": "Gets the zero-based offset of the zero-based N-th occurence of needle in haystack",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "number"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "haystack",
        "type": "string",
        "displayName": "Haystack"
      },
      {
        "name": "needle",
        "type": "string",
        "displayName": "Needle"
      },
      {
        "name": "nth",
        "type": "number",
        "displayName": "Nth"
      }
    ]
  },
  "text-slice": {
    "name": "Text Slice",
    "category": "Text",
    "released": "direct",
    "description": "Gets a substring out of text, from zero-indexed \"start\" with an optional length",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      },
      {
        "name": "start",
        "type": "number",
        "displayName": "Start"
      },
      {
        "name": "length",
        "type": "number",
        "displayName": "Length"
      }
    ]
  },
  "text-to-emoji": {
    "name": "Text to Emoji",
    "category": "Text",
    "released": "direct",
    "description": "Get an emoji from a piece of text",
    "author": "IonicaBizau <https://github.com/IonicaBizau/emoji-from-text#readme>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      }
    ]
  },
  "trim": {
    "name": "Trim Whitespace",
    "category": "Text",
    "released": "direct",
    "description": "Remove whitespace around text.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      }
    ]
  },
  "truncate": {
    "name": "Truncate Text",
    "category": "Text",
    "released": "direct",
    "description": "Truncates a string if it is longer than the specified number of characters. Truncated strings will end with a translatable ellipsis sequence (\"…\").",
    "author": "HubSpot <https://github.com/HubSpot/humanize>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "string",
        "type": "string",
        "displayName": "String"
      },
      {
        "name": "length",
        "type": "number",
        "displayName": "Length"
      },
      {
        "name": "ending",
        "type": "string",
        "displayName": "Ending"
      }
    ]
  },
  "uppercase": {
    "name": "Uppercase Text",
    "category": "Text",
    "released": "direct",
    "description": "Converts string to upper case.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "string"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "text",
        "type": "string",
        "displayName": "Text"
      }
    ]
  },
  "word-count": {
    "name": "Word Count",
    "category": "Text",
    "released": "direct",
    "description": "Count words in text.",
    "author": "Glide <hello@glideapps.com>",
    "result": {
      "type": "number"
    },
    "icon": "\n<svg xmlns=\"http://www.w3.org/2000/svg\" width=\"48\" height=\"48\" fill=\"none\" viewBox=\"0 0 24 24\" stroke=\"currentColor\">\n  <path stroke-linecap=\"round\" stroke-linejoin=\"round\" stroke-width=\"2\" d=\"M9 12h6m-6 4h6m2 5H7a2 2 0 01-2-2V5a2 2 0 012-2h5.586a1 1 0 01.707.293l5.414 5.414a1 1 0 01.293.707V19a2 2 0 01-2 2z\" />\n</svg>\n",
    "video": "https://www.loom.com/share/39ab84c058e14adea79ca4442f450351",
    "params": [
      {
        "name": "words",
        "type": "string",
        "displayName": "Words"
      }
    ]
  }
}