├── .envrc ├── .github ├── dependabot.yml └── workflows │ ├── ci.yml │ └── release.yml ├── .gitignore ├── CHANGELOG.md ├── Cargo.lock ├── Cargo.toml ├── LICENSE ├── README.md ├── examples ├── all_in_one.ts ├── all_in_one.yaml ├── all_in_one │ └── Main │ │ └── Ports.elm ├── jwt_schema.ts ├── jwt_schema.yaml └── jwt_schema │ └── Main │ ├── Flags.elm │ └── Ports.elm ├── flake.lock ├── flake.nix ├── ideal.d.ts ├── package.json ├── scripts └── update_readme_files.py ├── src ├── elm.rs ├── formatting.rs ├── inflected_string.rs ├── main.rs ├── schema.rs └── typescript.rs └── tests ├── cli_tests.rs └── cmd ├── huge_record.in └── elm-duet.json ├── huge_record.out ├── elm.ts └── src │ └── Main │ └── Flags.elm ├── huge_record.stderr ├── huge_record.stdout ├── huge_record.toml ├── multi_module.in └── elm-duet.json ├── multi_module.out ├── elm.ts └── src │ ├── A │ └── Flags.elm │ └── B │ ├── B2 │ └── Flags.elm │ └── Flags.elm ├── multi_module.stderr ├── multi_module.stdout ├── multi_module.toml ├── port_roundtrip.in └── elm-duet.json ├── port_roundtrip.out ├── elm.ts └── src │ └── Main │ └── Ports.elm ├── port_roundtrip.stderr ├── port_roundtrip.stdout ├── port_roundtrip.toml ├── tinyping.in └── elm-duet.yaml ├── tinyping.out ├── elm.ts └── src │ └── Main │ ├── Flags.elm │ └── Ports.elm ├── tinyping.stderr ├── tinyping.stdout └── tinyping.toml /.envrc: -------------------------------------------------------------------------------- 1 | use flake || use nix 2 | -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/ci.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/.github/workflows/ci.yml -------------------------------------------------------------------------------- /.github/workflows/release.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/.github/workflows/release.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- 1 | /node_modules 2 | /result 3 | /target 4 | -------------------------------------------------------------------------------- /CHANGELOG.md: -------------------------------------------------------------------------------- 1 | # 0.1.0 - 2024-05-07 2 | 3 | Initial release 4 | -------------------------------------------------------------------------------- /Cargo.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/Cargo.lock -------------------------------------------------------------------------------- /Cargo.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/Cargo.toml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/LICENSE -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/README.md -------------------------------------------------------------------------------- /examples/all_in_one.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/examples/all_in_one.ts -------------------------------------------------------------------------------- /examples/all_in_one.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/examples/all_in_one.yaml -------------------------------------------------------------------------------- /examples/all_in_one/Main/Ports.elm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/examples/all_in_one/Main/Ports.elm -------------------------------------------------------------------------------- /examples/jwt_schema.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/examples/jwt_schema.ts -------------------------------------------------------------------------------- /examples/jwt_schema.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/examples/jwt_schema.yaml -------------------------------------------------------------------------------- /examples/jwt_schema/Main/Flags.elm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/examples/jwt_schema/Main/Flags.elm -------------------------------------------------------------------------------- /examples/jwt_schema/Main/Ports.elm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/examples/jwt_schema/Main/Ports.elm -------------------------------------------------------------------------------- /flake.lock: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/flake.lock -------------------------------------------------------------------------------- /flake.nix: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/flake.nix -------------------------------------------------------------------------------- /ideal.d.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/ideal.d.ts -------------------------------------------------------------------------------- /package.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/package.json -------------------------------------------------------------------------------- /scripts/update_readme_files.py: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/scripts/update_readme_files.py -------------------------------------------------------------------------------- /src/elm.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/src/elm.rs -------------------------------------------------------------------------------- /src/formatting.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/src/formatting.rs -------------------------------------------------------------------------------- /src/inflected_string.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/src/inflected_string.rs -------------------------------------------------------------------------------- /src/main.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/src/main.rs -------------------------------------------------------------------------------- /src/schema.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/src/schema.rs -------------------------------------------------------------------------------- /src/typescript.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/src/typescript.rs -------------------------------------------------------------------------------- /tests/cli_tests.rs: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cli_tests.rs -------------------------------------------------------------------------------- /tests/cmd/huge_record.in/elm-duet.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/huge_record.in/elm-duet.json -------------------------------------------------------------------------------- /tests/cmd/huge_record.out/elm.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/huge_record.out/elm.ts -------------------------------------------------------------------------------- /tests/cmd/huge_record.out/src/Main/Flags.elm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/huge_record.out/src/Main/Flags.elm -------------------------------------------------------------------------------- /tests/cmd/huge_record.stderr: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/cmd/huge_record.stdout: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/huge_record.stdout -------------------------------------------------------------------------------- /tests/cmd/huge_record.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/huge_record.toml -------------------------------------------------------------------------------- /tests/cmd/multi_module.in/elm-duet.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/multi_module.in/elm-duet.json -------------------------------------------------------------------------------- /tests/cmd/multi_module.out/elm.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/multi_module.out/elm.ts -------------------------------------------------------------------------------- /tests/cmd/multi_module.out/src/A/Flags.elm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/multi_module.out/src/A/Flags.elm -------------------------------------------------------------------------------- /tests/cmd/multi_module.out/src/B/B2/Flags.elm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/multi_module.out/src/B/B2/Flags.elm -------------------------------------------------------------------------------- /tests/cmd/multi_module.out/src/B/Flags.elm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/multi_module.out/src/B/Flags.elm -------------------------------------------------------------------------------- /tests/cmd/multi_module.stderr: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/cmd/multi_module.stdout: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/multi_module.stdout -------------------------------------------------------------------------------- /tests/cmd/multi_module.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/multi_module.toml -------------------------------------------------------------------------------- /tests/cmd/port_roundtrip.in/elm-duet.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/port_roundtrip.in/elm-duet.json -------------------------------------------------------------------------------- /tests/cmd/port_roundtrip.out/elm.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/port_roundtrip.out/elm.ts -------------------------------------------------------------------------------- /tests/cmd/port_roundtrip.out/src/Main/Ports.elm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/port_roundtrip.out/src/Main/Ports.elm -------------------------------------------------------------------------------- /tests/cmd/port_roundtrip.stderr: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/cmd/port_roundtrip.stdout: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/port_roundtrip.stdout -------------------------------------------------------------------------------- /tests/cmd/port_roundtrip.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/port_roundtrip.toml -------------------------------------------------------------------------------- /tests/cmd/tinyping.in/elm-duet.yaml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/tinyping.in/elm-duet.yaml -------------------------------------------------------------------------------- /tests/cmd/tinyping.out/elm.ts: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/tinyping.out/elm.ts -------------------------------------------------------------------------------- /tests/cmd/tinyping.out/src/Main/Flags.elm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/tinyping.out/src/Main/Flags.elm -------------------------------------------------------------------------------- /tests/cmd/tinyping.out/src/Main/Ports.elm: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/tinyping.out/src/Main/Ports.elm -------------------------------------------------------------------------------- /tests/cmd/tinyping.stderr: -------------------------------------------------------------------------------- 1 | -------------------------------------------------------------------------------- /tests/cmd/tinyping.stdout: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/tinyping.stdout -------------------------------------------------------------------------------- /tests/cmd/tinyping.toml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/BrianHicks/elm-duet/HEAD/tests/cmd/tinyping.toml --------------------------------------------------------------------------------