Puts a shared biome.json in the root.
Deletes the prettier config files.
Deletes the unused pre-commit hooks.
Applies biome linting and formatting to the slintpad project.
* Use vscode ext lint and format also for api/node
* Re-use biome config file from VS code instead of duplicating it
* Remove package-lock.json again
* Don't bother running the biome formatter on Windows
---------
Co-authored-by: Simon Hausmann <simon.hausmann@slint.dev>
before
```
error: Uncaught (in promise) Error: Could not compile ui/appwindow.slint
at loadSlint (file:///home/mrcool/.cache/deno/npm/registry.npmjs.org/slint-ui/1.7.0/index.js:464:19)
at Module.loadFile (file:///home/mrcool/.cache/deno/npm/registry.npmjs.org/slint-ui/1.7.0/index.js:644:12)
at file:///home/mrcool/dev/deno/lab/memory/src/main.ts:3:23
```
after
```
error: Uncaught (in promise) Error: Could not compile ui/appwindow.slint
Diagnostics:
[ui/appwindow.slint:4:5] Unknown type MemoryTile
at loadSlint (file:///home/mrcool/.cache/deno/npm/registry.npmjs.org/slint-ui/1.7.0/index.js:468:19)
at Module.loadFile (file:///home/mrcool/.cache/deno/npm/registry.npmjs.org/slint-ui/1.7.0/index.js:648:12)
at file:///home/mrcool/dev/deno/lab/memory/src/main.ts:3:23
```
* Examples for calling public functions in language-specific docs.
* Update the function example so it actually uses its parameter.
(This broke some c++ tests because of the unused argument warning)
After the Rust 1.78 release, napi-rs panics on zero-sized array buffers.
Work around it by not allocating a zero-sized array buffer for this specific test.
Upstream PR: napi-rs/napi-rs#2083
Add the ability to depend on the testing backend and opt into it
when running tests/cases, like we do for the other drivers.
The testing backend dependency is removed in the packaging step, as
we don't publish i-slint-backend-testing.
Updated the version from 1.1 to 1.2
Renamed the header to "Slint Royalty-free Desktop, Mobile, and Web Applications License"
Added definition of "Mobile Application" and grant of right
Moved "Limitations" to 3rd section and "License Conditions - Attributions" to 2nd section
Added flexibility to choose between showing "MadeWithSlint" as a dialog/splash screen or on a public webpage
Moved the para on copyright notices to section under "Limitations"
A MSRV update is required to update the image crate to 0.25, otherwise
we get link error that are ficed in newer version.
Also other dependency update such as env_logger needs a newer MSRV.
Update to 1.73 because it has functions like `with_borrow` on thread
storage which we already actually use in some platform.
This is also the last release before the the drop of macOs < 10.12
in Rust 1.74
The wrapper returned should behave like Model<T>, which now also a
@@iterator key. That key is generated by simulation the evaluation of
`Symbol.iterator`, by first looking up `Symbol` in the global object,
and then `iterator`. When retrieving `Symbol` we casted it to a
`JsObject`, but commit
aeb0b4766d
upstream tightened the cast by adding an extract check, which fails.
Symbol is not a plain object, it's in fact a function (by use of
`Symbol()`).
Add a convenience pop() function (we already have push...) and re-use the model
instead of fetching it.
Previously we fetched it because it was converted to
a new array every time.
A Model<T> stores a reference to a External<Rc<ModelNotify>>.
Every time such a Model<T> needs to be exposed to Slint/Rust, we create
a TypedRustModel that wraps the Rc<ModelNotify>, a strong reference to
the JS object, and the Type field for the expected data type (the
interpreter expects). The Model trait is implemented on TypedRustModel,
which means it is allocated every time the conversion is needed, but the
underlying Rc<ModelNotify> is shared and thus the (forwarded) ModelNotify.
When converting back to JavaScript, we downcast_ref to the
TypedRustModel and fetch the original JavaScript object - if available.