├── .github ├── CODEOWNERS ├── contributing.md ├── dependabot.yml └── workflows │ ├── api-docs.yml │ └── test.yml ├── .gitignore ├── .spi.yml ├── LICENSE ├── Package.swift ├── README.md ├── Sources └── LeafKit │ ├── Character+Identities.swift │ ├── Docs.docc │ ├── Resources │ │ └── vapor-leafkit-logo.svg │ ├── index.md │ └── theme-settings.json │ ├── LeafAST.swift │ ├── LeafCache │ ├── DefaultLeafCache.swift │ └── LeafCache.swift │ ├── LeafConfiguration.swift │ ├── LeafData │ ├── LeafData.swift │ ├── LeafDataRepresentable.swift │ └── LeafDataStorage.swift │ ├── LeafError.swift │ ├── LeafLexer │ ├── LeafLexer.swift │ ├── LeafParameterTypes.swift │ ├── LeafRawTemplate.swift │ └── LeafToken.swift │ ├── LeafParser │ ├── LeafParameter.swift │ └── LeafParser.swift │ ├── LeafRenderer.swift │ ├── LeafSerialize │ ├── Dictionary+LeafData.swift │ ├── LeafContext.swift │ ├── LeafSerializer.swift │ └── ParameterResolver.swift │ ├── LeafSource │ ├── LeafSource.swift │ ├── LeafSources.swift │ └── NIOLeafFiles.swift │ ├── LeafSyntax │ ├── LeafSyntax.swift │ └── LeafTag.swift │ └── String+HTMLEscape.swift └── Tests └── LeafKitTests ├── GHTests ├── VaporLeaf.swift └── VaporLeafKit.swift ├── HTMLEscapeTests.swift ├── LeafErrorTests.swift ├── LeafKitTests.swift ├── LeafSerializerTests.swift ├── LeafTests.swift ├── TagTests.swift ├── Templates ├── SubTemplates │ └── test.leaf └── test.leaf └── TestHelpers.swift /.github/CODEOWNERS: -------------------------------------------------------------------------------- 1 | * @0xTim @gwynne 2 | -------------------------------------------------------------------------------- /.github/contributing.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/.github/contributing.md -------------------------------------------------------------------------------- /.github/dependabot.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/.github/dependabot.yml -------------------------------------------------------------------------------- /.github/workflows/api-docs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/.github/workflows/api-docs.yml -------------------------------------------------------------------------------- /.github/workflows/test.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/.github/workflows/test.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/.gitignore -------------------------------------------------------------------------------- /.spi.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/.spi.yml -------------------------------------------------------------------------------- /LICENSE: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/LICENSE -------------------------------------------------------------------------------- /Package.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Package.swift -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/README.md -------------------------------------------------------------------------------- /Sources/LeafKit/Character+Identities.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/Character+Identities.swift -------------------------------------------------------------------------------- /Sources/LeafKit/Docs.docc/Resources/vapor-leafkit-logo.svg: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/Docs.docc/Resources/vapor-leafkit-logo.svg -------------------------------------------------------------------------------- /Sources/LeafKit/Docs.docc/index.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/Docs.docc/index.md -------------------------------------------------------------------------------- /Sources/LeafKit/Docs.docc/theme-settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/Docs.docc/theme-settings.json -------------------------------------------------------------------------------- /Sources/LeafKit/LeafAST.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafAST.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafCache/DefaultLeafCache.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafCache/DefaultLeafCache.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafCache/LeafCache.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafCache/LeafCache.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafConfiguration.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafConfiguration.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafData/LeafData.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafData/LeafData.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafData/LeafDataRepresentable.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafData/LeafDataRepresentable.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafData/LeafDataStorage.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafData/LeafDataStorage.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafError.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafError.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafLexer/LeafLexer.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafLexer/LeafLexer.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafLexer/LeafParameterTypes.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafLexer/LeafParameterTypes.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafLexer/LeafRawTemplate.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafLexer/LeafRawTemplate.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafLexer/LeafToken.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafLexer/LeafToken.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafParser/LeafParameter.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafParser/LeafParameter.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafParser/LeafParser.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafParser/LeafParser.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafRenderer.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafRenderer.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafSerialize/Dictionary+LeafData.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafSerialize/Dictionary+LeafData.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafSerialize/LeafContext.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafSerialize/LeafContext.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafSerialize/LeafSerializer.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafSerialize/LeafSerializer.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafSerialize/ParameterResolver.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafSerialize/ParameterResolver.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafSource/LeafSource.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafSource/LeafSource.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafSource/LeafSources.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafSource/LeafSources.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafSource/NIOLeafFiles.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafSource/NIOLeafFiles.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafSyntax/LeafSyntax.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafSyntax/LeafSyntax.swift -------------------------------------------------------------------------------- /Sources/LeafKit/LeafSyntax/LeafTag.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/LeafSyntax/LeafTag.swift -------------------------------------------------------------------------------- /Sources/LeafKit/String+HTMLEscape.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Sources/LeafKit/String+HTMLEscape.swift -------------------------------------------------------------------------------- /Tests/LeafKitTests/GHTests/VaporLeaf.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Tests/LeafKitTests/GHTests/VaporLeaf.swift -------------------------------------------------------------------------------- /Tests/LeafKitTests/GHTests/VaporLeafKit.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Tests/LeafKitTests/GHTests/VaporLeafKit.swift -------------------------------------------------------------------------------- /Tests/LeafKitTests/HTMLEscapeTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Tests/LeafKitTests/HTMLEscapeTests.swift -------------------------------------------------------------------------------- /Tests/LeafKitTests/LeafErrorTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Tests/LeafKitTests/LeafErrorTests.swift -------------------------------------------------------------------------------- /Tests/LeafKitTests/LeafKitTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Tests/LeafKitTests/LeafKitTests.swift -------------------------------------------------------------------------------- /Tests/LeafKitTests/LeafSerializerTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Tests/LeafKitTests/LeafSerializerTests.swift -------------------------------------------------------------------------------- /Tests/LeafKitTests/LeafTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Tests/LeafKitTests/LeafTests.swift -------------------------------------------------------------------------------- /Tests/LeafKitTests/TagTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Tests/LeafKitTests/TagTests.swift -------------------------------------------------------------------------------- /Tests/LeafKitTests/Templates/SubTemplates/test.leaf: -------------------------------------------------------------------------------- 1 | Leaf Template 2 | -------------------------------------------------------------------------------- /Tests/LeafKitTests/Templates/test.leaf: -------------------------------------------------------------------------------- 1 | Leaf Template 2 | -------------------------------------------------------------------------------- /Tests/LeafKitTests/TestHelpers.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/vapor/leaf-kit/HEAD/Tests/LeafKitTests/TestHelpers.swift --------------------------------------------------------------------------------