Skip to content

21.4.0

Compare
Choose a tag to compare
@addy-pathania addy-pathania released this 28 Sep 22:44
· 1144 commits to dev since this release

21.4.0

🎉 New Features & Improvements

  • [templates/nextjs-sxa] [sitecore-jss-react] [sitecore-jss-nextjs] "Bring Your Own Code" (BYOC) feature is introduced. This allows developers and editors more flexibility when developing and working with new components, i.e.:

    • Avoid the jss deploy process for components, and use FEAAS registration instead
    • Put components anywhere in the project,
    • Use any prop type, without dependence on Layout Service data

    Check the BYOC documentation for more info. (#1568) (#1603)(#1605)

  • [templates/nextjs-sxa] Scaffolding components for BYOC is added. Use '--byoc' flag at the end of jss scaffold command to create a boilerplate component for BYOC (#1572)

  • [sitecore-jss-nextjs] Stylesheet loading via page head links for FEAAS and BYOC is implemented. This allows stylesheets to be loaded during SSR and avoid extra calls on client. (#1587)

  • [templates/nextjs] Scaffold new components outside of 'src/components' folder by specifying a path with src in it, i.e. jss scaffold src/new-folder/NewComponent (#1572)

  • [sitecore-jss] [sitecore-jss-nextjs] [templates/nextjs] Introduce performance metrics for debug logging (#1555)

  • [templates/nextjs] [templates/react] [templates/vue] [templates/angular] Introduce layout service REST configuration name environment variable (#1543)

  • [templates/nextjs] [sitecore-jss-nextjs] Support for out-of-process editing data caches was added. Vercel KV or a custom Redis cache can be used to improve editing in Pages and Experience Editor when using Vercel deployment as editing/rendering host (#1530)

  • [sitecore-jss-react] Built-in MissingComponent component can now accept "errorOverride" text in props - to be displayed in the yellow frame as a custom error message. (#1568)

  • [templates/nextjs] [sitecore-jss-nextjs] Better error handling for component-level data fetching (#1586)

  • [sitecore-jss-react] Fetch Data for FEaaS Components as part of Component SSR/SSG (#1586)

  • [sitecore-jss-dev-tools] [templates/nextjs] [templates/react] Introduce "components" configuration for ComponentBuilder (#1598)

  • [sitecore-jss-react] [sitecore-jss-nextjs] Component level data fetching(SSR/SSG) for BYOC (#1610) (#1621)

  • [sitecore-jss-nextjs] Reduce the amount of Edge API calls during fetch getStaticPaths (#1612)

  • [sitecore-jss] [templates/nextjs] [templates/nextjs-sxa] GraphQL Layout and Dictionary services in base remplate, and ErrorPages service in nextjs-sxa can handle endpoint rate limits through retryer functionality in GraphQLClient. To prevent SSG builds from failing and enable multiple retries, set retry amount in lib/dictionary-service-factory and lib/layout-service-factory (#1618 #1619)

  • [templates/nextjs] [sitecore-jss-nextjs] Upgrade Nextjs to 13.4.16(#1616)

🧹 Chores

  • Automatically create a Jira Issue once a github issue/doc request/PR is created (#1573)
  • Use exact canary version instead of range (#1553)

🐛 Bug Fixes

  • [tempaltes/nextjs] [templates/nextjs-sxa] [sitecore-jss-nexjts] Redirects don't work when file extensions present in a route (#1566)
  • [templates/vue] "lint" command is failing due to bug introduced by eslint-plugin-prettier (#1563)
  • [sitecore-jss-react] [FEaaS] Prevent extra components client-side requests for SSR (1541)
  • [sitecore-jss-react] Remove use of reactDom/server from React Image (1544)
  • [sitecore-jss-nextjs] Referrer is not captured by Personalize middleware (#1542)
  • [sitecore.jss-react] Fix double placeholder in Experience Editor in production mode (#1557)
  • [sitecore-jss-nextjs] Fix of redirects middleware. Add possible to use tokens like $1, $2, $3, etc. (#1547) (#1559) (#1561) (#1562)
  • [templates/nextjs-sxa] Change Content-Type of robots.txt response (text/html;charset=utf-8text/plain).
  • [templates/nextjs-sxa] Fix styles of Image component for Banner variant when we try to edit image in EE for Basic Site (#1588) (#1596)
  • [templates/nextjs-sxa] Fix style for main layout(horizontal scrollbar). (#1589)
  • [templates/nextjs-sxa] Don't let Image component wrap with tag when TargetUrl is not configured. (#1593)
  • [templates/nextjs] Next config header plugin for CORS. (#1597)
  • [templates/nextjs] Ensure dictionary data is only fetched when layout data is present for a route (#1608)
  • [sitecore-jss-react-forms] Form should be blocked while submit is in progress to avoid submit spam (#1611 #1614)
  • [templates/nextjs] Fix linting errors, fix type error by upgrading @react/types to v18.2.22 (#1613)