Commit graph

50 commits

Author SHA1 Message Date
Jonathan Kelley
c21b44a4e6
fix collapsing of multiline components and rsx!{} calls (#2849) 2024-08-15 17:03:58 -07:00
Jonathan Kelley
851abe82d5
Fix non-brace delimeters in nested macro formatting (#2831) 2024-08-13 22:47:43 -07:00
Jonathan Kelley
828cc502f1
Fix: #2604, Fix: #2240, Fix: #2341, Fix #1355 - Better error handling and and spaces handling in autofmt (#2736)
* add new autofmt sample
* Feat: implement rustfmt::skip support for rsx
* generally improve error handling with better expect messages
* wip: nested rsx formatting and expression formatting
* nested rsx formatting works
* collapse autofmt crate
* cast indent through macros
* use proper whitespace
* no more eating comments!
* Use proper error handling
2024-07-30 18:36:13 -07:00
Tristan F.
9167cd9dec
fix most typos, add crate-ci/typos to CI (#2653)
* fix most typos, add crate-ci/typos to CI

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2024-07-23 17:49:33 -07:00
Jonathan Kelley
88af3e7eff
Hotreloading of for/if/body, formatted strings, literals, component props, nested rsx, light CLI rewrite, cli TUI (#2258)
Hotreload the contents of for loops, if chains, component bodies, props, attributes, and any literals discovered in rsx!
Add a TUI renderer to the CLI.
Improve the CLI build system to be async and parallel.
Refactor RSX to allow partial expansion of expressions.
Merge autofmt implementations for consistency.
Merge the representation of elements and components under the hood.
Add a diagnostics system for rsx for improved error messages.
Drop interprocess and move to websockets for communication between the CLI and the server.
Assign IDs to nodes and attributes in a stable way to be used in non compiler contexts.
Add hotreloading to any body of component/for loop/if chain/etc.

---------

Co-authored-by: Evan Almloff <evanalmloff@gmail.com>
Co-authored-by: Liam Mitchell <liamkarlmitchell@gmail.com>
2024-07-17 19:11:18 -07:00
Jonathan Kelley
90c46afd12
fix fmt tests 2024-07-02 17:22:53 -07:00
Jonathan Kelley
b30810e486
cut out a number of changes from the hr PR (#2580) 2024-07-02 17:09:57 -07:00
Jonathan Kelley
a0e06271dd
Fix: flaky CI by correcting autofmt to match proper spacing (#2369) 2024-04-26 12:04:56 -04:00
Jonathan Kelley
994056e16d
Don't eat keys (#2280) 2024-04-08 22:31:58 -07:00
Jonathan Kelley
67af2d89dd
Autofmt nested rsx using syn::Visitor (#2279)
* Nested macros using visitor pattern
2024-04-08 22:15:52 -07:00
Jonathan Kelley
be99e29e5f
Fixes to autofmt, make it more aggressive (#2230)
* fix: fmt unterminated if, be more aggressive with line splits

* Fix: Handle long exprs in for/if statements
2024-04-03 15:27:36 -07:00
Jonathan Kelley
d8942a255b
Fix #2104: fmt incorrectly using 1-indexing for columns (#2106)
* Fix #2104: fmt incorrectly using 1-indexing for columns

* Clippy...
2024-03-18 18:23:45 -07:00
Jonathan Kelley
3e5edff724
Fix key errors in autofmt crate 2024-03-07 16:21:51 -08:00
Jonathan Kelley
0bd9692e45
Fix cargo test and a number of little cleanup bugs 2024-01-30 17:33:14 -08:00
Jonathan Kelley
1dde044697
remove cx.render 2024-01-13 21:12:21 -08:00
Jonathan Kelley
fae0b08e61
Fix the router and stub out a number of crates to get compiling 2024-01-13 20:51:37 -08:00
Jonathan Kelley
4f077ec664
Merge pull request #1812 from ealmloff/duplicate-event-listener-rsx
check for duplicate event listeners in the rsx macro
2024-01-11 14:34:01 -08:00
Evan Almloff
4ef6f78657 fix duplicate listeners in the autoformat tests 2024-01-11 16:22:28 -06:00
Jonathan Kelley
fa9d92f956
Fix tests for autofmt 2024-01-10 22:41:40 -08:00
Jonathan Kelley
8df7a7685e
Merge branch 'master' into many_optional_attributes 2024-01-04 10:18:57 -08:00
Leonard
c866ae602b
Add system for creating component attributes + new #[component] attribute (#1448)
* Add `#[component]` attribute + system for creating component attributes + other stuff

* Delete inlineprops.rs

* Update inline_props.rs

* Cargo fmt

* Fix clippy warnings and paths in props/mods.rs

* Include where clause in `#[inline_props]` output

* Allow Clippy type complexity in `LinkProps`

* Allow the type complexity lint for the entire link.rs file

* Remove snake_case -> PascalCase converter, but rather enforce PascalCase

Also:
- Put the second function inside the main one instead of besides it.
- Simplify

* Simplify type check lints so they don't return false positives

They will not always work, but they won't return any false positives, like for aliases. This is likely going to be replaced by a more polished Clippy-backed linting system.

* Fix #583

* Cargo fmt

* Add docs for `deserialize()` and remove useless comment

* Add `#[component]` to prelude

* Merge branch 'master' of https://github.com/tigerros/dioxus

* #[inline_props] is no more. Except in the docs folder, but that's going to be removed

* Remove docs folder

* Remove docs from workspace

* Resolve `DeserializerOutput` conversation
2023-09-15 09:13:36 -05:00
Evan Almloff
1a17ca988c fix double quotes in autoformatting 2023-09-14 16:19:21 -05:00
Evan Almloff
d9e0b9a918 fix autoformatting raw strings 2023-06-02 12:03:56 -05:00
Jonathan Kelley
4e4e101eee fix: dont choke on emojji n exprs 2023-01-17 16:24:29 -08:00
Jonathan Kelley
b81eca0433 fix: short expr lists should not eat the final exprs 2023-01-16 17:25:55 -08:00
Jonathan Kelley
b6e4db1f2f fix: immediate exprs 2023-01-16 16:36:50 -08:00
Jonathan Kelley
aa0f6812fa fix ci around autofmt 2023-01-14 00:42:43 -08:00
Jonathan Kelley
3945928c59 fix: adjust padding on autofmt 2023-01-13 17:16:06 -08:00
Jonathan Kelley
ac6035cb2a feat: parse entire file instead of hunting for verbtain 2023-01-13 16:46:34 -08:00
Jonathan Kelley
6cd87796f2 feat: allow ifchains and for loops 2023-01-13 10:51:12 -08:00
Jonathan Kelley
293ef9c690 fix: only flow exprs with indent in mind 2023-01-12 17:02:41 -08:00
Jonathan Kelley
983789e4c5 handle weird trailing whitespace in autofmt 2023-01-12 16:55:13 -08:00
Jonathan Kelley
cc8b910cf3 fix emoji support in autofmt 2023-01-12 16:29:31 -08:00
Jonathan Kelley
1940855e39 feat: implement comments in zero children nodes 2023-01-10 17:47:58 -08:00
Jonathan Kelley
74421d47fd fix comments being eaten in autofmt 2023-01-07 14:09:32 -08:00
Jonathan Kelley
4e330bc1ec chore: fix rsx printer 2022-12-19 16:20:02 -08:00
Jonathan Kelley
181a51a63b wip: add whitespace parsing to rsx 2022-09-30 10:51:53 -07:00
Jonathan Kelley
5313fc0cc6 fix: trailing commas with key 2022-09-28 17:06:11 -07:00
Jonathan Kelley
a37458b9fa chore: fixes to autoformat to prevent double rendering of expr line 2022-09-28 16:47:10 -07:00
Jonathan Kelley
575f92d2d4 chore: update readme and tests for autofmt 2022-07-05 18:23:30 -04:00
Jonathan Kelley
76581e7400 fix: disappearing manual props 2022-07-05 18:03:04 -04:00
Jonathan Kelley
19e6e43358 fix: only apply comments if relevant 2022-07-05 17:59:33 -04:00
Jonathan Kelley
fa9ebe17cc feat: fix autoformatting around one liners 2022-07-05 17:49:16 -04:00
Jonathan Kelley
64d669e934 chore: add todo list to autofmt crate 2022-07-05 13:31:26 -04:00
Jonathan Kelley
2634755620 fix: handle comments around attributes better 2022-07-05 02:06:54 -04:00
Jonathan Kelley
4471ccba49 fix: even better comment handling 2022-07-05 01:53:08 -04:00
Jonathan Kelley
47f3cc2529 fix: correct comment handling for first line 2022-07-05 00:30:09 -04:00
Jonathan Kelley
150d824561 feat: more advanced comment handling 2022-07-05 00:22:06 -04:00
Jon Kelley
3a30b36f68
fix: some edge cases around autoformatting (#485)
* wip: remove comment support from autofmt

* fix: some edge cases around autoformatting

* fix: revert readme

* fix: failing test
2022-07-04 21:11:03 -04:00
Jonathan Kelley
28a0c67275 polish: clean up the examples and move autofmt sample into dedicated file 2022-06-30 15:19:58 -04:00