Commit graph

137 commits

Author SHA1 Message Date
Evan Almloff
2523581cf4
Autocomplete rsx (#2421)
* autocomplete rsx

* hide the completions module

* fix autocomplete for identifiers that start with a raw identifier

* add field completion hints for props

* remove extra import

* Revert "add field completion hints for props"

This reverts commit 194899c737.

* fix autocomplete inside raw expressions

* fix autofmt

* feat: just use regular ifmt if it's compatible

reuses the tokens for ifmt so RA provides its HIR lowering on simple formatted strings

* fix merging ifmt strings

* add a better error message for components called like functions

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2024-05-22 07:24:50 -05: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
Miles Murgaw
3cbe6ff96e
Fix Outdated README.md (#2147)
* fix: outdated readme

* Fix missing readme

---------

Co-authored-by: Jonathan Kelley <jkelleyrtp@gmail.com>
2024-03-26 19:17:02 -07:00
Jonathan Kelley
eb79e61642
Add a ton of comments to rsx/hotreload, add snapshot testing, refactor a bit to simplify the crate (#2130)
Merge dynamic context and dynamic mapping, clean up the rsx hotreload logic, and add location data to the Rsx objects
2024-03-24 13:31:26 -07:00
Evan Almloff
58f7efafea
Make EventHandler copy (#2112)
* implement Copy for EventHandler
* implement from closure for event handler and remove special on prefix
* fix props implementation of EventHandler
2024-03-19 19:48:53 -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
ad7a350d2e
fix hotreloading issues in the CLI 2024-03-12 13:39:42 -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
f1e8faffb5
fix tests 2024-01-10 23:17:01 -08:00
Jonathan Kelley
fa9d92f956
Fix tests for autofmt 2024-01-10 22:41:40 -08:00
Jonathan Kelley
d9b84f9f8f
Disambiguate expressions in rsx by requiring curlies 2024-01-10 19:33:34 -08:00
Jonathan Kelley
2876a7deb2
Merge branch 'master' into feat/inline-attributes-fmt 2024-01-08 20:00:14 -08:00
Evan Almloff
e5df83ceec Merge branch 'master' into pr/atty303/1349 2024-01-06 08:52:37 -06:00
Jonathan Kelley
8df7a7685e
Merge branch 'master' into many_optional_attributes 2024-01-04 10:18:57 -08:00
marc2332
ce5d7bd11b
rename to split-line-attributes 2023-12-09 16:51:41 +01:00
marc2332
c10cefffb6
fix: Disabling short-children inlining when inline attributes is disabled 2023-12-09 11:46:30 +01:00
marc2332
0958056100
fix 2023-12-09 11:33:14 +01:00
marc2332
27bfabd425
clean up 2023-12-09 11:19:18 +01:00
marc2332
52cb5ff951
feat: --inline-attributes option for autofmt 2023-12-09 11:16:26 +01:00
Evan Almloff
0aa4875ec0 fix formating 2023-11-02 13:59:46 -05:00
Alex Parrill
52fb080193 Use indentation settings in dx fmt and vscode extension
Adds the ability to specify an indent string to public autofmt methods - either
a sequence of spaces or a tab character.

Get the indentation style and size from rustfmt for dx fmt, or from the editor
settings for the vscode extension.

Closes #1595
2023-11-01 17:24:18 -04:00
Evan Almloff
77d53df532 Merge branch 'master' into pr/atty303/1349 2023-10-31 13:39:20 -05:00
Leonard
2d1234c3d1
Include README and Dioxus logo in package docs (#1536)
* Include README in docs.rs and add Dioxus logo

* Update README.md
2023-10-10 10:52:48 -05:00
Evan Almloff
5b65c4cfb4 implement spreading props in the rsx macro 2023-09-22 10:04:34 -05:00
Evan Almloff
9e167dfdb7 Merge branch 'many_optional_attributes' into pr/atty303/1349 2023-09-22 09:32:05 -05:00
Evan Almloff
7033276c34 Merge branch 'master' into pr/atty303/1349 2023-09-20 16:19:23 -05:00
Evan Almloff
ab2b9fb34e fix autoformatting 2023-09-19 09:39:53 -05:00
Evan Almloff
d297e2baa2 Add optional attributes 2023-09-18 19:50:02 -05:00
marc2332
7f8c963cd9
fix: Update doc links from v3 to v4 2023-09-16 19:03:27 +02: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
8c47dfaf78 clean up attribute parsing 2023-09-14 14:08:39 -05:00
Evan Almloff
f818d27fa6 only collect the rsx and render macros when formatting 2023-09-02 07:09:02 -05:00
Koji AGAWA
d573f5dfd5 feat: props spread 2023-08-13 16:45:17 +09:00
Jonathan Kelley
39e89c1fac
Bump crate versions, fix any publish errors 2023-07-31 18:49:54 -07:00
Brian Donovan
8f8627af18
attempt to hoist prettier-please dependencies 2023-07-23 16:06:55 -07:00
Jonathan Kelley
f0289068a2
Merge pull request #1219 from Demonthos/improve-build-times
Halve Build Times
2023-07-20 10:50:15 -07:00
Andrea Frigido
dccad58f1d Update license field following SPDX 2.1 license expression standard 2023-07-20 18:00:07 +01:00
Evan Almloff
beb56b93a0 more clippy fixes 2023-07-20 09:06:12 -07:00
Evan Almloff
330950140c fix clippy 2023-07-19 18:16:32 -07:00
Evan Almloff
b6ea722d94 fix some edge cases around multiline attributes 2023-07-19 16:59:20 -07:00
Evan Almloff
212022d0c2 more clippy fixes 2023-07-19 13:54:10 -07:00