Skip to content

Changelog

8.1.0

Minor Changes

  • 8a98440: /modules/localized-routing: generateLocalizedAppRoutes: enforce correct route meta and other properties via new I18nRouteRecordRaw type.

    Your actual route values should not require any changes to fit this new stricter type.
    I18nRouteRecordRaw just describes the already supported input routes for generateLocalizedAppRoutes.

    To Migrate:
    If you've declared routes using the const routes: RouteRecordRaw[] = [...]; syntax, you will probably run into type errors.
    The new suggested syntax when creating routes is const routes = [...] satisfies I18nRouteRecordRaw[]; as seen in our updated docs.

  • 8a98440: /functions: add isRecord and isStringRecord utility functions to validate and type-narrow unknown data.

Patch Changes

  • b9c58f6: /modules/localized-routing: [XerLocalizedRouterLink]: fix: useI18n should run in setup script, not inside computed().
  • 8a98440: syncpack sortExports rule update.

8.0.1

Patch Changes

  • fa871ef: Updated vue dependency from vue@3.5.13 to latest patch version vue@3.5.15.

8.0.0

Major Changes

  • 1c5271a: isValidDate: Removed function in favor of native date-fns functions to accomplish the same.

    To Migrate:

    • Replace all instances of isValidDate with isValid from date-fns.
    • Parsing of dates can be done using parse from date-fns. Ensure the compatible format string is used.
  • dca02aa: Node: Upgraded from node@18.18 to node@22.14.

    To Migrate:

    • Update the node version in the volta configuration in the package.json file.
    • Update the engine version in the package.json file.
    • Update the node version in any ci/cd pipes that have a fixed version.
    • Remove your node_modules and run a npm install.
    • Ensure all dependencies are compatible with the new node version.
    • If your package contains @tsconfig/node18 dependency, update it to @tsconfig/node22. Search for string occurence of @tsconfig/node18 in tsconfig files and replace there as well.
  • 44c7998: @microsoft/applicationinsights-web: updated from @microsoft/applicationinsights-web@3.0.5 to @microsoft/applicationinsights-web@3.3.5 fixing critical issues.

  • 256e331: vue: updated peerDependency from vue@3.4.27 to vue@3.5.13.

  • 256e331: vue-i18n: Upgraded from vue-i18n@9 to vue-i18n@11.

    To Migrate:

  • 256e331: pinia: updated from pinia@2.0.36 to pinia@2.3.1

  • 34ea97f: pinia: Upgraded from 2.3.1 to 3.0.1.

    To Migrate:

    Note: pinia is used by the GlobalErrorHandling module.

Minor Changes

  • 19bc32f: Updated & applied new tsconfig settings for consistant type checking within the codey repo.

  • ccfa187: Vite and testing dependencies: upgrade to latest version of Vite and Testing dependencies.

    • Vite: 6.2.3
    • @vitejs/plugin-vue: 5.2.3
    • Vitest: 3.0.9
    • @vitest/coverage-v8: 3.0.9
    • jsdom: 26.0.0
    • @playwright/test: 1.51.1

Patch Changes

  • f740e78: Eslint: update to latest @xerius/eslint-config using helper function for flat config.
  • ccfa187: Tests: fix unit tests to match latest Vitest dependencies changes.

7.0.0

Major Changes

  • 3f9d972: vue-router: Updated min version from vue-router@4.3.2 to vue-router@4.5.0.

Minor Changes

  • dcea24c: LocalizedRouting: Updated Interface to expose getLocalizedRouteLocationRaw & replaceLocalizedRoute.
  • dcea24c: LocalizedRouting: Added resolveLocalizedRouteName.

6.0.0

Major Changes

  • 342d45d: Bump of Node engine to >=18.0.0

Minor Changes

  • 9e2d8ad: Localized-Routing: Added replaceLocalizedRoute and getLocalizedRouteLocationRaw for more flexibility.

Patch Changes

  • 342d45d: Upgrade dependencies
  • c5c11e7: XerLocalizedRouterLink: Fixed misplaced useRoute inside computed variable.

5.0.0

