Releases: lemonmade/quilt
Release list
@quilted/quilt@0.10.2
Patch Changes
- Updated dependencies [
6e61707]:- @quilted/preact-router@0.6.0
- @quilted/preact-localize@0.4.7
@quilted/preact-router@0.6.0
Minor Changes
-
#975
6e61707Thanks @lemonmade! - Added ascrolloption toNavigation.navigate()and<Link>, and made the URL change — not the history operation — decide the default scroll behavior.For push and replace navigations alike, the default is now:
- Changing the pathname or hash resets the scroll position to the top of the page (or scrolls to the URL's hash target). Previously, replace navigations never reset.
- Changing only the search params keeps the current scroll position — search-only navigations usually encode UI state (filters, tabs, a selected calendar day) rather than a new location. Previously, push navigations always reset.
Pass
scrollto override the default in either direction:navigation.navigate(url, {scroll: false});
<Link to={url} scroll={false}> Select day </Link>
@quilted/preact-localize@0.4.7
Patch Changes
- Updated dependencies [
6e61707]:- @quilted/preact-router@0.6.0
@quilted/threads@4.1.0
Minor Changes
-
#968
b17b028Thanks @lemonmade! -ThreadWindow'stargetOriginoption now also validates theoriginof incoming messages, and gained an'ancestor'mode.Previously
targetOriginonly set the origin for outgoingpostMessage()calls; inbound messages were accepted from any origin as long as they came from the expected window. It is now also used to reject messages whoseorigindoes not match, so a concretetargetOriginauthenticates both directions:const thread = ThreadWindow.iframe(iframe, { targetOrigin: 'https://embed.my-app.com', exports: { /* ... */ }, });
The default remains
'*'(post to, and accept from, any origin), so existing behaviour is unchanged.You can also pass
targetOrigin: 'ancestor'to pin to the origin that framed the current window — read fromlocation.ancestorOrigins, falling back to the origin of the first received message on platforms without that API (e.g. Firefox), buffering outgoing messages until it is known. This is convenient inside aniframethat trusts its embedder but doesn't know the embedder's origin ahead of time:const thread = ThreadWindow.parent({targetOrigin: 'ancestor'});
@quilted/preact-graphql@0.2.1
Patch Changes
-
#966
8143128Thanks @lemonmade! - Track the current@quilted/graphql@quilted/preact-graphqlstill pinned@quilted/graphqlat^3.4.1(it wasn't co-released when@quilted/graphqlreached 3.5.0), so consumers on graphql-js 17 could resolve its@quilted/graphqlto the older graphql-16-only build and end up with two graphql copies. Bump the range to^3.5.0to match the rest of the workspace.
@quilted/vite@0.4.1
Patch Changes
- Updated dependencies [
7f4a42d]:- @quilted/rollup@0.6.0
@quilted/rollup@0.6.0
Minor Changes
-
#962
7f4a42dThanks @lemonmade! - Supportgraphql@17- Widen the
graphqlversion range to^16.8.0 || ^17.0.0(^16.14.0 || ^17.0.0for@quilted/quilt's peer dependency) so consumers can adopt graphql-js 17. - Fix custom scalar coercion under graphql 17:
createGraphQLSchemanow also assigns the renamedcoerceOutputValue/coerceInputValue/coerceInputLiteralmethods, not only the legacyserialize/parseValue/parseLiteral. graphql-js 17 reads the new names at execution and fixes them at construction, so without this a custom scalar's input validation silently stopped running (e.g. a bad value passed through a variable was accepted). No effect on graphql 16, where the extra properties are ignored.
- Widen the
Patch Changes
- Updated dependencies [
7f4a42d]:- @quilted/graphql@3.5.0
@quilted/react-query@1.1.0
Patch Changes
- Updated dependencies [
7f4a42d]:- @quilted/quilt@0.10.0
@quilted/quilt@0.10.1
Patch Changes
- Updated dependencies [
98aeb13]:- @quilted/preact-graphql@0.2.0
@quilted/quilt@0.10.0
Minor Changes
-
#962
7f4a42dThanks @lemonmade! - Supportgraphql@17- Widen the
graphqlversion range to^16.8.0 || ^17.0.0(^16.14.0 || ^17.0.0for@quilted/quilt's peer dependency) so consumers can adopt graphql-js 17. - Fix custom scalar coercion under graphql 17:
createGraphQLSchemanow also assigns the renamedcoerceOutputValue/coerceInputValue/coerceInputLiteralmethods, not only the legacyserialize/parseValue/parseLiteral. graphql-js 17 reads the new names at execution and fixes them at construction, so without this a custom scalar's input validation silently stopped running (e.g. a bad value passed through a variable was accepted). No effect on graphql 16, where the extra properties are ignored.
- Widen the
Patch Changes
- Updated dependencies [
7f4a42d]:- @quilted/graphql@3.5.0