* chore: replace `js_str` with `js_string`
* chore: replace `boolean`'s `to_string` with literal
* chore: remove unnecessary `to_string`
* chore: fix lint and format
* chore: add feature gate to import `js_str`
* chore: change `get_typed_fn`'s name to `JsString`
* chore: replace js_str with js_string(cli)
* chore: replace js_str with js_string(`try_into_js`)
* chore: replace js_str with js_string(`Console`)
* chore: fix lint
* perf: use more efficient `LazyLock` on `RAW_STATICS_CACHE`
* chore: move `js_str` together with other imports
* `TryFromJs` from `JsMap` for `HashMap` & `BtreeMap`
* fix `clippy` warn
* use `IteratorResult` instead of `as_object`
* `JsMap` impl `rust_for_each`
* fix: initial `JsMap` can be changed in `for_each`
* better naming
* #3874: `TryIntoJs` impl for primitive types
* #3874: `#[derive(TryIntoJs)]`
is it ok to use `create_data_property_or_throw`?
in other words, am I create an object correctly?
* #3874: some (but not enough) tests
* #3874: fix `TryintoJs` derive bug in multi attr case
* #3874: `TryIntoJs` derive macro example
* fix paths in derive macro
* make lint happy
* Add TryFromJs for TypedJsFunction and more tests
Includes adding TryFromJs for "()".
* Fix clippies and fmt
* Prettier
* Add From<TypedJsFunction> for JsValue to allow conversion
* Implement comments
* clippies
* Allow dead code for code that is newly detected as unused
* Fix compile errors with nightly rust
* Add missing SAFETY section
* Increase safety of `FutexWaiters`
* Add an "iter()" method to Js*Array for convenience
It might be optimizable, and in either case it should be but this at
least let people use an easy API and enjoy future improvements.
* Fix clippies
---------
Co-authored-by: Theo Paris <theo@tinted.dev>
Co-authored-by: José Julián Espina <julian.espina@canonical.com>
* Build out partial functionality and with methods
* Use temporal_rs's TinyAsciiStr
* Apply review feedback for specification comments
* Bump temporal-rs and add DateTime::with
* Add more utility functions around modules and exports
* Use import instead of path
* clippies and fmt
* clippies and fmt
* Add JsPromise::await_blocking and remove ell_and_run
* Fix documentation CI job
* Add TryFromJs for more types
* Add a new type Coerce<> to coerce values
This can be used to transform values in to coerced versions by
using the type system and TryFromJs.
* Fix build error
* Rename Coerce<> to Convert<>
* replace missed coerce to Convert
* cargo fmt and clippy
* Add a try_from_js implementation for Vec<T> (accept any Array-like)
* Use safe conversion to usize
* Fix typing compile error
* Fix clippies and fmt
* Remove println from test
* Add a negative test