Major Changes

  • 46f4c3f8d: Global Error Handler: use localize routing instead of the default vue router to navigate to error pages

    BREAKING CHANGE: use localize routing instead of the default vue router to navigate to error pages.

    ts
    setupGlobalErrorHandler(localizedRouting, {
      notFoundRoute: { name: "NotFound" },
      forbiddenRoute: { name: "Forbidden" },
      unauthorizedRoute: { name: "Unauthorized" },
      internalServerErrorAction() {
        localizedRouting.pushLocalizedRoute("Oeps");
      },
    });

4.1.0

Minor Changes

  • 3f2da26ce: localized-routing: Add support for langing view component on root path.
  • bb27e2877: localized-routing: Add support for multiple nested localized routes.

Patch Changes

  • be909cc36: localized-routing: Default and catchAll route redirects need to take current language into account.
  • 51db17574: localized-routing: Take into account TheLandingViewRouteName when watchers trigger.
  • 721c5b6fb: global-error-handler: correctly track exception through AI

4.0.0

Major Changes

  • 56fc61bd6: Removed config-store module as it does not add any functional logic.

    Migration:

    Both the Front- and Back-office starter contain a config-store module which can be used as an example and extended based on application needs.

  • 56fc61bd6: getFrontOfficePathBase: changed output to object structure and removed window dependency.

  • 481da6432: Renamed module localized-router to localized-routing.

  • 56fc61bd6: localized-routing: simplify logic and remove wrapping. This now splits of i18n to a separate module.

  • 517661b22: Localized-routing: XerLocalizedRouterLink is no longer globally registered.

    Migration:

    Import the XerLocalizedRouterLink component where it is in use:

    ts
    import { useLocalizedRouting } from "@xerius/codey-core/modules/localized-routing";
  • 56fc61bd6: global-error-handler: Migrated to module context instead of vue plugin and updated setup options.

  • 56fc61bd6: application-insights: migrated to module context instead of vue plugin and updated init logic.

Minor Changes

  • f291f00f7: Localized-router: Added tryUseLocalizedRouter to be able to self check if undefined instead of having an error.
  • 56fc61bd6: Added i18n module with helper function for fetching the translations.

3.1.0

Minor Changes

  • 36b2a1f92: configStore: Allow passing pathBase to the fetchConfig function.
  • 36b2a1f92: Add getFrontOfficePathBase function to determine the pathBase based on the window.location.
  • 36b2a1f92: localizedRouter: add currentPathBase computedRef.

Patch Changes

  • bd5a26585: LocalizedRouter: Add redirect to defaultRouteName when hitting TheAppRoutes path.

3.0.0

Major Changes

  • 0a5417373: Renamed codey-composables to codey-core to better suit the load of composables and modules

    Migration:

    Remove @xerius/codey-composables from you package.json file and install @xerius/codey-core.

Minor Changes

  • 4f7068152: Rewrite localized router to be a plugin
  • 7260e2763: Extend global-error-handler to accept RouteLocationRaw in the registration function.
  • 3b2501e9c: Ship code as bundled ESM & provide required module instances
  • 37472a7f8: Update module docs
  • f59eddd3a: Finalize cross module use cases
  • 2fc4e588f: Added the following modules and their documentation:
    • translation
    • localized-routes
    • global-error-handler
    • config-store
    • application-insights

Patch Changes

  • e1889434d: Update rollup-plugin-node-externals
  • cd8dc97b5: Fix build so types are correctly shipped
  • a897a6f7a: Add ignoreDeprecations to tsconfig.json to silence warnings of deprecated features used by Vue base tsconfig.
  • 2be01d306: Fix: Incorrect inject key used for useApplicationInsightsPlugin

2.0.0

Major Changes

  • 612180696: getPackageVersion has been removed as it is no longer required to get codeyImageUrls. See new getCodeyImageUrl function in codey-style.

    To upgrade, replace any url building code with the following:

    js
    import { getCodeyImageUrl } from "@xerius/codey-style";
    
    const url = getCodeyImageUrl("image-name");

Minor Changes

  • 48b7387b3: Codey-utils can now be used directly from the composable package

  • 48b7387b3: Codey-validators can now be used directly from the composable package

    All validation functions are moved here and made tree shakeable. This changes the way they are imported to the following e.g.

    js
    import { isBelgianIban } from "@xerius/codey-validations";

    To the following:

    js
    import { isBelgianIban } from "@xerius/codey-core";