Remove all `.metadata` files across the monorepo and add them to
.gitignore.
They just serve to cause conflicts whenever someone runs anything and
according to @wolfenrain "we don't need them".
```
Package Name Current Version Updated Version Update Reason
flame 1.29.0 2.0.0 updated with major changes
flame_sprite_fusion 0.1.3+12 0.2.0 updated with major changes
flame_svg 1.11.12 1.11.13 updated with patch changes
flame_test 1.19.2 2.0.0 updated with major changes
flame_texturepacker 4.3.1 4.4.0 updated with minor changes
flame_tiled 3.0.3 3.0.4 updated with patch changes
flame_behavior_tree 0.1.3+12 0.1.3+13 dependency was updated
flame_oxygen 0.2.3+12 0.2.3+13 dependency was updated
flame_isolate 0.6.2+12 0.6.2+13 dependency was updated
flame_fire_atlas 1.8.7 1.8.8 dependency was updated
flame_audio 2.11.6 2.11.7 dependency was updated
flame_spine 0.2.2+12 0.2.2+13 dependency was updated
flame_bloc 1.12.13 1.12.14 dependency was updated
flame_kenney_xml 0.1.1+12 0.1.1+13 dependency was updated
flame_lottie 0.4.2+12 0.4.2+13 dependency was updated
flame_markdown 0.2.4+5 0.2.4+6 dependency was updated
flame_console 0.1.2+8 0.1.2+9 dependency was updated
flame_rive 1.10.15 1.10.16 dependency was updated
flame_forge2d 0.19.0+2 0.19.0+3 dependency was updated
flame_noise 0.3.2+12 0.3.2+13 dependency was updated
flame_riverpod 5.4.15 5.4.16 dependency was updated
flame_network_assets 0.3.3+12 0.3.3+13 dependency was updated
flame_3d 0.1.0-dev.12 0.1.0-dev.13 dependency was updated
```
The following 25 packages will be updated:
```
Package Name Current Version Updated Version Update Reason
jenny 1.3.2 1.3.3 manual versioning
flame 1.26.1 1.27.0 updated with minor changes
flame_3d 0.1.0-dev.8 0.1.0-dev.9 updated with minor changes
flame_forge2d 0.18.3 0.18.3+1 updated with patch changes
flame_isolate 0.6.2+8 0.6.2+9 updated with patch changes
flame_lint 1.2.3 1.3.0 updated with minor changes
flame_rive 1.10.11 1.10.12 updated with patch changes
flame_texturepacker 4.1.8 4.1.9 updated with patch changes
flame_tiled 2.0.3 3.0.0 updated with major changes
flame_behavior_tree 0.1.3+8 0.1.3+9 dependency was updated
flame_test 1.18.2 1.18.3 dependency was updated
flame_oxygen 0.2.3+8 0.2.3+9 dependency was updated
flame_sprite_fusion 0.1.3+8 0.1.3+9 dependency was updated
flame_fire_atlas 1.8.3 1.8.4 dependency was updated
flame_audio 2.11.2 2.11.3 dependency was updated
flame_spine 0.2.2+8 0.2.2+9 dependency was updated
flame_bloc 1.12.9 1.12.10 dependency was updated
flame_kenney_xml 0.1.1+8 0.1.1+9 dependency was updated
flame_lottie 0.4.2+8 0.4.2+9 dependency was updated
flame_markdown 0.2.4+1 0.2.4+2 dependency was updated
flame_console 0.1.2+4 0.1.2+5 dependency was updated
flame_noise 0.3.2+8 0.3.2+9 dependency was updated
flame_riverpod 5.4.11 5.4.12 dependency was updated
flame_svg 1.11.8 1.11.9 dependency was updated
flame_network_assets 0.3.3+8 0.3.3+9 dependency was updated
```
This is a proposal to extend both our text rendering pipeline and our
markdown-parsing capabilities to support more fine-grained styling by
leveraging a subset of the extended markdown definition of "custom
attributes" (for example, see
[markdown-it-attrs](https://www.npmjs.com/package/markdown-it-attrs) as
an exemplary implementation).
On the markdown side, the syntax will look like this:
```markdown
[This is a custom class]{.my-custom-class}
This word will be [red]{.red} and this one will be [blue]{.blue}.
```
Note that the current implementation only supports specifying the class
name and will skip other possible permutations.
On the Flame side, we add a new `customStyles` map to the
`DocumentStyle` class, allowing users to provide as many styles as
desired.
Example:


