Passer au contenu principal

Liste des obsolescences

Palisades​

Packages obsolètes​

Le contenu des packages suivants est obsolète :

Importation du package d'origineNouvelle importation
@jutro/lab-preview-test-e2e@jutro/legacy/lab-preview-test-e2e
@jutro/build-tools@jutro/eslint-config et @jutro/stylelint-config
@jutro/data@jutro/legacy/data
@jutro/toolset-compilers-

Pour le package @jutro/data, vous pouvez mettre à jour vos importations pour pointer vers le nouvel emplacement du package à l’aide de codemods.

Obsolescences dans le package de composants Jutro​

Les composants suivants sont obsolètes dans le package @jutro/components. Pour maintenir la rétrocompatibilité, ces composants ont été déplacés vers le package @jutro/legacy/components. Vous pouvez mettre à jour vos importations pour pointer vers le nouvel emplacement du package à l’aide de codemods.

  • Chevron
  • CustomFieldWrapper
  • DropdownMenuButton

Obsolescences dans le package de paramètres régionaux Jutro​

Les composants et utilitaires suivants sont obsolètes dans le package @jutro/locale. Pour maintenir la rétrocompatibilité, ces composants et utilitaires ont été déplacés vers le package @jutro/legacy/locale. Vous pouvez mettre à jour vos importations pour pointer vers le nouvel emplacement du package à l’aide de codemods.

  • LanguageContext
  • LocaleContext
  • CountryContext
  • CurrencyContext
  • IntlContext
  • TranslatorContext
  • withIntl
  • withTranslator
  • LanguageKey
  • G11nData
  • GlobalizationChange
  • GlobalizationSettings
  • LocaleConfig
  • formatPhoneNumberAndCountryCode
  • getPrefixForCountry
  • getSamplePhoneNumber
  • isValidatePhoneNumber
  • getBrowserLanguage
  • getCountryCodeFromLocale
  • getFormattedMonthsForLocale
  • getLanguageFromLocale
  • normalizeToUnderscoreLocale
  • getDefaultTimeZone
  • getUrlTranslatorAndSanitizer
  • formatDateToDataType
  • formatDateToLocalePattern
  • parseDateFromDataType
  • trimToInputFormat
  • inputFormatToValueParts
  • getDateInputFormats
  • getDatePatternFromLocale
  • isTodayOutOfRange
  • isDateInRange
  • validateDateUserInput

Fournisseurs de contextes régionaux obsolètes​

Certains fournisseurs de contexte @jutro/locale sont obsolètes dans cette version. Vous devez maintenant accéder au contexte directement à partir de leurs crochets associés.

Par exemple, auparavant, vous auriez formaté la devise en utilisant IntlContext comme suit :

import { IntlContext } from '@jutro/locale';

const intl = useContext(IntlContext);
const c1 = formatCurrency(intl, {
value: 1232.24,
currency: 'eur',
showFractions: true,
});

Vous obtenez maintenant la valeur intl directement à partir du crochet useIntl comme ceci :

import { useIntl } from '@jutro/locale';

const intl = useIntl();
const c1 = formatCurrency(intl, {
value: 1232.24,
currency: 'eur',
showFractions: true,
});

Les modifications complètes sont les suivantes :

Contexte obsolèteCrochet alternatif
IntlContextuseIntl
LanguageContextuseLanguage
LocaleContextuseLocale
TranslatorContextuseTranslator

Wrappers de paramètres régionaux obsolètes​

Les wrappers de contexte withIntl et withTranslator provenant de @jutro/locale sont obsolètes dans cette version.

Ils ont été utilisés pour accéder à IntlContext et TranslatorContext dans les composants de classe afin de contourner la limitation de React à ne lire qu’un seul contexte dans un composant de catégorie.

