diff --git a/Cargo.lock b/Cargo.lock index 744633f..4edb72e 100644 --- a/Cargo.lock +++ b/Cargo.lock @@ -194,12 +194,12 @@ dependencies = [ "clap", "crossbeam", "ignore", + "lazy_static", "pathdiff", + "regex", "serde", "serde_json", - "thiserror", "toml", - "tree-sitter", ] [[package]] @@ -474,26 +474,6 @@ dependencies = [ "unicode-width", ] -[[package]] -name = "thiserror" -version = "1.0.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "0e9ae34b84616eedaaf1e9dd6026dbe00dcafa92aa0c8077cb69df1fcfe5e53e" -dependencies = [ - "thiserror-impl", -] - -[[package]] -name = "thiserror-impl" -version = "1.0.22" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "9ba20f23e85b10754cd195504aebf6a27e2e6cbe28c17778a0c930724628dd56" -dependencies = [ - "proc-macro2", - "quote", - "syn", -] - [[package]] name = "thread_local" version = "1.0.1" @@ -512,16 +492,6 @@ dependencies = [ "serde", ] -[[package]] -name = "tree-sitter" -version = "0.17.1" -source = "registry+https://github.com/rust-lang/crates.io-index" -checksum = "d18dcb776d3affaba6db04d11d645946d34a69b3172e588af96ce9fecd20faac" -dependencies = [ - "cc", - "regex", -] - [[package]] name = "unicode-segmentation" version = "1.7.0" diff --git a/Cargo.toml b/Cargo.toml index 89d2c80..2c99d81 100644 --- a/Cargo.toml +++ b/Cargo.toml @@ -11,12 +11,12 @@ anyhow = "1.0" clap = "3.0.0-beta.2" crossbeam = "0.8" ignore = "0.4" +lazy_static = "1.4" pathdiff = "0.1" +regex = "1.0" serde = {version = "1.0", features = ["derive"]} serde_json = "1.0" -thiserror = "1.0" toml = "0.5" -tree-sitter = "0.17" [build-dependencies] cc = "*" diff --git a/build.rs b/build.rs deleted file mode 100644 index 129d4bc..0000000 --- a/build.rs +++ /dev/null @@ -1,21 +0,0 @@ -use std::path::PathBuf; - -// https://doc.rust-lang.org/cargo/reference/build-scripts.html -fn main() { - println!("cargo:rerun-if-changed=build.rs"); - - let dir: PathBuf = ["vendor", "tree-sitter-elm", "src"].iter().collect(); - - println!("cargo:rerun-if-changed=vendor/tree-sitter-elm/src/parser.c"); - cc::Build::new() - .include(&dir) - .file(dir.join("parser.c")) - .compile("tree-sitter-elm"); - - println!("cargo:rerun-if-changed=vendor/tree-sitter-elm/src/scanner.cc"); - cc::Build::new() - .include(&dir) - .cpp(true) - .file(dir.join("scanner.cc")) - .compile("tree_sitter_elm_scanner") -} diff --git a/default.nix b/default.nix index 2739537..e0dd9eb 100644 --- a/default.nix +++ b/default.nix @@ -3,8 +3,5 @@ let naersk = pkgs.callPackage sources.naersk { }; gitignore = import sources.gitignore { }; -in naersk.buildPackage { - src = gitignore.gitignoreSource ./.; - buildInputs = if pkgs.stdenv.isDarwin then [ pkgs.xcbuild ] else [ ]; -} +in naersk.buildPackage (gitignore.gitignoreSource ./.) diff --git a/script/update-subtrees.sh b/script/update-subtrees.sh index 7aa4be8..092724a 100755 --- a/script/update-subtrees.sh +++ b/script/update-subtrees.sh @@ -1,5 +1,4 @@ #!/usr/bin/env bash set -euo pipefail -git subtree pull --squash --prefix vendor/tree-sitter-elm https://github.com/Razzeee/tree-sitter-elm master git subtree pull --squash --prefix vendor/elm-spa-example https://github.com/rtfeldman/elm-spa-example master diff --git a/src/importfinder.rs b/src/importfinder.rs index 033fea2..d35e952 100644 --- a/src/importfinder.rs +++ b/src/importfinder.rs @@ -1,11 +1,11 @@ -use anyhow::{anyhow, bail, Context, Result}; +use anyhow::{bail, Context, Result}; use crossbeam::channel; +use lazy_static::lazy_static; +use regex::Regex; +use serde::Serialize; use std::collections::{BTreeMap, BTreeSet}; use std::fs; use std::path::PathBuf; -use thiserror::Error; - -static IMPORT_QUERY: &str = "(import_clause (import) (upper_case_qid)@import)"; pub struct ImportFinder { roots: BTreeSet, @@ -38,10 +38,6 @@ impl ImportFinder { .context("could not build extensions to scan for")?; builder.types(types); - let query = tree_sitter::Query::new(get_language(), IMPORT_QUERY) - .map_err(TreeSitterError::QueryError) - .context("could not instantiate the import query")?; - let mut out: BTreeMap> = BTreeMap::new(); let (parent_results_sender, results_receiver) = channel::unbounded(); @@ -51,10 +47,6 @@ impl ImportFinder { let results_sender = parent_results_sender.clone(); let error_sender = parent_error_sender.clone(); - let mut parser = get_parser().unwrap(); - - let query = &query; - Box::new(move |maybe_dir_entry| { let dir_entry = match maybe_dir_entry.context("could not read an entry from a root") { @@ -71,7 +63,18 @@ impl ImportFinder { return ignore::WalkState::Continue; } - let source = match fs::read(dir_entry.path()).context("could not read an Elm file") + let source_bytes = + match fs::read(dir_entry.path()).context("could not read an Elm file") { + Ok(s) => s, + Err(err) => { + #[allow(unused_must_use)] + let _ = error_sender.send(err); + return ignore::WalkState::Quit; + } + }; + + let source = match std::str::from_utf8(&source_bytes) + .context("could not read the source as utf8") { Ok(s) => s, Err(err) => { @@ -81,42 +84,31 @@ impl ImportFinder { } }; - let parsed = match parser.parse(&source, None) { - Some(p) => p, - None => { - #[allow(unused_must_use)] - let _ = error_sender - .send(anyhow!("could not parse {:}", dir_entry.path().display())); - return ignore::WalkState::Quit; - } - }; - - let mut cursor = tree_sitter::QueryCursor::new(); + lazy_static! { + // TODO: maybe faster to use `([^ ]+)` for the match + static ref IMPORT_RE: Regex = Regex::new(r"^import +([A-Z][A-Za-z0-9_\.]*)").unwrap(); + } - for match_ in cursor.matches(&query, parsed.root_node(), |_| []) { - for capture in match_.captures { - let import = match capture - .node - .utf8_text(&source) - .context("could not convert a match to a source string") - { - Ok(i) => i, - #[allow(unused_must_use)] - Err(err) => { - error_sender.send(err); - return ignore::WalkState::Quit; - } - }; + // perf idea; keep track of if we've finished the import list and + // bail on any further lines once we get there. Since imports + // are forbidden after the block at the top of the module, we + // shouldn't miss anything by skipping the rest of the lines + // in each file! + for (line_number, line) in source.lines().enumerate() { + if let Some(import_module) = IMPORT_RE.captures(line).and_then(|m| m.get(1)) { if let Err(err) = results_sender.send(FoundImport { - import: import.to_string(), path: dir_entry.path().to_path_buf(), - position: capture.node.start_position(), + import: import_module.as_str().to_string(), + position: Position { + row: line_number + 1, + column: import_module.start(), + }, }) { #[allow(unused_must_use)] let _ = error_sender.send(err.into()); return ignore::WalkState::Quit; - }; + } } } @@ -157,34 +149,11 @@ impl ImportFinder { pub struct FoundImport { pub import: String, pub path: PathBuf, - pub position: tree_sitter::Point, -} - -// tree sitter - -extern "C" { - fn tree_sitter_elm() -> tree_sitter::Language; -} - -fn get_language() -> tree_sitter::Language { - unsafe { tree_sitter_elm() } -} - -fn get_parser() -> Result { - let mut parser = tree_sitter::Parser::new(); - - parser - .set_language(get_language()) - .map_err(TreeSitterError::LanguageError)?; - - Ok(parser) + pub position: Position, } -#[derive(Debug, Error)] -enum TreeSitterError { - #[error("language error: {0}")] - LanguageError(tree_sitter::LanguageError), - - #[error("query error: {0:?}")] - QueryError(tree_sitter::QueryError), +#[derive(Debug, Copy, Clone, PartialEq, Eq, PartialOrd, Ord, Serialize)] +pub struct Position { + pub row: usize, + pub column: usize, } diff --git a/src/store.rs b/src/store.rs index e9cb2bb..43e479a 100644 --- a/src/store.rs +++ b/src/store.rs @@ -1,6 +1,5 @@ use anyhow::{anyhow, Context, Result}; -use serde::ser::SerializeStruct; -use serde::{Deserialize, Serialize, Serializer}; +use serde::{Deserialize, Serialize}; use std::collections::{BTreeMap, BTreeSet}; use std::fmt::{self, Display}; use std::fs; @@ -183,7 +182,7 @@ impl Store { .map(|found| found.path.to_owned()) .collect::>(); - let mut to_positions: BTreeMap<&PathBuf, tree_sitter::Point> = BTreeMap::new(); + let mut to_positions: BTreeMap<&PathBuf, importfinder::Position> = BTreeMap::new(); for import in found_imports.iter() { to_positions.insert(&import.path, import.position); @@ -192,7 +191,7 @@ impl Store { for file in new_usages.difference(&existing.usages) { out.push(CheckResult { file: file.to_path_buf(), - position: to_positions.get(file).map(|p| Point(*p)), + position: to_positions.get(file).copied(), import: import.to_string(), error_location: ErrorLocation::InElmSource { hint: existing.hint.as_ref(), @@ -230,32 +229,11 @@ impl Store { #[derive(Debug, Serialize)] pub struct CheckResult<'a> { file: PathBuf, - position: Option, + position: Option, import: String, error_location: ErrorLocation<'a>, } -#[derive(Debug)] -pub struct Point(tree_sitter::Point); - -impl Serialize for Point { - fn serialize(&self, serializer: S) -> Result - where - S: Serializer, - { - let mut state = serializer.serialize_struct("Color", 2)?; - state.serialize_field("row", &self.0.row)?; - state.serialize_field("column", &self.0.column)?; - state.end() - } -} - -impl Display for Point { - fn fmt(&self, f: &mut fmt::Formatter<'_>) -> fmt::Result { - write!(f, "{}:{}", self.0.row, self.0.column) - } -} - #[derive(Debug, PartialEq, Serialize)] #[serde(rename_all = "snake_case")] enum ErrorLocation<'a> { @@ -279,7 +257,7 @@ impl Display for CheckResult<'_> { }; let position_string = match &self.position { - Some(position) => format!(":{}", position), + Some(position) => format!(":{}:{}", position.row, position.column), None => String::new(), }; diff --git a/vendor/tree-sitter-elm/.editorconfig b/vendor/tree-sitter-elm/.editorconfig deleted file mode 100644 index d4dcbe9..0000000 --- a/vendor/tree-sitter-elm/.editorconfig +++ /dev/null @@ -1,17 +0,0 @@ -# https://editorconfig.org - -root = true - -[*] -charset = utf-8 -indent_style = space -end_of_line = lf -insert_final_newline = true -trim_trailing_whitespace = true - -[*.txt] -indent_size = 4 - -[*.md] -insert_final_newline = false -trim_trailing_whitespace = false \ No newline at end of file diff --git a/vendor/tree-sitter-elm/.gitattributes b/vendor/tree-sitter-elm/.gitattributes deleted file mode 100644 index 0080b47..0000000 --- a/vendor/tree-sitter-elm/.gitattributes +++ /dev/null @@ -1 +0,0 @@ -/src/** linguist-vendored \ No newline at end of file diff --git a/vendor/tree-sitter-elm/.github/FUNDING.yml b/vendor/tree-sitter-elm/.github/FUNDING.yml deleted file mode 100644 index 018964b..0000000 --- a/vendor/tree-sitter-elm/.github/FUNDING.yml +++ /dev/null @@ -1 +0,0 @@ -github: [razzeee] diff --git a/vendor/tree-sitter-elm/.github/workflows/test-full.yml b/vendor/tree-sitter-elm/.github/workflows/test-full.yml deleted file mode 100644 index 7384697..0000000 --- a/vendor/tree-sitter-elm/.github/workflows/test-full.yml +++ /dev/null @@ -1,30 +0,0 @@ -name: Test full Linux - -on: [push, pull_request] - -jobs: - build: - runs-on: ${{ matrix.os }} - - strategy: - fail-fast: false - matrix: - os: [ubuntu-latest] - node-version: [10] - - steps: - - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 - with: - node-version: ${{ matrix.node-version }} - - name: Npm install - run: | - npm i - - name: Unit tests - run: | - npx tree-sitter test - - name: Test examples - continue-on-error: true - run: | - script/parse-examples-full diff --git a/vendor/tree-sitter-elm/.github/workflows/test.yml b/vendor/tree-sitter-elm/.github/workflows/test.yml deleted file mode 100644 index 4683fd2..0000000 --- a/vendor/tree-sitter-elm/.github/workflows/test.yml +++ /dev/null @@ -1,29 +0,0 @@ -name: Test OSX and Linux - -on: [push, pull_request] - -jobs: - build: - runs-on: ${{ matrix.os }} - - strategy: - fail-fast: false - matrix: - os: [ubuntu-latest, macOS-latest] - node-version: [10, 12, 14] - - steps: - - uses: actions/checkout@v2 - - name: Use Node.js ${{ matrix.node-version }} - uses: actions/setup-node@v1 - with: - node-version: ${{ matrix.node-version }} - - name: Npm install - run: | - npm i - - name: Unit tests - run: | - npx tree-sitter test - - name: Test examples - run: | - script/parse-examples diff --git a/vendor/tree-sitter-elm/.gitignore b/vendor/tree-sitter-elm/.gitignore deleted file mode 100644 index 2bc7df3..0000000 --- a/vendor/tree-sitter-elm/.gitignore +++ /dev/null @@ -1,13 +0,0 @@ -package-lock.json -node_modules -build -*.log -prebuilds -.idea -.vscode/ipch - -# Examples generated during automated tests -examples/** -examples-full/** -!examples/Basic.elm -!examples/Test.elm diff --git a/vendor/tree-sitter-elm/.npmignore b/vendor/tree-sitter-elm/.npmignore deleted file mode 100644 index c7b4601..0000000 --- a/vendor/tree-sitter-elm/.npmignore +++ /dev/null @@ -1,8 +0,0 @@ -.vscode -test -elm-stuff -examples -examples-full -build -prebuilds -script diff --git a/vendor/tree-sitter-elm/.travis.yml b/vendor/tree-sitter-elm/.travis.yml deleted file mode 100644 index 56ca757..0000000 --- a/vendor/tree-sitter-elm/.travis.yml +++ /dev/null @@ -1,33 +0,0 @@ -language: node_js - -sudo: false - -node_js: - - "10" - -os: - - linux - -matrix: - include: - - os: osx - osx_image: xcode9.2 - - os: linux - env: CXX=clang++ - -branches: - only: - - master - - /^v.*$/ - -deploy: - provider: script - script: npm run prebuild && npm run prebuild:upload -u ${PREBUILD_UPLOAD} - skip_cleanup: true - on: - all_branches: true - tags: true - -env: - global: - secure: "NTNcwplBIpGejo1ciZlkVFLGJ14nbvRf42/evwUU61gvuMe0xrCSCgoEUTL9vNJUBotG2WqwZnlfScop1Ag5E/9H/jFvJ/1UoJ99Zs+b0A+vOPgMTXjYqW+GYfAC/3HvQPDq+32Xe0a0Tq+PxuKMu0jskO1vspQMRvcYaglIkCGIO6uzwiolViTehVhdhZw1gjv+L37cXsBmccXI9j9TsYe+XceUOqi3/efik6gPcH1KJZGa5jdobVmUBhV524drzO51+q5eigAcUUP0Z8IhXrjAvB50C1Y/Opao8AYhc2IHCx6CEu6T2IeAjXaFghFt4Z+g2fzJgkdyO4ap4lweuQ/e4MHm5jBBVkBAORqtsukz/vJhQOoe4Nu9kLPUl+biW2NS3Tj+Usqb9tuSmyiw5EFeCDhMcg3M9cTLIs4ZibgYnUN/7IjsLsnTYrQ1Wht2rabn+KOfjatkVEJMnYFrizsQo0AQ7edi6X9ncPUNAViQTvpyPxknMWGEdyva4YWUcuH7SxsDqQtEeTqNMXJ+FglRuZzzDIXRn6FaxUUTpBFtuj8jblL1C9f2UvlUrmyqDJ5bBoFmeRmffbr/u357TiQybQQyQ3GroSm/KGPQjSoQFMGCgKAQv64Y/pfgLgw5PbUf5agjNNbxcJoeCFT2ceGOP8ucwHzACCTng6ZtbDU=" diff --git a/vendor/tree-sitter-elm/.vscode/tasks.json b/vendor/tree-sitter-elm/.vscode/tasks.json deleted file mode 100644 index f9b2640..0000000 --- a/vendor/tree-sitter-elm/.vscode/tasks.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - // See https://go.microsoft.com/fwlink/?LinkId=733558 - // for the documentation about the tasks.json format - "version": "2.0.0", - "tasks": [ - { - "type": "npm", - "script": "parse", - "problemMatcher": [] - }, - { - "type": "npm", - "script": "build", - "problemMatcher": [] - }, - { - "type": "npm", - "script": "parse-1", - "problemMatcher": [] - }, - { - "type": "npm", - "script": "parse-asset", - "problemMatcher": [] - }, - { - "type": "npm", - "script": "parse-article", - "problemMatcher": [] - }, - { - "type": "npm", - "script": "parse-basic", - "problemMatcher": [] - }, - { - "type": "npm", - "script": "parse-test", - "problemMatcher": [] - } - ] -} \ No newline at end of file diff --git a/vendor/tree-sitter-elm/HOW_TO_RELEASE.MD b/vendor/tree-sitter-elm/HOW_TO_RELEASE.MD deleted file mode 100644 index ba4d3f7..0000000 --- a/vendor/tree-sitter-elm/HOW_TO_RELEASE.MD +++ /dev/null @@ -1,5 +0,0 @@ -1. Increase the version number in the package.json -2. Push the code to master -3. Run `npm publish` -4. Create a release on github with the name being the version number from before prefixed with `v` for e.g. `v1.1.0` -5. Enjoy, builds should appear on that release as soon as the CI is done running them. diff --git a/vendor/tree-sitter-elm/LICENSE.MD b/vendor/tree-sitter-elm/LICENSE.MD deleted file mode 100644 index fe2acf7..0000000 --- a/vendor/tree-sitter-elm/LICENSE.MD +++ /dev/null @@ -1,21 +0,0 @@ -The MIT License (MIT) - -Copyright (c) 2018 Kolja Lampe - -Permission is hereby granted, free of charge, to any person obtaining a copy -of this software and associated documentation files (the "Software"), to deal -in the Software without restriction, including without limitation the rights -to use, copy, modify, merge, publish, distribute, sublicense, and/or sell -copies of the Software, and to permit persons to whom the Software is -furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all -copies or substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR -IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, -FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE -AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER -LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, -OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE -SOFTWARE. diff --git a/vendor/tree-sitter-elm/README.MD b/vendor/tree-sitter-elm/README.MD deleted file mode 100644 index 6fd3938..0000000 --- a/vendor/tree-sitter-elm/README.MD +++ /dev/null @@ -1,32 +0,0 @@ -[![Build Status](https://travis-ci.org/Razzeee/tree-sitter-elm.svg?branch=master)](https://travis-ci.org/Razzeee/tree-sitter-elm) -[![Build status](https://ci.appveyor.com/api/projects/status/tif3gafcxp85swih/branch/master?svg=true)](https://ci.appveyor.com/project/Razzeee/tree-sitter-elm/branch/master) - -# Elm tree sitter - -## Why am I doing this? - -I believe that Elm would greatly benefit from better tooling, the ultimate goal is to write a language server integration. This is a possible building block for that. - -What it brings to the table: - -- Very fast parsing, should enable parsing on each keystroke -- Resilient, even if you use wrong syntax, most of the file should still be recognized alright -- Should also be useful to the elm atom maintainers, as atom is using tree sitter as the new default for code highlighting (our ast might be too expressive). Highlight implementation still needs to be done if wanted. - -## What is this tested with? - -This is tested against the tests included in the repo and: - -- [elm-spa-example](https://github.com/rtfeldman/elm-spa-example) -- All core elm packets from [here](https://github.com/elm) - -So it should work fine for a fair amount of code. What's not tested right now is behavior in error cases. - -## Thanks - -Very very big thanks goes out to @klazuka and the people of [intellij-elm](https://github.com/klazuka/intellij-elm/) as I basically stole [how they're creating their parser](https://github.com/klazuka/intellij-elm/blob/master/src/main/grammars/ElmParser.bnf) minus the GLSL implementation. - -## Want to help? - -Help writing some tests or simply find valid elm files, that fail parsing. -Test are located in the `test` folder and separated in parser tests and highlighting tests. diff --git a/vendor/tree-sitter-elm/appveyor.yml b/vendor/tree-sitter-elm/appveyor.yml deleted file mode 100644 index 8844498..0000000 --- a/vendor/tree-sitter-elm/appveyor.yml +++ /dev/null @@ -1,28 +0,0 @@ -image: Visual Studio 2017 - -environment: - NODEJS_VERSION: "10" - PREBUILD_UPLOAD: - secure: /JesINEpGYP12bsjCPZEozyGOBGXj48nVKYqcS7kHO+aiL8+R/ko8vmh3mo5aQvw - -platform: - - x64 - - x86 - -install: - - ps: Install-Product node $env:NODEJS_VERSION $env:Platform - - node --version - - npm --version - - npm install - -test_script: - - npm run test-windows - -build: off - -branches: - only: - - master - - /^v.*$/ - -deploy_script: IF "%APPVEYOR_REPO_TAG%" == "true" (npm run prebuild && npm run prebuild:upload -u %PREBUILD_UPLOAD%) diff --git a/vendor/tree-sitter-elm/binding.gyp b/vendor/tree-sitter-elm/binding.gyp deleted file mode 100644 index 5c67be3..0000000 --- a/vendor/tree-sitter-elm/binding.gyp +++ /dev/null @@ -1,19 +0,0 @@ -{ - "targets": [ - { - "target_name": "tree_sitter_elm_binding", - "include_dirs": [ - " - model + 1 - - Decrement -> - model - 1 - - -view model = - div [] - [ button [ onClick Decrement ] [ text "-" ] - , div [] [ text (String.fromInt model) ] - , button [ onClick Increment ] [ text "+" ] - ] diff --git a/vendor/tree-sitter-elm/examples/test.elm b/vendor/tree-sitter-elm/examples/test.elm deleted file mode 100644 index d266a10..0000000 --- a/vendor/tree-sitter-elm/examples/test.elm +++ /dev/null @@ -1,8 +0,0 @@ -enum key dict = - custom key <| \stringList -> - case stringList of - [str] -> - Dict.get str dict - - _ -> - Nothing diff --git a/vendor/tree-sitter-elm/grammar.js b/vendor/tree-sitter-elm/grammar.js deleted file mode 100644 index 7171675..0000000 --- a/vendor/tree-sitter-elm/grammar.js +++ /dev/null @@ -1,781 +0,0 @@ -/// -// @ts-check - -module.exports = grammar({ - name: "elm", - - conflicts: ($) => [ - [$._case_of_tail2], - [$.upper_case_qid, $.value_qid], - [$._more_case_of_branches], - [$.function_call_expr], - [$.field_access_expr], - ], - - externals: ($) => [ - $._virtual_end_decl, - $._virtual_open_section, - $._virtual_end_section, - $.minus_without_trailing_whitespace, - $.block_comment, - $.line_comment, - $.open_quote, - $.close_quote, - $.open_quote_multiline, - $.close_quote_multiline, - $.glsl_content, - ], - - extras: ($) => [ - $.block_comment, - $.line_comment, - /[\s\uFEFF\u2060\u200B]|\\\r?\n/, - ], - - word: ($) => $.lower_case_identifier, - - rules: { - file: ($) => - seq( - optional( - seq( - field("moduleDeclaration", $.module_declaration), - $._virtual_end_decl - ) - ), - optional($._import_list), - optional($._top_decl_list) - ), - - module_declaration: ($) => - prec.left( - choice( - seq( - optional($.port), - $.module, - field("name", $.upper_case_qid), - field("exposing", $.exposing_list) - ), - seq( - $.effect, - $.module, - field("name", $.upper_case_qid), - $.where, - $.record_expr, - $.exposing_list - ) - ) - ), - - _import_list: ($) => repeat1(seq($.import_clause, $._virtual_end_decl)), - _top_decl_list: ($) => repeat1(seq($._declaration, $._virtual_end_decl)), - - // MODULE DECLARATION - - exposing_list: ($) => - seq( - $.exposing, - $.left_parenthesis, - choice( - field("doubleDot", $.double_dot), - commaSep1($._exposed_item, $.comma) - ), - $.right_parenthesis - ), - - _exposed_item: ($) => - choice($.exposed_value, $.exposed_type, $.exposed_operator), - - exposed_value: ($) => $.lower_case_identifier, - - exposed_type: ($) => - seq($.upper_case_identifier, optional($.exposed_union_constructors)), - - exposed_union_constructors: ($) => - seq($.left_parenthesis, $.double_dot, $.right_parenthesis), - - exposed_union_constructor: ($) => $.upper_case_identifier, - - exposed_operator: ($) => $._operator_as_function_inner, - - // WHITESPACE-SENSITIVE RULES - - _upper_case_identifier_without_leading_whitespace: ($) => - token.immediate(/[A-Z][a-zA-Z0-9_]*/), - - _lower_case_identifier_without_leading_whitespace: ($) => - token.immediate(/[a-z][a-zA-Z0-9_]*/), - - _dot_without_leading_whitespace: ($) => token.immediate("."), - - upper_case_qid: ($) => - prec.right( - seq( - $.upper_case_identifier, - repeat( - seq( - alias($._dot_without_leading_whitespace, $.dot), - alias( - $._upper_case_identifier_without_leading_whitespace, - $.upper_case_identifier - ) - ) - ) - ) - ), - - value_qid: ($) => - choice( - $.lower_case_identifier, - seq( - $.upper_case_identifier, - alias($._dot_without_leading_whitespace, $.dot), - repeat( - seq( - alias( - $._upper_case_identifier_without_leading_whitespace, - $.upper_case_identifier - ), - alias($._dot_without_leading_whitespace, $.dot) - ) - ), - alias( - $._lower_case_identifier_without_leading_whitespace, - $.lower_case_identifier - ) - ) - ), - - field_accessor_function_expr: ($) => - seq( - $.dot, - alias( - $._lower_case_identifier_without_leading_whitespace, - $.lower_case_identifier - ) - ), - - // IMPORT DECLARATION - import_clause: ($) => - seq( - $.import, - field("moduleName", $.upper_case_qid), - field("asClause", optional($.as_clause)), - optional($.exposing_list) - ), - - as_clause: ($) => seq($.as, field("name", $.upper_case_identifier)), - - // TOP-LEVEL DECLARATION - - _declaration: ($) => - choice( - $.value_declaration, - $.type_alias_declaration, - $.type_declaration, - $.type_annotation, - $.port_annotation, - $.infix_declaration - ), - - value_declaration: ($) => - seq( - $._internal_value_declaration_left, - $.eq, - field("body", $._expression) - ), - - _internal_value_declaration_left: ($) => - choice( - field("functionDeclarationLeft", $.function_declaration_left), - field("pattern", $.pattern) - ), - - function_declaration_left: ($) => - prec( - 3, - seq( - $.lower_case_identifier, - field("pattern", repeat($._function_declaration_pattern)) - ) - ), - - _function_declaration_pattern: ($) => - choice( - $.anything_pattern, - $.lower_pattern, - $.tuple_pattern, - $.unit_expr, - $.list_pattern, - $.record_pattern, - $._literal_expr_group, - $._parenthesized_pattern - ), - - // TYPE DECLARATIONS AND REFERENCES - - type_declaration: ($) => - prec.left( - seq( - $.type, - field("name", $.upper_case_identifier), - field("typeName", repeat($.lower_type_name)), - $.eq, - field("unionVariant", $.union_variant), - repeat($._more_union_variants) - ) - ), - - lower_type_name: ($) => $.lower_case_identifier, - - union_variant: ($) => - prec.left( - seq( - field("name", $.upper_case_identifier), - repeat($._single_type_expression) - ) - ), - - _more_union_variants: ($) => - seq($.pipe, field("unionVariant", $.union_variant)), - - type_alias_declaration: ($) => - seq( - $.type, - $.alias, - field("name", $.upper_case_identifier), - field("typeVariable", repeat($.lower_type_name)), - $.eq, - field("typeExpression", $.type_expression) - ), - - type_expression: ($) => arrowSep1($._type_expression_inner, $.arrow), - - _type_expression_inner: ($) => - choice($.type_ref, $._single_type_expression), - - type_ref: ($) => - prec(2, seq($.upper_case_qid, repeat1($._single_type_expression))), - - _single_type_expression: ($) => - choice( - field("part", alias($.type_ref_without_args, $.type_ref)), - field("part", $.type_variable), - field("part", $.record_type), - field("part", $.tuple_type), - seq( - $.left_parenthesis, - field("part", $.type_expression), - $.right_parenthesis - ) - ), - - type_ref_without_args: ($) => $.upper_case_qid, - - type_variable: ($) => $.lower_case_identifier, - - record_type: ($) => - seq( - $.left_brace, - optional( - seq( - optional($._record_base), - commaSep1(field("fieldType", $.field_type), $.comma) - ) - ), - $.right_brace - ), - - field_type: ($) => - seq( - field("name", $.lower_case_identifier), - $.colon, - field("typeExpression", $.type_expression) - ), - - tuple_type: ($) => - choice( - field("unitExpr", $.unit_expr), - seq( - $.left_parenthesis, - field("typeExpression", $.type_expression), - repeat1(seq($.comma, field("typeExpression", $.type_expression))), - $.right_parenthesis - ) - ), - - type_annotation: ($) => - seq( - field("name", $.lower_case_identifier), - $.colon, - field("typeExpression", $.type_expression) - ), - - port_annotation: ($) => - seq( - $.port, - field("name", $.lower_case_identifier), - $.colon, - field("typeExpression", $.type_expression) - ), - - // EXPRESSIONS - - _expression: ($) => choice($.bin_op_expr, $._call_or_atom), - - bin_op_expr: ($) => - field( - "part", - prec( - 5, - seq( - $._call_or_atom, - prec.right(repeat1(seq($.operator, $._call_or_atom))) - ) - ) - ), - - operator: ($) => $.operator_identifier, - - operator_as_function_expr: ($) => $._operator_as_function_inner, - - _operator_as_function_inner: ($) => - seq( - $.left_parenthesis, - field("operator", $.operator_identifier), - $.right_parenthesis - ), - - _call_or_atom: ($) => choice($.function_call_expr, $._atom), - - function_call_expr: ($) => - prec.dynamic( - 10, - seq( - field("target", $._function_call_target), - field("arg", repeat1($._atom)) - ) - ), - - _function_call_target: ($) => - prec( - 2, - choice( - $.field_access_expr, - $.value_expr, - $.field_accessor_function_expr, - $.operator_as_function_expr, - $.parenthesized_expr - ) - ), - - _atom: ($) => - choice( - $._literal_expr_group, - $.negate_expr, - $.field_access_expr, - $.value_expr, - $.field_accessor_function_expr, - $.operator_as_function_expr, - $.parenthesized_expr, - $.unit_expr, - $.tuple_expr, - $.list_expr, - $.record_expr, - $.if_else_expr, - $.case_of_expr, - $.let_in_expr, - $.anonymous_function_expr, - $.glsl_code_expr - ), - - field_access_expr: ($) => - prec.left( - seq( - field("target", $._field_access_start), - repeat1($._field_access_segment) - ) - ), - - _field_access_start: ($) => - prec( - 3, - choice( - $.field_access_expr, - choice($.value_expr, $.parenthesized_expr, $.record_expr) - ) - ), - - _field_access_segment: ($) => - prec.left( - seq( - alias($._dot_without_leading_whitespace, $.dot), - alias( - $._lower_case_identifier_without_leading_whitespace, - $.lower_case_identifier - ) - ) - ), - - negate_expr: ($) => - seq( - alias($.minus_without_trailing_whitespace, $.operator_identifier), - $._atom - ), // todo disallow whitespace - - parenthesized_expr: ($) => - seq($.left_parenthesis, field("expression", $._expression), $.right_parenthesis), - - _literal_expr_group: ($) => - choice( - $.char_constant_expr, - $.number_constant_expr, - $.string_constant_expr - ), - - char_constant_expr: ($) => - seq( - $.open_char, - choice( - alias($.regular_char, $.regular_string_part), - $.string_escape, - $.invalid_string_escape - ), - $.close_char - ), - - open_char: ($) => $._char_quote, - - close_char: ($) => $._char_quote, - - number_constant_expr: ($) => $.number_literal, - - string_constant_expr: ($) => - choice( - seq($.open_quote, optional($._string_parts), $.close_quote), - seq( - alias($.open_quote_multiline, $.open_quote), - optional($._string_parts_multiline), - alias($.close_quote_multiline, $.close_quote) - ) - ), - - _string_part: ($) => - choice($.regular_string_part, $.string_escape, $.invalid_string_escape), - - _string_part_multiline: ($) => - choice( - alias($.regular_string_part_multiline, $.regular_string_part), - $.string_escape, - $.invalid_string_escape - ), - - _string_parts: ($) => repeat1($._string_part), - _string_parts_multiline: ($) => repeat1($._string_part_multiline), - - anonymous_function_expr: ($) => - seq( - $.backslash, - field("param", repeat1($.pattern)), - $.arrow, - field("expr", $._expression) - ), - - value_expr: ($) => field("name", choice($.value_qid, $.upper_case_qid)), - - tuple_expr: ($) => - seq( - $.left_parenthesis, - field("expr", $._expression), - repeat1(seq($.comma, field("expr", $._expression))), - $.right_parenthesis - ), - - unit_expr: ($) => seq($.left_parenthesis, $.right_parenthesis), - - list_expr: ($) => - seq( - $.left_square_bracket, - optional(commaSep1(field("exprList", $._expression), $.comma)), - $.right_square_bracket - ), - - record_expr: ($) => - seq($.left_brace, optional($._record_inner), $.right_brace), - - record_base_identifier: ($) => $.lower_case_identifier, - - _record_base: ($) => - seq(field("baseRecord", $.record_base_identifier), $.pipe), - - _record_inner: ($) => seq(optional($._record_base), $._record_inner_fields), - - _record_inner_fields: ($) => commaSep1(field("field", $.field), $.comma), - - field: ($) => - seq( - field("name", $.lower_case_identifier), - $.eq, - field("expression", $._expression) - ), - - if_else_expr: ($) => - seq( - $._if, - $._then, - repeat(prec.left(seq("else", $._if, $._then))), - $._else - ), - - case_of_expr: ($) => - seq($.case, field("expr", $._expression), $._case_of_tail), - - _case_of_tail: ($) => seq($.of, $._case_of_tail2), - - _case_of_tail2: ($) => - seq( - $._virtual_open_section, - field("branch", $.case_of_branch), - optional($._more_case_of_branches), - optional($._virtual_end_section) - ), - - _more_case_of_branches: ($) => - prec.dynamic( - 6, - repeat1(seq($._virtual_end_decl, field("branch", $.case_of_branch))) - ), - - case_of_branch: ($) => - seq(field("pattern", $.pattern), $.arrow, field("expr", $._expression)), - - let_in_expr: ($) => seq($._let, $._in), - - _inner_declaration: ($) => - choice(field("valueDeclaration", $.value_declaration), $.type_annotation), - - _more_inner_declarations: ($) => - repeat1(seq($._virtual_end_decl, $._inner_declaration)), - - // PATTERNS - - pattern: ($) => - seq( - choice(field("child", $.cons_pattern), $._single_pattern), - optional($._pattern_as) - ), - - _pattern_as: ($) => seq($.as, field("patternAs", $.lower_pattern)), - - cons_pattern: ($) => - seq( - field("part", $._single_pattern_cons), - repeat1(seq("::", field("part", $._single_pattern_cons))) - ), - - _single_pattern_cons: ($) => - choice( - $._parenthesized_pattern, - $.anything_pattern, - $.lower_pattern, - $.union_pattern, - $.tuple_pattern, - $.unit_expr, - $.list_pattern, - $.record_pattern, - $._literal_expr_group - ), - - _single_pattern: ($) => - choice( - $._parenthesized_single_pattern, - field("child", $.anything_pattern), - field("child", $.lower_pattern), - field("child", $.union_pattern), - field("child", $.tuple_pattern), - field("child", $.unit_expr), - field("child", $.list_pattern), - field("child", $.record_pattern), - field("child", $._literal_expr_group) - ), - - _parenthesized_single_pattern: ($) => - seq($.left_parenthesis, field("child", $.pattern), $.right_parenthesis), - - lower_pattern: ($) => $.lower_case_identifier, - - anything_pattern: ($) => $.underscore, - - record_pattern: ($) => - seq( - $.left_brace, - commaSep1(field("patternList", $.lower_pattern), $.comma), - $.right_brace - ), - - list_pattern: ($) => - seq( - $.left_square_bracket, - optional(commaSep1(field("part", $.pattern), $.comma)), - $.right_square_bracket - ), - - union_pattern: ($) => - prec.left( - seq( - field("constructor", $.upper_case_qid), - field("argPattern", repeat($._union_argument_pattern)) - ) - ), - - nullary_constructor_argument_pattern: ($) => $.upper_case_qid, - - _union_argument_pattern: ($) => - choice( - $.anything_pattern, - $.lower_pattern, - $.tuple_pattern, - $.nullary_constructor_argument_pattern, - $.unit_expr, - $.list_pattern, - $.record_pattern, - $._literal_expr_group, - $._parenthesized_pattern - ), - - tuple_pattern: ($) => - seq( - $.left_parenthesis, - field("pattern", $.pattern), - $.comma, - commaSep1(field("pattern", $.pattern), $.comma), - $.right_parenthesis - ), - - _parenthesized_pattern: ($) => - seq($.left_parenthesis, $.pattern, $.right_parenthesis), - - // MISC - infix_declaration: ($) => - seq( - $.infix, - field( - "associativity", - alias(choice("left", "right", "non"), $.lower_case_identifier) - ), - field("precedence", $.number_literal), - $._operator_as_function_inner, - $.eq, - $.value_expr - ), - - glsl_code_expr: ($) => - seq($.glsl_begin, field("content", $.glsl_content), $.glsl_end), - - // Stuff from lexer - - // Should be /\p{Lu}[_\d\p{L}]*/, - upper_case_identifier: ($) => - /[A-Z\u00C0-\u00D6\u00D8-\u00DE\u0100\u0102\u0104\u0106\u0108\u010A\u010C\u010E\u0110\u0112\u0114\u0116\u0118\u011A\u011C\u011E\u0120\u0122\u0124\u0126\u0128\u012A\u012C\u012E\u0130\u0132\u0134\u0136\u0139\u013B\u013D\u013F\u0141\u0143\u0145\u0147\u014A\u014C\u014E\u0150\u0152\u0154\u0156\u0158\u015A\u015C\u015E\u0160\u0162\u0164\u0166\u0168\u016A\u016C\u016E\u0170\u0172\u0174\u0176\u0178\u0179\u017B\u017D\u0181\u0182\u0184\u0186\u0187\u0189-\u018B\u018E-\u0191\u0193\u0194\u0196-\u0198\u019C\u019D\u019F\u01A0\u01A2\u01A4\u01A6\u01A7\u01A9\u01AC\u01AE\u01AF\u01B1-\u01B3\u01B5\u01B7\u01B8\u01BC\u01C4\u01C7\u01CA\u01CD\u01CF\u01D1\u01D3\u01D5\u01D7\u01D9\u01DB\u01DE\u01E0\u01E2\u01E4\u01E6\u01E8\u01EA\u01EC\u01EE\u01F1\u01F4\u01F6-\u01F8\u01FA\u01FC\u01FE\u0200\u0202\u0204\u0206\u0208\u020A\u020C\u020E\u0210\u0212\u0214\u0216\u0218\u021A\u021C\u021E\u0220\u0222\u0224\u0226\u0228\u022A\u022C\u022E\u0230\u0232\u023A\u023B\u023D\u023E\u0241\u0243-\u0246\u0248\u024A\u024C\u024E\u0370\u0372\u0376\u037F\u0386\u0388-\u038A\u038C\u038E\u038F\u0391-\u03A1\u03A3-\u03AB\u03CF\u03D2-\u03D4\u03D8\u03DA\u03DC\u03DE\u03E0\u03E2\u03E4\u03E6\u03E8\u03EA\u03EC\u03EE\u03F4\u03F7\u03F9\u03FA\u03FD-\u042F\u0460\u0462\u0464\u0466\u0468\u046A\u046C\u046E\u0470\u0472\u0474\u0476\u0478\u047A\u047C\u047E\u0480\u048A\u048C\u048E\u0490\u0492\u0494\u0496\u0498\u049A\u049C\u049E\u04A0\u04A2\u04A4\u04A6\u04A8\u04AA\u04AC\u04AE\u04B0\u04B2\u04B4\u04B6\u04B8\u04BA\u04BC\u04BE\u04C0\u04C1\u04C3\u04C5\u04C7\u04C9\u04CB\u04CD\u04D0\u04D2\u04D4\u04D6\u04D8\u04DA\u04DC\u04DE\u04E0\u04E2\u04E4\u04E6\u04E8\u04EA\u04EC\u04EE\u04F0\u04F2\u04F4\u04F6\u04F8\u04FA\u04FC\u04FE\u0500\u0502\u0504\u0506\u0508\u050A\u050C\u050E\u0510\u0512\u0514\u0516\u0518\u051A\u051C\u051E\u0520\u0522\u0524\u0526\u0528\u052A\u052C\u052E\u0531-\u0556\u10A0-\u10C5\u10C7\u10CD\u13A0-\u13F5\u1C90-\u1CBA\u1CBD-\u1CBF\u1E00\u1E02\u1E04\u1E06\u1E08\u1E0A\u1E0C\u1E0E\u1E10\u1E12\u1E14\u1E16\u1E18\u1E1A\u1E1C\u1E1E\u1E20\u1E22\u1E24\u1E26\u1E28\u1E2A\u1E2C\u1E2E\u1E30\u1E32\u1E34\u1E36\u1E38\u1E3A\u1E3C\u1E3E\u1E40\u1E42\u1E44\u1E46\u1E48\u1E4A\u1E4C\u1E4E\u1E50\u1E52\u1E54\u1E56\u1E58\u1E5A\u1E5C\u1E5E\u1E60\u1E62\u1E64\u1E66\u1E68\u1E6A\u1E6C\u1E6E\u1E70\u1E72\u1E74\u1E76\u1E78\u1E7A\u1E7C\u1E7E\u1E80\u1E82\u1E84\u1E86\u1E88\u1E8A\u1E8C\u1E8E\u1E90\u1E92\u1E94\u1E9E\u1EA0\u1EA2\u1EA4\u1EA6\u1EA8\u1EAA\u1EAC\u1EAE\u1EB0\u1EB2\u1EB4\u1EB6\u1EB8\u1EBA\u1EBC\u1EBE\u1EC0\u1EC2\u1EC4\u1EC6\u1EC8\u1ECA\u1ECC\u1ECE\u1ED0\u1ED2\u1ED4\u1ED6\u1ED8\u1EDA\u1EDC\u1EDE\u1EE0\u1EE2\u1EE4\u1EE6\u1EE8\u1EEA\u1EEC\u1EEE\u1EF0\u1EF2\u1EF4\u1EF6\u1EF8\u1EFA\u1EFC\u1EFE\u1F08-\u1F0F\u1F18-\u1F1D\u1F28-\u1F2F\u1F38-\u1F3F\u1F48-\u1F4D\u1F59\u1F5B\u1F5D\u1F5F\u1F68-\u1F6F\u1FB8-\u1FBB\u1FC8-\u1FCB\u1FD8-\u1FDB\u1FE8-\u1FEC\u1FF8-\u1FFB\u2102\u2107\u210B-\u210D\u2110-\u2112\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u2130-\u2133\u213E\u213F\u2145\u2183\u2C00-\u2C2E\u2C60\u2C62-\u2C64\u2C67\u2C69\u2C6B\u2C6D-\u2C70\u2C72\u2C75\u2C7E-\u2C80\u2C82\u2C84\u2C86\u2C88\u2C8A\u2C8C\u2C8E\u2C90\u2C92\u2C94\u2C96\u2C98\u2C9A\u2C9C\u2C9E\u2CA0\u2CA2\u2CA4\u2CA6\u2CA8\u2CAA\u2CAC\u2CAE\u2CB0\u2CB2\u2CB4\u2CB6\u2CB8\u2CBA\u2CBC\u2CBE\u2CC0\u2CC2\u2CC4\u2CC6\u2CC8\u2CCA\u2CCC\u2CCE\u2CD0\u2CD2\u2CD4\u2CD6\u2CD8\u2CDA\u2CDC\u2CDE\u2CE0\u2CE2\u2CEB\u2CED\u2CF2\uA640\uA642\uA644\uA646\uA648\uA64A\uA64C\uA64E\uA650\uA652\uA654\uA656\uA658\uA65A\uA65C\uA65E\uA660\uA662\uA664\uA666\uA668\uA66A\uA66C\uA680\uA682\uA684\uA686\uA688\uA68A\uA68C\uA68E\uA690\uA692\uA694\uA696\uA698\uA69A\uA722\uA724\uA726\uA728\uA72A\uA72C\uA72E\uA732\uA734\uA736\uA738\uA73A\uA73C\uA73E\uA740\uA742\uA744\uA746\uA748\uA74A\uA74C\uA74E\uA750\uA752\uA754\uA756\uA758\uA75A\uA75C\uA75E\uA760\uA762\uA764\uA766\uA768\uA76A\uA76C\uA76E\uA779\uA77B\uA77D\uA77E\uA780\uA782\uA784\uA786\uA78B\uA78D\uA790\uA792\uA796\uA798\uA79A\uA79C\uA79E\uA7A0\uA7A2\uA7A4\uA7A6\uA7A8\uA7AA-\uA7AE\uA7B0-\uA7B4\uA7B6\uA7B8\uA7BA\uA7BC\uA7BE\uA7C2\uA7C4-\uA7C6\uFF21-\uFF3A\U00010400-\U00010427\U000104B0-\U000104D3\U00010C80-\U00010CB2\U000118A0-\U000118BF\U00016E40-\U00016E5F\U0001D400-\U0001D419\U0001D434-\U0001D44D\U0001D468-\U0001D481\U0001D49C\U0001D49E\U0001D49F\U0001D4A2\U0001D4A5\U0001D4A6\U0001D4A9-\U0001D4AC\U0001D4AE-\U0001D4B5\U0001D4D0-\U0001D4E9\U0001D504\U0001D505\U0001D507-\U0001D50A\U0001D50D-\U0001D514\U0001D516-\U0001D51C\U0001D538\U0001D539\U0001D53B-\U0001D53E\U0001D540-\U0001D544\U0001D546\U0001D54A-\U0001D550\U0001D56C-\U0001D585\U0001D5A0-\U0001D5B9\U0001D5D4-\U0001D5ED\U0001D608-\U0001D621\U0001D63C-\U0001D655\U0001D670-\U0001D689\U0001D6A8-\U0001D6C0\U0001D6E2-\U0001D6FA\U0001D71C-\U0001D734\U0001D756-\U0001D76E\U0001D790-\U0001D7A8\U0001D7CA\U0001E900-\U0001E921][0-9A-Z_a-z\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEF\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7C6\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB67\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC\U00010000-\U0001000B\U0001000D-\U00010026\U00010028-\U0001003A\U0001003C\U0001003D\U0001003F-\U0001004D\U00010050-\U0001005D\U00010080-\U000100FA\U00010280-\U0001029C\U000102A0-\U000102D0\U00010300-\U0001031F\U0001032D-\U00010340\U00010342-\U00010349\U00010350-\U00010375\U00010380-\U0001039D\U000103A0-\U000103C3\U000103C8-\U000103CF\U00010400-\U0001049D\U000104B0-\U000104D3\U000104D8-\U000104FB\U00010500-\U00010527\U00010530-\U00010563\U00010600-\U00010736\U00010740-\U00010755\U00010760-\U00010767\U00010800-\U00010805\U00010808\U0001080A-\U00010835\U00010837\U00010838\U0001083C\U0001083F-\U00010855\U00010860-\U00010876\U00010880-\U0001089E\U000108E0-\U000108F2\U000108F4\U000108F5\U00010900-\U00010915\U00010920-\U00010939\U00010980-\U000109B7\U000109BE\U000109BF\U00010A00\U00010A10-\U00010A13\U00010A15-\U00010A17\U00010A19-\U00010A35\U00010A60-\U00010A7C\U00010A80-\U00010A9C\U00010AC0-\U00010AC7\U00010AC9-\U00010AE4\U00010B00-\U00010B35\U00010B40-\U00010B55\U00010B60-\U00010B72\U00010B80-\U00010B91\U00010C00-\U00010C48\U00010C80-\U00010CB2\U00010CC0-\U00010CF2\U00010D00-\U00010D23\U00010F00-\U00010F1C\U00010F27\U00010F30-\U00010F45\U00010FE0-\U00010FF6\U00011003-\U00011037\U00011083-\U000110AF\U000110D0-\U000110E8\U00011103-\U00011126\U00011144\U00011150-\U00011172\U00011176\U00011183-\U000111B2\U000111C1-\U000111C4\U000111DA\U000111DC\U00011200-\U00011211\U00011213-\U0001122B\U00011280-\U00011286\U00011288\U0001128A-\U0001128D\U0001128F-\U0001129D\U0001129F-\U000112A8\U000112B0-\U000112DE\U00011305-\U0001130C\U0001130F\U00011310\U00011313-\U00011328\U0001132A-\U00011330\U00011332\U00011333\U00011335-\U00011339\U0001133D\U00011350\U0001135D-\U00011361\U00011400-\U00011434\U00011447-\U0001144A\U0001145F\U00011480-\U000114AF\U000114C4\U000114C5\U000114C7\U00011580-\U000115AE\U000115D8-\U000115DB\U00011600-\U0001162F\U00011644\U00011680-\U000116AA\U000116B8\U00011700-\U0001171A\U00011800-\U0001182B\U000118A0-\U000118DF\U000118FF\U000119A0-\U000119A7\U000119AA-\U000119D0\U000119E1\U000119E3\U00011A00\U00011A0B-\U00011A32\U00011A3A\U00011A50\U00011A5C-\U00011A89\U00011A9D\U00011AC0-\U00011AF8\U00011C00-\U00011C08\U00011C0A-\U00011C2E\U00011C40\U00011C72-\U00011C8F\U00011D00-\U00011D06\U00011D08\U00011D09\U00011D0B-\U00011D30\U00011D46\U00011D60-\U00011D65\U00011D67\U00011D68\U00011D6A-\U00011D89\U00011D98\U00011EE0-\U00011EF2\U00012000-\U00012399\U00012480-\U00012543\U00013000-\U0001342E\U00014400-\U00014646\U00016800-\U00016A38\U00016A40-\U00016A5E\U00016AD0-\U00016AED\U00016B00-\U00016B2F\U00016B40-\U00016B43\U00016B63-\U00016B77\U00016B7D-\U00016B8F\U00016E40-\U00016E7F\U00016F00-\U00016F4A\U00016F50\U00016F93-\U00016F9F\U00016FE0\U00016FE1\U00016FE3\U00017000-\U000187F7\U00018800-\U00018AF2\U0001B000-\U0001B11E\U0001B150-\U0001B152\U0001B164-\U0001B167\U0001B170-\U0001B2FB\U0001BC00-\U0001BC6A\U0001BC70-\U0001BC7C\U0001BC80-\U0001BC88\U0001BC90-\U0001BC99\U0001D400-\U0001D454\U0001D456-\U0001D49C\U0001D49E\U0001D49F\U0001D4A2\U0001D4A5\U0001D4A6\U0001D4A9-\U0001D4AC\U0001D4AE-\U0001D4B9\U0001D4BB\U0001D4BD-\U0001D4C3\U0001D4C5-\U0001D505\U0001D507-\U0001D50A\U0001D50D-\U0001D514\U0001D516-\U0001D51C\U0001D51E-\U0001D539\U0001D53B-\U0001D53E\U0001D540-\U0001D544\U0001D546\U0001D54A-\U0001D550\U0001D552-\U0001D6A5\U0001D6A8-\U0001D6C0\U0001D6C2-\U0001D6DA\U0001D6DC-\U0001D6FA\U0001D6FC-\U0001D714\U0001D716-\U0001D734\U0001D736-\U0001D74E\U0001D750-\U0001D76E\U0001D770-\U0001D788\U0001D78A-\U0001D7A8\U0001D7AA-\U0001D7C2\U0001D7C4-\U0001D7CB\U0001E100-\U0001E12C\U0001E137-\U0001E13D\U0001E14E\U0001E2C0-\U0001E2EB\U0001E800-\U0001E8C4\U0001E900-\U0001E943\U0001E94B\U0001EE00-\U0001EE03\U0001EE05-\U0001EE1F\U0001EE21\U0001EE22\U0001EE24\U0001EE27\U0001EE29-\U0001EE32\U0001EE34-\U0001EE37\U0001EE39\U0001EE3B\U0001EE42\U0001EE47\U0001EE49\U0001EE4B\U0001EE4D-\U0001EE4F\U0001EE51\U0001EE52\U0001EE54\U0001EE57\U0001EE59\U0001EE5B\U0001EE5D\U0001EE5F\U0001EE61\U0001EE62\U0001EE64\U0001EE67-\U0001EE6A\U0001EE6C-\U0001EE72\U0001EE74-\U0001EE77\U0001EE79-\U0001EE7C\U0001EE7E\U0001EE80-\U0001EE89\U0001EE8B-\U0001EE9B\U0001EEA1-\U0001EEA3\U0001EEA5-\U0001EEA9\U0001EEAB-\U0001EEBB\U00020000-\U0002A6D6\U0002A700-\U0002B734\U0002B740-\U0002B81D\U0002B820-\U0002CEA1\U0002CEB0-\U0002EBE0\U0002F800-\U0002FA1D]*/, - - // Should be /\p{Ll}[_\d\p{L}]*/, - lower_case_identifier: ($) => - /[a-z\u00B5\u00DF-\u00F6\u00F8-\u00FF\u0101\u0103\u0105\u0107\u0109\u010B\u010D\u010F\u0111\u0113\u0115\u0117\u0119\u011B\u011D\u011F\u0121\u0123\u0125\u0127\u0129\u012B\u012D\u012F\u0131\u0133\u0135\u0137\u0138\u013A\u013C\u013E\u0140\u0142\u0144\u0146\u0148\u0149\u014B\u014D\u014F\u0151\u0153\u0155\u0157\u0159\u015B\u015D\u015F\u0161\u0163\u0165\u0167\u0169\u016B\u016D\u016F\u0171\u0173\u0175\u0177\u017A\u017C\u017E-\u0180\u0183\u0185\u0188\u018C\u018D\u0192\u0195\u0199-\u019B\u019E\u01A1\u01A3\u01A5\u01A8\u01AA\u01AB\u01AD\u01B0\u01B4\u01B6\u01B9\u01BA\u01BD-\u01BF\u01C6\u01C9\u01CC\u01CE\u01D0\u01D2\u01D4\u01D6\u01D8\u01DA\u01DC\u01DD\u01DF\u01E1\u01E3\u01E5\u01E7\u01E9\u01EB\u01ED\u01EF\u01F0\u01F3\u01F5\u01F9\u01FB\u01FD\u01FF\u0201\u0203\u0205\u0207\u0209\u020B\u020D\u020F\u0211\u0213\u0215\u0217\u0219\u021B\u021D\u021F\u0221\u0223\u0225\u0227\u0229\u022B\u022D\u022F\u0231\u0233-\u0239\u023C\u023F\u0240\u0242\u0247\u0249\u024B\u024D\u024F-\u0293\u0295-\u02AF\u0371\u0373\u0377\u037B-\u037D\u0390\u03AC-\u03CE\u03D0\u03D1\u03D5-\u03D7\u03D9\u03DB\u03DD\u03DF\u03E1\u03E3\u03E5\u03E7\u03E9\u03EB\u03ED\u03EF-\u03F3\u03F5\u03F8\u03FB\u03FC\u0430-\u045F\u0461\u0463\u0465\u0467\u0469\u046B\u046D\u046F\u0471\u0473\u0475\u0477\u0479\u047B\u047D\u047F\u0481\u048B\u048D\u048F\u0491\u0493\u0495\u0497\u0499\u049B\u049D\u049F\u04A1\u04A3\u04A5\u04A7\u04A9\u04AB\u04AD\u04AF\u04B1\u04B3\u04B5\u04B7\u04B9\u04BB\u04BD\u04BF\u04C2\u04C4\u04C6\u04C8\u04CA\u04CC\u04CE\u04CF\u04D1\u04D3\u04D5\u04D7\u04D9\u04DB\u04DD\u04DF\u04E1\u04E3\u04E5\u04E7\u04E9\u04EB\u04ED\u04EF\u04F1\u04F3\u04F5\u04F7\u04F9\u04FB\u04FD\u04FF\u0501\u0503\u0505\u0507\u0509\u050B\u050D\u050F\u0511\u0513\u0515\u0517\u0519\u051B\u051D\u051F\u0521\u0523\u0525\u0527\u0529\u052B\u052D\u052F\u0560-\u0588\u10D0-\u10FA\u10FD-\u10FF\u13F8-\u13FD\u1C80-\u1C88\u1D00-\u1D2B\u1D6B-\u1D77\u1D79-\u1D9A\u1E01\u1E03\u1E05\u1E07\u1E09\u1E0B\u1E0D\u1E0F\u1E11\u1E13\u1E15\u1E17\u1E19\u1E1B\u1E1D\u1E1F\u1E21\u1E23\u1E25\u1E27\u1E29\u1E2B\u1E2D\u1E2F\u1E31\u1E33\u1E35\u1E37\u1E39\u1E3B\u1E3D\u1E3F\u1E41\u1E43\u1E45\u1E47\u1E49\u1E4B\u1E4D\u1E4F\u1E51\u1E53\u1E55\u1E57\u1E59\u1E5B\u1E5D\u1E5F\u1E61\u1E63\u1E65\u1E67\u1E69\u1E6B\u1E6D\u1E6F\u1E71\u1E73\u1E75\u1E77\u1E79\u1E7B\u1E7D\u1E7F\u1E81\u1E83\u1E85\u1E87\u1E89\u1E8B\u1E8D\u1E8F\u1E91\u1E93\u1E95-\u1E9D\u1E9F\u1EA1\u1EA3\u1EA5\u1EA7\u1EA9\u1EAB\u1EAD\u1EAF\u1EB1\u1EB3\u1EB5\u1EB7\u1EB9\u1EBB\u1EBD\u1EBF\u1EC1\u1EC3\u1EC5\u1EC7\u1EC9\u1ECB\u1ECD\u1ECF\u1ED1\u1ED3\u1ED5\u1ED7\u1ED9\u1EDB\u1EDD\u1EDF\u1EE1\u1EE3\u1EE5\u1EE7\u1EE9\u1EEB\u1EED\u1EEF\u1EF1\u1EF3\u1EF5\u1EF7\u1EF9\u1EFB\u1EFD\u1EFF-\u1F07\u1F10-\u1F15\u1F20-\u1F27\u1F30-\u1F37\u1F40-\u1F45\u1F50-\u1F57\u1F60-\u1F67\u1F70-\u1F7D\u1F80-\u1F87\u1F90-\u1F97\u1FA0-\u1FA7\u1FB0-\u1FB4\u1FB6\u1FB7\u1FBE\u1FC2-\u1FC4\u1FC6\u1FC7\u1FD0-\u1FD3\u1FD6\u1FD7\u1FE0-\u1FE7\u1FF2-\u1FF4\u1FF6\u1FF7\u210A\u210E\u210F\u2113\u212F\u2134\u2139\u213C\u213D\u2146-\u2149\u214E\u2184\u2C30-\u2C5E\u2C61\u2C65\u2C66\u2C68\u2C6A\u2C6C\u2C71\u2C73\u2C74\u2C76-\u2C7B\u2C81\u2C83\u2C85\u2C87\u2C89\u2C8B\u2C8D\u2C8F\u2C91\u2C93\u2C95\u2C97\u2C99\u2C9B\u2C9D\u2C9F\u2CA1\u2CA3\u2CA5\u2CA7\u2CA9\u2CAB\u2CAD\u2CAF\u2CB1\u2CB3\u2CB5\u2CB7\u2CB9\u2CBB\u2CBD\u2CBF\u2CC1\u2CC3\u2CC5\u2CC7\u2CC9\u2CCB\u2CCD\u2CCF\u2CD1\u2CD3\u2CD5\u2CD7\u2CD9\u2CDB\u2CDD\u2CDF\u2CE1\u2CE3\u2CE4\u2CEC\u2CEE\u2CF3\u2D00-\u2D25\u2D27\u2D2D\uA641\uA643\uA645\uA647\uA649\uA64B\uA64D\uA64F\uA651\uA653\uA655\uA657\uA659\uA65B\uA65D\uA65F\uA661\uA663\uA665\uA667\uA669\uA66B\uA66D\uA681\uA683\uA685\uA687\uA689\uA68B\uA68D\uA68F\uA691\uA693\uA695\uA697\uA699\uA69B\uA723\uA725\uA727\uA729\uA72B\uA72D\uA72F-\uA731\uA733\uA735\uA737\uA739\uA73B\uA73D\uA73F\uA741\uA743\uA745\uA747\uA749\uA74B\uA74D\uA74F\uA751\uA753\uA755\uA757\uA759\uA75B\uA75D\uA75F\uA761\uA763\uA765\uA767\uA769\uA76B\uA76D\uA76F\uA771-\uA778\uA77A\uA77C\uA77F\uA781\uA783\uA785\uA787\uA78C\uA78E\uA791\uA793-\uA795\uA797\uA799\uA79B\uA79D\uA79F\uA7A1\uA7A3\uA7A5\uA7A7\uA7A9\uA7AF\uA7B5\uA7B7\uA7B9\uA7BB\uA7BD\uA7BF\uA7C3\uA7FA\uAB30-\uAB5A\uAB60-\uAB67\uAB70-\uABBF\uFB00-\uFB06\uFB13-\uFB17\uFF41-\uFF5A\U00010428-\U0001044F\U000104D8-\U000104FB\U00010CC0-\U00010CF2\U000118C0-\U000118DF\U00016E60-\U00016E7F\U0001D41A-\U0001D433\U0001D44E-\U0001D454\U0001D456-\U0001D467\U0001D482-\U0001D49B\U0001D4B6-\U0001D4B9\U0001D4BB\U0001D4BD-\U0001D4C3\U0001D4C5-\U0001D4CF\U0001D4EA-\U0001D503\U0001D51E-\U0001D537\U0001D552-\U0001D56B\U0001D586-\U0001D59F\U0001D5BA-\U0001D5D3\U0001D5EE-\U0001D607\U0001D622-\U0001D63B\U0001D656-\U0001D66F\U0001D68A-\U0001D6A5\U0001D6C2-\U0001D6DA\U0001D6DC-\U0001D6E1\U0001D6FC-\U0001D714\U0001D716-\U0001D71B\U0001D736-\U0001D74E\U0001D750-\U0001D755\U0001D770-\U0001D788\U0001D78A-\U0001D78F\U0001D7AA-\U0001D7C2\U0001D7C4-\U0001D7C9\U0001D7CB\U0001E922-\U0001E943][0-9A-Z_a-z\u00AA\u00B5\u00BA\u00C0-\u00D6\u00D8-\u00F6\u00F8-\u02C1\u02C6-\u02D1\u02E0-\u02E4\u02EC\u02EE\u0370-\u0374\u0376\u0377\u037A-\u037D\u037F\u0386\u0388-\u038A\u038C\u038E-\u03A1\u03A3-\u03F5\u03F7-\u0481\u048A-\u052F\u0531-\u0556\u0559\u0560-\u0588\u05D0-\u05EA\u05EF-\u05F2\u0620-\u064A\u066E\u066F\u0671-\u06D3\u06D5\u06E5\u06E6\u06EE\u06EF\u06FA-\u06FC\u06FF\u0710\u0712-\u072F\u074D-\u07A5\u07B1\u07CA-\u07EA\u07F4\u07F5\u07FA\u0800-\u0815\u081A\u0824\u0828\u0840-\u0858\u0860-\u086A\u08A0-\u08B4\u08B6-\u08BD\u0904-\u0939\u093D\u0950\u0958-\u0961\u0971-\u0980\u0985-\u098C\u098F\u0990\u0993-\u09A8\u09AA-\u09B0\u09B2\u09B6-\u09B9\u09BD\u09CE\u09DC\u09DD\u09DF-\u09E1\u09F0\u09F1\u09FC\u0A05-\u0A0A\u0A0F\u0A10\u0A13-\u0A28\u0A2A-\u0A30\u0A32\u0A33\u0A35\u0A36\u0A38\u0A39\u0A59-\u0A5C\u0A5E\u0A72-\u0A74\u0A85-\u0A8D\u0A8F-\u0A91\u0A93-\u0AA8\u0AAA-\u0AB0\u0AB2\u0AB3\u0AB5-\u0AB9\u0ABD\u0AD0\u0AE0\u0AE1\u0AF9\u0B05-\u0B0C\u0B0F\u0B10\u0B13-\u0B28\u0B2A-\u0B30\u0B32\u0B33\u0B35-\u0B39\u0B3D\u0B5C\u0B5D\u0B5F-\u0B61\u0B71\u0B83\u0B85-\u0B8A\u0B8E-\u0B90\u0B92-\u0B95\u0B99\u0B9A\u0B9C\u0B9E\u0B9F\u0BA3\u0BA4\u0BA8-\u0BAA\u0BAE-\u0BB9\u0BD0\u0C05-\u0C0C\u0C0E-\u0C10\u0C12-\u0C28\u0C2A-\u0C39\u0C3D\u0C58-\u0C5A\u0C60\u0C61\u0C80\u0C85-\u0C8C\u0C8E-\u0C90\u0C92-\u0CA8\u0CAA-\u0CB3\u0CB5-\u0CB9\u0CBD\u0CDE\u0CE0\u0CE1\u0CF1\u0CF2\u0D05-\u0D0C\u0D0E-\u0D10\u0D12-\u0D3A\u0D3D\u0D4E\u0D54-\u0D56\u0D5F-\u0D61\u0D7A-\u0D7F\u0D85-\u0D96\u0D9A-\u0DB1\u0DB3-\u0DBB\u0DBD\u0DC0-\u0DC6\u0E01-\u0E30\u0E32\u0E33\u0E40-\u0E46\u0E81\u0E82\u0E84\u0E86-\u0E8A\u0E8C-\u0EA3\u0EA5\u0EA7-\u0EB0\u0EB2\u0EB3\u0EBD\u0EC0-\u0EC4\u0EC6\u0EDC-\u0EDF\u0F00\u0F40-\u0F47\u0F49-\u0F6C\u0F88-\u0F8C\u1000-\u102A\u103F\u1050-\u1055\u105A-\u105D\u1061\u1065\u1066\u106E-\u1070\u1075-\u1081\u108E\u10A0-\u10C5\u10C7\u10CD\u10D0-\u10FA\u10FC-\u1248\u124A-\u124D\u1250-\u1256\u1258\u125A-\u125D\u1260-\u1288\u128A-\u128D\u1290-\u12B0\u12B2-\u12B5\u12B8-\u12BE\u12C0\u12C2-\u12C5\u12C8-\u12D6\u12D8-\u1310\u1312-\u1315\u1318-\u135A\u1380-\u138F\u13A0-\u13F5\u13F8-\u13FD\u1401-\u166C\u166F-\u167F\u1681-\u169A\u16A0-\u16EA\u16F1-\u16F8\u1700-\u170C\u170E-\u1711\u1720-\u1731\u1740-\u1751\u1760-\u176C\u176E-\u1770\u1780-\u17B3\u17D7\u17DC\u1820-\u1878\u1880-\u1884\u1887-\u18A8\u18AA\u18B0-\u18F5\u1900-\u191E\u1950-\u196D\u1970-\u1974\u1980-\u19AB\u19B0-\u19C9\u1A00-\u1A16\u1A20-\u1A54\u1AA7\u1B05-\u1B33\u1B45-\u1B4B\u1B83-\u1BA0\u1BAE\u1BAF\u1BBA-\u1BE5\u1C00-\u1C23\u1C4D-\u1C4F\u1C5A-\u1C7D\u1C80-\u1C88\u1C90-\u1CBA\u1CBD-\u1CBF\u1CE9-\u1CEC\u1CEE-\u1CF3\u1CF5\u1CF6\u1CFA\u1D00-\u1DBF\u1E00-\u1F15\u1F18-\u1F1D\u1F20-\u1F45\u1F48-\u1F4D\u1F50-\u1F57\u1F59\u1F5B\u1F5D\u1F5F-\u1F7D\u1F80-\u1FB4\u1FB6-\u1FBC\u1FBE\u1FC2-\u1FC4\u1FC6-\u1FCC\u1FD0-\u1FD3\u1FD6-\u1FDB\u1FE0-\u1FEC\u1FF2-\u1FF4\u1FF6-\u1FFC\u2071\u207F\u2090-\u209C\u2102\u2107\u210A-\u2113\u2115\u2119-\u211D\u2124\u2126\u2128\u212A-\u212D\u212F-\u2139\u213C-\u213F\u2145-\u2149\u214E\u2183\u2184\u2C00-\u2C2E\u2C30-\u2C5E\u2C60-\u2CE4\u2CEB-\u2CEE\u2CF2\u2CF3\u2D00-\u2D25\u2D27\u2D2D\u2D30-\u2D67\u2D6F\u2D80-\u2D96\u2DA0-\u2DA6\u2DA8-\u2DAE\u2DB0-\u2DB6\u2DB8-\u2DBE\u2DC0-\u2DC6\u2DC8-\u2DCE\u2DD0-\u2DD6\u2DD8-\u2DDE\u2E2F\u3005\u3006\u3031-\u3035\u303B\u303C\u3041-\u3096\u309D-\u309F\u30A1-\u30FA\u30FC-\u30FF\u3105-\u312F\u3131-\u318E\u31A0-\u31BA\u31F0-\u31FF\u3400-\u4DB5\u4E00-\u9FEF\uA000-\uA48C\uA4D0-\uA4FD\uA500-\uA60C\uA610-\uA61F\uA62A\uA62B\uA640-\uA66E\uA67F-\uA69D\uA6A0-\uA6E5\uA717-\uA71F\uA722-\uA788\uA78B-\uA7BF\uA7C2-\uA7C6\uA7F7-\uA801\uA803-\uA805\uA807-\uA80A\uA80C-\uA822\uA840-\uA873\uA882-\uA8B3\uA8F2-\uA8F7\uA8FB\uA8FD\uA8FE\uA90A-\uA925\uA930-\uA946\uA960-\uA97C\uA984-\uA9B2\uA9CF\uA9E0-\uA9E4\uA9E6-\uA9EF\uA9FA-\uA9FE\uAA00-\uAA28\uAA40-\uAA42\uAA44-\uAA4B\uAA60-\uAA76\uAA7A\uAA7E-\uAAAF\uAAB1\uAAB5\uAAB6\uAAB9-\uAABD\uAAC0\uAAC2\uAADB-\uAADD\uAAE0-\uAAEA\uAAF2-\uAAF4\uAB01-\uAB06\uAB09-\uAB0E\uAB11-\uAB16\uAB20-\uAB26\uAB28-\uAB2E\uAB30-\uAB5A\uAB5C-\uAB67\uAB70-\uABE2\uAC00-\uD7A3\uD7B0-\uD7C6\uD7CB-\uD7FB\uF900-\uFA6D\uFA70-\uFAD9\uFB00-\uFB06\uFB13-\uFB17\uFB1D\uFB1F-\uFB28\uFB2A-\uFB36\uFB38-\uFB3C\uFB3E\uFB40\uFB41\uFB43\uFB44\uFB46-\uFBB1\uFBD3-\uFD3D\uFD50-\uFD8F\uFD92-\uFDC7\uFDF0-\uFDFB\uFE70-\uFE74\uFE76-\uFEFC\uFF21-\uFF3A\uFF41-\uFF5A\uFF66-\uFFBE\uFFC2-\uFFC7\uFFCA-\uFFCF\uFFD2-\uFFD7\uFFDA-\uFFDC\U00010000-\U0001000B\U0001000D-\U00010026\U00010028-\U0001003A\U0001003C\U0001003D\U0001003F-\U0001004D\U00010050-\U0001005D\U00010080-\U000100FA\U00010280-\U0001029C\U000102A0-\U000102D0\U00010300-\U0001031F\U0001032D-\U00010340\U00010342-\U00010349\U00010350-\U00010375\U00010380-\U0001039D\U000103A0-\U000103C3\U000103C8-\U000103CF\U00010400-\U0001049D\U000104B0-\U000104D3\U000104D8-\U000104FB\U00010500-\U00010527\U00010530-\U00010563\U00010600-\U00010736\U00010740-\U00010755\U00010760-\U00010767\U00010800-\U00010805\U00010808\U0001080A-\U00010835\U00010837\U00010838\U0001083C\U0001083F-\U00010855\U00010860-\U00010876\U00010880-\U0001089E\U000108E0-\U000108F2\U000108F4\U000108F5\U00010900-\U00010915\U00010920-\U00010939\U00010980-\U000109B7\U000109BE\U000109BF\U00010A00\U00010A10-\U00010A13\U00010A15-\U00010A17\U00010A19-\U00010A35\U00010A60-\U00010A7C\U00010A80-\U00010A9C\U00010AC0-\U00010AC7\U00010AC9-\U00010AE4\U00010B00-\U00010B35\U00010B40-\U00010B55\U00010B60-\U00010B72\U00010B80-\U00010B91\U00010C00-\U00010C48\U00010C80-\U00010CB2\U00010CC0-\U00010CF2\U00010D00-\U00010D23\U00010F00-\U00010F1C\U00010F27\U00010F30-\U00010F45\U00010FE0-\U00010FF6\U00011003-\U00011037\U00011083-\U000110AF\U000110D0-\U000110E8\U00011103-\U00011126\U00011144\U00011150-\U00011172\U00011176\U00011183-\U000111B2\U000111C1-\U000111C4\U000111DA\U000111DC\U00011200-\U00011211\U00011213-\U0001122B\U00011280-\U00011286\U00011288\U0001128A-\U0001128D\U0001128F-\U0001129D\U0001129F-\U000112A8\U000112B0-\U000112DE\U00011305-\U0001130C\U0001130F\U00011310\U00011313-\U00011328\U0001132A-\U00011330\U00011332\U00011333\U00011335-\U00011339\U0001133D\U00011350\U0001135D-\U00011361\U00011400-\U00011434\U00011447-\U0001144A\U0001145F\U00011480-\U000114AF\U000114C4\U000114C5\U000114C7\U00011580-\U000115AE\U000115D8-\U000115DB\U00011600-\U0001162F\U00011644\U00011680-\U000116AA\U000116B8\U00011700-\U0001171A\U00011800-\U0001182B\U000118A0-\U000118DF\U000118FF\U000119A0-\U000119A7\U000119AA-\U000119D0\U000119E1\U000119E3\U00011A00\U00011A0B-\U00011A32\U00011A3A\U00011A50\U00011A5C-\U00011A89\U00011A9D\U00011AC0-\U00011AF8\U00011C00-\U00011C08\U00011C0A-\U00011C2E\U00011C40\U00011C72-\U00011C8F\U00011D00-\U00011D06\U00011D08\U00011D09\U00011D0B-\U00011D30\U00011D46\U00011D60-\U00011D65\U00011D67\U00011D68\U00011D6A-\U00011D89\U00011D98\U00011EE0-\U00011EF2\U00012000-\U00012399\U00012480-\U00012543\U00013000-\U0001342E\U00014400-\U00014646\U00016800-\U00016A38\U00016A40-\U00016A5E\U00016AD0-\U00016AED\U00016B00-\U00016B2F\U00016B40-\U00016B43\U00016B63-\U00016B77\U00016B7D-\U00016B8F\U00016E40-\U00016E7F\U00016F00-\U00016F4A\U00016F50\U00016F93-\U00016F9F\U00016FE0\U00016FE1\U00016FE3\U00017000-\U000187F7\U00018800-\U00018AF2\U0001B000-\U0001B11E\U0001B150-\U0001B152\U0001B164-\U0001B167\U0001B170-\U0001B2FB\U0001BC00-\U0001BC6A\U0001BC70-\U0001BC7C\U0001BC80-\U0001BC88\U0001BC90-\U0001BC99\U0001D400-\U0001D454\U0001D456-\U0001D49C\U0001D49E\U0001D49F\U0001D4A2\U0001D4A5\U0001D4A6\U0001D4A9-\U0001D4AC\U0001D4AE-\U0001D4B9\U0001D4BB\U0001D4BD-\U0001D4C3\U0001D4C5-\U0001D505\U0001D507-\U0001D50A\U0001D50D-\U0001D514\U0001D516-\U0001D51C\U0001D51E-\U0001D539\U0001D53B-\U0001D53E\U0001D540-\U0001D544\U0001D546\U0001D54A-\U0001D550\U0001D552-\U0001D6A5\U0001D6A8-\U0001D6C0\U0001D6C2-\U0001D6DA\U0001D6DC-\U0001D6FA\U0001D6FC-\U0001D714\U0001D716-\U0001D734\U0001D736-\U0001D74E\U0001D750-\U0001D76E\U0001D770-\U0001D788\U0001D78A-\U0001D7A8\U0001D7AA-\U0001D7C2\U0001D7C4-\U0001D7CB\U0001E100-\U0001E12C\U0001E137-\U0001E13D\U0001E14E\U0001E2C0-\U0001E2EB\U0001E800-\U0001E8C4\U0001E900-\U0001E943\U0001E94B\U0001EE00-\U0001EE03\U0001EE05-\U0001EE1F\U0001EE21\U0001EE22\U0001EE24\U0001EE27\U0001EE29-\U0001EE32\U0001EE34-\U0001EE37\U0001EE39\U0001EE3B\U0001EE42\U0001EE47\U0001EE49\U0001EE4B\U0001EE4D-\U0001EE4F\U0001EE51\U0001EE52\U0001EE54\U0001EE57\U0001EE59\U0001EE5B\U0001EE5D\U0001EE5F\U0001EE61\U0001EE62\U0001EE64\U0001EE67-\U0001EE6A\U0001EE6C-\U0001EE72\U0001EE74-\U0001EE77\U0001EE79-\U0001EE7C\U0001EE7E\U0001EE80-\U0001EE89\U0001EE8B-\U0001EE9B\U0001EEA1-\U0001EEA3\U0001EEA5-\U0001EEA9\U0001EEAB-\U0001EEBB\U00020000-\U0002A6D6\U0002A700-\U0002B734\U0002B740-\U0002B81D\U0002B820-\U0002CEA1\U0002CEB0-\U0002EBE0\U0002F800-\U0002FA1D]*/, - - number_literal: ($) => - choice(/-?[0-9]+(\.[0-9]+)?(e-?[0-9]+)?/, $._hex_literal), - - _hex_literal: ($) => /0x[0-9A-Fa-f]+/, - - regular_char: ($) => /[^\\\n']/, - regular_string_part: ($) => choice(/[^\\\"\n]+/, /\"/), - regular_string_part_multiline: ($) => choice(/[^\\\"]+/, /\"\"?/), - - string_escape: ($) => /\\(u\{[0-9A-Fa-f]{4,6}\}|[nrt\"'\\])/, - - invalid_string_escape: ($) => /\\(u\{[^}]*\}|[^nrt\"'\\])/, - - module: ($) => "module", - effect: ($) => "effect", - where: ($) => "where", - import: ($) => "import", - as: ($) => "as", - exposing: ($) => "exposing", - _if: ($) => seq("if", field("exprList", $._expression)), - _then: ($) => seq("then", field("exprList", $._expression)), - _else: ($) => seq("else", field("exprList", $._expression)), - case: ($) => "case", - of: ($) => "of", - _let: ($) => - seq( - "let", - $._virtual_open_section, - $._inner_declaration, - optional($._more_inner_declarations), - $._virtual_end_section - ), - _in: ($) => seq("in", field("body", $._expression)), - type: ($) => "type", - alias: ($) => "alias", - port: ($) => "port", - infix: ($) => "infix", - left_parenthesis: ($) => "(", - right_parenthesis: ($) => ")", - left_square_bracket: ($) => "[", - right_square_bracket: ($) => "]", - left_brace: ($) => "{", - right_brace: ($) => "}", - double_dot: ($) => "..", - comma: ($) => ",", - eq: ($) => "=", - arrow: ($) => "->", - colon: ($) => ":", - pipe: ($) => "|", - backslash: ($) => "\\", - underscore: ($) => "_", - dot: ($) => ".", - operator_identifier: ($) => - choice( - "+", - "-", - "*", - "/", - "//", - "^", - "==", - "/=", - "<", - ">", - "<=", - ">=", - "&&", - "||", - "++", - "<|", - "|>", - "<<", - ">>", - "::", - "", - "", - "|.", - "|=" - ), - glsl_begin: ($) => "[glsl|", - glsl_end: ($) => "|]", - - _char_quote: ($) => "'", - }, -}); - -function commaSep1(rule, comma) { - return sep1(rule, comma); -} - -function arrowSep1(rule, arrow) { - return sep1(rule, arrow); -} - -function sep1(rule, separator) { - return seq(rule, repeat(seq(separator, rule))); -} diff --git a/vendor/tree-sitter-elm/index.d.ts b/vendor/tree-sitter-elm/index.d.ts deleted file mode 100644 index 02dbede..0000000 Binary files a/vendor/tree-sitter-elm/index.d.ts and /dev/null differ diff --git a/vendor/tree-sitter-elm/index.js b/vendor/tree-sitter-elm/index.js deleted file mode 100644 index eafa467..0000000 --- a/vendor/tree-sitter-elm/index.js +++ /dev/null @@ -1,13 +0,0 @@ -try { - module.exports = require("./build/Release/tree_sitter_elm_binding"); -} catch (error) { - try { - module.exports = require("./build/Debug/tree_sitter_elm_binding"); - } catch (_) { - throw error - } -} - -try { - module.exports.nodeTypeInfo = require("./src/node-types.json"); -} catch (_) {} diff --git a/vendor/tree-sitter-elm/package.json b/vendor/tree-sitter-elm/package.json deleted file mode 100644 index e93b8bb..0000000 --- a/vendor/tree-sitter-elm/package.json +++ /dev/null @@ -1,42 +0,0 @@ -{ - "name": "tree-sitter-elm", - "version": "4.3.1", - "description": "Tree sitter definitions for elm", - "main": "index.js", - "keywords": [ - "parser", - "lexer" - ], - "author": "Razze", - "license": "MIT", - "dependencies": { - "nan": "^2.14.2", - "prebuild-install": "^6.0.0" - }, - "devDependencies": { - "@asgerf/dts-tree-sitter": "^0.1.0", - "prebuild": "^10.0.1", - "tree-sitter-cli": "^0.17.3" - }, - "scripts": { - "build": "tree-sitter generate && node-gyp build --debug", - "install": "prebuild-install || node-gyp rebuild", - "prebuild": "prebuild -r electron --all --strip --verbose", - "prebuild:upload": "prebuild --upload-all", - "parse-basic": "tree-sitter parse ./examples/Basic.elm", - "parse-test": "tree-sitter parse --debug ./examples/test.elm", - "test": "tree-sitter test && script/parse-examples", - "test-full": "tree-sitter test && script/parse-examples-full", - "test-windows": "tree-sitter test", - "test-only": "tree-sitter test" - }, - "repository": "https://github.com/razzeee/tree-sitter-elm", - "tree-sitter": [ - { - "scope": "source.elm", - "file-types": [ - "elm" - ] - } - ] -} diff --git a/vendor/tree-sitter-elm/parser.exp b/vendor/tree-sitter-elm/parser.exp deleted file mode 100644 index 9dfe11d..0000000 Binary files a/vendor/tree-sitter-elm/parser.exp and /dev/null differ diff --git a/vendor/tree-sitter-elm/parser.lib b/vendor/tree-sitter-elm/parser.lib deleted file mode 100644 index aa4b7d1..0000000 Binary files a/vendor/tree-sitter-elm/parser.lib and /dev/null differ diff --git a/vendor/tree-sitter-elm/parser.obj b/vendor/tree-sitter-elm/parser.obj deleted file mode 100644 index 9b3535c..0000000 Binary files a/vendor/tree-sitter-elm/parser.obj and /dev/null differ diff --git a/vendor/tree-sitter-elm/queries/highlights.scm b/vendor/tree-sitter-elm/queries/highlights.scm deleted file mode 100644 index 02a6800..0000000 --- a/vendor/tree-sitter-elm/queries/highlights.scm +++ /dev/null @@ -1,67 +0,0 @@ -; Keywords -[ - "if" - "then" - "else" - "let" - "in" - ] @keyword.control.elm -(case) @keyword.control.elm -(of) @keyword.control.elm - -(colon) @keyword.other.elm -(pipe) @keyword.other.elm -(backslash) @keyword.other.elm -(as) @keyword.other.elm -(port) @keyword.other.elm -(exposing) @keyword.other.elm -(alias) @keyword.other.elm -(infix) @keyword.other.elm - -(arrow) @keyword.operator.arrow.elm - -(port) @keyword.other.port.elm - -(type_annotation(lower_case_identifier) @entity.name.function.elm) -(port_annotation(lower_case_identifier) @entity.name.function.elm) - -(operator_identifier) @keyword.operator.elm -(eq) @keyword.operator.assignment.elm - - -(record_type(left_brace) @punctuation.section.braces.begin) -(record_type(right_brace) @punctuation.section.braces.end) - - -(import) @meta.import.elm -(module) @keyword.other.elm - -(number_constant_expr) @constant.numeric.elm - -(comma) @punctuation.separator.comma.elm - -(type) @keyword.type.elm -(type_declaration(upper_case_identifier) @storage.type.elm) -(union_variant(upper_case_identifier) @constant.type-constructor.elm) - -; comments -(line_comment) @comment.line.double-dash.elm -(block_comment) @comment.block.elm - -; strings -(string_escape) @constant.character.escape.elm - -(open_quote) @punctuation.definition.string.begin.elm -(close_quote) @punctuation.definition.string.end.elm -(regular_string_part) @string.elm - -(open_char) @punctuation.definition.char.begin.elm -(close_char) @punctuation.definition.char.end.elm - - -; glsl -(glsl_begin) @entity.glsl.bracket.elm - -(glsl_content) @source.glsl - -(glsl_end) @entity.glsl.bracket.elm diff --git a/vendor/tree-sitter-elm/queries/locals.scm b/vendor/tree-sitter-elm/queries/locals.scm deleted file mode 100644 index 1eaf94f..0000000 --- a/vendor/tree-sitter-elm/queries/locals.scm +++ /dev/null @@ -1,15 +0,0 @@ - -(value_declaration) @local.scope -(type_alias_declaration) @local.scope -(type_declaration) @local.scope -(type_annotation) @local.scope -(port_annotation) @local.scope -(infix_declaration) @local.scope -(let_in_expr) @local.scope - -(function_declaration_left (lower_pattern (lower_case_identifier)) @local.definition) -(function_declaration_left (lower_case_identifier) @local.definition) - -(value_expr(value_qid(upper_case_identifier)) @local.reference) -(value_expr(value_qid(lower_case_identifier)) @local.reference) -(type_ref (upper_case_qid) @local.reference) \ No newline at end of file diff --git a/vendor/tree-sitter-elm/queries/tags.scm b/vendor/tree-sitter-elm/queries/tags.scm deleted file mode 100644 index e69de29..0000000 diff --git a/vendor/tree-sitter-elm/scanner.obj b/vendor/tree-sitter-elm/scanner.obj deleted file mode 100644 index 6568e0a..0000000 Binary files a/vendor/tree-sitter-elm/scanner.obj and /dev/null differ diff --git a/vendor/tree-sitter-elm/script/applications.json b/vendor/tree-sitter-elm/script/applications.json deleted file mode 100644 index 02d9fee..0000000 --- a/vendor/tree-sitter-elm/script/applications.json +++ /dev/null @@ -1,18 +0,0 @@ -[ - "rtfeldman/elm-spa-example", - "andys8/vim-emulation", - "DoctypeRosenthal/mindmap", - "RalfNorthman/adding-boxes", - "mosmos21/elm-todo", - "wolmir/conta-invaders", - "ryannhg/love-your-humans", - "smith-30/elm-login", - "jxxcarlson/elm-shared-state", - "doubledup/initiative_tracker", - "RaoKrishna/elm-poc", - "visotype/state-machine", - "Chadtech/elm-europe-2019-talk", - "mathiajusth/gravity", - "Vynlar/time-tracker", - "xbmc/elm-chorus" -] diff --git a/vendor/tree-sitter-elm/script/error-packages.json b/vendor/tree-sitter-elm/script/error-packages.json deleted file mode 100644 index b356e89..0000000 --- a/vendor/tree-sitter-elm/script/error-packages.json +++ /dev/null @@ -1,14 +0,0 @@ -[ - "HAN-ASD-DT/priority-queue", - "HAN-ASD-DT/rsa", - "abradley2/form-controls", - "abradley2/form-fields", - "altjsus/elm-airtable", - "nik-garmash/elm-test", - "not1602/elm-feather", - "ozyinc/elm-sortable-table-with-row-id", - "peterszerzo/elm-natural-ui", - "m-mullins/elm-console", - "nathanjohnson320/elm-ui-components", - "proda-ai/elm-logger" -] diff --git a/vendor/tree-sitter-elm/script/known-failures-full.txt b/vendor/tree-sitter-elm/script/known-failures-full.txt deleted file mode 100644 index 5b1ae6d..0000000 --- a/vendor/tree-sitter-elm/script/known-failures-full.txt +++ /dev/null @@ -1,5 +0,0 @@ -examples-full/elm-browser/examples/drag.elm -examples-full/elm-ui/tests-rendering/automation/templates/Run.elm -examples-full/Chadtech/elm-imperative-porting/examples/find-primes.elm -examples-full/ianmackenzie/elm-geometry-prerelease/src/Geometry/Examples/Expect.elm -examples-full/ianmackenzie/elm-geometry-prerelease/doc/interactive/EllipticalArc2d/FromEndpoints.elm \ No newline at end of file diff --git a/vendor/tree-sitter-elm/script/known-failures.txt b/vendor/tree-sitter-elm/script/known-failures.txt deleted file mode 100644 index 97c80f0..0000000 --- a/vendor/tree-sitter-elm/script/known-failures.txt +++ /dev/null @@ -1,2 +0,0 @@ -examples/elm-browser/examples/drag.elm -examples/elm-ui/tests-rendering/automation/templates/Run.elm \ No newline at end of file diff --git a/vendor/tree-sitter-elm/script/parse-examples b/vendor/tree-sitter-elm/script/parse-examples deleted file mode 100755 index 8490bfb..0000000 --- a/vendor/tree-sitter-elm/script/parse-examples +++ /dev/null @@ -1,69 +0,0 @@ -#!/bin/bash - -cd "$(dirname "$0")/.." - -function checkout_at() { - repo=$1; url=$2; sha=$3 - if [ ! -d "$repo" ]; then - git clone "https://github.com/$url" "$repo" - fi - - pushd "$repo" - git fetch && git reset --hard "$sha" - popd -} - -checkout_at "examples/elm-spa-example" "rtfeldman/elm-spa-example" "c8c3201ec0488f17c1245e1fd2293ba5bc0748d5" -checkout_at "examples/elm-browser" "elm/browser" "1d28cd625b3ce07be6dfad51660bea6de2c905f2" -checkout_at "examples/elm-bytes" "elm/bytes" "2bce2aeda4ef18c3dcccd84084647d22a7af36a6" -checkout_at "examples/elm-core" "elm/core" "22eefd207e7a63daab215ae497f683ff2319c2ca" -checkout_at "examples/elm-file" "elm/file" "e4ca3864c93a5e766e24ed6916174753567b2f59" -checkout_at "examples/elm-html" "elm/html" "94c079007f8a7ed282d5b53f4a49101dd0b6cf99" -checkout_at "examples/elm-http" "elm/http" "81b6fdc67d8e5fb25644fd79e6b0edbe2e14e474" -checkout_at "examples/elm-json" "elm/json" "af344039e8c014b06ed0f73ac3ffd22c60d30876" -checkout_at "examples/elm-parser" "elm/parser" "7506b07eaa93a93d13b508b948c016105b0953c8" -checkout_at "examples/elm-project-metadata-utils" "elm/project-metadata-utils" "b075be15046e151e36a79950412c4cb703605aeb" -checkout_at "examples/elm-random" "elm/random" "ecf97bb43f0d5cd75243428f69f45323957bda25" -checkout_at "examples/elm-regex" "elm/regex" "8810c41fb17ddf89165665489be213f44070bc4a" -checkout_at "examples/elm-svg" "elm/svg" "08bd432990862bab5b840654dd437fbb2e6176e7" -checkout_at "examples/elm-time" "elm/time" "dc3b75b7366e59b99962706f7bf064d3634a4bba" -checkout_at "examples/elm-url" "elm/url" "8602f4b48653ca93b6991fe2c6a764523cd1d462" -checkout_at "examples/elm-virtual-dom" "elm/virtual-dom" "5a5bcf48720bc7d53461b3cd42a9f19f119c5503" -checkout_at "examples/elm-ui" "mdgriffith/elm-ui" "7aa0e015499d4975a4dda02c2629ee21ec18eac3" -checkout_at "examples/elm-markup" "mdgriffith/elm-markup" "e4b88aa04c7e9bafd02b5436c311cf07e255dab1" -checkout_at "examples/elm-visualization" "gampleman/elm-visualization" "68631a3dbf840d30bc642e605a49ccd8040504f6" - - -skipped_files=() -all_examples=$(find examples -name '*.elm') -known_failures=$(cat script/known-failures.txt) -examples_to_parse=$( - for example in $all_examples; do - if [[ ! $known_failures == *$example* ]]; then - echo $example - else - skipped_files+=($example) - fi - done -) - -start=`date +%s.%N` -tree_sitter_report=$(echo $examples_to_parse | xargs -n 1000 npx tree-sitter parse -q) -end=`date +%s.%N` - -ret_code=$? - -echo -e "-----------------------------------------------------------------\n$tree_sitter_report \n -----------------------------------------------------------------\n" - -errors=$( echo "$tree_sitter_report" | sed '/^\s*$/d' | wc -l ) - -skipped=$( echo ${#skipped_files[@]} ) -tried_to_parse=$( echo "$examples_to_parse" | wc -w ) -parsed=$(bc -l <<< "$tried_to_parse-$errors") -total=$((tried_to_parse+skipped)) -percent=$(bc -l <<< "100*$parsed/$total") -runtime=$( echo "$end - $start" | bc -l ) - -printf "Successfully parsed %d of %d files (%.2f%%)\nSkipped: %d Failed: %d\nTook: %s\n" $parsed $total $percent $skipped $errors $runtime - -exit $ret_code diff --git a/vendor/tree-sitter-elm/script/parse-examples-full b/vendor/tree-sitter-elm/script/parse-examples-full deleted file mode 100755 index b2cca4e..0000000 --- a/vendor/tree-sitter-elm/script/parse-examples-full +++ /dev/null @@ -1,67 +0,0 @@ -#!/bin/bash - -cd "$(dirname "$0")/.." - -function checkout() { - repo=$1; url=$2; - if [ ! -d "$repo" ]; then - git clone "https://github.com/$url" "$repo" - fi - - pushd "$repo" - git fetch && git reset --hard HEAD - popd -} - -echo "Getting libs" -libs_to_parse=$(grep -Po '"name":.*?[^\\]",' ./script/search.json | perl -pe 's/"name": "//; s/^"//; s/",$//') -libs_not_to_parse=$(grep -Po '".+"' ./script/error-packages.json | perl -pe 's/^"//; s/"$//') - -for lib in $libs_to_parse; do - if [[ ! $libs_not_to_parse == *$lib* ]]; then - echo $lib - checkout "examples-full/$lib" "$lib" - fi -done - -echo "Getting applications" -applications_to_parse=$(grep -Po '".+"' ./script/applications.json | perl -pe 's/^"//; s/"$//') - -for project in $applications_to_parse; do - echo $project - checkout "examples-full/$project" "$project" -done - -skipped_files=() -all_examples=$(find examples-full -name '*.elm') -known_failures=$(cat script/known-failures.txt) -examples_to_parse=$( - for example in $all_examples; do - if [[ ! $known_failures == *$example* ]]; then - echo $example - else - skipped_files+=($example) - fi - done -) - -start=`date +%s.%N` -tree_sitter_report=$(echo $examples_to_parse | xargs -n 1000 npx tree-sitter parse -q) -end=`date +%s.%N` - -ret_code=$? - -echo -e "-----------------------------------------------------------------\n$tree_sitter_report \n -----------------------------------------------------------------\n" - -errors=$( echo "$tree_sitter_report" | sed '/^\s*$/d' | wc -l ) - -skipped=$( echo ${#skipped_files[@]} ) -tried_to_parse=$( echo "$examples_to_parse" | wc -w ) -parsed=$(bc -l <<< "$tried_to_parse-$errors") -total=$((tried_to_parse+skipped)) -percent=$(bc -l <<< "100*$parsed/$total" ) -runtime=$( echo "$end - $start" | bc -l ) - -printf "Successfully parsed %d of %d files (%.2f%%)\nSkipped: %d Failed: %d\nTook: %s\n" $parsed $total $percent $skipped $errors $runtime - -exit $ret_code diff --git a/vendor/tree-sitter-elm/script/search.json b/vendor/tree-sitter-elm/script/search.json deleted file mode 100644 index a3db9bd..0000000 --- a/vendor/tree-sitter-elm/script/search.json +++ /dev/null @@ -1,7106 +0,0 @@ -[ - { - "name": "elm/browser", - "summary": "Run Elm in browsers, with access to browser history for single-page apps (SPAs)", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "elm/bytes", - "summary": "Work with sequences of bytes (a.k.a. ArrayBuffer, typed arrays, DataView)", - "license": "BSD-3-Clause", - "version": "1.0.8" - }, - { - "name": "elm/core", - "summary": "Elm's standard libraries", - "license": "BSD-3-Clause", - "version": "1.0.5" - }, - { - "name": "elm/file", - "summary": "Select files. Download files. Work with file content.", - "license": "BSD-3-Clause", - "version": "1.0.5" - }, - { - "name": "elm/html", - "summary": "Fast HTML, rendered with virtual DOM diffing", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "elm/http", - "summary": "Make HTTP requests", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "elm/json", - "summary": "Encode and decode JSON values", - "license": "BSD-3-Clause", - "version": "1.1.3" - }, - { - "name": "elm/parser", - "summary": "a parsing library, focused on simplicity and great error messages", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "elm/project-metadata-utils", - "summary": "Work with elm.json and docs.json files in Elm", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "elm/random", - "summary": "Generate random numbers and values (RNG)", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "elm/regex", - "summary": "Support for JS-style regular expressions in Elm", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "elm/svg", - "summary": "Fast SVG, rendered with virtual DOM diffing", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "elm/time", - "summary": "Work with POSIX times, time zones, years, months, days, hours, seconds, etc.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "elm/url", - "summary": "Create and parse URLs. Use for HTTP and \"routing\" in single-page apps (SPAs)", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "elm/virtual-dom", - "summary": "Core virtual DOM implementation, basis for HTML and SVG libraries", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "elm-explorations/benchmark", - "summary": "benchmark Elm code", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "elm-explorations/linear-algebra", - "summary": "A linear algebra library for fast vector and matrix math", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "elm-explorations/markdown", - "summary": "Fast markdown parsing and rendering", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "elm-explorations/test", - "summary": "Write unit and fuzz tests for Elm code.", - "license": "BSD-3-Clause", - "version": "1.2.2" - }, - { - "name": "elm-explorations/webgl", - "summary": "Functional rendering with WebGL in Elm", - "license": "BSD-3-Clause", - "version": "1.1.2" - }, - { - "name": "evancz/elm-playground", - "summary": "A fun way to create pictures, animations, and games.", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "rtfeldman/count", - "summary": "Call record constructors with increasing integers. Useful for managing z-index.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "rtfeldman/elm-css", - "summary": "Typed CSS in Elm.", - "license": "BSD-3-Clause", - "version": "16.1.0" - }, - { - "name": "rtfeldman/elm-hex", - "summary": "Work with hexadecimal numbers", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "rtfeldman/elm-iso8601-date-strings", - "summary": "Convert ISO8601 date strings to and from Posix times", - "license": "BSD-3-Clause", - "version": "1.1.3" - }, - { - "name": "rtfeldman/elm-sorter-experiment", - "summary": "Experimental Sorter package", - "license": "BSD-3-Clause", - "version": "2.1.1" - }, - { - "name": "rtfeldman/elm-validate", - "summary": "Validate data", - "license": "BSD-3-Clause", - "version": "4.0.1" - }, - { - "name": "lukewestby/accessible-html-with-css-temp-19", - "summary": "Drop-in replacement for tesk9/accessible-html using Html.Styled", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "lukewestby/elm-http-builder", - "summary": "Pipeable functions for building HTTP requests", - "license": "MIT", - "version": "7.0.1" - }, - { - "name": "lukewestby/elm-string-interpolate", - "summary": "Inject values from a list into a template. Useful for i18n and templated copy.", - "license": "MIT", - "version": "1.0.4" - }, - { - "name": "lukewestby/elm-template", - "summary": "Type-safe Elm string templating with records", - "license": "MIT", - "version": "3.0.0" - }, - { - "name": "lukewestby/http-extra", - "summary": "Inject values from a list into a template. Useful for i18n and templated copy.", - "license": "MIT", - "version": "2.0.1" - }, - { - "name": "mdgriffith/elm-animator", - "summary": "A timeline-based animation engine", - "license": "BSD-3-Clause", - "version": "1.1.1" - }, - { - "name": "mdgriffith/elm-markup", - "summary": "An Elm-friendly markup language for typed data and content.", - "license": "BSD-3-Clause", - "version": "3.0.1" - }, - { - "name": "mdgriffith/elm-style-animation", - "summary": "Style Animations in Elm", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "mdgriffith/elm-ui", - "summary": "Layout and style that's easy to refactor, all without thinking about CSS.", - "license": "BSD-3-Clause", - "version": "1.1.8" - }, - { - "name": "mdgriffith/style-elements", - "summary": "This project had a major rewrite and continues as mdgriffith/elm-ui", - "license": "BSD-3-Clause", - "version": "5.0.2" - }, - { - "name": "mdgriffith/stylish-elephants", - "summary": "Layout and style that's easy to refactor, all without thinking about CSS.", - "license": "BSD-3-Clause", - "version": "8.1.0" - }, - { - "name": "w0rm/elm-obj-file", - "summary": "Decode 3D models from the OBJ file format", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "w0rm/elm-physics", - "summary": "Experimental toy physics engine", - "license": "BSD-3-Clause", - "version": "5.0.0" - }, - { - "name": "w0rm/elm-slice-show", - "summary": "Elm Slides", - "license": "BSD-3-Clause", - "version": "5.0.2" - }, - { - "name": "BrianHicks/elm-css-reset", - "summary": "CSS Resets for rtfeldman/elm-css", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "BrianHicks/elm-particle", - "summary": "Simulate and render particles to SVG", - "license": "BSD-3-Clause", - "version": "1.3.1" - }, - { - "name": "BrianHicks/elm-string-graphemes", - "summary": "Do string operations based on graphemes instead of codepoints or bytes.", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "BrianHicks/elm-trend", - "summary": "generate trend lines for two-dimensional data", - "license": "BSD-3-Clause", - "version": "2.1.3" - }, - { - "name": "Janiczek/architecture-test", - "summary": "A library for fuzz testing TEA models by simulating user interactions", - "license": "BSD-3-Clause", - "version": "2.1.0" - }, - { - "name": "Janiczek/browser-extra", - "summary": "Extra functions for elm/browser", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "Janiczek/cmd-extra", - "summary": "Pipeline-friendly helpers for working with Cmds", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "Janiczek/elm-bidict", - "summary": "A bidirectional Dict data structure", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "Janiczek/elm-graph", - "summary": "A graph data structure with a nice API", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "Janiczek/elm-runescape", - "summary": "Functions related to the game RuneScape by Jagex Ltd.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "Janiczek/transform", - "summary": "Transform recursive data structures from the bottom up", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "JoelQ/elm-toggleable", - "summary": "Elm functions for working with toggleable UIs", - "license": "MIT", - "version": "1.1.1" - }, - { - "name": "jschomay/elm-bounded-number", - "summary": "A type representing bounded numbers.", - "license": "BSD-3-Clause", - "version": "2.1.1" - }, - { - "name": "jschomay/elm-narrative-engine", - "summary": "Interactive storytelling framework", - "license": "BSD-3-Clause", - "version": "6.0.0" - }, - { - "name": "jschomay/elm-paginate", - "summary": "Simple and robust pagination in elm", - "license": "BSD-3-Clause", - "version": "3.1.2" - }, - { - "name": "myrho/elm-round", - "summary": "Round floats (mathematically/commercially) to a given number of decimal places", - "license": "BSD-3-Clause", - "version": "1.0.4" - }, - { - "name": "supermario/elm-countries", - "summary": "A searchable ISO 3166-1 based list of country names, codes and emoji flags", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "terezka/charts", - "summary": "SVG charts components in Elm.", - "license": "BSD-3-Clause", - "version": "5.0.0" - }, - { - "name": "terezka/elm-charts", - "summary": "DEPRECATED. Create SVG charts.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "terezka/elm-charts-alpha", - "summary": "A library for plotting charts in SVG.", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "terezka/line-charts", - "summary": "A library for plotting lines charts in SVG.", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "terezka/yaml", - "summary": "A library for parsing and decoding YAML.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "tesk9/accessible-html", - "summary": "view helpers enforcing accessible practices", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "tesk9/accessible-html-with-css", - "summary": "Drop-in replacement for tesk9/accessible-html using Html.Styled", - "license": "BSD-3-Clause", - "version": "2.1.1" - }, - { - "name": "tesk9/modal", - "summary": "Accessible modal component", - "license": "BSD-3-Clause", - "version": "7.0.0" - }, - { - "name": "tesk9/palette", - "summary": "Work with colors and generate palettes.", - "license": "BSD-3-Clause", - "version": "3.0.1" - }, - { - "name": "Arkham/elm-chords", - "summary": "Parse chord sheets for guitar and ukulele", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "Arkham/elm-rttl", - "summary": "Parse ringtones written using RTTL and Nokia Composer", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "Skinney/elm-deque", - "summary": "A double-ended queue for Elm", - "license": "BSD-3-Clause", - "version": "1.2.0" - }, - { - "name": "Skinney/elm-phone-numbers", - "summary": "A package for validating phone numbers. Based on google's libphonenumber.", - "license": "BSD-3-Clause", - "version": "2.0.29" - }, - { - "name": "Skinney/elm-warrior", - "summary": "Hone your Elm skills by programming the intelligence of a brave warrior.", - "license": "BSD-3-Clause", - "version": "4.0.5" - }, - { - "name": "Skinney/keyboard-events", - "summary": "Functions for triggering messages when a certain key is pressed", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "Skinney/murmur3", - "summary": "An implementation of the Murmur3 hash function for Elm", - "license": "MIT", - "version": "2.0.8" - }, - { - "name": "abadi199/elm-creditcard", - "summary": "Pretty credit card form built with elm", - "license": "MIT", - "version": "10.0.1" - }, - { - "name": "abadi199/elm-input-extra", - "summary": "Commonly used Html element with extra functionality", - "license": "BSD-3-Clause", - "version": "5.2.4" - }, - { - "name": "abadi199/intl-phone-input", - "summary": "International phone number form input.", - "license": "Apache-2.0", - "version": "2.0.2" - }, - { - "name": "gampleman/elm-examples-helper", - "summary": "A simple package that makes elm-visualization examples simpler", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "gampleman/elm-mapbox", - "summary": "An advanced mapping library", - "license": "MIT", - "version": "4.1.0" - }, - { - "name": "gampleman/elm-visualization", - "summary": "A data visualization package for Elm", - "license": "MIT", - "version": "2.1.2" - }, - { - "name": "ianmackenzie/elm-1d-parameter", - "summary": "Generate evenly spaced interpolated values", - "license": "MPL-2.0", - "version": "1.0.1" - }, - { - "name": "ianmackenzie/elm-3d-camera", - "summary": "Camera type for 3D rendering and projection", - "license": "MPL-2.0", - "version": "3.1.0" - }, - { - "name": "ianmackenzie/elm-3d-scene", - "summary": "3D rendering engine for Elm", - "license": "MPL-2.0", - "version": "1.0.1" - }, - { - "name": "ianmackenzie/elm-float-extra", - "summary": "Useful functionionality for Float values", - "license": "MPL-2.0", - "version": "1.1.0" - }, - { - "name": "ianmackenzie/elm-geometry", - "summary": "2D/3D geometric data types and operations", - "license": "MPL-2.0", - "version": "3.6.0" - }, - { - "name": "ianmackenzie/elm-geometry-linear-algebra-interop", - "summary": "Interop support for ianmackenzie/elm-geometry and elm-community/linear-algebra", - "license": "MPL-2.0", - "version": "2.0.2" - }, - { - "name": "ianmackenzie/elm-geometry-prerelease", - "summary": "PRERELEASE version of elm-geometry", - "license": "MPL-2.0", - "version": "1.0.1" - }, - { - "name": "ianmackenzie/elm-geometry-svg", - "summary": "Render 2D elm-geometry types as SVG", - "license": "MPL-2.0", - "version": "3.0.0" - }, - { - "name": "ianmackenzie/elm-geometry-test", - "summary": "Helpful utilities for testing code that uses elm-geometry", - "license": "MPL-2.0", - "version": "1.0.0" - }, - { - "name": "ianmackenzie/elm-interval", - "summary": "Simple Interval type for Elm", - "license": "MPL-2.0", - "version": "3.0.1" - }, - { - "name": "ianmackenzie/elm-iso-10303", - "summary": "Create and parse data in ISO 10303-21 (STEP file) format", - "license": "MPL-2.0", - "version": "2.0.0" - }, - { - "name": "ianmackenzie/elm-step-file", - "summary": "Create and parse data in ISO 10303-21 (STEP file) format", - "license": "MPL-2.0", - "version": "1.0.1" - }, - { - "name": "ianmackenzie/elm-triangular-mesh", - "summary": "Generic indexed triangular mesh data structure", - "license": "MPL-2.0", - "version": "1.0.4" - }, - { - "name": "ianmackenzie/elm-units", - "summary": "Simple, safe and convenient unit types and conversions for Elm", - "license": "BSD-3-Clause", - "version": "2.7.0" - }, - { - "name": "ianmackenzie/elm-units-interval", - "summary": "Version of elm-interval based on elm-units", - "license": "MPL-2.0", - "version": "2.1.0" - }, - { - "name": "ianmackenzie/elm-units-prefixed", - "summary": "Prefixed version of elm-units for resolving module name conflicts", - "license": "BSD-3-Clause", - "version": "2.7.0" - }, - { - "name": "jxxcarlson/elm-cell-grid", - "summary": "Render a rectangular grid of cells to HTML.", - "license": "BSD-3-Clause", - "version": "8.0.1" - }, - { - "name": "jxxcarlson/elm-editor", - "summary": "A pure Elm text editor", - "license": "MIT", - "version": "3.1.3" - }, - { - "name": "jxxcarlson/elm-graph", - "summary": "Simple charts: line and bar", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "jxxcarlson/elm-markdown", - "summary": "Experimental markdown parser, handles math, has hooks for editor sync", - "license": "BSD-3-Clause", - "version": "10.0.1" - }, - { - "name": "jxxcarlson/elm-pseudorandom", - "summary": "Pseudorandom number generators", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "jxxcarlson/elm-stat", - "summary": "Elm stat utility", - "license": "BSD-3-Clause", - "version": "5.0.0" - }, - { - "name": "jxxcarlson/elm-tar", - "summary": "Elm tar utility", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "jxxcarlson/elm-text-editor", - "summary": "Pure Elm text editor forked from Sydney Nemzer", - "license": "BSD-3-Clause", - "version": "7.0.8" - }, - { - "name": "jxxcarlson/elm-typed-time", - "summary": "A typed time library for Elm (keep track of units: seconds, minutes, etc.)", - "license": "MIT", - "version": "1.2.0" - }, - { - "name": "jxxcarlson/elm-widget", - "summary": "A small personal collection of UI widgets for mdgriffith/elm-ui", - "license": "MIT", - "version": "3.2.1" - }, - { - "name": "jxxcarlson/hex", - "summary": "hex view for bytes", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "jxxcarlson/htree", - "summary": "Transform hierarchical list to a rose tree", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "jxxcarlson/math-markdown", - "summary": "Experimental markdown parser that also handles math!", - "license": "BSD-3-Clause", - "version": "3.0.6" - }, - { - "name": "jxxcarlson/meenylatex", - "summary": "A parser for a subset of LaTeX", - "license": "BSD-3-Clause", - "version": "13.0.0" - }, - { - "name": "jxxcarlson/tree-extra", - "summary": "Operations on rose trees to go with zwilias/elm-rosetree", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "noahzgordon/elm-color-extra", - "summary": "Additional color handling for Elm", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "noahzgordon/elm-jsonapi", - "summary": "Decoders and helper functions for working with JSONAPI payloads", - "license": "MIT", - "version": "3.0.1" - }, - { - "name": "ohanhi/autoexpand", - "summary": "A pure Elm auto expanding textarea", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "ohanhi/keyboard", - "summary": "Helpers for working with keyboard inputs (ex keyboard-extra)", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "ohanhi/lorem", - "summary": "Placeholder text for your Elm apps", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "ohanhi/remotedata-http", - "summary": "A collection of helper functions for server communication using RemoteData", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "0ui/elm-task-parallel", - "summary": "Run tasks in parallel and handle all the results in one message.", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "1602/elm-feather", - "summary": "Feather icons for elm", - "license": "BSD-3-Clause", - "version": "2.3.5" - }, - { - "name": "1602/json-schema", - "summary": "JSON Schema for elm", - "license": "BSD-3-Clause", - "version": "4.1.1" - }, - { - "name": "1602/json-value", - "summary": "Reading and manipulation with json values", - "license": "BSD-3-Clause", - "version": "3.0.1" - }, - { - "name": "2426021684/elm-collage", - "summary": "Use timjs/elm-collage instead.", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "2426021684/elm-text-width", - "summary": "Calculates text width.", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "7hoenix/elm-chess", - "summary": "Basic Chess module in Elm", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "AdrianRibao/elm-derberos-date", - "summary": "Functions for working with dates, times, and timezones using in Elm 0.19.", - "license": "MIT", - "version": "1.2.3" - }, - { - "name": "AuricSystemsInternational/creditcard-validator", - "summary": "Determine the brand of a credit card number", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "Bastes/the-validator", - "summary": "Validator for models that does nesting and composition", - "license": "AGPL-3.0", - "version": "2.1.2" - }, - { - "name": "Bernardoow/elm-alert-timer-message", - "summary": "Simple message alert library.", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "Bernardoow/elm-rating-component", - "summary": "Simple rating component.", - "license": "BSD-3-Clause", - "version": "2.0.2" - }, - { - "name": "Bractlet/elm-plot", - "summary": "Bractlet version of elm-plot (forked from terezka)", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "Cendrb/elm-css", - "summary": "Typed CSS in Elm.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "Chadtech/ct-colors", - "summary": "Chadtech standard colors", - "license": "BSD-3-Clause", - "version": "3.0.2" - }, - { - "name": "Chadtech/dependent-text", - "summary": "Dependent Text type (sorta)", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "Chadtech/elm-bool-extra", - "summary": "Convenience functions for working with Bools", - "license": "BSD-3-Clause", - "version": "2.4.2" - }, - { - "name": "Chadtech/elm-css-grid", - "summary": "Simple way to arrange things in grids", - "license": "BSD-3-Clause", - "version": "2.0.3" - }, - { - "name": "Chadtech/elm-imperative-porting", - "summary": "Imperative syntax functions for porting imperative code into Elm", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "Chadtech/elm-money", - "summary": "All the worlds currencies", - "license": "BSD-3-Clause", - "version": "4.0.1" - }, - { - "name": "Chadtech/elm-provider", - "summary": "An exploration into the container / component pattern in Elm", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "Chadtech/elm-relational-database", - "summary": "Keep track of lots of different data by ids", - "license": "BSD-3-Clause", - "version": "1.2.2" - }, - { - "name": "Chadtech/elm-us-state-abbreviations", - "summary": "List of US State abbreviations and a few helpful functions", - "license": "BSD-3-Clause", - "version": "2.0.2" - }, - { - "name": "Chadtech/elm-vector", - "summary": "Collection types of a fixed length", - "license": "BSD-3-Clause", - "version": "3.0.2" - }, - { - "name": "Chadtech/id", - "summary": "Types and helpers for your types with ids", - "license": "BSD-3-Clause", - "version": "4.2.0" - }, - { - "name": "Chadtech/random-pipeline", - "summary": "Making random values a little bit easier", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "Chadtech/return", - "summary": "Helpers for update functions", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "Chadtech/unique-list", - "summary": "A type to arrange things in order", - "license": "BSD-3-Clause", - "version": "2.1.4" - }, - { - "name": "ChristophP/elm-i18next", - "summary": "A module to load, decode and use translations in your app", - "license": "BSD-3-Clause", - "version": "4.1.2" - }, - { - "name": "ChristophP/elm-mark", - "summary": "Search term highlighting for Elm apps", - "license": "BSD-3-Clause", - "version": "2.0.2" - }, - { - "name": "CipherDogs/elm-bitcoin", - "summary": "Bitcoin web component made using Elm", - "license": "GPL-3.0", - "version": "2.0.0" - }, - { - "name": "CoderDennis/elm-time-format", - "summary": "Formatting and Internationalization of Time.Posix", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "ConcatDK/elm-todoist", - "summary": "Handling integration with the Todoist API", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "Confidenceman02/elm-animate-height", - "summary": "Animate a containers height", - "license": "BSD-3-Clause", - "version": "2.0.2" - }, - { - "name": "ContaSystemer/elm-angularjs-custom-element", - "summary": "The package contains HTML functions to reuse AngularJS components in Elm", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "ContaSystemer/elm-effects", - "summary": "Effects package helps to manage additional program effects", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "ContaSystemer/elm-effects-msg-from-js", - "summary": "Effects to work with a system to process messages from JS", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "ContaSystemer/elm-effects-time", - "summary": "Time system effects to subscribe for time events.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "ContaSystemer/elm-error-message", - "summary": "Helper functions for specific error messages", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "ContaSystemer/elm-js-data", - "summary": "Data structure to communicate with JavaScript over ports", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "ContaSystemer/elm-menu", - "summary": "A customizable menu component which could be used for autocomplete component", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "ContaSystemer/elm-review-no-missing-documentation", - "summary": "elm-review rule to enforce documentation for every top level declaration\n\n", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "ContaSystemer/elm-review-no-regex", - "summary": "\"elm-review\" rule to forbid Regex package usage in favour of Parser package", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "ContaSystemer/review-no-missing-documentation", - "summary": "elm-review rule to enforce documentation for every top level declaration\n\n", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "ContaSystemer/review-noregex", - "summary": "elm-review rule to forbid regex usage", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "CurrySoftware/elm-datepicker", - "summary": "A reusable date picker component", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "EdutainmentLIVE/elm-bootstrap", - "summary": "Elm Bootstrap is a comprehensive library for working with Twitter Bootstrap 4", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "EdutainmentLIVE/elm-dropdown", - "summary": "A dropdown / select component", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "Elm-Canvas/raster-shapes", - "summary": "Pixelated shape drawing using the Bresenham algorithms", - "license": "BSD-3-Clause", - "version": "1.1.2" - }, - { - "name": "EngageSoftware/elm-dnn-http", - "summary": "Helpers for working with DNN Web API", - "license": "Apache-2.0", - "version": "2.1.0" - }, - { - "name": "EngageSoftware/elm-dnn-localization", - "summary": "Helpers for working with DNN Localization", - "license": "Apache-2.0", - "version": "1.0.2" - }, - { - "name": "EngageSoftware/elm-engage-common", - "summary": "Engage's common UI framework components", - "license": "Apache-2.0", - "version": "8.2.0" - }, - { - "name": "EngageSoftware/elm-mustache", - "summary": "Evaluating mustache templates", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "Evelios/elm-markov", - "summary": "A markov model library for arbitrary data types", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "FMFI-UK-1-AIN-412/elm-formula", - "summary": "First-order logic formulas and parser", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "FabienHenon/elm-ckeditor5", - "summary": "ckeditor 5 for elm", - "license": "MIT", - "version": "1.4.0" - }, - { - "name": "FabienHenon/elm-infinite-list-view", - "summary": "Displays a virtual infinite list, only showing visible items", - "license": "BSD-3-Clause", - "version": "3.2.0" - }, - { - "name": "FabienHenon/elm-infinite-scroll", - "summary": "Infinite scroll API", - "license": "BSD-3-Clause", - "version": "3.0.3" - }, - { - "name": "FabienHenon/elm-iso8601-date-strings", - "summary": "Convert ISO8601 date strings to and from Posix times", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "FabienHenon/jsonapi", - "summary": "JsonAPI decoder and encoder functions", - "license": "BSD-3-Clause", - "version": "2.3.0" - }, - { - "name": "FabienHenon/remote-resource", - "summary": "Handle foreground and background resources", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "FordLabs/elm-star-rating", - "summary": "Simple 5 star rating component", - "license": "Apache-2.0", - "version": "1.2.0" - }, - { - "name": "FranklinChen/elm-tau", - "summary": "The mathematical constant.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "Fresheyeball/deburr", - "summary": "exposes a function to deburr strings", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "Fresheyeball/elm-return", - "summary": "Return as a Writer Monad", - "license": "BSD-3-Clause", - "version": "7.1.0" - }, - { - "name": "Garados007/elm-svg-parser", - "summary": "parse String to SVG", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "Gizra/elm-all-set", - "summary": "A set of unique values. The values can be any type (not just comparables).", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "Gizra/elm-attribute-builder", - "summary": "Build up lists of HTML attributes in a modular manner", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "Gizra/elm-compat-019", - "summary": "Compatibility layer for use with Elm 0.19", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "Gizra/elm-debouncer", - "summary": "The most comprehensive debouncer for Elm", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "Gizra/elm-editable-webdata", - "summary": "An EditableWebData represents an Editable value, along with WebData.", - "license": "BSD-3-Clause", - "version": "2.0.2" - }, - { - "name": "Gizra/elm-fetch", - "summary": "Some conveniences for implementing the `update` function along with `fetch`", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "Gizra/elm-keyboard-event", - "summary": "Decoders for keyboard events", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "Gizra/elm-storage-key", - "summary": "A StorageKey represents a value that is either New or Existing.", - "license": "BSD-3-Clause", - "version": "1.1.1" - }, - { - "name": "GlobalWebIndex/class-namespaces", - "summary": "Elm module for building HTML classes based on weak-css rules", - "license": "BSD-3-Clause", - "version": "3.1.0" - }, - { - "name": "GlobalWebIndex/cmd-extra", - "summary": "Extra functions for working with Cmds", - "license": "BSD-3-Clause", - "version": "1.3.0" - }, - { - "name": "GlobalWebIndex/elm-plural-rules", - "summary": "An abstraction for working with plural rules", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "GlobalWebIndex/quantify", - "summary": "Quantify List, Set, Dict or a single value according to a predicate", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "GoldentTuft/elm-japanese-typing", - "summary": "Japanese Typing Library for Elm", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "HAN-ASD-DT/priority-queue", - "summary": "a priority queue for Elm.", - "license": "MIT", - "version": "2.1.1" - }, - { - "name": "HAN-ASD-DT/rsa", - "summary": "A toy implementation of the RSA crypto-system.", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "Herteby/enum", - "summary": "Reduce boilerplate needed for dealing with Enums.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "Herteby/simplex-noise", - "summary": "Generate simplex noise (an improvement of Perlin noise)", - "license": "MIT", - "version": "1.2.2" - }, - { - "name": "Herteby/url-builder-plus", - "summary": "Replacement for the standard Url.Builder, with more convenience functions", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "Holmusk/elmoji", - "summary": "A tabbed general-purpose emoji picker", - "license": "BSD-3-Clause", - "version": "1.0.4" - }, - { - "name": "Holmusk/swagger-decoder", - "summary": "Type definiitions and decoders for working with swagger.json", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "IzumiSy/elm-consistent-hashing", - "summary": "A module for consistent hashing", - "license": "MIT", - "version": "4.0.1" - }, - { - "name": "IzumiSy/elm-firestore", - "summary": "A library for integrating your app with Firestore in Elm", - "license": "MIT", - "version": "7.0.0" - }, - { - "name": "IzumiSy/elm-multi-waitable", - "summary": "A small package like a traffic light", - "license": "MIT", - "version": "1.1.2" - }, - { - "name": "JeremyBellows/elm-bootstrapify", - "summary": "A collection of functions to use the bootstrap theme when designing html", - "license": "BSD-3-Clause", - "version": "9.0.1" - }, - { - "name": "JohnBugner/elm-bag", - "summary": "A bag, also known as a multiset.", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "JohnBugner/elm-loop", - "summary": "Repeatedly apply a function to a value.", - "license": "BSD-3-Clause", - "version": "2.1.0" - }, - { - "name": "JohnBugner/elm-matrix", - "summary": "A matrix.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "JonRowe/elm-jwt", - "summary": "Supports decoding Jwt tokens", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "JoshuaHall/elm-fraction", - "summary": "This library provides a safe and simple API to deal with fractions.", - "license": "MIT", - "version": "2.1.0" - }, - { - "name": "JustinLove/elm-twitch-api", - "summary": "Decoders and a few other helpers for using Twitch.tv APIs", - "license": "BSD-3-Clause", - "version": "6.1.0" - }, - { - "name": "K-Adam/elm-dom", - "summary": "DOM traversal for Elm event-handlers and ports", - "license": "Apache-2.0", - "version": "1.0.0" - }, - { - "name": "Kinto/elm-kinto", - "summary": "A client to help making requests to a Kinto storage server", - "license": "MPL-2.0", - "version": "8.0.0" - }, - { - "name": "Kraxorax/elm-matrix-a", - "summary": "Exposes 'Matrix a' creation, traversal, and some manipulation functions.", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "Kurren123/k-dropdown-container", - "summary": "A container for dropdowns", - "license": "GPL-3.0", - "version": "1.0.0" - }, - { - "name": "LesleyLai/elm-grid", - "summary": "2-dimensional Grid in elm", - "license": "Apache-2.0", - "version": "1.0.1" - }, - { - "name": "Libbum/elm-partition", - "summary": "Partition problem (number partitioning) solvers", - "license": "BSD-3-Clause", - "version": "2.3.0" - }, - { - "name": "Libbum/elm-redblacktrees", - "summary": "Red Black self-balancing binary search trees", - "license": "BSD-3-Clause", - "version": "2.0.4" - }, - { - "name": "MacCASOutreach/graphicsvg", - "summary": "Beautiful scalable vector graphics (SVG) in Elm.", - "license": "BSD-3-Clause", - "version": "7.1.0" - }, - { - "name": "MadonnaMat/elm-select-two", - "summary": "A mimic of Select2 in Elm", - "license": "MIT", - "version": "6.0.1" - }, - { - "name": "MartinSStewart/elm-audio", - "summary": "Play sound effects and music in a declarative way", - "license": "BSD-3-Clause", - "version": "3.0.3" - }, - { - "name": "MartinSStewart/elm-bayer-matrix", - "summary": "Generate Bayer matrices. Useful for dithering patterns.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "MartinSStewart/elm-box-packing", - "summary": "Pack rectangles closely together. Useful for texture atlases and sprite sheets.", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "MartinSStewart/elm-codec-bytes", - "summary": "Build binary encoders and decoders with minimal boilerplate", - "license": "MIT", - "version": "1.1.2" - }, - { - "name": "MartinSStewart/elm-geometry-serialize", - "summary": "elm-serialize codecs for ianmackenzie/elm-geometry", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "MartinSStewart/elm-nonempty-string", - "summary": "Create strings that contain at least a single character.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "MartinSStewart/elm-serialize", - "summary": "Write codecs for encoding and decoding Elm data.", - "license": "MIT", - "version": "1.2.1" - }, - { - "name": "MartinSStewart/send-grid", - "summary": "Send emails with the Send Grid API. Only useful for server-side Elm.", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "MattCheely/tryframe-coordinator", - "summary": "Tools for coordinating embedded apps via iframes.", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "MaybeJustJames/yaml", - "summary": "Work with YAML in Elm", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "MichaelCombs28/elm-base85", - "summary": "This library provides you with encoding / decoding of Base85", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "MichaelCombs28/elm-css-bulma", - "summary": "Bulma HTML/CSS Framework for Elm", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "Microsoft/elm-json-tree-view", - "summary": "Shows JSON data as an expandable HTML tree", - "license": "MIT", - "version": "2.0.1" - }, - { - "name": "Morgan-Stanley/morphir-elm", - "summary": "Morphir Elm bindings", - "license": "Apache-2.0", - "version": "3.0.0" - }, - { - "name": "NoRedInk/datetimepicker-legacy", - "summary": "Reusable date and time picker view", - "license": "Apache-2.0", - "version": "1.0.4" - }, - { - "name": "NoRedInk/elm-compare", - "summary": "Tools for composing comparison functions", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "NoRedInk/elm-debug-controls-without-datepicker", - "summary": "(you probably want avh4/elm-debug-controls instead)", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "NoRedInk/elm-formatted-text-19", - "summary": "A type for representing formatted text", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "NoRedInk/elm-formatted-text-test-helpers", - "summary": "A type for representing formatted text", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "NoRedInk/elm-json-decode-pipeline", - "summary": "Use pipelines to build JSON Decoders.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "NoRedInk/elm-plot-19", - "summary": "SVG charts in Elm.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "NoRedInk/elm-plot-rouge", - "summary": "SVG charts components in Elm.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "NoRedInk/elm-rails", - "summary": "Convenience functions for using Elm with Rails.", - "license": "BSD-3-Clause", - "version": "9.0.0" - }, - { - "name": "NoRedInk/elm-random-general", - "summary": "A general random number generator, allows to experiment with different RNGs", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "NoRedInk/elm-random-pcg-extended", - "summary": "PCG-Extended, more bits of randomness for you!", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "NoRedInk/elm-rfc5988-parser", - "summary": "Fork of: A (woefully-incomplete) parser for RFC5988 Links", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "NoRedInk/elm-rollbar", - "summary": "Send reports to Rollbar", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "NoRedInk/elm-saved", - "summary": "A type keeping track of changes to a value since it was last saved.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "NoRedInk/elm-simple-fuzzy", - "summary": "Fuzzy matching and filtering for strings.", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "NoRedInk/elm-sortable-table", - "summary": "Sortable tables for whatever data you want to display.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "NoRedInk/elm-string-conversions", - "summary": "Helpers to convert common types into a `String`.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "NoRedInk/elm-sweet-poll", - "summary": "HTTP polling with backoff when the server response doesn't change", - "license": "BSD-3-Clause", - "version": "6.0.0" - }, - { - "name": "NoRedInk/elm-uuid", - "summary": "V4 UUIDs - 128 bit pseudo-random identifiers (Fork with more randomness)", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "NoRedInk/http-upgrade-shim", - "summary": "A package to help people upgrade from Http 1.0 to 2.0", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "NoRedInk/list-selection", - "summary": "A list that might have at most one selected item", - "license": "BSD-3-Clause", - "version": "1.3.1" - }, - { - "name": "NoRedInk/noredink-ui", - "summary": "UI Widgets we use at NRI", - "license": "BSD-3-Clause", - "version": "12.7.0" - }, - { - "name": "NoRedInk/style-elements", - "summary": "Legacy fork of mdgriffith/style-elements to fix a bug in an indirect dependency", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "Orange-OpenSource/elm-advanced-grid", - "summary": "A dynamically configurable grid", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "Orasund/elm-action", - "summary": "Update your model using a state machine.", - "license": "BSD-3-Clause", - "version": "2.1.2" - }, - { - "name": "Orasund/elm-cellautomata", - "summary": "A packages that lets you write your own celluar automatas.", - "license": "BSD-3-Clause", - "version": "3.0.1" - }, - { - "name": "Orasund/elm-game-essentials", - "summary": "A collection of essential types for creating games.", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "Orasund/elm-jsonstore", - "summary": "Custom Json and Http functions to work with Jsonstore.io", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "Orasund/elm-ui-framework", - "summary": "A CSS framework to go hand in hand with elm-ui.", - "license": "BSD-3-Clause", - "version": "1.6.1" - }, - { - "name": "Orasund/elm-ui-widgets", - "summary": "Collection of reusable views for elm-ui.", - "license": "BSD-3-Clause", - "version": "2.1.1" - }, - { - "name": "Orasund/pixelengine", - "summary": "Graphic engine for turn based pixel games.", - "license": "BSD-3-Clause", - "version": "6.2.0" - }, - { - "name": "PaackEng/elm-alert-beta", - "summary": "Bootstrap alert", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "PaackEng/elm-google-maps", - "summary": "Type safe google maps implementation", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "PaackEng/elm-svg-string", - "summary": "Serializes a SVG node into a string", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "PaackEng/elm-ui-dialog", - "summary": "Encode and decode JSON values", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "PaackEng/elm-ui-dropdown", - "summary": "An Elm UI dropdown component", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "PaackEng/paack-remotedata", - "summary": "Paack's approach to Kris Jenkins' RemoteData.", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "PaackEng/paack-ui", - "summary": "Paack's Design System applied over Elm UI", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "PanagiotisGeorgiadis/elm-datepicker", - "summary": "A date time picker built on top of elm-datetime package.", - "license": "BSD-3-Clause", - "version": "2.2.1" - }, - { - "name": "PanagiotisGeorgiadis/elm-datetime", - "summary": "A human readable representation of date and time built on top of elm/time.", - "license": "BSD-3-Clause", - "version": "1.3.0" - }, - { - "name": "Punie/elm-id", - "summary": "Safe IDs with phantom types", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "Punie/elm-matrix", - "summary": "Simple linear algebra library using flat-arrays", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "Punie/elm-parser-extras", - "summary": "Convenience functions for building parser with elm/parser", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "Punie/elm-reader", - "summary": "Read configuration from an implicit environment", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "QiTASC/hatchinq", - "summary": "An experimental library for UI elements. Not for production use.", - "license": "Apache-2.0", - "version": "28.1.1" - }, - { - "name": "RalfNorthman/elm-lttb", - "summary": "Down-sampling data with the Largest-Triangle-Three-Buckets algorithm.", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "RalfNorthman/elm-zoom-plot", - "summary": "Plotting line charts with zoom and nice time axes.", - "license": "BSD-3-Clause", - "version": "3.0.1" - }, - { - "name": "RomanErnst/erl", - "summary": "Parse and construct URLs", - "license": "MIT", - "version": "2.1.1" - }, - { - "name": "STTR13/ziplist", - "summary": "List with a selected element that makes impossible state impossible.", - "license": "BSD-3-Clause", - "version": "1.3.0" - }, - { - "name": "SiriusStarr/elm-password-strength", - "summary": "Provides libraries for calculating password security and providing feedback.", - "license": "GPL-3.0", - "version": "1.0.1" - }, - { - "name": "SiriusStarr/elm-spaced-repetition", - "summary": "Create spaced repetition software using several different popular algorithms.", - "license": "GPL-3.0", - "version": "2.0.0" - }, - { - "name": "SiriusStarr/elm-splat", - "summary": "Provides functions for unpacking lists items as arguments.", - "license": "GPL-3.0", - "version": "1.0.0" - }, - { - "name": "Spaxe/elm-lsystem", - "summary": "Implementation of L-Systems in Elm", - "license": "MIT", - "version": "4.0.1" - }, - { - "name": "Spaxe/svg-pathd", - "summary": "Minimal, Complete SVG Path constructor for its `d` attribute", - "license": "MIT", - "version": "3.0.1" - }, - { - "name": "SwiftsNamesake/proper-keyboard", - "summary": "Introduces type-safe keys", - "license": "MIT", - "version": "4.0.0" - }, - { - "name": "TSFoster/elm-bytes-extra", - "summary": "Helpers for working with elm/bytes", - "license": "BSD-3-Clause", - "version": "1.3.0" - }, - { - "name": "TSFoster/elm-compare", - "summary": "Helpers for comparing non-comparable values", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "TSFoster/elm-envfile", - "summary": "Encode and parse envfiles", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "TSFoster/elm-heap", - "summary": "Heap structure for elmlang", - "license": "MIT", - "version": "2.1.2" - }, - { - "name": "TSFoster/elm-md5", - "summary": "Computes MD5 hash of non-string data", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "TSFoster/elm-sha1", - "summary": "Generate SHA1 digests of strings or arbitrary data", - "license": "BSD-3-Clause", - "version": "2.1.1" - }, - { - "name": "TSFoster/elm-tuple-extra", - "summary": "Convenience functions for working with tuples", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "TSFoster/elm-uuid", - "summary": "Create and manage UUIDs", - "license": "BSD-3-Clause", - "version": "4.0.1" - }, - { - "name": "TheSacredLipton/elm-ui-hexcolor", - "summary": "Add hex color declarations to elm-ui.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "ThinkAlexandria/css-in-elm", - "summary": "Write CSS stylesheets in Elm", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "ThinkAlexandria/elm-drag-locations", - "summary": "Drag library designed for many different interaction locations", - "license": "BSD-3-Clause", - "version": "3.0.2" - }, - { - "name": "ThinkAlexandria/elm-html-in-elm", - "summary": "A pure Elm representation of Elm Html", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "ThinkAlexandria/elm-pretty-print-json", - "summary": "Pretty print JSON with nesting indents into a String", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "ThinkAlexandria/elm-primer-tooltips", - "summary": "GitHub's primer-tooltip css selectors exposed as an Elm union type", - "license": "MIT", - "version": "2.1.0" - }, - { - "name": "ThinkAlexandria/window-manager", - "summary": "Window toolkit providing resizeable, draggable UI containers.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "VerbalExpressions/elm-verbal-expressions", - "summary": "Elm port of VerbalExpressions", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "Voronchuk/hexagons", - "summary": "Hexagonal grids and tools to build hex maps and layouts", - "license": "MIT", - "version": "3.1.0" - }, - { - "name": "WhileTruu/elm-blurhash", - "summary": "Blurhash decoder and encoder (https://github.com/woltapp/blurhash).", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "WhileTruu/elm-smooth-scroll", - "summary": "Scrolling to position that always takes the same amount of time.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "YuyaAizawa/list-wrapper", - "summary": "Data structure implemented by simple list", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "YuyaAizawa/peg", - "summary": "Parser combinator implementation for Persing Expression Grammer (PEG)", - "license": "BSD-3-Clause", - "version": "2.2.0" - }, - { - "name": "Zinggi/elm-2d-game", - "summary": "A 2D rendering engine based on WebGL", - "license": "MIT", - "version": "4.1.0" - }, - { - "name": "Zinggi/elm-game-resources", - "summary": "Manages game resources (currently only textures)", - "license": "MIT", - "version": "2.0.1" - }, - { - "name": "Zinggi/elm-glsl-generator", - "summary": "Generate GLSL shader code", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "abinayasudhir/elm-select", - "summary": "A selection input with auto-completion", - "license": "MIT", - "version": "1.3.0" - }, - { - "name": "abinayasudhir/elm-treeview", - "summary": "ELM tree view component", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "abinayasudhir/html-parser", - "summary": "Parse HTML 5 in Elm", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "abinayasudhir/outmessage", - "summary": "Streamlining child-parent communication using The Elm Architecture with OutMsg", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "abradley2/elm-calendar", - "summary": "An Elm version of the unix 'cal' command. Outputs a grid representing a month", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "abradley2/elm-datepicker", - "summary": "A well-styled, configurable, and feature rich date picker", - "license": "MIT", - "version": "4.1.0" - }, - { - "name": "abradley2/form-controls", - "summary": "Modules for creating user friendly form controls in elm", - "license": "MIT", - "version": "2.0.2" - }, - { - "name": "abradley2/form-elements", - "summary": "Modules for creating user friendly form controls in elm", - "license": "MIT", - "version": "4.1.2" - }, - { - "name": "abradley2/form-fields", - "summary": "Modules for creating user friendly form controls in elm", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "achutkiran/elm-material-color", - "summary": "Material Colors", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "achutkiran/material-components-elm", - "summary": "Elm Bindings for MWC and Polymer Elements", - "license": "BSD-3-Clause", - "version": "1.2.1" - }, - { - "name": "adauguet/elm-spanned-string", - "summary": "A tiny library to span substrings.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "afidegnum/elm-bulmanizer", - "summary": "Bulma HTML/CSS Framework for Elm with customizations", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "afidegnum/elm-tailwind", - "summary": "Bulma HTML/CSS Framework for Elm 0.19", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "aforemny/material-components-web-elm", - "summary": "Material Components for Elm", - "license": "MIT", - "version": "6.0.0" - }, - { - "name": "agustinrhcp/elm-datepicker", - "summary": "A reusable date picker component", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "agustinrhcp/elm-mask", - "summary": "Simple module to mask / unmask string inputs", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "ahstro/elm-bulma-classes", - "summary": "Bulma CSS classes", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "ahstro/elm-luhn", - "summary": "Luhn Algorithm validator", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "akheron/elm-easter", - "summary": "Compute the date of Easter for any given year", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "akoppela/elm-logo", - "summary": "SVG Elm Logo", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "alex-tan/elm-dialog", - "summary": "A modal dialog widget for Elm. Forked from krisajenkins.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "alex-tan/elm-tree-diagram", - "summary": "Library for drawing diagrams of trees. Fork of brenden/elm-tree-diagram.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "alex-tan/loadable", - "summary": "Separate the loading of your application from the logic.", - "license": "MIT", - "version": "3.1.2" - }, - { - "name": "alex-tan/postgrest-client", - "summary": "A postgrest client written in elm", - "license": "MIT", - "version": "2.1.1" - }, - { - "name": "alex-tan/postgrest-queries", - "summary": "Library to construct postgrest queries", - "license": "MIT", - "version": "7.2.0" - }, - { - "name": "alex-tan/task-extra", - "summary": "Expand usages of Task", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "alexanderkiel/elm-mdc-alpha", - "summary": "Material Components for the Web for Elm", - "license": "BSD-3-Clause", - "version": "1.4.0" - }, - { - "name": "alexanderkiel/list-selection", - "summary": "A list that might have at most one selected item", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "alexandrepiveteau/elm-algebraic-graph", - "summary": "Algebraic graphs in Elm.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "alexandrepiveteau/elm-ordt", - "summary": "Operational Replicated Data Types for crafting replicated data types", - "license": "MIT", - "version": "2.1.2" - }, - { - "name": "alexkorban/uicards", - "summary": "Speed up UI development and testing with live UI cards", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "allenap/elm-json-decode-broken", - "summary": "Decode broken JSON", - "license": "MIT", - "version": "3.0.2" - }, - { - "name": "allo-media/canopy", - "summary": "A Generic Tree API.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "allo-media/elm-daterange-picker", - "summary": "A date range picker.", - "license": "MIT", - "version": "4.0.2" - }, - { - "name": "allo-media/elm-es-simple-query-string", - "summary": "Parse and serialize ElasticSearch search strings.", - "license": "MIT", - "version": "4.0.0" - }, - { - "name": "allo-media/fable", - "summary": "Want to be a real wizard, with fable you can tale some stories from you views!", - "license": "MIT", - "version": "1.0.3" - }, - { - "name": "alma/elm-sms-length", - "summary": "A lib that from a string tells you how many SMS would be needed.", - "license": "MPL-2.0", - "version": "2.0.1" - }, - { - "name": "altayaydemir/style-elements", - "summary": "Fork of mdgriffith/style-elements", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "altjsus/elm-airtable", - "summary": "Airtable API for ELM", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "altjsus/elmtable", - "summary": "Airtable API for Elm", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "anatol-1988/measurement", - "summary": "Working with Google Analytics Measurement Protocol", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "andre-dietrich/elm-conditional", - "summary": "Piping with conditions, but without if-then-else statements", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "andre-dietrich/elm-mapbox", - "summary": "Fork form gampleman/elm-mapbox (4.1.0) ... An advanced mapping library", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "andre-dietrich/elm-random-regex", - "summary": "Generate random strings from regular expressions.", - "license": "MIT", - "version": "1.0.9" - }, - { - "name": "andre-dietrich/elm-svgbob", - "summary": "Fork of the great ASCII to SVG converter SvgBob by Ivan Ceras.", - "license": "Apache-2.0", - "version": "2.0.2" - }, - { - "name": "andre-dietrich/parser-combinators", - "summary": "Port of the community parser combinator to elm 0.19", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "andrewMacmurray/elm-delay", - "summary": "utilities to trigger updates after a delay", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "andys8/elm-geohash", - "summary": "Geohash for Elm", - "license": "MIT", - "version": "1.1.2" - }, - { - "name": "anhmiuhv/pannablevideo", - "summary": "a video element that is pannable and zoomable", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "annaghi/dnd-list", - "summary": "Drag and Drop for sortable lists in Elm web apps with mouse support", - "license": "BSD-3-Clause", - "version": "6.0.1" - }, - { - "name": "arnau/elm-objecthash", - "summary": "Objecthash in Elm", - "license": "BSD-3-Clause", - "version": "2.2.1" - }, - { - "name": "arowM/elm-classname", - "summary": "A brief module for custom `class` attributes.", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "arowM/elm-css-modules-helper", - "summary": "Provide helper functions to handle CSS modules in Elm without hacks", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "arowM/elm-data-url", - "summary": "A module to handle data URLs (IETF RFC 2397) in type safe manner.", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "arowM/elm-form-decoder", - "summary": "This library provides a scalable way to decode user inputs into neat structure.", - "license": "MIT", - "version": "1.4.0" - }, - { - "name": "arowM/elm-form-validator", - "summary": "This module provides a scalable way to validate a form.", - "license": "MIT", - "version": "2.1.2" - }, - { - "name": "arowM/elm-html-extra-internal", - "summary": "This is a dummy package only for `arowM/html-extra`", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "arowM/elm-html-internal", - "summary": "This is a dummy packageonly for `arowM/html`", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "arowM/elm-html-with-context", - "summary": "Cleaner, hack-free way to pass contexts to Elm view functions", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "arowM/elm-mixin", - "summary": "A brief library for Mixins.", - "license": "MIT", - "version": "4.1.0" - }, - { - "name": "arowM/elm-neat-layout", - "summary": "Elm layout framework that helps to keep paddings neat.", - "license": "MIT", - "version": "2.0.1" - }, - { - "name": "arowM/elm-parser-test", - "summary": "Helper functions to develop/test your own parser using elm/parser", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "arowM/elm-reference", - "summary": "An immutable approach imitating references of mutable languages.", - "license": "MIT", - "version": "1.0.7" - }, - { - "name": "arowM/html", - "summary": "An elm/html alternative which enables you to batch attributes.", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "arowM/html-extra", - "summary": "An elm-community/html-extra alternative which can be used with arowM/html", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "arsduo/elm-dom-drag-drop", - "summary": "Easy HTML5 drag-and-drop for Elm and @danielnary's visotype/elm-dom framework", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "arsduo/elm-ui-drag-drop", - "summary": "Drag and Drop utilities for the elm-dom framework.", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "arturopala/elm-monocle", - "summary": "Library providing functional tools to manipulate complex records", - "license": "MIT", - "version": "2.2.0" - }, - { - "name": "astynax/tea-combine", - "summary": "Combinator library for TEA-powered applications", - "license": "MIT", - "version": "3.0.0" - }, - { - "name": "athanclark/elm-debouncer", - "summary": "simple method for time-throttling action / message propogation", - "license": "BSD-3-Clause", - "version": "4.0.1" - }, - { - "name": "austinshenk/elm-w3", - "summary": "Type safe HTML/ARIA that follows W3 guidelines", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "avh4/burndown-charts", - "summary": "A library for plotting burndown charts", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "avh4/elm-beautiful-example", - "summary": "Create beautiful examples to show off your Elm packages and projects", - "license": "MIT", - "version": "2.0.1" - }, - { - "name": "avh4/elm-color", - "summary": "Standard representation of colors, encouraging sharing between packages", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "avh4/elm-debug-controls", - "summary": "Easily create interactive UIs for complex data structures", - "license": "BSD-3-Clause", - "version": "2.2.1" - }, - { - "name": "avh4/elm-desktop-app", - "summary": "the simplest way to write desktop applications in Elm", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "avh4/elm-dropbox", - "summary": "Unofficial Dropbox API for Elm", - "license": "MIT", - "version": "3.0.0" - }, - { - "name": "avh4/elm-fifo", - "summary": "First in, first out (FIFO) queue", - "license": "MIT", - "version": "1.0.4" - }, - { - "name": "avh4/elm-github-v3", - "summary": "Unofficial GitHub v3 API for Elm", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "avh4/elm-program-test", - "summary": "Test Elm programs", - "license": "MIT", - "version": "3.3.0" - }, - { - "name": "avh4-experimental/elm-transducers", - "summary": "Composable transformation of sequences using clojure-inspired transducers", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "b0oh/elm-do", - "summary": "Inspired by do-notation from Haskell.", - "license": "ISC", - "version": "1.0.0" - }, - { - "name": "bChiquet/elm-accessors", - "summary": "Accessors, a library implementing lenses for Elm.", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "babsballetschool/image-directory", - "summary": "Elm project showing an image directory structure", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "bartavelle/json-helpers", - "summary": "Helpers for Json encoding and decoding of sum types", - "license": "BSD-3-Clause", - "version": "2.0.2" - }, - { - "name": "basti1302/elm-human-readable-filesize", - "summary": "Converts file size in bytes to a human readable string", - "license": "BSD-3-Clause", - "version": "1.2.0" - }, - { - "name": "basti1302/elm-non-empty-array", - "summary": "An array that has at least one element.", - "license": "BSD-3-Clause", - "version": "2.1.0" - }, - { - "name": "bburdette/cellme", - "summary": "schelme cells", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "bburdette/pdf-element", - "summary": "PDF custom element for elm", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "bburdette/schelme", - "summary": "a Scheme inspired scripting language for Elm.", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "bburdette/stl", - "summary": "Parse Binary STL files", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "bburdette/toop", - "summary": "tuple-like datastructure allowing more than 3 elements.", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "bburdette/typed-collections", - "summary": "typed layers over standard elm collections", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "bburdette/websocket", - "summary": "open, close websockets, send and receive messages.", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "bemyak/elm-slider", - "summary": "Elm slider implementation", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "benansell/lobo-elm-test-extra", - "summary": "elm-test extensions for lobo", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "benthepoet/elm-purecss", - "summary": "A set of helpers for Pure CSS", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "bgrosse-midokura/composable-form", - "summary": "Build type-safe composable forms in Elm", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "bigardone/elm-css-placeholders", - "summary": "A package to generate HTML placeholders using elm-css.", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "bigbinary/elm-form-field", - "summary": "Capture form data better", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "bigbinary/elm-reader", - "summary": "Reader type in Elm", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "billstclair/elm-chat", - "summary": "A simple chat component, easy to add to your user interface.", - "license": "MIT", - "version": "3.0.2" - }, - { - "name": "billstclair/elm-crypto-aes", - "summary": "elm-crypto-aes is a pure Elm implementation of the Advanced Encryption Standard", - "license": "MIT", - "version": "1.0.10" - }, - { - "name": "billstclair/elm-crypto-string", - "summary": "elm-crypto-string does block chaining for string encryption.", - "license": "MIT", - "version": "3.0.1" - }, - { - "name": "billstclair/elm-custom-element", - "summary": "A custom element library", - "license": "MIT", - "version": "1.4.0" - }, - { - "name": "billstclair/elm-dev-random", - "summary": "Cryptographically secure random-number generator.", - "license": "MIT", - "version": "3.1.1" - }, - { - "name": "billstclair/elm-dialog", - "summary": "A Dialog UI module based on Material Design Lite", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "billstclair/elm-geolocation", - "summary": "Geolocation, find your latitude and longitude.", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "billstclair/elm-id-search", - "summary": "Search for substrings in user records", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "billstclair/elm-localstorage", - "summary": "elm-localstorage provides persistence via JavaScript's localStorage.", - "license": "MIT", - "version": "7.2.0" - }, - { - "name": "billstclair/elm-mastodon", - "summary": "Elm client for the Mastodon social network.", - "license": "MIT", - "version": "9.0.2" - }, - { - "name": "billstclair/elm-mastodon-websocket", - "summary": "Elm client for the websocket API of the Mastodon social network.", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "billstclair/elm-oauth-middleware", - "summary": "elm-oauth-middleware implements an OAuth authorization scheme.", - "license": "MIT", - "version": "3.0.0" - }, - { - "name": "billstclair/elm-popup-picker", - "summary": "A popup
to pick from a list of choices.", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "billstclair/elm-port-funnel", - "summary": "Using one port pair for ALL compatible port code.", - "license": "MIT", - "version": "1.2.0" - }, - { - "name": "billstclair/elm-sha256", - "summary": "SHA256 and SHA228 cryptographic hashes Elm.", - "license": "MIT", - "version": "1.0.9" - }, - { - "name": "billstclair/elm-sortable-table", - "summary": "Sortable tables for data of any shape.", - "license": "BSD-3-Clause", - "version": "1.2.0" - }, - { - "name": "billstclair/elm-svg-button", - "summary": "elm-svg-button eases creation of SVG buttons.", - "license": "MIT", - "version": "4.0.0" - }, - { - "name": "billstclair/elm-websocket-client", - "summary": "WebSockets for Elm 0.19, using ports.", - "license": "MIT", - "version": "4.1.0" - }, - { - "name": "billstclair/elm-websocket-framework", - "summary": "elm-websocket-framework eases the creation of server-based applications.", - "license": "MIT", - "version": "13.0.2" - }, - { - "name": "billstclair/elm-websocket-framework-server", - "summary": "This is the server side of billstclair/elm-websocket-framework", - "license": "MIT", - "version": "14.1.3" - }, - { - "name": "billstclair/elm-xml-eeue56", - "summary": "XML parser, encoder/decoder and queries in Elm", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "bkuhlmann/form-validator", - "summary": "A customizable form validation component.", - "license": "Apache-2.0", - "version": "1.2.1" - }, - { - "name": "blissfully/elm-chartjs-webcomponent", - "summary": "Elm interface to include Chartjs in your UI via a web component.", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "bluedogtraining/bdt-elm", - "summary": "Elm modules commonly used at BDT", - "license": "BSD-3-Clause", - "version": "27.0.14" - }, - { - "name": "boianr/multilingual", - "summary": "Display text in multiple languages", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "bonzaico/murmur3", - "summary": "An implementation of the Murmur3 hash function for Elm", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "bowbahdoe/elm-history", - "summary": "A data structure for working with a non-empty progression of values", - "license": "Apache-2.0", - "version": "2.1.0" - }, - { - "name": "bowbahdoe/lime-reset", - "summary": "Consistent, cross-browser tags, powered by elm-css.", - "license": "Apache-2.0", - "version": "1.0.0" - }, - { - "name": "brandly/elm-dot-lang", - "summary": "Parse DOT Language files", - "license": "BSD-3-Clause", - "version": "1.1.5" - }, - { - "name": "brasilikum/is-password-known", - "summary": "Check passwords agains the haveIBeenPawned public API", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "brian-watkins/elm-procedure", - "summary": "Orchestrate commands, subscriptions, and tasks", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "brian-watkins/elm-spec", - "summary": "Describe the behavior of Elm programs", - "license": "MIT", - "version": "3.0.2" - }, - { - "name": "brianvanburken/elm-list-date", - "summary": "Helpers for working with List's of Int's representing a date", - "license": "BSD-3-Clause", - "version": "3.0.1" - }, - { - "name": "bundsol/boxed", - "summary": "An Elm library to encapsulate any primitive in a single type", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "burnable-tech/elm-ethereum", - "summary": "feed the tree some ether.", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "calions-app/app-object", - "summary": "Add model and cmd scoped to your entire application", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "calions-app/elm-placeholder-loading", - "summary": "Easily create placeholder loadings like Facebook's cards loading", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "calions-app/env", - "summary": "Parse envs", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "calions-app/jsonapi-http", - "summary": "Make HTTP requests with jsonapi decoding/encoding in Elm", - "license": "MIT", - "version": "1.3.0" - }, - { - "name": "calions-app/jsonapi-http-retry", - "summary": "Retry failed jsonapi requests with policies", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "calions-app/remote-resource", - "summary": "Handle foreground and background resources", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "calions-app/test-attribute", - "summary": "Add test attributes to your elements for end-to-end tests", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "camjc/elm-chart", - "summary": "An SVG chart library", - "license": "MIT", - "version": "2.0.3" - }, - { - "name": "capitalist/elm-octicons", - "summary": "Octicons for Elm", - "license": "BSD-3-Clause", - "version": "2.3.0" - }, - { - "name": "cappyzawa/elm-ui-colors", - "summary": "The color schemes using https://github.com/mdgriffith/elm-ui", - "license": "BSD-3-Clause", - "version": "2.1.1" - }, - { - "name": "cappyzawa/elm-ui-onedark", - "summary": "One Dark color scheme using https://github.com/mdgriffith/elm-ui", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "carlsson87/mod10", - "summary": "Calculate and Validate number sequences according to the Modulus 10 algorithm", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "carlsson87/mod11", - "summary": "Verify and calculate check digits according to the algorithm Modulus 11", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "carmonw/elm-number-to-words", - "summary": "Convert numbers into words", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "carpe/elm-data", - "summary": "Data Persistence library for Elm applications", - "license": "ISC", - "version": "4.0.5" - }, - { - "name": "carwow/elm-slider", - "summary": "Elm slider implementation", - "license": "BSD-3-Clause", - "version": "11.1.6" - }, - { - "name": "carwow/elm-slider-old", - "summary": "Elm slider implementation - old version", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "ccapndave/elm-eexl", - "summary": "Elm Expression Language: Simple context-based expression parser and evaluator", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "ccapndave/elm-flat-map", - "summary": "flatMap over various Elm types and parameter counts", - "license": "BSD-3-Clause", - "version": "1.2.0" - }, - { - "name": "ccapndave/elm-statecharts", - "summary": "Hierarchical statecharts for Elm", - "license": "BSD-3-Clause", - "version": "4.0.1" - }, - { - "name": "ccapndave/elm-translator", - "summary": "Type-safe internationalisation for Elm", - "license": "BSD-3-Clause", - "version": "2.2.0" - }, - { - "name": "ccapndave/elm-typed-tree", - "summary": "Strongly typed fixed level trees with a zipper.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "ccapndave/elm-update-extra", - "summary": "Convenience functions for working with update in Elm", - "license": "MIT", - "version": "4.0.0" - }, - { - "name": "ccapndave/focus", - "summary": "an experimental library for working with records", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "ceddlyburge/elm-bootstrap-starter-master-view", - "summary": "Creates Html similar to the Bootstrap Starter template", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "cedric-h/elm-google-sign-in", - "summary": "Elm bindings to the \"Sign in With Google\" widget", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "cedricss/elm-css-systems", - "summary": "Design systems based on elm-css, inspired by Tailwind.", - "license": "MIT", - "version": "3.1.0" - }, - { - "name": "cedricss/elm-form-machine", - "summary": "A state machine to handle forms in elm.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "cedricss/elm-progress-ring", - "summary": "Progress ring built elm/svg", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "chain-partners/elm-bignum", - "summary": "Elm library for arbitrary precision arithmetic", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "chazsconi/elm-phoenix-ports", - "summary": "Elm Phoenix with ports", - "license": "MIT", - "version": "1.1.1" - }, - { - "name": "chemirea/bulma-classes", - "summary": "All classes in Bulma CSS", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "chicode/lisa", - "summary": "A Lisp dialect with a parser and compiler to JS", - "license": "MIT", - "version": "5.1.5" - }, - { - "name": "choonkeat/elm-retry", - "summary": "Retry a task with list of retry policies", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "chrilves/elm-io", - "summary": "Monadic interface for commands and The Elm Architecture", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "circuithub/elm-dropdown", - "summary": "Component to serve as a foundation for custom dropdowns.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "clojj/elm-css-grid", - "summary": "Provides CSS Grid layout", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "cmditch/elm-bigint", - "summary": "Unlimited size integers", - "license": "MIT", - "version": "2.0.1" - }, - { - "name": "cmditch/elm-ethereum", - "summary": "feed the tree some ether.", - "license": "MIT", - "version": "5.0.0" - }, - { - "name": "coinop-logan/elm-format-number", - "summary": "Format numbers as pretty strings", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "coinop-logan/phace", - "summary": "Generate phaces: face-like identicons based on crypto addresses.", - "license": "MIT", - "version": "2.1.0" - }, - { - "name": "commonmind/elm-csexpr", - "summary": "Encode Canonical S-Expressions", - "license": "AGPL-3.0", - "version": "1.1.0" - }, - { - "name": "commonmind/elm-csv-encode", - "summary": "Encode CSV files", - "license": "AGPL-3.0", - "version": "1.0.1" - }, - { - "name": "correl/elm-paginated", - "summary": "A library for fetching data from paginated JSON REST APIs.", - "license": "MIT", - "version": "4.0.0" - }, - { - "name": "cuducos/elm-format-number", - "summary": "Format numbers as pretty strings", - "license": "BSD-3-Clause", - "version": "8.1.4" - }, - { - "name": "cultureamp/babel-elm-assets-plugin", - "summary": "Use Webpack-powered asset loading inside your Elm views", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "cultureamp/elm-css-modules-loader", - "summary": "Use Webpack-powered CSS Modules inside your Elm views", - "license": "BSD-3-Clause", - "version": "2.0.10" - }, - { - "name": "damienklinnert/elm-spinner", - "summary": "A highly configurable, efficiently rendered spinner component", - "license": "MIT", - "version": "3.0.2" - }, - { - "name": "danfishgold/base64-bytes", - "summary": "Convert between Base64 strings and bytes", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "danhandrea/elm-date-format", - "summary": "date format", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "danhandrea/elm-foo", - "summary": "cool package", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "danhandrea/elm-router", - "summary": "elm router", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "danhandrea/elm-time-extra", - "summary": "elm time extra", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "danmarcab/material-icons", - "summary": "Material Icons Library", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "danyx23/elm-mimetype", - "summary": "Modelling the most common Mime Types as union types", - "license": "BSD-3-Clause", - "version": "4.0.1" - }, - { - "name": "danyx23/elm-uuid", - "summary": "Create UUIDs (Version 4) - 128 bit pseudo-random identifiers", - "license": "BSD-3-Clause", - "version": "2.1.2" - }, - { - "name": "dasch/crockford", - "summary": "Encoding and decoding functions for Crockford's base32 encoding", - "license": "Apache-2.0", - "version": "3.0.0" - }, - { - "name": "dasch/levenshtein", - "summary": "Computes the Levenshtein distance between strings", - "license": "Apache-2.0", - "version": "1.0.3" - }, - { - "name": "dasch/parser", - "summary": "Parser combinators", - "license": "MIT", - "version": "3.0.0" - }, - { - "name": "data-viz-lab/elm-chart-builder", - "summary": "A high level data visualization package for Elm", - "license": "MIT", - "version": "3.1.5" - }, - { - "name": "davidcavazos/parser", - "summary": "An easy to use general-purpose parser", - "license": "MIT", - "version": "4.0.0" - }, - { - "name": "dawehner/elm-colorbrewer", - "summary": "Provides all colorbrewer colors in elm", - "license": "BSD-3-Clause", - "version": "4.1.1" - }, - { - "name": "debois/elm-dom", - "summary": "DOM traversal for Elm event-handlers", - "license": "Apache-2.0", - "version": "1.3.0" - }, - { - "name": "declension/elm-obj-loader", - "summary": "Load Wavefront .obj files in your WebGL scene.", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "dillonkearns/elm-cli-options-parser", - "summary": "Type-safe command line options parsing.", - "license": "BSD-3-Clause", - "version": "3.0.1" - }, - { - "name": "dillonkearns/elm-graphql", - "summary": "Type-safe GraphQL queries in Elm.", - "license": "BSD-3-Clause", - "version": "5.0.2" - }, - { - "name": "dillonkearns/elm-markdown", - "summary": "Pure Elm markdown parser with customizable rendering.", - "license": "BSD-3-Clause", - "version": "5.1.0" - }, - { - "name": "dillonkearns/elm-oembed", - "summary": "Embed Tweets, YouTube videos, Ellies, and more with a Custom Element.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "dillonkearns/elm-pages", - "summary": "A statically typed site generator.", - "license": "BSD-3-Clause", - "version": "6.0.0" - }, - { - "name": "dillonkearns/elm-rss", - "summary": "Generate rss feeds in elm.", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "dillonkearns/elm-sitemap", - "summary": "Generate sitemaps in elm.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "dividat/elm-identicon", - "summary": "Generate identicons", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "dividat/elm-semver", - "summary": "Semantic versions (Semver 2.0.0) library for Elm", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "dmy/elm-imf-date-time", - "summary": "RFC5322, RFC2822, RFC822 - Internet Message Format date & time strings", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "dmy/elm-pratt-parser", - "summary": "Pratt parser for expressions with operators precedence and associativity rules", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "doanythingfordethklok/snackbar", - "summary": "Snackbar lib", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "dosarf/elm-activemq", - "summary": "Elm wrapper for simple ActiveMQ REST API interaction", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "dosarf/elm-tree-view", - "summary": "Tree view control", - "license": "MIT", - "version": "3.0.0" - }, - { - "name": "dosarf/elm-yet-another-polling", - "summary": "Yet another polling package", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "drathier/elm-graph", - "summary": "Simple graph library.", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "drathier/elm-test-graph", - "summary": "Concurrency tests for Elm Test", - "license": "BSD-3-Clause", - "version": "2.0.2" - }, - { - "name": "drathier/elm-test-tables", - "summary": "Elm-test with table-driven tests. Your primary defence against regressions.", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "driebit/elm-css-breakpoint", - "summary": "Standard media queries for use with elm-css", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "driebit/elm-ginger", - "summary": "Ginger CMS integration", - "license": "BSD-3-Clause", - "version": "4.1.1" - }, - { - "name": "dullbananas/elm-touch", - "summary": "Handle touch movement and gestures", - "license": "MIT", - "version": "1.2.0" - }, - { - "name": "duncanmalashock/elm-music-theory", - "summary": "Work with musical concepts", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "dvberkel/microkanren", - "summary": "An Elm implementation of the μKanren language", - "license": "MIT", - "version": "1.2.0" - }, - { - "name": "dwyl/elm-criteria", - "summary": "A reusable dropdown/filters Elm package", - "license": "BSD-3-Clause", - "version": "2.2.1" - }, - { - "name": "dzuk-mutant/elm-html-styled-aria", - "summary": "Aria attributes that are easily compatible with elm-css", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "eddylane/elm-flip-animation", - "summary": "FLIP Style Animations in Elm", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "edkv/elm-generic-dict", - "summary": "Dict that works with any key types by converting keys to String", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "eelcoh/parser-indent", - "summary": "A parser for an indented list", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "eike/json-decode-complete", - "summary": "Decode JSON objects making sure that all fields are handled by your Elm code.", - "license": "Apache-2.0", - "version": "1.0.1" - }, - { - "name": "elm-athlete/athlete", - "summary": "Native looking apps builder on the web", - "license": "BSD-3-Clause", - "version": "6.0.2" - }, - { - "name": "elm-community/array-extra", - "summary": "Convenience functions for working with Array", - "license": "MIT", - "version": "2.3.0" - }, - { - "name": "elm-community/basics-extra", - "summary": "Additional basic functions", - "license": "MIT", - "version": "4.1.0" - }, - { - "name": "elm-community/dict-extra", - "summary": "Convenience functions for working with Dict", - "license": "MIT", - "version": "2.4.0" - }, - { - "name": "elm-community/easing-functions", - "summary": "Easing functions for animations.", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "elm-community/graph", - "summary": "Handling graphs the functional way.", - "license": "BSD-3-Clause", - "version": "6.0.0" - }, - { - "name": "elm-community/html-extra", - "summary": "Additional functions for working with Html", - "license": "MIT", - "version": "3.4.0" - }, - { - "name": "elm-community/intdict", - "summary": "Optimized dictionary specialization for Integers. Mirrors the dictionary API.", - "license": "MIT", - "version": "3.0.0" - }, - { - "name": "elm-community/json-extra", - "summary": "Convenience functions for working with JSON", - "license": "MIT", - "version": "4.3.0" - }, - { - "name": "elm-community/list-extra", - "summary": "Convenience functions for working with List", - "license": "MIT", - "version": "8.2.4" - }, - { - "name": "elm-community/list-split", - "summary": "Split lists into chunks", - "license": "MIT", - "version": "1.0.3" - }, - { - "name": "elm-community/maybe-extra", - "summary": "Convenience functions for working with Maybe", - "license": "MIT", - "version": "5.2.0" - }, - { - "name": "elm-community/random-extra", - "summary": "Extra functions for the core Random library", - "license": "BSD-3-Clause", - "version": "3.1.0" - }, - { - "name": "elm-community/result-extra", - "summary": "Convenience functions for working with Result", - "license": "MIT", - "version": "2.4.0" - }, - { - "name": "elm-community/string-extra", - "summary": "String helper functions for Elm", - "license": "BSD-3-Clause", - "version": "4.0.1" - }, - { - "name": "elm-community/typed-svg", - "summary": "A Typed SVG (Scalable Vector Graphics) builder", - "license": "BSD-3-Clause", - "version": "6.0.0" - }, - { - "name": "elm-community/undo-redo", - "summary": "Easy undo in Elm", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "elm-in-elm/compiler", - "summary": "Elm compiler written in Elm", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "elm-scotland/elm-tries", - "summary": "Trie data structure.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "elm-toulouse/cbor", - "summary": "RFC 7049 - Concise Binary Object Representation (CBOR)", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "elm-toulouse/float16", - "summary": "Provide extra binary Encoder and Decoder to and from float16", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "emilianobovetti/edit-distance", - "summary": "Algorithms for edit distance calculation", - "license": "BSD-3-Clause", - "version": "1.0.7" - }, - { - "name": "emilianobovetti/elm-yajson", - "summary": "Yet another JSON library inspired by Yojson", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "emptyflash/typed-svg", - "summary": "A Typed SVG (Scalable Vector Graphics) builder", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "ensoft/entrance", - "summary": "Framework for Elm apps using a Python 3.5+ asyncio backend", - "license": "MIT", - "version": "1.0.5" - }, - { - "name": "ericgj/elm-csv-decode", - "summary": "Decode CSV records to types", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "ericgj/elm-uri-template", - "summary": "Inject values from a Dict into a URI template", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "ericgj/elm-validation", - "summary": "Tools for validation, e.g. for form input", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "eriktim/elm-protocol-buffers", - "summary": "An Elm implementation of the Protocol Buffers specification", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "erlandsona/assoc-set", - "summary": "Set implemented using association-list-based Dict", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "erosson/number-suffix", - "summary": "Format large numbers in several human-readable ways, like swarmsim.com does.", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "etaque/elm-form", - "summary": "Live validation of form inputs in Elm", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "etaque/elm-response", - "summary": "Response utilities for Elm Architecture", - "license": "BSD-3-Clause", - "version": "3.1.0" - }, - { - "name": "etaque/elm-transit", - "summary": "Simple transition animation for switching between pages in a single page app.", - "license": "BSD-3-Clause", - "version": "7.0.5" - }, - { - "name": "etaque/elm-transit-style", - "summary": "CSS styles for animation on elm-transit.", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "f0i/iso8601", - "summary": "Format elm/time posix time as an ISO8601 strings for humans", - "license": "BSD-3-Clause", - "version": "1.1.1" - }, - { - "name": "f0i/statistics", - "summary": "Statistic functions for lists of Float and Int", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "fabhof/elm-ui-datepicker", - "summary": "A reasonable date picker for the awesome elm-ui.", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "fabiommendes/elm-iter", - "summary": "Lazy iterators for Elm.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "fapian/elm-html-aria", - "summary": "Aria attributes for Elm", - "license": "BSD-3-Clause", - "version": "1.4.0" - }, - { - "name": "fbonetti/elm-geodesy", - "summary": "Calculate distance and bearing", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "feathericons/elm-feather", - "summary": "Feather icons for elm", - "license": "BSD-3-Clause", - "version": "1.5.0" - }, - { - "name": "fedragon/elm-typed-dropdown", - "summary": "Dropdown that handles items of an arbitrary type `t`", - "license": "BSD-3-Clause", - "version": "2.0.2" - }, - { - "name": "fifth-postulate/combinatorics", - "summary": "providing common combinatoric primitives", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "fifth-postulate/elm-csv-decode", - "summary": "Decode CSV just like you decode JSON.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "fifth-postulate/priority-queue", - "summary": "a priority queue for Elm.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "finos/morphir-elm", - "summary": "Morphir Elm bindings", - "license": "Apache-2.0", - "version": "1.0.0" - }, - { - "name": "flowlang-cc/elm-audio-graph", - "summary": "Construct type safe JSON audio graphs with Elm.", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "folkertdev/elm-brotli", - "summary": "A Brotli decoder for elm", - "license": "BSD-3-Clause", - "version": "1.0.4" - }, - { - "name": "folkertdev/elm-cff", - "summary": "Decode compact font format font data into glyphs", - "license": "MPL-2.0", - "version": "1.0.0" - }, - { - "name": "folkertdev/elm-deque", - "summary": "A deque (double-ended queue) ", - "license": "BSD-3-Clause", - "version": "3.0.1" - }, - { - "name": "folkertdev/elm-flate", - "summary": "Deflate and inflate data (used in zip, png, woff)", - "license": "MPL-2.0", - "version": "2.0.4" - }, - { - "name": "folkertdev/elm-int64", - "summary": "Efficient 64-bit (unsigned) integer", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "folkertdev/elm-iris", - "summary": "The iris flower data set", - "license": "MPL-2.0", - "version": "1.0.0" - }, - { - "name": "folkertdev/elm-kmeans", - "summary": "K-means clustering in elm", - "license": "MPL-2.0", - "version": "1.0.0" - }, - { - "name": "folkertdev/elm-paragraph", - "summary": "Paragraph formatting in elm", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "folkertdev/elm-sha2", - "summary": "Fast elm/bytes based sha256 and sha512", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "folkertdev/elm-state", - "summary": "Threading state through computation", - "license": "BSD-3-Clause", - "version": "3.0.1" - }, - { - "name": "folkertdev/elm-tiny-inflate", - "summary": "Inflate data compressed with a deflate (zip, gzip, woff, png)", - "license": "MPL-2.0", - "version": "1.1.2" - }, - { - "name": "folkertdev/one-true-path-experiment", - "summary": "An experimental package for building paths and curves in elm", - "license": "BSD-3-Clause", - "version": "5.0.0" - }, - { - "name": "folkertdev/svg-path-lowlevel", - "summary": "Parser and pretty printer for SVG paths", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "folq/review-rgb-ranges", - "summary": "Provides elm-review rules to detect rgb values out of range", - "license": "BSD-3-Clause", - "version": "1.0.4" - }, - { - "name": "francescortiz/elm-queue", - "summary": "Process .", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "frandibar/elm-bootstrap", - "summary": "Elm Bootstrap is a comprehensive library for working with Twitter Bootstrap 4", - "license": "BSD-3-Clause", - "version": "2.1.0" - }, - { - "name": "frandibar/elm-font-awesome-5", - "summary": "A strongly typed Elm package for working with Font Awesome 5", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "frawa/elm-contour", - "summary": "Calculate contour level lines for a two-dimensional scalar field", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "fredcy/elm-parseint", - "summary": "Functions to convert String to Int or Int to String in various radixes", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "friedbrice/elm-teaching-tools", - "summary": "Tools for using Elm in the classroom.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "fustkilas/elm-airtable", - "summary": "Elm wrapper for the Airtable API", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "gdamjan/elm-identicon", - "summary": "Generate identicons", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "gege251/elm-validator-pipeline", - "summary": "Validate values and apply them to a user defined type.", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "genthaler/elm-enum", - "summary": "A library to facilitate using Elm union types as `Enum`s", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "getsurance/elm-street", - "summary": "Types for Google Places Autocomplete javascript api", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "getto-systems/elm-apply", - "summary": "apply utilities for html table", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "getto-systems/elm-command", - "summary": "utilities for Cmd", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "getto-systems/elm-field", - "summary": "form field utilities", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "getto-systems/elm-html-table", - "summary": "construct table structure for html", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "getto-systems/elm-http-header", - "summary": "http header utilities", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "getto-systems/elm-http-part", - "summary": "http part utilities", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "getto-systems/elm-json", - "summary": "json utilities", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "getto-systems/elm-sort", - "summary": "sort utilities for html table", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "getto-systems/elm-url", - "summary": "url utilities", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "getto-systems/getto-elm-command", - "summary": "utilities for Cmd", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "ggb/elm-bloom", - "summary": "Elm Bloom filter implementation using Murmur3", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "ggb/elm-sentiment", - "summary": "Wordlist-based sentiment analysis for Elm", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "ggb/elm-trend", - "summary": "Regression and time series forecasting", - "license": "MIT", - "version": "1.0.3" - }, - { - "name": "ggb/numeral-elm", - "summary": "Elm module for (advanced) number formatting. Numeral.js port to Elm", - "license": "MIT", - "version": "1.4.3" - }, - { - "name": "ggb/porterstemmer", - "summary": "Elm implementation of the classical Porter Stemming-algorithm.", - "license": "MIT", - "version": "1.0.3" - }, - { - "name": "ghivert/elm-graphql", - "summary": "GraphQL queries made easy in Elm!", - "license": "MIT", - "version": "5.0.0" - }, - { - "name": "gicentre/elm-vega", - "summary": "Declarative visualization with Elm and Vega", - "license": "BSD-3-Clause", - "version": "5.7.0" - }, - { - "name": "gicentre/elm-vegalite", - "summary": "Declarative visualization with Elm and Vega-Lite", - "license": "BSD-3-Clause", - "version": "3.1.1" - }, - { - "name": "gicentre/tidy", - "summary": "Tidy data shaping for Elm", - "license": "BSD-3-Clause", - "version": "1.5.0" - }, - { - "name": "gigobyte/iso8601-duration", - "summary": "Convert between ISO-8601 durations strings and Duration values", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "gingko/time-distance", - "summary": "Get approximate relative time in words", - "license": "MIT", - "version": "2.3.0" - }, - { - "name": "gipsy-king/radar-chart", - "summary": "An SVG radar chart", - "license": "BSD-3-Clause", - "version": "3.0.1" - }, - { - "name": "glasserc/elm-debouncer", - "summary": "A forked debouncer", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "glasserc/elm-form-result", - "summary": "Some utilities for handling forms", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "glasserc/elm-requested", - "summary": "A utility type for tracking requests", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "goilluminate/elm-fancy-daterangepicker", - "summary": "A fancy daterangepicker in elm.", - "license": "BSD-3-Clause", - "version": "6.0.0" - }, - { - "name": "gribouille/elm-treeview", - "summary": "ELM tree view component", - "license": "MPL-2.0", - "version": "2.0.1" - }, - { - "name": "groma84/elm-tachyons", - "summary": "Tachyons CSS classnames for Elm - updated fork", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "groteck/elm-iban", - "summary": "Iban validation in elm", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "grotsev/elm-debouncer", - "summary": "The most simple debouncer for Elm.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "guid75/ziplist", - "summary": "A collection data type that exposes a single current item", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "hakonrossebo/elmdocs", - "summary": "A meta package to be used to look up package docs from REPL", - "license": "MIT", - "version": "1.1.3" - }, - { - "name": "hallelujahdrive/elm-accordion", - "summary": "Simple Accordion for Elm", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "hallelujahdrive/elm-croppie", - "summary": "Croppie for Elm", - "license": "MIT", - "version": "1.0.3" - }, - { - "name": "harmboschloo/elm-dict-intersect", - "summary": "Provides intersections of multiple dictionaries", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "harmboschloo/elm-ecs", - "summary": "Using the Entity-Component-System (ECS) pattern in Elm", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "harmboschloo/graphql-to-elm", - "summary": "Generate Elm types/encoders/decoders from GraphQL queries", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "harmboschloo/graphql-to-elm-package", - "summary": "Generate Elm types/encoders/decoders from GraphQL queries. Support package.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "harrysarson/elm-complex", - "summary": "Use complex numbers in elm.", - "license": "MIT", - "version": "1.0.5" - }, - { - "name": "harrysarson/elm-decode-elmi", - "summary": "Decode binary elmi files.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "harrysarson/elm-hacky-unique", - "summary": "Trick elm into thinking otherwise identical objects are different.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "hecrj/composable-form", - "summary": "Build type-safe composable forms in Elm", - "license": "BSD-3-Clause", - "version": "8.0.1" - }, - { - "name": "hecrj/elm-slug", - "summary": "Type-safe slugs for Elm", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "hecrj/html-parser", - "summary": "Parse HTML 5 in Elm", - "license": "BSD-3-Clause", - "version": "2.4.0" - }, - { - "name": "hendore/elm-port-message", - "summary": "A clean convention for sending messages via ports.", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "henne90gen/elm-pandas-visualization", - "summary": "Allows to create graphs from a pandas DataFrame.", - "license": "BSD-3-Clause", - "version": "7.0.2" - }, - { - "name": "hercules-ci/elm-dropdown", - "summary": "Component to serve as a foundation for custom dropdowns.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "hercules-ci/elm-hercules-extras", - "summary": "Convenience functions not found in core elm packages", - "license": "Apache-2.0", - "version": "1.0.0" - }, - { - "name": "hermanverschooten/ip", - "summary": "Functions for working with IP addresses and subnets.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "hmsk/elm-css-modern-normalize", - "summary": "An Elm port of modern-normalize", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "holmusk/timed-cache", - "summary": "Work with cached values", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "hrldcpr/elm-cons", - "summary": "A non-empty list data structure.", - "license": "BSD-3-Clause", - "version": "3.1.0" - }, - { - "name": "humio/elm-dashboard", - "summary": "A dashboard layout library.", - "license": "Apache-2.0", - "version": "6.0.1" - }, - { - "name": "icidasset/elm-binary", - "summary": "Work with binary data.", - "license": "MIT", - "version": "2.1.0" - }, - { - "name": "icidasset/elm-material-icons", - "summary": "Material Icons Library", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "icidasset/elm-sha", - "summary": "SHA cryptographic hash functions.", - "license": "MIT", - "version": "2.0.2" - }, - { - "name": "imjoehaines/afinn-165-elm", - "summary": "The AFINN-165 dataset as an Elm dict", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "indicatrix/elm-chartjs-webcomponent", - "summary": "Elm types and pipeline functions to easily work with Chartjs", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "indicatrix/elm-input-extra", - "summary": "Commonly used Html element with extra functionality", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "inkuzmin/elm-multiselect", - "summary": "multiselect control", - "license": "BSD-3-Clause", - "version": "3.0.3" - }, - { - "name": "innoave/bounded-number", - "summary": "A type representing a bounded number", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "insurello/elm-swedish-bank-account-number", - "summary": "Validate Swedish bank account numbers", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "insurello/elm-ui-explorer", - "summary": "Explore and interact with UI components and pages you've created", - "license": "MIT", - "version": "1.1.1" - }, - { - "name": "iodevs/elm-history", - "summary": "This library helps with keeping history of states of your variables.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "iodevs/elm-validate", - "summary": "A Elm validation library", - "license": "BSD-3-Clause", - "version": "3.0.3" - }, - { - "name": "ir4y/elm-dnd", - "summary": "Reusable high level drag-and-drop library for elm", - "license": "MIT", - "version": "3.0.2" - }, - { - "name": "isaacseymour/deprecated-time", - "summary": "elm-community/elm-time updated to 0.19", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "isberg/elm-ann", - "summary": "Artifical Neural Network in Elm", - "license": "MIT", - "version": "1.6.2" - }, - { - "name": "itravel-de/elm-thumbor", - "summary": "Generate Thumbor URLs with Elm.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "ivadzy/bbase64", - "summary": "Padding insensitive, elm/bytes based, functional implementation of Base64", - "license": "MIT", - "version": "1.1.1" - }, - { - "name": "j-panasiuk/elm-ionicons", - "summary": "700+ SVG icons from Ionic framework", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "jabaraster/elm-views", - "summary": "elm view library.", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "jackfranklin/elm-parse-link-header", - "summary": "Parse HTTP Link headers", - "license": "BSD-3-Clause", - "version": "2.0.2" - }, - { - "name": "jackhp95/elm-mapbox", - "summary": "An Elm library for interactive maps", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "jackhp95/palit", - "summary": "Inspired by Tachyons, Tailwinds, and Elm-UI. Powered by elm-css.", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "jamesgary/elm-config-ui", - "summary": "Editor and code generator for live-editing config values in the browser", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "jamesmacaulay/elm-graphql", - "summary": "A GraphQL request builder and HTTP client", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "janjelinek/creditcard-validation", - "summary": "CreditCard validation", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "jaredramirez/elm-field", - "summary": "Handle input field modeling & validaton easily.", - "license": "BSD-3-Clause", - "version": "1.1.2" - }, - { - "name": "jaredramirez/elm-s3", - "summary": "Upload files to AWS S3 with Elm!", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "jasonliang-dev/elm-heroicons", - "summary": "Heroicons for elm", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "jasonliang512/elm-heroicons", - "summary": "Heroicons for elm", - "license": "MIT", - "version": "2.4.0" - }, - { - "name": "jfmengels/elm-lint", - "summary": "An Elm source code linter, to add additional guarantees to your project.", - "license": "BSD-3-Clause", - "version": "4.1.2" - }, - { - "name": "jfmengels/elm-lint-reporter", - "summary": "Formats the result of `elm-lint` in a nice human-readable way", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "jfmengels/elm-review", - "summary": "Analyzes Elm projects, to help find mistakes before your users find them.", - "license": "BSD-3-Clause", - "version": "2.3.3" - }, - { - "name": "jfmengels/elm-review-common", - "summary": "Provides common linting rules for elm-review", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "jfmengels/elm-review-debug", - "summary": "Provides elm-review rules to detect debug code", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "jfmengels/elm-review-documentation", - "summary": "Provides elm-review rules to help with the quality of the documentation", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "jfmengels/elm-review-reporter", - "summary": "Formats the result of `elm-review` in a nice human-readable way", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "jfmengels/elm-review-the-elm-architecture", - "summary": "Provides elm-review rules to improve your use of The Elm Architecture", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "jfmengels/elm-review-unused", - "summary": "Provides elm-review rules to detect unused elements in your Elm project", - "license": "BSD-3-Clause", - "version": "1.1.3" - }, - { - "name": "jfmengels/lint-debug", - "summary": "Lint plugin for `elm-lint` that provides rules to detect debug code.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "jfmengels/lint-unused", - "summary": "Lint plugin for `elm-lint` that detects unused code", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "jfmengels/review-common", - "summary": "DEPRECATED: Use jfmengels/elm-review-common instead.", - "license": "BSD-3-Clause", - "version": "1.2.3" - }, - { - "name": "jfmengels/review-debug", - "summary": "DEPRECATED: Use jfmengels/elm-review-debug instead.", - "license": "BSD-3-Clause", - "version": "2.0.3" - }, - { - "name": "jfmengels/review-documentation", - "summary": "DEPRECATED: Use jfmengels/elm-review-documentation instead.", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "jfmengels/review-tea", - "summary": "DEPRECATED: Use jfmengels/elm-review-the-elm-architecture instead.", - "license": "BSD-3-Clause", - "version": "1.1.3" - }, - { - "name": "jfmengels/review-unused", - "summary": "DEPRECATED: Use jfmengels/elm-review-unused instead.", - "license": "BSD-3-Clause", - "version": "2.1.5" - }, - { - "name": "jgrenat/elm-html-test-runner", - "summary": "Run and display Elm tests as HTML", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "jgrenat/regression-testing", - "summary": "A tool to generate regression tests for your Elm application", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "jigargosar/elm-material-color", - "summary": "Material Colors", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "jims/html-parser", - "summary": "Parse HTML 5 in Elm", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "jinjor/elm-contextmenu", - "summary": "Flexible context menu for Elm", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "jinjor/elm-debounce", - "summary": "Yet another debouncer for Elm.", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "jinjor/elm-diff", - "summary": "A diff implementation for Elm", - "license": "BSD-3-Clause", - "version": "1.0.6" - }, - { - "name": "jinjor/elm-insertable-key", - "summary": "Generates a new key between two keys", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "jinjor/elm-map-debug", - "summary": "Trying to reproduce Map.! problem", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "jinjor/elm-req", - "summary": "HTTP Requests", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "jinjor/elm-xml-parser", - "summary": "XML Parser for Elm", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "jjagielka/select-menu", - "summary": "Select/menu using browser focus. Minimal approach: ~200 lines of code.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "jjant/elm-comonad-zipper", - "summary": "Provides an implementation of the List Zipper and its comonadic interface.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "jjant/elm-dict", - "summary": "Dictionary that can store any type, without configuration.", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "jjant/elm-printf", - "summary": "Provides an implementation of printf", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "jluckyiv/elm-utc-date-strings", - "summary": "Convert UTC date strings to and from Posix times", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "jmg-duarte/group-list", - "summary": "Functions for List grouping", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "joakin/elm-canvas", - "summary": "2D drawing API based on DOM Canvas, but nicer", - "license": "BSD-3-Clause", - "version": "4.2.1" - }, - { - "name": "joakin/elm-grid", - "summary": "2d and 3d grid folding. Loop over a coordinate space, build a result", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "johnathanbostrom/elm-dice", - "summary": "Dice Rolling", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "jonathanfishbein1/complex-numbers", - "summary": "complex numbers in elm", - "license": "BSD-3-Clause", - "version": "7.0.1" - }, - { - "name": "jonathanfishbein1/elm-equal", - "summary": "DEPRECATED An equal package", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "jonathanfishbein1/elm-field", - "summary": "Mathematical Field ", - "license": "BSD-3-Clause", - "version": "5.0.0" - }, - { - "name": "jonathanfishbein1/elm-monoid", - "summary": "DEPRECATED A pack of monoids in the category of endofunctors", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "jonathanfishbein1/elm-semigroup", - "summary": "DEPRECATED A semigroup package", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "jonathanfishbein1/linear-algebra", - "summary": "linear algebra in elm", - "license": "BSD-3-Clause", - "version": "9.0.0" - }, - { - "name": "joneshf/elm-tagged", - "summary": "A library to help with compile time verification", - "license": "BSD-3-Clause", - "version": "2.1.1" - }, - { - "name": "joneshf/elm-these", - "summary": "Values that can be one of two types or both at once", - "license": "BSD-3-Clause", - "version": "1.2.1" - }, - { - "name": "jonoabroad/commatosed", - "summary": "A CSV parser based on RFC-4180", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "jordymoos/pilf", - "summary": "Elm flip but then reversed to hide its existence ", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "jorgengranseth/elm-string-format", - "summary": "Avoid ugly String concatenation with pipable interpolation", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "joshforisha/elm-html-entities", - "summary": "HTML entities for Elm", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "joshforisha/elm-inflect", - "summary": "Pluralize/singularize strings", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "jouderianjr/elm-dialog", - "summary": "A modal dialog widget for Elm.", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "jouderianjr/elm-loaders", - "summary": "Elm version of pure SVG loaders created by Sam Herbert", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "jpagex/elm-material-color", - "summary": "Material Colors", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "json-tools/json-schema", - "summary": "JSON Schema for elm", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "json-tools/json-value", - "summary": "Reading and manipulation with json values", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "justgage/tachyons-elm", - "summary": "Tachyons CSS classnames for Elm", - "license": "MIT", - "version": "4.1.3" - }, - { - "name": "justgook/alt-linear-algebra", - "summary": "A linear algebra library for fast vector and matrix math", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "justgook/elm-game-logic", - "summary": "An ECS library for Elm. Provides an easy way to build a full game", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "justgook/elm-image", - "summary": "A library for building runtime images in elm", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "justgook/elm-tiled", - "summary": "A library for building decoders for Tiled levels.", - "license": "BSD-3-Clause", - "version": "3.0.2" - }, - { - "name": "justgook/elm-webdriver", - "summary": "Webdriver", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "justgook/webgl-playground", - "summary": "A fun way to create pictures,animations and games in WebGL https://git.io/Jv3wc", - "license": "BSD-3-Clause", - "version": "4.1.3" - }, - { - "name": "justgook/webgl-shape", - "summary": "2D wrapper for WebGL entities", - "license": "BSD-3-Clause", - "version": "2.0.2" - }, - { - "name": "justinmimbs/date", - "summary": "Work with dates without times or zones", - "license": "BSD-3-Clause", - "version": "3.2.1" - }, - { - "name": "justinmimbs/time-extra", - "summary": "Extra functions for working with Posix times from elm/time", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "justinmimbs/timezone-data", - "summary": "Time zone data from the IANA Time Zone Database for using with elm/time", - "license": "BSD-3-Clause", - "version": "3.0.1" - }, - { - "name": "justinmimbs/tzif", - "summary": "Decode TZif files into Time.Zone values", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "justinrassier/elm-contribution-graph", - "summary": "A GitHub-style SVG contribution graph written in pure Elm", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "jweir/charter", - "summary": "Generate inline charts and sparklines", - "license": "BSD-3-Clause", - "version": "1.2.2" - }, - { - "name": "jweir/elm-iso8601", - "summary": "ISO8601 time parsing.", - "license": "MIT", - "version": "7.0.0" - }, - { - "name": "jweir/sparkline", - "summary": "Generate inline graphs - sparklines", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "jwheeler-cp/elm-form", - "summary": "Live validation of form inputs in Elm", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "jzxhuang/http-extras", - "summary": "Improved HTTP - detailed responses, convenience functions, and API mocking.", - "license": "BSD-3-Clause", - "version": "2.1.0" - }, - { - "name": "kalutheo/elm-ui-explorer", - "summary": "Explore your views and their states in a single tool.", - "license": "BSD-3-Clause", - "version": "8.1.0" - }, - { - "name": "kirchner/elm-selectize", - "summary": "Selectize-like dropdown menu with autocompletion", - "license": "Apache-2.0", - "version": "2.0.7" - }, - { - "name": "kirchner/form-validation", - "summary": "Create validatable forms", - "license": "Apache-2.0", - "version": "1.1.1" - }, - { - "name": "kkpoon/elm-auth0", - "summary": "Auth0 data types and helper functions", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "kkpoon/elm-auth0-urlparser", - "summary": "UrlParser for Auth0 token callback", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "kkpoon/elm-echarts", - "summary": "echarts-webcomponent option types", - "license": "BSD-3-Clause", - "version": "10.0.1" - }, - { - "name": "klazuka/elm-json-tree-view", - "summary": "Shows JSON data as an expandable HTML tree", - "license": "MIT", - "version": "2.1.0" - }, - { - "name": "kmbn/elm-hotkeys", - "summary": "Event handlers for sending content and triggering actions with keypresses.", - "license": "MIT", - "version": "1.1.1" - }, - { - "name": "korutx/elm-rut", - "summary": "A component for handling the Chilean Unique Roll Tributary", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "koskoci/elm-sortable-table", - "summary": "Tiny fork.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "krisajenkins/elm-astar", - "summary": "The A* pathfinding algorithm.", - "license": "MIT", - "version": "2.1.3" - }, - { - "name": "krisajenkins/elm-exts", - "summary": "A collection of functions missing from the core.", - "license": "MIT", - "version": "28.0.0" - }, - { - "name": "krisajenkins/remotedata", - "summary": "Tools for fetching data from remote sources (incl. HTTP).", - "license": "MIT", - "version": "6.0.1" - }, - { - "name": "ktonon/elm-crypto", - "summary": "Compute HMAC with SHA-2 hash functions or use SHA-2 directly.", - "license": "MIT", - "version": "1.1.2" - }, - { - "name": "ktonon/elm-jsonwebtoken", - "summary": "JSON Web Token encoder and decoder (JWT)", - "license": "MIT", - "version": "1.0.4" - }, - { - "name": "ktonon/elm-test-extra", - "summary": "Extra expectations, fuzzers, testers and describers", - "license": "MIT", - "version": "2.0.1" - }, - { - "name": "ktonon/elm-word", - "summary": "Unsigned 32 or 64 bit integers and related operations", - "license": "MIT", - "version": "2.1.2" - }, - { - "name": "kuon/elm-hsluv", - "summary": "HSLuv implementation in pure Elm", - "license": "BSD-3-Clause", - "version": "3.0.2" - }, - { - "name": "kuon/elm-string-normalize", - "summary": "String normalization utils", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "kuzminadya/mogeefont", - "summary": "A bitmap font for the Mogee game", - "license": "MIT", - "version": "2.0.1" - }, - { - "name": "kuzzmi/elm-gravatar", - "summary": "Get Gravatar image source URL or DOM image element", - "license": "MIT", - "version": "2.0.2" - }, - { - "name": "kyasu1/elm-ulid", - "summary": "Generate ULID - Universally Unique Lexicographically Sortable Identifier", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "labzero/elm-google-geocoding", - "summary": "Elm interface to the Google Geocoding API", - "license": "BSD-3-Clause", - "version": "5.0.0" - }, - { - "name": "larribas/elm-multi-input", - "summary": "A multi-value input (for emails, tags, etc.)", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "laserpants/elm-burrito-update", - "summary": "Monadic-style interface for state updates in Elm.", - "license": "BSD-3-Clause", - "version": "3.0.4" - }, - { - "name": "laserpants/elm-update-pipeline", - "summary": "Interface for sequential composition of updates in the style of pipelines.", - "license": "BSD-3-Clause", - "version": "1.3.2" - }, - { - "name": "lattyware/elm-fontawesome", - "summary": "FontAwesome 5 SVG icons.", - "license": "MIT", - "version": "5.0.0" - }, - { - "name": "lattyware/elm-json-diff", - "summary": "Compute JSON patches by comparing two JSON values.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "layflags/elm-bic", - "summary": "This library is for parsing Business Identifier Codes (BIC) used in banking", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "lazamar/dict-parser", - "summary": "Create a fast parser to match dictionary keys.", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "league/difference-list", - "summary": "DList is a representation of lists with an efficient append operation", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "league/unique-id", - "summary": "Pure generation of unique identifiers in Elm.", - "license": "MIT", - "version": "2.0.1" - }, - { - "name": "lemol/ant-design-icons-elm", - "summary": "Ant Design Icons for Elm", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "lemol/ant-design-icons-elm-ui", - "summary": "Ant Design Icons for Elm UI", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "leojpod/elm-apex-charts-link", - "summary": "describe your apex charts in elm to use via ports/web-components", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "leojpod/review-no-empty-html-text", - "summary": "elm-review rule to favour `html-extra` and forbid `Html.text \"\"`", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "leonardanyer/elm-combox", - "summary": "Custom dropdown based on elm-selectize", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "lettenj61/elm-reusable-html", - "summary": "Minimal reusable functions to enrich common use of elm/html", - "license": "Apache-2.0", - "version": "2.0.0" - }, - { - "name": "linuss/smooth-scroll", - "summary": "Smooth scrolling animation to a DOM element", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "lionar/select", - "summary": "A simple material design select box", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "ljuglaret/combinatoire", - "summary": "combinatoire", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "ljuglaret/fraction", - "summary": "fractions", - "license": "BSD-3-Clause", - "version": "2.0.3" - }, - { - "name": "lovasoa/elm-csv", - "summary": "A CSV parser.", - "license": "MIT", - "version": "1.1.7" - }, - { - "name": "lovasoa/elm-rolling-list", - "summary": "A circular buffer (infinite cyclic list)", - "license": "BSD-3-Clause", - "version": "1.1.4" - }, - { - "name": "lucamug/elm-box-drawing", - "summary": "A semiserious library to create drawing using Box Drwaing Characters", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "lucamug/style-framework", - "summary": "A style framework built on top of elm-ui.", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "lxierita/no-typealias-constructor-call", - "summary": "elm-review rule to disallows using type alias record constructor", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "lynn/elm-arithmetic", - "summary": "Library for integer arithmetic: primes, bases, divisors, gcd...", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "lynn/elm-ordinal", - "summary": "Elm library for making ordinal strings (1st 2nd 3rd)", - "license": "BSD-3-Clause", - "version": "1.0.4" - }, - { - "name": "m-mullins/elm-console", - "summary": "Wrap JS console object", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "m00qek/elm-cpf", - "summary": "Manipulate and generate brazilian CPFs", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "maca/crdt-replicated-graph", - "summary": "Implementation of a CRDT algorithm for distributed graphs", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "maca/crdt-replicated-tree", - "summary": "Implementation of a CRDT algorithm for replicated trees", - "license": "BSD-3-Clause", - "version": "5.0.0" - }, - { - "name": "malaire/elm-safe-int", - "summary": "A safe 54-bit signed integer", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "malaire/elm-uint64", - "summary": "64-bit unsigned integer with division", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "malinoff/elm-jwt", - "summary": "Decode, encode, verify JSON web tokens", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "malinoff/elm-uniform", - "summary": "Build type-safe composable, universal forms", - "license": "AGPL-3.0", - "version": "2.0.0" - }, - { - "name": "marcosh/elm-html-to-unicode", - "summary": "elm library to escape and unescape html", - "license": "MIT", - "version": "1.0.3" - }, - { - "name": "marshallformula/arrangeable-list", - "summary": "Ordered List that allows moving an item around within the list", - "license": "BSD-3-Clause", - "version": "1.1.1" - }, - { - "name": "marshallformula/elm-swiper", - "summary": "Utilities to help detect & manage 'swipe' events on mobile devices", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "matheus23/elm-figma-api", - "summary": "Figma web API endpoints, data structures and helper functions.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "matheus23/elm-markdown-transforms", - "summary": "For creating advanced elm-markdown renderers (e.g. with model access).", - "license": "MIT", - "version": "2.0.1" - }, - { - "name": "matken11235/html-styled-extra", - "summary": "Additional functions for working with Html.Styled", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "matthewsj/elm-ordering", - "summary": "A library for writing custom comparison functions", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "mbr/elm-extras", - "summary": "Highly experimental general purpose standard library extension", - "license": "MIT", - "version": "2.0.1" - }, - { - "name": "mc706/toasty-bootstrap", - "summary": "A configurable toast notification package for Elm, using elm-bootstrap alerts.", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "mcordova47/elm-natural-ordering", - "summary": "Sort strings with numbers and diacritics \\\\\\\"naturally\\\\\\\"", - "license": "BSD-3-Clause", - "version": "1.0.5" - }, - { - "name": "melon-love/elm-gab-api", - "summary": "elm-gab-api implements communication with api.gab.com", - "license": "MIT", - "version": "11.0.0" - }, - { - "name": "mercurymedia/elm-datetime-picker", - "summary": "a datetime picker component", - "license": "MIT", - "version": "3.0.0" - }, - { - "name": "mercurymedia/elm-message-toast", - "summary": "a small popup to display informative messages that disappear automatically", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "mercurymedia/elm-smart-select", - "summary": "an advanced select component", - "license": "MIT", - "version": "3.0.3" - }, - { - "name": "mgold/elm-animation", - "summary": "Easy but powerful animation of values over time", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "mgold/elm-geojson", - "summary": "Decode GeoJSON (RFC 7946) into an Elm data structure", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "mgold/elm-nonempty-list", - "summary": "head and tail without the Maybe", - "license": "BSD-3-Clause", - "version": "4.1.0" - }, - { - "name": "mgree/trampoline", - "summary": "a library for running potentially non-terminating applications", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "mhoare/elm-stack", - "summary": "A package which implements a Stack", - "license": "BSD-3-Clause", - "version": "3.1.2" - }, - { - "name": "miaEngiadina/elm-ghost", - "summary": "Access to the ghost-blog api with elm.", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "mikaxyz/elm-cropper", - "summary": "Fluid width/responsive image cropper UI", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "miniBill/date-format-languages", - "summary": "Companion package for ryannhg/date-format. This package contains the languages.", - "license": "BSD-3-Clause", - "version": "1.2.1" - }, - { - "name": "miniBill/elm-avataaars", - "summary": "A library for rendering cute SVG avatars, art by Pablo Stanley", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "miniBill/elm-codec", - "summary": "Build JSON encoders and decoders with minimal boilerplate", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "misoton665/elm-return", - "summary": "Return type helps building a structure for scalable programming on TEA.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "miyamoen/bibliopola", - "summary": "UI Catalog for Elm applications built by elm-ui inspired by Storybook", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "miyamoen/elm-command-pallet", - "summary": "A command pallet UI. Register messages, then execute with it.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "miyamoen/elm-origami", - "summary": "CSS in Elm package forked from rtfeldman/elm-css", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "miyamoen/select-list", - "summary": "A non-empty list and one of zipper.", - "license": "BSD-3-Clause", - "version": "4.1.0" - }, - { - "name": "miyamoen/tree-with-zipper", - "summary": "Rose tree (multiway tree) with zipper.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "monty5811/elm-bible", - "summary": "Parse Bible References.", - "license": "MIT", - "version": "2.0.2" - }, - { - "name": "mpizenberg/elm-pointer-events", - "summary": "Mouse, Touch, Pointer, Wheel and Drag events", - "license": "MPL-2.0", - "version": "4.0.2" - }, - { - "name": "mrdimosthenis/turtle-graphics", - "summary": "This package lets us command a relative cursor (turtle) to draw vector graphics", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "mrpinsky/elm-keyed-list", - "summary": "A library for encapsulating keyed lists in Elm", - "license": "BSD-3-Clause", - "version": "1.1.2" - }, - { - "name": "mthadley/elm-hash-routing", - "summary": "Create single page applications with hash-routing", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "mthadley/elm-typewriter", - "summary": "A typewriter effect in Elm!", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "mtonnberg/refinement-proofs", - "summary": "Refinement types in elm", - "license": "BSD-3-Clause", - "version": "5.0.1" - }, - { - "name": "munksgaard/char-extra", - "summary": "Additional functions for working with Chars", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "munksgaard/elm-charts", - "summary": "Bar and pie charts", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "munksgaard/elm-data-uri", - "summary": "Parse and handle data URIs in Elm", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "munksgaard/elm-media-type", - "summary": "Parse and handle media types in Elm", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "mweiss/elm-rte-toolkit", - "summary": "Build rich text editors in Elm", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "nathanjohnson320/base58", - "summary": "Base58 encoding/decoding library", - "license": "MIT", - "version": "2.0.1" - }, - { - "name": "nathanjohnson320/elm-ui-components", - "summary": "A set of reusable UI elements", - "license": "MIT", - "version": "2.3.0" - }, - { - "name": "ndortega/elm-gtranslate", - "summary": "A free & type-safe way to interact with the Google Translation API", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "newlandsvalley/elm-binary-base64", - "summary": "Experimental library for Binary Base64", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "newmana/chroma-elm", - "summary": "An Elm native version of chroma.js for color maps, color spaces and operations.", - "license": "Apache-2.0", - "version": "18.0.2" - }, - { - "name": "nicmr/compgeo", - "summary": "An Elm library for computational geometry", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "niho/json-schema-form", - "summary": "Generate validating forms from JSON schemas.", - "license": "MIT", - "version": "3.0.0" - }, - { - "name": "niho/personal-number", - "summary": "A library for parsing personal numbers.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "nik-garmash/elm-test", - "summary": "Just testing", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "nikita-volkov/hashing-containers", - "summary": "Hashing-based container datastructures", - "license": "MIT", - "version": "2.1.0" - }, - { - "name": "nikita-volkov/typeclasses", - "summary": "Explicit typeclasses", - "license": "MIT", - "version": "1.8.0" - }, - { - "name": "nishiurahiroki/elm-simple-pagenate", - "summary": "A elm simple pagenater.", - "license": "MIT", - "version": "1.0.3" - }, - { - "name": "nonpop/elm-purl", - "summary": "A tiny library for building parameterized URLs", - "license": "BSD-3-Clause", - "version": "3.0.1" - }, - { - "name": "norpan/elm-html5-drag-drop", - "summary": "This library handles dragging and dropping using the HTML5 API", - "license": "BSD-3-Clause", - "version": "3.1.4" - }, - { - "name": "norpan/elm-json-patch", - "summary": "JSON Patch implementation", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "not1602/elm-feather", - "summary": "Feather icons for elm", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "oaalto/time-values", - "summary": "Functions from/to time values to their sencond/minute/hour... parts.", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "opvasger/amr", - "summary": "Automatic message-replay for Elm!", - "license": "BSD-3-Clause", - "version": "3.1.1" - }, - { - "name": "opvasger/msg-replay", - "summary": "Automatic message-replay for Elm!", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "owanturist/elm-avl-dict", - "summary": "Elm Dict and Set with custom keys based on AVL trees", - "license": "BSD-3-Clause", - "version": "2.1.0" - }, - { - "name": "owanturist/elm-bulletproof", - "summary": "Make your components Bulletproof", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "owanturist/elm-graphql", - "summary": "Build GraphQL schemes and decoder together", - "license": "MIT", - "version": "5.0.0" - }, - { - "name": "owanturist/elm-queue", - "summary": "Elm Queue", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "owanturist/elm-union-find", - "summary": "The Union Find data structure", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "ozmat/elm-forms", - "summary": "A library for building and validating Forms in Elm", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "ozmat/elm-validation", - "summary": "A library for building basic Validation in Elm", - "license": "BSD-3-Clause", - "version": "2.2.1" - }, - { - "name": "ozyinc/elm-sortable-table-with-row-id", - "summary": "Sortable tables for whatever data you want to display.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "pablen/toasty", - "summary": "A configurable toast notification package for Elm apps.", - "license": "BSD-3-Clause", - "version": "1.2.0" - }, - { - "name": "pablohirafuji/elm-markdown", - "summary": "Pure Elm markdown parsing and rendering.", - "license": "BSD-3-Clause", - "version": "2.0.5" - }, - { - "name": "pablohirafuji/elm-qrcode", - "summary": "QR Code encoder and renderer.", - "license": "BSD-3-Clause", - "version": "4.0.1" - }, - { - "name": "pablohirafuji/elm-syntax-highlight", - "summary": "Syntax highlighting in Elm", - "license": "Apache-2.0", - "version": "3.4.0" - }, - { - "name": "panthershark/email-parser", - "summary": "Safely parse and validate email addresses", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "panthershark/snackbar", - "summary": "Snackbar lib", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "pascallemerrer/elm-advanced-grid", - "summary": "A dynamically configurable grid", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "pastelInc/elm-validator", - "summary": "Provide a validator for elm", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "paul-freeman/elm-ipfs", - "summary": "Interact with data stored on IPFS nodes.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "pd-andy/elm-audio-graph", - "summary": "Construct JSON representations of Web Audio graphs in Elm.", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "pd-andy/elm-limiter", - "summary": "Throttling and debouncing for messages and values.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "pd-andy/elm-web-audio", - "summary": "An elm/html-like library for the Web Audio API.", - "license": "MIT", - "version": "2.3.0" - }, - { - "name": "pd-andy/tuple-extra", - "summary": "A collection of helpers for the Tuple type.", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "pdamoc/elm-hashids", - "summary": "Elm port of the Hashids library", - "license": "MIT", - "version": "1.0.4" - }, - { - "name": "pehota/elm-zondicons", - "summary": "Zondicons SVG Icons Library", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "periodic/elm-csv", - "summary": "Parse CSV strings", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "perzanko/elm-loading", - "summary": "Simple loading spinners animated in CSS for your elm application.", - "license": "MIT", - "version": "2.0.4" - }, - { - "name": "peterszerzo/elm-arborist", - "summary": "Tree-editing interface for Elm", - "license": "BSD-3-Clause", - "version": "8.5.0" - }, - { - "name": "peterszerzo/elm-json-tree-view", - "summary": "Shows JSON data as an expandable HTML tree", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "peterszerzo/elm-natural-ui", - "summary": "Easy-going, opinionated UI kit", - "license": "BSD-3-Clause", - "version": "16.0.0" - }, - { - "name": "peterszerzo/elm-porter", - "summary": "Elm ports' wrapper for uncomplicated request-response-style communication", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "peterszerzo/line-charts", - "summary": "A library for plotting lines charts in SVG.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "pfcoperez/elm-playground", - "summary": "A fun way to create pictures, animations, and games.", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "phollyer/elm-phoenix-websocket", - "summary": "A websocket client for use with the Elixir Phoenix framework.", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "phollyer/elm-ui-colors", - "summary": "Colors for https://github.com/mdgriffith/elm-ui", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "pilatch/elm-chess", - "summary": "Elm library for computer chess", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "pilatch/flip", - "summary": "Just the old flip function", - "license": "ISC", - "version": "1.0.0" - }, - { - "name": "prikhi/bootstrap-gallery", - "summary": "A Modal Gallery for Bootstrap v4", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "prikhi/decimal", - "summary": "Arbitrary-Precision Decimal Numbers", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "prikhi/http-tasks", - "summary": "Convenience Functions for Building HTTP Requests as Tasks", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "prikhi/paginate", - "summary": "Pagination with Built-In Fetching & Caching of Requests", - "license": "BSD-3-Clause", - "version": "6.1.0" - }, - { - "name": "primait/forms", - "summary": "Form library in Elm", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "primait/pyxis-components", - "summary": "Prima Design System components", - "license": "BSD-3-Clause", - "version": "6.0.0" - }, - { - "name": "proda-ai/elm-css", - "summary": "Typed CSS in Elm.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "proda-ai/elm-dropzone", - "summary": "Elm 0.19 fork of github.com/danyx23/elm-dropzone drop zone convenience library", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "proda-ai/elm-logger", - "summary": "A logger that can be used in optimized mode", - "license": "MIT", - "version": "1.0.5" - }, - { - "name": "proda-ai/elm-svg-loader", - "summary": "Elm 0.19 fork github.com/rnons/elm-svg-loader inline SVG document", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "proda-ai/formatting", - "summary": "Elm 0.19 of github.com/krisajenkins/formatting type-safe string formatting lib", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "proda-ai/murmur3", - "summary": "An implementation of the Murmur3 hash function for Elm", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "prozacchiwawa/elm-json-codec", - "summary": "A library for composing json encoders and decoders simultaneously in elm", - "license": "MIT", - "version": "3.3.1" - }, - { - "name": "prozacchiwawa/elm-keccak", - "summary": "Keccak and SHA3 hashes", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "prozacchiwawa/elm-urlbase64", - "summary": "Wraps base64 into a url safe base64 implementation", - "license": "MIT", - "version": "1.0.3" - }, - { - "name": "pzp1997/assoc-list", - "summary": "Dictionary with custom keys implemented using association lists", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "r-k-b/complex", - "summary": "An elm module for working with complex numbers.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "r-k-b/elm-interval", - "summary": "Intervals for Elm. Handles ∩, -, ∪ with any combo of open / closed bounds.", - "license": "MIT", - "version": "2.1.1" - }, - { - "name": "r-k-b/map-accumulate", - "summary": "\\\"map accumulate\\\" helpers for Elm.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "r-k-b/no-float-ids", - "summary": "A rule for elm-review that discourages Float types for \"Id\"s.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "r-k-b/no-long-import-lines", - "summary": "A rule for elm-review that discourages long one-line Imports.", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "rametta/elm-datetime-picker", - "summary": "a datetime picker component", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "renanpvaz/elm-bem", - "summary": "BEM utilities for classes", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "reserve-protocol/elm-i3166-data", - "summary": "ISO 3166 data including country names, flags sprite sheet, dial codes, and more", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "reserve-protocol/elm-iso3166-data", - "summary": "ISO 3166 data including country names, flags sprite sheet, dial codes, and more", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "rgrempel/elm-http-decorators", - "summary": "Additional functions for use with elm-http", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "rielas/measurement", - "summary": "Working with Google Analytics Measurement Protocol", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "ringvold/elm-iso8601-date-strings", - "summary": "Convert ISO8601 date strings to and from Posix times", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "rix501/elm-sortable-table", - "summary": "Sortable tables for whatever data you want to display.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "rjbma/elm-listview", - "summary": "A package for viewing a list of data", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "rl-king/elm-gallery", - "summary": "Image and general purpose content gallery/slider.", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "rl-king/elm-index", - "summary": "A taggable wrapper around Int", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "rl-king/elm-inview", - "summary": "Get information on an element position relative to the current viewport", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "rl-king/elm-iso3166-country-codes", - "summary": "Convert to and from alpha2, alpha3, id and country names in 23 languages", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "rl-king/elm-masonry", - "summary": "Masonry column grid layout.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "rl-king/elm-modular-scale", - "summary": "Generate proportionally related values to use as font-sizes, line-height, ect.", - "license": "BSD-3-Clause", - "version": "2.0.2" - }, - { - "name": "rl-king/elm-scroll-to", - "summary": "Smoothly scroll to DOM elements with a spring animation", - "license": "BSD-3-Clause", - "version": "1.1.1" - }, - { - "name": "rluiten/elm-text-search", - "summary": "Full text index engine in Elm language inspired by lunr.js.", - "license": "BSD-3-Clause", - "version": "5.0.1" - }, - { - "name": "rluiten/mailcheck", - "summary": "Mailcheck suggest corrections to errors in email addresses", - "license": "BSD-3-Clause", - "version": "5.0.2" - }, - { - "name": "rluiten/sparsevector", - "summary": "A simple sparse vector implementation", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "rluiten/stemmer", - "summary": "Stemmer is an Elm language implementation of Porter Stemmer", - "license": "BSD-3-Clause", - "version": "1.0.4" - }, - { - "name": "rluiten/stringdistance", - "summary": "Calculate a metric indicating the string distance between two strings", - "license": "BSD-3-Clause", - "version": "1.0.4" - }, - { - "name": "rluiten/trie", - "summary": "Elm implementation of Trie data structure", - "license": "BSD-3-Clause", - "version": "2.0.3" - }, - { - "name": "robinheghan/elm-deque", - "summary": "A double-ended queue for Elm", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "robinheghan/elm-phone-numbers", - "summary": "A package for validating phone numbers. Based on google's libphonenumber.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "robinheghan/elm-warrior", - "summary": "Hone your Elm skills by programming the intelligence of a brave warrior.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "robinheghan/keyboard-events", - "summary": "Functions for triggering messages when a certain key is pressed", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "robinheghan/murmur3", - "summary": "An implementation of the Murmur3 hash function for Elm", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "robotmay/s3-direct-file-upload", - "summary": "Abstract module for directly uploading files to S3, compatible with Shrine.rb", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "rogeriochaves/elm-test-bdd-style", - "summary": "BDD-style matchers for elm-test", - "license": "MIT", - "version": "6.1.2" - }, - { - "name": "romariolopezc/elm-hmac-sha1", - "summary": "Compute HMAC with SHA-1 hash function", - "license": "MIT", - "version": "3.0.0" - }, - { - "name": "romariolopezc/elm-sentry", - "summary": "Send reports to Sentry", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "romstad/elm-chess", - "summary": "Elm library for computer chess", - "license": "BSD-3-Clause", - "version": "1.1.2" - }, - { - "name": "ronanyeah/calendar-dates", - "summary": "generate calendar dates", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "ronanyeah/helpers", - "summary": "Convenience functions.", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "rsignavong/elm-cloudinary-video-player", - "summary": "An Elm wrapper for the Cloudinary Video Player", - "license": "MIT", - "version": "1.0.4" - }, - { - "name": "rsignavong/elm-leaflet-map", - "summary": "An Elm wrapper for the Leaflet map", - "license": "MIT", - "version": "4.1.0" - }, - { - "name": "rundis/elm-bootstrap", - "summary": "Elm Bootstrap is a comprehensive library for working with Twitter Bootstrap 4", - "license": "BSD-3-Clause", - "version": "5.2.0" - }, - { - "name": "russelldavies/elm-range", - "summary": "Model and operate on a range of values", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "russelldavies/elm-ui-searchbox", - "summary": "An Elm UI searchbox (searchable autocomplete dropdown)", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "ryan-senn/elm-compiler-error-sscce", - "summary": "Exploring compiler error", - "license": "BSD-3-Clause", - "version": "6.0.0" - }, - { - "name": "ryan-senn/elm-google-domains", - "summary": "List of country specific Google domains", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "ryan-senn/elm-readability", - "summary": "Readability scores in Elm. New Dale–Chall & Coleman-Liau readability formula", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "ryan-senn/elm-tlds", - "summary": "List of Top Level Domains (TLDs) taken from iana.org.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "ryan-senn/stellar-elm-sdk", - "summary": "Elm SDK for the Stellar Cryptocurrency", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "ryannhg/date-format", - "summary": "A reliable way to format dates and times with Elm.", - "license": "BSD-3-Clause", - "version": "2.3.0" - }, - { - "name": "ryannhg/elm-spa", - "summary": "a way to build single page apps with Elm", - "license": "BSD-3-Clause", - "version": "4.1.1" - }, - { - "name": "ryota0624/date-controll", - "summary": "date controll", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "ryry0/elm-numeric", - "summary": "A matrix library for elm", - "license": "Apache-2.0", - "version": "1.0.0" - }, - { - "name": "s6o/elm-recase", - "summary": "ReCase - convert a string from any case to any case", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "samhstn/time-format", - "summary": "format time in elm with ease", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "samueldple/material-color", - "summary": "Material colours to work with rtfeldman/elm-css", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "samuelstevens/elm-csv", - "summary": "Parse CSV files according to RFC 4180", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "sashaafm/eetf", - "summary": "Parser for encoding and decoding Erlang External Term Format", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "savardd/elm-time-travel", - "summary": "An experimental debugger for Elm", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "sh4r3m4n/elm-piano", - "summary": "Simple piano wigdet for Elm programming language", - "license": "GPL-3.0", - "version": "2.0.3" - }, - { - "name": "shamansir/elm-aframe", - "summary": "Elm integration for A-Frame", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "shnewto/pgn", - "summary": "A library for parsing \"Portable Game Notation\" (PGN) for standard chess.", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "shootacean/elm-wareki", - "summary": "A convert date to wareki.", - "license": "MIT", - "version": "1.1.1" - }, - { - "name": "showell/binary-tree-diagram", - "summary": "draws binary trees (with SVG)", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "showell/dict-dot-dot", - "summary": "core Dict exposing Dict(..), NColor(..)", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "showell/elm-data-util", - "summary": "generate Elm code (by example)", - "license": "MIT", - "version": "2.1.0" - }, - { - "name": "showell/meta-elm", - "summary": "Elm Runtime in Elm", - "license": "MIT", - "version": "5.1.0" - }, - { - "name": "simonh1000/elm-colorpicker", - "summary": "A simple color-picker widget, using svg", - "license": "MIT", - "version": "2.0.2" - }, - { - "name": "simonh1000/elm-jwt", - "summary": "Supports decoding Jwt tokens & making authenticated HTTP requests", - "license": "BSD-3-Clause", - "version": "7.1.0" - }, - { - "name": "simonh1000/elm-sliding-menus", - "summary": "Animated menus for mobile-first webapps", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "simplystuart/elm-scroll-to", - "summary": "Scroll to a position in an animated way", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "sjorn3/elm-fields", - "summary": "First class field names for elm", - "license": "BSD-3-Clause", - "version": "2.0.0" - }, - { - "name": "skyqrose/assoc-list-extra", - "summary": "Convenience functions for working with pzp1997/assoc-list Dict", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "slashmili/phoenix-socket", - "summary": "Elm client for Phoenix channels", - "license": "MIT", - "version": "4.2.1" - }, - { - "name": "sli/autotable", - "summary": "A simple but extensible datatable.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "smucode/elm-flat-colors", - "summary": "🎨 280 handpicked colors in 14 palettes for Elm UI, elm/html and others", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "solcates/elm-openid-connect", - "summary": "A OpenID Connect implementation", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "sparksp/elm-review-always", - "summary": "elm-review rule to forbid `always`.", - "license": "MIT", - "version": "1.0.4" - }, - { - "name": "sparksp/elm-review-camelcase", - "summary": "elm-review rule to ensure your code uses camelCase.", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "sparksp/elm-review-forbidden-words", - "summary": "elm-review rule to forbid certain words in comments.", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "sparksp/elm-review-ports", - "summary": "Provides elm-review rules to detect problematic elm ports.", - "license": "MIT", - "version": "1.3.0" - }, - { - "name": "special-elektronik/elm-autocomplete", - "summary": "Autcomplete search input in elm", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "specialelektronik/elm-autocomplete", - "summary": "Autcomplete search input in elm", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "sporto/elm-countries", - "summary": "A searchable ISO 3166-1 based list of country names, codes and emoji flags", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "sporto/elm-select", - "summary": "A selection input with auto-completion", - "license": "MIT", - "version": "3.2.0" - }, - { - "name": "sporto/polylinear-scale", - "summary": "Create a polylinear scale", - "license": "MIT", - "version": "1.0.2" - }, - { - "name": "sporto/qs", - "summary": "Parse and serialize query strings", - "license": "MIT", - "version": "1.2.0" - }, - { - "name": "sporto/time-distance", - "summary": "Get time distance in words", - "license": "MIT", - "version": "1.0.1" - }, - { - "name": "stephenreddek/elm-emoji", - "summary": "Seamlessly display emoji in Elm applications.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "stephenreddek/elm-range-slider", - "summary": "An elm package for range sliders", - "license": "BSD-3-Clause", - "version": "3.0.2" - }, - { - "name": "stephenreddek/elm-time-picker", - "summary": "An elm implementation of a time picker", - "license": "BSD-3-Clause", - "version": "1.0.4" - }, - { - "name": "stil4m/elm-syntax", - "summary": "Elm Syntax in Elm: for parsing and writing Elm in Elm", - "license": "MIT", - "version": "7.1.3" - }, - { - "name": "stil4m/structured-writer", - "summary": "Helpful writer for structured data: indent, seperators ect", - "license": "MIT", - "version": "1.0.3" - }, - { - "name": "stoeffel/editable", - "summary": "Editable represents a value that can be read-only or editable.", - "license": "BSD-3-Clause", - "version": "2.0.1" - }, - { - "name": "stoeffel/elm-verify", - "summary": "Validate a model into a structure that makes forbidden states impossible.", - "license": "BSD-3-Clause", - "version": "5.0.0" - }, - { - "name": "stoeffel/resetable", - "summary": "A datastructure that allows you to reset its value to an original value.", - "license": "BSD-3-Clause", - "version": "1.0.3" - }, - { - "name": "stoeffel/set-extra", - "summary": "Convenience functions for working with Set.", - "license": "BSD-3-Clause", - "version": "1.2.3" - }, - { - "name": "sudo-rushil/elm-cards", - "summary": "A library of playing card data types and card game scoring", - "license": "MIT", - "version": "3.2.0" - }, - { - "name": "supermacro/elm-antd", - "summary": "elm-antd is an implementation of the Ant design system for Elm", - "license": "MIT", - "version": "4.1.0" - }, - { - "name": "surprisetalk/elm-bulma", - "summary": "Bulma HTML/CSS Framework for Elm", - "license": "MIT", - "version": "6.1.6" - }, - { - "name": "swiftengineer/elm-data", - "summary": "Data Persistence library for Elm applications", - "license": "ISC", - "version": "6.0.0" - }, - { - "name": "tad-lispy/springs", - "summary": "A rough model of a mass attached to a spring. Good for animations.", - "license": "GPL-3.0", - "version": "1.0.5" - }, - { - "name": "thaterikperson/elm-strftime", - "summary": "Format dates and times following http://strftime.org.", - "license": "BSD-3-Clause", - "version": "2.0.2" - }, - { - "name": "the-sett/ai-search", - "summary": "AI Search for Elm", - "license": "BSD-3-Clause", - "version": "5.0.0" - }, - { - "name": "the-sett/auth-elm", - "summary": "Elm auth module for interacting with the-sett/auth-service.", - "license": "BSD-3-Clause", - "version": "3.0.5" - }, - { - "name": "the-sett/decode-generic", - "summary": "Generic JSON decoder.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "the-sett/elm-auth", - "summary": "Elm authentication API pattern with multiple implementations.", - "license": "BSD-3-Clause", - "version": "5.0.0" - }, - { - "name": "the-sett/elm-auth-aws", - "summary": "Elm auth module for interacting with the-sett/auth-service.", - "license": "BSD-3-Clause", - "version": "5.0.0" - }, - { - "name": "the-sett/elm-aws-cognito", - "summary": "Elm client for the AWS Cognito services for managing user identities.", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "the-sett/elm-aws-core", - "summary": "Make authenticated REST requests to AWS services.", - "license": "Apache-2.0", - "version": "8.1.0" - }, - { - "name": "the-sett/elm-color", - "summary": "A simple color module for Elm.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "the-sett/elm-enum", - "summary": "Support for enums in Elm.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "the-sett/elm-error-handling", - "summary": "Tools for more elaborate error handling than Result.", - "license": "BSD-3-Clause", - "version": "2.2.0" - }, - { - "name": "the-sett/elm-localstorage", - "summary": "elm-localstorage provides persistence via JavaScript's localStorage.", - "license": "MIT", - "version": "3.0.0" - }, - { - "name": "the-sett/elm-one-many", - "summary": "A one-to-many data structure implementation for Elm.", - "license": "BSD-3-Clause", - "version": "1.1.0" - }, - { - "name": "the-sett/elm-pretty-printer", - "summary": "A combinator library for pretty printing.", - "license": "BSD-3-Clause", - "version": "3.0.0" - }, - { - "name": "the-sett/elm-refine", - "summary": "Support for refinement types (and enums) in Elm.", - "license": "BSD-3-Clause", - "version": "1.4.0" - }, - { - "name": "the-sett/elm-serverless", - "summary": "Use Elm with the serverless framework (deploy to AWS, Azure, Google)", - "license": "MIT", - "version": "2.0.1" - }, - { - "name": "the-sett/elm-state-machines", - "summary": "Modelling state machines in Elm.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "the-sett/elm-string-case", - "summary": "A library for converting between camel-case, snake-case, kebab-case and so on.", - "license": "BSD-3-Clause", - "version": "1.0.2" - }, - { - "name": "the-sett/elm-syntax-dsl", - "summary": "A DSL for creating Elm syntax trees and pretty printing Elm source code.", - "license": "BSD-3-Clause", - "version": "5.2.0" - }, - { - "name": "the-sett/elm-update-helper", - "summary": "Helper functions for nesting updates in Elm.", - "license": "BSD-3-Clause", - "version": "1.4.1" - }, - { - "name": "the-sett/json-optional", - "summary": "Helpers for working with optional fields in JSON.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "the-sett/lazy-list", - "summary": "Lazy lists for Elm.", - "license": "BSD-3-Clause", - "version": "1.1.1" - }, - { - "name": "the-sett/parser-recoverable", - "summary": "An extension of elm/parser with error recovery.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "the-sett/salix", - "summary": "A language for code generation.", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "the-sett/salix-aws-spec", - "summary": "Transform an AWS service specification into Salix.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "the-sett/svg-text-fonts", - "summary": "Render strings using OpenType Fonts into SVG paths.", - "license": "BSD-3-Clause", - "version": "4.0.0" - }, - { - "name": "the-sett/tea-tree", - "summary": "Tea Trees are Rose Trees that work better with The Elm Architecture.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "the-sett/the-sett-laf", - "summary": "Look and Feel for The Sett.", - "license": "BSD-3-Clause", - "version": "6.2.0" - }, - { - "name": "thematthopkins/elm-test-journey", - "summary": "elm application testing", - "license": "MIT", - "version": "3.0.0" - }, - { - "name": "thought2/elm-interactive", - "summary": "Provides time, mouse, window resize and keyboard events.", - "license": "BSD-3-Clause", - "version": "1.0.0" - }, - { - "name": "thought2/elm-wikimedia-commons", - "summary": "An Elm library for dealing with the Wikimedia Commons API.", - "license": "BSD-3-Clause", - "version": "1.0.1" - }, - { - "name": "thoughtbot/expirable", - "summary": "Manage values that expire after a period of time", - "license": "MIT", - "version": "2.0.0" - }, - { - "name": "timjs/elm-collage", - "summary": "Create interactive vector graphics and position them relative to each other", - "license": "BSD-3-Clause", - "version": "2.0.2" - }, - { - "name": "timo-weike/generic-collections", - "summary": "Dict that works with any key types by converting keys to String", - "license": "Apache-2.0", - "version": "1.0.0" - }, - { - "name": "tiziano88/elm-protobuf", - "summary": "Google Protocol Buffers runtime library", - "license": "MIT", - "version": "3.0.0" - }, - { - "name": "tj/elm-svg-loaders", - "summary": "Animated SVG loading indicators.", - "license": "MIT", - "version": "1.0.0" - }, - { - "name": "toastal/either", - "summary": "Either for representing a structure with two types", - "license": "BSD-3-Clause", - "version": "3.5.2" - }, - { - "name": "toastal/endo", - "summary": "Endo for Elm: a simple endomorphism to simplify code", - "license": "MIT", - "version": "1.1.0" - }, - { - "name": "toastal/mailto", - "summary": "mailto DSL to make mailto links easy", - "license": "MIT", - "version": "5.0.0" - }, - { - "name": "toastal/select-prism", - "summary": "Use a Monocle Prism to handle