Commit Graph
100 Commits
Author SHA1 Message Date
Adam Fowler 8fba85e28c doc comment update 2024-09-19 11:28:57 +01:00
Adam Fowler b6736b2ce8 Changes required by docc 2024-09-13 17:32:50 +01:00
Adam Fowler 01b1f21ed6 Dynamic names support (#49)
* Dynamic names support

* Add support for dynamic names in parent tags

* Support all dynamic names spec

* Swift 5.8 compile fix
2024-08-28 08:31:06 +01:00
Adam Fowler c3beb4a327 Use URLSession.shared.data in tests in swift 6 or later (#44) 2024-08-20 19:45:19 +01:00
Adam Fowler f13bd839a1 Add FoundationNetworking to Windows 2024-07-20 18:47:40 +01:00
Adam Fowler cde358e364 Fixes for swift 5.8 (#42)
* Fixes for swift 5.8

* Add 5.8 to CI

* More fixes
2024-07-19 10:52:49 +01:00
Adam Fowler 5bb66ac425 Add development support for reloading templates when you render them (#30)
* Add support for reloading templates when you render them

* comment

* Ensure reload is only available in DEBUG

* move preprocessor block

* swift format

* MustacheTemplate.init?(filename:) internal

* Only pass reload flag down in DEBUG builds

* Rebase with main
2024-07-16 15:46:57 +01:00
Adam Fowler 7689de0a42 Fix issues from Inheritance spec (#36)
* Separate inheritance block and expansion

* Catch top level partial definition, and block newlines

* Add testTrailingNewLines to verify output of trailing newlines in partials

* Remove comment

* If block,partial has indentation add indent for first line

* Re-enable full sections spec

* withBlockExpansion

* Get indentation of blocks correct
2024-07-15 09:36:15 +01:00
Adam Fowler d642832ffe Make deprecations unavailable (#31) 2024-07-03 09:30:21 +01:00
Adam Fowler 7ea5b5d11a Update documentation links 2024-03-22 12:34:03 +00:00
Adam Fowler 2663d13ea7 Rename package to swift-mustache (#27)
* Rename package to swift-mustache

* Update CI
2024-03-15 07:28:57 +00:00
Adam Fowler bdfa05391a Remove HB prefix, make Parser private (#26) 2024-03-11 22:07:05 +00:00
Adam Fowler f029081b61 Project template updates (#25)
* Project template updates

* More changes

* run swiftformat
2024-03-08 12:04:49 +00:00
Adam Fowler f5177888f9 Merge pull request #24 from hummingbird-project/2.x.x
Merge 2.x.x into main
2024-03-08 10:53:44 +00:00
Adam Fowler 071b182a00 2.x.x Template struct (#22)
* Start of turning template into a struct

* Everything is Sendable now, just doesnt work

* Add library to context

* Make sure render is initialized with library

* comment about inheritance spec

* Add register back in

* Re-instate register functions

* Re-instate commented out print

* Fix tabbing in Partial tests

* Make HBMustacheLibrary.loadTemplates async

* Update platforms, swift version
2024-01-31 15:43:46 +00:00
Adam Fowler bec77d1f2b More GH action updates 2024-01-30 17:01:09 +00:00
Adam Fowler 52663ae87b Update CI 2024-01-30 16:56:07 +00:00
Adam Fowler 6e08bcf4d2 Swift 5.8 2023-04-10 10:21:02 +01:00
Adam Fowler 85114c9ecb Project template update 2023-03-27 09:47:54 +01:00
Adam Fowler 48918c1d2a Use codecov@v3 action 2023-01-17 14:45:31 +00:00
Adam Fowler fa56176223 Fix issue with indented partials (#19)
* Fix issue with indented partials

* Add test

* Add empty transform for string
2023-01-14 08:50:51 +00:00
Adam Fowler 185004fdce Template updates (Swift 5.7) 2022-11-22 14:19:27 +00:00
Adam Fowler f95e19206e Use special set of chars for partial filename (#18) 2022-08-08 11:18:41 +01:00
Adam Fowler 02d019b632 Swift 5.6 2022-03-17 11:23:21 +00:00
Adam Fowler 90414dfc9f Update project settings 2022-02-14 12:27:36 +00:00
Adam Fowler 100eb5eb7a Add .vscode to .gitignore 2021-12-05 10:24:16 +00:00
Adam Fowler d6839d689e sanity.sh -> validate.sh 2021-11-12 17:02:42 +00:00
Adam Fowler 94bbca47ae Swift Format 0.48.17 2021-10-30 11:23:58 +01:00
Adam Fowler 8b38438f17 Make HBMustacheParent public 2021-09-28 15:41:11 +01:00
Adam Fowler ba7cbfbb09 Update to swift 5.5 docker in CI 2021-09-22 10:07:09 +01:00
Adam Fowler e544cd568e Updates from Package update 2021-09-21 10:49:25 +01:00
Adam Fowler dffe63d330 Run nightly only on Sunday 2021-06-25 08:08:51 +01:00
Adam Fowler 187c7f977c Help text for HBMustacheCustomRenderable 2021-05-03 17:05:17 +01:00
Adam Fowler c65a7956c8 Custom renderable fixups (#13)
* Mark HBMustacheCustomRenderable public

* Add HBMustacheCustomRenderable tests

* swift format
2021-05-03 16:55:10 +01:00
Adam Fowler a2569dd667 Use newly merged inheritance spec tests 2021-05-03 15:58:50 +01:00
Adam Fowler 4a78d44712 Add HBMustacheCustomRenderable
Support custom rendering of swift types
Fixes tests that rely on NSNull
2021-05-03 15:33:28 +01:00
Adam Fowler f852bc1d00 Use mint to run swift-format in sanity CI 2021-04-24 18:09:34 +01:00
Adam Fowler e86018f068 Update README.md 2021-04-09 09:50:52 +01:00
Adam Fowler 1c51fcfe8c Add file header via swift format 2021-04-08 17:36:54 +01:00
Adam Fowler 883e1e3446 No need to ignore Variable test in spec tests 2021-04-06 16:22:19 +01:00
Adam Fowler 4dbcfba7b8 Minor read me edit 2021-03-25 10:26:01 +00:00
Adam Fowler a7ae931f3e Update README.md 2021-03-25 10:24:33 +00:00
Adam Fowler 87068659b3 Added pragmas, template inheritance docs 2021-03-25 09:43:01 +00:00
Adam Fowler b331d4c440 Documentation (#12)
* Create Mustache Syntax.md

* Update Mustache Syntax.md

* Create Transforms.md

* Update Transforms.md

* Update Mustache Syntax.md

* Update Mustache Syntax.md

* Create Lambdas.md

* Update Lambdas.md
2021-03-24 18:13:37 +00:00
Adam Fowler c1d3f491b5 Update README.md 2021-03-24 16:23:48 +00:00
Adam Fowler eaaeea0166 If running a transform and object doesn't recognise it return nil 2021-03-24 16:20:06 +00:00
Adam Fowler 7ebd84a328 Stop context stack climbing with "." prefix 2021-03-24 11:12:38 +00:00
Adam Fowler f7bd02267e Add transforms empty() and equalzero() 2021-03-23 18:17:44 +00:00
Adam Fowler 40ef59c897 Allow for space after value in {{%var:value}} 2021-03-23 17:45:17 +00:00
Adam Fowler d3edef1b8e Add support for custom text escaping (#11)
* Add support for custom text escaping

* swift format

* Remove withDefaultDelimiters

* Update README.md

* Don't pass content type into partial
2021-03-23 17:36:28 +00:00
Adam Fowler ef4eb40eb7 Comments 2021-03-22 14:14:34 +00:00
Adam Fowler 1abc469037 Add template inheritance section 2021-03-22 13:57:08 +00:00
Adam Fowler 9f5894b0c1 Update README.md 2021-03-22 12:29:43 +00:00
Adam Fowler c21651ce50 method -> transform 2021-03-22 12:11:22 +00:00
Adam Fowler 35d52603e2 Template inheritance (#9)
* Move all context variables into HBMustacheContext

* Add support for reading inherited sections

* Render inherited tokens

* Test inheritance spec, fix two minor issues

* fix warning

* swift format
2021-03-22 12:02:22 +00:00
Adam Fowler af345e9138 Link FoundationNetworking on Linux 2021-03-22 11:46:04 +00:00
Adam Fowler c4f8aea756 Use mustache spec json files for tests (#10)
* swift format

* Use json files for mustache/spec repo for testing spec

* Add option to ignore certain tests

* Clean up error messages, swift format

* more swift format
2021-03-22 11:41:52 +00:00
Adam Fowler ef4f016863 Update README.md 2021-03-22 07:55:30 +00:00
Adam Fowler fb849f063d Minor update from project-template 2021-03-21 18:57:24 +00:00
Adam Fowler a08b1e8087 Swift format, swift 5.3 2021-03-21 11:56:08 +00:00
Adam Fowler 3c50d1c15c comments 2021-03-19 17:49:02 +00:00
Adam Fowler 66cbb25e16 Readme updates (#7)
* Add Additional features to readme

* Edits

* Update README.md
2021-03-19 15:08:57 +00:00
Adam Fowler f9f8c1320a Renaming
HBMustacheMethods -> HBMustacheTransformable
HBMustacheContext -> HBMustacheSequenceContext
2021-03-19 14:48:44 +00:00
Adam Fowler 09f5c5953e Update README.md 2021-03-18 17:38:19 +00:00
Adam Fowler 05740bd7bc Replace raw UTF8 parser with String parser (#6)
* Replace UTF8 parser with String based one

* swift format

* Add parsing errors that include context about where error is

* Remove old error tests
2021-03-18 17:26:42 +00:00
Adam Fowler a602593b5d Remove Logging imports 2021-03-18 16:29:23 +00:00
Adam Fowler 0ff5038162 End sections includes method 2021-03-18 15:33:47 +00:00
Adam Fowler aa30dcbddf Don't log files that dont load throw error instead
remove swift-log dependency
2021-03-18 15:25:46 +00:00
Adam Fowler 4af21bb4cf Fix issue where parser return bad sub parsers if you reach end of text 2021-03-18 15:25:00 +00:00
Adam Fowler b637c4c4a4 Tidy standalone processing 2021-03-18 12:58:48 +00:00
Adam Fowler 751126d729 Add support for Set Delimiters (#5)
* Added ParserState

* Add support for setting delimiters

* Add spec tests for setting delimiters

* swift format
2021-03-18 12:43:36 +00:00
Adam Fowler 66e9b23c47 Merge pull request #4 from hummingbird-project/mustache-spec
Conform to Mustache spec
2021-03-18 11:09:50 +00:00
Adam Fowler 9b17bd6827 Render optimisation 2021-03-18 10:55:55 +00:00
Adam Fowler c560bd0fd9 swift format 2021-03-18 10:34:52 +00:00
Adam Fowler 16a2c54be6 Added sections tests. Allow for searching of context stack 2021-03-18 10:32:42 +00:00
Adam Fowler b07ad42b49 Started section spec tests 2021-03-17 22:33:30 +00:00
Adam Fowler 169a7bbbf4 Added SpecPartialsTests and fixed issues 2021-03-17 18:30:55 +00:00
Adam Fowler b4d6a518c7 Fixed all issues found in spec so far
parse has got quite complex might look to simplify
2021-03-17 17:02:59 +00:00
Adam Fowler 753079fa9d Add inverted tests 2021-03-16 17:16:51 +00:00
Adam Fowler 9ddc49b7bc Add interpolation tests, start inverted 2021-03-15 20:35:05 +00:00
Adam Fowler 2d96ca34d8 Add fix for ampersand 2021-03-15 20:34:48 +00:00
Adam Fowler a76a02a8dc Add Comment spec 2021-03-15 18:57:55 +00:00
Adam Fowler b1b65525e8 Make Template and Library final class 2021-03-15 18:37:54 +00:00
Adam Fowler 66edcba185 swift format 2021-03-15 18:24:06 +00:00
Adam Fowler 955e1eb9e4 Updates from project template 2021-03-15 18:22:41 +00:00
Adam Fowler e0d7e364e8 Use ' instead of ' as the latter isnt in the HTML4 standard 2021-03-15 17:28:22 +00:00
Adam Fowler d601a29e35 Add quote, apostrophe to list of chars to html escape 2021-03-15 16:40:37 +00:00
Adam Fowler 03cfa42c02 Add swift-log so we can log loading errors 2021-03-15 16:08:10 +00:00
Adam Fowler 5a2f22df4f Update README.md 2021-03-15 15:24:37 +00:00
Adam Fowler 876f3c99f5 Update README.md 2021-03-15 15:24:03 +00:00
Adam Fowler 5dd3ab2af1 render(_, withTemplateNamed) -> render(_, withTemplate) 2021-03-15 15:18:50 +00:00
Adam Fowler e391f5ae05 Comments 2021-03-15 15:09:16 +00:00
Adam Fowler 978b14a96a Wrap Lambda function in a struct to avoid crash in Mirror 2021-03-15 14:46:40 +00:00
Adam Fowler 3559faac61 Rectify HBMustacheContext methods odd and even 2021-03-15 14:33:28 +00:00
Adam Fowler e2cfbb7acc Make runMethod calls public, add some comments 2021-03-15 14:27:32 +00:00
Adam Fowler e0a0b3fe8e Extend String methods to Substring 2021-03-15 11:07:08 +00:00
Adam Fowler adb3401398 Extend Int methods to all Integer types 2021-03-15 11:00:43 +00:00
Adam Fowler 958fb97775 Added first/last to array, minusone to Int 2021-03-15 10:57:37 +00:00
Adam Fowler 0f2c3bcea9 Added sorted methods 2021-03-15 10:53:33 +00:00
Adam Fowler 465ad49f1f Add index filter 2021-03-14 17:53:20 +00:00