Il existe trois options que vous pouvez utiliser pour aborder cela différemment :

  • (Recommandé) Réécrivez les composants de classe comme des composants fonctionnels et utilisez l’autre crochet (useIntl ou useTranslator).
  • Suivez les documents React pour créer un consommateur de contexte (reportez-vous à https://legacy.reactjs.org/docs/context.html#consuming-multiple-contexts pour en savoir plus).
  • Conservez le composant de classe, mais utilisez un petit wrapper fonctionnel qui lit le crochet et le transmet en tant que propriété

Par exemple, si vous aviez un code comme celui-ci utilisant withTranslator :

import React from 'react';
import { withTranslator, TranslatorContext } from '@jutro/locale';
import type { Translator } from '@jutro/locale';

import { messages } from './MyComponent.messages';

type MyComponentProps = {
name: string;
};

type MyComponentPropsWithTranslator = MyComponentProps & {
translator: Translator;
};

class MyComponentInternal extends React.Component<MyComponentPropsWithTranslator> {
render() {
const { name, translator } = this.props;

return <p>{translator(messages.welcome, { name })}</p>;
}
}

const MyComponentOld = withTranslator(MyComponentInternal);

Il s’agit d’une version de composant fonctionnel :

import React from 'react';
import { useTranslator } from '@jutro/locale';
import type { Translator } from '@jutro/locale';
import { messages } from './MyComponent.messages';

type MyComponentProps = {
name: string;
};

const MyComponentNew1: React.FC<MyComponentProps> = ({ name }) => {
const translator = useTranslator();

return <p>{translator(messages.welcome, { name })}</p>;
};

Il s’agit de la version utilisateur du contexte :

import React from 'react';
import { TranslatorContext } from '@jutro/locale';
import type { Translator } from '@jutro/locale';
import { messages } from './MyComponent.messages';

type MyComponentProps = {
name: string;
};

class MyComponentNew2 extends React.Component<MyComponentProps> {
render() {
const { name } = this.props;

return (
<TranslatorContext.Consumer>
{(translator) => <p>{translator(messages.welcome, { name })}</p>}
</TranslatorContext.Consumer>
);
}
}

Il s’agit de la version wrapper :

import React from 'react';
import { useTranslator, TranslatorContext } from '@jutro/locale';
import type { Translator } from '@jutro/locale';
import { messages } from './MyComponent.messages';

const TranslatorBridge: React.FC<{
children: (translator: Translator) => React.ReactElement,
}> = ({ children }) => {
const translator = useTranslator();

return children(translator);
};

class MyComponentNew3 extends React.Component<MyComponentProps> {
render() {
const { name } = this.props;

return (
<TranslatorBridge>
{(translator) => <p>{translator(messages.welcome, { name })}</p>}
</TranslatorBridge>
);
}
}

Obsolescences dans le package de validation Jutro​

Les composants et utilitaires suivants sont obsolètes dans le package @jutro/validation. Pour maintenir la rétrocompatibilité, ces composants et utilitaires ont été déplacés vers le package @jutro/legacy/validation. Vous pouvez mettre à jour vos importations pour pointer vers le nouvel emplacement du package à l’aide de codemods.

  • useValidation
  • useGetLabelMap
  • getListOfPaths
  • getValidationMessageStyle
  • ValidationContext
  • RuleCallbackType
  • RulesType
  • UseValidationInterface
  • RegisterValidationType
  • NotifyParentFormType
  • UseValidationReturnInterface
  • FormContextType
  • FormMessagesType
  • FormMessageShapeType
  • OnValidationChangeType

Obsolescences dans le package de transport Jutro​

Les API suivantes sont obsolètes dans le package @jutro/transport. Pour maintenir la rétrocompatibilité, ces API ont été déplacées vers le package @jutro/legacy/transport. Vous pouvez mettre à jour vos importations pour pointer vers le nouvel emplacement du package à l’aide de codemods.

  • HttpTransport
  • HttpRequest
  • basicAuthOptions
  • langLocaleOptions
  • authTokenHandler
  • zipkinTraceHandler
  • fastOptionsMerge

Exemples de migration​

authTokenHandler​

authTokenHandler est devenu obsolète car il a accédé à des jetons d’authentification en dehors du contexte React à l’aide de la fonction obsolète getAccessToken. L’alternative suggérée consiste à implémenter des gestionnaires personnalisés à l’aide du crochet useAuth pour accéder aux jetons dans le contexte React.

Avant :

import { useEffect } from 'react';
import { createHttpRequest, authTokenHandler } from '@jutro/transport';

const baseUrl = 'https://my-api.guidewire.net/';

// Utility created outside React context using deprecated authTokenHandler
const getRequest = (url) => {
return createHttpRequest(baseUrl, false)
.addHandler(authTokenHandler) // Automatically accesses token using deprecated getAccessToken()
.build()
.get(url);
};

// Using the utility in component
const MyComponent = () => {
useEffect(() => {
getRequest('/accounts');
}, []); // Cannot properly depend on tokens since getAccessToken() is outside React context

return <div>Fetching accounts...</div>;
};

Après :

import { useEffect } from 'react';
import { useAuth } from '@jutro/auth';
import { HttpRequestBuilder, REQUEST_HANDLER_TYPE } from '@jutro/transport';
// ...
const baseUrl = 'http://my-api.guidewire.net/';
const getAuthHandler = (accessToken) => ({
[REQUEST_HANDLER_TYPE.AUTH]: () => ({
headers: {
Authorization: `Bearer ${accessToken}`,
// ...
},
}),
});
const MyComponent = () => {
const { accessToken } = useAuth();
useEffect(() => {
const builder = new HttpRequestBuilder(baseUrl);
builder.addHandler(getAuthHandler(accessToken));
const request = builder.build();
request.get('/accounts');
// ...
}, [accessToken]);
// ...
};

Obsolescences dans le package de thème Jutro​

Les composants et utilitaires suivants sont obsolètes dans le package @jutro/theme. Pour maintenir la rétrocompatibilité, ces composants et utilitaires ont été déplacés vers le package @jutro/legacy/theme. Vous pouvez mettre à jour vos importations pour pointer vers le nouvel emplacement du package à l’aide de codemods.

  • defaultTheme
  • THEMEPROVIDER_DEFAULT

Obsolescences dans le package de l'enregistreur Jutro​

La classe Logger est obsolète dans le package @jutro/logger. L’alternative suggérée consiste à utiliser plutôt l’instance exportée log et ses méthodes (log.trace, log.warning, log.info, log.debug, log.error).

Exemples de migration​

Avant :

import { Logger } from '@jutro/logger';

const logger = new Logger();
logger.info('message');

Après :

import { log } from '@jutro/logger';

log.info('message');

Obsolescences dans le package de plan Jutro​

Les types et utilitaires suivants sont obsolètes dans le package @jutro/floorplan, avec les alternatives suggérées fournies :

  • AppFloorPlanContext - Utilisez <AppFloorPlanContextProvider> à la place. Il n’est pas nécessaire d’accéder directement à ce contexte.
  • FloorPlans - Utilisez Array<FloorPlan | FloorPlanOverride> à la place.
  • RenderHeader - Définissez vous-même le type à l’aide de : type RenderHeader = (props: RenderHeaderProps) => ReactNode;

Exemples de migration​

AppFloorPlanContext​

Au lieu d'accéder directement au AppFloorPlanContext, utilisez <AppFloorPlanContextProvider> pour gérer les valeurs par défaut des propriétés AppFloorPlan.

Avant :

import { useContext } from 'react';
import { AppFloorPlanContext } from '@jutro/floorplan';

const MyComponent = () => {
const appFloorPlanContext = useContext(AppFloorPlanContext);
// ...
};

Après :

import { AppFloorPlanContextProvider } from '@jutro/floorplan';

const MyApp = () => (
<AppFloorPlanContextProvider {...defaultFloorPlanProps}>
<MyComponent />
</AppFloorPlanContextProvider>
);
Plans​
  • Avant : type MyFloorPlans = FloorPlans;
  • Après : type MyFloorPlans = Array<FloorPlan | FloorPlanOverride>;
renderHeader​
  • Avant : type MyRenderHeader = RenderHeader;
  • Après : type MyRenderHeader = (props: RenderHeaderProps) => ReactNode;

Obsolescences dans @jutro/events​

Les classes, fonctions et objets suivants sont obsolètes dans le package @jutro/events, avec les alternatives suggérées fournies :

  • EventProvider - Utilisez publish, subscribe, unsubscribe ou unsubscribeAll à la place.
  • loadGtag - Utilisez initDefaultGA à la place.
  • loadDataDog - Utilisez initDefaultDataDog à la place.
  • DefaultDictionaryProvider - Utilisez plutôt votre propre implémentation.
  • DefaultWhitelistProvider - Utilisez plutôt votre propre implémentation.

Exemples de migration​

EventProvider​

Avant :

const eventProvider = new EventProvider();
eventProvider.publish(topic, data);

Après :

import { publish } from '@jutro/events';

publish(topic, data);
loadGtag​

Avant :

import { loadGtag } from '@jutro/events';

loadGtag('GA_MEASUREMENT_ID');

Après :

import { initDefaultGA } from '@jutro/events';

initDefaultGA('GA_MEASUREMENT_ID');
loadDataDog​

Avant :

import { loadDataDog } from '@jutro/events';

loadDataDog(token, service, env, version);

Après :

import { initDefaultDataDog } from '@jutro/events';

initDefaultDataDog(token, service, env, version);

Obsolescences dans le package @jutro/auth​

Les fonctions suivantes sont obsolètes dans le package @jutro/auth.

  • getTokenByKey(key) - Renvoie une valeur de jeton pour une clé donnée.
  • getAccessToken() - Renvoie le jeton d’accès actuel.
  • getIdToken() - Renvoie le jeton de l’ID de l’utilisateur actuel.

L’alternative suggérée consiste à utiliser le crochet useAuth pour accéder aux jetons dans les composants React. Pour en savoir plus sur le crochet useAuth et son utilisation, reportez-vous à la documentation sur l’authentification.

Les fonctions obsolètes autorisaient l’accès aux jetons en dehors des composants React, mais ce modèle n’est pas recommandé et peut entraîner des problèmes d’actualisation des jetons et de gestion de l’état d’authentification.

Exemples de migration​

Avant :

import { getAccessToken, getIdToken, getTokenByKey } from '@jutro/auth';

// Accessing tokens outside React context
const setupAuthHeaders = () => {
const accessToken = getAccessToken();
const idToken = getIdToken();
const customToken = getTokenByKey('customTokenKey');

return {
Authorization: `Bearer ${accessToken}`,
'X-ID-Token': idToken,
'X-Custom-Token': customToken,
};
};

// Accessing tokens in a utility function
export const configureHttpClient = (client) => {
const accessToken = getAccessToken();
if (accessToken) {
client.setHeader('Authorization', `Bearer ${accessToken}`);
}
};

Après :

import { useAuth } from '@jutro/auth';

const MyComponent = () => {
const { accessToken, idToken, isAuthenticated } = useAuth();

const handleFetchAccounts = async () => {
if (!isAuthenticated || !accessToken) return;

const response = await fetch('https://my-api.guidewire.net/accounts', {
headers: {
Authorization: `Bearer ${accessToken}`,
'X-ID-Token': idToken,
},
});

const data = await response.json();
// Use data...
};

if (!isAuthenticated) {
return <div>Not authenticated</div>;
}

return <button onClick={handleFetchAccounts}>Fetch Accounts</button>;
};

Olos​

Il n'y a aucun élément obsolète dans cette version.

Niseko​

Il n'y a aucun élément obsolète dans cette version.

Mammoth​

Propriétés du composant MicroFrontend obsolètes​

Les propriétés suivantes du composant MicroFrontend sont désormais obsolètes et ont été remplacées :

Propriété obsolèteNouvelle propriété
mode=iframemode=isolated
mode=moduleFederationmode=shared

Package @jutro/cli-npm-preinstall obsolète​

Le package personnalisé @jutro/cli-npm-preinstall est désormais obsolète. Ce package a été utilisé pour forcer une version spécifique de la dépendance transitive comme moyen de résoudre des problèmes de sécurité.

Il existe maintenant pour ce problème une solution native dans npm que vous devez utiliser à la place.

Migration vers des remplacements npm​

Si votre application utilise actuellement des résolutions, vous devez procéder comme suit :

  1. Supprimez le fichier preinstall.js de la racine du projet.
  2. Supprimez le script preinstall de package.json.
  3. Renommez resolutions en package.json dans overrides.

Las Leñas​

Composant Icon​

Le composant @jutro/components/Icon est obsolète.

Un nouveau package @jutro/icons a été introduit en tant qu'alternative. Ce package contient les composants de toutes les icônes Guidewire. Reportez-vous à la liste des icônes pour obtenir la gamme complète des options.

Valeurs string des propriétés associées à une icône​

La transmission de string en tant que valeur à des propriétés qui définissent des icônes à utiliser avec des composants est désormais obsolète. Ces propriétés doivent désormais utiliser les nouveaux composants d'icône de @jutro/icons. Cela a un impact sur les composants suivants :

Propriétés obsolètes​

Les composants suivants ont des propriétés obsolètes :

ComposantPropriétés obsolètes
Flexphone
phoneWide
tablet
FlexItemphone
phoneWide
tablet
visible
textAlign
Gridphone
phoneWide
tablet
repeat
GridItemphone
phoneWide
tablet
clone
fullWidth
visible
textAlign
vAlign
align

Les propriétés de composants suivantes comportent des options obsolètes :

ComposantPropriétéOptions obsolètes
FlexalignItems'top', 'middle', 'bottom', 'right', 'left'
FlexalignContent'top', 'middle', 'bottom', 'right', 'left'
FlexjustifyContent'top', 'middle', 'bottom', 'right', 'left'
FlexItemalignSelf'top', 'middle', 'bottom', 'right', 'left'

Kufri​

Composants obsolètes​

Composant obsolèteNouveau composant
ToggleFieldToggleButtonGroup et ToggleButton
SwitchFieldSwitch
SliderSlider
DateTimeFieldDatePicker et TimePicker
DateFieldDatePicker
MonthYearFieldMonthPicker
YearFieldYearPicker
DateRangeFieldDateRangePicker
DateTimeZoneFieldDatePicker, TimePicker et TimezonePicker
SimpleDateFieldDateInput
SimpleMonthYearFieldDateInput
Importation de composant obsolèteImportation de nouveau composant
import {ToggleField} from '@jutro/components'import {ToggleButtonGroup} from '@jutro/components/new'

import {ToggleButton} from '@jutro/components/new'
import {SwitchField} from '@jutro/components'import {Switch} from '@jutro/components/new'
import {Slider} from '@jutro/components'import {Slider} from '@jutro/components/new'
import {DateTimeField} from '@jutro/components'import {DatePicker} from '@jutro/components/new'

import {TimePicker} from '@jutro/components/new'
import {DateField} from '@jutro/components'import {DatePicker} from '@jutro/components/new'
import {MonthYearField} from '@jutro/components'import {MonthPicker} from '@jutro/components/new'
import {YearField} from '@jutro/components'import {YearPicker} from '@jutro/components/new'
import {DateRangeField} from '@jutro/components'import {DateRangePicker} from '@jutro/components/new'
import {DateTimeZoneField} from '@jutro/components'import {DatePicker} from '@jutro/components/new'

import {TimePicker} from '@jutro/components/new'

import {TimezonePicker} from '@jutro/components/new'
import {SimpleDateField} from '@jutro/components'import {DateInput} from '@jutro/components/new'
import {SimpleMonthYearField} from '@jutro/components'import {DateInput} from '@jutro/components/new'

Propriétés obsolètes​

Les composants suivants ont des propriétés obsolètes :

ComposantPropriétés obsolètes
Tooltipid
animation
TooltipIconid
labelPosition
showInlineLabel
fieldLabelId
titleClass
textClass
linkClass
SimpleProgressBarid
path
value
progressBarClassName
stepClassName

Obsolescence de la version 18 de Node​

La maintenance de Node 18 s'est terminée en avril 2025 et ne bénéficiera plus de support après cette date. L'utilisation de Node 18 dans Jutro est obsolète et il est recommandé de passer à Node 22.6.0 ou ultérieur.

Note: Webpack 4 ne prend pas en charge Node 22 ; l'utilisation de Node 22 nécessite une mise à jour vers Webpack 5.

Éléments de thème​

Certains éléments de thème sont devenus obsolètes et sont remplacés par le contexte Theme et le crochet useTheme. Les éléments de thème suivants sont désormais obsolètes :

  • ThemeProvider
  • withTheme
  • ThemeConfigProvider
  • renderWithTheme

Paramètres régionaux Jutro​

Les applications auxiliaires liées à la date dans jutro-locale sont obsolètes.

Jasper​

Composants obsolètes​

Composant obsolèteNouveau composant
InputMaskFieldMaskInput
StepperFieldStepper
Importation de composant obsolèteImportation de nouveau composant
import { InputMaskField } from '@jutro/components'import { MaskInput } from '@jutro/components/new'
import { StepperField } from '@jutro/components'import { Stepper } from '@jutro/components/new'

Obsolescence de la version 18 de Node​

La maintenance de Node 18 s'est terminée en avril 2025 et ne bénéficiera plus de support après cette date. L'utilisation de Node 18 dans Jutro est obsolète et il est recommandé de passer à Node 22.6.0 ou ultérieur.

Note: Webpack 4 ne prend pas en charge Node 22 ; l'utilisation de Node 22 nécessite une mise à jour vers Webpack 5.

Propriétés obsolètes​

Les composants suivants contiennent des propriétés qui sont désormais obsolètes :

  • Badge
    • id
    • type comporte des variantes obsolètes :
      • success
      • error
      • warning
      • info
  • Icône
    • color
    • _rest
  • InlineNotification
    • id
  • InfoLabel
    • id
    • message
  • Lien
    • activeClassName
    • exact
    • id
    • textClassName
  • Balise
    • ariaLabel
    • id
  • TagCollection
    • id

Innsbruck​

Warning: Tous les composants, packages et fonctions obsolètes dans cette version ont également été déplacés vers le package @jutro/legacy. Passez en revue la liste des modifications introduites dans cette version dans ses notes de version.

Obsolescence des composants​

Les composants et fonctions suivants ont été déplacés de @jutro/components à @jutro/legacy/components et ils sont obsolètes :

  • Accordion
  • BreakpointTracker
  • Collapse
  • Container
  • CurrencyField
  • CheckboxField
  • DropdownSelectField
  • FileUploadField (et les crochets useFileUpload et useMultipleFileUpload)
  • Footer, FooterCopyright, FooterNavBar, FooterNavLink, FooterText, FooterContext et StickyFooter
  • HeaderActions
  • HelpElement, HelpHeading, HelpLink, HelpParagraph et HelpPopover
  • IntlPhoneNumberField
  • LogoTitle
  • PhoneNumberField
  • TextAreaField
  • TextField
  • TypeaheadMultiSelectField

Les composants suivants ont été déplacés de @jutro/router à @jutro/legacy/router et ils sont obsolètes :

  • ApplicationHeader
  • RouteTracker
  • SubApplicationHeader

Les composants suivants ont été déplacés de @jutro/wizard-next à @jutro/legacy/wizard-next et ils sont obsolètes :

  • ScrollToError

Obsolescence du package de table de données​

Le package @jutro/datatable a été déplacé vers @jutro/legacy/datatable et tout son contenu est obsolète :

  • ActionColumn
  • FieldColumn
  • FilterBar
  • RadioColumn
  • DisplayColumn
  • ActionItem
  • DataTable
  • Table
  • TableColumn
  • useDataFilter
  • SHOW_ALL_PAGES
  • createTextFilter
  • createStrictTextFilter
  • defaultColumnFilter

Obsolescence de la vue de données​

Le package @jutro/dataview a été déplacé vers @jutro/legacy/dataview et tout son contenu est obsolète :

  • ListView
  • TableView
  • AdaptiveDataView
  • BooleanColumn
  • CurrencyColumn
  • DateTimeColumn
  • GenericColumn
  • NumberColumn
  • PhoneColumn
  • TextColumn
  • CategoryColumn
  • Action
  • ActionsColumn
  • DataViewColumnsConfig
  • useColumnsConfig
  • DataViewEditing
  • EditAction
  • DataViewExpandable
  • useExpansion
  • DataViewFiltering
  • DataViewHeaderActions
  • HeaderAction
  • DataViewOverlay
  • DataViewPagination
  • Pagination
  • LoadMore
  • DataViewSearch
  • DataViewSelection
  • useSelection
  • DataViewSorting
  • DataViewTitle
  • useSyncData
  • useAsyncData
  • createHttpClient
  • DataViewColumns
  • TableColumnAdapter
  • DisplayColumnAdapter
  • FieldColumnAdapter
  • ActionColumnAdapter
  • ActionItemAdapter
  • RadioColumnAdapter
  • TableAdapter

Autres packages hérités​

Le contenu des packages suivants (désormais déplacés vers jutro/legacy) est obsolète :

Importation du package d'origineNouvelle importation à partir du package hérité
@jutro/address@jutro/legacy/address
@jutro/contract@jutro/legacy/contract
@jutro/lab-preview-dataview@jutro/legacy/lab-preview-dataview
@jutro/quick-view@jutro/legacy/quick-view
@jutro/services@jutro/legacy/services
@jutro/uiconfig@jutro/legacy/uiconfig
@jutro/uimetadata@jutro/legacy/uimetadata

Obsolescence de la version 18 de Node​

La maintenance de Node 18 s'est terminée en avril 2025 et ne bénéficiera plus de support après cette date. L'utilisation de Node 18 dans Jutro est obsolète et il est recommandé de passer à Node 22.6.0 ou ultérieur.

Note: Webpack 4 ne prend pas en charge Node 22 ; l'utilisation de Node 22 nécessite une mise à jour vers Webpack 5.

Variable _TEST_​

La variable _TEST_ est obsolète. Si vous souhaitez conserver cette variable dans votre code, vous devrez peut-être mettre à jour manuellement les remplacements pour les applications et à des fins de test.

Client d'authentification Okta​

Le client d'authentification Okta est désormais obsolète et remplacé par un client OIDC générique. Pour en savoir plus, reportez-vous à Client d'authentification.

LocaleService​

LocaleService ainsi que les fonctionnalités et utilitaires environnants sont désormais obsolètes. Ils sont remplacés par le nouveau magasin de globalisation (g11n). Vous pouvez continuer à utiliser LocaleService pour l'instant, mais il sera supprimé dans une prochaine version majeure.

Si vous disposez d'une fonctionnalité personnalisée qui dépend de LocaleService, vous pouvez continuer à l'utiliser ou activer le nouveau magasin et y effectuer une migration.

Pour passer à la nouvelle implémentation de Jutro sans LocaleService, définissez l'option useG11nStore sur true (elle est automatiquement définie sur « true » si g11nStore est fourni).

L'option useG11nStore sera supprimée dans la prochaine version majeure de @jutro.

src/startApp.js
start(Jutro, {
rootId: 'root',
// ...
useG11nStore: true,
});
Note: L'implémentation précédente de Jutro utilisait LocaleService en interne. Par conséquent, vous pouvez voir des avertissements d'obsolescence même si vous n'utilisez pas LocaleService explicitement dans votre code. Si vous définissez useG11nStore: true, vous n'obtiendrez pas d'avertissements d'obsolescence liés à LocaleService.

Pour en savoir plus sur l'utilisation du nouveau magasin, reportez-vous à notre page sur l'internationalisation.

En raison de cette obsolescence, vous devrez peut-être mettre à jour votre code de l'une des façons suivantes :

  • LocaleService : pas d'alternative

  • getDefaultCountryCode : utilisation de getDefaultCountry à la place

  • LANGUAGE_URL_PARAM, LOCALE_SERVICE_ID, LOCALE_URL_PARAM : pas d'alternative

  • LocaleServiceGlobalizationSettings : pas d'alternative

  • LocaleSettingsInterface : l'alternative est d'utiliser Contract pour spécifier l'interface.

    import { Contract, types } from '@jutro/contract';

    Contract.specify({
    getAvailableLanguages: types.func,
    getAvailableLocales: types.func,
    getDefaultCountryCode: types.func,
    getDefaultTimeZone: types.func,
    getPreferredLanguage: types.func,
    getPreferredLocale: types.func,
    });
  • Modifications des paramètres régionaux et des paramètres de globalisation :

    • refreshOnLanguageOrLocaleChange : implémentez votre propre module d'écoute de magasin si vous devez procéder à une actualisation en cas de modification des paramètres régionaux/de la langue.
    • saveDefaultLanguageAndLocaleToLocalStorage : utilisation de createG11nLocalStorageStore.
    • globalizationSettings : configurez les paramètres g11n via la configuration de localeSettings et indiquez un g11nStore personnalisé si vous devez écouter les modifications g11n.

langLocaleOptions pour createHttpRequest​

createHttpRequest ne propage plus les en-têtes avec gw-locale et gw-service, ou lorsque l'utilisateur passe explicitement aux nouveaux magasins de globalisation (g11n).

Troisième argument de la fonction start​

Le troisième argument (scriptAttributes) pour la fonction start de micro front-end est obsolète. Transmettez plutôt un objet comme propriété mfeData dans le deuxième argument de la fonction startApp.

Exemple de migration :

Avant
src/startApp.js
import { start } from '@jutro/micro-frontends';
import messages from './app/App.messages';

export const startApp = (scriptAttributes) => {
start(
Jutro,
{
appName: messages.appName,
appDescription: messages.appDescription,
},
scriptAttributes
);
};
Après
src/startApp.js
import { start } from '@jutro/micro-frontends';
import messages from './app/App.messages';

export const startApp = (mfeData) => {
start(Jutro, {
appName: messages.appName,
appDescription: messages.appDescription,
mfeData: mfeData,
});
};

API héritée​

L'API héritée dans le composant Microfrontend est obsolète. Utilisez plutôt la nouvelle API de liaison de routeur à la place.

Parties Webpack​

Certaines parties spécifiques à Webpack, developmentBuild et productionBuild sont obsolètes dans le composant build-tools.

Hakuba​

Universal Analytics​

Google a déclaré qu'Universal Analytics cesserait de traiter des données à compter du 1er juillet 2023.

Pour cette raison, nous avons rendu obsolètes les éléments répertoriés ci-dessous :

  • Variables d'environnement REACT_APP_GA_TRACKING_ID et REACT_APP_GA_ADDITIONAL_TRACKING_ID
  • Fonction loadGA() dans le package @jutro/events

Vous devez migrer votre ID de suivi GA4 vers la nouvelle variable d'environnement REACT_APP_GA4_TRACKING_ID.

Si vous chargez Google Analytics avec votre utilisation personnalisée de la fonction loadGA(), vous devez le migrer vers la fonction loadGtag() du package @jutro/events.

API Microfrontend SDK​

L'API Microfrontend SDK héritée est obsolète. Utilisez plutôt la nouvelle API micro front-end.

PromptService​

Le composant PromptService est obsolète.

Interface de ligne de commande d'ensemble d'outils et interface de ligne de commande Jutro​

L'interface de ligne de commande d'ensemble d'outils et l'interface de ligne de commande Jutro sont remplacées par la nouvelle interface de ligne de commande de la plate-forme. Reportez-vous à notre guide de migration pour en savoir plus.

Fin de la prise en charge de Node.js 16​

Nous vous recommandons de migrer vers Node.js 18.

Composants obsolètes​

Les composants suivants sont obsolètes.

  • TabbedContainer
  • PanelLayout
  • StickyFooter
  • PageLayout
  • ColorSwatch
  • PageLoader
  • En-tête
  • HeaderActions
  • HelpPopover, HelpHeading, HelpElement, HelpLink, HelpParagraph
  • IconButton
  • Layout
  • Chevron
  • LogoTitle
  • Pied de page et ses sous-composants (FooterCopyright, FooterText, FooterNavBar, FooterNavLink)

ID QuickView​

QuickView n'a plus de propriété id.

MapArea​

Le composant MapArea est obsolète.

Table​

Le composant Table est obsolète. Utilisez Adaptive data view à la place.

Case d'option, Image de la case d'option, Fiches de case d'option​

Les composants Radio button, Radio button image et Radio button cards sont désormais obsolètes. Utilisez Radio next à la place.

Propriétés MetadataForm​

Les propriétés formRules, formPath, formInvalidMessage et formWarningMessage utilisées dans le composant MetadataForm sont désormais obsolètes.

Propriété de thème​

La propriété theme, une propriété présente dans un certain nombre de composants, est désormais obsolète.

zipkinTraceHandler​

La version @jutro/transport de zipkinTraceHandler est obsolète. Utilisez plutôt votre propre implémentation du gestionnaire Zipkin.

Implémentation des analyses Mixpanel et GA​

L'implémentation des analyses Mixpanel et GA à partir du package @jutro/events est désormais obsolète. Utilisez plutôt la nouvelle API @jutro/analytics.

Garmisch​

Il n'y a aucun élément obsolète dans cette version.