Currently, users have to hijack the existing syntaxes for the desired
styles; with the addition of code and strike-through recently I have
doubled the possibilities for custom styles, but the solution still
remained a hack. Also I now need more styles, and the only way forward
is to support arbitrary styling.
While we could consider supporting other attributes, such as id, css
styling, etc, within the attribute syntax, the class name is the most
flexible and versatile option, and it already solves all use cases, as
class names can be used as ids (if desired) and can be used to apply the
styling indirectly. I don't see any immediate advantage to supporting
more complex constructs within the attributes block (though of course we
can iterate as needed).
Add support for strike-through text for flame_markdown, if enabled by
the user.
Basically parses the `del` HTMl tag and maps it to a new inline text
renderer in Flame's text rendering pipeline.
The style can be controlled with a new property if desired.
In order to parse `~~`-wrapped text into the new node element, the
underlying markdown parser must have the strikethrough option enabled
(or an equivalent custom option), which can be controlled by the user if
providing their own document.
This PR bumps the min sdk constraint to 3.3.0. It also updates one of
the golden tests for flame_svg which was failing with a slight
difference in the svg output around the edges. The difference was very
minor an barely noticeable visually.
```
Package Name Current Version Updated Version Update Reason
flame 1.16.0 1.17.0 manual versioning
flame_forge2d 0.17.0 0.17.1 manual versioning
flame_oxygen 0.2.0 0.2.1 manual versioning
behavior_tree 0.1.0 0.1.1 updated with minor changes
flame_behavior_tree 0.1.0 0.1.1 updated with minor changes
flame_network_assets 0.3.0 0.3.1 updated with minor changes
flame_sprite_fusion 0.1.0 0.1.1 updated with minor changes
flame_texturepacker 3.1.0 3.2.0 updated with minor changes
flame_tiled 1.19.0 1.20.0 updated with minor changes
flame_test 1.16.0 1.16.1 dependency was updated
flame_isolate 0.6.0 0.6.0+1 dependency was updated
flame_fire_atlas 1.5.0 1.5.1 dependency was updated
flame_audio 2.10.0 2.10.1 dependency was updated
flame_spine 0.2.0 0.2.0+1 dependency was updated
flame_bloc 1.11.0 1.11.1 dependency was updated
flame_lottie 0.4.0 0.4.0+1 dependency was updated
flame_markdown 0.2.0 0.2.0+1 dependency was updated
flame_rive 1.10.0 1.10.1 dependency was updated
flame_noise 0.3.0 0.3.0+1 dependency was updated
flame_riverpod 5.4.0 5.4.1 dependency was updated
flame_svg 1.10.0 1.10.1 dependency was updated
```
```
The following 18 packages will be updated:
Package Name Current Version Updated Version Update Reason
flame 1.14.0 1.15.0 updated with minor changes
flame_isolate 0.5.0+7 0.5.1 updated with minor changes
flame_noise 0.1.1+12 0.2.0 updated with major changes
flame_riverpod 5.1.5 5.2.0 updated with minor changes
flame_test 1.15.3 1.15.4 updated with patch changes
flame_texturepacker 2.1.0 3.0.0 updated with major changes
flame_oxygen 0.1.9+7 0.1.9+8 dependency was updated
flame_tiled 1.18.3 1.18.4 dependency was updated
flame_fire_atlas 1.4.7 1.4.8 dependency was updated
flame_audio 2.1.7 2.1.8 dependency was updated
flame_spine 0.1.1+9 0.1.1+10 dependency was updated
flame_bloc 1.10.9 1.10.10 dependency was updated
flame_rive 1.9.10 1.9.11 dependency was updated
flame_lottie 0.3.0+7 0.3.0+8 dependency was updated
flame_markdown 0.1.1+7 0.1.1+8 dependency was updated
flame_forge2d 0.16.0+4 0.16.0+5 dependency was updated
flame_svg 1.8.9 1.8.10 dependency was updated
flame_network_assets 0.2.0+12 0.2.0+13 dependency was updated
```
```
The following 17 packages will be updated:
Package Name Current Version Updated Version Update Reason
flame 1.11.0 1.12.0 updated with minor changes
flame_riverpod 5.0.0 5.1.0 updated with minor changes
flame_test 1.15.0 1.15.1 dependency was updated
flame_tiled 1.18.0 1.18.1 dependency was updated
flame_oxygen 0.1.9+4 0.1.9+5 dependency was updated
flame_isolate 0.5.0+4 0.5.0+5 dependency was updated
flame_fire_atlas 1.4.4 1.4.5 dependency was updated
flame_audio 2.1.4 2.1.5 dependency was updated
flame_spine 0.1.1+6 0.1.1+7 dependency was updated
flame_bloc 1.10.6 1.10.7 dependency was updated
flame_lottie 0.3.0+4 0.3.0+5 dependency was updated
flame_markdown 0.1.1+4 0.1.1+5 dependency was updated
flame_rive 1.9.7 1.9.8 dependency was updated
flame_forge2d 0.16.0+1 0.16.0+2 dependency was updated
flame_noise 0.1.1+9 0.1.1+10 dependency was updated
flame_svg 1.8.6 1.8.7 dependency was updated
flame_network_assets 0.2.0+9 0.2.0+10 dependency was updated
```
Add a bridge package flame_markdown to the markdown package to allow for easily creating TextElementComponents (or TextNodes in general) using the markdown syntax.
This will vastly facilitate working with rich text, specially for simple formatting like bold and italics, without requiring the user to manually specify the node tree structure.